@charset "utf-8";

.p-top-fv__swiper-container,
.p-top-fv__swiper,
.p-top-fv__swiper-wrapper,
.p-top-fv__swiper-slide {
  position: relative;
}

.p-top-fv__swiper-wrapper {
  position: relative;
}

.p-top-fv__swiper-slide {
  border-radius: 0.3125rem;
  overflow: hidden;
}

.p-top-fv__swiper-slide img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  height: 100%;
  border-radius: inherit;
}

.swiper-button-prev,
.swiper-button-next,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  top: unset;
  bottom: unset;
  left: unset;
  right: unset;
  margin: 0;
  padding: 0;
}

.swiper-slide {
  opacity: 0.2;
}

.swiper-slide-active {
  opacity: 1;
}

.swiper-slide img {
  -webkit-transform: translateY(20px) scale(1.1);
  transform: translateY(20px) scale(1.1);
  opacity: 0.2;
  -webkit-transition: opacity 1s ease, -webkit-transform 5.5s linear;
  transition: opacity 1s ease, -webkit-transform 5.5s linear;
  transition: transform 5.5s linear, opacity 1s ease;
  transition: transform 5.5s linear, opacity 1s ease, -webkit-transform 5.5s linear;
}

/* アクティブ時 */
.swiper-slide-active img {
  -webkit-transform: translateY(0) scale(1.2);
  transform: translateY(0) scale(1.2);
  opacity: 1;
}

.swiper-pagination {
  position: absolute;
  top: 50% !important;
  translate: 0 -50% !important;
  right: 0.625rem !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  gap: 0.3125rem;
}

@media (min-width: 768px) {
  .swiper-pagination {
    right: 1.875rem !important;
  }
}

.swiper-pagination-bullet {
  font-size: 0.875rem;
  background-color: transparent;
  width: 2.5rem;
  height: 2.5rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #fff;
  opacity: 1;
}

/* current */
.swiper-pagination-bullet-active {
  border: 1px solid #fff;
}
