/*------------------------------------*\
    $CONTENTS
\*------------------------------------*/
/**
 * ALL
 * BANNER
 * MAIN
 * PRODUCT
 * ABOUT
 * NEWS
 **/
/*------------------------------------*\
    ALL
\*------------------------------------*/
.swiper-pagination {
  display: block;
}
.swiper-pagination-bullet {
  background-color: #ffffff;
  opacity: 1;
}
.swiper-pagination-bullet-active {
  background-color: #00afe3;
}
@media (min-width: 992px) {
  .swiper-pagination {
    display: none;
  }
}

/*------------------------------------*\
    BANNER
\*------------------------------------*/
.banner::before {
  display: none;
}
.banner .swiper-slide {
  position: relative;
}
.banner .swiper-slide>a {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
}
@media (min-width: 575px) {
  .banner .swiper-slide .banner-pic img {
    display: none;
  }
  .banner .swiper-slide>a {
    display: none;
  }
}
@media (max-width: 575px) {
  .banner .swiper-slide .banner-pic {
    background: none !important;
  }
}
.banner .swiper-control {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  padding: 0 15px;
  margin-top: 25rem;
  z-index: 1000;
  display: none;
}
.banner .swiper-control .swiper-button-prev::after,
.banner .swiper-control .swiper-button-next::after {
  color: #ffffff;
  font-size: 1.25rem;
}
.banner .swiper-control .swiper-button-prev {
  left: 0;
}
.banner .swiper-control .swiper-button-next {
  left: 80px;
}
@media (min-width: 992px) {
  .banner .swiper-control {
    display: block;
    margin: 13rem auto 0;
  }
}
@media (min-width: 1400px) {
  .banner .swiper-control {
    width: 1280px;
    padding: 0;
  }
}
.banner-pic {
  height: 500px;
}
@media (min-width: 992px) {
  .banner-pic {
    height: 900px;
  }
}
.banner-txt {
  color: #ffffff;
  text-align: left;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  padding: 0 15px;
}
@media (min-width: 1400px) {
  .banner-txt {
    width: 1280px;
    padding: 0;
    margin: 0 auto;
  }
}
.banner-txt .title {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 0.1rem;
  margin-bottom: 1.25rem;
}
@media (min-width: 768px) {
  .banner-txt .title {
    font-size: 3.75rem;
  }
}
.banner-txt .text {
  font-size: 1rem;
  font-weight: bold;
  line-height: 2;
  letter-spacing: 0.2rem;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .banner-txt .text {
    font-size: 1.1875rem;
  }
}
.banner-txt .btn {
  border-color: #ffffff;
  color: #ffffff;
  text-align: center;
  display: none;
}
.banner-txt .btn:hover {
  border-color: #00afe3;
}
@media (min-width: 576px) {
  .banner-txt .btn {
    display: block;
  }
}
/*------------------------------------*\
    MAIN
\*------------------------------------*/
main {
  padding: 0;
}
main .swiper-control {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  right: 1rem;
  bottom: 2rem;
  z-index: 1000;
  margin-top: 1rem;
}
main .swiper-control .swiper-button-prev,
main .swiper-control .swiper-button-next {
  position: relative;
}
main .swiper-control .swiper-button-prev::after,
main .swiper-control .swiper-button-next::after {
  color: #303233;
  font-size: 1.5rem;
}
main .swiper-control .swiper-button-next {
  margin-left: 3rem;
}
@media (min-width: 768px) {
  main .swiper-control {
    right: 3rem;
    bottom: 3rem;
  }
}
@media (min-width: 1200px) {
  main .swiper-control {
    right: 9.5rem;
    bottom: 4.5rem;
  }
}

/* PAGE-TITLE */
.page-title {
  margin-bottom: 2rem;
}
@media (min-width: 992px) {
  .page-title {
    margin-bottom: 4rem;
  }
}
.page-title .title {
  color: #303233;
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: 0.125rem;
  margin-bottom: 0;
}
.page-title .title span {
  display: block;
  color: #fcd600;
  font-family: "Poppins", sans-serif;
  font-size: 1.125rem;
  font-weight: normal;
  letter-spacing: 0.05rem;
  margin-bottom: 1.5rem;
}
@media (min-width: 576px) {
  .page-title .title {
    font-size: 1.875rem;
  }
  .page-title .title span {
    font-size: 1.3125rem;
  }
}
.page-title .text {
  letter-spacing: 0.15rem;
  line-height: 1.8;
  margin-top: 1rem;
}

