/* 法的ページ共通スタイル（_brand.css を先に読み込むこと） */
body{font-size:15px;background:var(--kinari)}
.legal-wrap{max-width:800px;margin:0 auto;padding:0 24px}
.legal-head{background:var(--sumi);color:var(--cream);padding:52px 0 44px;position:relative;margin-bottom:56px}
.legal-head::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,var(--kin) 30%,var(--kin) 70%,transparent)}
.legal-head h1{font-family:var(--serif);font-size:clamp(1.5rem,3.2vw,2rem);font-weight:900;letter-spacing:.03em;line-height:1.5;margin-bottom:10px}
.legal-head .updated{font-size:.78rem;color:var(--kin2);letter-spacing:.06em}
main{padding-bottom:88px}
main h2{font-family:var(--serif);font-size:1.05rem;font-weight:700;color:var(--sumi);margin:40px 0 12px;padding-left:14px;border-left:3px solid var(--shu)}
main h2:first-of-type{margin-top:0}
main p,main li{font-size:.92rem;color:var(--body)}
main p{margin-bottom:12px}
main ol,main ul{padding-left:1.5em;margin-bottom:12px}
main li{margin-bottom:8px}
main strong{color:var(--sumi)}
main table{border-collapse:collapse;width:100%;background:var(--kinari2);font-size:.9rem;margin-bottom:12px}
main th,main td{border:1px solid var(--line);padding:13px 16px;text-align:left;vertical-align:top}
main th{background:#EDE6D8;width:30%;font-weight:600;color:var(--sumi)}
@media (max-width:560px){main th{width:36%}}
.tscroll{overflow-x:auto}
.note-box{background:var(--kinari2);border:1px solid var(--kin);border-left:3px solid var(--shu);padding:20px 24px;margin:24px 0;font-size:.9rem}
.enacted{margin-top:40px;font-size:.8rem;color:var(--body2)}
.legal-foot{border-top:1px solid var(--line);padding:28px 0 56px;font-size:.8rem;color:var(--body2);text-align:center}
.legal-foot a{color:var(--body2);margin:0 10px}
.legal-foot a:hover{color:var(--shu)}
