*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#020508;color:#e7e3db;font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,Arial,sans-serif;line-height:1.9}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 50% -10%,rgba(90,110,130,.2),transparent 34%),radial-gradient(circle at 8% 20%,rgba(90,10,15,.11),transparent 20%),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:auto,auto,5px 5px,5px 5px;mix-blend-mode:screen}.site-shell{width:min(1220px,calc(100% - 28px));margin:0 auto;padding-bottom:28px}.hero{position:relative;min-height:315px;border:1px solid #26313a;border-top:0;border-radius:0 0 14px 14px;overflow:hidden;background:url("images/hero-bg.jpg") center/cover no-repeat;box-shadow:0 0 40px rgba(0,0,0,.7)}.hero__overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.28) 45%,rgba(0,0,0,.75) 100%),linear-gradient(0deg,rgba(2,5,8,.98),transparent 38%)}.hero__content{position:relative;z-index:1;padding:24px 360px 36px 320px;text-align:center}.hero__eyebrow{margin:0 0 -4px;font-size:18px;font-weight:900;letter-spacing:.12em;color:#fff}.hero__eyebrow span{margin-left:46px;color:#f1252c}.hero h1{margin:0;font-size:clamp(52px,8vw,105px);line-height:.88;font-weight:900;letter-spacing:.035em;color:#f6f1e9;text-shadow:0 7px 0 rgba(0,0,0,.45),0 0 18px rgba(255,255,255,.22)}.hero h1 small{font-size:.42em}.hero__lead{margin:18px 0 24px;font-size:17px;font-weight:700;color:#fff}.hero__actions{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-width:180px;min-height:54px;padding:12px 24px;border-radius:5px;text-decoration:none;color:#fff;font-weight:800;letter-spacing:.02em;transition:.2s transform,.2s filter}.btn:hover{transform:translateY(-2px);filter:brightness(1.15)}.btn--red{background:linear-gradient(#d6272c,#9e1016);box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 12px 22px rgba(150,0,0,.25)}.btn--ghost{border:1px solid #8b969e;background:rgba(0,0,0,.42)}.hero__cover{position:absolute;z-index:2;right:24px;bottom:0;margin:0;width:205px;transform:rotate(.8deg);box-shadow:0 14px 35px rgba(0,0,0,.65)}img{max-width:100%;display:block}.grid{display:grid;gap:8px;margin-top:8px}.grid--top{grid-template-columns:1.08fr .82fr 1.08fr}.grid--three{grid-template-columns:1fr 1fr 1.18fr}.grid--bottom{grid-template-columns:1.05fr .95fr}.panel{position:relative;overflow:hidden;border:1px solid #3a2d23;border-radius:7px;background:linear-gradient(145deg,rgba(13,18,21,.96),rgba(4,7,9,.98));box-shadow:inset 0 1px 0 rgba(255,255,255,.04);padding:22px}.panel h2,.paper-card h2{margin:0 0 14px;color:#f21f28;font-size:20px;line-height:1.35;letter-spacing:.03em;text-shadow:0 0 10px rgba(230,0,0,.2)}.panel p{margin:0 0 12px;color:#d8d3ca}.panel--image{background:linear-gradient(90deg,rgba(5,8,10,.94),rgba(5,8,10,.78)),var(--bg) center/cover no-repeat}.scribble:after{content:"SLIM\A SHADY!";white-space:pre;position:absolute;left:42px;bottom:26px;transform:rotate(-13deg);font-size:42px;line-height:.82;color:rgba(210,210,210,.12);font-weight:900;letter-spacing:.06em}.scribble:before{content:"";position:absolute;right:24px;bottom:23px;width:126px;height:126px;background:radial-gradient(circle,#d4d2c8 0 29%,transparent 30%),repeating-conic-gradient(from 0deg,#8e080d 0 5deg,transparent 5deg 14deg);opacity:.8;border-radius:50%;filter:drop-shadow(0 0 12px rgba(190,0,0,.35))}.info-table dl{margin:0}.info-table div{display:grid;grid-template-columns:112px 1fr;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.08);gap:10px}.info-table dt{color:#b5b7b9;font-weight:700}.info-table dd{margin:0;color:#fff}.timeline-panel{display:grid;grid-template-columns:1.6fr .9fr;gap:20px;margin-top:8px;min-height:235px;padding:0}.timeline-copy{padding:22px}.timeline-panel img{width:100%;height:100%;object-fit:cover;opacity:.75}.timeline{list-style:none;margin:0;padding:0}.timeline li{position:relative;padding:0 0 9px 100px;border-left:1px solid rgba(220,0,0,.42);margin-left:8px;color:#ddd}.timeline li:before{content:"";position:absolute;left:-6px;top:7px;width:11px;height:11px;border-radius:50%;background:#d3181f;box-shadow:0 0 0 4px rgba(210,0,0,.14)}.timeline span{position:absolute;left:22px;color:#fff;font-weight:800}.icon-list p{position:relative;padding-left:45px}.icon-list p:before{content:"✦";position:absolute;left:5px;top:-4px;font-size:28px;color:#c7c7c7}.character-wrap{display:grid;grid-template-columns:185px 1fr;gap:16px;align-items:center}.star-list{margin:0;padding:0;list-style:none}.star-list li{position:relative;margin:0 0 10px;padding-left:28px;color:#ded8cf}.star-list li:before{content:"★";position:absolute;left:0;color:#e51b22}.theme-strip{margin-top:8px}.themes{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.themes div{border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:12px;background:rgba(0,0,0,.25);min-height:112px}.themes span{font-size:28px;display:block;opacity:.9}.themes strong{display:block;color:#fff}.themes small{display:block;color:#bab6af;line-height:1.65}.songs{margin-top:8px}.song-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.song-cards article{display:grid;grid-template-columns:86px 1fr;gap:14px;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:7px;background:rgba(0,0,0,.24)}.song-cards img{width:86px;height:86px;object-fit:cover;filter:grayscale(.35)}.song-cards h3{margin:0 0 4px;color:#fff}.song-cards p{grid-column:1/-1;margin:0;font-size:14px;color:#d6d0c8}.tracklist{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin-top:8px;align-items:center}.tracks{columns:2;column-gap:52px;margin:0;padding-left:32px}.tracks li{padding:2px 0;color:#eee}.tracks li::marker{color:#f02027;font-weight:900}.tracklist img{width:min(520px,100%);justify-self:center;filter:drop-shadow(0 14px 24px rgba(0,0,0,.55))}.paper-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:8px}.paper-card{min-height:300px;padding:24px;border:1px solid #2c2824;border-radius:5px;background:linear-gradient(rgba(231,224,205,.88),rgba(197,189,170,.9)),url("images/paper-card-bg.jpg") center/cover;color:#171514;box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}.paper-card h2{color:#b20b10}.paper-card p,.paper-card li{color:#191715;font-weight:700}.paper-card li{margin:0 0 8px}.next{min-height:210px}.related a{display:block;color:#ece8e0;text-decoration:none;padding:10px 16px;border-bottom:1px solid rgba(255,255,255,.08)}.related a:before{content:"›";color:#e41b22;font-size:24px;margin-right:12px}.related a:hover{background:rgba(255,255,255,.05)}.footer{position:relative;text-align:center;margin-top:16px;padding:18px 20px 34px;color:#b9b5ae}.quote{font-size:25px;font-family:Georgia,serif;margin:0 0 6px}.tag{position:absolute;right:85px;top:12px;color:#df1c24;font-size:34px;font-weight:900;transform:rotate(-8deg);letter-spacing:.04em}.home-link{display:inline-block;margin-top:10px;color:#fff;text-decoration:none;border:1px solid #7a1a1d;background:rgba(120,0,0,.28);padding:10px 22px;border-radius:5px;font-weight:800}@media (max-width:980px){.hero__content{padding:28px 28px 180px}.hero__cover{left:50%;right:auto;transform:translateX(-50%);width:165px}.grid--top,.grid--three,.grid--bottom,.timeline-panel,.tracklist{grid-template-columns:1fr}.themes{grid-template-columns:repeat(2,1fr)}.song-cards,.paper-grid{grid-template-columns:1fr 1fr}.timeline-panel img{height:220px}.character-wrap{grid-template-columns:130px 1fr}}@media (max-width:560px){.site-shell{width:100%;padding:0 8px 22px}.hero{border-radius:0}.hero h1{font-size:50px}.hero__lead{font-size:14px}.btn{width:100%}.song-cards,.paper-grid,.themes{grid-template-columns:1fr}.tracks{columns:1}.info-table div{grid-template-columns:1fr}.timeline li{padding-left:70px}.timeline span{left:16px}.tag{position:static;display:block;margin-top:10px}.panel{padding:18px}.character-wrap{grid-template-columns:1fr}.character-wrap img{width:180px;margin:auto}}
/* ===============================
/* ===============================
   ABOUT THIS ALBUM：
   赤い放射線を消して、SLIM SHADY! を本文下・右寄せに配置
=============================== */

