:root{color-scheme:light;--ink:#222722;--muted:#5f675f;--paper:#faf9f5;--line:#d9dcd3;--accent:#47603d}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;line-height:1.9}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--accent)}a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.wrap{width:min(1040px,calc(100% - 80px));margin-inline:auto}.skip{position:absolute;top:-100px;left:20px;padding:8px 16px;background:white;z-index:10}.skip:focus{top:10px}.header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:26px;border-bottom:1px solid var(--line)}.wordmark{font-size:26px;font-weight:750;letter-spacing:-1px;text-decoration:none;white-space:nowrap}.wordmark-dot{color:var(--accent)}nav{display:flex;gap:28px;font-size:13px}nav a{text-decoration:none}.hero{padding:76px 0 68px;max-width:780px}.eyebrow{margin:0;color:var(--muted);font-size:12px;letter-spacing:.08em}.hero h1{margin:24px 0 28px;font-size:clamp(32px,4.7vw,54px);line-height:1.55;letter-spacing:.03em;font-weight:750}.lead{font-size:16px;line-height:2.1;margin:0 0 26px;color:var(--muted)}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:14px;font-weight:650;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:5px}.projects,.about{border-top:1px solid var(--line);padding-block:34px 44px}.section-heading{display:flex;align-items:baseline;gap:22px;margin-bottom:30px}.section-heading h2{font-size:18px;margin:0}.project{display:grid;grid-template-columns:260px 1fr;gap:44px}.project-icon{display:grid;place-items:center;width:44px;height:44px;background:var(--ink);color:var(--paper);font-size:25px;font-weight:700;border-radius:10px}.project h3{font-size:30px;line-height:1.6;letter-spacing:.08em;margin:12px 0 0}.project-name p{font-size:13px;color:var(--muted);margin:3px 0}.project-copy p,.about-copy p{font-size:14px;margin:0 0 16px}.project-copy p:nth-child(2){color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:36px;background:var(--ink);color:var(--paper);font-size:14px;padding:11px 22px;text-decoration:none;margin-top:5px}.button:hover{background:var(--accent);color:white}.terms{display:inline-block;font-size:12px;margin-left:20px;color:var(--muted)}.about-copy{max-width:730px}.contact-note{color:var(--muted);font-size:12px!important;margin-top:10px!important}.privacy{padding-block:24px 32px;border-top:1px solid var(--line);color:var(--muted)}.privacy h2{font-size:13px;font-weight:650;margin:0 0 8px}.privacy p{font-size:12px;margin:0;max-width:890px}.footer{border-top:1px solid var(--line);padding-block:22px 34px;display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}
@media(max-width:640px){.wrap{width:calc(100% - 40px)}.header{padding-block:18px;gap:12px}.wordmark{font-size:23px}nav{gap:14px;font-size:11px}.hero{padding:48px 0}.hero h1{font-size:clamp(27px,7.7vw,38px);margin-top:20px}.lead{font-size:14px}.project{grid-template-columns:1fr;gap:24px}.project-name{display:grid;grid-template-columns:44px 1fr;column-gap:14px;align-items:center}.project-icon{grid-row:1/3}.project h3{margin:0;font-size:26px}.project-name p{margin:0}.section-heading{margin-bottom:22px}.project-copy p br{display:none}.terms{margin-left:14px}.projects,.about{padding-block:28px 34px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
