/* =====================================================================
   規約ページ 共通スタイル
   2026-09-04 作成

   なぜ1本にしたか：
     利用規約・プライバシーポリシー・特商法の3ページで同じ見た目にする。
     ページごとに書くと、直したときに必ずずれる（CLAUDE.md 2-1）。

   なぜ外部CDNを使わないか：
     入口ページと同じ理由。落ちると規約が読めなくなる。
     フォントは端末が持っているものだけを指定する。
   ===================================================================== */

:root{
  --navy:#1f3864; --ink:#222; --sub:#666; --line:#e3e6ec;
  --bg:#f7f8fa; --card:#fff; --amber:#b8860b; --amber-bg:#fff8e6;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",YuGothic,Meiryo,sans-serif;
  font-size:15px; line-height:1.85;
}

/* --- 上の帯 --- */
.lg-top{
  background:var(--navy); color:#fff; padding:14px 20px;
  display:flex; align-items:center; gap:14px; flex-wrap:wrap;
}
.lg-top .home{color:#fff; text-decoration:none; font-weight:700; font-size:0.95rem}
.lg-top .home:hover{text-decoration:underline}
.lg-top .sep{color:#8fa4c8}
.lg-top nav{margin-left:auto; display:flex; gap:16px; flex-wrap:wrap}
.lg-top nav a{color:#cfd9ea; text-decoration:none; font-size:0.85rem}
.lg-top nav a:hover{color:#fff; text-decoration:underline}
.lg-top nav a.on{color:#fff; font-weight:700; border-bottom:2px solid #fff}

/* --- 本体 --- */
.lg-wrap{max-width:820px; margin:0 auto; padding:28px 20px 80px}
.lg-paper{background:var(--card); border:1px solid var(--line); border-radius:8px; padding:32px 34px}
h1{font-size:1.5rem; color:var(--navy); margin:0 0 6px; line-height:1.4}
.lg-meta{color:var(--sub); font-size:0.85rem; margin:0 0 22px}
h2{
  font-size:1.05rem; color:var(--navy); margin:30px 0 10px;
  padding-bottom:6px; border-bottom:1px solid var(--line);
}
h3{font-size:0.95rem; color:var(--navy); margin:22px 0 8px}
p{margin:0 0 10px}
ol,ul{margin:0 0 12px; padding-left:1.6em}
li{margin-bottom:6px}
strong{color:#000}
a{color:#1155aa}

/* --- 注意書きの箱 --- */
.lg-note{
  background:var(--amber-bg); border:1px solid #e8d9a8; border-left:4px solid var(--amber);
  border-radius:4px; padding:14px 16px; margin:0 0 24px; font-size:0.9rem;
}
.lg-note b{color:var(--amber)}

/* --- 表 --- */
table{width:100%; border-collapse:collapse; margin:12px 0 18px; font-size:0.92rem}
th,td{border:1px solid var(--line); padding:9px 11px; text-align:left; vertical-align:top}
th{background:#f2f4f8; color:var(--navy); font-weight:700; white-space:nowrap}
td.num{text-align:right; white-space:nowrap}

/* --- 下の署名 --- */
.lg-sig{margin-top:34px; padding-top:18px; border-top:2px solid var(--navy); font-size:0.9rem}
.lg-foot{max-width:820px; margin:0 auto; padding:0 20px; color:var(--sub); font-size:0.82rem; text-align:center}
.lg-foot a{color:var(--sub); margin:0 8px}

@media (max-width:600px){
  body{font-size:14px}
  .lg-paper{padding:22px 18px}
  th{white-space:normal}
}
@media print{
  body{background:#fff}
  .lg-top,.lg-foot,.lg-note{display:none}
  .lg-paper{border:none; padding:0}
}
