/* Scoped to the Japanese game-ad landing page. */
.vpgg-page #site-main{width:100%;max-width:none;margin:0;padding:0;float:none}
.vpgg-page #container{width:100%;max-width:none}
.vpgg-site{margin:0;background:#0b1020;color:#fff;font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.9;-webkit-text-size-adjust:100%}
.vpgg-site *{box-sizing:border-box}
.vpgg-site{overflow-x:clip}
.vpgg-site img{display:block;max-width:100%;height:auto}
.vpgg-site a{color:inherit;text-underline-offset:5px}
.vpgg-site a:hover{opacity:.88}
.vpgg-site h1,.vpgg-site h2,.vpgg-site h3,.vpgg-site p,.vpgg-site figure{padding:0;border:0;background:none;float:none;width:auto;text-align:left;clear:none}
.vpgg-site h1,.vpgg-site h2,.vpgg-site h3{font-family:inherit;color:inherit;font-weight:800}
.vpgg-site p{margin:0 0 22px}
.vpgg-site h2{font-size:clamp(28px,3.3vw,44px);line-height:1.65;letter-spacing:.01em;margin:0 0 25px}
.vpgg-site h3{font-size:23px;line-height:1.65;margin:0 0 18px}
.vpgg-site h2:before,.vpgg-site h3:before{content:none}
.vpgg-site section{scroll-margin-top:90px}
.vpgg-site ul{margin:20px 0 28px;padding-left:22px;list-style:disc}
.vpgg-site li{margin:7px 0;line-height:1.9}
.vpgg-site :focus-visible,.vpgg-skip:focus-visible{outline:3px solid #649e31;outline-offset:5px}
.vpgg-skip{position:absolute;top:-100px;left:20px;background:white;color:#0b1020;padding:12px;z-index:100000}
.vpgg-skip:focus{top:40px}
.vpgg-wrap{max-width:1200px;margin:0 auto;padding:0 32px}
.vpgg-header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:23px max(32px,calc((100% - 1136px)/2));background:#0b1020;border-bottom:1px solid #303748}
.vpgg-header nav{display:flex;align-items:center;gap:24px;font-size:12px;font-weight:700}
.vpgg-header nav>a{text-decoration:none}
.vpgg-site .vpgg-brand{display:flex;align-items:center;gap:10px;font-size:17px;line-height:1.5;font-weight:800;text-decoration:none;white-space:nowrap}
.vpgg-brand>span:first-child{display:grid;place-items:center;width:32px;height:36px;background:#b8f26b;color:#0b1020;font-size:24px;border-radius:7px}
.vpgg-brand small{display:block;font-size:8px;letter-spacing:1.6px;color:#aebacf}
.vpgg-site .vpgg-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:15px 23px;color:#0b1020;background:#b8f26b;border:1px solid #b8f26b;border-radius:7px;text-decoration:none;font-size:14px;font-weight:800;line-height:1.6;text-align:center}
.vpgg-site .vpgg-button--outline{background:transparent;border-color:#5b7047;color:#304b23}
.vpgg-kicker{color:#b8f26b;font-size:11px!important;letter-spacing:1.9px;font-weight:800;line-height:1.9!important;margin:0 0 18px!important}
.vpgg-hero{padding:25px 0 65px;background:radial-gradient(ellipse at 85% 20%,#202e3e 0,transparent 60%),#0b1020}
.vpgg-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:7px 12px;font-size:11px;color:#adb8ce;margin-bottom:38px}
.vpgg-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:50px;align-items:center}
.vpgg-hero h1{font-size:clamp(38px,4.4vw,61px);line-height:1.55;letter-spacing:-.015em;margin:0 0 22px;color:#fff}
.vpgg-hero h1 em{font-style:normal;color:#b8f26b}
.vpgg-tagline{font-size:23px;line-height:1.8;font-weight:700;color:#e7ecf4}
.vpgg-hero-copy>p:not(.vpgg-kicker):not(.vpgg-tagline){color:#b9c4d6;font-size:14px}
.vpgg-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin:30px 0}
.vpgg-text-link{font-size:13px;font-weight:700}
.vpgg-hero-tags{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.vpgg-hero-tags span{border:1px solid #374354;border-radius:5px;padding:7px 10px;font-size:11px;color:#dce5f2}
.vpgg-site .vpgg-micro{font-size:11px;line-height:1.8;color:#a9b6c9;margin:18px 0 0}
.vpgg-hero-media{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);grid-template-rows:auto auto;gap:15px;align-items:start;max-width:490px;margin-left:auto}
.vpgg-hero-film{grid-row:span 2;border:1px solid #485061;background:#171d2d;border-radius:16px;overflow:hidden;align-self:center}
.vpgg-hero-film video{display:block;width:100%;height:auto;aspect-ratio:9/16;background:#0b1020}
.vpgg-video-label{display:block;padding:12px 9px;font-size:10px;text-align:center;color:#e1e8f2}
.vpgg-hero-photo,.vpgg-hero-portrait{overflow:hidden;border-radius:11px;background:#171d2d;border:1px solid #3e4657;min-width:0}
.vpgg-hero-photo{margin-top:42px}
.vpgg-hero-photo img{aspect-ratio:4/3;object-fit:cover;width:100%}
.vpgg-hero-portrait img{aspect-ratio:1;object-fit:contain;background:#f3f3f3;width:100%}
.vpgg-hero-photo span,.vpgg-hero-portrait span{display:block;font-size:10px;text-align:center;padding:10px}
.vpgg-ticker{display:flex;justify-content:center;align-items:center;gap:38px;padding:19px 24px;background:#b8f26b;color:#0b1020;font-size:12px;font-weight:800;flex-wrap:wrap}
.vpgg-ticker i{font-style:normal}
.vpgg-section{padding:90px 0;background:#0b1020;color:#fff}
.vpgg-light{background:#f4f5f7;color:#171d2d}
.vpgg-light .vpgg-kicker{color:#52752f}
.vpgg-intro{max-width:780px;font-size:15px;color:#b9c4d6;margin-bottom:36px!important}
.vpgg-light .vpgg-intro{color:#596272}
.vpgg-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
.vpgg-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.vpgg-service-card{background:#fff;padding:36px;border:1px solid #dce1e6;border-radius:14px;color:#171d2d}
.vpgg-service-card p,.vpgg-service-card li{font-size:14px}
.vpgg-service-card h3{font-size:31px}
.vpgg-service-card>a{font-size:14px;font-weight:800;color:#304b23}
.vpgg-service-card--dark{background:#171d2d;color:#e6ebf4;border-color:#171d2d}
.vpgg-service-card--dark>a{color:#b8f26b}
.vpgg-number{font-size:11px!important;letter-spacing:2px;font-weight:800;color:#66913e;margin-bottom:22px!important}
.vpgg-service-card--dark .vpgg-number{color:#b8f26b}
.vpgg-localize{background:#171d2d;padding:65px 0;color:#e2e9f5}
.vpgg-localize h2{font-size:34px}
.vpgg-localize p{font-size:14px}
.vpgg-inline-steps{display:flex;gap:15px;flex-wrap:wrap;list-style:none;margin:24px 0;padding:0;counter-reset:step}
.vpgg-inline-steps li{counter-increment:step;font-size:11px;border:1px solid #434d60;border-radius:6px;padding:9px 11px}
.vpgg-inline-steps li:before{content:counter(step,decimal-leading-zero) " ";color:#b8f26b}
.vpgg-samples{gap:35px}
.vpgg-sample{display:grid;grid-template-columns:minmax(0,1fr);background:#171d2d;border:1px solid #384252;border-radius:16px;overflow:hidden}
.vpgg-player{width:min(100%,310px);margin:28px auto 0;border-radius:10px;overflow:hidden;background:#0b1020;aspect-ratio:9/16}
.vpgg-player video{display:block;width:100%;height:100%;object-fit:contain;background:#0b1020}
.vpgg-sample-copy{padding:25px 30px 30px}
.vpgg-sample-copy h3{font-size:21px}
.vpgg-sample-copy p{font-size:13px;color:#b9c4d6}
.vpgg-sample-copy>a{font-size:13px;color:#c9f4a0;font-weight:700}
.vpgg-badges{display:flex;gap:7px;flex-wrap:wrap}
.vpgg-badges span{padding:5px 8px;border-radius:4px;background:#2e3b35;font-size:10px;color:#d7f3bc}
.vpgg-site .vpgg-note{font-size:12px;line-height:1.9;color:#a8b6c9;margin:24px 0}
.vpgg-light .vpgg-note{color:#596272}
.vpgg-talents{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:17px;margin:36px 0 20px}
.vpgg-talents figure{margin:0;overflow:hidden;border-radius:11px;border:1px solid #dce1e6;background:white}
.vpgg-talents img{aspect-ratio:1;width:100%;object-fit:contain}
.vpgg-talents figcaption{padding:14px;text-align:center;font-size:13px;font-weight:800}
.vpgg-location-grid article{border:1px solid #374355;border-radius:13px;overflow:hidden;background:#171d2d}
.vpgg-location-grid img{width:100%;aspect-ratio:3/2;object-fit:cover}
.vpgg-location-grid article>div{padding:24px}
.vpgg-location-grid h3{font-size:21px}
.vpgg-location-grid p{font-size:13px;color:#b9c4d6}
.vpgg-concepts article{border:1px solid #dce1e6;border-radius:12px;overflow:hidden;background:#fff}
.vpgg-concepts img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#e9ecef}
.vpgg-concepts article>div{padding:24px}
.vpgg-concepts span{font-size:10px;color:#52752f;font-weight:700}
.vpgg-concepts h3{font-size:21px;margin-top:12px}
.vpgg-concepts p{font-size:13px;color:#596272}
.vpgg-variation{border:1px solid #d2dcc7;border-left:4px solid #8db956;border-radius:8px;padding:28px;margin:32px 0;background:#fff}
.vpgg-variation h3{font-size:22px}
.vpgg-variation p{font-size:14px;color:#596272}
.vpgg-variation a{font-size:13px;color:#345321;font-weight:800}
.vpgg-extra{border-top:1px solid #d8dfe6;margin-top:35px;padding-top:20px}
.vpgg-extra>summary{font-size:15px;cursor:pointer;font-weight:800;padding:12px 0}
.vpgg-small-sample{padding:20px;border:1px solid #d8dfe6;border-radius:12px;background:#fff;margin-top:22px}
.vpgg-small-sample .vpgg-player{max-width:240px;margin:0 auto 25px}
.vpgg-small-sample h3{font-size:19px}
.vpgg-small-sample p{font-size:13px;color:#596272}
.vpgg-plan-grid article{padding:30px 25px;border:1px solid #3c485c;background:#171d2d;border-radius:13px}
.vpgg-plan-grid span{font-size:10px;letter-spacing:1.5px;color:#b8f26b;font-weight:700}
.vpgg-plan-grid h3{font-size:24px;margin-top:17px}
.vpgg-plan-price{font-size:19px;font-weight:800;color:#d8f7ba}
.vpgg-plan-grid article>p:not(.vpgg-plan-price){font-size:13px;color:#b9c4d6}
.vpgg-plan-grid a{font-size:12px;font-weight:700;color:#d8f7ba}
.vpgg-plan-grid .vpgg-plan-featured{border-color:#b8f26b}
.vpgg-free{display:grid;grid-template-columns:1.1fr 1fr;gap:35px;background:#b8f26b;color:#0b1020;padding:35px;border-radius:14px;margin-top:30px}
.vpgg-free .vpgg-kicker{color:#375321}
.vpgg-free h3{font-size:23px}
.vpgg-free p,.vpgg-free li{font-size:13px}
.vpgg-free ul{margin-top:0}
.vpgg-free a{font-size:13px;font-weight:800}
.vpgg-payment{border-top:1px solid #374355;padding-top:28px;margin-top:30px}
.vpgg-payment h3{font-size:19px}
.vpgg-payment p{font-size:14px;color:#b9c4d6}
.vpgg-process{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px;margin-top:35px}
.vpgg-process article{border-top:1px solid #cbd3dc;padding-top:20px}
.vpgg-process span{font-size:30px;color:#709e3d;font-weight:800}
.vpgg-process h3{font-size:18px;margin:17px 0}
.vpgg-process p{font-size:13px;color:#596272}
.vpgg-brief-box{background:#171d2d;border:1px solid #3b475a;padding:28px;border-radius:12px}
.vpgg-brief-box button{font-family:inherit;background:#b8f26b;color:#0b1020;border:0;border-radius:6px;padding:12px 20px;cursor:pointer;font-size:13px;font-weight:700}
.vpgg-brief-box [hidden]{display:none}
.vpgg-brief-box pre{font-family:inherit;white-space:pre-wrap;overflow-wrap:anywhere;background:none;border:0;color:#e0e7f2;font-size:13px;line-height:2;margin:20px 0 0;padding:0}
.vpgg-brief-box [role=status]{font-size:12px;color:#b8f26b;margin:12px 0 0}
.vpgg-faq{max-width:920px}
.vpgg-faq details{border-top:1px solid #d3dae1;padding:19px 0}
.vpgg-faq details:last-child{border-bottom:1px solid #d3dae1}
.vpgg-faq summary{cursor:pointer;list-style:none;font-weight:800;font-size:15px;display:flex;justify-content:space-between;gap:20px;line-height:1.9}
.vpgg-faq summary::-webkit-details-marker{display:none}
.vpgg-faq summary:after{content:"+";font-size:20px;color:#52752f;flex:none}
.vpgg-faq details[open] summary:after{content:"−"}
.vpgg-faq details p{font-size:14px;color:#596272;padding:20px 20px 0 0;margin-bottom:4px}
.vpgg-final{padding:90px 0;text-align:center;background:radial-gradient(ellipse at 50% 0,#24312c,transparent 70%),#0b1020}
.vpgg-final h2,.vpgg-final p{text-align:center}
.vpgg-final p{color:#b9c4d6;font-size:15px}
.vpgg-final .vpgg-kicker{color:#b8f26b}
.vpgg-final-links{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;font-size:11px;color:#b9c4d6;margin-top:35px}
.vpgg-footer{display:flex;justify-content:space-between;align-items:start;gap:28px;flex-wrap:wrap;border-top:1px solid #303748;padding:40px max(32px,calc((100% - 1136px)/2));background:#0b1020;color:#aab7ca}
.vpgg-footer nav{display:flex;gap:12px 22px;flex-wrap:wrap;max-width:500px;font-size:11px}
.vpgg-footer p{font-size:10px;margin:0}
@media(max-width:1000px){.vpgg-header{padding:20px 26px}.vpgg-header nav{gap:14px}.vpgg-header nav>a:not(.vpgg-button){display:none}.vpgg-hero-grid{gap:30px}.vpgg-hero h1{font-size:43px}.vpgg-tagline{font-size:21px}.vpgg-hero-media{gap:10px}.vpgg-location-grid{gap:15px}.vpgg-three{gap:15px}.vpgg-service-card{padding:28px}.vpgg-talents{gap:12px}.vpgg-free{gap:25px;padding:28px}}
@media(max-width:760px){.vpgg-hero-grid{grid-template-columns:1fr}.vpgg-hero-media{width:100%;max-width:440px;margin:12px auto 0}.vpgg-hero h1{font-size:clamp(35px,6.4vw,48px)}.vpgg-two{grid-template-columns:1fr;gap:22px}.vpgg-three{grid-template-columns:1fr}.vpgg-location-grid{grid-template-columns:1fr}.vpgg-location-grid article{display:grid;grid-template-columns:1fr 1fr;align-items:center}.vpgg-location-grid img{height:100%;object-fit:cover}.vpgg-talents{grid-template-columns:repeat(3,minmax(0,1fr))}.vpgg-samples{grid-template-columns:1fr 1fr;gap:18px}.vpgg-sample .vpgg-player{width:calc(100% - 30px);margin-top:15px}.vpgg-sample-copy{padding:20px}.vpgg-sample-copy h3{font-size:19px}.vpgg-concepts{grid-template-columns:1fr 1fr}.vpgg-process{grid-template-columns:1fr 1fr}.vpgg-free{grid-template-columns:1fr}.vpgg-localize h2{font-size:30px}.vpgg-section{padding:65px 0}}
@media(max-width:480px){.vpgg-wrap{padding:0 22px}.vpgg-header{padding:18px 20px;gap:10px}.vpgg-header .vpgg-button{font-size:11px;padding:11px 13px;min-height:42px}.vpgg-site .vpgg-brand{font-size:13px;gap:7px}.vpgg-brand>span:first-child{width:27px;height:31px;font-size:21px}.vpgg-brand small{font-size:6px;letter-spacing:1px}.vpgg-hero{padding:20px 0 45px}.vpgg-breadcrumb{font-size:9px;gap:5px 8px;margin-bottom:25px}.vpgg-hero h1{font-size:36px;line-height:1.6}.vpgg-tagline{font-size:20px}.vpgg-hero-copy>p:not(.vpgg-kicker):not(.vpgg-tagline){font-size:13px}.vpgg-actions{gap:18px}.vpgg-hero-tags{gap:6px}.vpgg-hero-tags span{font-size:10px}.vpgg-ticker{gap:12px;font-size:10px;padding:16px}.vpgg-ticker i{font-size:10px}.vpgg-site h2{font-size:28px}.vpgg-section{padding:53px 0}.vpgg-intro{font-size:14px}.vpgg-service-card{padding:26px}.vpgg-service-card h3{font-size:28px}.vpgg-localize{padding:45px 0}.vpgg-localize h2{font-size:28px}.vpgg-samples{grid-template-columns:1fr}.vpgg-sample .vpgg-player{max-width:270px;width:calc(100% - 50px);margin-top:25px}.vpgg-sample-copy{padding:25px}.vpgg-talents{grid-template-columns:1fr 1fr;gap:13px}.vpgg-talents figcaption{padding:10px}.vpgg-location-grid article{display:block}.vpgg-location-grid img{height:auto}.vpgg-concepts{grid-template-columns:1fr}.vpgg-concepts img{aspect-ratio:4/3;max-height:260px}.vpgg-variation{padding:23px}.vpgg-variation h3{font-size:20px}.vpgg-free{padding:25px;gap:12px}.vpgg-process{gap:20px}.vpgg-process h3{font-size:17px}.vpgg-brief-box{padding:23px}.vpgg-faq summary{font-size:14px}.vpgg-faq details p{font-size:13px}.vpgg-final{padding:60px 0}.vpgg-final p{font-size:13px}.vpgg-final .vpgg-button{font-size:12px;padding:16px}.vpgg-footer{padding:30px 22px}.vpgg-footer nav{gap:10px 18px}.vpgg-footer p{width:100%}}
@media(prefers-reduced-motion:reduce){.vpgg-site *{scroll-behavior:auto!important}}
/* Keep the shared inquiry panel within the content viewport (not 100vw). */
.vpgg-page .FOOTER_page_inq .inq{width:100%;left:auto;right:auto;transform:none}
@media(max-width:780px){
 .vpgg-page{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}
 .vpgg-page .FOOTER_page_inq .inq>.flex,.vpgg-page .FOOTER_page_inq .inq>p{width:100%;max-width:100%;box-sizing:border-box}
 /* Reuse the actual three shared links in a compact bottom bar so they do not
    obscure lines of body copy or the video controls at the right edge. */
 .vpgg-page #side_info{display:flex;align-items:stretch;top:auto;bottom:0;left:0;right:0;width:100%;margin:0;padding:0 0 env(safe-area-inset-bottom,0px);background:#111}
 .vpgg-page #side_info>li{box-sizing:border-box;width:auto;min-width:0;float:none;margin:0;padding:0;flex:1}
 .vpgg-page #side_info>li.smanone{display:none}
 .vpgg-page #side_info>li.s-red{flex:2}
 .vpgg-page #side_info>li>a{box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:6px;min-height:62px;width:100%;padding:8px;font-size:12px;line-height:1.5}
 .vpgg-page #side_info>li.s-red br{display:none}
 .vpgg-page #side_info>li>a img{object-fit:contain;flex-shrink:0}
}
