/* ===== legal pages (page.php) ===== */
.legal-hero{background:var(--ink);color:#fff;padding:150px 0 48px;text-align:center}
.legal-hero .eyebrow{color:rgba(255,255,255,.55);margin-bottom:12px}
.legal-hero h1{font-family:var(--serif);font-size:clamp(24px,4vw,32px)}
.legal{padding:72px 0 96px}
.legal-body{max-width:760px;margin:0 auto;font-size:14.5px;line-height:1.9;color:#333}
.legal-body h2{font-family:var(--serif);font-size:19px;margin:44px 0 16px;padding-top:24px;border-top:1px solid var(--gray-2)}
.legal-body h2:first-child{margin-top:0;padding-top:0;border-top:none}
.legal-body h3{font-size:15.5px;margin:26px 0 10px}
.legal-body p{margin-bottom:14px}
.legal-body a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.legal-body a:hover{color:var(--gray-3)}
.legal-body ul,.legal-body ol{margin:0 0 14px 1.4em}
.legal-body li{margin-bottom:6px}
.legal-body table{width:100%;border-collapse:collapse;margin:16px 0 22px;font-size:13.5px}
.legal-body th,.legal-body td{border:1px solid var(--gray-2);padding:12px 14px;text-align:left;vertical-align:top}
.legal-body th{background:var(--gray-1);width:32%;font-weight:500;color:var(--gray-3)}
.legal-body .legal-date{color:var(--gray-3);font-size:12.5px;margin-top:36px}
.legal-cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:40px}
.legal-cta a.hdr-cta{text-decoration:none!important;color:inherit}
.legal-cta a.hdr-cta.hdr-cta--fill{color:#fff}
@media(max-width:600px){.legal-cta{flex-direction:column}.legal-cta a.hdr-cta{width:100%;text-align:center}}
@media(max-width:600px){
  .legal-body table,.legal-body tr,.legal-body th,.legal-body td{display:block;width:auto}
  .legal-body th{border-bottom:none;padding-bottom:4px}
  .legal-body td{padding-top:0;padding-bottom:14px}
}

/* ===== 2026-10-22 本文の太字にマーカー・小見出しに金の線（町ページ・サービスページ・コラム） ===== */
.legal-body strong{font-weight:700;background:linear-gradient(transparent 62%,rgba(184,147,63,.24) 62%)}
.legal-body strong.kw{background:none}
.legal-body h2{position:relative;padding-left:14px}
.legal-body h2::before{content:"";position:absolute;left:0;top:calc(24px + .25em);bottom:.25em;width:4px;background:var(--gold)}
.legal-body h2:first-child::before{top:.25em}
.legal-body h3{padding:4px 0 4px 12px;border-left:3px solid var(--gold);background:linear-gradient(90deg,rgba(184,147,63,.08),transparent 70%)}
.legal-body li::marker{color:var(--gold)}
