:root{--ink: #efe5ff;--ink-soft: rgba(239,229,255,.84);--ink-muted: rgba(223,204,247,.62);--rule: rgba(255, 255, 255, .18);--rule-light: rgba(255, 255, 255, .08);--paper: #070708;--paper-warm: #101010;--white: #ffffff;--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{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;background:#080808}:target{scroll-margin-top:84px}body{background:#070708;color:var(--ink);font-family:var(--f-body);font-weight:400;font-size:16px;overflow-x:hidden;-webkit-font-smoothing:antialiased}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-family:var(--f-game-title)!important;font-weight:800}html[lang=en]{--f-body: "Manrope", "Inter", "Segoe UI", sans-serif;--f-heading: "Manrope", "Inter", "Segoe UI", sans-serif;--f-game-title: "Fraunces", "Times New Roman", serif}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}a{text-decoration:none;color:inherit}a:focus-visible,button:focus-visible{outline:2px solid #ffffff;outline-offset:3px}@media(max-width:640px){body{font-size:14px}}p,span,a,li,button,label,input,textarea,select,time{font-size:max(16px,1em)!important}@media(max-width:640px){p,span,a,li,button,label,input,textarea,select,time{font-size:max(14px,1em)!important}}.label{font-family:var(--f-mono);font-size:.65rem;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-muted)}.btn-primary{font-family:var(--f-mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;padding:.85rem 2rem;background:#11161d;color:var(--white);border:1px solid rgba(140,180,230,.35);display:inline-block;text-align:center;transition:background var(--t),color var(--t)}.btn-primary:hover{background:#1c2b40f5;color:var(--white)}.btn-outline{font-family:var(--f-mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;padding:.85rem 2rem;background:#11161d;color:#fffffff2;border:1px solid rgba(140,180,230,.35);display:inline-block;text-align:center;transition:border-color var(--t),color var(--t)}.btn-outline:hover{border-color:#a0cdffbf;background:#1c2b40f5;color:var(--white)}.nav{position:fixed;top:0;left:0;right:0;z-index:900;transition:background .4s ease,backdrop-filter .4s ease}.nav-inner{max-width:var(--max);margin:0 auto;padding:0 1.5rem;height:64px;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;position:relative}.nav-logo{display:flex;align-items:center}.nav-logo-img{height:32px;width:auto}.nav-logo-white{display:block}.nav-logo-black{display:none}.nav-links{display:flex;gap:2.5rem;list-style:none;margin-left:auto;margin-right:2.5rem}.nav-links a{font-family:var(--f-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);transition:color var(--t)}.nav-links a:hover{color:var(--ink)}.nav-right{display:flex;align-items:center;gap:2rem}.lang-sw{display:flex;gap:.5rem;font-family:var(--f-mono);font-size:.6rem;letter-spacing:.1em;color:var(--ink-muted);position:relative}.lang-sw .lang-item{transition:color .2s;color:inherit}.lang-sw .lang-item.on{color:var(--ink)}.lang-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .9rem;font-family:var(--f-mono);font-size:.6rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:inherit;background:#ffffff1f;border:1px solid rgba(255,255,255,.12);border-radius:999px;cursor:pointer;transition:all .2s ease}.lang-btn:hover{background:#ffffff2e}.lang-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:140px;background:#0a0a0ef5;backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:.4rem;box-shadow:0 8px 24px #0006;opacity:0;visibility:hidden;transform:translateY(-4px) scale(.97);transition:all .2s cubic-bezier(.4,0,.2,1);z-index:100;pointer-events:none}.lang-menu.open{opacity:1;visibility:visible;transform:translateY(0) scale(1);pointer-events:auto}.lang-option{display:block;padding:.55rem .9rem;font-family:var(--f-mono);font-size:.6rem;font-weight:600;letter-spacing:.06em;color:#ffffffbf;text-decoration:none;border-radius:8px;transition:all .18s ease}.lang-option:hover{background:#ffffff14;color:#fff}.lang-option.active{background:#0180e538;color:#dff3ff}.nav.scrolled .lang-btn{background:#ffffff26;border-color:#ffffff4d;color:#fff}.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{background:#ffffff0f;color:#fff}.nav.scrolled .lang-option.active{background:#0180e53d;color:#dff3ff}.nav-btn{position:relative;font-family:var(--f-mono);font-size:.65rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:.6rem 1.4rem;background:#11161d;color:#fff;border:none;border-radius:50px;transition:all .35s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 12px #ffffff1f}.nav-btn:hover{transform:translateY(-1px);box-shadow:0 4px 20px #31619c73,0 0 30px #5794d947}.nav-toggle{display:none;width:40px;height:40px;border:1px solid rgba(255,255,255,.34);background:#00000059;padding:0 9px;align-items:center;justify-content:center;gap:4px;cursor:pointer;flex-direction:column}.nav-toggle span{width:100%;height:1px;background:#ffffffe0;transition:transform .25s ease,opacity .25s ease,background .25s ease;transform-origin:center}.nav-mobile{border-top:1px solid rgba(255,255,255,.16);padding:1rem var(--pad) 1.2rem;background:#000000e0;backdrop-filter:blur(16px);display:block;max-height:0;opacity:0;overflow:hidden;pointer-events:none;transform:translateY(-10px);transition:max-height .32s ease,opacity .24s ease,transform .3s ease}.nav-mobile-links{list-style:none;display:flex;flex-direction:column;gap:.9rem;margin-bottom:1rem}.nav-mobile-links a{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;color:#ffffffd9}.nav-mobile-footer{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.nav-mobile .nav-btn{font-size:.6rem;padding:.5rem .8rem;background:#11161d;color:#fff;border:none;white-space:nowrap;box-shadow:0 2px 10px #ffffff1f}.nav-mobile .lang-sw{color:#fff9}.nav.mobile-open .nav-mobile{max-height:360px;opacity:1;pointer-events:auto;transform:translateY(0);overflow:visible}.nav.mobile-open .nav-toggle span:nth-child(1){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{position:fixed;top:0;left:0;right:0;z-index:900;background:linear-gradient(to bottom,rgba(0,0,0,.62),transparent);transition:background .4s ease,backdrop-filter .4s ease,transform .3s ease}.nav.hidden{transform:translateY(-100%)}.nav-inner{border-radius:0;transition:border-radius .4s ease,background .4s ease,box-shadow .4s ease,margin .4s ease,max-width .4s ease}.nav.scrolled .nav-inner{background:#ffffff21!important;backdrop-filter:blur(20px) saturate(145%)!important;border:1px solid rgba(255,255,255,.25)!important;border-radius:20px!important;box-shadow:0 8px 32px #0000001a;margin:8px auto;box-sizing:border-box}.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 ease}.nav:not(.scrolled) .nav-links a:hover{color:#f2f2f2}.nav.scrolled .nav-links a{color:#fff;transition:color .3s ease}.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{background:#11161d;color:#fff;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{border-color:#ffffff40;background:#ffffff1a}.nav.scrolled .nav-toggle span{background:#fff}.nav.scrolled .nav-mobile{background:#fffffff2;backdrop-filter:blur(20px) saturate(170%);border-top:1px solid rgba(0,0,0,.1);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{background:#11161d;color:#fff;border:1px solid rgba(140,180,230,.35);box-shadow:none}.sticky-reserve-btn{position:fixed;right:clamp(.9rem,2.5vw,1.5rem);bottom:max(.9rem,env(safe-area-inset-bottom,0px) + .7rem);z-index:1200;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.85rem 1.15rem;border-radius:20px;border:none;background:#0180e5;color:#fff;font-family:var(--f-mono);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;transition:transform .25s ease,box-shadow .25s ease,color .25s ease;overflow:hidden;isolation:isolate}.sticky-reserve-btn:after{content:"";position:absolute;inset:0;border-radius:inherit;opacity:0;transition:opacity .25s ease;z-index:-1}.sticky-reserve-btn:hover{transform:translateY(-2px);color:#fff;background:#009eff}.sticky-reserve-btn:hover:after{opacity:1}.sticky-reserve-btn.is-hidden-by-footer{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(12px)}.site-footer{background:#0d0d0d;color:var(--paper);padding:clamp(2.5rem,5vw,4rem) var(--pad) 0;position:relative}.site-footer:before{content:"";position:absolute;top:0;left:0;right:0;height:200px;background:linear-gradient(to bottom,rgba(255,255,255,.03) 0%,transparent 100%);pointer-events:none}.footer-top{display:grid;grid-template-columns:minmax(220px,2fr) 1fr 1fr 1.3fr;gap:clamp(2rem,5vw,7rem);align-items:start;padding-bottom:clamp(2rem,4vw,3rem)}.footer-brand-col{min-height:220px;display:flex;flex-direction:column;justify-content:space-between}.footer-logo-badge{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;border:1px solid rgba(255,255,255,.12);color:var(--paper);background:#ffffff1f;font-family:var(--f-serif);font-size:clamp(1.1rem,1.7vw,1.8rem);letter-spacing:.03em;line-height:1;padding:.85rem 1.2rem;transition:background-color .3s,box-shadow .3s}.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);font-size:.66rem;letter-spacing:.13em;text-transform:uppercase;color:#b49dd9b3;margin-bottom:1rem}.footer-links{list-style:none;display:flex;flex-direction:column;gap:.7rem}.footer-links a{font-family:var(--f-jp);font-size:clamp(.74rem,.84vw,.98rem);line-height:1.45;color:#ffffff8c;transition:color .25s,text-shadow .25s}.footer-links a:hover{color:#fff;text-shadow:0 0 20px rgba(255,255,255,.12)}.footer-copy{font-family:var(--f-jp);font-size:clamp(.85rem,1vw,1.25rem);line-height:1.5;color:#ffffff8c}.footer-image-wrap{width:min(1600px,100%);margin:0 auto;border-top:1px solid rgba(255,255,255,.12);position:relative}.footer-image-wrap:before{content:"";position:absolute;top:0;left:0;right:0;height:150px;background:linear-gradient(to bottom,#0d0d0d 0%,transparent 100%);z-index:1;pointer-events:none}.footer-halftone-host{width:100%;height:clamp(220px,33vw,580px);position:relative;overflow:hidden;background:#0d0a14}.footer-halftone-host>*{width:100%!important;height:100%!important;display:block}@media(max-width:768px){.nav.mobile-open .nav-inner{background:#08080ceb!important;backdrop-filter:blur(16px) saturate(140%)!important;border:1px solid rgba(255,255,255,.14)!important}.nav.scrolled .nav-mobile{background:#08080cf0;border-top:1px solid rgba(255,255,255,.14)}.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{position:relative;z-index:5}.nav-mobile .lang-menu{left:0;right:auto;min-width:170px;z-index:20}.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}}
