
@charset "UTF-8";

/* スクロール時のセクション表示 */
.js-scroll-in {
    opacity: 0;
    translate: 0 24px;
    transition: opacity .7s ease, translate .7s ease;
}

.js-scroll-in.is-visible {
    opacity: 1;
    translate: 0 0;
}

/* CTAボタンの定期アニメーション */
.btn-cta {
    animation: cta-pulse 2.8s ease-in-out infinite;
    transform-origin: center;
}

@keyframes cta-pulse {
    0%, 100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.045);
    }
}

/* モーション軽減設定 */
@media (prefers-reduced-motion: reduce) {
    .js-scroll-in,
    .js-scroll-in.is-visible {
        opacity: 1;
        translate: none;
        transition: none;
    }

    .btn-cta {
        animation: none;
    }
}