/* MORE */
.more {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  color: #303233;
  padding-bottom: 0.5rem;
}
.more:hover {
  border-color: #00afe3;
  color: #00afe3;
}

/*------------------------------------*\
    PRODUCT
\*------------------------------------*/
.index-product-pic {
  background-position: left top;
  background-size: cover;
  min-height: 600px;
}
.index-product-pic img {
  display: block;
}
@media (max-width: 575px) {
  .index-product-pic {
    background: none !important;
    min-height: 100%;
  }
}
@media (min-width: 576px) {
  .index-product-pic img {
    display: none;
  }
}
@media (min-width: 1200px) {
  .index-product-pic {
    min-height: 700px;
  }
}
.index-product-txt {
  position: relative;
  padding: 2rem 1rem;
}
.index-product-txt .swiper-product {
  margin-bottom: 1.5rem;
}
.index-product-txt .product-list-item {
  padding: 0;
}
@media (min-width: 768px) {
  .index-product-txt {
    padding: 3rem;
  }
}
@media (min-width: 1200px) {
  .index-product-txt {
    padding: 4.5rem;
    padding-right: 0;
  }
}
@media (min-width: 1680px) {
  .index-product-txt {
    padding-left: 7rem;
  }
  .index-product-txt .swiper-slide {
    width: 260px !important;
  }
}

/*------------------------------------*\
    ABOUT
\*------------------------------------*/
.index-about {
  background-attachment: fixed;
  background-position: center;
  background-size: cover;
  color: #ffffff;
  text-align: center;
  padding: 3rem 0;
}
@media (min-width: 992px) {
  .index-about {
    padding: 8rem 0;
  }
}
.index-about .page-title {
  margin-bottom: 1.5rem;
}
.index-about .page-title .title {
  color: #ffffff;
  font-size: 2rem;
}
.index-about .page-title .title > b {
  position: relative;
}
.index-about .page-title .title > b::before {
  content: "";
  background: -webkit-gradient(linear, left top, right top, from(#f7d740), to(#31aede));
  background: -o-linear-gradient(left, #f7d740 0%, #31aede 100%);
  background: linear-gradient(to right, #f7d740 0%, #31aede 100%);
  height: 20px;
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  opacity: 0.7;
  z-index: 0;
}
.index-about .page-title .title > b b {
  position: relative;
  z-index: 2;
}
@media (min-width: 576px) {
  .index-about .page-title .title {
    font-size: 2.875rem;
  }
}
.index-about .btn {
  border-color: #ffffff;
  color: #ffffff;
}
.index-about .btn:hover {
  border-color: #00afe3;
}
.index-about-text {
  font-size: 1.125rem;
  letter-spacing: 0.05rem;
  line-height: 1.8;
  text-align: justify;
  margin-bottom: 3rem;
  padding: 0 1rem;
}
@media (min-width: 576px) {
  .index-about-text {
    font-size: 1.3125rem;
    letter-spacing: 0.2rem;
    text-align: center;
  }
}

/*------------------------------------*\
    NEWS
\*------------------------------------*/
.index-news {
  margin-bottom: -0.5rem;
  overflow: hidden;
  position: relative;
}
@media (min-width: 1400px) {
  .index-news .container-fluid .row > [class*=col-]:first-child {
    width: 30%;
  }
  .index-news .container-fluid .row > [class*=col-]:last-child {
    width: 70%;
  }
}
.index-news-txt {
  background-color: #ffffff;
  position: relative;
  z-index: 2;
  padding: 2rem 1rem;
}
@media (min-width: 768px) {
  .index-news-txt {
    padding: 3rem;
  }
}
@media (min-width: 1200px) {
  .index-news-txt {
    -webkit-box-shadow: 15px 0 20px rgba(0, 0, 0, 0.2);
            box-shadow: 15px 0 20px rgba(0, 0, 0, 0.2);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 4rem 3rem;
  }
  .index-news-txt .swiper-control {
    right: 6.5rem;
  }
}
@media (min-width: 1400px) {
  .index-news-txt {
    padding: 4.75rem 6rem 4rem;
  }
}
.index-news-list .news-list-item {
  margin-bottom: 0;
}
@media (min-width: 1680px) {
  .index-news-list .swiper-slide {
    width: 410px !important;
  }
}