/* 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 { font-size: clamp(18px, 1.5vw, 20px); line-height:1.7; color: #333; letter-spacing: 0; font-weight: 300; padding-top: 125px;}

.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: 3%; padding-right: 3%;}

.font-size-18 { font-size: clamp(16px, 1.3vw, 18px);}
.font-size-20 { font-size: clamp(18px, 1.5vw, 20px);}
.font-size-21 { font-size: clamp(18px, 1.6vw, 21px);}
.font-size-22 { font-size: clamp(20px, 1.7vw, 22px);}
.font-size-24 { font-size: clamp(20px, 1.9vw, 24px);}
.font-size-26 { font-size: clamp(21px, 2.0vw, 26px);}
.font-size-28 { font-size: clamp(22px, 2.2vw, 28px);}
.font-size-30 { font-size: clamp(22px, 2.5vw, 30px);}
.font-size-32 { font-size: clamp(22px, 2.6vw, 32px);}
.font-size-36 { font-size: clamp(22px, 3.3vw, 36px); line-height: 1.3;}
.font-size-40 { font-size: clamp(26px, 3.3vw, 40px); line-height: 1.3;}
.font-size-42 { font-size: clamp(26px, 3.3vw, 42px); line-height: 1.3;}
.font-size-44 { font-size: clamp(26px, 3.5vw, 44px); line-height: 1.3;}
.font-size-48 { font-size: clamp(26px, 3.5vw, 48px); line-height: 1.3;}
.font-size-60 { font-size: clamp(32px, 4vw, 60px); line-height: 1.2;}

.font-noto-serif { font-family: "Noto Serif TC", sans-serif; }

.color-white { color: #fff !important;}
.color-red { color: #cb1d20 !important;}
.color-orange { color: #e17a15 !important;}
.color-gray { color: #333 !important;}
.color-green { color: #32a2b0 !important;}
.color-black { color: #000 !important;}

.align-center { text-align: center !important;}
.align-left { text-align: left !important;}
.align-right { text-align: right !important;}

.weight-100 { font-weight: 100;}
.weight-300 { font-weight: 300;}
.weight-400 { font-weight: 400;}
.weight-500 { font-weight: 500;}
.weight-600 { font-weight: 600;}
.weight-700 { font-weight: 700;}
.weight-900 { font-weight: 900;}

.width-1280 { max-width: 1280px; margin: 0 auto; text-align:left;}
.width-1100 { max-width: 1100px; margin: 0 auto; text-align:left;}
.width-1000 { max-width: 1000px; margin: 0 auto; text-align:left;}

.width-50 { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between;}
.width-50 > div { width: 48%;}

.p-layout { margin: 0; padding:0 0 calc(20px + 1%) 0; font-weight: 300; line-height: 1.7; font-size: clamp(18px, 1.5vw, 20px);}

.layout-wrap { display: flex; flex-direction: row; flex-wrap: wrap;}
.layout-nowrap { display: flex; flex-direction: row; flex-wrap: nowrap;}

.hr-type-1 { padding: 0 !important; margin: 20px 0 !important;}

.title-type-1 { padding-bottom: calc(10px + 1%);line-height: 1.3;}
.link-type-1 { text-decoration: underline;}
.link-type-1:hover { color: #32a2b0; text-decoration: underline;}

.banner { position:relative; margin-bottom: 22px;}
.banner-pto { width: 90%; border-radius: 7vw 0; margin: 0 0 0 auto; overflow: hidden;}
.banner-pto img { object-fit: cover; width: 100%; height: 100%;}
.banner-pc { }
.banner-mobile { display: none;}
.banner-title { position: absolute; z-index: 2; left: 0; top:60%; transform: translateY(-50%); background: #fff; padding: calc(20px + 1%) calc(20px + 6vw) calc(20px + 1%) 30px; border-radius: 0 20vw 20vw 0;font-family: "Noto Serif TC", sans-serif; font-weight: 600; line-height: 1.2; font-size: clamp(20px, 1.9vw, 24px);}
.banner-title span { display: block; color: #32a2b0; font-size: clamp(26px, 3.3vw, 40px); line-height: 1; font-weight: 500; padding-bottom: 8px;}

#path { padding: 0 0 calc(20px + 1%) 0; }
#path ul { margin: 0; padding: 0; text-align: right;}
#path li { display: inline-block; vertical-align: top; line-height: 1.2; font-size: 17px; letter-spacing: 0rem; position: relative; font-weight: 300;padding: 0 20px 0 0;}
#path li:after { content:""; display: inline-block; width: 7px; height: 2px; background: #28959c; top:56%; transform: translateY(-50%); right: 5px;  position: absolute;}
#path li:last-child { pointer-events: none; padding-right: 0;}
#path li:last-child:after { display: none;}
#path li a { color: #333; }
#path li a:hover { color: #28959c;}
#path li:last-child { color: #28959c;}

.main-box-bg { background: url("../images/main-bg.png") no-repeat center top; overflow: hidden;}

.title01 {  text-align: center; padding-bottom: calc(10px + 1%); padding-left: 20px; padding-right: 20px; position: relative; z-index: 3;}
.title01 > h1, .title01 > div {font-family: "Noto Serif TC", sans-serif; font-weight: 600; line-height: 1.3; display: inline-block; padding: 0; margin: 0; position: relative; font-size: clamp(26px, 3.3vw, 40px);}
.title01 > h1:before, .title01 > h1:after, .title01 > div:before, .title01 > div:after { content: ""; position: absolute;  border-radius: 100%; background: #28959c;}
.title01 > h1:before, .title01 > div:before{ width: 26px; height: 26px; opacity: 0.4; left: -25px; top:2px;z-index: -1;}
.title01 > h1:after, .title01 > div:after{ width: 52px; height: 52px; opacity: 0.1; left: -15px; top:-20px;z-index: -2;}

.btn01 { display: block; width: 208px; line-height: 56px; border-radius: 28px; border: 1px solid #249095; text-align: center; color: #fff !important;font-family: "Noto Serif TC", sans-serif; font-weight: 500; font-size: 16px;box-shadow:inset 0px 0px 0px 2px #fff; background: linear-gradient(19deg, #249095 10%, #32a2b0 100%);transition: all 0.4s ease-out 0s; }
.btn01:hover { box-shadow:inset 0px 0px 0px 0px #fff, 0px 0px 10px 0px #249095; border:2px solid #fff; transform: scale(0.9);}

.btn01 img { filter: brightness(0) invert(1); width: 24px; display: inline-block; margin-right: 4px; transform: translateY(-3px);}

/*about*/
.about-section-1 { padding-bottom: calc(20px + 3.5%); padding-top: calc(10px + 1%); display: flex; flex-direction: row; flex-wrap: wrap; align-items: center;}
.about-section-1 > div:nth-of-type(1) { width: 60%;}
.about-section-1 > div:nth-of-type(1) img { width: 100%; border-radius: 8vw; filter: drop-shadow(20px 0px 0px #d6edee);}
.about-section-1 > div:nth-of-type(2) { width: 40%; padding-left: 5%;}

.title02 { background: #249095;border-radius:calc(10px + 0.8vw); font-family: "Noto Serif TC", sans-serif; font-weight: 600; line-height: 1.2; color: #fff; font-size: clamp(22px, 2.6vw, 32px); margin-bottom: calc(20px + 1.5%); padding: 13px 20px 15px 20px;}

.about-section-2 { background: url("../images/about-bg-1.png") no-repeat 70% top; padding-bottom: calc(20px + 2%);}
.about-section-2-list { padding-bottom: 35px; margin-bottom: 35px; border-bottom: 1px solid #dbdbdb; display: flex; flex-direction: row; flex-wrap: wrap; }
.about-section-2-list > div:nth-of-type(1) { width: 66%; padding-right: 7%; position: relative; display: flex; flex-direction: row; flex-wrap: wrap; align-items: center;}
.about-section-2-list > div:nth-of-type(1) > div:nth-of-type(1) { width: 140px; height: 140px; border-radius: 100%; position: relative; box-shadow:inset 0px 0px 0px 5px #75c3cd, 0px 0px 20px 0px rgba(0,0,0,0.1);}
.about-section-2-list > div:nth-of-type(1) > div:nth-of-type(1) img { position: absolute; top:50%; left: 50%; transform: translate(-50%, -50%);}
.about-section-2-list > div:nth-of-type(1) > div:nth-of-type(2) { width: calc(100% - 140px); padding-left: 25px; }
.about-section-2-list > div:nth-of-type(1) > div:nth-of-type(2) > span { display: block;font-family: "Noto Serif TC", sans-serif; color: #249095; font-weight: 600; line-height: 1.3; padding-bottom: 10px;font-size: clamp(21px, 2.0vw, 26px);}
.about-section-2-list > div:nth-of-type(1):after { content: ""; position: absolute; width: 1px; height: 100%; background: #dbdbdb; top: 0; right: 0;}
.about-section-2-list > div:nth-of-type(2) { width: 34%; padding-left: 4%; padding-top: 12px; padding-bottom: 12px; font-size: clamp(20px, 1.7vw, 22px); line-height: 1.5;}
.about-section-2-list > div:nth-of-type(2) > span { display: block;font-family: "Noto Serif TC", sans-serif; color: #249095; font-weight: 500; line-height: 1.3; padding-bottom: 10px;font-size: clamp(18px, 1.5vw, 20px);}

.about-gallery-content { display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; padding-bottom: calc(20px + 3.5%);}
.about-gallery-content > div:nth-of-type(1) { width: 60%; padding:0 4.5%;}
.about-gallery-content > div:nth-of-type(2) { width: 40%;}
.about-gallery-content-b > div:nth-of-type(1) { order: 2;}
.about-gallery-content-b > div:nth-of-type(2) { order: 1;}
.about-pto { position: relative;}
.about-pto-name { position: absolute; text-align: center; width: 100%; left: 0; bottom: 0; background: rgba(0,0,0,.3); line-height: 1.2; padding: 12px 5%; color: #fff; font-weight: 700;font-size: clamp(18px, 1.5vw, 20px);  z-index: 2;}

.loop { margin-bottom: 0px;position: relative;filter: drop-shadow(0px 14px 0px #d6edee);  }
.loop .owl-dots { display: none;}
.loop .owl-item {position: relative;border-radius: 9vw; overflow:hidden; }
.loop .owl-item a {display: block; width: 100%;}
.loop .owl-item > div {display: flex; flex-direction: column; flex-wrap: nowrap; justify-content: center; align-items: center;}
.loop .owl-nav { position: absolute; top:50%;left:0%; width: 100%; z-index: 11; transform: translateY(-50%);}
.loop .owl-prev, .loop .owl-next { position:absolute; z-index:100; top:50%; transform: translateY(-50%); background:#249095 !important; width: 50px; height: 50px; border-radius: 100% !important; border: 1px solid #249095 !important;  text-align: center; margin: 0 !important; }
.loop .owl-prev { left:-25px; }
.loop .owl-next { right:-25px;}
.loop .owl-prev:before, .loop .owl-next:before { content: "";font-family: 'Font Awesome 5 Free';font-weight: 900 !important;font-size:30px; color: #fff; opacity: 1;transition: all 0.4s ease-out 0s; display: block;width: 15px; height: 15px; border-width: 1px 1px 0 0; border-color: #fff; border-style: solid; background-size: contain; margin: 0 auto;}
.loop .owl-prev:before { transform:translateX(3px) rotate(-135deg);}
.loop .owl-next:before { transform:translateX(-3px)  rotate(45deg); }
/*.loop .owl-prev:hover:before, .loop .owl-next:hover:before { opacity: 1;}*/
.loop .owl-stage-outer {z-index: 2;}
.loop .owl-dots { position: absolute; z-index: 100; bottom: 20px; width: 100%; text-align: center !important; padding: 0 50px; }
.loop .owl-dots .owl-dot span, .loop  .owl-dots .owl-dot span { background: #a9a089 !important; width: 10px !important; height: 10px !important; border-radius: 100%;}
.loop .owl-dots .owl-dot.active span, .loop  .owl-dots .owl-dot:hover span { background: #333333 !important; }

/*team*/
.team-section-1 { margin-bottom: calc(20px + 5%); display: flex; flex-direction: row; flex-wrap: wrap; margin-top: calc(30px + 10%);}
.team-section-1 > div:nth-of-type(1) { width: calc(50% + 148px); background: #32a2b0; padding:calc(20px + 3.5%) 8%; color: #fff;}
.team-section-1 > div:nth-of-type(2) { width: calc(50% - 148px); background: #f5f5f5; position: relative;}
.team-section-1 > div:nth-of-type(2) > div { position: absolute; left: 0; bottom: 0; width: 100%; text-align: center; padding: 0 5%;}

/*service-1*/
.service-1-title-1 { margin-bottom: calc(20px + 1.5%); text-align: center;}
.service-1-title-1 > div { display: inline-block; position: relative; color: #fff; font-weight: 600; padding: 10px 40px 14px 40px; line-height: 1.4;font-size: clamp(22px, 2.6vw, 32px);}
.service-1-title-1 > div > span { position: relative; z-index: 2;}
.service-1-title-1 > div:after { position: absolute; content:""; width: 100%; height: 100%; background: #249095; border-radius: 25px;filter: blur(5px); left: 0; top: 0; z-index: 1;}

.service-1-list { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; padding-bottom: calc(20px + 2.5%);}
.service-1-list > div { position: relative; width: 23%; padding: 35px 30px; color: #fff; margin-bottom: 30px;}
.service-1-list > div:after { position: absolute; content: ""; border-radius: 50px 0; width: 100%; height: 100%; top:0; left: 0; filter: blur(5px);}
.service-1-list > div:nth-of-type(1):after { background: #67aa30;}
.service-1-list > div:nth-of-type(2):after { background: #088382;}
.service-1-list > div:nth-of-type(3):after { background: #e17a18;}
.service-1-list > div:nth-of-type(4):after { background: #bf9a00;}
.service-1-list-content { position: relative; z-index: 2;}
.service-1-list-title { font-weight: 600;font-family: "Noto Serif TC", sans-serif; font-size: clamp(22px, 2.2vw, 28px); line-height: 1.3; position: relative; padding-bottom: 15px; margin-bottom: 15px; text-align: center;}
.service-1-list-title:after { content:""; position: absolute; width: 40px; height: 1px; background: #fff; bottom: 0; left: 50%; transform: translateX(-50%);}

.service-1-section-2 { position: relative; padding: calc(20px + 4%) 5%;}
.service-1-section-2::before { position: absolute;content: ""; top: 0;left: 50%;transform: translateX(-50%);background: #ecf7f7;z-index: -1;width: 150%;height: 100%;}
.service-1-section-2-box { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; padding-top: calc(20px + 1%);padding-bottom: 20px;}
.service-1-section-2-box > div { width: calc(50% - 20px); position: relative; padding: 0 40px 40px 40px; margin-bottom: calc(20px + 2%);}
.service-1-section-2-content { position: relative; z-index: 2;}
.service-1-section-2-box > div:after { content: ""; position: absolute; background: #fff; border-radius: 20px; width: 100%; height: 75%; left: 0; bottom: 0;}
.service-1-section-2-pto { margin-bottom: 10px;}
.service-1-section-2-pto img { border-radius: 20px; width: 100%;}

/*service-2*/
.service-2-section-1 { padding-bottom: calc(20px + 2%);display: flex; flex-direction: row; flex-wrap: wrap; }
.service-2-section-1 > div { width: 33.33%; padding: calc(15px + 1%) 20px; text-align: center; border-right: 1px solid #d1d1d1;}
.service-2-section-1 > div:last-child { border-width: 0px;}

.service-2-section-2 { margin-bottom: calc(20px + 5%); position: relative; border: 5px solid #d6edee; border-radius: 4vw; padding: 55px 35px;}
.service-2-section-2-title { position: absolute; z-index: 2; left: 50%; transform: translateX(-50%); top:-40px; padding: 0 20px; background: #fff;font-family: "Noto Serif TC", sans-serif; color: #249095; text-align: center;font-size: clamp(21px, 2.0vw, 26px); line-height: 1.5;}
.service-2-section-2-title-2 { top:-22px;}
.service-2-section-2-content { display: flex; flex-direction: row; flex-wrap: wrap; align-items: center;}
.service-2-section-2-content > div:nth-of-type(1) { width: 28%;}
.service-2-section-2-content > div:nth-of-type(1) img { border-radius:20px;}
.service-2-section-2-content > div:nth-of-type(2) { width: 72%; padding-left: 2.5%;}

.service-2-section-3 { display: flex; flex-direction: row; flex-wrap: wrap;}
.service-2-section-3 > div:nth-of-type(1) { width: 25%;}
.service-2-section-3 > div:nth-of-type(2) { width: 75%; padding-left: 30px;}

/*service-3*/
.service-3-section-1 { margin-bottom: calc(20px + 2%);}
.service-3-section-1 > div{ display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; border-bottom: 1px solid #d1d1d1; padding: calc(20px + 2%) 0;}
.service-3-section-1 > div > div:nth-of-type(1){ width: 236px;}
.service-3-section-1 > div > div:nth-of-type(1) > div { display: flex; flex-direction: column; flex-wrap: nowrap; justify-content: center; align-items: center; width: 112px; height: 112px; border-radius: 100%; background: #269399; font-family: "Noto Serif TC", sans-serif; color: #fff; margin: 0 auto;}
.service-3-section-1 > div > div:nth-of-type(1) > div > span:nth-of-type(1) { font-size: 20px; line-height: 1; display: block; padding-bottom: 2px;}
.service-3-section-1 > div > div:nth-of-type(1) > div > span:nth-of-type(2) { line-height: 1; font-weight: 700;font-size: clamp(26px, 3.5vw, 48px);}
.service-3-section-1 > div > div:nth-of-type(2){ width: calc(100% - 236px); text-align: left;}

.service-3-table { border-spacing: 0; border-collapse: inherit; width: 100%; margin-bottom: calc(20px + 4%);}
.service-3-table th, .service-3-table td { line-height: 1.5; padding: 20px; border-bottom: 1px solid #d1d1d1; background: #fff;}
.service-3-table th { font-family: "Noto Serif TC", sans-serif;  text-align: center; font-weight: 600; color: #249095;font-size: clamp(22px, 2.5vw, 30px);}
.service-3-table td:first-child { padding-left: 0; font-size: clamp(21px, 2.0vw, 26px); font-weight: 700;}
.service-3-table td { text-align: left; font-size: clamp(18px, 1.5vw, 20px);}
.service-3-table th:first-child, .service-3-table td:first-child {position: sticky; left: 0; top: 0;}

/*service-4*/
.service-4-pto { border-radius: 20px; margin-bottom:15px;}

/*service-5*/
.service-5-content { display: flex; flex-direction: row; flex-wrap: wrap; align-items: flex-start; padding-bottom: calc(20px + 3%); padding-top: 25px; }
.service-5-content > div:nth-of-type(1) { width: calc(50% + 70px);}
.service-5-content > div:nth-of-type(2) { width: calc(50% - 70px); padding: 5% 4% 0 4%; text-align: center;}
.service-5-data { border-bottom: 1px solid #d1d1d1; padding-bottom: 25px; margin-bottom: 25px;}
.service-5-title { display: flex; flex-direction: row; flex-wrap: nowrap; align-items: center; margin-bottom: 10px;}
.service-5-title > div:nth-of-type(1) { width: 50px; height: 50px; border-radius: 100%; color: #fff;font-family: "Noto Serif TC", sans-serif; background: #27949c; font-size: 34px; font-weight: 600; text-align: center; line-height: 50px; }
.service-5-title > div:nth-of-type(2) { width: calc(100% - 50px); padding-left: 10px; color: #27949c;font-size: clamp(22px, 2.5vw, 30px); font-weight: 600; line-height: 1.3;  }

/*service-item*/
.service-item-section { margin-bottom: calc(20px + 6%); position: relative; padding:0 5% calc(20px + 2.5%) 5%; display: flex; flex-direction: row; flex-wrap: wrap;}
.service-item-section:hover .service-item-pto { transform: scale(0.95);}
.service-item-section > div { position: relative; z-index: 3; width: 50%;}
.service-item-section > div:nth-of-type(1) { padding-top: 120px;}
.service-item-section > div:nth-of-type(2) { padding: 0 30px;}
.service-item-section-b > div:nth-of-type(1) { order: 2;}
.service-item-section-b > div:nth-of-type(2) { order: 1;}
.service-item-section:after { content: ""; position: absolute; width: 100%; height: calc(100% - 70px); background: #d6edee; border-radius: 50px; left: 0; bottom: 0;}
.service-item-pto { width: 100%; border-radius: 50px;transition: all 0.4s ease-out 0s;}

/*service-item-list*/
.service-item-list { display: flex; flex-direction: row; flex-wrap: wrap; padding-bottom: 15px; margin-right: -40px;}
.service-item-list > a { margin: 0 40px calc(20px + 2%) 0; width: calc(25% - 40px); border-radius: 30px; background: #f7f7f7; border: 5px solid #f0f0f0; padding: 30px 20px; display: block;}
.service-item-list > a:hover { border: 5px solid #32a2b0;}
.service-item-list > a:hover .service-item-list-logo { opacity: 1; filter: grayscale(0);}
.service-item-list-logo { text-align: center; transition: all 0.4s ease-out 0s; opacity: 0.2; filter: grayscale(1); margin-bottom: 20px;}
.service-item-list-title { font-family: "Noto Serif TC", sans-serif;font-size: clamp(20px, 1.9vw, 24px); font-weight: 600; text-align: center; line-height: 1.4; padding-bottom: 14px; color: #333;}
.service-item-list-data { color: #333;}

#page { text-align: center; padding:0 0 calc(20px + 4%) 0;}
#page a { font-size: 16px; color: #333; font-weight: 400; width: 30px; height: 30px; line-height: 28px; text-align: center; border-radius: 100%; display: inline-block;}
#page a:hover, #page a.current { background: #28959c; color: #fff;}
.page-prev, .page-next { width: 12px !important; height: 12px !important; line-height: inherit !important; border-radius: 0 !important; border-top:1px solid #333; border-right: 1px solid #333; margin: 0 20px;}
.page-prev:hover, .page-next:hover { background: none !important;}
.page-prev { transform: rotate(-135deg);}
.page-next { transform: rotate(45deg);}

/*service-item-detail*/
.service-item-detail-title {font-size: clamp(20px, 1.7vw, 22px); display: inline-block; line-height: 1.1; font-family: "Noto Serif TC", sans-serif; font-weight: 600; padding: 8px 20px 10px 20px; background: #249095; border-radius: 15px; color: #fff; margin-bottom: 14px; }
.service-item-detail-spec { width: 100%; border-spacing: 0; border-collapse: inherit;margin-bottom: calc(20px + 5%);}
.service-item-detail-spec th { text-align: center; color: #fff; font-family: "Noto Serif TC", sans-serif; font-weight: 600; font-size: 17px; padding: 10px;background: #249095; }
.service-item-detail-spec th:first-child { border-radius: 20px 0 0 20px;}
.service-item-detail-spec th:last-child { border-radius: 0 20px 20px 0;}
.service-item-detail-spec th span { font-size: clamp(20px, 1.7vw, 22px); display: block;}
.service-item-detail-spec td { text-align: center; font-size: clamp(18px, 1.5vw, 20px); padding:20px 10px; border-bottom: 1px solid #d1d1d1; line-height: 1.6;}
.service-item-detail-spec td:first-child { text-align: left; padding-left: 0;}

/*news*/
.news-aside {display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; padding-bottom: 20px;}
.news-aside > a { width: 210px; height: 50px; border-radius: 25px; border: 1px solid #249095; display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; justify-content: space-between; padding:0 15px; margin: 0 5px 10px 5px;}
.news-aside > a:hover, .news-aside > a.current { background: #249095;}
.news-aside > a:hover > div, .news-aside > a.current > div { color: #fff;}
.news-aside > a:hover > img, .news-aside > a.current > img { filter: brightness(0) invert(1);}
.news-aside > a > div { font-size: 20px; font-weight: 600;font-family: "Noto Serif TC", sans-serif; color: #249095;}
.news-aside > a > img { width: 30px;}

.news-list { display: flex; flex-direction: row; flex-wrap: wrap; }
.news-list > a { width: 33.33%; padding: 0 20px 40px 20px; }

.idx-news-link { display: block;}
.idx-news-link:hover  .idx-news-pto{ border: 5px solid #32a2b0;}
.idx-news-link:hover  .idx-news-pto img { transform: scale(1.1);}
.idx-news-pto { padding-bottom: 71%; margin-bottom: 15px; border-radius: 40px;border: 5px solid #f6f6f6;transition: all 0.4s ease-out 0s; }
.idx-news-pto img { transition: all 2s ease-out 0s;  }
.idx-news-data { padding: 0 15px;}
.idx-news-tag { padding-bottom: 10px;}
.idx-news-tag > span {display: inline-block; color: #2f9eaa; font-size: 14px; font-weight: 300; line-height: 35px; border-radius: 18px; background: #fff; text-align: center; padding: 0 18px;}
.idx-news-title { color: #333;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
overflow: hidden;}

/*contact*/
.contact-section { border-radius: 5vw;background: rgba(214,237,238,.32); padding: calc(20px + 4%) calc(20px + 8%); margin-bottom: calc(20px + 4.5%);}
.contact-section .hr-type-1 { border-top-color: #bdd4d5;}

.contact-title { font-weight: 500; font-size: clamp(18px, 1.5vw, 20px); line-height: 1; padding-bottom: 12px;}

.contact-form { padding-bottom: 20px;}
.contact-form input[type="text"], .contact-form input[type="number"], .contact-form input[type="tel"], .contact-form input[type="phone"], .contact-form input[type="date"], .contact-form input[type="email"], .contact-form input[type="password"], .contact-form input[type="button"], .contact-form textarea { font-size: clamp(16px, 1.3vw, 18px);; border-width:1px; border-style: solid; border-color: #bdd4d5; margin: 0px 0 0px 0; width: 100%; padding:0px 15px ; color:#333; background: #fff; font-family: 'Noto Sans TC', sans-serif; line-height: 50px; border-radius: 10px;}
.contact-form textarea { height:98px; padding:15px; resize:none; line-height: 140%;}
.contact-form select{ margin: 0 0 0px 0;  width:100%; max-width: 160px; background-image: url(../images/product-select.png); background-repeat: no-repeat; background-position: calc(100% - 5px) 7px; background-size: 30px 29px; -webkit-appearance: none; -moz-appearance: none; appearance: none;   background-color: transparent; font-size: clamp(16px, 1.3vw, 18px);; border-width:1px; border-style: solid; border-color: #bdd4d5; color:#333; font-family: 'Noto Sans TC', sans-serif;  padding:0px 35px 0px 15px;  line-height: 50px; border-radius: 10px; font-weight: 300; letter-spacing: 0;}
.contact-form option { padding:1px 5px;}
.contact-form select::-ms-expand {
    display: none;
}

.contact-note2 {  margin-top: 0px; display: inline-block;vertical-align: top;position: relative;padding-left: 28px; padding-right: 20px; padding-bottom: 0px; cursor: pointer; -webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none; line-height: 130%; color: #333; margin-bottom: 0; font-weight: 300; font-size: clamp(18px, 1.5vw, 20px);}
.contact-note2 input {position: absolute;opacity: 0;cursor: pointer;height: 0;width: 0;}
.checkmark {position: absolute;top: 3px;left: 0;height: 18px;width: 18px;background-color: #fff; border: 1px solid #bdd4d5; border-radius: 3px; }
.contact-note2:hover input ~ .checkmark {background-color: #fff;}
.contact-note2 input:checked ~ .checkmark {background: #249095}
.checkmark:after {content: "";position: absolute;display: none;}
.contact-note2 input:checked ~ .checkmark:after {display: block;}
.contact-note2 .checkmark:after {left: 2px;top: 3px;width: 13px;height: 7px; border-width: 0 0 2px 2px; border-style: solid; border-color:#fff; transform: rotate(-45deg);}


.contact-bus { display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; margin-bottom: 30px; }
.contact-bus > div:nth-of-type(1) { width: 120px; }
.contact-bus > div:nth-of-type(2) { width: calc(100% - 120px); padding-left: 25px;font-size: clamp(18px, 1.5vw, 20px); }
.contact-bus > div:nth-of-type(2) > div { padding-bottom:3px; }

.contact-map iframe { width: 100%; height: 300px; border-radius: 10px; border: 1px solid #bdd4d5; overflow: hidden; margin-bottom: 30px;}

.pb-gap { padding-bottom: calc(20px + 3%); }


@media only screen and (max-width: 1365px) {
	#content { padding-top: 50px;}
	
}

@media only screen and (max-width: 1279px) {
	#path ul { text-align: left;}
	#path li { font-size: 15px; padding-right: 12px;}
	#path li:after { right: 2px;}
	
	.team-section-1 { margin-top: 20px;}
	.team-section-1 > div:nth-of-type(1) { padding:calc(20px + 1%) 5%; }
	.team-section-1 > div:nth-of-type(2) { display: flex; flex-direction: row; flex-wrap: wrap; align-items: flex-end;}
	.team-section-1 > div:nth-of-type(2) > div { position: relative; left: auto; bottom: auto; padding:30px 5% 0 5%;}
}

@media only screen and (max-width: 980px) {
	.banner { margin-bottom: 12px;}
	.banner-pto { height: 280px; width: 100%;}
	.banner-pc { display: none}
	.banner-mobile { display: block;}
	
	.about-section-1 > div:nth-of-type(1) { width: 100%; margin-bottom: 30px;}
	.about-section-1 > div:nth-of-type(1) img { filter: drop-shadow(0px 15px 0px #d6edee);}
	.about-section-1 > div:nth-of-type(2) { width: 100%; padding-left: 0;}
	
	.about-gallery-content > div:nth-of-type(1) { width: 100%; padding:0 0%; margin-bottom: 35px;}
	.about-gallery-content > div:nth-of-type(2) { width: 100%;}
	.about-gallery-content-b > div:nth-of-type(1) { order: 1;}
	.about-gallery-content-b > div:nth-of-type(2) { order: 2;}
	
	.loop .owl-prev, .loop .owl-next { width: 30px; height: 30px; }
	.loop .owl-prev { left:0px; }
	.loop .owl-next { right:0px;}
	.loop .owl-prev:before, .loop .owl-next:before { width: 10px; height: 10px; }
	
	.width-50 > div { width: 100%;}
	
	.team-section-1 { margin-top: 0px;}
	.team-section-1 > div:nth-of-type(1) { order: 2; width: 100%; }
	.team-section-1 > div:nth-of-type(2) { order: 1; width: 100%; background: none;}
	.team-section-1 > div:nth-of-type(2) > div > img { max-width: 180px;}

	.service-1-title-1 > div { padding: 10px 20px 14px 20px; }
	.service-1-list > div { width: 48%; }
	
	.service-1-section-2-box > div { width: 100%; padding: 0 30px 20px 30px; }
	.service-1-section-2-box > div:after { height: 85%;}
	.service-5-title > div:nth-of-type(1) { width: 30px; height: 30px; font-size: 21px; line-height: 28px; }
	.service-5-title > div:nth-of-type(2) { width: calc(100% - 30px);  }
	
	.service-item-section > div { width: 100%;}
	.service-item-section > div:nth-of-type(1) { order: 2; padding-top: 15px;}
	.service-item-section > div:nth-of-type(2) { order: 1; padding: 0 0px;}
	
	.service-item-list > a { width: calc(33.33% - 40px); }
	
	.news-aside > a > div { font-size: 17px;}
	
	.news-list > a { width: 50%; padding: 0 20px 30px 20px; }
}
@media only screen and (max-width: 768px) {
	.about-section-2-list { padding-bottom: 25px; margin-bottom: 25px;  }
	.about-section-2-list > div:nth-of-type(1) { width: 100%; padding-right: 0%; padding-bottom: 10px; flex-direction: column; }
	.about-section-2-list > div:nth-of-type(1):after { display: none;}
	.about-section-2-list > div:nth-of-type(2) { width: 100%; padding-left: 0; font-size: clamp(18px, 1.5vw, 20px);}
	.about-section-2-list > div:nth-of-type(2) > span { font-weight: 600;font-size: clamp(21px, 2.0vw, 26px);}
	.about-section-2-list > div:nth-of-type(1) > div:nth-of-type(1) { width: 100px; height: 100px; margin-bottom: 20px; }
	.about-section-2-list > div:nth-of-type(1) > div:nth-of-type(2) { width: 100%; padding-left: 0; }
	
	.service-5-content > div:nth-of-type(1) { width: 100%;}
	.service-5-content > div:nth-of-type(2) { width: 100%; padding:30px 10% 0 10%;}
	
	.service-item-list { margin-right: 0px; justify-content: space-between;}
	.service-item-list > a { width: 48%; margin-right: 0px; }
}
@media only screen and (max-width: 640px) {
	.service-2-section-1 { padding-bottom: 0;}
	.service-2-section-1 > div { width: 100%; border-bottom: 1px solid #d1d1d1;border-right: 0px solid #d1d1d1; padding:0 20px calc(15px + 1%) 20px; margin-bottom: calc(15px + 1%); }
	.service-2-section-1 > div:last-child {  padding:0 20px 0 20px; margin-bottom: 0; }
	
	.service-2-section-2 { padding: 15px 20px 30px 20px;}
	.service-2-section-2-title { position: relative; left: auto; transform: none; top:auto; padding: 0 0px 15px 0; background: none}
	.service-2-section-2-content > div:nth-of-type(1) { width: 100%; text-align: center; padding-bottom: 25px;}
	.service-2-section-2-content > div:nth-of-type(2) { width: 100%; padding-left: 0%;}
	
	.service-2-section-3 > div:nth-of-type(1) { width: 140px;; padding-bottom: 20px;}
	.service-2-section-3 > div:nth-of-type(2) { width: 100%; padding-left: 0px;}
	
	.news-aside > a  { width: 130px;}
	.news-aside > a > img  { width: 20px;}
	
	.contact-bus { flex-direction: column }
	.contact-bus > div:nth-of-type(1) { width: 60px; }
	.contact-bus > div:nth-of-type(2) { width: calc(100% - 0px); padding-left: 0; }
}
@media only screen and (max-width: 570px) {
	.banner-pto { height: 200px;}
	.banner-title { top:50%; background: rgba(255, 255, 255, .8);}
	
	.service-1-list > div { width: 100%; }
	
	.service-3-section-1 > div > div:nth-of-type(1){ width: 236px; margin: 0 auto 10px auto;}
	.service-3-section-1 > div > div:nth-of-type(2){ width: 100%; text-align: center;}
	
	.news-list > a { padding: 0 10px 30px 10px; }
	
	.contact-section { padding: calc(20px + 4%) calc(20px + 4%);}
}

@media only screen and (max-width: 414px) {
	.service-item-list > a { width: 100%; }
	
	.news-list > a { width: 100%; padding: 0 0 30px 0; }
}

@media only screen and (max-width: 320px) {
	

}

/* 20260119 b02 faq */
.sub_wrap {display: flex; flex-flow: wrap; align-items: flex-start;}
.sub_wrap_menu {width: 277px; position: sticky; top: 90px; max-height: calc(100vh - 110px); overflow-y: auto;}
.sub_wrap_main {width: 100%;}
.sub_wrap > .sub_wrap_menu + .sub_wrap_main {width: calc(100% - 277px); padding: 0 0 0 30px; position: relative; z-index: 1;}
.sub_wrap_main_full {position: absolute; top: -21px; left: 30px; z-index: 100; width: 40px; height: 20px; border: 1px solid #ccc; border-radius: 5px; background: #fff; cursor: pointer; opacity: 0; transition: all 0.5s ease 0s;}
.sub_wrap > .sub_wrap_menu + .sub_wrap_main:hover .sub_wrap_main_full {opacity: 1;}
.sub_wrap_main_full span {position: absolute; width: 5px; height: 5px; border-style: solid; border-color: #ccc; transform: rotate(0deg); opacity: 1; transition: all 0.5s ease 0s;}
.sub_wrap_main_full span:nth-child(1) {left: 3px; top:2px; border-width: 2px 0 0 2px;}
.sub_wrap_main_full span:nth-child(2) {right: 3px; top:2px; border-width: 2px 2px 0 0;}
.sub_wrap_main_full span:nth-child(3) {right: 3px; bottom:2px; border-width: 0 2px 2px 0;}
.sub_wrap_main_full span:nth-child(4) {left: 3px; bottom:2px; border-width: 0 0 2px 2px;}
.sub_wrap_menu_hide .sub_wrap_menu {display: none;}
.sub_wrap_menu_hide > .sub_wrap_menu + .sub_wrap_main {width: 100%; padding: 0;}
.sub_wrap_menu_hide > .sub_wrap_menu + .sub_wrap_main .container {max-width: 100%;}
.sub_wrap_menu_hide .sub_wrap_main_full {left: 0; opacity: 1;}
.sub_wrap_menu_hide .sub_wrap_main_full span:nth-child(1) {height: 14px; width: 10px; border-width: 2px 2px 2px 2px;}
.sub_wrap_menu_hide .sub_wrap_main_full span:nth-child(2) {width: 17px; height: 10px;}
.sub_wrap_menu_hide .sub_wrap_main_full span:nth-child(3) {width: 17px; height: 10px;}
.sub_wrap_menu_hide .sub_wrap_main_full span:nth-child(4) {left: 17px; bottom: 7px; transform: rotate(45deg);}
@media (max-width: 1024px) {
	.sub_wrap_menu {width: 100%; position: relative; z-index: 10; top: auto; max-height: none; overflow-y: inherit;}
	.sub_wrap > .sub_wrap_menu + .sub_wrap_main {width: 100%; padding: 0; position: relative; z-index: 1;}
	.sub_wrap > .sub_wrap_menu + .sub_wrap_main .container {max-width: 100%;}
	.sub_wrap_main_full {display: none;}
}
/* leftMenu */
.leftMenu ul, .leftMenu ul li {list-style-type:none; margin: 0; padding: 0;}
.leftMenu ul {width: 100%; background: #f5f5f5; }
.leftMenu ul:nth-child(2) {width: 100%; background: #f5f5f5;  }
.leftMenu ul li.menu-title a{ color:#fff; font-size: 1.1rem; line-height: 1.5rem; background:#5a0707; }
.leftMenu ul:nth-child(2) li.menu-title a{ background:#249095; }
.leftMenu ul li:hover.menu-title a{ color:#fff; }
.leftMenu ul:nth-child(2){margin-bottom:0px;}
.leftMenu > ul ul {display: none; background:#c6c6c6;}
.leftMenu ul li {position: relative; z-index: 1;font-size: 0.85rem;  line-height: 20px; border-bottom: 1px solid #d8d8d8;}
/*.leftMenu ul li:last-child {border-bottom: 0;}*/
.menu_dot {position: absolute; top: 6px; right: 0px; z-index: 99; width: 30px; height: 30px; cursor: pointer;}
.menu_dot::before {content: ''; width: 12px; height: 2px; background-color: #000; border-radius: 2px; position: absolute; top: 12px; left: 7px; z-index: 99; transition: all 0.5s ease 0s;}
.menu_dot::after {content: ''; width: 2px; height:12px; background-color: #000; border-radius: 2px; position: absolute; top: 7px; left: 12px; z-index: 99; transition: all 0.5s ease 0s;}
.leftMenu .menu_dot_open{top:6px; }
.leftMenu .menu_dot_open::before {background-color: #fff;}
.leftMenu .menu_dot_open::after { display: none;}
.leftMenu a:link, .leftMenu a:visited {text-decoration:none; color:#222; background-color: transparent; padding: 10px 25px; display: block; position: relative; z-index: 1; transition: all 0.5s ease 0s;}
.leftMenu a:active, .leftMenu a:hover {text-decoration:none; background-color: rgb(180 217 239 / 50%); cursor:pointer; transition: all 0.5s ease 0s;}
.leftMenu ul li a.menu_arrow_open{background-color:#F2F9FA; color: #fff;}
.menu_arrow {position: absolute; top: 10px; left: 5px; width: 20px; height: 20px; -moz-transform:rotate(0deg); -webkit-transform:rotate(0deg); -o-transform:rotate(0deg); -ms-transform:rotate(0deg); transform:rotate(0deg); transition: all 0.5s ease 0s;}
.menu_arrow::before {content: ''; width: 7px; height: 2px; background-color: #000; border-radius: 2px; position: absolute; top: 7px; left: 6px; -moz-transform:rotate(45deg); -webkit-transform:rotate(45deg); -o-transform:rotate(45deg); -ms-transform:rotate(45deg); transform:rotate(45deg); transition: all 0.5s ease 0s;}
.leftMenu a:hover .menu_arrow::before {background-color: #fff; transition: all 0.5s ease 0s;}
.menu_arrow::after {content: ''; width: 7px; height: 2px; background-color: #000; border-radius: 2px; position: absolute; top: 11px; left: 6px; -moz-transform:rotate(-45deg); -webkit-transform:rotate(-45deg); -o-transform:rotate(-45deg); -ms-transform:rotate(-45deg); transform:rotate(-45deg); transition: all 0.5s ease 0s;}
.leftMenu ul li a.menu_arrow_open .menu_arrow::before,.leftMenu ul li a.menu_arrow_open .menu_arrow::after  {background-color:#fff; }
.leftMenu a:hover .menu_arrow::after {background-color: #fff; transition: all 0.5s ease 0s;}
.menu_arrow_open .menu_arrow {-moz-transform:rotate(90deg); -webkit-transform:rotate(90deg); -o-transform:rotate(90deg); -ms-transform:rotate(90deg); transform:rotate(90deg); transition: all 0.5s ease 0s; }
.leftMenu a.active{background: #2376b0; color: #fff;}
.leftMenu ul.menu_sub_open { display: block !important; }

@media only screen and (min-width:1025px){
	.leftMenuMobile {display: none;}
}
@media only screen and (max-width:1024px){
	.leftMenu ul:nth-child(2){position: absolute; top: 75px; left: 0; z-index: 99;}
	.leftMenuMobile {width: 30px; height: 20px; margin: 40px auto 10px auto; position: relative; cursor: pointer;}
	.leftMenuMobile > span:nth-child(1) {width: 30px; height: 2px; background-color: #000; position: absolute; top: 0px; left: 0; transition: all 0.5s ease 0s;}
	.leftMenu > div.show > span:nth-child(1) {top: 14px; transform: rotate(45deg);}
	.leftMenuMobile > span:nth-child(2) {width: 30px; height: 2px; background-color: #000; position: absolute; top: 10px; left: 0; transition: all 0.5s ease 0s;}
	.leftMenu > div.show > span:nth-child(2) {top: 14px; transform: rotate(-45deg);}
	.leftMenuMobile::before {content: attr(data-title); width: 200px; height: 30px; line-height: 30px; position: absolute; top: -34px; left: calc(50% - 100px); text-align: center; font-size: 12px; color: #000;}
	.leftMenu > ul {max-height: 0; overflow: hidden; transition: all 0.5s ease 0s;}
	.leftMenu > ul.open {max-height: 500px; overflow: auto; padding-bottom: 10px; transition: all 1.5s ease 0s;}
}