:root{color-scheme:light;--paper:#f6f5ef;--ink:#203c33;--line:#cbd1c7;--muted:#526358}
    *{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","Noto Sans JP",sans-serif;-webkit-font-smoothing:antialiased}
    a{color:inherit;text-underline-offset:.3em}a:focus-visible{outline:3px solid #9b7333;outline-offset:6px}
    .wrap{max-width:1120px;margin:auto;padding:0 7vw}header{padding:32px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}
    .brand{font-size:25px;font-weight:650;letter-spacing:.16em;text-decoration:none}.tag{font-size:12px;letter-spacing:.08em;color:var(--muted)}main{min-height:70vh;padding:110px 0 96px}.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}h1{font-size:clamp(44px,9vw,98px);letter-spacing:.08em;font-weight:500;margin:22px 0 30px;line-height:1.2}.lead{font-size:clamp(19px,3vw,25px);line-height:1.8;margin:0 0 20px}.body{color:var(--muted);font-size:15px;line-height:2.1;max-width:38em}.notice{margin-top:56px;padding-top:25px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;max-width:650px;font-size:14px}footer{border-top:1px solid var(--line);padding:24px 0 36px;font-size:12px;letter-spacing:.08em;color:var(--muted)}
    @media(max-width:600px){header{padding:24px 0}.tag{font-size:10px}main{padding:75px 0 65px;min-height:72vh}.notice{margin-top:40px}.wrap{padding:0 7vw}}
.page-main{padding:64px 0 72px;min-height:70vh}.page-main h1{font-size:clamp(30px,5vw,48px);letter-spacing:.04em}.contact-intro{max-width:720px}.contact-card{margin:30px 0;padding:28px;border:1px solid var(--line);background:#fff;max-width:720px}.contact-card h2{font-size:19px;margin-top:0}.contact-card p,.privacy p{font-size:15px;line-height:1.9}.contact-button{display:inline-block;padding:15px 24px;background:var(--ink);color:#fff;text-decoration:none;border-radius:4px}.small{font-size:13px!important;color:var(--muted)}.privacy{max-width:720px;margin-top:48px;border-top:1px solid var(--line);padding-top:24px}.privacy h2{font-size:19px}header nav{display:flex;gap:20px;font-size:13px}
