/* 375px swipe correction. Existing desktop layout and scene transitions remain. */
.swipe-page-name{display:none}
.swipe-menu-panel{display:none}
@media(max-width:760px){
 html.swipe-mobile{--swipe-height:100svh;--swipe-header:64px}
 @supports(height:100dvh){html.swipe-mobile{--swipe-height:100dvh}}
 html.swipe-mobile,html.swipe-mobile body{height:var(--swipe-height)!important;overflow:hidden!important}
 .swipe-mobile header{height:calc(64px + env(safe-area-inset-top,0px))!important;padding:env(safe-area-inset-top,0px) 14px 0!important;inset:0 0 auto!important;position:fixed!important;z-index:120;background:#080808}
 .swipe-mobile header .brand{font-size:21px!important}
 .swipe-mobile header #menu{margin-left:auto;min-width:48px;min-height:44px;font-size:21px;padding:6px!important;position:relative;z-index:125}
 .swipe-mobile header #motion{position:relative!important;inset:auto!important;font-size:9px!important;width:76px;min-height:42px;margin:0!important;padding:5px!important;z-index:125}
 .swipe-mobile header>.header-contact{display:none!important}
 .swipe-mobile :is(#stage,#web-stage){height:var(--swipe-height)!important;min-height:0!important;overflow:hidden!important}
 .swipe-mobile :is(#stage,#web-stage)>.scene{height:var(--swipe-height)!important;min-height:0!important;max-height:var(--swipe-height)!important;padding-top:calc(var(--swipe-header) + 10px)!important;padding-bottom:48px!important;overflow:hidden!important;touch-action:pan-x}
 .swipe-mobile .mobile-contact-bar{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(100%);transition:opacity .2s,transform .2s;z-index:130}
 .swipe-mobile.cta-visible .mobile-contact-bar{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
 .swipe-mobile .controls{bottom:10px!important;right:14px!important;z-index:90}
 .swipe-mobile .controls button{width:36px!important;height:36px!important}
 .swipe-mobile header nav[aria-label="グローバルメニュー"].open{display:grid!important;position:fixed!important;inset:var(--swipe-header) 0 0!important;height:auto!important;max-height:none!important;overflow:hidden!important;background:#080808;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-content:start!important;align-items:stretch!important;gap:4px 12px!important;padding:10px 16px 14px!important;margin:0!important;z-index:122}
 .swipe-mobile header nav[aria-label="グローバルメニュー"].open a{display:flex!important;align-items:center;min-height:44px!important;padding:7px 8px!important;margin:0!important;font-size:14px!important;line-height:1.35!important;border-bottom:1px solid #594a2c;white-space:normal!important;color:#fff}
 .swipe-mobile header nav.open .service-dropdown,.swipe-mobile header nav.open .service-submenu{display:contents!important}
 .swipe-mobile header nav.open .service-dropdown>summary{display:none!important}
 .swipe-mobile header nav.open a[aria-current="page"]{color:#edcd87!important;background:#221c11;text-decoration:underline;text-underline-offset:4px}
 .swipe-mobile .swipe-page-name{display:block;font-size:24px!important;line-height:1.15!important;color:#ddbf7a;font-weight:650;margin:0 0 6px!important}
 .swipe-mobile .scene.swipe-compact{gap:6px!important;justify-content:flex-start!important}
 .swipe-mobile .scene.swipe-compact .comp-content{align-self:stretch!important;min-height:0!important}
 .swipe-mobile .scene.swipe-compact .comp-content{gap:7px!important}
 .swipe-mobile .scene.swipe-compact :is(p,li,blockquote,dd,dt){font-size:12px!important;line-height:1.45!important;margin-block:4px!important}
 .swipe-mobile .scene.swipe-compact h1{font-size:26px!important;line-height:1.22!important;margin-block:3px!important}
 .swipe-mobile .scene.swipe-compact h2{font-size:23px!important;line-height:1.25!important;margin-block:4px!important}
 .swipe-mobile .scene.swipe-compact h3{font-size:15px!important;line-height:1.3!important;margin-block:4px!important}
 .swipe-mobile .scene.swipe-compact .eyebrow{font-size:8px!important;line-height:1.2!important;margin-block:3px!important}
 .swipe-mobile .scene.swipe-compact :is(.actor-scene,.comp-team,.comp-robot,.owner-profile-art,.v3-art,.actual-stage,.actual-collage){height:90px!important;max-height:90px!important;margin-block:4px!important}
 .swipe-mobile .scene.swipe-compact :is(.v3-real img,.comp-image img){max-height:100px!important;object-fit:contain}
 .swipe-mobile .scene.swipe-compact .office{height:155px!important;min-height:0!important}
 .swipe-mobile .scene.swipe-compact .hero-copy{gap:7px!important}
 .swipe-mobile .scene.swipe-compact .final-actions{margin-block:5px!important;gap:6px!important}
 .swipe-mobile .scene.swipe-compact .final-actions>a{min-height:38px!important;padding:6px!important;font-size:12px!important}
 .swipe-mobile .scene.swipe-compact .site-footer{margin-top:5px!important;padding-block:5px!important;line-height:1.3!important}
 .swipe-mobile .scene.swipe-compact .site-footer nav{margin-block:4px!important;gap:5px 10px!important}
 .swipe-mobile .scene.swipe-compact .site-footer a{font-size:9px!important;line-height:1.3!important}
 .swipe-mobile .scene.swipe-compact .site-footer .brand{font-size:16px!important}
 .swipe-mobile .scene.swipe-compact .price{font-size:28px!important}
 .swipe-mobile .scene.swipe-compact .screen-window{height:105px!important}
 .swipe-mobile .scene.swipe-compact :is(.portfolio-card,.spotlight-card){padding:10px!important}
 .swipe-mobile .scene.swipe-compact :is(.next-cta,.web-crumb){bottom:46px!important}
 .swipe-mobile .scene.swipe-compact .consult-form{gap:5px!important}
 .swipe-mobile .scene.swipe-compact .consult-form :is(input,select){min-height:32px!important;padding:5px!important;font-size:16px!important}
 .swipe-mobile .scene.swipe-compact .consult-form textarea{min-height:58px!important;height:58px!important;padding:5px!important;font-size:16px!important}
 .swipe-mobile .scene.swipe-compact .company-service-card{padding:5px!important;min-height:0!important}
 .swipe-mobile .scene.swipe-compact .company-service-card img{height:38px!important}
 .swipe-mobile .scene.swipe-dense :is(.actor-scene,.comp-team,.owner-profile-art,.v3-art,.actual-stage,.actual-collage){height:55px!important;max-height:55px!important}
 .swipe-mobile .scene.swipe-dense :is(p,li,blockquote){font-size:11px!important;line-height:1.35!important}
 .swipe-mobile .scene.swipe-dense h2{font-size:21px!important}
 .swipe-mobile .scene.swipe-dense .company-service-card{font-size:10px!important;padding:3px!important}
 .swipe-mobile .scene.swipe-dense .company-service-card :is(p,li){font-size:10px!important;line-height:1.3!important}
 .swipe-mobile .scene.swipe-dense .company-service-card img{height:30px!important}
 .swipe-mobile .scene.swipe-dense .site-footer .footer-contact a{min-height:22px!important;padding:3px!important;font-size:8px!important}
 .swipe-mobile .scene.swipe-dense .site-footer .footer-services{font-size:8px!important}
 .swipe-mobile .privacy-runtime .scene{position:absolute!important;visibility:hidden!important;opacity:0!important;transform:translateY(14px)!important}
 .swipe-mobile .privacy-runtime .scene.active{visibility:visible!important;opacity:1!important;transform:none!important}
 .swipe-mobile .privacy-runtime .comp-content{position:relative!important;inset:auto!important;display:flex!important;flex-direction:column;gap:6px!important;width:100%!important;height:auto!important;max-height:none!important;overflow:visible!important}
 .swipe-mobile .privacy-runtime .scene{justify-content:flex-start!important;padding-inline:16px!important}
 .swipe-mobile .privacy-runtime .comp-content p{font-size:12px!important;line-height:1.5!important;margin:3px 0!important}
 .swipe-mobile .privacy-runtime .comp-content h2{font-size:20px!important;line-height:1.3!important;margin:6px 0!important}
 .swipe-mobile .privacy-runtime .comp-content .v3-art{height:75px!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene .swipe-page-name{font-size:22px!important;line-height:1.15!important;margin:0 0 5px!important}
 .swipe-mobile .scene.swipe-compact :is(.actor-scene,.v3-art,.actual-stage,.owner-profile-art)>:is(img,svg){width:100%!important;height:100%!important;object-fit:contain!important}
 .swipe-mobile .scene.swipe-compact>.eyebrow{position:relative!important;inset:auto!important}
 .swipe-mobile .scene.swipe-compact .film-label{bottom:58px!important}
 .swipe-mobile .scene.swipe-compact .actual-service-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
 .swipe-mobile .scene.swipe-compact .actual-service-grid>.card{display:grid!important;grid-template-columns:30px minmax(0,1fr)!important;grid-template-rows:auto!important;min-height:0!important;padding:5px!important;gap:3px!important;align-content:start!important}
 .swipe-mobile .scene.swipe-compact .actual-service-grid>.card>*{grid-row:auto!important;grid-column:2!important;position:static!important;margin:0!important;min-width:0!important}
 .swipe-mobile .scene.swipe-compact .actual-service-grid>.card h3{font-size:12px!important;line-height:1.3!important}
 .swipe-mobile .scene.swipe-compact .actual-service-grid>.card p{font-size:9px!important;line-height:1.3!important}
 .swipe-mobile .scene.swipe-compact .actual-service-grid>.card .service-art{grid-column:1!important;grid-row:1/5!important;width:30px!important;height:35px!important}
 .swipe-mobile .scene.swipe-compact .actual-service-grid>.card .service-art img{width:30px!important;height:35px!important;object-fit:contain}
 .swipe-mobile .scene.swipe-compact .actual-service-grid>.card :is(button,a){font-size:9px!important;padding:3px!important;min-height:23px!important}
 .swipe-mobile .privacy-runtime .scene>.eyebrow{position:static!important;margin:0 0 5px!important;font-size:9px!important}
 .swipe-mobile .privacy-runtime .comp-content h1{font-size:25px!important;line-height:1.2!important}
 .swipe-mobile .privacy-runtime .comp-content .card{padding:10px!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact :is(p,li,blockquote){font-size:12px!important;line-height:1.4!important;margin-block:3px!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-dense :is(p,li,blockquote){font-size:11px!important;line-height:1.3!important;margin-block:3px!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact h1{font-size:25px!important;line-height:1.2!important;margin-block:3px!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact h2{font-size:22px!important;line-height:1.2!important;margin-block:3px!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact .eyebrow{font-size:8px!important;line-height:1.2!important;margin-block:2px!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene .swipe-page-name{font-size:22px!important;line-height:1.15!important;margin-block:0 5px!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact .film-label{padding-block:3px!important;line-height:1.3!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-dense .actual-collage{height:50px!important;max-height:50px!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact .actual-service-grid>.card p{font-size:9px!important;line-height:1.3!important;margin:0!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact .portfolio-stats{gap:6px!important;margin:3px 0!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact .portfolio-stats p{font-size:9px!important;line-height:1.2!important;margin:0!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact .portfolio-stats strong{font-size:24px!important;line-height:1.1!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact .portfolio-toolbar{gap:4px!important;margin:3px 0!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact .portfolio-toolbar button{min-height:24px!important;padding:4px 6px!important;font-size:9px!important}
 html.swipe-mobile #works-01.swipe-compact .comp-content{gap:4px!important}
 html.swipe-mobile #works-01.swipe-compact .v3-hero-block{gap:4px!important}
 html.swipe-mobile #works-01.swipe-compact .actual-collage{height:50px!important;max-height:50px!important}
 html.swipe-mobile #works-01.swipe-compact .v3-source{font-size:10px!important;line-height:1.25!important;margin-top:0!important}
 html.swipe-mobile #team.swipe-compact .team-art{height:150px!important}
 html.swipe-mobile #strength.swipe-compact .team-art{height:150px!important}
 html.swipe-mobile .scene.swipe-compact .team-panel .film-label{padding-block:2px!important}
 html.swipe-mobile .scene.swipe-compact .floating-result{padding:12px!important}
 html.swipe-mobile .scene.swipe-compact .result-image{height:95px!important}
 html.swipe-mobile .scene.swipe-compact .result-number{font-size:30px!important;margin:5px 0!important}
 html.swipe-mobile .scene.swipe-compact .final-trust li{margin:0!important}
 html.swipe-mobile .scene.swipe-compact .prep-catalog-layout{gap:5px!important}
 html.swipe-mobile .scene.swipe-compact .prep-proof{min-height:0!important;height:auto!important}
 html.swipe-mobile .scene.swipe-compact .prep-proof .dashboard-story{height:85px!important;margin:0!important}
 html.swipe-mobile .scene.swipe-compact .prep-proof .dashboard-story svg{height:100%!important;max-width:100%!important}
 html.swipe-mobile .scene.swipe-compact .prep-plan-rail .price-plan{min-height:0!important;height:auto!important;padding:8px!important}
 html.swipe-mobile .scene.swipe-compact .prep-plan-rail{margin:0!important}
 html.swipe-mobile .scene.swipe-compact .portfolio-hint{margin-block:0!important}
 html.swipe-mobile .scene.swipe-compact .actual-blog-list{gap:6px!important;margin:0!important}
 html.swipe-mobile .scene.swipe-compact .actual-blog-list article{padding:8px!important;margin:0!important;min-height:0!important}
 html.swipe-mobile .privacy-runtime .comp-content .card{height:auto!important;min-height:0!important;display:block!important;flex:none!important}
 html.swipe-mobile .privacy-runtime .comp-content .card>*{height:auto!important;min-height:0!important;flex:none!important}
 .swipe-mobile header nav[aria-label="グローバルメニュー"].open{display:block!important}
 .swipe-mobile header nav.open>:not(.swipe-menu-panel){display:none!important}
 .swipe-mobile header nav.open>.swipe-menu-panel{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;width:100%}
 .swipe-mobile header nav.open>.swipe-menu-panel>a{height:44px!important;min-height:44px!important}
 html.swipe-mobile .results-scene.swipe-compact .result-deck{top:-24px}
 html.swipe-mobile .scene.swipe-compact .prep-proof figure{height:100px!important;max-height:100px!important;margin:0!important}
 html.swipe-mobile .scene.swipe-compact .prep-proof figure img{height:100%!important;width:100%!important;object-fit:contain!important}
 html.swipe-mobile .scene.swipe-compact .prep-plan-rail .price-plan{padding:6px!important}
 html.swipe-mobile .scene.swipe-compact .prep-catalog-layout{gap:3px!important}
 html.swipe-mobile .scene.swipe-compact .portfolio-photo{height:100px!important;min-height:0!important}
 html.swipe-mobile .scene.swipe-compact .portfolio-photo>img{height:100%!important;object-fit:contain!important}
 html.swipe-mobile #works-01.scene.swipe-compact .v3-source{font-size:9px!important;line-height:1.2!important;margin-block:0!important}
 html.swipe-mobile #works-01.scene.swipe-compact .actual-collage{height:40px!important;max-height:40px!important}
 html.swipe-mobile .scene.final-consult.swipe-compact .welcome-robots{position:relative!important;inset:auto!important;height:60px!important;width:180px!important;margin:12px auto 0!important}
 html.swipe-mobile .scene.final-consult.swipe-compact .welcome-robots .pixel-robot{height:50px!important}
 html.swipe-mobile .scene.final-consult.swipe-compact .welcome-speech{top:-15px!important;font-size:8px!important;padding:3px 6px!important}
 html.swipe-mobile .scene.final-consult.swipe-compact .final-trust{display:flex!important;flex-wrap:nowrap!important;gap:5px!important;width:100%;margin:0!important}
 html.swipe-mobile .scene.final-consult.swipe-compact .final-trust li{font-size:9px!important;line-height:1.3!important;margin:0!important;flex:1}
 html.swipe-mobile .scene.final-consult.swipe-compact .estimate-button{min-height:32px!important;padding:5px!important}
 html.swipe-mobile header nav[aria-label="グローバルメニュー"].open>:not(.swipe-menu-panel){display:none!important}
 html.swipe-mobile .scene.swipe-compact .result-deck{position:relative!important;top:-30px!important}
 html.swipe-mobile .vision-scene.swipe-compact .film-art{height:150px!important}
 html.swipe-mobile .scene.swipe-compact .prep-site-screen{height:100px!important;min-height:0!important}
 html.swipe-mobile .scene.swipe-compact .prep-site-screen img{height:100%!important;width:100%!important;object-fit:contain!important}
 html.swipe-mobile .scene.swipe-compact .actual-blog-list article{padding:6px!important}
 html.swipe-mobile .vision-scene.swipe-compact .film-art{height:120px!important}
 html.swipe-mobile .scene.swipe-compact .result-deck{top:-33px!important}
 html.swipe-mobile .scene.swipe-compact .prep-proof>.catalog-proof{height:100px!important;max-height:100px!important;width:100%!important;object-fit:contain!important}
 html.swipe-mobile .scene.swipe-compact .site-footer{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:4px!important;margin:4px 0 0!important;padding:5px 0!important}
 html.swipe-mobile .scene.swipe-compact .site-footer>.brand{font-size:15px!important;line-height:1.2!important;margin:0!important;padding:0!important}
 html.swipe-mobile .scene.swipe-compact .site-footer nav{display:flex!important;flex-wrap:wrap!important;gap:4px!important;margin:0!important;padding:0!important;line-height:1.3!important}
 html.swipe-mobile .scene.swipe-compact .site-footer nav a{font-size:8px!important;line-height:1.3!important;padding:0!important;margin:0!important}
 html.swipe-mobile .scene.swipe-compact .site-footer .footer-contact a{font-size:9px!important;min-height:24px!important;padding:3px!important}
 html.swipe-mobile .scene.swipe-compact .site-footer .footer-contact svg{width:12px!important;height:12px!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact .site-footer>p{font-size:8px!important;line-height:1.2!important;margin:0!important}
 html.swipe-mobile .scene.final-consult.swipe-compact{gap:3px!important}
 html.swipe-mobile .scene.final-consult.swipe-compact .final-trust li{font-size:8px!important;white-space:nowrap!important}
 html.swipe-mobile .results-scene.swipe-compact .result-image{height:60px!important}
 html.swipe-mobile .results-scene.swipe-compact .result-deck{top:-50px!important}
 html.swipe-mobile .results-scene.swipe-compact>.effect-panel .deck-controls{position:fixed!important;left:20px!important;right:20px!important;bottom:54px!important;height:38px!important;margin:0!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact :is(.actor-scene,.dashboard-story,.owner-profile-art){display:flex!important;flex-direction:column!important;height:90px!important;max-height:90px!important;min-height:0!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact :is(.actor-scene,.dashboard-story,.owner-profile-art)>svg{width:100%!important;height:0!important;min-height:0!important;flex:1!important;object-fit:contain!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact :is(.actor-scene,.dashboard-story,.owner-profile-art)>figcaption{position:static!important;inset:auto!important;flex:none!important;margin:0!important;font-size:8px!important;line-height:1.2!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact .comp-team{height:65px!important;max-height:65px!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact .comp-team>.pixel-robot{max-height:55px!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact .comp-team figcaption{font-size:8px!important;line-height:1.2!important}
 html.swipe-mobile :is(#stage,#web-stage)>.scene.swipe-compact .pixel-studio{height:150px!important;aspect-ratio:auto!important;min-height:0!important}
 html.swipe-mobile .scene.swipe-compact .actual-cards{inset:0!important}
 html.swipe-mobile .scene.swipe-compact .actual-work span{font-size:6px!important;line-height:8px!important;height:8px!important}
 html.swipe-mobile .scene.swipe-compact .actual-work img{height:calc(100% - 8px)!important;object-fit:contain!important}
}
