.hero-3d{background:white;color:#595959}.visual-stage{height:340px;position:relative;overflow:hidden;perspective:1000px;background:white}.visual-tilt{height:100%;transform-origin:50% 55%;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform 240ms ease-out;transform-style:preserve-3d}.visual-tilt img{width:100%;height:100%;object-fit:contain;transform-origin:50% 65%;animation:none}.motion-ready .visual-tilt img{animation:lp-float 7s ease-in-out infinite}.motion-paused .visual-tilt img,.motion-offscreen .visual-tilt img{animation-play-state:paused}.motion-paused .visual-tilt,.motion-offscreen .visual-tilt{transform:none}.motion-toggle{position:absolute;bottom:12px;right:15px;z-index:2;background:#fffffff0;color:#171717;border:1px solid #aaa;border-radius:4px;min-height:44px;padding:9px 13px;font:700 11px 'Noto Sans JP',sans-serif;cursor:pointer}.motion-toggle[hidden],.film-toggle[hidden]{display:none}.motion-toggle:focus-visible,.film-toggle:focus-visible{outline:3px solid #b65700;outline-offset:3px}.motion-toggle:disabled{color:#595959;cursor:default}.hero-3d figcaption{padding:7px 16px;font-size:9px;line-height:1.8;background:#f4f4f4}.motion-film{background:#171717;color:white}.film-frame{position:relative;aspect-ratio:1.9;overflow:hidden;background:#1b1b1b}.film-frame video{width:100%;height:100%;display:block;object-fit:cover}.film-frame:after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,#0007,transparent 65%);pointer-events:none}.film-frame h2{position:absolute;left:26px;top:25px;z-index:1;color:white;font-size:30px;font-weight:900;line-height:1.5;text-shadow:0 2px 12px #0006;pointer-events:none}.film-toggle{position:absolute;bottom:15px;right:17px;z-index:2;min-height:44px;background:#ffdb00;color:#171717;font:800 11px 'Noto Sans JP',sans-serif;padding:10px 14px;border:0;border-radius:4px;cursor:pointer}.film-toggle:hover{background:#ffe54c}.film-caption{font-size:9px;line-height:1.9;color:#eee;padding:10px 17px}.cta-button{transition:background-color 120ms ease-out,transform 100ms ease-out}.cta-button:active{transform:translateY(2px)}
.film-frame>.film-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.film-frame>video{position:absolute;inset:0;opacity:0}.film-frame.has-video-frame>video{opacity:1}
@keyframes lp-float{0%,100%{transform:translateY(0) rotate(-.7deg)}50%{transform:translateY(-7px) rotate(.7deg)}}
@media(max-width:560px){.visual-stage{height:270px}.motion-toggle{bottom:10px;right:12px;font-size:10px}.hero-3d figcaption{font-size:8px;padding-inline:12px}.film-frame{aspect-ratio:1.8}.film-frame h2{font-size:24px;left:21px;top:22px}.film-toggle{font-size:10px;right:13px;bottom:12px;padding-inline:11px}.film-caption{font-size:8px;padding:9px 13px}.motion-ready .visual-tilt img{animation-name:lp-float-mobile}}
@keyframes lp-float-mobile{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@media(prefers-reduced-motion:reduce){.visual-tilt{transform:none!important;transition:none}.motion-ready .visual-tilt img{animation:none}.cta-button{transition:none}.cta-button:active{transform:none}}
