/* ============================================================
   法務ページ共通スタイル（legal.css）— LP と同じトーン
   ============================================================ */
:root{
  --cream:#FBF6F0; --paper:#FFFDFB; --ink:#3B2F2A; --ink-soft:#7A6A62;
  --coral:#D14B58; --coral-deep:#B93E4A; --line:rgba(59,47,42,.14);
  --font-display:"Shippori Mincho","Hiragino Mincho ProN",serif;
  --font-body:"Noto Sans JP","Hiragino Kaku Gothic ProN",sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:var(--font-body);color:var(--ink);background:var(--cream);font-size:15.5px;line-height:1.9;-webkit-font-smoothing:antialiased}
.legal-header{
  background:var(--paper);border-bottom:1px solid var(--line);
  padding:0.9rem 1.25rem;position:sticky;top:0;z-index:10;
}
.legal-header .bar{max-width:760px;margin:0 auto;display:flex;align-items:center;gap:.55rem}
.legal-header .brand{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-display);font-weight:600;font-size:1.05rem;letter-spacing:.1em;color:var(--ink);text-decoration:none}
.legal-main{max-width:760px;margin:0 auto;padding:2.2rem 1.25rem 3.5rem}
.legal-main h1{font-family:var(--font-display);font-size:1.5rem;font-weight:600;letter-spacing:.04em;margin-bottom:.4rem}
.legal-main .updated{font-size:.78rem;color:var(--ink-soft);margin-bottom:1.6rem}
.legal-main h2{font-size:1.06rem;font-weight:700;margin:1.9rem 0 .6rem;padding-left:.7em;border-left:4px solid var(--coral)}
.legal-main p{margin-bottom:.9em}
.legal-main ul,.legal-main ol{margin:0 0 1em 1.25em}
.legal-main li{margin-bottom:.4em}
.legal-main table{width:100%;border-collapse:collapse;margin:.6rem 0 1.2rem;font-size:.9rem;background:var(--paper)}
.legal-main th,.legal-main td{border:1px solid var(--line);padding:.6em .8em;text-align:left;vertical-align:top}
.legal-main th{background:#F5EDE2;font-weight:700;white-space:nowrap}
.legal-back{
  display:inline-block;margin-top:2.2rem;color:#FFF;background:var(--coral);
  text-decoration:none;font-weight:700;font-size:.9rem;border-radius:10px;padding:.7em 1.6em;
  transition:background-color .2s ease-out;
}
.legal-back:hover{background:var(--coral-deep)}
.legal-footer{max-width:760px;margin:0 auto;padding:1.2rem 1.25rem 2.4rem;border-top:1px solid var(--line);font-size:.75rem;color:var(--ink-soft);display:flex;flex-wrap:wrap;gap:.4em 1.2em}
.legal-footer a{color:var(--ink-soft)}
.placeholder{color:var(--coral-deep);font-weight:700;background:rgba(209,75,88,.07);padding:0 .3em;border-radius:4px}
@media (max-width:640px){ body{font-size:15px} .legal-main{padding:1.6rem 1.1rem 2.8rem} }
