.legal-header{border-bottom:1px solid var(--line);padding:56px 0 40px}.legal-header .kicker{color:var(--shu-ink);letter-spacing:.04em;margin-bottom:10px;font-size:13px;font-weight:700}.legal-header .h1{font-size:clamp(26px,4.2vw,36px)}.legal-header .updated{color:var(--fg-faint);margin-top:14px;font-size:13px}.legal-body{padding:48px 0 96px}.legal-layout{grid-template-columns:220px 1fr;align-items:start;gap:56px;display:grid}.legal-toc{gap:10px;display:grid;position:sticky;top:24px}.legal-toc a{color:var(--fg-muted);font-size:13.5px;line-height:1.6;text-decoration:none}.legal-toc a:hover{color:var(--fg);text-decoration:underline}.doc{max-width:68ch}.doc h2{letter-spacing:.01em;margin:44px 0 14px;scroll-margin-top:24px;font-size:19px;font-weight:700}.doc h2:first-child{margin-top:0}.doc h3{margin:24px 0 8px;font-size:15.5px;font-weight:700}.doc p{color:var(--fg-muted);word-break:auto-phrase;margin:0 0 14px;font-size:15px;line-height:1.85}.doc ul,.doc ol{gap:8px;margin:0 0 14px;padding-left:1.3em;display:grid}.doc li{color:var(--fg-muted);font-size:15px;line-height:1.8}.doc li b,.doc p b{color:var(--fg);font-weight:700}.doc .lead{color:var(--fg);margin-bottom:8px;font-size:16px;line-height:1.8}.doc-table{border-top:1px solid var(--line);margin:0 0 20px}.doc-table .row{border-bottom:1px solid var(--line);grid-template-columns:160px 1fr;gap:20px;padding:16px 0;display:grid}.doc-table dt{color:var(--fg);font-size:13.5px;font-weight:700}.doc-table dd{color:var(--fg-muted);margin:0;font-size:14.5px;line-height:1.75}.need-check{color:var(--fg-faint)}.need-check:after{content:"(要確認)";margin-left:4px;font-size:12px}.rules-list{gap:22px;margin:0 0 24px;padding:0;list-style:none;display:grid}.rules-list li{align-items:flex-start;gap:16px;display:flex}.rules-list .num{background:var(--sunken);width:30px;height:30px;font-family:var(--font-num);color:var(--fg);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:14px;display:flex}.rules-list h3{margin:0 0 6px}.rules-list p{margin:0}@media (width<=860px){.legal-layout{grid-template-columns:1fr;gap:24px}.legal-toc{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:14px;padding-bottom:20px;display:flex;position:static}}
