:root{--ink:#efe5ff;--ink-soft:#efe5ffd6;--ink-muted:#dfccf79e;--rule:#ffffff2e;--rule-light:#ffffff14;--paper:#070708;--paper-warm:#101010;--white:#fff;--red:#0a0a0a;--red-pale:#141414;--f-body:"Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;--f-heading:"Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;--f-game-title:"Noto Serif JP", "Hiragino Mincho ProN", serif;--f-serif:var(--f-heading);--f-jp:var(--f-body);--f-mono:"DM Mono", "Courier New", monospace;--max:1200px;--pad:clamp(1.5rem, 5vw, 5rem);--t:.4s cubic-bezier(.16, 1, .3, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background:#080808}:target{scroll-margin-top:84px}body{color:var(--ink);font-family:var(--f-body);-webkit-font-smoothing:antialiased;background:#070708;font-size:16px;font-weight:400;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--f-heading);font-weight:700}.game-title,.hero-title,.hero-title-jp,.pricing-game-name,.game-title-row h3,.game-page .hero-copy h1{font-weight:800;font-family:var(--f-game-title)!important}html[lang=en]{--f-body:"Sora", "Avenir Next", "Segoe UI", sans-serif;--f-heading:"Sora", "Avenir Next", "Segoe UI", sans-serif;--f-game-title:"Cormorant Garamond", "Times New Roman", serif;--f-serif:"Cormorant Garamond", "Times New Roman", serif;--f-jp:var(--f-body)}html[lang=ja]{--f-body:"Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;--f-heading:"Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;--f-game-title:"Noto Serif JP", "Hiragino Mincho ProN", serif;--f-serif:var(--f-heading);--f-jp:var(--f-body)}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline-offset:3px;outline:2px solid #fff}@media (width<=640px){body{font-size:14px}}p,span,a,li,button,label,input,textarea,select,time{font-size:max(16px,1em)!important}@media (width<=640px){p,span,a,li,button,label,input,textarea,select,time{font-size:max(14px,1em)!important}}.label{font-family:var(--f-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-muted);font-size:.65rem}.btn-primary{font-family:var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--white);text-align:center;transition:background var(--t), color var(--t);background:#11161d;border:1px solid #8cb4e659;padding:.85rem 2rem;font-size:.68rem;display:inline-block}.btn-primary:hover{color:var(--white);background:#1c2b40f5}.btn-outline{font-family:var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:#fffffff2;text-align:center;transition:border-color var(--t), color var(--t);background:#11161d;border:1px solid #8cb4e659;padding:.85rem 2rem;font-size:.68rem;display:inline-block}.btn-outline:hover{color:var(--white);background:#1c2b40f5;border-color:#a0cdffbf}.nav{z-index:900;transition:background .4s,backdrop-filter .4s;position:fixed;top:0;left:0;right:0}.nav-inner{max-width:var(--max);box-sizing:border-box;justify-content:space-between;align-items:center;height:64px;margin:0 auto;padding:0 1.5rem;display:flex;position:relative}.nav-logo{align-items:center;display:flex}.nav-logo-img{width:auto;height:32px}.nav-logo-white{display:block}.nav-logo-black{display:none}.nav-links{gap:2.5rem;margin-left:auto;margin-right:2.5rem;list-style:none;display:flex}.nav-links a{font-family:var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);transition:color var(--t);font-size:.68rem}.nav-links a:hover{color:var(--ink)}.nav-right{align-items:center;gap:2rem;display:flex}.lang-sw{font-family:var(--f-mono);letter-spacing:.1em;color:var(--ink-muted);gap:.5rem;font-size:.6rem;display:flex;position:relative}.lang-sw .lang-item{color:inherit;transition:color .2s}.lang-sw .lang-item.on{color:var(--ink)}.lang-btn{font-family:var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:inherit;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff1f;border-radius:999px;align-items:center;gap:.4rem;padding:.45rem .9rem;font-size:.6rem;font-weight:600;transition:all .2s;display:inline-flex}.lang-icon{object-fit:contain;flex:none;width:1.4rem;height:1.4rem;display:block}.lang-btn:hover{background:#ffffff2e}.lang-menu{backdrop-filter:blur(16px);opacity:0;visibility:hidden;z-index:100;pointer-events:none;background:#0a0a0ef5;border:1px solid #ffffff1a;border-radius:12px;min-width:140px;padding:.4rem;transition:all .2s cubic-bezier(.4,0,.2,1);position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-4px)scale(.97);box-shadow:0 8px 24px #0006}.lang-menu.open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)scale(1)}.lang-option{font-family:var(--f-mono);letter-spacing:.06em;color:#ffffffbf;border-radius:8px;padding:.55rem .9rem;font-size:.6rem;font-weight:600;text-decoration:none;transition:all .18s;display:block}.lang-option:hover{color:#fff;background:#ffffff14}.lang-option.active{color:#dff3ff;background:#0180e538}.nav.scrolled .lang-btn{color:#fff;background:#ffffff26;border-color:#ffffff4d}.nav.scrolled .lang-btn:hover{background:#fff3}.nav.scrolled .lang-menu{background:#080e16fa;border-color:#8cb4e647}.nav.scrolled .lang-option{color:#fffc}.nav.scrolled .lang-option:hover{color:#fff;background:#ffffff0f}.nav.scrolled .lang-option.active{color:#dff3ff;background:#0180e53d}.nav-btn{font-family:var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:#fff;background:#11161d;border:none;border-radius:50px;padding:.6rem 1.4rem;font-size:.65rem;font-weight:600;transition:all .35s cubic-bezier(.4,0,.2,1);position:relative;box-shadow:0 2px 12px #ffffff1f}.nav-btn:hover{transform:translateY(-1px);box-shadow:0 4px 20px #31619c73,0 0 30px #5794d947}.nav-toggle{cursor:pointer;background:#00000059;border:1px solid #ffffff57;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:40px;height:40px;padding:0 9px;display:none}.nav-toggle span{transform-origin:50%;background:#ffffffe0;width:100%;height:1px;transition:transform .25s,opacity .25s,background .25s}.nav-mobile{padding:1rem var(--pad) 1.2rem;backdrop-filter:blur(16px);opacity:0;pointer-events:none;background:#000000e0;border-top:1px solid #ffffff29;max-height:0;transition:max-height .32s,opacity .24s,transform .3s;display:block;overflow:hidden;transform:translateY(-10px)}.nav-mobile-links{flex-direction:column;gap:.9rem;margin-bottom:1rem;list-style:none;display:flex}.nav-mobile-links a{font-family:var(--f-mono);letter-spacing:.13em;text-transform:uppercase;color:#ffffffd9;font-size:.7rem}.nav-mobile-footer{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.nav-mobile .nav-btn{color:#fff;white-space:nowrap;background:#11161d;border:none;padding:.5rem .8rem;font-size:.6rem;box-shadow:0 2px 10px #ffffff1f}.nav-mobile .lang-sw{color:#fff9}.nav.mobile-open .nav-mobile{opacity:1;pointer-events:auto;max-height:360px;overflow:visible;transform:translateY(0)}.nav.mobile-open .nav-toggle span:first-child{transform:translateY(5px)rotate(45deg)}.nav.mobile-open .nav-toggle span:nth-child(2){opacity:0}.nav.mobile-open .nav-toggle span:nth-child(3){transform:translateY(-5px)rotate(-45deg)}.nav{z-index:900;background:linear-gradient(#0000009e,#0000);transition:background .4s,backdrop-filter .4s,transform .3s;position:fixed;top:0;left:0;right:0}.nav.hidden{transform:translateY(-100%)}.nav-inner{border-radius:0;transition:border-radius .4s,background .4s,box-shadow .4s,margin .4s,max-width .4s}.nav.scrolled .nav-inner{box-sizing:border-box;margin:8px auto;box-shadow:0 8px 32px #0000001a;backdrop-filter:blur(20px)saturate(145%)!important;background:#ffffff21!important;border:1px solid #ffffff40!important;border-radius:20px!important}.nav.scrolled .nav-logo-white{display:block}.nav.scrolled .nav-logo-black{display:none}.nav.scrolled .nav-logo-img{height:36px}.nav:not(.scrolled) .nav-links a{color:#ffffffa6;transition:color .3s}.nav:not(.scrolled) .nav-links a:hover{color:#f2f2f2}.nav.scrolled .nav-links a{color:#fff;transition:color .3s}.nav.scrolled .nav-links a:hover{color:#fff;text-decoration:underline}.nav:not(.scrolled) .lang-sw{color:#ffffff73}.nav:not(.scrolled) .lang-sw .lang-item.on{color:#fff}.nav.scrolled .lang-sw{color:#ffffffbf}.nav.scrolled .lang-sw .lang-item.on{color:#fff}.nav:not(.scrolled) .nav-btn{color:#fff;background:#11161d;border:none;box-shadow:0 2px 12px #ffffff1f}.nav:not(.scrolled) .nav-btn:hover{transform:translateY(-1px);box-shadow:0 4px 20px #31619c66}.nav.scrolled .nav-toggle{background:#ffffff1a;border-color:#ffffff40}.nav.scrolled .nav-toggle span{background:#fff}.nav.scrolled .nav-mobile{backdrop-filter:blur(20px)saturate(170%);background:#fffffff2;border-top:1px solid #0000001a;border-radius:0 0 20px 20px}.nav.scrolled .nav-mobile-links a{color:#000000bf}.nav.scrolled .nav-mobile .lang-sw{color:#00000080}.nav.scrolled .nav-mobile .lang-sw .lang-item.on{color:#000000e6}.nav.scrolled .nav-mobile .nav-btn{color:#fff;box-shadow:none;background:#11161d;border:1px solid #8cb4e659}.sticky-reserve-bar{z-index:1200;padding:1rem var(--pad) max(1rem, env(safe-area-inset-bottom,0px));backdrop-filter:blur(8px);background:#0d1116f5;border-top:1px solid #ffffff0f;justify-content:center;align-items:center;gap:clamp(1rem,4vw,3rem);transition:transform .25s,opacity .25s;display:flex;position:fixed;bottom:0;left:0;right:0}.sticky-group-link{color:#fff;white-space:nowrap;align-items:center;gap:.7rem;font-size:clamp(.85rem,1.1vw,1.05rem);font-weight:700;display:inline-flex}.sticky-group-link span{border-bottom:1px solid;padding-bottom:2px}.sticky-group-link:hover{opacity:.8}.sticky-divider{background:#ffffff2e;align-self:stretch;width:1px}.sticky-reserve-btn{color:#fff;background:#0180e5;border-radius:4px;justify-content:center;align-items:center;gap:.8rem;width:min(100%,26rem);padding:1rem 1.5rem;font-size:clamp(.95rem,1.2vw,1.15rem);font-weight:700;transition:background .25s;display:inline-flex}.sticky-reserve-btn:hover{background:#009eff}.sticky-reserve-bar.is-hidden-by-footer,.sticky-reserve-bar.is-hidden-by-scroll{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(100%)}@media (width<=640px){.sticky-reserve-bar{padding:.7rem var(--pad) max(1rem, env(safe-area-inset-bottom,0px));flex-direction:column;gap:.8rem}.sticky-group-link{gap:.7rem;font-size:1rem}.sticky-group-link .sticky-people{display:block}.sticky-divider{display:none}.sticky-reserve-btn{border-radius:12px;flex:none;width:100%;padding:.95rem 1rem;font-size:1.15rem}}.site-footer{color:var(--paper);padding:clamp(2.5rem, 5vw, 4rem) var(--pad) 0;background:#0d0d0d;position:relative}.site-footer:before{content:"";pointer-events:none;background:linear-gradient(#ffffff08 0%,#0000 100%);height:200px;position:absolute;top:0;left:0;right:0}.footer-top{grid-template-columns:minmax(220px,2fr) 1fr 1fr 1.3fr;align-items:start;gap:clamp(2rem,5vw,7rem);padding-bottom:clamp(2rem,4vw,3rem);display:grid}.footer-brand-col{flex-direction:column;justify-content:space-between;min-height:220px;display:flex}.footer-logo-badge{color:var(--paper);font-family:var(--f-serif);letter-spacing:.03em;background:#ffffff1f;border:1px solid #ffffff1f;justify-content:center;align-self:flex-start;align-items:center;padding:.85rem 1.2rem;font-size:clamp(1.1rem,1.7vw,1.8rem);line-height:1;transition:background-color .3s,box-shadow .3s;display:inline-flex}.footer-logo-img{width:clamp(120px,13vw,190px);height:auto;display:block}.footer-logo-badge:hover{background:#ffffff1f;box-shadow:0 0 20px #ffffff1f}.footer-col-label{font-family:var(--f-mono);letter-spacing:.13em;text-transform:uppercase;color:#b49dd9b3;margin-bottom:1rem;font-size:.66rem}.footer-links{flex-direction:column;gap:.7rem;list-style:none;display:flex}.footer-links a{font-family:var(--f-jp);color:#ffffff8c;font-size:clamp(.74rem,.84vw,.98rem);line-height:1.45;transition:color .25s,text-shadow .25s}.footer-links a:hover{color:#fff;text-shadow:0 0 20px #ffffff1f}.footer-copy{font-family:var(--f-jp);color:#ffffff8c;font-size:clamp(.85rem,1vw,1.25rem);line-height:1.5}.footer-image-wrap{border-top:1px solid #ffffff1f;width:min(1600px,100%);margin:0 auto;position:relative}.footer-image-wrap:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(#0d0d0d 0%,#0000 100%);height:150px;position:absolute;top:0;left:0;right:0}.footer-halftone-host{background:#0d0a14;width:100%;height:clamp(220px,33vw,580px);position:relative;overflow:hidden}.footer-halftone-host>*{display:block;width:100%!important;height:100%!important}@media (width<=768px){.nav.mobile-open .nav-inner{backdrop-filter:blur(16px)saturate(140%)!important;background:#08080ceb!important;border:1px solid #ffffff24!important}.nav.scrolled .nav-mobile{background:#08080cf0;border-top:1px solid #ffffff24}.nav.scrolled .nav-mobile-links a{color:#ffffffe0}.nav.scrolled .nav-mobile .lang-sw{color:#ffffffbf}.nav.scrolled .nav-mobile .lang-sw .lang-item.on{color:#fff}.nav-mobile .lang-sw{z-index:5;position:relative}.nav-mobile .lang-menu{z-index:20;min-width:170px;left:0;right:auto}.site-footer{padding-top:2.2rem}.footer-top{grid-template-columns:1fr;gap:1.8rem}.footer-brand-col{min-height:150px}.footer-halftone-host{height:clamp(190px,56vw,380px)}.nav-links,.nav-right{display:none}.nav-toggle{display:inline-flex}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
