/* ADDACK policy layout (0.6.64): left contents list + one card per chapter; operator page as cards.
   Everything is scoped under body.ax-legal-page; colours and labels are the only things to change when reusing it. */
body.ax-legal-page .ax-legal-main.ax-policy-wrap{max-width:1240px;padding:44px 28px 96px}
body.ax-legal-page .ax-policy{display:grid;grid-template-columns:250px minmax(0,1fr);gap:52px;align-items:start}
body.ax-legal-page .ax-policy-side{position:sticky;top:calc(var(--ax-admin-offset,0px) + 112px);max-height:calc(100vh - 140px);overflow:auto}
body.ax-legal-page .ax-policy-toc{background:#fff;border:1px solid #e6e8ec;border-radius:14px;padding:18px 10px 12px}
body.ax-legal-page .ax-policy-toc-title{margin:0 0 8px 12px;font-size:12px;font-weight:700;letter-spacing:.12em;color:#6b7078}
body.ax-legal-page .ax-policy-toc ol,body.ax-legal-page .ax-policy-toc-m ol{list-style:none;margin:0;padding:0}
body.ax-legal-page .ax-policy-toc li,body.ax-legal-page .ax-policy-toc-m li{list-style:none;margin:0;padding:0}
body.ax-legal-page .ax-policy-toc a,body.ax-legal-page .ax-policy-toc-m a{display:flex;gap:10px;align-items:baseline;padding:8px 12px;border-left:2px solid transparent;border-radius:0 8px 8px 0;color:#454b52;font-size:14px;line-height:1.5;text-decoration:none}
body.ax-legal-page .ax-policy-toc a:hover{background:#f6f7f9;color:#14171c}
body.ax-legal-page .ax-policy-toc a.is-active{background:#fff4f2;color:#14171c;font-weight:700;border-left-color:#ff4937}
body.ax-legal-page .ax-policy-n{color:#ff4937;font-weight:700;font-size:.9em;font-variant-numeric:tabular-nums;letter-spacing:.02em}
body.ax-legal-page .ax-policy-help{margin-top:14px;padding:16px 18px;background:#fff;border:1px solid #e6e8ec;border-radius:14px;font-size:13px;line-height:1.7;color:#454b52}
body.ax-legal-page .ax-policy-help p{margin:0 0 6px}
body.ax-legal-page .ax-policy-help a{color:#a72b20;font-weight:700;text-decoration:none}
body.ax-legal-page .ax-policy-eyebrow{margin:0 0 10px;color:#ff4937;font-size:12px;font-weight:800;letter-spacing:.16em}
body.ax-legal-page .ax-policy-body-wrap h1{margin:0 0 22px;font-size:clamp(28px,3.6vw,40px);line-height:1.4;font-weight:800}
body.ax-legal-page .ax-policy-meta{display:flex;flex-wrap:wrap;gap:6px 0;margin:0 0 26px;font-size:13.5px;color:#6b7078}
body.ax-legal-page .ax-policy-meta span+span::before{content:"";display:inline-block;width:1px;height:12px;margin:0 14px;background:#d5d8de;vertical-align:-1px}
body.ax-legal-page .ax-policy-lead{margin:0 0 28px;font-size:15.5px;line-height:1.95;color:#2a2f36}
body.ax-legal-page .ax-policy-lead p{margin:0 0 1em}
body.ax-legal-page .ax-policy-toc-m{display:none}
body.ax-legal-page .ax-policy-card{background:#fff;border:1px solid #e6e8ec;border-radius:14px;padding:30px 36px 26px;margin:0 0 18px;scroll-margin-top:calc(var(--ax-admin-offset,0px) + 60px)}
body.ax-legal-page .ax-policy .ax-policy-card h2{display:flex;gap:12px;align-items:baseline;margin:0 0 16px!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;font-size:20px;line-height:1.5;font-weight:700;color:#14171c}
body.ax-legal-page .ax-policy .ax-policy-card h2::before,body.ax-legal-page .ax-policy .ax-policy-card h2::after{display:none!important}
body.ax-legal-page .ax-policy-text{font-size:15.5px;line-height:1.95;color:#2a2f36;overflow-wrap:break-word;line-break:strict;text-wrap:pretty}
body.ax-legal-page .ax-policy-text p{margin:0 0 1em}
body.ax-legal-page .ax-policy-text ol{list-style:decimal outside;margin:0 0 1.2em;padding-left:1.8em}
body.ax-legal-page .ax-policy-text ol>li{list-style:decimal outside;margin:0 0 .8em;padding-left:.35em}
body.ax-legal-page .ax-policy-text ol>li::marker{color:#ff4937;font-weight:700}
body.ax-legal-page .ax-policy-text ul{list-style:disc outside;margin:0 0 1.2em;padding-left:1.6em}
body.ax-legal-page .ax-policy-text ul>li{list-style:disc outside;margin:0 0 .7em;padding-left:.3em}
body.ax-legal-page .ax-policy-text ul>li::marker{color:#c1c5cc}
body.ax-legal-page .ax-policy-text ol ol{list-style:lower-alpha outside}
body.ax-legal-page .ax-policy-text li>ul,body.ax-legal-page .ax-policy-text li>ol{margin:.7em 0 .3em}
body.ax-legal-page .ax-policy-text h3{margin:26px 0 10px!important;padding:0 0 0 12px!important;border:0!important;border-left:2px solid #ff4937!important;background:none!important;font-size:16.5px;line-height:1.6;font-weight:700;color:#14171c}
body.ax-legal-page .ax-policy-text h3::before,body.ax-legal-page .ax-policy-text h3::after{display:none!important}
body.ax-legal-page .ax-policy-text a{color:#a72b20;text-underline-offset:3px}
body.ax-legal-page .ax-policy-text>*:last-child{margin-bottom:0}
body.ax-legal-page .ax-policy-body-wrap{min-width:0}
body.ax-legal-page .ax-op-page{max-width:640px;margin:0 auto}
body.ax-legal-page .ax-op-page h1{margin:0 0 24px;font-size:clamp(28px,3.6vw,40px);line-height:1.4;font-weight:800}
body.ax-legal-page .ax-op-list{display:flex;flex-direction:column;gap:12px}
body.ax-legal-page .ax-op-item{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;align-items:center;background:#fff;border:1px solid #e6e8ec;border-radius:12px;padding:18px 24px}
body.ax-legal-page .ax-op-label{color:#6b7078;font-size:13px;font-weight:700;letter-spacing:.08em}
body.ax-legal-page .ax-op-value{color:#14171c;font-size:15.5px;line-height:1.8;overflow-wrap:anywhere}
body.ax-legal-page .ax-op-value a{color:#a72b20;text-underline-offset:3px}
@media(max-width:900px){
 body.ax-legal-page .ax-legal-main.ax-policy-wrap{padding:28px 16px 70px}
 body.ax-legal-page .ax-policy{grid-template-columns:minmax(0,1fr);gap:0}
 body.ax-legal-page .ax-policy-side{display:none}
 body.ax-legal-page .ax-policy-toc-m{display:block;margin:0 0 22px;background:#fff;border:1px solid #e6e8ec;border-radius:14px;padding:4px 10px}
 body.ax-legal-page .ax-policy-toc-m summary{cursor:pointer;padding:12px 8px;font-size:13px;font-weight:700;letter-spacing:.1em;color:#454b52;list-style:none}
 body.ax-legal-page .ax-policy-toc-m summary::-webkit-details-marker{display:none}
 body.ax-legal-page .ax-policy-toc-m summary::after{content:"＋";float:right;color:#ff4937}
 body.ax-legal-page .ax-policy-toc-m[open] summary::after{content:"－"}
 body.ax-legal-page .ax-policy-toc-m ol{padding-bottom:8px}
 body.ax-legal-page .ax-policy-card{padding:24px 20px 20px}
 body.ax-legal-page .ax-policy .ax-policy-card h2{font-size:18px}
 body.ax-legal-page .ax-policy-text{font-size:15px}
 body.ax-legal-page .ax-policy-meta{flex-direction:column;gap:2px}
 body.ax-legal-page .ax-policy-meta span+span::before{display:none}
 body.ax-legal-page .ax-op-item{grid-template-columns:minmax(0,1fr);gap:4px;padding:16px 20px;align-items:start}
}
html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* 0.7.4: room for the longer names (特定商取引法: 「価格以外の必要料金」 on one line). */
@media(min-width:901px){body.ax-legal-page .ax-op-item{grid-template-columns:150px minmax(0,1fr)}}
/* 0.7.5 / 0.7.6: 運営者情報・特定商取引法の表記: somewhat wider cards (640 → 760px). */
body.ax-legal-page .ax-op-page{max-width:760px}
