:root{--bg:#0a0a09;--bg-raised:#111110;--ink:#f4f2ea;--dim:#8f8d84;--line:#f4f2ea24;--accent:#dcff3d;--serif:"Shippori Mincho B1", "Hiragino Mincho ProN", serif;--sans:"Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", sans-serif;--mono:"SFMono-Regular", Consolas, "Courier New", monospace;--pad:clamp(20px, 5vw, 72px)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;font-weight:500;line-height:1.9;overflow-x:hidden}::selection{background:var(--accent);color:#0a0a09}a{color:inherit;text-decoration:none}ul,ol{list-style:none}em{font-style:normal}.site{position:relative}.grain{pointer-events:none;opacity:.05;z-index:50;width:200%;height:200%;animation:.9s steps(4,end) infinite grain-shift;position:fixed;inset:-50%}@keyframes grain-shift{0%{transform:translate(0)}25%{transform:translate(-2%,1%)}50%{transform:translate(1%,-2%)}75%{transform:translate(-1%,2%)}to{transform:translate(2%,-1%)}}.header{z-index:40;padding:14px var(--pad);border-bottom:1px solid #0000;justify-content:space-between;align-items:center;transition:background .4s,border-color .4s;display:flex;position:fixed;top:0;left:0;right:0}.header--solid{-webkit-backdrop-filter:blur(12px);border-bottom-color:var(--line);background:#0a0a09d1}.header__logo{font-family:var(--mono);letter-spacing:.14em;font-size:15px;font-weight:700}.header__logo-accent{color:var(--accent);margin-left:.35em}.header__cta{letter-spacing:.1em;border:1px solid var(--ink);border-radius:999px;padding:9px 18px;font-size:12px;font-weight:700;transition:background .25s,color .25s,border-color .25s}.header__cta:hover{background:var(--accent);border-color:var(--accent);color:#0a0a09}.hero{min-height:100svh;padding:120px var(--pad) 96px;flex-direction:column;justify-content:center;display:flex;position:relative;overflow:hidden}.hero__kicker{font-family:var(--mono);letter-spacing:.22em;color:var(--dim);align-items:center;gap:10px;margin-bottom:clamp(20px,4vh,40px);font-size:clamp(11px,1.4vw,13px);animation:.8s .1s both fade-up;display:flex}.hero__kicker-dot{background:var(--accent);border-radius:50%;flex:none;width:8px;height:8px;animation:1.6s infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:.25}}.hero__title{font-family:var(--serif);letter-spacing:.01em;font-size:clamp(44px,10.5vw,128px);font-weight:800;line-height:1.24}.hero__title-line{display:block;overflow:hidden}.hero__title-inner{animation:1s cubic-bezier(.16,1,.3,1) .25s forwards line-up;display:block;transform:translateY(110%)}.hero__title-inner--delay{animation-delay:.42s}@keyframes line-up{to{transform:translateY(0)}}.hero__em{color:var(--accent);position:relative}.hero__badges{flex-wrap:wrap;gap:10px;margin-top:clamp(28px,5vh,48px);display:flex}.hero__badge{letter-spacing:.06em;border:1px solid var(--line);background:var(--bg-raised);opacity:0;border-radius:999px;padding:10px 20px;font-size:clamp(12px,1.6vw,15px);font-weight:700;animation:.7s forwards fade-up}.hero__lead{max-width:40em;color:var(--dim);margin-top:clamp(24px,4vh,40px);font-size:clamp(13px,1.7vw,16px);animation:.8s 1.1s both fade-up}.hero__scroll{right:var(--pad);font-family:var(--mono);letter-spacing:.3em;color:var(--dim);writing-mode:vertical-rl;flex-direction:column;align-items:center;gap:12px;font-size:10px;display:flex;position:absolute;bottom:32px}.hero__scroll-bar{background:var(--line);width:1px;height:64px;position:relative;overflow:hidden}.hero__scroll-bar:after{content:"";background:var(--accent);width:100%;height:100%;animation:1.8s ease-in-out infinite scroll-drip;position:absolute;top:-100%;left:0}@keyframes scroll-drip{to{top:100%}}.hero__ghost{font-family:var(--mono);letter-spacing:-.04em;color:#0000;-webkit-text-stroke:1px #f4f2ea12;pointer-events:none;-webkit-user-select:none;user-select:none;white-space:nowrap;font-size:clamp(160px,32vw,480px);font-weight:700;line-height:1;position:absolute;bottom:-.22em;right:-.08em}@keyframes fade-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg);padding:14px 0;overflow:hidden}.marquee__track{width:max-content;animation:28s linear infinite marquee;display:flex}.marquee--reverse .marquee__track{animation-direction:reverse}.marquee__track span{font-family:var(--mono);letter-spacing:.28em;color:var(--accent);white-space:nowrap;padding-right:.28em;font-size:clamp(14px,2vw,20px);font-weight:700}@keyframes marquee{to{transform:translate(-50%)}}.section{padding:clamp(96px, 16vh, 180px) var(--pad);border-bottom:1px solid var(--line);position:relative}.section-tag{font-family:var(--mono);letter-spacing:.24em;align-items:center;gap:16px;margin-bottom:clamp(32px,6vh,64px);display:flex}.section-tag__num{color:var(--accent);font-size:clamp(13px,1.6vw,16px);font-weight:700}.section-tag__line{background:var(--line);width:clamp(32px,6vw,80px);height:1px}.section-tag__en{color:var(--dim);font-size:clamp(11px,1.4vw,13px)}.section__title{font-family:var(--serif);margin-bottom:clamp(40px,8vh,88px);font-size:clamp(34px,7vw,84px);font-weight:800;line-height:1.32}.statement{font-family:var(--serif);font-size:clamp(19px,2.8vw,30px);font-weight:700;line-height:2}.statement--accent strong,.statement--accent{color:var(--ink)}.statement--big{font-size:clamp(24px,4vw,44px);line-height:1.8}.accent-text{color:var(--accent)}.em-underline{background-image:linear-gradient(transparent 78%, var(--accent) 78%);padding-bottom:.08em}.body{max-width:38em;font-size:clamp(14px,1.7vw,16px)}.body--dim{color:var(--dim);font-size:clamp(12px,1.5vw,14px)}.note{color:var(--dim);margin-top:clamp(32px,6vh,56px);font-size:clamp(12px,1.5vw,14px)}.reveal{opacity:0;transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);transform:translateY(28px)}.reveal.is-in{opacity:1;transform:translateY(0)}.btn{letter-spacing:.08em;border-radius:999px;align-items:center;gap:14px;font-weight:900;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s;display:inline-flex}.btn--accent{background:var(--accent);color:#0a0a09;margin-top:28px;padding:18px 34px;font-size:clamp(14px,1.8vw,17px)}.btn--accent:hover{transform:translateY(-3px);box-shadow:0 12px 40px #dcff3d47}.btn--big{margin-top:clamp(32px,6vh,56px);padding:24px 48px;font-size:clamp(16px,2.4vw,22px)}.btn__arrow{transition:transform .25s}.btn:hover .btn__arrow{transform:translate(6px)}.invite__grid{grid-template-columns:1fr 1fr;align-items:start;gap:clamp(32px,6vw,96px);display:grid}.invite__main .body{margin-top:24px}.invite__sub{border-left:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:20px;padding-left:clamp(24px,3vw,48px);display:flex}.reasons{border-top:1px solid var(--line);margin-bottom:clamp(48px,10vh,96px)}.reasons__item{border-bottom:1px solid var(--line)}.reasons__item .reveal{align-items:baseline;gap:clamp(20px,4vw,56px);padding:clamp(18px,3vh,30px) 0;transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1),padding-left .35s cubic-bezier(.16,1,.3,1);display:flex}.reasons__item:hover .reveal{padding-left:clamp(12px,2vw,28px)}.reasons__num{font-family:var(--mono);color:var(--dim);font-size:clamp(12px,1.5vw,15px);transition:color .3s}.reasons__item:hover .reasons__num{color:var(--accent)}.reasons__text{font-family:var(--serif);font-size:clamp(24px,4.6vw,56px);font-weight:700;line-height:1.4;transition:color .3s}.reasons__item:hover .reasons__text{color:var(--accent)}.life__closing{flex-direction:column;gap:clamp(20px,4vh,36px);display:flex}.conditions{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.conditions__cell{border-right:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;justify-content:space-between;min-height:clamp(140px,22vw,240px);padding:clamp(24px,4vw,48px) clamp(18px,2.5vw,36px);transition:background .35s;display:flex;position:relative}.conditions__cell:hover{background:var(--accent)}.conditions__cell:hover .conditions__num,.conditions__cell:hover .conditions__label{color:#0a0a09}.conditions__num{font-family:var(--mono);letter-spacing:.2em;color:var(--dim);font-size:clamp(11px,1.4vw,14px);transition:color .35s}.conditions__label{font-family:var(--serif);font-size:clamp(17px,2.4vw,28px);font-weight:800;line-height:1.5;transition:color .35s}.questions{border-top:1px solid var(--line);grid-template-columns:repeat(2,1fr);gap:0 clamp(24px,5vw,80px);margin:clamp(24px,4vh,40px) 0 clamp(40px,8vh,80px);display:grid}.questions__item{border-bottom:1px solid var(--line)}.questions__item .reveal{align-items:center;gap:clamp(14px,2vw,24px);padding:clamp(16px,2.6vh,26px) 0;display:flex}.questions__q{font-family:var(--mono);color:var(--accent);border:1px solid var(--accent);border-radius:50%;flex:none;justify-content:center;align-items:center;width:clamp(30px,3.4vw,40px);height:clamp(30px,3.4vw,40px);font-size:clamp(14px,1.8vw,18px);font-weight:700;display:inline-flex}.questions__text{font-family:var(--serif);font-size:clamp(18px,2.6vw,30px);font-weight:700}.steps{counter-reset:step;border-top:1px solid var(--line)}.steps__item{border-bottom:1px solid var(--line)}.steps__item .reveal{align-items:baseline;gap:clamp(20px,4vw,64px);padding:clamp(24px,4vh,44px) 0;display:flex}.steps__num{font-family:var(--mono);color:#0000;-webkit-text-stroke:1px var(--accent);flex:none;min-width:2.2em;font-size:clamp(28px,5vw,64px);font-weight:700;line-height:1}.steps__title{font-family:var(--serif);font-size:clamp(20px,3vw,34px);font-weight:800;line-height:1.5}.steps__desc{color:var(--dim);max-width:36em;font-size:clamp(13px,1.6vw,15px)}.flow__free{text-align:center;font-family:var(--serif);margin-top:clamp(40px,8vh,72px);font-size:clamp(20px,3.4vw,38px);font-weight:800}.flow__zero{color:var(--accent);font-family:var(--mono);vertical-align:-.12em;padding:0 .08em;font-size:1.9em;line-height:1}.section--closing{text-align:center;padding-top:clamp(120px,20vh,220px);padding-bottom:clamp(120px,20vh,220px)}.closing__no{font-family:var(--serif);color:var(--dim);flex-wrap:wrap;justify-content:center;gap:clamp(12px,3vw,40px);margin-bottom:clamp(32px,6vh,56px);font-size:clamp(18px,3vw,32px);font-weight:700;display:flex}.closing__no s{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-decoration-thickness:2px}.closing__thesis{font-family:var(--serif);margin-top:clamp(40px,8vh,72px);font-size:clamp(20px,3.2vw,36px);font-weight:700;line-height:2}.closing__final{font-family:var(--serif);margin-top:clamp(64px,12vh,120px);font-size:clamp(38px,8vw,104px);font-weight:800;line-height:1.4}.section--apply .body{margin-bottom:clamp(32px,6vh,56px)}.apply__form{max-width:880px}.apply__grid{grid-template-columns:1fr 1fr;gap:clamp(20px,3vh,32px) clamp(20px,3vw,40px);display:grid}.field{border:0;flex-direction:column;gap:10px;min-width:0;margin:0;padding:0;display:flex}.field--wide{grid-column:1/-1}.field__label{letter-spacing:.08em;align-items:center;gap:10px;font-size:clamp(12px,1.5vw,14px);font-weight:700;display:flex}.field__req{letter-spacing:.12em;color:#0a0a09;background:var(--accent);border-radius:999px;padding:2px 8px;font-size:10px;font-weight:900}.field__input{background:var(--bg-raised);border:1px solid var(--line);width:100%;color:var(--ink);font-family:var(--sans);border-radius:0;padding:14px 16px;font-size:16px;transition:border-color .25s,box-shadow .25s}.field__input:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);outline:none}.field__input--area{resize:vertical;min-height:120px}.apply__fieldset{border:0}.apply__chips{flex-wrap:wrap;gap:10px;display:flex}.chip{cursor:pointer}.chip input{opacity:0;pointer-events:none;position:absolute}.chip span{letter-spacing:.04em;border:1px solid var(--line);background:var(--bg-raised);-webkit-user-select:none;user-select:none;border-radius:999px;padding:10px 20px;font-size:clamp(13px,1.6vw,15px);font-weight:700;transition:background .2s,color .2s,border-color .2s;display:inline-block}.chip:hover span{border-color:var(--ink)}.chip input:checked+span{background:var(--accent);border-color:var(--accent);color:#0a0a09}.chip input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.apply__submit{cursor:pointer;width:100%;font-family:var(--sans);border:0;justify-content:center}.apply__note{text-align:center;max-width:none;margin-top:16px}.apply__done{border:1px solid var(--line);background:var(--bg-raised);text-align:center;flex-direction:column;align-items:center;gap:16px;padding:clamp(40px,8vh,80px) clamp(24px,4vw,56px);display:flex}.apply__done-mark{background:var(--accent);color:#0a0a09;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;font-size:32px;font-weight:900;display:flex}.footer{padding:clamp(64px, 12vh, 120px) var(--pad) clamp(28px, 5vh, 48px);position:relative;overflow:hidden}.footer__wordmark{font-family:var(--mono);letter-spacing:-.03em;white-space:nowrap;color:#0000;-webkit-text-stroke:1px #f4f2ea29;-webkit-user-select:none;user-select:none;margin-bottom:clamp(40px,8vh,80px);font-size:clamp(48px,11.5vw,180px);font-weight:700;line-height:1}.footer__meta{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;padding-top:24px;display:flex}.footer__brand{font-family:var(--mono);letter-spacing:.14em;color:var(--accent);font-size:13px;font-weight:700}.footer__company{color:var(--dim);letter-spacing:.08em;font-size:12px}.footer__sep{opacity:.5;padding:0 .3em}.sp-only{display:none}@media (width<=900px){.invite__grid{grid-template-columns:1fr}.invite__sub{border-left:none;border-top:1px solid var(--line);padding-top:32px;padding-left:0}.conditions{grid-template-columns:repeat(2,1fr)}.apply__grid{grid-template-columns:1fr}}@media (width<=640px){.questions{grid-template-columns:1fr}.sp-only{display:inline}.header__cta{padding:8px 14px;font-size:11px}.hero__scroll{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.grain,.marquee__track,.hero__scroll-bar:after,.hero__kicker-dot{animation:none}.hero__title-inner,.hero__badge,.hero__kicker,.hero__lead{opacity:1;animation:none;transform:none}.reveal{opacity:1;transition:none;transform:none}}
