/* CSS Document */

body {	-webkit-text-size-adjust:100%; font-family: 'Noto Sans TC', sans-serif; overflow-x: hidden; position: relative;}
img {	border:0; }

/* Reset ================================================================================= */

a { text-decoration:none; transition: all 0.4s ease-out 0s; }
a:hover { text-decoration:none; }

* { box-sizing: border-box;}

.content-Box { max-width:1440px; width: 100%; margin:0 auto; text-align:left; position:relative; clear:both;}
.content-Box-2 { max-width:1200px; width: 100%; margin:0 auto; text-align:left; position:relative; clear:both;}

#content { font-size: 20px; line-height:1.6; color: #333; letter-spacing: 0; font-weight: 400; padding-top: 145px;}
#content p{ margin-bottom: 30px; margin-top: 0; font-size: 16px;line-height:1.6;  font-weight: 400;}
p, td, li, label { font-size: 20px;line-height:1.6;  font-weight: 400;}

.photo-fit img { object-fit: cover; width: 100%; height: 100%; position: absolute; z-index: 1; left: 0; top: 0;}

.photo {line-height: 0; height: 0; padding-bottom: 40%; overflow: hidden; position: relative; z-index: 1; margin-bottom: 0px;}
.imgCenter {position: absolute; top: 0; left: 0; right: 0; bottom: 0; line-height: 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; z-index: 2;}
.imgCenter img {max-height: 100%;}

.demo-section { padding-left: 5%; padding-right: 5%;}

