/* Rainbow Leaf 共通スクロール演出 */
.rl-reveal {
  will-change: opacity, transform, filter;
}

html.rl-motion-ready .rl-reveal {
  opacity: 0;
  filter: blur(2px);
  transform: translate3d(0, 28px, 0) scale(0.995);
  transition:
    opacity 0.9s ease,
    transform 1.05s cubic-bezier(0.22, 1, 0.36, 1),
    filter 1s ease;
  transition-delay: var(--rl-reveal-delay, 0ms);
}

html.rl-motion-ready .rl-reveal.is-visible {
  opacity: 1;
  filter: blur(0);
  transform: translate3d(0, 0, 0) scale(1);
}

/* スクロール展示ページ */
body.rl-scroll-story {
  margin: 0;
  background: #050505;
  color: #fff;
}

.rl-scroll-gallery {
  width: 100%;
  margin: 0;
  padding: clamp(76px, 9vw, 132px) 0 clamp(70px, 10vw, 150px);
}

.rl-scroll-gallery__title {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.rl-scroll-gallery__figure {
  width: min(100%, 1536px);
  margin: 0 auto clamp(72px, 12vh, 150px);
  padding: 0;
}

.rl-scroll-gallery--portrait .rl-scroll-gallery__figure {
  width: min(92vw, 980px);
}

.rl-scroll-gallery__figure:last-child {
  margin-bottom: 0;
}

.rl-scroll-gallery__image {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  border: 0;
}

@media only screen and (max-width: 916px) {
  html.rl-motion-ready .rl-reveal {
    filter: none;
    transform: translate3d(0, 20px, 0);
    transition-duration: 0.72s, 0.86s, 0.72s;
  }

  .rl-scroll-gallery {
    padding-top: 70px;
  }

  .rl-scroll-gallery__figure,
  .rl-scroll-gallery--portrait .rl-scroll-gallery__figure {
    width: 100%;
    margin-bottom: clamp(42px, 9vh, 86px);
  }
}

@media (prefers-reduced-motion: reduce) {
  html.rl-motion-ready .rl-reveal,
  html.rl-motion-ready .rl-reveal.is-visible {
    opacity: 1;
    filter: none;
    transform: none;
    transition: none;
  }
}
