:root{--paper:#f9f8f3;--tint:#f0efe7;--ink:#1c3028;--muted:#53645a;--line:#d3d6ca;--accent:#9c4829;--deep:#1b382e;--serif:Georgia,"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;--sans:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif}*{box-sizing:border-box}html{scroll-padding-top:6rem}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,summary,select{cursor:pointer}button,a,summary{touch-action:manipulation}h1,h2,h3,h4,p,figure,ol{margin:0}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:4px;outline:3px solid #b96338}.wrap{width:min(1232px,100% - clamp(40px,9vw,160px));margin-inline:auto}.skip{z-index:30;background:var(--paper);padding:.6rem 1rem;position:fixed;top:-6rem;left:1rem}.skip:focus{top:.5rem}.mast{z-index:5;background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0}.mast-inner{align-items:center;gap:clamp(18px,3vw,46px);min-height:74px;display:flex}.brand,.brand-link,.site-nav,.language,.mast-ask,.primary,.more,.text-link,.foot a,.direct a{align-items:center;display:inline-flex}.brand{font:600 23px/1 var(--sans);letter-spacing:-1.45px;white-space:nowrap;gap:9px}.brand svg{color:var(--accent)}.brand-link{margin-right:auto}.site-nav{gap:clamp(16px,2.5vw,36px);font-size:.88rem}.site-nav a,.foot a,.language a,.language span{padding-block:10px}.site-nav a:hover,.text-link:hover,.more:hover,.foot a:hover,.direct a:hover{text-underline-offset:5px;text-decoration:underline}.language{white-space:nowrap;gap:7px;font-size:.8rem;line-height:1.2}.language :first-child{border-right:1px solid var(--line);padding-right:8px}.language span{font-weight:720}.language a{color:var(--muted);text-underline-offset:3px;text-decoration:underline}.ask-short{display:none}.mast-ask,.primary{background:var(--deep);color:#fff;border:1px solid var(--deep);border-radius:3px;justify-content:center;gap:12px;min-height:44px;padding:9px 17px;font-size:.9rem;font-weight:600}.primary{min-height:48px;padding:12px 21px}.mast-ask:hover,.primary:hover{background:#305446}.lang-guard{white-space:normal;border:1px solid var(--line);width:min(26rem,90vw);color:var(--ink);background:var(--paper);border-radius:5px;padding:24px}.lang-guard::backdrop{background:#112a20aa}.lang-guard h2{font-size:1.5rem}.lang-guard p{margin:12px 0 20px;font-size:1rem;line-height:1.7}.lang-guard div{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.hero{grid-template-columns:1.03fr 1fr;align-items:center;gap:clamp(36px,6vw,100px);padding-block:clamp(58px,7.4vw,114px);display:grid}.hero-type{min-width:0}.discipline,.section-label{color:var(--accent);letter-spacing:.035em;font-size:.86rem;font-weight:650}.discipline{align-items:center;gap:12px;display:flex}.discipline i{background:var(--accent);width:28px;height:2px}h1,h2{font-family:var(--serif);text-wrap:balance;font-weight:500}h1{letter-spacing:-.055em;margin-block:24px 23px;font-size:clamp(44px,5vw,80px);line-height:1.22}h1 span{display:block}html[lang=en] h1{font-size:clamp(50px,5.4vw,85px);line-height:1.06}.lead,.section-intro>p:last-child,.service-row p,.step-list p,.questions details p,.contact-intro>p{color:var(--muted);line-height:1.9}.lead{max-width:36em;font-size:1rem}.hero-actions{flex-wrap:wrap;align-items:center;gap:22px;margin-top:29px;display:flex}.more,.text-link{gap:8px;font-size:.89rem;font-weight:630}.more{min-height:44px}.study{background:var(--deep);color:#f0f3e9;border-radius:5px;min-width:0;padding:clamp(18px,2.2vw,33px);position:relative;box-shadow:inset 0 0 0 1px #263f34}.study:before{content:"";background:#a9baa1;border-radius:5px 0 0 5px;width:4px;position:absolute;top:0;bottom:0;left:0}.study figcaption{border-bottom:1px solid #466053;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;padding-bottom:12px;display:flex}.study-title{font-family:var(--serif);letter-spacing:-.025em;font-size:clamp(19px,1.8vw,27px)}.study-note{color:#c3cebf;font-size:.73rem}.study-controls{flex-wrap:wrap;gap:5px;margin-block:17px 10px;display:flex}.study-controls button{color:#d1dace;background:0 0;border:1px solid #657a6d;border-radius:2px;min-height:36px;padding:5px 11px;font-size:.78rem}.study-controls button[aria-pressed=true]{color:#213e30;background:#e6eee1;border-color:#e6eee1;font-weight:650}.plot{width:100%;height:auto;max-height:225px;display:block}.rule-note{color:#f0f1e7;border-top:1px solid #496253;align-items:baseline;gap:10px;margin-top:9px;padding-top:14px;font-size:.86rem;display:flex}.rule-dot{background:#e8b27a;border-radius:50%;flex:none;width:7px;height:7px;display:inline-block}.scope-index{background:var(--deep);color:#fbfaf0;border-radius:4px;padding:clamp(20px,3vw,42px)}.scope-index h2{font:500 clamp(19px,1.65vw,25px)/1.45 var(--serif);color:#e7eddf;margin-bottom:14px}.scope-index a{border-top:1px solid #5e7367;justify-content:space-between;align-items:center;gap:16px;min-height:48px;padding:17px 0;font-size:clamp(.95rem,1.15vw,1.1rem);line-height:1.55;display:flex}.scope-index a:last-child{padding-bottom:0}.scope-index a svg{color:#f1c390;flex:none}.scope-index a:hover span{text-underline-offset:4px;text-decoration:underline}.paper-band{background:var(--tint);border-block:1px solid var(--line)}.service-grid{grid-template-columns:minmax(220px,.85fr) minmax(0,1.55fr);gap:clamp(36px,8vw,130px);padding-block:clamp(48px,6.4vw,94px);display:grid}h2{letter-spacing:-.045em;font-size:clamp(31px,3vw,48px);line-height:1.3}.section-label{margin-bottom:.85rem}.section-intro>p:last-child,.contact-intro>p{max-width:30em;margin-top:20px}.service-list{border-top:1px solid #909d90}.service-row{border-bottom:1px solid var(--line);padding:23px 0}h3{letter-spacing:-.02em;font-size:clamp(18px,1.6vw,23px);line-height:1.45}.service-row p,.step-list p,.questions details p{margin-top:.45rem;font-size:.94rem}.service-row .output{background:var(--paper);color:var(--ink);border-left:2px solid #9cae9b;margin-top:.8rem;padding:10px 13px;font-size:.96rem}.output b{color:var(--ink);margin-right:10px;font-size:.8rem;display:block}.text-link{color:var(--accent);min-height:32px;margin-top:.65rem}.process{padding-block:clamp(49px,6vw,90px)}.step-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,4vw,68px);margin-top:32px;padding:0;list-style:none;display:grid}.step-num{font:italic 24px/1 var(--serif);color:var(--accent);align-items:center;gap:13px;margin-bottom:18px;display:flex}.step-num span{background:var(--line);flex:1;height:1px}.questions{border-top:1px solid var(--line);grid-template-columns:1fr 1.8fr;align-items:start;gap:30px;padding-block:clamp(40px,5vw,76px);display:grid}.questions h2{font-size:clamp(28px,2.6vw,40px)}.questions details{border-bottom:1px solid var(--line)}.questions details:first-child{border-top:1px solid var(--line)}.questions summary{justify-content:space-between;align-items:center;gap:14px;padding:17px 2px;font-size:.98rem;font-weight:580;list-style:none;display:flex}.questions summary::-webkit-details-marker{display:none}.expand{flex:none;width:14px;height:14px;position:relative}.expand:before,.expand:after{content:"";background:var(--accent);height:1.5px;position:absolute;inset:6px 0 auto}.expand:after{transform:rotate(90deg)}details[open] .expand:after{transform:rotate(0)}.questions details p{margin:0 24px 18px 2px}.foot{justify-content:space-between;align-items:center;gap:16px;padding-block:27px;display:flex}.foot a{gap:8px;font-size:.84rem}.scope-grid{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,.94fr) minmax(0,1.34fr);align-items:start;row-gap:26px}.scope-grid .service-list{grid-area:1/2/span 2}.scope-grid .study{grid-area:2/1;align-self:start}.contact-band{background:#e5ebe2;border-top:1px solid #cbd5c7}.contact-intro h2{color:var(--ink)}.direct{border-top:1px solid #bbc8bc;margin-top:26px;padding-top:19px}.direct span{color:var(--muted);font-size:.83rem;display:block}.direct a{font:clamp(19px,1.9vw,27px)/1.6 var(--serif);letter-spacing:-.03em;gap:10px}.inquiry{background:#fcfbf7;border:1px solid #c8d0c3;border-radius:4px;min-width:0;padding:clamp(19px,3vw,39px);position:relative}.inquiry h3,.draft h4{font:500 25px/1.4 var(--serif);letter-spacing:-.025em}.form-help,.input-hint,.draft p{color:var(--muted);font-size:.85rem;line-height:1.65}.form-help{margin:6px 0 19px}.inquiry label{margin:15px 0 5px;font-size:.86rem;font-weight:650;display:block}.inquiry label small{color:var(--muted);margin-left:4px;font-size:.71rem;font-weight:450}.inquiry input,.inquiry select,.inquiry textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #aab5a9;border-radius:3px;min-height:44px;padding:10px 11px;font-size:1rem}.inquiry textarea{resize:vertical;display:block}.inquiry ::placeholder{color:#627167;opacity:1}.input-pair{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px;display:grid}.input-pair>div{min-width:0}.input-hint{margin-block:6px 17px;display:block}.inquiry [aria-invalid=true]{border-color:#a53f28}.inquiry .error{color:#9c301f;margin-top:5px;font-size:.85rem}.draft{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.draft pre{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--tint);padding:14px;font-size:.91rem}.draft p{margin-top:10px}.inquiry fieldset{border:0;min-width:0;margin:0;padding:0}.inquiry-trap{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.inquiry-receipt{border-left:3px solid var(--ink);background:var(--tint);margin-bottom:1rem;padding:1rem}.inquiry button:disabled{opacity:.65}.draft .primary{margin-top:1rem}@media (max-width:580px){.input-pair{grid-template-columns:1fr;gap:0}}.brief-target{pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0}@media (max-width:800px){.mast-inner{flex-wrap:wrap;gap:0 14px;padding-top:12px}.site-nav{order:4;justify-content:flex-start;gap:24px;width:100%;font-size:.81rem}.mast-ask{min-height:36px;padding:5px 10px;font-size:.8rem}.hero{grid-template-columns:1fr;gap:32px;padding-block:42px}.study{width:100%;max-width:620px}.hero-type{max-width:650px}.service-grid,.questions{grid-template-columns:1fr;gap:27px}.step-list{gap:22px}}@media (max-width:580px){.wrap{width:calc(100% - 38px)}.mast-inner{gap:0 11px}.brand{letter-spacing:-1px;gap:5px;font-size:18px}.brand svg{width:20px}.language{gap:4px;font-size:.72rem}.language :first-child{padding-right:4px}.mast-ask{gap:3px;padding-inline:7px;font-size:.74rem}.site-nav{gap:22px}.mast-ask svg{width:13px}h1{margin-block:18px;font-size:clamp(40px,9vw,51px)}html[lang=en] h1{font-size:clamp(44px,10vw,59px)}.lead{font-size:.95rem}.hero-actions{gap:14px;margin-top:19px}.primary{padding:9px 15px}.hero-actions .more{font-size:.82rem}.step-list{grid-template-columns:1fr;gap:22px}.step-num{margin-bottom:9px}.questions{gap:20px}}@media (min-width:801px) and (max-width:1050px){.hero{gap:32px}h1{font-size:clamp(41px,4.8vw,52px)}.mast-inner{gap:18px}}@media (max-width:580px){.mast-inner{grid-template-columns:minmax(0,1fr) auto;gap:1px 12px;padding-block:8px 5px;display:grid}.language{justify-self:end}.site-nav{order:initial;grid-area:2/1;gap:14px}.mast-ask{grid-area:2/2;min-height:32px;font-size:.78rem}.ask-long{display:none}.ask-short{display:inline}}@media (max-width:800px){.scope-grid{grid-template-rows:auto;grid-template-columns:1fr;row-gap:22px}.scope-grid .service-list,.scope-grid .study{grid-area:auto}.scope-index{width:100%;max-width:650px}}@media (max-width:580px){.hero{gap:20px;padding-block:25px}.scope-index a{padding-block:12px}.scope-index a:last-child{padding-bottom:0}.scope-index h2{margin-bottom:9px}}
