/* index banner css setting */
.carousel,
.carousel-item {
  height: 100vh;
}

.carousel-inner {
  height: 100%;
}

.carousel-item img {
  object-fit: cover;
  height: 100%;
}

.index-slider .carousel-caption {
  padding-right: 5%;
  padding-left: 5%;
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(34.2%, rgba(var(--main-color-rgba), 0.85)), color-stop(60.62%, rgba(var(--main-color-rgba), 0.83)), to(rgba(255, 0, 0, 0)));
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(var(--main-color-rgba), 0.85) 34.2%, rgba(var(--main-color-rgba), 0.83) 60.62%, rgba(255, 0, 0, 0) 100%);
  bottom: 10%;
}

.index-slider .carousel-caption h5,
.index-slider .carousel-caption p {
  letter-spacing: 1px;
  margin-bottom: 0;
  text-shadow: 2px 2px 3px #000;
}

.index-slider .carousel-caption h5 {
  font-size: 28px;
  margin-bottom: 5px;
}

/* 分頁器 */
.carousel-indicators li {
  width: 10px;
  height: 10px;
  border-radius: 50%;
}

/* banner rwd */
@media screen and (max-width:991px) {
  .index-slider .carousel-caption {
    display: block !important;
    position: initial;
    background: var(--second-match-color) !important;
    ;
  }
}

@media screen and (max-width:576px) {
  .index-slider .carousel-caption h5 {
    font-size: 21px;
  }
}







/* index news css setting */
.news_in {
  background-image: none !important;
}

.news_mask {
  padding: 70px 0 30px 0;
  background-image: none !important;
  background-position: bottom;
  background-size: cover;
  background-color: #F7F7F7;
}

.news_in .ind_date {
  display: none;
}

/* news img hover */
.news_in .a_img {
  width: 100%;
  overflow: hidden;
}

.news_in .a_img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: 0.3s;
}

.news_in .col-md-4.col-sm-12:hover img {
  transform: scale(1.2);
}

@media (max-width: 480px) {
  .news_in .a_img {
    min-height: 200px;
  }
}


/* news word */
.indexNews-text p .line-height-limit {
  color: #000;
}

.news_in .col-md-4.col-sm-12:hover .indexNews-text .line-height-limit {
  color: #000;
}

/* news word box  */
.indexNews-text p {
  position: relative;
  text-align: center;
  padding: 0.7rem 0;
  width: 100%;
  margin: 1rem 0;
  font-size: 18px;
  font-weight: bold;
  background-color: transparent;
  border: none;
  outline: none;
  overflow: hidden;
  cursor: pointer;
  transition: all 0.3s ease-out;
  z-index: 1;
}

.indexNews-text p::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  transform: translateX(-100%);
  width: 100%;
  height: 100%;
  background-color: var(--main-color);
  opacity: 0.8;
  transition: all 0.5s ease-out;
  z-index: -1;
}

.indexNews-text p:hover::before {
  transform: translateX(0);
}

/* news item hover */

.news_in .col-md-4.col-sm-12:hover .indexNews-text p::before {
  transform: translateX(0);
}

/* index news rwd */
@media screen and (min-width: 1080px) {
  .news_in .a_img {
    height: 250px;
  }
}

@media screen and (min-width:992px) and (max-width:1080px) {
  .news_in .a_img {
    height: 300px;
  }
}

@media screen and (min-width:768px) and (max-width:991px) {
  .news_in .a_img {
    height: 200px;
  }
}







/* index about css setting */
section.about {
  padding: 100px 0;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  background-position: right;
  color: #000;
  overflow: hidden;
  position: relative;
}

section.about .container {
  max-width: 1460px;
}

.ab-content {
  width: 50%;
  padding: 50px;
  position: sticky;
}

.ab-title {
  margin-bottom: 2rem;
  color: #000;
  font-family: Arial, Helvetica, sans-serif;
  line-height: 36px;
  letter-spacing: 0;
  font-weight: bold;
}

.ab-content p {
  line-height: 27px;
  color: #000;
  font-family: Arial, Helvetica, sans-serif;
  padding-right: 2rem;
}