/* 赤い放射線を削除 */
.scribble::before {
  content: none !important;
  display: none !important;
}

/* ABOUTカード本体 */
.card--about {
  position: relative !important;
  padding-bottom: 28px !important;
}

/* scribbleを絶対配置にしない。本文の下に普通に置く */
.card--about .scribble {
  display: flex !important;
  justify-content: flex-end !important;
  position: relative !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  width: 100% !important;
  min-height: 90px !important;
  margin-top: 34px !important;
  overflow: visible !important;
}

/* SLIM SHADY! の文字 */
.card--about .scribble::after {
  content: "スリム\Aシェイディ!" !important;
  white-space: pre-line !important;
  display: block !important;
  position: relative !important;

  left: auto !important;
  right: 18px !important;
  bottom: auto !important;
  top: auto !important;

  transform: rotate(-10deg) !important;
  font-size: 34px !important;
  line-height: 0.9 !important;
  font-weight: 900 !important;
  letter-spacing: 3px !important;
  color: rgba(255, 0, 0, 0.75) !important;
  pointer-events: none !important;
}

/* =========================================================
   下段4カード：個別背景画像版
   画像ファイル：
   images/paper-review.jpg
   images/paper-sales.jpg
   images/paper-controversy.jpg
   images/paper-legacy.jpg
========================================================= */

