/* ============================================================
   THIRD KAGURA — 法務ページ共通スタイル
   ブランド: 会社サイト COMING SOON「案E player」継承 (dark green luxury)
   作成: 2026-05-20 / code-web
   用途: /privacy-policy /terms /booking-terms /acknowledgement 共通
   ============================================================ */
:root{
  --bg-top:#1a3a2a; --bg-mid:#0e2218; --bg-bot:#06120e;
  --surface:rgba(255,255,255,0.04);
  --line:rgba(255,255,255,0.10);
  --text:#f4f6f5; --soft:rgba(255,255,255,0.70); --mute:rgba(255,255,255,0.42);
  --glow:#22c55e; --glow-bright:#4ade80;
  --ease:cubic-bezier(0.32,0.72,0,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:radial-gradient(ellipse 120vmin 80vmin at 50% -8%, #1f4a35 0%, #112a1f 36%, var(--bg-mid) 66%, var(--bg-bot) 100%), var(--bg-bot);
  background-attachment:fixed;
  color:var(--text);
  font-family:"Manrope","SF Pro Text","Helvetica Neue",sans-serif;
  font-size:16px; line-height:1.72; letter-spacing:-0.005em;
  -webkit-font-smoothing:antialiased;
  min-height:100vh;
}
a{color:var(--glow-bright);text-decoration:none;border-bottom:1px solid rgba(74,222,128,0.3);transition:.18s var(--ease)}
a:hover{border-bottom-color:var(--glow-bright)}

/* ===== top bar ===== */
.topbar{
  position:sticky;top:0;z-index:10;
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  background:rgba(6,18,14,0.72);border-bottom:1px solid var(--line);
}
.topbar .inner{max-width:920px;margin:0 auto;padding:16px 28px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{font-family:"Space Mono",monospace;font-size:13px;letter-spacing:0.28em;text-transform:uppercase;color:var(--text);border:0}
.brand:hover{color:var(--glow-bright)}
.nav{display:flex;gap:18px;flex-wrap:wrap}
.nav a{font-family:"Space Mono",monospace;font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--mute);border:0}
.nav a:hover,.nav a[aria-current="page"]{color:var(--glow-bright)}

/* ===== document ===== */
.doc{max-width:760px;margin:0 auto;padding:64px 28px 0}
.eyebrow{font-family:"Space Mono",monospace;font-size:11px;letter-spacing:0.3em;text-transform:uppercase;color:var(--glow);margin-bottom:18px}
.doc h1{font-family:"Fraunces",serif;font-weight:600;font-size:clamp(30px,6vw,46px);line-height:1.1;letter-spacing:-0.02em;margin-bottom:18px}
.dates{display:flex;gap:24px;flex-wrap:wrap;font-family:"Space Mono",monospace;font-size:12px;color:var(--mute);margin-bottom:28px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.dates b{color:var(--soft);font-weight:400}
.preamble{font-style:italic;color:var(--soft);font-size:15px;border-left:2px solid var(--glow);padding:6px 0 6px 18px;margin-bottom:32px;line-height:1.6}
.intro{font-size:17px;color:var(--text);margin-bottom:14px}

.doc h2{font-family:"Fraunces",serif;font-weight:600;font-size:22px;letter-spacing:-0.01em;margin:40px 0 12px;color:var(--text)}
.doc h2 .s{font-family:"Space Mono",monospace;font-size:13px;color:var(--glow);margin-right:10px;font-weight:400}
.doc h3{font-size:16px;font-weight:700;margin:22px 0 8px;color:var(--text)}
.doc p{color:var(--soft);margin-bottom:14px}
.doc ul,.doc ol{color:var(--soft);margin:0 0 16px;padding-left:24px}
.doc li{margin-bottom:7px}
.doc li::marker{color:var(--mute)}
.doc strong{color:var(--text);font-weight:600}
hr{border:0;border-top:1px solid var(--line);margin:34px 0}

table{width:100%;border-collapse:collapse;margin:8px 0 18px;font-size:14.5px}
caption{text-align:left;font-family:"Space Mono",monospace;font-size:11px;letter-spacing:0.1em;text-transform:uppercase;color:var(--mute);margin-bottom:8px}
th,td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);color:var(--soft);vertical-align:top}
th{font-family:"Space Mono",monospace;font-size:11px;letter-spacing:0.06em;text-transform:uppercase;color:var(--mute);font-weight:400;background:var(--surface)}
td strong{color:var(--text)}

/* ===== footer ===== */
.doc-footer{max-width:760px;margin:64px auto 0;padding:32px 28px 72px;border-top:1px solid var(--line);color:var(--mute);font-size:13.5px}
.doc-footer .ack{color:var(--soft);font-style:italic;margin-bottom:20px;line-height:1.6}
.doc-footer .footer-nav{display:grid;grid-template-columns:1.1fr 1fr 1.2fr;gap:32px;margin-bottom:26px}
.fcol .fh{font-family:"Space Mono",monospace;font-size:10.5px;letter-spacing:0.18em;text-transform:uppercase;color:var(--glow);margin-bottom:13px}
.fcol a,.fcol span{display:block;font-size:13px;color:var(--soft);margin-bottom:8px;border:0;line-height:1.5}
.fcol a{transition:.16s var(--ease)}
.fcol a:hover{color:var(--glow-bright)}
.fcol .muted{color:var(--mute)}
.doc-footer .law{margin-top:6px;padding-top:18px;border-top:1px solid var(--line);font-family:"Space Mono",monospace;font-size:11px;color:var(--mute);letter-spacing:0.03em;line-height:1.7}
@media(max-width:600px){.doc-footer .footer-nav{grid-template-columns:1fr;gap:22px}}

@media(max-width:560px){
  .doc{padding-top:44px}
  body{font-size:15px}
  .nav{display:none}
}

.topbar .back{margin-left:auto;font-family:"Space Mono",monospace;font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--mute);white-space:nowrap;border:0;text-decoration:none}
.topbar .back:hover{color:var(--glow-bright)}

/* === monochrome: 背景=黒+グレー / アクセント=白+グレー (2026-05-20) === */
:root{--bg-top:#1c1c1c;--bg-mid:#0c0c0c;--bg-bot:#000;--glow:#bcbcbc;--glow-bright:#ffffff}
body{background:radial-gradient(ellipse 120vmin 80vmin at 50% -8%, #242424 0%, #151515 36%, #0c0c0c 66%, #000 100%), #000}
.topbar{background:rgba(0,0,0,0.72)}
a{border-bottom-color:rgba(255,255,255,0.26)}
.preamble{border-left-color:rgba(255,255,255,0.5)}
