@charset "UTF-8";
.home-banner[data-v-0fc86f9a] {
  height: 100vh;
  position: relative;
  position: relative;
}
.home-banner[data-v-0fc86f9a]::before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  right: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 100%);
  pointer-events: none; /* 不影响图片交互 */
  height: clamp(0px, 6.9444444444vw, 100px);
}
@media screen and (max-width: 1023.98px) {
.home-banner[data-v-0fc86f9a]::before {
    height: 60px;
}
}
@media screen and (max-width: 1023.98px) {
.home-banner[data-v-0fc86f9a] {
    height: 82.1428571429vh;
}
}
.home-banner .banner-swiper[data-v-0fc86f9a] {
  height: 100%;
  --swiper-pagination-fraction-color: #fff;
  --swiper-navigation-sides-offset: clamp(24px, 64 / 1440 * 100vw, 64px);
}
.home-banner .banner-swiper[data-v-0fc86f9a]  .swiper-button-prev,
.home-banner .banner-swiper[data-v-0fc86f9a]  .swiper-button-next {
  width: clamp(20px, 2.7777777778vw, 40px);
  height: clamp(20px, 2.7777777778vw, 40px);
  background-color: rgba(255, 255, 255, 0.4);
  -webkit-backdrop-filter: blur(4px);
          backdrop-filter: blur(4px);
  border-radius: 4px;
  transition: background-color 0.5s;
}
.home-banner .banner-swiper[data-v-0fc86f9a]  .swiper-button-prev:hover,
.home-banner .banner-swiper[data-v-0fc86f9a]  .swiper-button-next:hover {
  background-color: rgba(255, 255, 255, 0.8);
}
.home-banner .banner-swiper[data-v-0fc86f9a]  .swiper-button-prev::after,
.home-banner .banner-swiper[data-v-0fc86f9a]  .swiper-button-next::after {
  content: "";
  width: clamp(3px, 0.4861111111vw, 7px);
  height: clamp(5px, 0.6944444444vw, 10px);
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNyIgaGVpZ2h0PSIxMCIgdmlld0JveD0iMCAwIDcgMTAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNi40Mjk3OCA0Ljk5OTg3TDEuNTE5NzggMC4wODg4NjcyTDAuODA0NzgxIDAuODAyODY4TDQuOTk3NzggNC45OTU4N0wwLjgwMDc4MSA5LjE5Mjg3TDEuNTE0NzggOS45MDc4N0w1LjcxMTc4IDUuNzA5ODdMNS43MTU3OCA1LjcxMzg3TDYuNDI5NzggNC45OTk4N1oiIGZpbGw9ImJsYWNrIiBmaWxsLW9wYWNpdHk9IjAuOTUiLz4KPC9zdmc+Cg==");
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
}
.home-banner .banner-swiper[data-v-0fc86f9a]  .swiper-button-prev::after {
  transform: rotate(180deg);
}
.home-banner .banner-swiper[data-v-0fc86f9a] .swiper-pagination.swiper-pagination-fraction {
  width: -moz-fit-content;
  width: fit-content;
  left: auto;
  bottom: clamp(27px, 3.3333333333vw, 48px);
  right: clamp(24px, 4.4444444444vw, 64px);
  font-family: "Montserrat";
  font-size: var(--body2);
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.home-banner .banner-bg-media[data-v-0fc86f9a] {
  position: absolute;
  inset: 0;
  z-index: -1;
  background-color: var(--fill-bg-black);
}
.home-banner .banner-title[data-v-0fc86f9a] {
  text-align: center;
  font-size: var(--h4);
  font-family: "Montserrat", "NotoSansJP";
  font-weight: 400;
  line-height: 1.4;
  color: var(--text-wh-primary);
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-top: clamp(93px, 8.75vw, 126px);
}
.home-banner .banner-sub-title[data-v-0fc86f9a] {
  text-align: center;
  font-size: var(--body2);
  font-family: "Montserrat", "NotoSansJP";
  font-weight: 400;
  line-height: 1.5;
  color: var(--text-wh-subheading);
  margin-top: clamp(8px, 0.2777777778vw, 4px);
}
.home-banner .banner-button-group[data-v-0fc86f9a] {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(11.5px, 1.1111111111vw, 16px);
  margin-top: clamp(20px, 2.7777777778vw, 40px);
}
@media screen and (max-width: 1023.98px) {
.home-banner .banner-button-group[data-v-0fc86f9a] {
    padding: 0 24px;
}
}
.home-banner .banner-image[data-v-0fc86f9a] {
  width: 100%;
  height: 100%;
  -o-object-fit: var(--img-fit, cover);
     object-fit: var(--img-fit, cover);
}
.home-banner .progress-bar[data-v-0fc86f9a] {
  position: absolute;
  z-index: 2;
  width: clamp(202px, 44.7916666667vw, 645px);
  height: 1px;
  left: clamp(24px, 4.4444444444vw, 64px);
  bottom: clamp(27px, 3.3333333333vw, 48px);
  background-color: #c2c8d3;
}
.home-banner .progress-bar[data-v-0fc86f9a]::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: var(--5b40e459);
  height: 1px;
  background-color: #f5f6f7;
  transition: width 0.5s ease;
}