/* Faster, calmer motion rhythm — 2026-08-09 */
:root {
    --asahikawa-motion-ease: cubic-bezier(.16, 1, .3, 1);
}

/* Homepage intro: keep the two-scene idea, remove the long wait. */
.s42fbc87b-site-intro-loader {
    transition: opacity .42s var(--asahikawa-motion-ease), visibility .42s var(--asahikawa-motion-ease) !important;
}
.s42fbc87b-site-intro-loader:before {
    animation-duration: 1.2s !important;
    animation-delay: .04s !important;
}
.s42fbc87b-site-intro-loader:after {
    animation-duration: 1.2s !important;
    animation-delay: .12s !important;
}
.s42fbc87b-site-intro-loader.is-step-logo .s42fbc87b-site-intro-logo-scene,
.s42fbc87b-site-intro-loader.is-step-copy .s42fbc87b-site-intro-copy-scene {
    animation-duration: .58s !important;
    animation-timing-function: var(--asahikawa-motion-ease) !important;
}
.s42fbc87b-site-intro-loader.is-step-copy .s42fbc87b-site-intro-logo-scene {
    animation-duration: .26s !important;
}

/* Hero: reach the finished composition sooner while keeping the depth effect. */
.s42fbc87b-asahikawa-hero-slide {
    transition-duration: .72s, .72s !important;
}
.s42fbc87b-asahikawa-hero-slide.hero-motion-active img,
.home-enter-show .s42fbc87b-home-idea-hero .swiper-slide.hero-motion-active .home-idea-visual-card img {
    animation-duration: 6.2s !important;
}
body.home-enter-show .s42fbc87b-home-idea-hero .s42fbc87b-asahikawa-hero-copy,
body.home-enter-show .s42fbc87b-asahikawa-hero-copy,
.home-enter-show .s42fbc87b-asahikawa-hero-copy {
    animation-duration: .68s !important;
    animation-delay: .04s !important;
    animation-timing-function: var(--asahikawa-motion-ease) !important;
}
body.home-enter-show .s42fbc87b-asahikawa-hero-logo {
    animation-duration: .62s !important;
    animation-delay: .04s !important;
}
body.home-enter-show .s42fbc87b-asahikawa-hero-message {
    animation-duration: .58s !important;
    animation-delay: .12s !important;
}
body.home-enter-show .s42fbc87b-asahikawa-hero-en {
    animation-duration: .58s !important;
    animation-delay: .2s !important;
}
.home-enter-show .s42fbc87b-asahikawa-hero-counter,
.home-enter-show .s42fbc87b-asahikawa-hero-scroll {
    animation-duration: .5s !important;
    animation-delay: .28s !important;
}
.home-enter-show .home-idea-tag,
.home-enter-show .home-idea-title,
.home-enter-show .home-idea-copy,
.home-enter-show .s42fbc87b-home-idea-visual {
    transition-duration: .58s !important;
    transition-timing-function: var(--asahikawa-motion-ease) !important;
}
.home-enter-show .home-idea-tag { transition-delay: 0s !important; }
.home-enter-show .home-idea-title { transition-delay: .06s !important; }
.home-enter-show .home-idea-copy { transition-delay: .12s !important; }
.home-enter-show .s42fbc87b-home-idea-visual { transition-delay: .18s !important; }

/* Page and scroll reveals: shorter travel, quicker settle, GPU-friendly properties. */
.mori-anim-ready #wrapper {
    transition-duration: .42s, .42s !important;
    transition-timing-function: var(--asahikawa-motion-ease) !important;
}
.mori-anim-ready .s42fbc87b-main-header {
    transition-duration: .48s, .48s, .28s, .28s !important;
    transition-timing-function: var(--asahikawa-motion-ease) !important;
}
.mori-section-motion.is-inview:before {
    animation-duration: .72s !important;
    animation-delay: 0s !important;
}
.mori-anim-ready .mori-reveal {
    transform: translateY(24px);
    transition-duration: .56s !important;
    transition-timing-function: var(--asahikawa-motion-ease) !important;
}
.mori-anim-ready .mori-reveal-left { transform: translateX(-28px); }
.mori-anim-ready .mori-reveal-right { transform: translateX(28px); }
.mori-anim-ready .mori-reveal-scale {
    transform: translateY(20px) scale(.98);
    filter: blur(3px);
}
.mori-anim-ready .s42fbc87b-box-item.mori-reveal:after,
.mori-anim-ready .s42fbc87b-case-thumb:after,
.mori-anim-ready .s42fbc87b-mori-product-thumb:after,
.mori-anim-ready .s42fbc87b-mori-detail-main.mori-reveal:after {
    transition-duration: .58s !important;
}
.mori-img-motion {
    transition: transform .65s var(--asahikawa-motion-ease), opacity .45s var(--asahikawa-motion-ease), filter .45s var(--asahikawa-motion-ease) !important;
}
.s42fbc87b-case-heading.is-inview .s42fbc87b-case-heading-title,
.s42fbc87b-mori-products-title.is-inview h1,
.s42fbc87b-mori-detail-intro.is-inview h2,
.s42fbc87b-section-title.is-inview h2 {
    animation-duration: .55s !important;
}

/* Architecture cards and the subtle new-build photo motion. */
#architecture .s42fbc87b-box-item .s42fbc87b-respimg {
    transition-duration: .45s !important;
}
#architecture .s42fbc87b-architecture-item:nth-child(2) .s42fbc87b-respimg {
    animation-duration: 7.2s !important;
}

/* Legacy subpages use the same quicker reveal rhythm. */
.teas-page [data-reveal] {
    transition-duration: .56s !important;
    transition-delay: 0s !important;
    transition-timing-function: var(--asahikawa-motion-ease) !important;
}

@media only screen and (max-width: 767px) {
    .mori-anim-ready .mori-reveal,
    .mori-anim-ready .mori-reveal-left,
    .mori-anim-ready .mori-reveal-right,
    .mori-anim-ready .mori-reveal-scale {
        transform: translateY(18px);
    }
    .mori-anim-ready .mori-reveal.is-inview {
        transform: translateY(0) scale(1);
    }
}

@media (prefers-reduced-motion: reduce) {
    .s42fbc87b-site-intro-loader,
    .s42fbc87b-site-intro-loader:before,
    .s42fbc87b-site-intro-loader:after,
    .s42fbc87b-site-intro-scene,
    .s42fbc87b-asahikawa-hero-slide,
    .s42fbc87b-asahikawa-hero-slide img,
    .mori-reveal,
    .mori-img-motion,
    #architecture .s42fbc87b-respimg,
    .teas-page [data-reveal] {
        animation: none !important;
        transition: none !important;
        filter: none !important;
    }
}
