:root{--ink:#111;--paper:#f5f3ee;--white:#fff;--accent:#dff06a;--muted:#696969;--line:rgba(17,17,17,.16);--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Noto Sans JP",system-ui,sans-serif;background:var(--paper);color:var(--ink);line-height:1.85;letter-spacing:.02em}a{color:inherit;text-decoration:none}.site-header{position:fixed;inset:0 0 auto;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:22px 28px;mix-blend-mode:difference;color:white}.brand{font-size:1.25rem;font-weight:900;letter-spacing:.08em}.global-nav{display:flex;gap:28px;font-size:.76rem;font-weight:700;letter-spacing:.12em}.global-nav a{opacity:.82}.menu-button{display:none;background:none;border:0;color:inherit;font:inherit;font-size:.75rem;font-weight:700}.hero{min-height:100svh;position:relative;overflow:hidden;display:grid;place-items:center;background:#101010;color:white}.hero-inner{width:min(var(--max),calc(100% - 48px));position:relative;z-index:2;padding:130px 0 90px}.eyebrow,.section-index{font-size:.72rem;font-weight:700;letter-spacing:.18em}.hero h1{margin:18px 0 24px;font-size:clamp(4rem,11vw,9rem);line-height:.96;letter-spacing:-.055em;font-weight:900}.hero-copy{font-size:clamp(1.25rem,2vw,2rem);font-weight:600;margin:0 0 28px}.hero-lead{max-width:720px;color:rgba(255,255,255,.72)}.text-link{display:inline-flex;gap:12px;margin-top:28px;font-weight:700;border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:6px}.hero-orb{position:absolute;border-radius:999px}.hero-orb-a{width:56vw;height:56vw;background:radial-gradient(circle at 40% 40%,#edf88c 0%,#b6d942 34%,transparent 70%);top:-22vw;right:-10vw}.hero-orb-b{width:34vw;height:34vw;background:radial-gradient(circle,rgba(131,149,255,.72),transparent 70%);bottom:-18vw;left:-8vw}.section-wrap{width:min(var(--max),calc(100% - 48px));margin:0 auto;padding:128px 0}.section-wrap.narrow{max-width:860px}.section-dark{background:#111;color:white}.section-light{background:var(--paper)}.section-accent{background:var(--accent)}.section-heading{margin-bottom:58px}.section-heading h2,.statement h2,.story h2,.support h2,.contact h2,.future h2{font-size:clamp(2.2rem,5vw,4.7rem);line-height:1.18;letter-spacing:-.04em;margin:18px 0 26px}.statement p{color:rgba(255,255,255,.76)}.statement-large{font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.55;margin:48px 0}.statement-large strong{color:white}.vision-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.vision-card{background:var(--paper);padding:44px;min-height:320px}.vision-card span,.support-grid span{font-size:.72rem;font-weight:700;letter-spacing:.15em;color:var(--muted)}.vision-card h3{font-size:1.6rem;line-height:1.45;margin:70px 0 18px}.vision-card p{color:#555;margin:0}.big-number{font-size:clamp(6rem,18vw,15rem);line-height:.8;letter-spacing:-.08em;font-weight:900;margin:36px 0 50px}.future-lines{border-top:1px solid rgba(17,17,17,.28)}.future-lines p{margin:0;padding:20px 0;border-bottom:1px solid rgba(17,17,17,.28);font-size:clamp(1.1rem,2vw,1.65rem);font-weight:600}.future-closing{margin-top:48px;font-size:1.15rem;font-weight:600}.activity-list{border-top:1px solid var(--line)}.activity-item{display:grid;grid-template-columns:110px 1fr;gap:30px;padding:46px 0;border-bottom:1px solid var(--line)}.activity-no{font-size:3.5rem;font-weight:900;line-height:1}.activity-label{font-size:.72rem;font-weight:700;letter-spacing:.16em;margin-top:0}.activity-item h3{font-size:clamp(1.5rem,3vw,2.4rem);line-height:1.35;margin:8px 0 14px}.activity-item p:last-child{max-width:720px;color:#555}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.story-copy{align-self:end}.story-copy p{color:rgba(255,255,255,.7)}.story-copy .lead{color:white;font-size:1.35rem;font-weight:600}.support-lead{font-size:1.25rem;font-weight:600;margin:28px 0 54px}.support-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.support-grid>div{background:var(--paper);padding:30px;min-height:250px}.support-grid h3{margin-top:50px}.support-grid p{color:#555;font-size:.92rem}.contact{text-align:center}.contact .section-index{text-align:left}.contact p{max-width:720px;margin-left:auto;margin-right:auto}.contact-button{display:inline-flex;margin-top:34px;padding:18px 28px;border:2px solid #111;font-weight:800;letter-spacing:.08em}.contact-button:hover{background:#111;color:white}.site-footer{background:#111;color:white;padding:50px 28px 34px}.footer-brand{font-size:clamp(2.5rem,6vw,5rem);font-weight:900;letter-spacing:-.04em}.site-footer p{color:rgba(255,255,255,.65)}.copyright{margin-top:44px;font-size:.72rem}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}.reveal.is-visible{opacity:1;transform:none}@media(max-width:800px){.site-header{padding:18px 20px}.menu-button{display:block}.global-nav{display:none;position:fixed;top:58px;right:16px;flex-direction:column;gap:16px;padding:20px;background:#111;color:white;mix-blend-mode:normal;min-width:180px}.global-nav.is-open{display:flex}.hero-inner,.section-wrap{width:min(100% - 32px,var(--max))}.hero h1{font-size:clamp(3.6rem,18vw,6rem)}.hero-orb-a{width:90vw;height:90vw;top:-30vw;right:-30vw}.hero-orb-b{width:70vw;height:70vw}.section-wrap{padding:92px 0}.vision-grid,.story-grid,.support-grid{grid-template-columns:1fr}.vision-card{min-height:0;padding:30px}.vision-card h3{margin-top:42px}.activity-item{grid-template-columns:58px 1fr;gap:18px}.activity-no{font-size:2.5rem}.story-grid{gap:20px}}