:root{--paper: #f7f6f1;--surface: #ffffff;--ink: #1c2925;--muted: #5d6864;--line: #cbd2cc;--green: #2f6755;--orange: #bd572e;--page: 1120px;font-family:Yu Gothic UI,Yu Gothic,Hiragino Kaku Gothic ProN,Noto Sans JP,system-ui,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0;background:var(--paper);color:var(--ink);line-height:1.75}a{color:inherit;text-underline-offset:.25em}:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.skip-link{position:fixed;z-index:20;top:12px;left:12px;transform:translateY(-150%);padding:9px 13px;background:var(--ink);color:#fff}.skip-link:focus{transform:translateY(0)}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:72px;padding:0 max(24px,calc((100vw - var(--page)) / 2));border-bottom:1px solid var(--ink);background:#f7f6f1f5}.site-brand{display:inline-flex;align-items:center;gap:10px;font-size:1.25rem;text-decoration:none}.site-brand>span{display:grid;width:30px;height:30px;place-items:center;border:1px solid var(--ink);border-radius:50%;color:var(--green);font-weight:900}.site-header nav{display:flex;gap:30px;font-weight:700}main{min-height:70vh}.hero,.content-section,.contact-band,.document-page{width:min(calc(100% - 40px),var(--page));margin-inline:auto}.hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:clamp(40px,8vw,110px);align-items:end;padding:clamp(68px,9vw,124px) 0}.eyebrow{margin:0 0 14px;color:var(--green);font-size:.78rem;font-weight:900;letter-spacing:.16em}.hero h1{margin:0;font-size:clamp(3.2rem,8vw,7.2rem);line-height:1.05;letter-spacing:-.07em}.hero-copy>p:last-child{max-width:660px;margin:28px 0 0;color:#35433e;font-size:clamp(1.05rem,1.8vw,1.35rem)}.check-list{margin:0;border-top:1px solid var(--ink)}.check-list div{display:grid;grid-template-columns:70px 1fr;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}.check-list dt{color:var(--orange);font-weight:900}.check-list dd{margin:0}.content-section{padding:72px 0;border-top:1px solid var(--ink)}.section-heading h2,.contact-band h2,.document-page h1{margin:0;font-size:clamp(2rem,4vw,3.6rem);letter-spacing:-.045em}.site-list{display:grid;grid-template-columns:repeat(3,1fr);margin-top:36px;border:1px solid var(--ink);background:var(--ink);gap:1px}.site-list article{min-height:260px;padding:30px;background:var(--surface)}.site-list h3{margin:0;font-size:1.35rem}.site-list p{margin:18px 0 0;color:var(--muted)}.policy-grid{display:grid;grid-template-columns:minmax(250px,.75fr) minmax(0,1.25fr);gap:clamp(40px,8vw,120px)}.policy-copy p{margin:0;font-size:1.08rem}.policy-copy p+p{margin-top:22px}.contact-band{display:flex;align-items:end;justify-content:space-between;gap:40px;padding:72px 0;border-top:1px solid var(--ink)}.contact-band>a,.contact-link{display:inline-block;padding:14px 18px;border:1px solid var(--ink);background:var(--surface);color:var(--green);font-weight:800}.document-page{max-width:760px;padding:82px 0 110px}.document-page .lead{margin:20px 0 48px;font-size:1.15rem}.document-page section{padding:30px 0;border-top:1px solid var(--line)}.document-page section h2{margin:0 0 12px;font-size:1.45rem}.document-page section p{margin:0}.contact-link{margin-top:24px}.site-footer{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;padding:42px max(24px,calc((100vw - var(--page)) / 2));border-top:1px solid var(--ink);background:var(--surface)}.site-footer p{max-width:560px;margin:6px 0 0;color:var(--muted)}.site-footer nav{display:flex;justify-content:flex-end;gap:24px}.site-footer small{grid-column:1 / -1;color:var(--muted)}@media(max-width:760px){.site-header{min-height:64px;padding-inline:18px}.site-header nav{flex:none;gap:0;font-size:.86rem}.site-header nav a:nth-child(-n+2){display:none}.hero{grid-template-columns:1fr;padding-block:56px}.hero h1{font-size:clamp(3rem,17vw,5.2rem)}.site-list{grid-template-columns:1fr}.site-list article{min-height:0}.policy-grid,.site-footer{grid-template-columns:1fr}.contact-band{display:block}.contact-band>a{margin-top:28px}.site-footer nav{justify-content:flex-start}.site-footer small{grid-column:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