.paper-card {
  position: relative;
  overflow: hidden;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* 既存の紙っぽい共通背景・疑似装飾を無効化 */
.paper-card::before,
.paper-card::after {
  content: none !important;
  display: none !important;
}

/* 背景画像の上に暗い読みやすさフィルターを重ねる */
.paper-card {
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, .10),
    inset 0 0 80px rgba(0, 0, 0, .58),
    0 14px 30px rgba(0, 0, 0, .45) !important;
}

/* テキストを背景より前面へ */
.paper-card > * {
  position: relative;
  z-index: 2;
}

/* 各カード専用背景 */
.paper-review {
  background-image:
    linear-gradient(90deg, rgba(2,5,6,.44), rgba(2,5,6,.62) 55%, rgba(2,5,6,.36)),
    url("images/paper-review.jpg") !important;
}

.paper-sales {
  background-image:
    linear-gradient(90deg, rgba(2,5,6,.44), rgba(2,5,6,.62) 55%, rgba(2,5,6,.36)),
    url("images/paper-sales.jpg") !important;
}

.paper-controversy {
  background-image:
    linear-gradient(90deg, rgba(2,5,6,.44), rgba(2,5,6,.66) 55%, rgba(2,5,6,.42)),
    url("images/paper-controversy.jpg") !important;
}

.paper-legacy {
  background-image:
    linear-gradient(90deg, rgba(2,5,6,.44), rgba(2,5,6,.62) 55%, rgba(2,5,6,.36)),
    url("images/paper-legacy.jpg") !important;
}

/* 見出しと本文を暗背景用に調整 */
.paper-card h2 {
  color: #ff2b2f !important;
  text-shadow: 0 2px 8px rgba(0,0,0,.85);
}

.paper-card p,
.paper-card li {
  color: rgba(255,255,255,.92) !important;
  text-shadow: 0 2px 6px rgba(0,0,0,.9);
}

/* 箇条書きの黒丸が見えにくい場合の調整 */
.paper-card li::marker {
  color: #ff2b2f;
}
/* ===============================
   フッター歌詞引用元
=============================== */

.quote-source {
  margin-top: 12px;
  margin-bottom: 28px;
  text-align: center;
  font-size: 14px;
  letter-spacing: .06em;
  color: rgba(255, 255, 255, .55);
}
/* ===============================
   右下 SLIM SHADY! の位置調整
=============================== */

