/* 【2026-11-03】プライバシーポリシー・利用規約（privacy.html / terms.html）の共通の見た目。アプリのアイコンの夜空（#212247）と生成りの紙。
   外部の書体は読み込まない（ページを軽くし、Google Fonts への通信も起こさない） */
:root{
  --lg-night:#212247; --lg-night2:#17183a; --lg-paper:#F7F1E3; --lg-ink:#2A2620; --lg-soft:#6A6153; --lg-line:#D9CDB4;
  --lg-accent:#B5361F; --lg-gold:#F6C84A;
  color-scheme:light;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){ --lg-paper:#23243F; --lg-ink:#EFE6D2; --lg-soft:#B9AF9C; --lg-line:#3D3F66; --lg-accent:#F08A6E; color-scheme:dark; }
}
:root[data-theme="dark"]{ --lg-paper:#23243F; --lg-ink:#EFE6D2; --lg-soft:#B9AF9C; --lg-line:#3D3F66; --lg-accent:#F08A6E; color-scheme:dark; }
*{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{
  margin:0; background:var(--lg-night2); color:var(--lg-ink);
  font-family:"Hiragino Maru Gothic ProN","Hiragino Sans","Yu Gothic UI","Yu Gothic","Noto Sans JP","Noto Sans CJK JP",system-ui,sans-serif;
  font-size:15px; line-height:1.85; letter-spacing:.02em; overflow-wrap:anywhere;
}
a{ color:var(--lg-accent); }
.lg-head{
  background:radial-gradient(120% 90% at 50% 0%, #3a3c78 0%, var(--lg-night) 60%, var(--lg-night2) 100%);
  color:#F6E7C8; text-align:center;
  padding:max(18px, env(safe-area-inset-top)) 16px 26px;
}
.lg-back{ display:inline-block; color:#F6E7C8; font-size:13px; font-weight:700; text-decoration:none; opacity:.85; margin:0 0 10px; }
.lg-back:hover{ opacity:1; text-decoration:underline; }
.lg-brand{ margin:0; font-size:13px; font-weight:800; letter-spacing:.3em; color:var(--lg-gold); }
.lg-head h1{ margin:4px 0 2px; font-size:clamp(22px, 6vw, 30px); font-weight:900; letter-spacing:.12em; }
.lg-date{ margin:0; font-size:12.5px; opacity:.75; }
.lg-main{
  max-width:760px; margin:-12px auto 0; background:var(--lg-paper); border-radius:16px 16px 0 0;
  padding:22px 16px 30px; box-shadow:0 -6px 24px rgba(0,0,0,.25);
}
@media (min-width:600px){ .lg-main{ padding:30px 36px 40px; margin-bottom:24px; border-radius:16px; } }
.lg-lead{ margin:0 0 18px; }
.lg-toc{ border:1px solid var(--lg-line); border-radius:12px; padding:10px 16px; margin:0 0 22px; font-size:14px; }
.lg-toc ol{ margin:0; padding-left:1.4em; }
section{ margin:0 0 24px; scroll-margin-top:12px; }
h2{ font-size:17px; font-weight:900; margin:0 0 8px; padding:2px 0 4px 10px; border-left:5px solid var(--lg-accent); border-bottom:1px solid var(--lg-line); }
p{ margin:0 0 10px; }
ul, ol{ margin:0 0 10px; padding-left:1.4em; }
li{ margin:0 0 6px; }
strong{ background:linear-gradient(transparent 62%, rgba(246,200,74,.45) 62%); font-weight:800; }
.lg-table{ width:100%; border-collapse:collapse; font-size:13.5px; margin:6px 0 12px; }
.lg-table th, .lg-table td{ border:1px solid var(--lg-line); padding:7px 9px; text-align:left; vertical-align:top; }
.lg-table th{ background:rgba(127,127,127,.12); font-weight:800; }
.lg-table td:first-child{ white-space:nowrap; font-weight:700; }
@media (max-width:480px){
  .lg-table td:first-child{ white-space:normal; width:34%; }
}
.lg-links{ text-align:center; font-size:14px; font-weight:700; margin:28px 0 0; }
.lg-foot{ text-align:center; color:rgba(246,231,200,.7); font-size:12px; padding:16px 16px max(20px, env(safe-area-inset-bottom)); }
