/* Pattern A: motion only. Original composition, colors, images and content preserved. */
.asj-progress{position:fixed;inset:0 auto auto 0;width:100%;height:3px;background:var(--orange,#e9502d);transform:scaleX(var(--asj-progress,0));transform-origin:left;z-index:100;pointer-events:none}.asj-motion-toggle{position:fixed;left:16px;bottom:18px;z-index:45;padding:9px 13px;border:1px solid #71808c66;border-radius:24px;background:#f8f5eef2;color:#102233;box-shadow:0 3px 15px #1022330d;font:10px Arial,Meiryo,sans-serif;cursor:pointer;backdrop-filter:blur(8px)}.asj-motion-toggle:focus-visible{outline:3px solid #e9502d;outline-offset:3px}.asj-reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease var(--asj-delay,0ms),transform .8s cubic-bezier(.16,1,.3,1) var(--asj-delay,0ms)}.asj-reveal.asj-visible{opacity:1;transform:none}.hero-image{transform:scale(1.035) translateY(var(--asj-hero-shift,0px));transform-origin:center}.btn{position:relative;overflow:hidden;transition:transform .25s,background .25s,box-shadow .25s}.btn>span{display:inline-block;transition:transform .25s}.btn:after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,#ffffff24 50%,transparent 75%);transform:translateX(-125%);pointer-events:none}.btn:hover:after{transform:translateX(125%);transition:transform .6s}.btn:active{transform:translateY(0) scale(.98)}.btn:focus-visible>span{transform:translate(2px,-2px)}.program-art>div{transition:transform .9s cubic-bezier(.16,1,.3,1)}.card-link span{transition:transform .25s,background .25s,color .25s}.day-card{transition:background .3s}.faq details[open] p{animation:asj-answer .3s ease-out}@keyframes asj-answer{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}@media(hover:hover) and (pointer:fine){.btn:hover{transform:translateY(-3px);box-shadow:0 8px 20px #10223318}.btn:hover>span{transform:translate(3px,-3px)}.program-art:hover>div{transform:scale(1.035)}.day-card:hover .card-link span{transform:translate(3px,-3px)}.day-card:hover{background:#ffffff30}}
.asj-motion-paused .asj-reveal{opacity:1;transform:none;transition:none}.asj-motion-paused .hero-image{transform:scale(1.035)}.asj-motion-paused .btn,.asj-motion-paused .btn>span,.asj-motion-paused .btn:after,.asj-motion-paused .program-art>div,.asj-motion-paused .card-link span,.asj-motion-paused .day-card{transition:none!important;transform:none!important}.asj-motion-paused .btn:after{display:none}.asj-motion-paused .faq details[open] p{animation:none}.asj-motion-paused{scroll-behavior:auto}@media(max-width:850px){.hero-image{transform:none}.asj-reveal{transform:translateY(16px)}}@media(max-width:700px){.asj-motion-toggle{bottom:80px;left:12px;font-size:9px;padding:8px 11px}}@media(prefers-reduced-motion:reduce){html:not(.asj-motion-enabled){scroll-behavior:auto!important}html:not(.asj-motion-enabled) .asj-reveal{opacity:1;transform:none;transition:none}html:not(.asj-motion-enabled) .hero-image,html:not(.asj-motion-enabled) .btn,html:not(.asj-motion-enabled) .btn>span,html:not(.asj-motion-enabled) .program-art>div,html:not(.asj-motion-enabled) .card-link span{transform:none!important;transition:none!important}html:not(.asj-motion-enabled) .btn:after{display:none}html:not(.asj-motion-enabled) .faq details[open] p{animation:none!important}}@media print{.asj-reveal{opacity:1!important;transform:none!important}.asj-progress,.asj-motion-controls,.sticky{display:none!important}.hero-image{transform:none!important}}
.asj-reveal{transform:translateY(32px);transition-duration:.95s}.asj-reveal.asj-visible{transform:none}.asj-replaying{transition:none!important}.asj-motion-controls{position:fixed;left:16px;bottom:18px;z-index:45;display:flex;gap:5px;padding:5px;border:1px solid #71808c66;border-radius:24px;background:#f8f5eef2;backdrop-filter:blur(8px);box-shadow:0 3px 15px #1022330d}.asj-motion-controls button{position:static!important;margin:0;border:0;border-radius:20px;padding:7px 11px;background:transparent;color:#102233;font:10px Arial,Meiryo,sans-serif;cursor:pointer;box-shadow:none}.asj-motion-controls .asj-motion-replay{background:#102233;color:white}.asj-motion-controls button:focus-visible{outline:3px solid #e9502d;outline-offset:2px}html.asj-motion-enabled .btn{transition:transform .25s,background .25s,box-shadow .25s!important}@media(max-width:700px){.asj-motion-controls{bottom:80px;left:12px}.asj-motion-controls button{font-size:9px}}