.banner { position: relative;}
.banner h2, .banner h1 { position: absolute; top:50%; left: 50%; transform: translate(-50%, -50%); display: inline-block; border: 1px solid #3ec5b3; padding:6px 20px 12px 20px; line-height: 1;  margin: 0; font-weight: 700; font-size: clamp(24px, 3.5vw, 50px); color: #fff; text-align: center;}
.banner-pc img, .banner-mobile img  { object-fit: cover; width: 100%; height: 100%;}
.banner-pc { height: 353px;}
.banner-mobile { display: none ;}

#path { position: relative; z-index: 3;  padding: 10px 0 calc(10px + 1%) 0;}
#path ul { margin: 0; padding: 0; position: relative; text-align: right;}
#path li { display: inline-block; vertical-align: top; font-size: 12px; line-height: 1.4;}
#path li:after { content:"/"; display: inline-block; vertical-align: top; padding: 0 0 0 4px;}
#path li:last-child { pointer-events: none;}
#path li:last-child:after { display: none;}
#path li a { color: #333; }
#path li a:hover{ color: #3ec5b3;}
#path li:last-child a { pointer-events:none;}

.title01 { position: relative; padding-bottom: calc(15px + 1%); margin-bottom: calc(20px + 2%); text-align: center;}
.title01:after { position: absolute; content: ""; background: #3ec5b3; width: 100px; height: 3px; left: 50%; bottom: 0; transform: translateX(-50%);}
.title01 h1, .title01 div { font-weight: 700; font-size: clamp(22px, 3.2vw, 38px); color: #000; letter-spacing: 0; line-height: 1.1; padding: 0; margin: 0;}

.color-green { color: #3ec5b3;}

/*about*/
.about-section-1 { border-top: 1px solid #dddddd; padding: calc(20px + 3%) 0;  margin-top:calc(20px + 4%); display: flex; flex-direction: row; flex-wrap: wrap;}
.about-section-1 > div { width: 25%; text-align: center;}
.about-section-1 > div > span { display: block; text-align: center; padding-bottom: 5px; font-size: clamp(34px, 3.2vw, 46px); font-weight: 500; line-height: 1.2; color: #3ec5b3;}

.about-section-2 { display: flex; flex-direction: row; flex-wrap: wrap; padding-bottom: calc(20px + 5%);}
.about-section-2 > div { width: 50%; padding: calc(20px + 3%);}
.about-section-2 > div:nth-of-type(1) { background: #3ec5b3; color: #fff;}
.about-section-2-pto { margin-bottom: 15px; text-align: center;}

.about-section-3 { background: url("../images/about-section-3-bg.jpg") no-repeat center center / cover; padding: calc(20px + 2%) 5%;}
.about-section-3-list { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between;}
.about-section-3-list > div { width: calc(25% - 8px); background: #fff; border-radius: 5px; padding: calc(20px + 2%) 15px; box-shadow: 0px 0px 10px 0px rgba(160,169,178,0.15); display: flex; flex-direction: column; flex-wrap: nowrap; align-items: center; line-height: 1.4; margin-bottom: 16px;}
.about-section-3-list > div > div { text-align: center;}
.about-section-3-list > div > div:nth-of-type(1) { margin-bottom: 25px;}
.about-section-3-list > div > div:nth-of-type(2) { font-weight: 700; padding-bottom: 5px;}

.about-section-4 { padding: calc(20px + 4%) 5%;}

/*products*/
.products-section { display: flex; flex-direction: row; flex-wrap: wrap; padding-bottom: calc(20px + 3%); }
.products-section > div { padding-bottom: 25px; }
.products-section > div:nth-of-type(1) { width: 316px; }
.products-section > div:nth-of-type(2) { width: calc(100% - 316px); padding-left: calc(20px + 4%); }
.products-section > div:nth-of-type(2) .title01 { text-align:left;}
.products-section > div:nth-of-type(2) .title01:after { left: 0%; transform: translateX(0%);}

.pro-R h2 { font-size: 1.75rem; }
.pro-R h3 { font-size: 1.65rem; }
.pro-R h4 { font-size: 1.35rem; }
.pro-R h5 { font-size: 1.25rem; }
.pro-R h6 { font-size: 1rem; font-weight: 600; }
.pro-R ul,.pro-R ol { margin-bottom: 30px;}
.pro-R ul li,.pro-R ol li{ font-size: 1rem; margin-bottom: 3px; }

.pro-list { display: flex; flex-direction: row; flex-wrap: wrap; border-width: 1px 0 0 1px; border-style: solid; border-color: #cccccc; margin-bottom: calc(25px + 2%);}
.pro-list > a { background: #fff;  border-width: 0 1px 1px 0; border-style: solid; border-color: #cccccc; padding: 0 0 18px 0; width: 25%;}
.pro-list > a:hover { background: #3ec5b3;}
.pro-list > a:hover .pro-list-title { color: #fff;}
.pro-list > a:hover .pro-list-pto img { transform: scale(1);}
.pro-list-pto { padding-bottom: 100%;margin-bottom: 5px;}
.pro-list-pto img { transition: all 2s ease-out 0s; transform: scale(0.9); -o-object-fit: cover; object-fit: cover; height: 100% !important;}
.pro-list-title { text-align: center; font-weight: 500; font-size: 18px; height: 50px; line-height: 1.3;
display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis}

.page-box { display: flex; flex-direction: row ;flex-wrap: wrap; justify-content:center;}
#page { text-align: center; display: flex; flex-direction: row ;flex-wrap: wrap; justify-content:center; border: 1px solid #333; border-radius: 5px; width: auto;}
#page a { font-size: 16px; color: #333; font-weight: 500; width: 28px; line-height: 28px; text-align: center; border-radius: 0%; display: inline-block; border-left: 1px solid #333;}
#page a:hover, #page a.current { background: #3ec5b3; color: #fff;}
.page-prev span, .page-next  span { display: inline-block; width: 5px; height: 12px; background: #333;}
.page-prev:hover span, .page-next:hover span {background: #fff; }
.page-prev { border-left-width: 0 !important; }
.page-next { }
.page-prev span { clip-path: polygon(0% 50%, 100% 0%, 100% 100%);}
.page-next span { clip-path: polygon(0% 0%, 100% 50%, 0% 100%);}

/*products-list*/
.pro-list2-title .title01 { background: #3ec5b3; padding: calc(15px + 2%) calc(20px + 2%); margin-bottom: calc(10px + 1%);}
.pro-list2-title .title01:after { display: none;}
.pro-list2-title .title01 h1 { color: #fff;}
.pro-list2-title .title01 span { display: block; font-size: 12px; font-weight: 500; color: #fff; padding-top: 5px;}

.pro-list2 { display: flex; flex-direction: row; flex-wrap: wrap; margin-bottom: calc(25px + 2%);}
.pro-list2 > a { border-bottom: 1px solid #cccccc; padding: 5px 0; width: 20%; display: block;}
.pro-list2 > a:hover .pro-list2-link  { border: 1px solid #3ec5b3;}
.pro-list2 > a:hover .pro-list2-link-title  { background: #3ec5b3; }
.pro-list2 > a:hover .pro-list2-link-title span  { color: #fff;}
.pro-list2-link { border: 1px solid #fff;transition: all 0.4s ease-out 0s;}
.pro-list2-link-pto { padding-bottom: 100%;}
.pro-list2-link-pto img { transition: all 2s ease-out 0s; transform: scale(0.95);}
.pro-list2-link-title  { padding: 10px 7px;transition: all 0.4s ease-out 0s;}
.pro-list2-link-title span  { text-align: center; font-weight: 500; font-size: 16px; min-height: 75px; line-height: 1.3; 
display: -webkit-box; /* -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis*/}

/*products-detail*/
.products-detail-top { display: flex; flex-direction: row; flex-wrap: wrap; align-items: flex-start; padding-bottom: calc(20px + 4%);}
.products-detail-top > div:nth-of-type(1) { width: 35%; border: 1px solid #666666; padding: 0; position: relative;}
.products-detail-top > div:nth-of-type(2) { width: 65%; padding-left: 5%;}

.products-detail-tool { position: relative;}
	
    .swiper-slide {
      text-align: center;
      font-size: 18px;
      display: flex;
      justify-content: center;
      align-items: center;
    }

    .swiper-slide img {
      display: inline-block;
      width: inherit;
      /*height: 100%;
      object-fit: cover;*/
    }

    .swiper {
      width: 100%;
      height: 300px;
      margin-left: auto;
      margin-right: auto;
    }

    .swiper-slide {
      background-size: cover;
      background-position: center; padding: 0 5px;
    }

    .mySwiper2 {
      height: 80%;
      width: 100%; margin-bottom: 25px;
    }

    .mySwiper {
      height: auto;
      box-sizing: border-box;
    }

    .mySwiper .swiper-slide {
      width: 25%;
      height: 100%;
      opacity: 0.4;
    }

    .mySwiper .swiper-slide-thumb-active {
      opacity: 1;
    }

.swiper-next, .swiper-prev { width: 26px !important; height: 26px !important; border-radius: 100%; background: #0471bd; position: absolute; z-index: 2; display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: center; align-items: center; top:26%;}
.swiper-next:after, .swiper-prev:after { content: ""; display: block; width: 6px; height: 6px ; border-width: 1px 1px 0 0; border-color: #fff; border-style: solid;}
.swiper-prev:after { transform: rotate(-135deg);}
.swiper-next:after { transform: rotate(45deg);}
.swiper-prev { left: -30px;}
.swiper-next { right: -30px;}

.swiper-button-next, .swiper-button-prev { width: 26px !important; height: 26px !important; border-radius: 100%; background: #3ec5b3; position: absolute; z-index: 2; display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: center; align-items: center; top:26%;}
.swiper-button-next:after, .swiper-button-prev:after { content: "" !important; display: block; width: 6px; height: 6px ; border-width: 1px 1px 0 0; border-color: #fff; border-style: solid;}
.swiper-button-prev:after { transform: rotate(-135deg);}
.swiper-button-next:after { transform: rotate(45deg);}
.swiper-button-prev { left: -30px;}
.swiper-button-next { right: -30px;}

.p-detail-tag { padding-bottom: calc(10px + 1%); display: flex; flex-direction: row; flex-wrap: wrap;}
.p-detail-tag > a { display: inline-block; margin: 0 10px 10px 0; color: #fff; line-height: 1.1; background: #000; padding:3px 10px 6px 10px; font-weight: 500; font-size: 12px; }

.p-detail-title { border-bottom: 1px solid #000; padding-bottom: calc(12px + 1%); margin-bottom:calc(12px + 1%);}
.p-detail-title h1 { font-size: 20px; font-weight: 700; line-height: 1.3; padding: 0; margin: 0; letter-spacing: 0;}
.p-detail-data { padding-bottom: calc(20px + 3%); font-size: 16px;}
.p-detail-btn { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between;}
.p-detail-btn > div { width: calc(50% - 10px);}

.btn01 { position: relative;  padding: 6px 12px 10px 12px; line-height: 1.2; border-radius: 20px; background: #3ec5b3; color: #fff; font-weight: 700;  text-align: center; overflow: hidden; display: block; margin: 0 auto; border-width: 0;transition: all 0.4s ease-out 0s; }
.btn01:after { position: absolute; content: ""; left: 50%; transform: translateX(-50%); width: 150%; height: 0%; bottom: -10px; transition: all 0.3s ease-out 0s; background: #088f7d;}
.btn01:hover { transform: scale(0.9);}
.btn01:hover:after { height: 160%;}
.btn01 > span { position: relative; z-index: 3; display: inline-block; font-size: clamp(16px, 1vw, 20px); font-weight: 700; color: #fff !important}

.p-detail-bottom-btn { display: flex ;flex-direction: row; flex-wrap: wrap; justify-content: space-between;}
.p-detail-bottom-btn > div { margin-bottom: 20px;}
.p-detail-bottom-btn > div:nth-of-type(1) { width: 180px;}
.p-detail-bottom-btn > div:nth-of-type(2) { width: 240px; display: flex ;flex-direction: row; flex-wrap: nowrap; justify-content:space-between}
.p-detail-bottom-btn > div:nth-of-type(2) > div { width: calc(50% - 5px);}
.p-detail-bottom-btn > div:nth-of-type(2) > div .btn01 { border: 2px solid #3ec5b3; background: #fff;padding: 4px 12px 8px 12px;}
.p-detail-bottom-btn > div:nth-of-type(2) > div .btn01:after { background: #3ec5b3;}
.p-detail-bottom-btn > div:nth-of-type(2) > div .btn01 > span { color: #3ec5b3 !important;}
.p-detail-bottom-btn > div:nth-of-type(2) > div .btn01:hover > span { color: #fff !important;}

/*news*/
.news-box { padding-bottom: calc(20px + 5%);}
.news-list { display: flex; flex-direction: row; flex-wrap: wrap; padding-bottom: calc(10px + 1%);}
.news-list > a { width: 33.33%; padding: 0 8px calc(20px + 2%) 8px; display: block;}
.news-list > a:hover .news-list-pto { transform: scale(0.95) rotate(-2deg);box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.3);}
.news-list-pto { border: 1px solid #666666; padding-bottom: 64.25%; margin-bottom: 10px; transition: all 0.4s ease-out 0s; }
.news-list-data { padding: 0 12px; font-weight: 500; }
.news-list-date { font-size: 13px; color: #0066cc; line-height: 1; padding-bottom: 8px; }

.post-edit{ padding-bottom: calc(25px + 2%); }

/*contact*/
.contact-section { padding-bottom: calc(20px + 3%);display: flex; flex-direction: row; flex-wrap: wrap; }
.contact-section > div { padding-bottom: calc(10px + 2%);}
.contact-section > div .title01 { text-align:left; margin-bottom: calc(10px + 1%);}
.contact-section > div .title01:after { left: 0%; transform: translateX(0%);}

.contact-section > div:nth-of-type(1) { width: 400px;}
.contact-section > div:nth-of-type(2) { width: calc(100% - 400px); padding: 0 5%;}

.contact-right-box { max-width: 600px; margin: 0 auto; text-align: left; color: #999;}

.contact-form {  }
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #999; opacity:1;
}
input::-moz-placeholder, textarea::-moz-placeholder { /* Firefox 19+ */
  color: #999; opacity:1;
}
input:-ms-input-placeholder, textarea:-ms-input-placeholder { /* IE 10+ */
  color: #999; opacity:1;
}
input:-moz-placeholder, textarea:-moz-placeholder { /* Firefox 18- */
  color: #999; opacity:1;
}
.contact-info { max-width: 490px; margin: 0 auto 0 0; padding: 0 7%;}

.contact-main input[type="text"], .contact-main input[type="number"], .contact-main input[type="tel"], .contact-main input[type="phone"], .contact-main input[type="date"], .contact-main input[type="email"], .contact-main input[type="password"], .contact-main input[type="button"], .contact-main textarea { font-size: clamp(16px, 1vw, 20px); border-width:0 0 1px 0; border-style: solid; border-color: #666; margin: 0px 0 0 0; width: 100%; padding: 12px 0; color:#999; background: none; font-family: 'Noto Sans TC', sans-serif; letter-spacing: 0; height: 51px;}
.contact-main textarea { height:96px; padding:15px 0; letter-spacing: 1px; resize: none; }
.contact-main select{  margin: 0px 0 0 0; min-width: 80px; width:100%; background-image: url(../images/product-select.png); background-repeat: no-repeat; background-position: calc(100% - 10px) 26px; -webkit-appearance: none; -moz-appearance: none; appearance: none;   margin-right:4px; background-color: transparent; font-size: clamp(16px, 1vw, 20px); border-width:0 0 1px 0; border-style: solid; border-color: #666; mwidth: 100%; color:#999; font-family: 'Noto Sans TC', sans-serif; height: 51px; padding: 0 35px 0 0;  letter-spacing: 0;}
.contact-main option { padding:1px 5px;}
.contact-main select::-ms-expand {
    display: none;
}

.contact-form-3 { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between;}
.contact-form-3 > div { width: calc(50% - 12px);}

.contact-btn { margin-top: 25px;}
.contact-btn .btn01 { width: 120px;}

@media only screen and (max-width: 1365px) {
    #content { font-size: 16px; padding-top: 90px; }
    #content p{ font-size: 16px;}
    p, td, li, label { font-size: 16px;}
	
	
	
}
@media only screen and (max-width: 1279px) {
	#path ul { text-align: left;}

	.products-section > div:nth-of-type(1) { width: 100%; }
	.products-section > div:nth-of-type(2) { width: calc(100% - 0px); padding-left: 0; }
	
	.products-detail-top > div:nth-of-type(1) { width: 100%; margin-bottom: 25px;}
	.products-detail-top > div:nth-of-type(2) { width: 100%; padding-left: 0%;}
	
	.contact-section > div:nth-of-type(1) { width: 100%;}
	.contact-section > div:nth-of-type(2) { width: calc(100% - 0px); padding: 0 0%;}
	.contact-right-box { max-width: 100%; }

}

@media only screen and (max-width: 980px) {
	.banner-pc { display: none ;}
	.banner-mobile { display: block ; height: 220px;}
	
	.title01:after { width: 60px; }
	
	.pro-list2 > a { width: 33.33%;}
	
	.contact-form-3 > div { width: 100%;}
	
}
@media only screen and (max-width: 768px) {
	.about-section-1 > div { width: 50%; padding-bottom: 20px;}
	
	.about-section-2 > div { width: 100%;}
	
	.about-section-3-list > div { width: calc(50% - 8px); }
	
	.pro-list > a { width: 50%;}
	
	.news-list > a { width: 50%; }
}
@media only screen and (max-width: 640px) {
	
}
@media only screen and (max-width: 570px) {
	.about-section-3-list > div { width: 100%; }
	.about-section-3-list > div > div:nth-of-type(1) { margin-bottom: 15px;}
	
	.pro-list2 > a { width: 50%;}
	
	.news-list > a { width: 100%; }
	.news-list-data { padding: 0 0px; }
}

@media only screen and (max-width: 414px) {
	.banner h2, .banner h1 { left: 10%; transform: translate(0%, -50%); width: 80%;}
	
	.about-section-1 > div { width: 100%; }
	
	.p-detail-btn > div { width: calc(100% - 0px); margin-bottom: 10px;}
}

@media only screen and (max-width: 320px) {
	.pro-list > a { width: 100%;}
	
	.pro-list2 > a { width: 100%;}
	
}