/* =========================================================
   DARK — 採用トップ（data-page="home"）の黒基調テーマ
   chic.css の色変数を黒地用に差し替え、ヘッダー・ボタンを上書きする
   ========================================================= */
body[data-page="home"] {
  --paper: #0c0c0e;          /* 基本の地色（ほぼ黒） */
  --ivory: #111215;          /* 少し明るい地色 */
  --sand: #1a1b20;
  --ink: #f3f1ec;            /* 文字（オフホワイト） */
  --muted: #9a9ba3;
  --line: rgba(255, 255, 255, .14);
  --navy: #15171c;
  --navy-2: #2b2f37;
  --accent: #f3f1ec;
  --accent-dark: #c8a46c;    /* 明るい地用の真鍮色 → 黒地では明るい真鍮に */
  --accent-soft: #1f1d19;
  --sun: #c8a46c;
  --shadow: none;
  --display-en: "Bodoni Moda", "Cormorant Garamond", "Times New Roman", serif;
  background: var(--paper);
  color: var(--ink);
}
body[data-page="home"] ::selection { background: rgba(200, 164, 108, .35); }

/* ---------- ヘッダー ---------- */
body[data-page="home"] .site-header { background: rgba(12, 12, 14, .72); border-bottom-color: rgba(255, 255, 255, .08); backdrop-filter: saturate(1.2) blur(14px); transition: background-color .7s cubic-bezier(.22, 1, .36, 1); }
body[data-page="home"] .site-header.is-scrolled { background: rgba(12, 12, 14, .9); }
body[data-page="home"] .brand { color: var(--ink); }
body[data-page="home"] .brand__name { font-family: var(--display-en); font-weight: 500; letter-spacing: .3em; font-size: 15px; }
body[data-page="home"] .brand__tag { color: var(--sun); border-color: rgba(200, 164, 108, .7); }
body[data-page="home"] .site-nav a { color: var(--ink); font-weight: 400; font-size: 12px; letter-spacing: .2em; text-transform: uppercase; transition: color .5s cubic-bezier(.22, 1, .36, 1); }
body[data-page="home"] .site-nav a.site-nav__cta { background: transparent; color: var(--sun); border: 1px solid rgba(200, 164, 108, .8); }
@media (min-width: 1200px) {
  body[data-page="home"] .site-nav a:hover { background: transparent; color: var(--sun); }
  body[data-page="home"] .site-nav a.site-nav__cta:hover { background: rgba(200, 164, 108, .12); color: var(--sun); }
}
@media (max-width: 1199px) {
  body[data-page="home"] .site-nav { background: rgba(12, 12, 14, .97); border-bottom-color: var(--line); }
  body[data-page="home"] .site-nav a { border-bottom-color: var(--line); }
}
body[data-page="home"] .menu-btn { color: var(--ink); }

/* ---------- ボタン：金色の細い枠線＋大文字＋矢印 ---------- */
body[data-page="home"] .btn { border-radius: 2px; font-weight: 500; font-size: 12px; letter-spacing: .22em; text-transform: uppercase; }
body[data-page="home"] .btn--primary,
body[data-page="home"] .hero .btn--primary,
body[data-page="home"] .finale .btn--primary { background: transparent; color: var(--sun); border: 1px solid rgba(200, 164, 108, .85); transition: background-color .5s cubic-bezier(.22, 1, .36, 1), color .5s; }
body[data-page="home"] .btn--primary:hover,
body[data-page="home"] .hero .btn--primary:hover,
body[data-page="home"] .finale .btn--primary:hover { background: rgba(200, 164, 108, .14); color: var(--sun); transform: none; }
body[data-page="home"] .btn--ghost { color: var(--ink); border-color: rgba(255, 255, 255, .45); }
body[data-page="home"] .btn--ghost:hover { background: rgba(255, 255, 255, .07); }
body[data-page="home"] .btn::after { content: "→"; font-family: var(--font-en); font-weight: 300; margin-left: .4em; transition: transform .5s cubic-bezier(.22, 1, .36, 1); }
body[data-page="home"] .btn:hover::after { transform: translateX(4px); }
body[data-page="home"] .sticky-cta { background: rgba(12, 12, 14, .92); border-top-color: var(--line); }

/* ---------- 共通：ラベル・見出し ---------- */
body[data-page="home"] .kicker { color: var(--sun); font-weight: 400; letter-spacing: .34em; font-size: 11px; }
body[data-page="home"] .kicker::before { background: var(--sun); }
body[data-page="home"] .sec-title { color: var(--ink); font-weight: 500; }
body[data-page="home"] .sec-lead { color: var(--muted); }
body[data-page="home"] .fine { color: rgba(255, 255, 255, .45); }
body[data-page="home"] .sec { background: var(--paper); }
body[data-page="home"] .sec--ivory { background: var(--paper); }

/* ---------- ヒーロー ---------- */
body[data-page="home"] .hero__eyebrow { color: var(--sun); }
body[data-page="home"] .hero__title { font-weight: 500; letter-spacing: .06em; font-size: clamp(24px, 6.2vw, 64px); margin-bottom: 14px; white-space: nowrap; }
@media (max-width: 420px) { body[data-page="home"] .hero__title { letter-spacing: .02em; margin-left: -.4em; } }
.sp, .sp-only { display: none; }
@media (max-width: 767px) { .sp-only { display: flex; } }
@media (max-width: 767px) { .sp { display: inline; } }
body[data-page="home"] .hero__lead { font-weight: 400; color: rgba(255, 255, 255, .92); font-family: var(--serif); letter-spacing: .06em; font-size: clamp(15px, 2.2vw, 21px); margin-bottom: 16px; }
body[data-page="home"] .hero__what { color: rgba(255, 255, 255, .7); }

/* ---------- MVV ---------- */
body[data-page="home"] .mvv__sub { color: var(--muted); }
body[data-page="home"] .mvv__values li { border-top-color: var(--line); }
body[data-page="home"] .mvv__values strong { color: var(--ink); font-weight: 500; }

/* ---------- メンバー ---------- */
body[data-page="home"] .members { background: var(--ivory); }
body[data-page="home"] .group { background: var(--sand); }
body[data-page="home"] .group figcaption { background: rgba(12, 12, 14, .8); color: var(--ink); font-weight: 400; letter-spacing: .08em; }
body[data-page="home"] .member { background: rgba(255, 255, 255, .025); border-color: var(--line); }
body[data-page="home"] .member__name { color: var(--ink); font-weight: 500; }
body[data-page="home"] .member__msg, body[data-page="home"] .member__bio { color: rgba(255, 255, 255, .8); }
body[data-page="home"] .empty { color: var(--muted); }

/* ---------- クロージング・フッター ---------- */
body[data-page="home"] .finale { background: radial-gradient(120% 90% at 85% 10%, #1c1e24 0%, #0f1013 55%, #070708 100%); }
body[data-page="home"] .finale__title { font-weight: 500; }
body[data-page="home"] .site-footer { background: #070708; border-top: 1px solid rgba(255, 255, 255, .06); }
body[data-page="home"] .site-footer__brand { font-family: var(--display-en); font-weight: 500; letter-spacing: .3em; }
