/* Games introduction only. Verified game document and other brand pages are separate. */
@font-face{font-family:NiwatoriRound;src:url('../fonts/niwatori-games/rounded-mplus-1c-extrabold.woff') format('woff');font-weight:800;font-style:normal;font-display:swap}
.ng-main,.ng-site-header,.ng-site-footer{--ng-ink:#294b51;--ng-accent:#146b76;--ng-round:NiwatoriRound,'Hiragino Maru Gothic ProN','Noto Sans JP',sans-serif;color:var(--ng-ink)}
.ng-main{background:#edf8fd;line-height:1.9}.ng-main *{box-sizing:border-box}.ng-main .shell,.ng-site-header .shell,.ng-site-footer .shell{width:min(calc(100% - 48px),1180px)}.ng-main [id]{scroll-margin-top:110px}.ng-main h1,.ng-main h2,.ng-main h3{font-family:var(--ng-round);font-weight:800;line-height:1.5;letter-spacing:.015em;color:var(--ng-ink)}.ng-main h2{font-size:clamp(26px,3vw,38px);margin:0 0 22px}.ng-main h2 span{color:var(--ng-accent)}.ng-main p{margin:0 0 18px}.ng-main img{height:auto}.ng-main a,.ng-main button{touch-action:manipulation}.ng-main :focus-visible,.ng-site-header :focus-visible,.ng-site-footer :focus-visible{outline:3px solid #b34824;outline-offset:5px}.ng-main a:hover{text-decoration:underline;text-underline-offset:5px}
.ng-site-header{background:#ffffffed;border-bottom:2px solid #d4eaf0}.ng-site-header .header-inner{height:88px;gap:20px}.ng-site-header .ng-header-brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.ng-site-header .ng-header-brand img{width:64px;height:64px;max-height:none;object-fit:contain}.ng-header-brand strong{display:block;font:800 19px/1.5 var(--ng-round)}.ng-header-brand small{display:block;font-size:10px;color:#57727a;letter-spacing:.04em}.ng-site-header .site-nav,.ng-site-header .site-nav ul{gap:20px}.ng-site-header .site-nav a{font-size:12px;letter-spacing:0;white-space:nowrap}.ng-site-header .ng-header-play{border-radius:999px;background:#146b76;color:white;min-height:44px;padding:0 20px}
.ng-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;padding-top:22px;font-size:11px;color:#4e6b76}.ng-breadcrumb a{text-decoration:underline}.ng-hero{padding:45px 0 60px;background:radial-gradient(ellipse at 80% 20%,#d9f1fa,transparent 65%)}.ng-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.ng-eyebrow{font-size:11px;font-weight:800;letter-spacing:.14em;color:#426c79}.ng-hero-copy .ng-eyebrow{margin-bottom:8px}.ng-origin{font-weight:700;font-size:14px}.ng-hero-copy h1{font-size:clamp(38px,4.6vw,60px);line-height:1.3;margin:16px 0 24px;letter-spacing:.02em}.ng-hero-copy h1 span{display:block;color:#14778a;font-size:1.08em}.ng-hero-copy .ng-hero-lead{font:800 22px/1.7 var(--ng-round);margin-bottom:18px}.ng-hero-copy>p:not([class]){font-size:14px;max-width:460px}.ng-start{display:flex;flex-direction:column;align-items:flex-start;margin:28px 0 0;gap:10px}.ng-free-label{display:block;font-family:var(--ng-round);font-weight:800;font-size:17px;color:#93432b}.ng-play{display:inline-flex;justify-content:center;align-items:center;gap:25px;min-height:64px;padding:15px 30px;border:2px solid #125561;border-radius:999px;background:#146b76;color:white!important;font:800 20px/1.5 var(--ng-round);box-shadow:0 5px 0 #125561;text-decoration:none!important;text-align:center}.ng-play:hover{background:#105b65}.ng-start small{font-size:11px;margin-top:7px;color:#476571}.ng-hero-copy .ng-scope{font-size:12px;margin:16px 0 0;color:#476571}.ng-hero-art{position:relative;padding:45px 25px 40px;min-width:0}.ng-mascot-disc{border-radius:50%;background:#fffdf1;border:2px solid #fff;box-shadow:0 16px 0 #c5e7f1;transform:rotate(-3deg);padding:35px 5px}.ng-mascot-disc>img{width:100%;transform:rotate(3deg)}.ng-hero-friend{position:absolute;background:white;border:2px solid #c7e2ed;border-radius:50%;padding:10px;width:110px;box-shadow:0 8px 0 #d5eaf1}.ng-friend-top{right:0;top:8px;transform:rotate(12deg)}.ng-friend-bottom{left:0;bottom:8px;transform:rotate(-12deg)}.ng-art-caption{position:absolute;right:15px;bottom:10px;transform:rotate(-5deg);padding:10px 22px;background:#ffde88;border-radius:20px;font:800 18px var(--ng-round);box-shadow:0 4px 0 #e7c05d}
.ng-section{padding-top:75px;padding-bottom:45px}.ng-section-head{text-align:center;margin-bottom:38px}.ng-section-head>p:last-child{font-size:14px}.ng-game-card{display:grid;grid-template-columns:1.1fr 1fr;gap:32px;align-items:center;padding:30px;background:white;border:2px solid #d2e7ed;border-radius:32px;box-shadow:0 12px 0 #dceff6}.ng-hero-media{margin:0;min-width:0}.ng-video-frame{aspect-ratio:16/9;position:relative;background:#e0f2fa;border-radius:18px;overflow:hidden}.ng-video-frame>img,.ng-video-frame>video{width:100%;height:100%;object-fit:contain;display:block}.ng-video-frame>video{position:absolute;inset:0}.ng-video-frame>video[hidden]{display:none}.ng-hero-media figcaption{padding:16px 3px 4px;font-size:12px;display:flex;flex-direction:column;align-items:flex-start;gap:9px}.ng-hero-media button{border:1px solid #97b9c4;color:#24576a;border-radius:999px;min-height:44px;padding:9px 14px;background:#f3fafc;font:inherit;cursor:pointer}.ng-hero-media button[hidden]{display:none}.ng-badge{display:inline-block;border-radius:999px;background:#fff0c0;padding:5px 13px;font-size:11px;font-weight:700}.ng-game-copy h2{font-size:clamp(24px,2.4vw,31px)}.ng-game-copy>p{font-size:14px}.ng-game-facts{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:6px;margin:20px 0 24px}.ng-game-facts li{font-size:11px;font-weight:700;background:#eaf6fa;padding:4px 9px;border-radius:7px}.ng-game-copy .ng-play{font-size:17px;min-height:58px;padding:12px 20px;gap:15px}.ng-main .ng-note{font-size:12px;line-height:1.8;color:#4e6873;margin-top:20px}.ng-howto{display:flex;align-items:center;gap:20px;max-width:900px;margin:32px auto 0;padding:18px}.ng-howto>img{width:100px;flex-shrink:0}.ng-howto h3{font-size:18px;margin:0 0 8px}.ng-howto p{font-size:13px;margin-bottom:8px}.ng-howto small{font-size:11px;color:#536e77}
.ng-character-section{background:#dff2fb;border-block:2px dashed #b9dce9;margin-top:20px}.ng-characters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.ng-characters figure{margin:0;background:#ffffffc9;border:2px solid #cce5ed;border-radius:28px;padding:20px 15px;text-align:center}.ng-characters figure>div{background:#edf8fc;border-radius:50%;max-width:180px;margin:auto}.ng-characters img{width:180px;height:180px;object-fit:contain;margin:auto}.ng-characters strong{display:block;font:800 19px var(--ng-round);margin:12px 0 7px}.ng-characters figcaption span{font-size:12px}.ng-center{text-align:center}
.ng-stamp-card{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center;background:#f5ffe8;border:2px solid #cfdfb9;border-radius:32px;padding:40px}.ng-stamp-label{display:inline-block;font-size:12px;background:#d6edbf;border-radius:999px;padding:5px 13px;font-weight:700;margin-bottom:18px}.ng-stamp-copy h2 span{color:#3c692a}.ng-stamp-copy p{font-size:14px}.ng-stamp-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:15px;background:#286d35;color:white;padding:15px 23px;border-radius:999px;font-size:15px;font-weight:700;min-height:54px}.ng-text-link{display:block;text-decoration:underline;text-underline-offset:5px;padding:12px 0;font-size:12px;min-height:44px}.ng-stamp-pictures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;padding:10px}.ng-stamp-pictures>span{background:white;border-radius:22px;padding:12px;box-shadow:0 6px 0 #dae7c8;transform:rotate(-6deg)}.ng-stamp-pictures>span:nth-child(2){transform:rotate(7deg);margin-top:28px}.ng-stamp-pictures>span:nth-child(3){grid-column:1/-1;width:50%;margin:-25px auto 0;transform:rotate(3deg)}.ng-stamp-pictures img{width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.ng-creator-section{background:#fffaf0}.ng-creator-grid{display:grid;grid-template-columns:.7fr 1.3fr;align-items:center;gap:60px}.ng-creator-art{text-align:center}.ng-creator-art>img{width:100%;max-width:320px;margin:auto}.ng-creator-art>span{display:block;font-weight:800;font-size:11px;letter-spacing:.12em;margin-top:18px}.ng-creator-grid p{font-size:14px}.ng-creator-grid .ng-creator-lead{font-weight:700;font-size:17px}.ng-creator-links{display:flex;gap:24px;flex-wrap:wrap}
.ng-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.ng-plans article{background:white;border:2px solid #d0e3e9;border-radius:23px;padding:26px}.ng-plans h3{font-size:21px;margin:15px 0}.ng-plans p{font-size:14px}.ng-plans small{font-size:12px}.ng-tag{font-size:11px;font-weight:700;display:inline-block;border-radius:999px;background:#eaf2f4;padding:3px 12px}.ng-faq{max-width:850px}.ng-faq details{background:white;border:1px solid #bfdde7;border-radius:16px;margin:12px 0;padding:0 22px}.ng-faq summary{font-size:15px;font-weight:700;cursor:pointer;padding:20px 0;min-height:60px}.ng-faq details>p{font-size:14px;margin:0 0 22px}.ng-faq details[open]{border-color:#146b76}.ng-connect{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;padding:35px;background:white;border:2px solid #d0e3e9;border-radius:28px}.ng-connect h2{font-size:29px}.ng-connect p{font-size:14px}.ng-links{display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:12px;min-width:0}.ng-links a{min-height:50px;padding:12px 16px;border:1px solid #aacbd5;border-radius:12px;text-decoration:underline;text-underline-offset:5px;font-size:13px;overflow-wrap:anywhere}.ng-last{text-align:center;margin-top:35px;padding:55px 0 65px;background:#d5eff9;border-top:2px dashed #a4cddd}.ng-last img{width:150px;margin:0 auto 15px}.ng-last h2{font-size:clamp(29px,3vw,40px);margin:18px 0 25px}.ng-last .ng-play{margin-bottom:28px}.ng-last p{font-size:14px}.ng-last small{font-size:12px}.ng-last .ng-free-label{font-size:15px}
.ng-site-footer{background:#284b53;color:#f0f8fa;padding:48px 0 22px}.ng-footer-grid{display:grid;grid-template-columns:1.1fr 1fr .9fr;gap:35px;align-items:start}.ng-footer-brand{display:flex;gap:12px;align-items:center}.ng-footer-brand img{width:70px;height:auto}.ng-footer-brand strong{font:800 16px/1.5 var(--ng-round)}.ng-footer-brand small{display:block;font-size:11px;margin-top:5px}.ng-footer-grid nav{display:grid;gap:7px}.ng-footer-grid a{font-size:13px}.ng-footer-grid nav a{min-height:36px}.ng-footer-grid>div>small,.ng-footer-grid>div>a{display:block}.ng-footer-grid>div>small{font-size:10px;color:#c9dfe5;margin-bottom:10px}.ng-footer-grid p{font-size:11px}.ng-site-footer .copyright{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:32px;font-size:10px}.ng-site-footer .footer-privacy-link{color:#f0f8fa}
@media(max-width:1100px){.ng-site-header .menu-toggle{display:grid;gap:4px;background:none;border:0;min-width:44px;min-height:44px;place-content:center;flex-shrink:0}.ng-site-header .menu-toggle span{width:28px;height:2px;background:#294b51}.ng-site-header .menu-toggle b{font-size:9px}.ng-site-header .site-nav{position:absolute;top:88px;left:0;right:0;display:none;background:#fff;padding:20px 28px;border-bottom:2px solid #c6e2eb}.ng-site-header .site-nav.open{display:flex}.ng-site-header .site-nav,.ng-site-header .site-nav ul{flex-direction:column;align-items:stretch;gap:8px}.ng-site-header .site-nav a{display:flex;align-items:center;min-height:44px;font-size:14px}.ng-site-header .site-nav .ng-header-play{justify-content:center}.ng-hero-grid{gap:20px}.ng-hero-art{padding:40px 20px}.ng-art-caption{font-size:15px}.ng-game-card{padding:24px;gap:24px}.ng-stamp-card{padding:30px;gap:25px}.ng-footer-grid{grid-template-columns:1fr 1fr}.ng-footer-grid>div{grid-column:1/-1}}
@media(max-width:850px){.ng-hero-grid{grid-template-columns:1.1fr .9fr}.ng-hero-copy h1{font-size:38px}.ng-hero-copy .ng-hero-lead{font-size:18px}.ng-hero-friend{width:80px}.ng-art-caption{font-size:12px;padding:9px 12px}.ng-game-card{grid-template-columns:1fr;max-width:700px;margin:auto}.ng-game-copy h2{font-size:29px}.ng-hero-media{width:100%}.ng-plans{grid-template-columns:1fr}.ng-plans article{padding:24px}.ng-plans h3 br{display:none}.ng-creator-grid{gap:30px;grid-template-columns:.6fr 1fr}.ng-connect{grid-template-columns:1fr;gap:15px}.ng-stamp-card{grid-template-columns:1fr 1fr;gap:15px;padding:25px}.ng-stamp-copy h2{font-size:27px}.ng-stamp-cta{font-size:13px;padding:14px 17px;gap:8px}.ng-characters{gap:15px}.ng-characters img{height:150px;width:150px}}
@media(max-width:600px){.ng-main .shell,.ng-site-header .shell,.ng-site-footer .shell{width:calc(100% - 36px)}.ng-site-header .header-inner{height:76px;gap:5px}.ng-site-header .site-nav{top:76px}.ng-site-header .ng-header-brand{gap:6px}.ng-site-header .ng-header-brand img{width:48px;height:48px}.ng-header-brand strong{font-size:15px}.ng-header-brand small{font-size:8px}.ng-breadcrumb{font-size:10px;padding-top:17px;gap:7px}.ng-hero{padding:26px 0 35px}.ng-hero-grid{grid-template-columns:1fr;gap:12px}.ng-hero-copy{text-align:center}.ng-hero-copy h1{font-size:43px;margin:12px 0 20px}.ng-origin{font-size:12px}.ng-eyebrow{font-size:9px}.ng-hero-copy .ng-hero-lead{font-size:19px}.ng-hero-copy>p:not([class]){font-size:13px;max-width:360px;margin:0 auto 16px}.ng-start{align-items:center;margin-top:24px}.ng-play{font-size:19px;min-height:60px;padding:14px 24px;gap:20px;max-width:100%}.ng-free-label{font-size:16px}.ng-start small{font-size:10px}.ng-hero-copy .ng-scope{font-size:11px;max-width:280px;margin:14px auto 0}.ng-hero-art{width:280px;margin:8px auto 0;padding:20px 25px 30px}.ng-mascot-disc{padding:20px 0}.ng-hero-friend{width:72px;padding:7px}.ng-art-caption{font-size:12px;bottom:6px;right:0}.ng-friend-top{top:0}.ng-friend-bottom{bottom:0}.ng-section{padding-top:50px;padding-bottom:30px}.ng-section-head{margin-bottom:25px}.ng-section-head>p:last-child{font-size:13px}.ng-main h2{font-size:27px}.ng-game-card{padding:16px;border-radius:24px;gap:23px}.ng-game-copy h2{font-size:25px}.ng-game-copy>p{font-size:13px}.ng-game-copy .ng-play{font-size:16px;width:100%;gap:8px;padding:12px}.ng-game-facts{gap:5px;margin:16px 0 23px}.ng-game-facts li{font-size:10px}.ng-badge{font-size:10px}.ng-video-frame{border-radius:12px}.ng-hero-media figcaption{font-size:11px}.ng-howto{gap:12px;padding:10px 0;margin-top:27px;align-items:flex-start}.ng-howto>img{width:65px}.ng-howto h3{font-size:16px}.ng-howto p{font-size:12px}.ng-howto small{font-size:10px}.ng-characters{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ng-characters figure{padding:14px 8px;border-radius:20px}.ng-characters img{width:125px;height:125px}.ng-characters strong{font-size:16px}.ng-characters figcaption span{font-size:11px;display:block;line-height:1.6}.ng-stamp-card{grid-template-columns:1fr;padding:25px 20px;gap:15px;border-radius:25px}.ng-stamp-copy h2{font-size:27px}.ng-stamp-cta{font-size:14px;max-width:100%;padding:14px 15px}.ng-stamp-pictures{max-width:290px;margin:auto;gap:12px}.ng-stamp-pictures>span{padding:9px}.ng-creator-grid{grid-template-columns:1fr;gap:25px}.ng-creator-art>img{width:190px}.ng-creator-art>span{margin-top:10px;font-size:10px}.ng-creator-grid .ng-creator-lead{font-size:16px}.ng-creator-grid p{font-size:13px}.ng-creator-links{gap:0;flex-direction:column;align-items:flex-start}.ng-plans{gap:15px}.ng-faq summary{font-size:14px}.ng-faq details{padding-inline:17px}.ng-faq details>p{font-size:13px}.ng-connect{padding:24px 20px;border-radius:24px}.ng-links a{font-size:12px}.ng-last{padding:40px 0 48px;margin-top:20px}.ng-last h2{font-size:30px}.ng-last p{font-size:13px}.ng-last small{font-size:10px}.ng-footer-grid{grid-template-columns:1fr;gap:25px}.ng-footer-grid>div{grid-column:auto}.ng-footer-grid nav{grid-template-columns:1fr 1fr;gap:10px}.ng-footer-grid nav a{font-size:11px}.ng-site-footer .copyright{gap:12px}.ng-main [id]{scroll-margin-top:95px}}
@media(prefers-reduced-motion:reduce){.ng-main *,.ng-site-header *{scroll-behavior:auto;animation:none;transition:none}}
