@font-face{font-family:ShimizuSerif;src:url('../fonts/serif.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
:root{--paper:#f5f3ed;--paper-deep:#e8e4db;--ink:#272725;--muted:#69665f;--line:#cbc6bb;--accent:#706257;--serif:ShimizuSerif,"Yu Mincho","Hiragino Mincho ProN",serif;--sans:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;--gutter:clamp(24px,5.6vw,96px)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:30px;scrollbar-gutter:stable}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:16px;line-height:2;letter-spacing:.045em;-webkit-text-size-adjust:100%}
a{color:inherit;text-decoration:none;text-underline-offset:5px}
a:hover{color:var(--accent)}
a:focus-visible,summary:focus-visible{outline:2px solid var(--ink);outline-offset:6px}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,p,ol,ul,figure{margin:0}
h1,h2,h3{font-weight:400}
.skip-link{position:fixed;z-index:200;left:18px;top:-100px;padding:10px 18px;background:var(--ink);color:var(--paper)}
.skip-link:focus{top:18px}
.terms-header{height:94px;padding:22px var(--gutter);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.terms-brand{width:145px}
.terms-brand img{width:100%}
.header-actions{display:flex;align-items:center;gap:28px;font-family:var(--sans);font-size:12px;letter-spacing:.11em}
.header-actions a:first-child{text-decoration:underline}
.header-call{min-height:44px;display:flex;align-items:center;padding:0 19px;border:1px solid var(--ink)}
.terms-hero{max-width:1408px;margin:0 auto;padding:102px var(--gutter) 92px;border-bottom:1px solid var(--ink)}
.section-label{font-family:var(--sans);font-size:10px;line-height:1.5;letter-spacing:.19em;color:var(--muted)}
.terms-hero h1{margin-top:23px;font-size:clamp(36px,4vw,52px);line-height:1.5;letter-spacing:.12em}
.terms-intro{max-width:1408px;margin:0 auto;padding:74px var(--gutter) 78px;display:grid;grid-template-columns:minmax(230px,.75fr) minmax(0,1.25fr);gap:10%;border-bottom:1px solid var(--line)}
.terms-intro h2{font-size:clamp(25px,3vw,40px);line-height:1.65;letter-spacing:.1em}
.terms-intro div{max-width:46em}
.terms-intro div p{font-size:16px;line-height:2.15}
.terms-intro div p+p{margin-top:22px;font-family:var(--sans);font-size:12px;line-height:2;color:var(--muted)}
.terms-nav{max-width:1408px;margin:0 auto;display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid var(--line)}
.terms-nav a{min-height:68px;padding:15px 18px;display:flex;align-items:center;justify-content:center;border-right:1px solid var(--line);font-family:var(--sans);font-size:11px;letter-spacing:.07em}
.terms-nav a:last-child{border-right:0}
.terms-main{max-width:1408px;margin:0 auto;padding:106px var(--gutter) 120px}
.terms-group{display:grid;grid-template-columns:.42fr 1.58fr;gap:8%;padding-bottom:110px;scroll-margin-top:30px}
.group-heading{align-self:start}
.group-heading h2{margin-top:16px;font-size:clamp(25px,2.8vw,39px);line-height:1.6;letter-spacing:.1em}
.term-list{border-top:1px solid var(--ink)}
.term-item{border-bottom:1px solid var(--line)}
.term-item summary{min-height:82px;padding:20px 0;display:grid;grid-template-columns:70px 1fr 24px;gap:20px;align-items:center;list-style:none;cursor:pointer}
.term-item summary::-webkit-details-marker{display:none}
.term-number{font-family:var(--sans);font-size:10px;letter-spacing:.1em;color:var(--muted)}
.term-item summary h3{font-size:17px;line-height:1.65;letter-spacing:.08em}
.term-toggle{position:relative;width:20px;height:20px}
.term-toggle::before,.term-toggle::after{content:"";position:absolute;left:2px;top:9px;width:16px;height:1px;background:var(--ink);transition:transform .25s ease}
.term-toggle::after{transform:rotate(90deg)}
.term-item[open] .term-toggle::after{transform:rotate(0)}
.term-body{padding:3px 44px 38px 90px;font-family:var(--sans);font-size:13px;line-height:2.05;color:var(--muted);letter-spacing:.03em}
.term-body p+p,.term-body ol+p,.term-body ul+p{margin-top:18px}
.term-body ol,.term-body ul{padding-left:1.7em}
.term-body li+li{margin-top:8px}
.term-body ol ol{margin-top:8px;list-style-type:lower-alpha}
.appendix{border-top:1px solid var(--ink)}
.appendix-block{display:grid;grid-template-columns:190px 1fr;gap:35px;padding:31px 0;border-bottom:1px solid var(--line)}
.appendix-block h3{font-size:16px;line-height:1.8}
.appendix-block div{font-family:var(--sans);font-size:13px;line-height:2;color:var(--muted)}
.appendix-block ul{padding-left:1.5em}
.source-note{padding:32px 0;border-bottom:1px solid var(--line);font-family:var(--sans);font-size:11px;line-height:2;color:var(--muted)}
.source-note a{text-decoration:underline}
.terms-footer{max-width:1408px;margin:0 auto;padding:76px var(--gutter) 30px;display:grid;grid-template-columns:250px 1fr auto;gap:55px;align-items:end;background:var(--paper-deep);font-family:var(--sans);font-size:11px;line-height:1.9;color:var(--muted)}
.terms-footer>a:first-child img{width:100%}
.terms-footer nav{display:flex;gap:24px;flex-wrap:wrap}
.terms-footer nav a{text-decoration:underline}
.terms-footer small{font-size:10px}
@media(max-width:900px){.terms-intro{grid-template-columns:230px 1fr;gap:7%}.terms-nav{grid-template-columns:repeat(3,1fr)}.terms-nav a:nth-child(3){border-right:0}.terms-nav a:nth-child(-n+3){border-bottom:1px solid var(--line)}.terms-group{grid-template-columns:.5fr 1.5fr;gap:6%}.terms-footer{grid-template-columns:200px 1fr}.terms-footer nav{grid-column:2}}
@media(max-width:700px){:root{--gutter:24px}.terms-header{height:72px;padding:14px 18px}.terms-brand{width:118px}.header-actions{gap:14px;font-size:10px}.header-actions a:first-child{display:none}.header-call{min-height:40px;padding:0 14px}.terms-hero{padding:74px var(--gutter) 62px}.terms-hero h1{font-size:36px}.terms-intro{display:block;padding:57px var(--gutter) 62px}.terms-intro h2{font-size:25px}.terms-intro div{margin-top:30px}.terms-nav{grid-template-columns:repeat(2,1fr)}.terms-nav a{min-height:58px;padding:12px 13px}.terms-nav a:nth-child(n){border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.terms-nav a:nth-child(2n){border-right:0}.terms-main{padding:76px var(--gutter) 80px}.terms-group{display:block;padding-bottom:83px}.group-heading{margin-bottom:37px}.group-heading h2{font-size:26px}.term-item summary{min-height:73px;grid-template-columns:47px 1fr 20px;gap:13px}.term-item summary h3{font-size:15px}.term-body{padding:0 0 31px 60px;font-size:12px}.appendix-block{display:block;padding:26px 0}.appendix-block div{margin-top:15px;font-size:12px}.terms-footer{display:block;padding:55px var(--gutter) 27px}.terms-footer>a:first-child{display:block;width:190px;margin-bottom:30px}.terms-footer nav{margin-top:25px;gap:18px}}
@media(max-width:359px){.term-body{padding-left:0}.terms-nav a{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
@media print{.skip-link,.terms-header,.terms-nav{display:none!important}.terms-hero{padding-top:20px}.terms-main{padding-top:30px}.terms-group{display:block;padding-bottom:40px}.group-heading{position:static;margin-bottom:20px}.term-body{display:block!important}.terms-footer{background:white}}
