@charset "UTF-8";
:root {
  --fade-zoom-maxtime: 14s;
  --fade-zoom-in: fade-zoomIn var(--fade-zoom-maxtime) linear 0s normal both;
  --fade-zoom-out: fade-zoomOut var(--fade-zoom-maxtime) linear 0s normal both;
  --fade-zoom-none: none;
  --fade-zoom-mode: var(--fade-zoom-none);
}


/*******************************************************************************
**
**  動画・スライドヘッダー
**
*******************************************************************************/

.front-top-page .header-custom {
  display: block;
  height: 100%;
  margin: 0;
  min-height: unset !important;
  padding: 0;
  width: 100%;
  left: 0;
  position: absolute;
  top: 0;
}

.header-custom .swiper-slide {
  overflow: hidden;
}

.header-custom figure {
  height: 100%;
}

.front-top-page .header {
  overflow: clip;
}

/*******************************************************************************
**  動画
*******************************************************************************/

.header-custom video {
  height: 100%;
  object-fit: cover;
  width: 100%;
}


/*******************************************************************************
**  スライド
*******************************************************************************/

.front-top-page:has(.swiper-wrapper) .header {
  animation-duration: 1s;
  animation-fill-mode: forwards;
  animation-name: init-fade-In;
  animation-timing-function: ease-in;
}

@keyframes init-fade-In {
  from {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.header-custom .swiper-wrapper {
  margin: 0;
}

.header-custom .swiper-wrapper img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}


/* アニメーション効果 */

.front-top-page .header-custom .swiper-slide-active img,
.front-top-page .header-custom .swiper-slide-duplicate-active img,
.front-top-page .header-custom .swiper-slide-prev img {
  animation: var(--fade-zoom-mode);
}

@keyframes fade-zoomIn {
  from {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1.0);
  }
}

@keyframes fade-zoomOut {
  from {
    transform: scale(1.0);
  }
  100% {
    transform: scale(1.2);
  }
}