:root{color-scheme:dark;--bg:#11151b;--surface:#1a2028;--ink:#f3eeea;--muted:#aab4c0;--cyan:#58cde3;--pink:#f00068;--line:#333c47;--body:"Noto Sans JP",sans-serif;--latin:"Jost",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:1rem;line-height:1.8}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}a:focus-visible{outline:3px solid var(--cyan);outline-offset:6px}a,button{-webkit-tap-highlight-color:transparent}.wrap{width:min(86%,1440px);margin-inline:auto}.skip{position:fixed;top:-100px;left:1rem;z-index:10;background:var(--cyan);color:var(--bg);padding:1rem}.skip:focus{top:1rem}.header{display:flex;align-items:center;justify-content:space-between;padding-block:1.3rem;border-bottom:1px solid var(--line);gap:1.5rem}.brand{display:flex;align-items:center;gap:.4rem;font-family:var(--latin);font-size:2rem;font-weight:600;line-height:1}.brand img{width:3.5rem;height:3.5rem;object-fit:contain}.brand-sub{display:block;font-size:.65rem;letter-spacing:.4em;color:var(--cyan);margin-top:.5rem}.header nav{display:flex;align-items:center;gap:clamp(1.2rem,3vw,3rem);font-family:var(--latin);font-size:1rem;font-weight:500;letter-spacing:.06em}.header nav a:hover,.footer a:hover{color:var(--cyan)}.company-link{border-left:1px solid var(--line);padding-left:2rem;color:var(--muted)}.hero{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding-top:clamp(3rem,6vw,7rem);gap:2rem}.eyebrow{font-family:var(--latin);font-size:.875rem;font-weight:500;letter-spacing:.14em;color:var(--muted);margin:0 0 1.6rem}.hero h1{font-size:clamp(2.7rem,4.6vw,5.3rem);line-height:1.4;letter-spacing:.04em;font-weight:700;margin:0}.hero h1 span{color:var(--cyan)}.hero-description{color:var(--muted);margin-block:1.8rem 2rem}.hero-links{display:flex;gap:2rem;align-items:center}.button{padding:.85rem 1.8rem;color:#10151b;background:var(--cyan);font-weight:600;font-size:.9375rem;transition:background .2s,transform .2s}.button:hover{background:var(--ink);transform:translateY(-2px)}.text-link{font-size:.9375rem;border-bottom:1px solid var(--muted);padding:.6rem 0}.text-link:hover{color:var(--cyan);border-color:var(--cyan)}.hero-visual{position:relative;isolation:isolate;min-width:0;aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,transparent 35%,#58cde308 35%,#58cde308 70%,transparent 70%)}.hero-visual:before{content:"";position:absolute;inset:4%;background:linear-gradient(135deg,#58cde31a,transparent 50%);border:1px solid #58cde326;transform:rotate(-8deg);z-index:-1}.frame-line{position:absolute;inset:13%;border:1px solid #58cde327;transform:rotate(37deg);z-index:-1}.orbit{position:absolute;width:80%;height:80%;border:1px solid #58cde318;border-radius:50%;z-index:-1}.hero-icon{width:91%;height:91%;object-fit:contain;filter:drop-shadow(0 18px 40px #0005)}.visual-label{position:absolute;bottom:9%;left:17%;font-family:var(--latin);font-size:clamp(1.8rem,3vw,3.8rem);font-weight:500;letter-spacing:-.04em}.visual-label b{font-weight:400;color:var(--cyan)}.visual-note{position:absolute;right:-.5rem;top:50%;writing-mode:vertical-rl;font-family:var(--latin);font-size:.75rem;letter-spacing:.2em;color:var(--muted)}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-block:2.5rem 1.2rem;color:var(--muted);font-size:.8rem;letter-spacing:.08em}.scroll-label{font-family:var(--latin);letter-spacing:.15em}.section{padding-block:clamp(3.5rem,6vw,6rem);scroll-margin-top:1rem}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:2.2rem}.section-heading .eyebrow{margin-bottom:.4rem;font-family:var(--body);font-size:.8125rem;letter-spacing:.07em;display:flex;gap:.7rem;align-items:center}.accent-line{width:1.5rem;height:2px;background:var(--cyan)}h2{font:500 clamp(2.8rem,5vw,4.8rem)/1.2 var(--latin);letter-spacing:-.045em;margin:0}.period{color:var(--cyan)}.section-heading>p{color:var(--muted);font-size:.875rem;margin:0 0 .4rem}.game-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.7rem}.game-card{min-width:0;background:var(--surface);border-bottom:2px solid transparent;transition:border-color .2s}.game-card:hover{border-color:var(--cyan)}.game-art{position:relative;display:block;aspect-ratio:616/353;overflow:hidden;background:#252b34}.game-art img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.game-art:hover img{transform:scale(1.035)}.image-number{position:absolute;bottom:.8rem;left:1rem;font:400 .875rem var(--latin);color:white;background:#10151bbc;padding:.2rem .5rem}.game-info{padding:1.6rem}.game-meta{display:flex;justify-content:space-between;align-items:center;gap:.8rem;font:400 .6875rem var(--latin);letter-spacing:.04em;color:var(--muted);flex-wrap:wrap}.badge{font:500 .75rem var(--body);color:var(--cyan);border:1px solid #58cde34d;padding:.2rem .55rem;white-space:nowrap}.upcoming{color:#ff78b2;border-color:#ff78b24d}.game-info h3{font:500 clamp(1.35rem,1.9vw,2rem)/1.4 var(--latin);margin:1rem 0 .7rem;overflow-wrap:anywhere;letter-spacing:-.03em}.game-info h3 span{font-size:.85em;color:var(--cyan)}.game-info p{font-size:.875rem;color:var(--muted);line-height:1.9;margin:0 0 1.5rem}.store-link{display:flex;justify-content:space-between;gap:1rem;padding-top:1rem;border-top:1px solid var(--line);font-size:.875rem}.store-link span{font-family:var(--latin);font-size:.75rem;letter-spacing:.1em;color:var(--muted)}.store-link:hover{color:var(--cyan)}.demo .game-art img{opacity:.65}.demo-label{position:absolute;right:1rem;top:1rem;border:1px solid var(--cyan);color:var(--cyan);background:#11151be6;font:500 1rem var(--latin);letter-spacing:.16em;padding:.2rem .9rem}.tools{background:#161c24;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.tool-card{display:flex;align-items:center;gap:2rem;padding:2.5rem;background:#1d2530;border:1px solid #36434f;transition:border .2s,background .2s}.tool-card:hover{border-color:var(--cyan);background:#212d38}.tool-symbol{width:8rem;height:8rem;flex:none;background:#58cde30a;color:var(--cyan);display:grid;place-items:center}.tool-symbol svg{width:75%;height:75%}.tool-copy{flex:1;min-width:0}.tool-kicker{font:.75rem var(--latin);letter-spacing:.15em;color:var(--cyan);margin:0 0 .5rem}.tool-copy h3{font-size:clamp(1.2rem,1.65vw,1.7rem);margin:0 0 .7rem;line-height:1.5}.tool-copy>p:not(.tool-kicker){color:var(--muted);font-size:.875rem;line-height:1.9;margin:0 0 1rem}.tool-tags{display:flex;gap:1.2rem;font-size:.75rem;color:var(--muted)}.tool-action{white-space:nowrap;border:1px solid var(--cyan);padding:.7rem 1.2rem;color:var(--cyan);font-size:.875rem}.mobile-break{display:none}.footer{padding-block:2.5rem;display:flex;align-items:center;gap:2.5rem}.footer .brand{font-size:1.6rem}.footer .brand img{width:3rem;height:3rem}.footer-links{display:flex;gap:1.6rem;margin-left:auto;font-size:.8125rem;color:var(--muted)}.footer small{font-family:var(--latin);color:var(--muted);font-size:.8rem}@media(min-width:1800px){.hero h1{font-size:5.3rem}}@media(max-width:1050px){.wrap{width:90%}.game-grid{gap:1rem}.game-info{padding:1.1rem}.game-meta{font-size:.625rem}.game-info h3{font-size:1.5rem}.tool-card{gap:1.5rem;padding:1.8rem}.tool-symbol{width:5rem;height:5rem}.tool-action{padding:.7rem .8rem}}@media(max-width:760px){.header{padding-block:1rem}.brand{font-size:1.65rem}.brand img{width:2.8rem;height:2.8rem}.brand-sub{font-size:.6rem}.header nav{gap:1.2rem;font-size:.875rem}.company-link{display:none}.hero{grid-template-columns:1fr;gap:0;padding-top:2.5rem}.hero h1{font-size:clamp(2.7rem,9vw,4.8rem)}.hero-description{font-size:.875rem}.hero-visual{width:min(85%,440px);justify-self:end;margin-top:-.5rem}.visual-label{font-size:2rem}.hero-bottom{padding-top:.7rem;font-size:.6875rem}.scroll-label{display:none}.section-heading{align-items:flex-start;flex-direction:column;gap:.7rem;margin-bottom:1.6rem}.section-heading>p{font-size:.8125rem}.game-grid{grid-template-columns:1fr;gap:1.8rem}.game-info{padding:1.5rem}.game-info h3{font-size:1.8rem}.game-meta{font-size:.75rem}.tool-card{position:relative;display:grid;grid-template-columns:3.5rem 1fr;gap:1rem;padding:1.3rem}.tool-symbol{width:3.5rem;height:3.5rem;align-self:start}.tool-copy h3{font-size:1.1rem}.tool-copy>p:not(.tool-kicker){font-size:.8125rem}.tool-copy br:not(.mobile-break){display:none}.mobile-break{display:inline}.tool-tags{gap:.8rem}.tool-action{grid-column:1/-1;text-align:center;margin-top:.5rem}.footer{flex-wrap:wrap;gap:1.5rem}.footer-links{margin-left:0;flex:1 1 100%;font-size:.8125rem}.footer small{margin-left:auto;position:relative}.footer .brand{font-size:1.4rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
