/* ===============================
   Hero Slider
   =============================== */

.l-hero-slider {
  position: relative;
  width: 100%;
  height: 100vh;
}

@media (min-width: 769px) {
  .l-hero-slider {
    min-height: 970px;
  }
}


.l-hero-slider .swiper-slide {
  height: 100%;
  overflow: hidden;
}

/* 各セクションがスライドの高さに合わせて広がる */
.l-hero-slider .l-keyvisual,
.l-hero-slider .l-read,
.l-hero-slider .l-slogan {
  height: 100%;
  min-height: unset;
}

/* ===============================
   Navigation
   =============================== */

.l-hero-slider__nav-block {
  width: 100%;
  height: 40px;
  background-color: #000000A8;
  border-top: 1px solid #fff;
  position: relative;
  bottom: 40px;
  z-index: 1;
}

.l-hero-slider__nav {
  position: absolute;
  bottom: 7px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  display: flex;
  align-items: center;
  width: 200px;
}

/* Prev / Next ボタン */
.l-hero-slider__nav .swiper-button-prev,
.l-hero-slider__nav .swiper-button-next {
  width: 24px;
  height: 24px;
  position: static;
  margin-top: 0;
  flex-shrink: 0;
  transition: opacity 0.2s;
}

.l-hero-slider__nav .swiper-button-prev::after,
.l-hero-slider__nav .swiper-button-next::after {
  display: none;
}

.l-hero-slider__nav .swiper-button-prev:hover,
.l-hero-slider__nav .swiper-button-next:hover {
  opacity: 0.7;
}

.l-hero-slider__nav .swiper-button-prev.swiper-button-disabled,
.l-hero-slider__nav .swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: default;
}

.l-hero-slider__nav .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%2220%2020%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M31.4%2032L36%2036.6L34.6%2038L28.6%2032L34.6%2026L36%2027.4L31.4%2032Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.l-hero-slider__nav .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%2220%2020%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M32.6%2032L28%2027.4L29.4%2026L35.4%2032L29.4%2038L28%2036.6L32.6%2032Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* ドットナビゲーション */
.l-hero-slider__nav .swiper-pagination {
  position: static;
  flex: 1;
  text-align: center;
  display: flex;
  gap: 20px;
  justify-content: center;
}

.l-hero-slider__nav .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  background: #fff;
  opacity: 1;
  margin: 0 10px;
}

.l-hero-slider__nav .swiper-pagination-bullet-active {
  background: #DB2828;
}
