.swiper-kv-banner-container {
  /* height: 100svh; */
  background: #eee;
  .swiper-button-disabled {
    opacity: 0;
  }
  @media (max-width: 767px) {
    .in-pc {
      display: none;
    }
    .in-mob {
      display: block;
    }.swiper-kv-banner-container {
  /* height: 100svh; */
  background: #eee;
  max-width: 100vw;
  overflow: hidden;
  .swiper-button-disabled {
    opacity: 0;
  }
  @media (max-width: 767px) {
    .in-pc {
      display: none;
    }
    .in-mob {
      display: block;
    }
  }
  @media (min-width: 768px) {
    .in-pc {
      display: block;
    }
    .in-mob {
      display: none;
    }
  }

  .swiper-main-container {
    height: 100%;
    .media-container {
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      img,
      video {
        width: 100%;
        height: 100%;
        object-fit: cover;
      }
    }
  }
  .page-width {
    display: flex;
    flex-direction: column;
    height: 100%;
    box-sizing: border-box;
    z-index: 1;
    position: relative;
    /* PC */
    @media (min-width: 768px) {
      &.pc-horizontal-align-left {
        * {
          text-align: left;
        }
        .buttons {
          justify-content: flex-start;
        }
      }
      &.pc-horizontal-align-center {
        * {
          text-align: center;
        }
        .buttons {
          justify-content: center;
        }
      }
      &.pc-horizontal-align-right {
        * {
          text-align: right;
        }
        .buttons {
          justify-content: flex-end;
        }
      }

      &.pc-vertical-align-top {
        justify-content: flex-start;
      }
      &.pc-vertical-align-center {
        justify-content: center;
      }
      &.pc-vertical-align-bottom {
        justify-content: flex-end;
      }
    }
    /* MOB */
    @media (max-width: 767px) {
      &.mob-horizontal-align-left {
        * {
          text-align: left;
        }
        .buttons {
          justify-content: flex-start;
        }
      }
      &.mob-horizontal-align-center {
        * {
          text-align: center;
        }
        .buttons {
          justify-content: center;
        }
      }
      &.mob-horizontal-align-right {
        * {
          text-align: right;
        }
        .buttons {
          justify-content: flex-end;
        }
      }

      &.mob-vertical-align-top {
        justify-content: flex-start;
      }
      &.mob-vertical-align-center {
        justify-content: center;
      }
      &.mob-vertical-align-bottom {
        justify-content: flex-end;
      }
    }
  }
  .texts_and_btns {
    display: flex;
    flex-direction: column;
    gap: 24px;
    @media (max-width: 767px) {
      gap: 16px;
    }
    .text-container {
      display: flex;
      flex-direction: column;
      gap: 16px;
      @media (max-width: 767px) {
        gap: 8px;
      }
      .titles_and_content {
        display: flex;
        flex-direction: column;
        gap: 4px;
        @media (max-width: 767px) {
          gap: 2px;
        }
        .subtitle {
          font-weight: 500;
          font-size: 14px;
          letter-spacing: 0.28px;
          @media (max-width: 767px) {
            font-size: 12px;
          }
        }
        .title {
          line-height: 1.2;
          @media (max-width: 767px) {
            font-size: 32px;
          }
        }
        .content {
          font-size: 20px;
          line-height: 1.3;
          @media (max-width: 767px) {
            font-size: 16px;
          }
        }
      }
    }
    .buttons {
      display: flex;
      gap: 12px;
      align-items: center;
      .banner-button {
        padding: 8px 20px;
        border: 1px solid #1a1a1a;
        border-radius: 999px;
        display: flex;
        align-items: center;
        gap: 8px;
        color: #1a1a1a;
        text-decoration: none;
        font-size: 16px;
        font-weight: 380;
        line-height: 1;
        text-transform: capitalize;
        @media (max-width: 767px) {
          font-weight: 300;
        }
        path {
          stroke: #1a1a1a;
        }
        &[type="primary"] {
          border-color: var(--button-color) !important;
          background: var(--button-color) !important;
          color: #fff !important;
          path {
            stroke: #fff !important;
          }
        }
      }
    }
  }
  .swiper-button {
    position: absolute;
    top: 50%;
    z-index: 2;
    cursor: pointer;
    transition: all 0.2s;
    @media (max-width: 767px) {
      display: none;
    }
    &.swiper-button-prev-common {
      left: 20px;
      transition: all 0.2s;
    }
    &.swiper-button-next-common {
      right: 20px;
      transition: all 0.2s;
    }
    .normal {
      display: block;
    }
    .hover {
      display: none;
    }
    &:hover {
      .normal {
        display: none;
      }
      .hover {
        display: block;
      }
    }
  }
  .progress-bar {
    position: relative;
    z-index: 2;
    left: 50%;
    transform: translateX(-50%);
    bottom: 30px;
    display: flex;
    justify-content: center;
  }
  .swiper-pagination-bullet {
    height: 8px;
    width: 8px;
    border-radius: 999px;
    background: rgba(243, 243, 243, 0.6);
    transition: all 0.2s;
    opacity: 1;
  }
  .swiper-pagination-bullet-active {
    width: 32px;
    position: relative;
  }
  .swiper-pagination-bullet-active::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 8px;
    border-radius: 999px;
    width: calc(100% * var(--progress) / 100);
    transition: width 0.2s;
    background: #c79f6c;
  }
}

  }
  @media (min-width: 768px) {
    .in-pc {
      display: block;
    }
    .in-mob {
      display: none;
    }
  }

  .swiper-main-container {
    height: 100%;
    .media-container {
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      img,
      video {
        width: 100%;
        height: 100%;
        object-fit: cover;
      }
    }
  }
  .page-width {
    display: flex;
    flex-direction: column;
    height: 100%;
    box-sizing: border-box;
    z-index: 1;
    position: relative;
    /* PC */
    @media (min-width: 768px) {
      &.pc-horizontal-align-left {
        * {
          text-align: left;
        }
        .buttons {
          justify-content: flex-start;
        }
      }
      &.pc-horizontal-align-center {
        * {
          text-align: center;
        }
        .buttons {
          justify-content: center;
        }
      }
      &.pc-horizontal-align-right {
        * {
          text-align: right;
        }
        .buttons {
          justify-content: flex-end;
        }
      }

      &.pc-vertical-align-top {
        justify-content: flex-start;
      }
      &.pc-vertical-align-center {
        justify-content: center;
      }
      &.pc-vertical-align-bottom {
        justify-content: flex-end;
      }
    }
    /* MOB */
    @media (max-width: 767px) {
      &.mob-horizontal-align-left {
        * {
          text-align: left;
        }
        .buttons {
          justify-content: flex-start;
        }
      }
      &.mob-horizontal-align-center {
        * {
          text-align: center;
        }
        .buttons {
          justify-content: center;
        }
      }
      &.mob-horizontal-align-right {
        * {
          text-align: right;
        }
        .buttons {
          justify-content: flex-end;
        }
      }

      &.mob-vertical-align-top {
        justify-content: flex-start;
      }
      &.mob-vertical-align-center {
        justify-content: center;
      }
      &.mob-vertical-align-bottom {
        justify-content: flex-end;
      }
    }
  }
  .texts_and_btns {
    display: flex;
    flex-direction: column;
    gap: 24px;
    @media (max-width: 767px) {
      gap: 16px;
    }
    .text-container {
      display: flex;
      flex-direction: column;
      gap: 16px;
      @media (max-width: 767px) {
        gap: 8px;
      }
      .titles_and_content {
        display: flex;
        flex-direction: column;
        gap: 4px;
        @media (max-width: 767px) {
          gap: 2px;
        }
        .subtitle {
          font-weight: 500;
          font-size: 14px;
          letter-spacing: 0.28px;
          @media (max-width: 767px) {
            font-size: 12px;
          }
        }
        .title {
          line-height: 1.2;
          @media (max-width: 767px) {
            font-size: 32px;
          }
        }
        .content {
          font-size: 20px;
          line-height: 1.3;
          @media (max-width: 767px) {
            font-size: 16px;
          }
        }
      }
    }
    .buttons {
      display: flex;
      gap: 12px;
      align-items: center;
      .banner-button {
        padding: 8px 20px;
        border: 1px solid #1a1a1a;
        border-radius: 999px;
        display: flex;
        align-items: center;
        gap: 8px;
        color: #1a1a1a;
        text-decoration: none;
        font-size: 16px;
        font-weight: 380;
        line-height: 1;
        text-transform: capitalize;
        @media (max-width: 767px) {
          font-weight: 300;
        }
        path {
          stroke: #1a1a1a;
        }
        &[type="primary"] {
          border-color: var(--button-color) !important;
          background: var(--button-color) !important;
          color: #fff !important;
          path {
            stroke: #fff !important;
          }
        }
      }
    }
  }
  .swiper-button {
    position: absolute;
    top: 50%;
    z-index: 2;
    cursor: pointer;
    transition: all 0.2s;
    @media (max-width: 767px) {
      display: none;
    }
    &.swiper-button-prev-common {
      left: 20px;
      transition: all 0.2s;
    }
    &.swiper-button-next-common {
      right: 20px;
      transition: all 0.2s;
    }
    .normal {
      display: block;
    }
    .hover {
      display: none;
    }
    &:hover {
      .normal {
        display: none;
      }
      .hover {
        display: block;
      }
    }
  }
  .progress-bar {
    position: relative;
    z-index: 2;
    left: 50%;
    transform: translateX(-50%);
    bottom: 30px;
    display: flex;
    justify-content: center;
  }
  .swiper-pagination-bullet {
    height: 8px;
    width: 8px;
    border-radius: 999px;
    background: rgba(243, 243, 243, 0.6);
    transition: all 0.2s;
    opacity: 1;
  }
  .swiper-pagination-bullet-active {
    width: 32px;
    position: relative;
  }
  .swiper-pagination-bullet-active::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 8px;
    border-radius: 999px;
    width: calc(100% * var(--progress) / 100);
    transition: width 0.2s;
    background: #c79f6c;
  }
}
