@charset "UTF-8";
.bg01 {
  background-attachment: fixed;
  background-position: center center;
  background-size: cover;
}

.bg02 {
  background-attachment: fixed;
  background-position: center center;
  background-size: cover;
}

.bg03 {
  background-attachment: fixed;
  background-position: center center;
  background-size: cover;
}

.bg04 {
  background-attachment: fixed;
  background-position: center center;
  background-size: cover;
}

.bg05 {
  background-attachment: fixed;
  background-position: center center;
  background-size: cover;
}

.bg06 {
  background-attachment: fixed;
  background-position: center center;
  background-size: cover;
}

.index_btn {
  border-radius: 50px;
  padding: 6px 26px;
  font-size: 20px;
  font-weight: 400;
  color: #FFF;
}

.index_btn:hover {
  background: #FFF;
}

.index_title, .index_title2 {
  text-align: center;
}
.index_title h1, .index_title2 h1 {
  position: relative;
  display: inline-block;
  letter-spacing: 2px;
}
.index_title h1::before, .index_title2 h1::before {
  content: "";
  position: absolute;
  border-style: solid;
  border-width: 20px 20px 0 0;
  left: -30px;
  top: 0px;
}
.index_title h1::after, .index_title2 h1::after {
  content: "";
  position: absolute;
  border-style: solid;
  border-width: 0 0 20px 20px;
  right: -30px;
  bottom: 0px;
}

.index_title2 h1::before {
  border-color: #fff transparent transparent transparent;
}
.index_title2 h1::after {
  border-color: transparent transparent #fff transparent;
}

.bn_mob {
  display: none;
}

.index-about {
  display: flex;
  width: 100%;
  background: rgba(255, 255, 255, 0.8117647059);
  box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.1411764706);
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  margin: 15px 0;
}
.index-about .about-left {
  width: 40%;
  overflow: hidden;
}
.index-about .about-left img {
  width: 100%;
  height: 100% !important;
  -o-object-fit: cover;
  object-fit: cover;
  display: block;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
}
.index-about .about-right {
  padding: 20px 60px;
  width: 60%;
}
.index-about .about-right .about-right-text p {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  line-height: 30px;
  letter-spacing: 2px;
  font-size: 20px;
}
.index-about:hover {
  background: #FFF;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
}
.index-about:hover .about-left img {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transform: scale(1.1);
}

.index_news {
  background: rgba(255, 255, 255, 0.7921568627);
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1882352941);
  margin: 15px 0px;
  width: 100%;
  padding: 10px 0px;
  display: flex;
  position: relative;
}
.index_news::after {
  content: "";
  position: absolute;
  left: 0px;
  bottom: 0px;
  width: 100px;
  height: 4px;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
}
.index_news .news_left {
  width: 100px;
  padding: 10px 10px;
  text-align: center;
}
.index_news .news_left .day {
  font-size: 35px;
  font-weight: 600;
  color: #707070;
}
.index_news .news_left .ym {
  font-size: 14px;
  color: #707070;
}
.index_news .news_right {
  width: calc(100% - 100px);
}
.index_news .news_right h4 {
  margin: 20px 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.index_news:hover {
  background: #fff;
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.3137254902);
}
.index_news:hover::after {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  width: 100%;
}

.service_box {
  background: #FFF;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1882352941);
  padding: 10px;
  margin: 15px 0px;
}
.service_box a .ser_text {
  margin: 10px 0px;
  text-align: center;
  font-size: 20px;
}
.service_box a .imgbox {
  cursor: pointer;
  position: relative;
  display: block;
  overflow: hidden;
  height: 0;
  width: 100%;
  padding-bottom: 59%;
  background: #FFF;
}
.service_box a .imgbox img {
  width: 100%;
  display: block;
  -o-object-fit: cover;
  object-fit: cover;
  top: 50%;
  left: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
}
.service_box:hover {
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.3137254902);
}
.service_box:hover a .imgbox img {
  transform: translate(-50%, -50%) scale(1.1);
}

/*BANNER */
.banner .swiper-banner {
  width: 100%;
}
.banner .swiper-banner .swiper-slide {
  position: relative;
  overflow: hidden;
  height: auto;
}
.banner .swiper-banner .swiper-slide img {
  position: relative;
  overflow: hidden;
}
.banner .swiper-banner .swiper-slide img a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
.banner .swiper-banner .swiper-slide img a img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
.banner .swiper-banner .swiper-button-next, .banner .swiper-banner .swiper-button-prev {
  color: #E5E5E5;
}
.banner .swiper-banner .swiper-pagination .swiper-pagination-bullet {
  width: 15px;
  height: 15px;
  background: transparent;
  border: solid 2px #F2F2F2;
}
.banner .swiper-banner .swiper-pagination .swiper-pagination-bullet-active {
  border: solid 2px #ffffff;
}

.news_bg {
  background: #F2F2F2;
}

.marquee {
  background: #F2F2F2;
  padding: 15px 0;
}
.marquee .marquee-left {
  width: 120px;
  background: #F16834;
  color: #ffffff;
  justify-content: center;
  align-items: center;
  padding: 5px;
  font-size: 20px;
  border-radius: 6px;
}
.marquee .marquee-right {
  width: calc(100% - 150px);
  padding-left: 15px;
}

div#abgne_marquee {
  position: relative;
  overflow: hidden;
  /* 超出範圍的部份要隱藏 */
  height: 40px;
}
div#abgne_marquee ul, div#abgne_marquee li {
  margin: 0;
  padding: 0;
  list-style: none;
  margin-top: -1px;
}
div#abgne_marquee ul {
  position: absolute;
}
div#abgne_marquee ul li a {
  display: block;
  overflow: hidden;
  /* 超出範圍的部份要隱藏 */
  font-size: 20px;
  color: #F16834;
  height: 43px;
  line-height: 35px;
  text-decoration: none;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}

