.head-banner {
  position: relative;
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  aspect-ratio: 375 / 480
}

  @media (min-width: 1024px) {.head-banner {
    height: calc(100vh - var(--pagetop-height, 0px));
    aspect-ratio: unset
}
  }

#header-banner-swiper {
  height: 100%;
  width: 100%
}

#header-banner-swiper .swiper-slide {
  position: relative;
  display: flex;
  height: 100%;
  width: 100%;
  justify-content: flex-start
}

@media (min-width: 1024px) {

  #header-banner-swiper .swiper-slide {
    align-items: center
  }
}

#header-banner-swiper .swiper-slide {
    /* 圖片遮罩 */
    /* &::after {
      @apply content-[''] absolute top-0 left-0 w-full h-full pointer-events-none z-0;
      background: linear-gradient(
        0deg,
        rgba(26, 26, 26, 0) 48.14%,
        rgba(26, 26, 26, 0.32) 82.45%
      );
      @screen lg {
        background: linear-gradient(
          270deg,
          rgba(26, 26, 26, 0) 52.09%,
          rgba(26, 26, 26, 0.5) 101.93%
        );
      }
    } */
  }

/* 橘字版本 */

#header-banner-swiper .swiper-slide.orange-theme .head-banner-title {
  --tw-text-opacity: 1;
  color: rgb(255 103 0 / var(--tw-text-opacity, 1))
}

#header-banner-swiper .swiper-slide.orange-theme .head-banner-sub {
  --tw-text-opacity: 1;
  color: rgb(255 103 0 / var(--tw-text-opacity, 1))
}

#header-banner-swiper .swiper-slide.orange-theme .btn-outline {
  --tw-border-opacity: 1;
  border-color: rgb(255 103 0 / var(--tw-border-opacity, 1));
  background-color: transparent;
  --tw-text-opacity: 1;
  color: rgb(255 103 0 / var(--tw-text-opacity, 1));
  outline-color: #ffd1b3
}

#header-banner-swiper .swiper-slide.orange-theme .btn-outline:hover {
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-bg-opacity: 0.2
}

#header-banner-swiper .swiper-slide.orange-theme .btn-outline:active {
  background-color: transparent
}

/* 灰字版本 */

#header-banner-swiper .swiper-slide.gray-theme .head-banner-title {
  --tw-text-opacity: 1;
  color: rgb(48 49 50 / var(--tw-text-opacity, 1))
}

#header-banner-swiper .swiper-slide.gray-theme .head-banner-sub {
  --tw-text-opacity: 1;
  color: rgb(48 49 50 / var(--tw-text-opacity, 1))
}

#header-banner-swiper .swiper-slide.gray-theme .btn-outline {
  --tw-border-opacity: 1;
  border-color: rgb(48 49 50 / var(--tw-border-opacity, 1));
  background-color: transparent;
  --tw-text-opacity: 1;
  color: rgb(48 49 50 / var(--tw-text-opacity, 1));
  outline-color: #ffd1b3
}

#header-banner-swiper .swiper-slide.gray-theme .btn-outline:hover {
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-bg-opacity: 0.2
}

#header-banner-swiper .swiper-slide.gray-theme .btn-outline:active {
  background-color: transparent
}

#header-banner-swiper .head-banner-text {
  z-index: 10;
  margin-top: 2.5rem;
  width: 100%;
  text-align: center
}

@media (min-width: 768px) {

  #header-banner-swiper .head-banner-text {
    margin-top: 9.375rem
  }
}

@media (min-width: 1024px) {

  #header-banner-swiper .head-banner-text {
    margin-top: 0px;
    text-align: start
  }
}

@media (min-width: 1280px) {

  #header-banner-swiper .head-banner-text {
    max-width: 1080px
  }
}

@media (min-width: 1440px) {

#header-banner-swiper .head-banner-text {
    max-width: 1240px
  }
    }

#header-banner-swiper .head-banner-title {
    font-size: 30px;
    line-height: 120%;
    margin-bottom: 0.5rem;
    font-weight: 500;
  }

@media (min-width: 1024px) {

#header-banner-swiper .head-banner-title {
      max-width: 400px;
      font-size: 3rem
  }
    }

#header-banner-swiper .head-banner-sub {
  margin-bottom: 1rem;
  font-size: 1.25rem;
  font-weight: 500
}

@media (min-width: 768px) {

  #header-banner-swiper .head-banner-sub {
    margin-bottom: 2rem;
    font-size: 1.375rem;
    line-height: 1.5;
    font-weight: 500
  }
}

#header-banner-swiper .head-banner-img {
  position: absolute;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
    z-index: -1
}

#header-banner-swiper .twm-swiper-pagination {
  top: auto;
  bottom: 1.25rem
}

@media (min-width: 1024px) {

  #header-banner-swiper .twm-swiper-pagination {
    bottom: 2.5rem
  }
}

#header-banner-swiper .head-banner-video {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover
}

/* 設定super-ad & head-notificaiotn 排列方式
 */

.float-group {
  position: absolute;
  top: 12px;
  z-index: 10;
  display: flex;
  flex-direction: column-reverse;
  gap: 10px
}

@media (min-width: 1024px) {

  .float-group {
    position: static
  }
}

/* Hide Vue blocks until mounted */
[v-cloak] {
  display: none !important;
}

/*# sourceMappingURL=head-banner.css.map */
