/* 
  LP Scroll Animations
  --------------------
  スクロールに合わせて表示されるアニメーション演出
*/

/* Base state for animated elements */
.js-anim {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.8s ease, transform 0.8s ease, filter 0.8s ease;
}

/* State when element enters viewport */
.is-animated {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translate(0, 0) scale(1) !important;
  filter: blur(0) !important;
}

/* --- Animation Types --- */

/* 1. Fade Up (下からふわっと) */
.u-anim-fade-up {
  transform: translateY(30px);
}

/* 2. Fade In (その場でふわっと) */
.u-anim-fade-in {
  /* Default is opacity 0 */
}

/* 3. Slide Left (右から左へ) */
.u-anim-slide-left {
  transform: translateX(50px);
}

/* 4. Slide Right (左から右へ) */
.u-anim-slide-right {
  transform: translateX(-50px);
}

/* 5. Zoom In (拡大しながら) */
.u-anim-zoom-in {
  transform: scale(0.9);
}

/* 6. Blur In (ぼかしからくっきり) */
.u-anim-blur-in {
  filter: blur(10px);
}

/* --- Speed / Delay --- */
.u-delay-100 { transition-delay: 0.1s; }
.u-delay-200 { transition-delay: 0.2s; }
.u-delay-300 { transition-delay: 0.3s; }
.u-delay-400 { transition-delay: 0.4s; }
.u-delay-500 { transition-delay: 0.5s; }

.u-speed-fast { transition-duration: 0.4s; }
.u-speed-slow { transition-duration: 1.2s; }