/* ab-pic */
.ab-pic-list {
  display: flex;
  justify-content: center;
  align-items: center;
}

.ab-pic-box {
  clip-path: polygon(20px 0, 100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%, 0 20px);
}

.ab-pic-box img {
  transition: all 0.3s;
}

.ab-pic-item:hover .ab-pic-box img {
  transform: scale(1.2);
}

/* index ab rwd */
@media (max-width :992px) {

  section.about::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #ffffffd2;
  }
}







/* index pdt css setting */
.index-product {
  position: relative;
  padding: 100px 0;
  overflow: hidden;
  background-color: #FFF;
  background-image: none !important;
}

.index-product .pli_list {
  flex-direction: column;
}

/* pdt pic */
.pro_in1>a {
  width: 100%;
  overflow: hidden;
}

.pro_in1>a>img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* pdt word */
.pro_in1 .pli_list .line-height-limit,
.pro_in1 .pli_list a {
  font-weight: 700;
  font-family: Arial, Helvetica, sans-serif !important;
  color: #000;
}

.pro_in1:hover .pli_list .line-height-limit {
  color: #000;
}

.pro_in1:hover .pli_list a {
  color: #000;
}

/* pdt word box */
.pli_list {
  position: relative;
  text-align: center;
  padding: 0.7rem 0;
  width: 100%;
  margin: 1rem 0;
  font-size: 18px;
  font-weight: bold;
  background-color: transparent;
  border: none;
  outline: none;
  overflow: hidden;
  cursor: pointer;
  transition: all 0.3s ease-out;
  font-weight: 700;
  font-family: Arial, Helvetica, sans-serif !important;
  z-index: 1;
}

.pli_list::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  transform: translateX(-100%);
  width: 100%;
  height: 100%;
  background-color: var(--main-match-color);
  transition: all 0.5s ease-out;
  z-index: -1;
}

.pli_list:hover::before {
  transform: translateX(0);
}

/* pdt item hover */

.pro_in1:hover:hover .pli_list::before {
  transform: translateX(0);
}

/* index pdt rwd */
@media screen and (min-width:992px) {
  .pro_in1>a {
    height: 300px;
  }
}

@media screen and (min-width:767px) and (max-width:991px) {
  .pro_in1>a {
    height: 220px;
  }
}

@media (max-width:991px) {
  .index-product {
    padding: 50px 0;
  }
}







/* index slogan css setting */
.slogan {
  padding: 100px 0;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #eee;
  background-image: none !important;
}

.slogan .container {
  max-width: 1460px;
}

.slogan-content {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding: 1rem;
}

.slogan-item {
  padding: 1rem;
}

.slogan-project {
  display: flex;
  align-items: center;
  width: 100%;
  margin: 1.5rem 0;
}

.icon-box {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.6rem;
  width: 10%;
  border-radius: 50%;
  box-shadow: 0 0 30px rgb(0 0 0 / 15%);
  background-color: #fff;
  -webkit-transition: all .5s;
  -ms-transition: all .5s;
  transition: all .5s;
  position: relative;
  z-index: 1;
}

.icon-box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.icon-box::after {
  content: "";
  height: 100%;
  width: 100%;
  border-radius: 50%;
  transform: scale(0);
  background-color: var(--main-color);
  -webkit-transition: all .5s;
  -ms-transition: all .5s;
  transition: all .5s;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
}

.slogan-project:hover .icon-box::after {
  transform: scale(1);
}

.slogan-box.word {
  padding-left: 2rem;
  width: 90%;
}

.slogan-box.word h3 {
  font-family: Arial, Helvetica, sans-serif;
  font-weight: bold;
  color: var(--main-color-darken);
}

.slogan-box.word p {
  letter-spacing: 0px;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 500;
  line-height: 28px;
}

.slogan-item.pic .slogan-part {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}

@media (max-width:767px){
  .slogan-project{
    flex-direction: column;
    align-items: flex-start;
  }

  .icon-box{
    width: 80px;
  }

  .slogan-box.word{
    width: 100%;
    padding: 1.5rem 0;
  }
}