.tag {
  position: absolute !important;
  right: 70px !important;
  bottom: -10px !important;
  transform: rotate(-7deg) !important;
  z-index: 1 !important;
}
/* ===============================
   SLIM SHADY! を歌詞の下に逃がす
=============================== */

.tag {
  position: static !important;
  display: block !important;
  margin: 34px 80px 0 auto !important;
  width: fit-content !important;
  transform: rotate(-7deg) !important;
  z-index: auto !important;
  text-align: right !important;
}

/* 歌詞ブロック全体に少し余白を追加 */
.final-quote,
.quote-section,
.footer-quote {
  padding-bottom: 10px !important;
}
/* =========================================================
   アフィリエイトセクション
========================================================= */

.affiliate-section {
  margin-top: 18px;
  padding: 34px 34px 28px;
  border: 1px solid rgba(88, 63, 42, .9);
  border-radius: 8px;
  background:
    radial-gradient(circle at 82% 20%, rgba(160, 0, 12, .18), transparent 34%),
    linear-gradient(135deg, rgba(8, 12, 14, .98), rgba(2, 4, 5, .99));
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, .04),
    0 16px 34px rgba(0, 0, 0, .42);
}

.affiliate-head {
  max-width: 820px;
  margin-bottom: 24px;
}

.affiliate-kicker {
  margin: 0 0 8px;
  font-size: 12px;
  letter-spacing: .18em;
  color: rgba(255, 43, 47, .88);
  font-weight: 800;
}

.affiliate-head h2 {
  margin: 0 0 12px;
  color: #ff2b2f;
  font-size: clamp(22px, 2.4vw, 32px);
  letter-spacing: .04em;
}

.affiliate-head p {
  margin: 0;
  color: rgba(255, 255, 255, .78);
  line-height: 1.9;
}

.affiliate-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.affiliate-card {
  display: block;
  min-height: 210px;
  padding: 24px 22px;
  border: 1px solid rgba(255, 255, 255, .10);
  border-radius: 7px;
  text-decoration: none;
  color: #fff;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .045), rgba(255, 255, 255, .015)),
    rgba(0, 0, 0, .34);
  transition:
    transform .25s ease,
    border-color .25s ease,
    background .25s ease,
    box-shadow .25s ease;
}

.affiliate-card:hover {
  transform: translateY(-4px);
  border-color: rgba(255, 43, 47, .58);
  background:
    linear-gradient(180deg, rgba(255, 43, 47, .12), rgba(255, 255, 255, .02)),
    rgba(0, 0, 0, .38);
  box-shadow: 0 16px 34px rgba(0, 0, 0, .42);
}

.affiliate-label {
  display: inline-block;
  margin-bottom: 14px;
  padding: 4px 9px;
  border: 1px solid rgba(255, 43, 47, .45);
  border-radius: 999px;
  color: #ff2b2f;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
}

.affiliate-card h3 {
  margin: 0 0 12px;
  font-size: 22px;
  color: rgba(255, 255, 255, .96);
}

.affiliate-card p {
  margin: 0 0 22px;
  color: rgba(255, 255, 255, .72);
  line-height: 1.8;
}

.affiliate-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 130px;
  padding: 10px 16px;
  border-radius: 4px;
  background: #b90d16;
  color: #fff;
  font-weight: 800;
  letter-spacing: .04em;
  box-shadow: 0 10px 20px rgba(185, 13, 22, .24);
}

.affiliate-note {
  margin: 18px 0 0;
  font-size: 12px;
  color: rgba(255, 255, 255, .45);
}

/* スマホ対応 */
@media (max-width: 900px) {
  .affiliate-grid {
    grid-template-columns: 1fr;
  }

  .affiliate-section {
    padding: 28px 20px 24px;
  }

  .affiliate-card {
    min-height: auto;
  }
}
/* ===============================
   ABOUT THIS ALBUMカードの上位置修正
   実際の1枚目カードを直接指定
=============================== */

.grid--top {
  align-items: start !important;
}

.grid--top > .panel:first-child {
  margin-top: 0 !important;
  align-self: start !important;
  transform: translateY(0px) !important;
}