:root{--ink:#183b56;--teal:#087e73;--mint:#eff9f7;--line:#dce8e6;--muted:#526875}
*{box-sizing:border-box}html{scroll-padding-top:6rem}body{margin:0;color:var(--ink);font:16px/1.9 -apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Yu Gothic",Meiryo,sans-serif;background:#fff}a{color:var(--teal);text-underline-offset:4px;overflow-wrap:anywhere}a:focus-visible{outline:3px solid #c48130;outline-offset:5px;border-radius:2px}.skip{position:absolute;top:-100px;left:20px;padding:8px 16px;background:#fff;z-index:5}.skip:focus{top:10px}.legal-header{border-bottom:1px solid var(--line)}.legal-header-inner,.legal-footer-inner{max-width:1100px;margin:auto;padding:20px 28px;display:flex;gap:20px;justify-content:space-between;align-items:center}.legal-brand{font-weight:850;font-size:27px;letter-spacing:-1px;color:var(--ink);text-decoration:none}.legal-brand span{color:var(--teal)}.legal-back{font-size:14px}.legal-main{max-width:860px;margin:0 auto;padding:64px 28px 80px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;color:var(--teal);margin:0 0 16px}h1{font-size:clamp(27px,3.2vw,40px);line-height:1.45;margin:0 0 16px;letter-spacing:-.03em;overflow-wrap:anywhere}h2{font-size:21px;line-height:1.6;margin:42px 0 14px;padding-top:22px;border-top:1px solid var(--line)}p{margin:0 0 18px}li{padding-left:3px;margin-bottom:8px}.legal-date{font-size:14px;color:var(--muted);margin-bottom:28px}.legal-note{background:var(--mint);border-left:3px solid var(--teal);padding:22px 24px;margin:26px 0 34px;font-size:15px}.legal-note p:last-child{margin-bottom:0}.legal-toc{padding:22px 24px;border:1px solid var(--line);border-radius:10px}.legal-toc strong{display:block;margin-bottom:8px}.legal-toc ul{margin:0;padding-left:20px;columns:2;column-gap:30px}.legal-toc li{break-inside:avoid;font-size:14px}.company{display:grid;grid-template-columns:115px 1fr;margin:0;gap:10px 18px}.company dt{font-weight:700}.company dd{margin:0;overflow-wrap:anywhere}.legal-footer{background:var(--mint);border-top:1px solid var(--line)}.legal-footer-inner{align-items:flex-start;font-size:14px}.legal-footer nav{display:flex;gap:14px;flex-wrap:wrap}.legal-footer small{display:block;color:var(--muted)}@media(max-width:600px){.legal-header-inner,.legal-footer-inner{padding:16px 20px}.legal-main{padding:38px 22px 54px}.legal-toc ul{columns:1}.legal-note{padding:18px}.company{grid-template-columns:1fr;gap:4px}.company dd{margin-bottom:12px}.legal-footer-inner{flex-direction:column}h2{font-size:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