.swiper-doingimg {
  padding: 20px 0px 40px 0px;
}
.swiper-doingimg .swiper-button-next, .swiper-doingimg .swiper-button-prev {
  width: 45px;
  bottom: 0;
  color: #000;
  opacity: 1;
  border-radius: 100px;
  background: #707070;
}
.swiper-doingimg .swiper-button-prev {
  left: calc(50% - 60px);
}
.swiper-doingimg .swiper-button-prev::after {
  font-size: 22px;
  font-weight: 600;
  color: #FFF;
}
.swiper-doingimg .swiper-button-next {
  right: calc(50% - 60px);
}
.swiper-doingimg .swiper-button-next::after {
  font-size: 22px;
  font-weight: 600;
  color: #FFF;
}

.swiper-products {
  padding: 40px 0px 40px 0px;
  position: relative;
}
.swiper-products .swiper-button-prev {
  width: 30px;
  height: 30px;
  bottom: 0;
  color: #000;
  opacity: 1;
  border-radius: 6px;
  background: #707070;
  position: absolute;
  left: calc(100% - 90px);
  top: 30px;
}
.swiper-products .swiper-button-prev::after {
  font-size: 16px;
  font-weight: 600;
  color: #FFF;
}
.swiper-products .swiper-button-next {
  width: 30px;
  height: 30px;
  bottom: 0;
  color: #000;
  opacity: 1;
  border-radius: 6px;
  background: #707070;
  position: absolute;
  right: 20px;
  top: 30px;
}
.swiper-products .swiper-button-next::after {
  font-size: 16px;
  font-weight: 600;
  color: #FFF;
}

.service .box_ser-box:nth-child(1) .box_ser a .box_text {
  background: #FFAA00;
}
.service .box_ser-box:nth-child(2) .box_ser a .box_text {
  background: #00911D;
}
.service .box_ser-box:nth-child(3) .box_ser a .box_text {
  background: #0091D1;
}
.service .box_ser-box .box_ser {
  position: relative;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  margin: 10px 0;
}
.service .box_ser-box .box_ser a {
  display: block;
}
.service .box_ser-box .box_ser a .box-div {
  width: 100%;
  position: relative;
  overflow: hidden;
  padding-bottom: 65%;
}
.service .box_ser-box .box_ser a .box-div img {
  max-height: 100%;
  max-width: 100%;
  width: auto;
  height: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  transition: transform 0.2s;
  height: 310px;
}
.service .box_ser-box .box_ser a:hover img {
  transform: scale(1.1);
}
.service .box_ser-box .box_ser a .box_text {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 6px 0px 10px 6px;
  color: #ffffff;
}

.box_act {
  background: #fff;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1882352941);
  position: relative;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  margin: 15px 0px;
}
.box_act h3 {
  padding: 10px 6px;
}
.box_act .box-div {
  width: 100%;
  position: relative;
  overflow: hidden;
  padding-bottom: 75%;
}
.box_act .box-div img {
  max-height: 100%;
  max-width: 100%;
  width: auto;
  height: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  transition: transform 0.2s;
  width: 100% !important;
}
.box_act .box-div .b-hover {
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3137254902);
  opacity: 0;
  z-index: 1;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
}
.box_act:hover {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5647058824);
}
.box_act:hover img {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transform: scale(1.1);
}
.box_act:hover .b-hover {
  opacity: 1;
}

.box {
  position: relative;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  margin: 10px 0;
}
.box h3 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #ffffff;
  text-shadow: 5px 3px 4px #000, 1px 1px 6px #000, -2px 0px 4px #000;
  z-index: 1;
}
.box .box-div {
  width: 100%;
  position: relative;
  overflow: hidden;
  padding-bottom: 36%;
}
.box .box-div img {
  max-height: 100%;
  max-width: 100%;
  width: auto;
  height: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  transition: transform 0.2s;
}
.box:hover img {
  transform: scale(1.1);
}

.link_bg {
  background: #F2F2F2;
}

.box01 {
  position: relative;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  margin: 10px 16px;
}
.box01 .box-div {
  width: 100%;
  position: relative;
  overflow: hidden;
  padding-bottom: 46%;
}
.box01 .box-div img {
  max-height: 100%;
  max-width: 100%;
  width: auto;
  height: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  transition: transform 0.2s;
  height: 100px;
}
.box01:hover img {
  transform: scale(1.1);
}

@media screen and (max-width: 1366px) {
  .box01 {
    margin: 10px 10px;
  }
  .index-about .about-right .about-right-text p {
    font-size: 16px;
    line-height: 26px;
  }
}
@media screen and (max-width: 768px) {
  .index-about {
    flex-wrap: wrap;
  }
  .index-about .about-left {
    width: 100%;
  }
  .index-about .about-right {
    padding: 20px 20px;
    width: 100%;
  }
}
@media screen and (max-width: 667px) {
  .marquee {
    padding: 0;
  }
  .marquee .marquee-left {
    width: 80px;
    font-size: 16px;
    margin: 2px 0px 2px 2px;
  }
  .marquee .marquee-right {
    width: calc(100% - 90px);
  }
  div#abgne_marquee ul li a {
    font-size: 17px;
  }
  .marquee .marquee-left {
    padding: 2px;
  }
  .index_btn {
    font-size: 18px;
  }
}
@media screen and (max-width: 575px) {
  .bg01, .b02, .b03, .b04, .b05, .b06 {
    background-attachment: scroll;
  }
  .bn_pc {
    display: none;
  }
  .bn_mob {
    display: block;
  }
  .banner .swiper-banner .swiper-pagination .swiper-pagination-bullet {
    display: none;
  }
}