
[data-if][hidden]{display:none !important}
body{margin:0}
a{color:#0b0b0d}a:hover{color:#E40100}
.jp{font-family:"Noto Sans JP","Hiragino Sans",Meiryo,sans-serif}
.os{font-family:Oswald,"Arial Narrow","Noto Sans JP",sans-serif}
.ar{font-family:Archivo,"Noto Sans JP",system-ui,sans-serif}
a:focus-visible,button:focus-visible{outline:3px solid #005fcc;outline-offset:3px;box-shadow:0 0 0 3px #fff}
@keyframes pa-stamp{0%{opacity:0;transform:scale(1.6) rotate(-6deg)}60%{opacity:1;transform:scale(.96) rotate(1deg)}100%{opacity:1;transform:none}}
.pa-stamp{display:inline-block;animation:pa-stamp 400ms cubic-bezier(0.2,0,0,1) both}
@keyframes pa-spin{to{transform:rotate(360deg)}}
.pa-lines{animation:pa-spin 120s linear infinite}
@keyframes pa-float{0%,100%{transform:rotate(2.5deg) translateY(0)}50%{transform:rotate(1.5deg) translateY(-10px)}}
.pa-cover{animation:pa-float 6s ease-in-out infinite}
@keyframes pa-tick{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.pa-ticker{animation:pa-tick 40s linear infinite}
.pa-ticker-wrap:hover .pa-ticker{animation-play-state:paused}
@keyframes pa-blink{50%{opacity:.25}}
.pa-colon{animation:pa-blink 1s steps(1) infinite}
.pa-card{transition:transform 160ms cubic-bezier(0.2,0,0,1),box-shadow 160ms cubic-bezier(0.2,0,0,1)}
.pa-card:hover{transform:translate(-4px,-4px) rotate(-1deg);box-shadow:10px 10px 0 #E40100}
.pa-light{background:#ffffff;color:#0b0b0d}
.pa-light .pa-sub{color:#626975}
.pa-dark{background:#0b0b0d;color:#ffffff}
.pa-dark .pa-sub{color:#c9ccd2}
.pa-tjp{font-family:"Noto Sans JP",sans-serif;font-weight:900;font-size:24px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pa-ten{font-family:Oswald,sans-serif;font-weight:700;font-size:26px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pa-1l{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@keyframes pa-fade{from{opacity:0}to{opacity:1}}
@keyframes pa-pop{from{opacity:0;transform:scale(.9) rotate(-2deg)}to{opacity:1;transform:none}}
.pa-ov{animation:pa-fade 240ms cubic-bezier(0.2,0,0,1) both}
.pa-dlg{animation:pa-pop 400ms cubic-bezier(0.2,0,0,1) both}
@media (prefers-reduced-motion:reduce){.pa-ov,.pa-dlg{animation:none !important}}
@keyframes pa-rise{from{opacity:0;transform:translateY(48px)}to{opacity:1;transform:none}}
@keyframes pa-wipe{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@supports (animation-timeline: view()){
.pa-rv{animation:pa-rise linear both;animation-timeline:view();animation-range:entry 0% entry 45%}
.pa-wipe{animation:pa-wipe linear both;animation-timeline:view();animation-range:entry 10% entry 50%}
}
@media (prefers-reduced-motion:reduce){
.pa-stamp,.pa-lines,.pa-cover,.pa-ticker,.pa-colon,.pa-rv,.pa-wipe{animation:none !important}
.pa-cover{transform:rotate(2.5deg)}
.pa-card,.pa-card:hover{transition:none;transform:none}
}
@media (max-width:1199px){.pa-grid4{grid-template-columns:repeat(2,minmax(0,1fr)) !important}.pa-grid3{grid-template-columns:repeat(1,minmax(0,1fr)) !important}}
@media (max-width:767px){.pa-nav{display:none !important}.pa-grid4{grid-template-columns:repeat(1,minmax(0,1fr)) !important}.pa-shots{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:8px !important}.pa-sec{padding-top:64px !important}}


[data-if][hidden]{display:none !important}
body{margin:0}
a{color:#0b0b0d}
.jp{font-family:"Noto Sans JP","Hiragino Sans",Meiryo,sans-serif}
.os{font-family:Oswald,"Arial Narrow","Noto Sans JP",sans-serif}
.ar{font-family:Archivo,"Noto Sans JP",system-ui,sans-serif}
a:focus-visible,button:focus-visible{outline:3px solid #005fcc;outline-offset:3px;box-shadow:0 0 0 3px #fff}
@keyframes ma-stamp{0%{opacity:0;transform:scale(1.6) rotate(-6deg)}60%{opacity:1;transform:scale(.96) rotate(1deg)}100%{opacity:1;transform:none}}
.ma-stamp{display:inline-block;animation:ma-stamp 400ms cubic-bezier(0.2,0,0,1) both}
@keyframes ma-tick{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.ma-ticker{animation:ma-tick 30s linear infinite}
@keyframes ma-up{from{transform:translateY(100%)}to{transform:none}}
.ma-bar{animation:ma-up 400ms cubic-bezier(0.2,0,0,1) 800ms both}
@keyframes ma-menu{from{clip-path:circle(0 at calc(100% - 42px) 38px)}to{clip-path:circle(150% at calc(100% - 42px) 38px)}}
.ma-menu{animation:ma-menu 400ms cubic-bezier(0.2,0,0,1) both}
.ma-card:active{transform:translate(2px,2px);box-shadow:2px 2px 0 #E40100 !important}
@keyframes ma-fade{from{opacity:0}to{opacity:1}}
@keyframes ma-pop{from{opacity:0;transform:scale(.9) rotate(-2deg)}to{opacity:1;transform:none}}
.ma-ov{animation:ma-fade 240ms cubic-bezier(0.2,0,0,1) both}
.ma-dlg{animation:ma-pop 400ms cubic-bezier(0.2,0,0,1) both}
@media (prefers-reduced-motion:reduce){.ma-ov,.ma-dlg{animation:none !important}}
@keyframes ma-rise{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:none}}
@supports (animation-timeline: view()){.ma-rv{animation:ma-rise linear both;animation-timeline:view();animation-range:entry 0% entry 40%}}
@media (prefers-reduced-motion:reduce){.ma-stamp,.ma-ticker,.ma-bar,.ma-menu,.ma-rv{animation:none !important}}

html{scroll-padding-top:96px} [hidden]{display:none!important}
.ma-ticker:hover{animation-play-state:paused}
@media(max-width:767px){html{scroll-padding-top:84px}.ma-bar{position:fixed!important;left:0;right:0;margin-top:0!important;padding-bottom:max(20px,env(safe-area-inset-bottom))!important}.ma-ov{z-index:30!important}.ma-dlg{z-index:31!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* clip overflow without making the page wrapper a scroll container: sticky
   navigation follows the viewport on both supplied layouts. */
#app > .jp{overflow:clip!important}
.feature-panel + .feature-panel{margin-top:40px}
.feature-title{font-size:clamp(28px,4.2vw,56px)!important;line-height:1.3!important;overflow-wrap:anywhere}
[data-cover-info] [data-featured="name"]{font-size:clamp(24px,3vw,34px)!important;line-height:1.3!important;overflow-wrap:anywhere}
.feature-actions{display:flex;gap:12px;flex-wrap:wrap}
.game-action{display:inline-flex;align-items:center;justify-content:center;min-height:52px;box-sizing:border-box;padding:12px 24px;border:2px solid #0b0b0d;border-radius:999px;background:#0b0b0d;color:#fff;font:700 15px/1.5 "Noto Sans JP",sans-serif;text-decoration:none;cursor:pointer}
.game-action-secondary{background:#fff;color:#0b0b0d}
.game-action:hover{background:#E40100;color:#fff}
[role="timer"] small{display:block;font-size:12px;line-height:1.7}
@media(max-width:767px){.feature-panel + .feature-panel{margin-top:12px}.game-action{width:100%}[data-cover-info] [data-featured="name"]{font-size:28px!important}}
.feature-kv-image{display:block;width:100%;aspect-ratio:4/3;max-height:420px;object-fit:contain;box-sizing:border-box;border:3px solid #0b0b0d;background:#f3f3f5}
.cover-key-visuals{min-height:0;overflow:hidden;gap:3px}
.cover-key-visuals img{display:block;width:100%;height:100%;min-width:0;min-height:0;max-height:260px;object-fit:contain}
/* Present one complete gameplay sequence on the cover without letterboxing. */
.lp-cover-preview .pa-cover>div{aspect-ratio:auto!important}
.lp-cover-preview .cover-key-visuals{height:auto!important;flex:none!important;display:block!important;background:#0b0b0d!important}
.lp-cover-preview .cover-key-visuals img{height:auto!important;max-height:none;object-fit:contain}
.feature-gameplay{min-width:0;overflow:visible!important}
.gameplay-label{margin:0 0 16px;padding-left:12px;border-left:5px solid #E40100;font-size:18px;font-weight:700;letter-spacing:.12em}
.gameplay-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start;min-width:0}
.gameplay-frame{min-width:0;margin:0}
.gameplay-frame img{display:block;width:100%;height:auto;box-sizing:border-box;border:3px solid #0b0b0d;border-radius:12px;background:#0b0b0d}
.gameplay-frame figcaption{display:flex;align-items:baseline;gap:6px;margin-top:12px;font-size:12px;font-weight:700;line-height:1.6}
.gameplay-frame figcaption .os{flex:none;color:#E40100;font-size:22px}
.gameplay-hint{display:none;margin:12px 0 0;color:#626975;font-size:12px;line-height:1.6}
@media(max-width:767px){.gameplay-gallery{display:flex;gap:12px;overflow-x:auto;padding:0 4px 8px 0;scroll-snap-type:x mandatory;overscroll-behavior-x:contain}.gameplay-frame{flex:0 0 clamp(140px,44vw,180px);scroll-snap-align:start}.gameplay-hint{display:block}.gameplay-frame figcaption{font-size:12px}}
/* App icons, store buttons and "???" thumbnails */
.game-app-icon{flex:none;display:block;box-sizing:border-box;border:2px solid #0b0b0d;border-radius:22%;background:#fff;object-fit:cover}
.game-title-row{display:flex;align-items:center;gap:14px;min-width:0}
.game-title-row>:last-child{min-width:0}
.game-card-title{display:flex;align-items:center;gap:8px;min-width:0}
.game-card-title>span{min-width:0}
.game-card-title .game-app-icon{border-width:1px}
.game-card-mystery{background:rgba(128,128,128,.12)}
.store-links{display:flex;flex-wrap:wrap;gap:12px}
.store-link{gap:10px;padding:8px 22px;text-align:left;line-height:1.2}
.store-link small{display:block;font-size:10px;font-weight:700;letter-spacing:.04em;opacity:.8}
.store-link span{font-family:Archivo,"Noto Sans JP",sans-serif;font-size:16px;font-weight:700;white-space:nowrap}
@media(max-width:767px){.store-links .store-link{flex:1 1 0;min-width:0;padding:8px 12px;gap:8px}.store-link span{font-size:15px}}
