:root{--bg:#0d0221;--panel:#1a0533;--ink:#f5f0e8;--muted:#e0d6c6;--pink:#e91e8c;--lime:#7c3aed;--line:#ffffff25}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--bg);font-family:'Noto Sans JP',sans-serif;font-size:15px;line-height:1.9}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}img{display:block;width:100%;object-fit:cover}button,a,summary,input,textarea,select{outline-offset:6px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--lime)}::selection{background:var(--pink);color:white}h1,h2,h3,p{margin:0}h1,h2{font-weight:900;letter-spacing:-.05em;line-height:1.4}h2{font-size:clamp(30px,3.3vw,52px)}p{margin-top:20px}.pink{color:var(--pink)}header{height:96px;position:absolute;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 4.5vw;gap:30px;z-index:10;border-bottom:1px solid #ffffff26;background:linear-gradient(#0d0221b3,transparent)}.brand{font:900 38px/.9 'Bebas Neue',sans-serif;letter-spacing:-1px;display:inline-block}.brand span{display:block;font:500 8px/2.4 'Noto Sans JP',sans-serif;letter-spacing:1.4px}.brand::after{content:'＋';color:var(--pink);position:absolute;font-size:22px;transform:translate(112px,-50px)}nav{display:flex;gap:30px;align-items:center;font-size:12px;font-weight:700}.navcta{border:1px solid #ffffff60;padding:9px 19px;background:linear-gradient(125deg,#ffffff18,#ffffff05);box-shadow:0 3px 0 #ffffff25}.sound{border:0;background:transparent;font:600 12px 'Bebas Neue',sans-serif;letter-spacing:1px;padding:12px}.sound[aria-pressed=false]{color:#aaa}.hero{height:100svh;min-height:720px;max-height:1150px;position:relative;overflow:hidden}.heroimage{position:absolute;height:100%;object-position:center 45%;animation:herozoom 1.8s cubic-bezier(.2,.7,.2,1) both}.heroshade{position:absolute;inset:0;background:linear-gradient(90deg,#0d0221de 0%,#0d022160 60%,#0d022130),linear-gradient(0deg,#0d0221,transparent 25%,transparent 75%,#0d022166)}.herotop{position:absolute;top:125px;left:5vw;right:5vw;display:flex;justify-content:space-between;font:500 12px 'Bebas Neue';letter-spacing:3px}.herotop span{color:var(--lime)}.herocopy{position:absolute;left:8vw;right:6vw;top:50%;transform:translateY(-40%)}.eyebrow{font:600 13px/1.5 'Bebas Neue',sans-serif;letter-spacing:2.8px;color:var(--pink);margin:0 0 24px}.hero .eyebrow{color:var(--lime)}h1{font-size:clamp(54px,7.1vw,108px);line-height:1.23}.herocopy h1>span{display:block;animation:titlein 1.2s cubic-bezier(.2,.75,.2,1) both}.herocopy h1>span:nth-child(2){animation-delay:.16s}.herotext{font-weight:500;font-size:16px;line-height:2.1;margin:30px 0;animation:titlein 1.2s .3s both}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:18px 28px;border:1px solid #ffffff45;font-size:14px;font-weight:700;position:relative;transition:transform .2s,box-shadow .2s,filter .2s;min-height:58px;background:linear-gradient(140deg,#2a1a3e,#1a0533);box-shadow:0 5px 0 #0d0221,0 14px 30px #0004;border-radius:3px}.btn.primary{background:linear-gradient(115deg,#e91e8c,#e91e8c);border-color:#e91e8c;color:#fff;box-shadow:0 5px 0 #3b0a5c,0 12px 38px #e91e8c36}.btn:hover{transform:translateY(-3px);filter:brightness(1.1);box-shadow:0 8px 0 #3b0a5c,0 16px 42px #e91e8c50}.btn:active,.navcta:active,.checkitem:active{transform:translateY(4px) scale(.98);box-shadow:0 1px 0 #3b0a5c}.herocopy>.btn{animation:titlein 1.2s .45s both}.herobottom{position:absolute;left:5vw;right:5vw;bottom:35px;display:flex;justify-content:space-between;font:600 11px 'Bebas Neue';letter-spacing:2px}.herovertical{position:absolute;right:3vw;top:40%;writing-mode:vertical-rl;font:700 14px 'Bebas Neue';letter-spacing:4px;color:#ffffff8a}.ticker{overflow:hidden;background:var(--lime);color:#1a1a2e;padding:12px 0;transform:rotate(-1.3deg) scale(1.01);position:relative;margin-top:-10px;z-index:2;box-shadow:0 15px 50px #0007}.ticker span{display:block;white-space:nowrap;font:800 clamp(26px,3vw,45px) 'Bebas Neue';word-spacing:20px;letter-spacing:2px;animation:marquee 30s linear infinite}.section{padding:110px 7vw;max-width:1600px;margin:auto}.intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.introvisual{position:relative;transform:rotate(-3deg);padding:12px;background:#f5f0e8;box-shadow:15px 25px 50px #0005}.introvisual img{height:520px}.stamp{position:absolute;bottom:-25px;right:-25px;background:var(--pink);color:var(--ink);padding:22px 25px;transform:rotate(8deg);font:800 26px/1.1 'Bebas Neue';box-shadow:5px 6px 0 #000}.introcopy>p:not(.eyebrow){color:var(--muted);line-height:2.1;max-width:480px}.minifacts{display:flex;gap:30px;margin-top:35px;border-top:1px solid var(--line);padding-top:25px}.minifacts b{font:700 26px 'Bebas Neue';display:block}.minifacts b span{color:var(--pink)}.minifacts small{color:var(--muted);font-size:11px}.sectionhead{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:45px}.sectionhead>p{color:var(--muted);font-size:13px}.play{padding-top:50px}.playgrid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.playcard{height:520px;position:relative;overflow:hidden;background:#1a0533;border:1px solid #ffffff16}.playcard img{height:100%;transition:transform .7s;filter:saturate(.85)}.playcard:hover img{transform:scale(1.045)}.playcaption{position:absolute;inset:0;padding:32px;display:flex;flex-direction:column;align-items:start;justify-content:end;background:linear-gradient(0deg,#0d0221f5 0%,#0d0221a6 35%,transparent 85%)}.num{position:absolute;top:28px;left:32px;border:1px solid #fff9;padding:4px 10px;font:600 18px 'Bebas Neue';color:var(--lime)}.playcaption h3{font:800 clamp(50px,6vw,86px)/1 'Bebas Neue';letter-spacing:-1px}.playcaption strong{font-size:20px;margin-top:12px}.playcaption p{font-size:13px;color:#e0d6c6;max-width:400px;margin:14px 0 20px}.textlink{font-weight:700;font-size:13px;border-bottom:1px solid var(--pink);padding-bottom:6px;display:inline-block}.footnote{color:#a397ab;font-size:11px;margin-top:20px}.quest{display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;position:relative;background:radial-gradient(ellipse at 5% 25%,#3b0a5c66,transparent 55%),linear-gradient(130deg,#1a0533,#1a0533);border-top:1px solid #e91e8c50;border-bottom:1px solid #e91e8c30;max-width:none}.questintro>p:not(.eyebrow){color:var(--muted)}.questintro small{display:block;color:#b4a7b8;font-size:11px;line-height:1.9;margin-top:22px}.score{display:flex;align-items:center;gap:20px;margin-top:24px}.score b{font:800 104px/1.1 'Bebas Neue';color:var(--lime);text-shadow:0 0 35px #7c3aed22}.score span{font:600 15px/1.7 'Bebas Neue';letter-spacing:1px}.meter{height:5px;width:85%;background:#ffffff20;margin-top:20px}.meter i{height:100%;display:block;width:0;background:var(--lime);box-shadow:0 0 20px #7c3aed88;transition:width .4s}.checkitem{display:flex;align-items:center;width:100%;gap:18px;text-align:left;padding:20px;margin:0 0 13px;border:1px solid #ffffff30;background:linear-gradient(110deg,#2a1a3e,#1a0533);box-shadow:0 4px 0 #0d0221;min-height:80px;transition:.2s;font-size:13px}.checknum{font:600 22px 'Bebas Neue';color:var(--pink)}.checkbox{margin-left:auto;flex-shrink:0;display:grid;place-items:center;height:28px;width:28px;border:1px solid #ffffff70;font-size:22px}.checkitem[aria-pressed=true]{border-color:var(--lime);background:linear-gradient(110deg,#2a1a3e,#1a0533);box-shadow:0 4px 0 #0d0221,0 0 25px #7c3aed12}.checkitem[aria-pressed=true] .checkbox{background:var(--lime);color:#222}.result{border:1px solid #e91e8c60;background:radial-gradient(at top right,#3b0a5c42,transparent),#0d0221;padding:28px;margin-top:24px}.result .eyebrow{font-size:11px;margin-bottom:12px}.result h3{font-size:22px;line-height:1.6}.result p{font-size:13px;color:var(--muted);margin:12px 0 24px}.reset{border:0;background:transparent;color:var(--muted);padding:12px 0;font-size:12px}.quest.complete{box-shadow:inset 0 0 100px #e91e8c1c}.story{min-height:740px;position:relative;display:flex;align-items:center;padding:90px 8vw}.story>img{position:absolute;inset:0;height:100%;object-position:center}.story:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0d0221e8 5%,#0d0221b3 45%,#0d022122),linear-gradient(0deg,#0d0221,transparent 20%)}.storycontent{z-index:1;position:relative;max-width:650px}.storycontent h2{font-size:clamp(36px,4.5vw,65px)}.storycontent p{font-size:14px;color:#e0d6c6}.signature{font:700 25px 'Bebas Neue';display:block;margin-top:30px}.voicegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}blockquote{margin:0;padding:15px 0 30px;border-top:1px solid var(--line)}.quote{font:700 70px/.9 Georgia;color:var(--pink)}blockquote p{font-size:14px;margin:8px 0;line-height:2.1}blockquote footer{padding:20px 0 0;border:0;text-align:left;background:none;color:var(--lime);font-size:11px}.gallery{display:grid;grid-template-columns:.7fr 1fr 1fr 1fr;gap:10px;padding:0 25px 50px}.gallerytitle{padding:30px;display:flex;flex-direction:column;justify-content:center}.gallerytitle .eyebrow{font-size:10px}.gallerytitle h2{font-size:29px}.galleryitem{position:relative;overflow:hidden;background:#1a0533;border:0;padding:0;height:310px}.galleryitem img{height:100%;transition:transform .6s}.galleryitem:hover img{transform:scale(1.07)}.galleryitem span{position:absolute;bottom:15px;right:15px;background:#111b;backdrop-filter:blur(10px);padding:7px 12px;font:600 12px 'Bebas Neue';letter-spacing:2px}.faq{max-width:1260px}.faq h2{margin-bottom:28px}.faq .sectionhead h2{margin-bottom:0}details{border-top:1px solid #ffffff30}details:last-of-type{border-bottom:1px solid #ffffff30}summary{list-style:none;display:flex;align-items:center;gap:20px;padding:24px 0;cursor:pointer;font-size:15px;font-weight:700}summary::-webkit-details-marker{display:none}summary>span{font:700 24px 'Bebas Neue';color:var(--pink)}summary>b{margin-left:auto;font-size:24px;font-weight:400}details[open] summary>b{transform:rotate(45deg)}details>p{padding:0 42px 26px;margin:0;color:var(--muted);font-size:14px}details[open]>p{animation:titlein .35s both}.visitbanner{position:relative;text-align:center;padding:100px 20px;min-height:560px;display:grid;place-items:center;isolation:isolate}.visitbanner>img{position:absolute;inset:0;height:100%;z-index:-2}.visitbanner:after{content:'';position:absolute;inset:0;background:#0d0221ad;z-index:-1}.visitbanner h2{font-size:clamp(36px,5vw,72px)}.visitbanner p:not(.eyebrow){font-size:13px;margin:25px 0}.visitbanner .eyebrow{color:var(--lime)}body>footer{padding:60px 7vw 40px;text-align:center;background:#0d0221}body>footer p{font-size:12px;color:var(--muted);margin:25px 0}body>footer>div{display:flex;gap:30px;justify-content:center;font-size:12px}body>footer small{font-size:10px;color:#877e8e;display:block;margin-top:35px}.mobilebar{display:none}.subhero{position:relative;padding:190px 8vw 85px;min-height:540px;isolation:isolate}.subhero img{position:absolute;inset:0;height:100%;z-index:-2}.subhero:after{position:absolute;inset:0;content:'';background:linear-gradient(90deg,#0d0221ed,#0d022177);z-index:-1}.subhero h1{font-size:clamp(43px,5vw,76px)}.subhero p:not(.eyebrow){font-size:14px;color:#ddd}.visitgrid{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}dl{margin:30px 0}dt{color:var(--pink);font-size:11px;margin-top:20px}dd{margin:5px 0 0;font-size:14px}.building{position:relative}.building img{max-height:580px;object-fit:cover}.building span{display:block;border-bottom:1px solid var(--line);font:500 12px 'Bebas Neue';letter-spacing:3px;padding:15px 0}.plan{display:grid;grid-template-columns:1fr 1fr;gap:7vw;background:radial-gradient(at 70% 50%,#3b0a5c66,transparent 60%),#1a0533}.plan>div>p{color:var(--muted);font-size:14px}.plan .notice{border-left:2px solid var(--pink);padding-left:15px;font-size:12px;margin-top:30px}form label{display:block;font-size:12px;color:var(--muted);margin-bottom:20px}input,textarea,select{display:block;margin-top:9px;width:100%;background:#0d0221;color:var(--ink);border:1px solid #ffffff40;padding:14px;border-radius:3px;min-width:0;color-scheme:dark}textarea{resize:vertical}.formrow{display:grid;grid-template-columns:1fr 1fr;gap:18px}#memobox{margin-top:30px}#memobox p{font-size:11px}.fullfaq{padding-top:70px}.faqend{text-align:center;margin:65px 0 15px}.faqend p{margin-bottom:25px}dialog{border:1px solid var(--line);background:#0d0221;padding:20px;color:var(--ink);width:min(1000px,94vw);max-height:94svh}dialog::backdrop{background:#000c;backdrop-filter:blur(10px)}dialog>button{float:right;margin-bottom:15px}dialog img{clear:both;max-height:76svh;width:100%;object-fit:contain}.fx{position:fixed;inset:0;pointer-events:none;z-index:100;overflow:hidden}.particle{position:absolute;width:8px;height:15px;background:var(--pink);animation:burst 850ms cubic-bezier(.1,.6,.3,1) forwards}.particle.big{animation-duration:1600ms}.ring{position:absolute;width:20px;height:20px;border:1px solid var(--pink);border-radius:100%;transform:translate(-50%,-50%);animation:ring .6s ease-out forwards}#toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,25px);opacity:0;pointer-events:none;z-index:110;max-width:90vw;background:var(--lime);color:#1a1a2e;box-shadow:0 6px 35px #0008;padding:14px 22px;font-size:13px;transition:.3s}#toast.show{opacity:1;transform:translate(-50%,0)}.skip{position:fixed;top:-100px;left:20px;z-index:200;background:var(--lime);color:#111;padding:10px}.skip:focus{top:10px}.reveal{transition:opacity .8s,translate .8s,filter .8s}.jsmotion .reveal:not(.visible){opacity:0;translate:0 35px;filter:blur(3px)}.popped{animation:pop .4s ease both}.textlink:hover,nav>a:hover{color:var(--pink)}@keyframes titlein{from{opacity:0;transform:translateY(40px);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes herozoom{from{transform:scale(1.12);filter:blur(6px)}to{transform:scale(1);filter:blur(0)}}@keyframes marquee{to{transform:translateX(-30%)}}@keyframes pop{50%{scale:1.035}}@keyframes burst{to{transform:translate(var(--x),var(--y)) rotate(var(--r));opacity:0}}@keyframes ring{to{width:160px;height:160px;opacity:0}}@media(min-width:1600px){.quest{padding-inline:max(7vw,calc((100vw - 1376px)/2))}}@media(max-width:1000px){header{gap:15px}nav{gap:20px}.hero{min-height:700px}.herocopy{left:6vw}.herovertical{display:none}.intro{gap:5vw}.introvisual img{height:430px}.minifacts{gap:20px}.minifacts b{font-size:23px}.gallery{grid-template-columns:1fr 1fr 1fr}.gallerytitle{grid-column:1/-1;padding:20px}.gallerytitle .eyebrow{margin-bottom:5px}.galleryitem{height:260px}.playcaption{padding:25px}.section{padding:85px 6vw}.quest{gap:4vw}.checkitem{padding:15px;gap:12px}.voicegrid{gap:25px}}
@media(max-width:680px){html{scroll-padding-top:25px}body{font-size:14px}header{height:79px;padding:0 22px;gap:10px}.brand{font-size:32px}.brand span{font-size:6px}.brand::after{font-size:18px;transform:translate(94px,-41px)}nav{margin-left:auto}nav a{display:none}nav a.navcta{display:block;font-size:10px;padding:7px 10px}.sound{font-size:10px;padding:9px 0;letter-spacing:0}.hero{height:calc(100svh - 32px);min-height:650px;max-height:900px}.heroimage{object-position:61% center}.heroshade{background:linear-gradient(90deg,#0d0221c4,#0d022120),linear-gradient(0deg,#0d0221 0%,#0d022136 60%,#0d022166)}.herotop{top:104px;left:24px;right:24px;letter-spacing:1.7px;font-size:10px}.herocopy{left:25px;right:20px;top:48%;transform:translateY(-30%)}h1{font-size:clamp(39px,10vw,65px);letter-spacing:-.07em;line-height:1.4}.herocopy .eyebrow{font-size:11px;margin-bottom:20px;letter-spacing:2px}.herotext{font-size:12px;margin:22px 0 27px;line-height:2}.btn{font-size:12px;padding:16px 22px;gap:20px;min-height:53px}.herobottom{bottom:30px;left:25px;right:25px;display:block;font-size:9px;letter-spacing:1px}.herobottom>a{display:block;margin-top:17px}.ticker{padding:10px 0}.ticker span{font-size:25px;word-spacing:10px}.section{padding:66px 24px}.intro{grid-template-columns:1fr;gap:46px}.introvisual{margin:0 10px 0 0;padding:8px}.introvisual img{height:330px}.stamp{font-size:23px;bottom:-17px;right:-15px;padding:15px 20px}.introcopy h2{font-size:35px}.eyebrow{font-size:11px;margin-bottom:20px}.introcopy>p:not(.eyebrow){font-size:13px}.minifacts{gap:35px}.minifacts b{font-size:25px}.sectionhead{display:block;margin-bottom:30px}.sectionhead>p,.sectionhead>.textlink{margin-top:20px}.sectionhead h2{font-size:31px}.play{padding-top:20px}.playgrid{grid-template-columns:1fr;gap:18px}.playcard{height:470px}.playcaption{padding:25px}.playcaption h3{font-size:70px}.playcaption strong{font-size:19px}.playcaption p{font-size:12px}.num{top:22px;left:25px}.quest{grid-template-columns:1fr;gap:30px}.questintro h2{font-size:36px}.questintro>p:not(.eyebrow){font-size:13px}.score{margin-top:15px}.score b{font-size:76px}.score span{font-size:13px}.questintro small{font-size:10px;margin-top:16px}.meter{width:100%;margin-top:12px}.checkitem{font-size:12px;padding:17px 14px;gap:13px;min-height:84px}.checknum{font-size:21px}.checkbox{height:25px;width:25px}.result{padding:23px}.result h3{font-size:20px}.result p{font-size:12px}.story{padding:70px 25px;min-height:650px}.story>img{object-position:65% center}.story:after{background:linear-gradient(90deg,#0d0221e8,#0d022166),linear-gradient(0deg,#0d0221,transparent)}.storycontent h2{font-size:38px}.storycontent p{font-size:12px;line-height:2.2}.voicegrid{grid-template-columns:1fr;gap:20px}blockquote{padding:25px 0 10px}blockquote p{font-size:13px}.quote{font-size:60px}.gallery{padding:0 12px 20px;grid-template-columns:1fr 1fr;gap:9px}.gallerytitle{grid-column:1/-1;padding:15px 12px}.galleryitem{height:230px}.galleryitem:last-child{grid-column:1/-1;height:230px}.faq h2{font-size:28px}summary{font-size:13px;gap:14px;padding:22px 0}details>p{padding:0 0 23px 31px;font-size:12px}summary>span{font-size:23px}.visitbanner{padding:75px 24px;min-height:500px}.visitbanner h2{font-size:39px}.visitbanner p:not(.eyebrow){font-size:11px}.mobilebar{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:30;background:#0d0221e8;backdrop-filter:blur(15px);border-top:1px solid #ffffff25;padding:10px 12px calc(10px + env(safe-area-inset-bottom));gap:10px}.mobilebar a{padding:10px 4px;font-size:11px;font-weight:700;text-align:center;border:1px solid #ffffff35;background:linear-gradient(135deg,#2a1a3e,#1a0533);box-shadow:0 3px 0 #0d0221;border-radius:3px}.mobilebar a:last-child{background:linear-gradient(120deg,#e91e8c,#e91e8c);box-shadow:0 3px 0 #3b0a5c;border-color:#e91e8c}body>footer{padding:50px 24px 115px}body>footer p{font-size:10px}body>footer>div{font-size:10px;gap:23px}.subhero{padding:160px 25px 55px;min-height:410px}.subhero h1{font-size:40px}.visitgrid,.plan{grid-template-columns:1fr;gap:40px}.building img{height:380px}.plan h2{font-size:34px}.formrow{gap:12px}.fullfaq{padding-top:40px}.faqend{margin:40px 0 0}#toast{bottom:90px;font-size:11px;width:max-content;max-width:90vw}.notice{line-height:2}.galleryitem span{font-size:10px}.storycontent .eyebrow{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.jsmotion .reveal:not(.visible){opacity:1;translate:none;filter:none}.particle,.ring{display:none}}
