.main-area.top{margin-top: 0px;  background-image: linear-gradient(to top, #eff5f9 0%, #F9F9F9 100%); }
 

.cms-txtcols { -webkit-column-count: 2;  -moz-column-count: 2;  column-count: 2;  column-gap: 80px; column-rule: 1px solid #e4e8e7; padding: 10px;	}
 /*--------form style------------*/
 
 label{ font-size:1rem; align-self: center; }
 *:focus { outline: none; }
input, option, textarea, input[type="radio"]{ line-height:2rem;  padding-left:15px;  font-size:1rem; color: #000;background-color:#f3faff;border: 1px solid #f7f7f7;border-radius:5px;  }
input[type="radio"]+label, input[type="checkbox"]+label { width:auto; box-sizing: border-box; padding: 5px 5px 0px 5px; }
input:focus,textarea:focus { outline: none; box-shadow: 0px 3px 5px rgba(43,126,199,.5)}
input[type="text"],input[type="password"],input[type="tel"],input[type="number"],input[type="email"],input[type="password"],input[type="date"]{ -webkit-appearance: none; -moz-appearance: none; appearance: none;min-height: 20px; }
input[type="submit"],input[type="reset"],input[type="button"]	{-webkit-appearance: none;}
input, input[type=checkbox]::before,textarea{border: none; border-radius:0px; padding:2px 16px;width: 100%; }
 
.wrap-contact {padding: 50px 20px;}
.contact-editor{ padding: 10px 20px;  width: 60%; margin: auto; text-align: center;}



.main-contact{   margin:0px; padding:0px; overflow: hidden;position: relative; background-color:#fff;  }
.contact-wrap{width: 100%;  margin: auto; display: flex; flex-wrap: wrap; justify-content: space-between; position: relative; }
.contact-detail{width:100%; padding:50px 10px; margin:20px auto;   }
.contact-detail-txt {width:100%; padding:50px 0px; margin:auto;   }

.contact-detail-txt p{font-size:1.125rem;  font-size: min(max(3.5vw, .875rem), 1.125rem); line-height:2rem; font-weight:400;  margin-bottom: 10px;   }
.contact-map{width: 100%; margin:auto}
.contact-box{ width:100%; max-width: 80%;margin: auto  }
.contact-box .titlebox{padding: 0px 50px;}
.contact-box .titlebox .title-en{ color: #1f4788}

 @media (max-width: 1024px) {
.contact-box{  max-width: 100%; }
}

 @media (max-width: 768px) {
.contact-detail-txt p{font-size:.9rem;     }
}
 @media (max-width: 767.98px) {
.contact-detail{width:100%;  padding:0px;  }
.contact-box{ width:100%; }
.contact-box .titlebox{padding: 0px;}	 
}
 

/*----------------------------------------/
form
----------------------------------------*/
.contact-form{width: 100%; margin: auto; padding:40px 20px 80px 20px; position: relative; z-index: 9;}
.contact-form input, .contact-form option, .contact-form select, .contact-form textarea { font-size: 1.15rem;background: #fff; border: 1px solid #d8d8d8;  border-radius:5px;}
.contact-form select, .contact-form input, .contact-form option, .contact-form textarea, .contact-form input[type=radio] + label, .contact-form input[type=checkbox] + label {font-size: 1rem;transition: all 0.5s; box-sizing: border-box;outline: none;}
.contact-form ul {width: 100%; margin:auto;  padding:0px 40px; display: flex; flex-wrap: wrap; list-style: none; }
.contact-form ul li { width: calc(100%/2 - 10px); margin: 5px 10px 5px 0px; font-size: 1rem; font-weight: 700;     position: relative; }
.contact-form ul li input { padding: 0 10px;width: 100%;height: 42px;   }
.contact-form ul li input::placeholder, .contact-form ul li textarea::placeholder,.contact-form ul li textarea { color:#b3b3b3; font-size:.9rem;  }
.contact-form ul li select {  padding: 0 0 0 5px;  width: 100%; height: 42px; line-height: 40px;font-weight:400; color:#b3b3b3;}
.contact-form ul li select:focus option {color: #666;}
.contact-form ul li option { padding: 5px 10px;}
.contact-form ul li textarea { width: 100%;height: 100px;line-height: 20px; padding: 5px 10px;}
.contact-form ul li input:focus, .contact-form ul li textarea:focus {background: #fff8de;color: #000;}
.contact-form ul li input:focus::placeholder, .contact-form ul li textarea:focus::placeholder {  color: #000;}
.contact-form ul li.width-full {  width: calc(100% - 10px); margin-right: 0px !important;}

.red{position: relative}
.red:after{content:"*";color:#ed6d34; font-size: 1.25rem; font-weight: 700; padding-right: 3px;position: absolute; left:0px; top:0px; }

.must{position: relative; padding:0px 0px 0px 15px; }
.must:after{content:"*";color:#ed6d34; font-size: 1.25rem; font-weight: 700; padding-right: 3px;position: absolute; left:0px; top:-5px; }
.contact-form ul li select{  min-height: 42px; width: 100%!important;}
.contact-form ul li .form-checkbox{ width:calc(100%/3 - 10px); margin: auto 5px; display: flex; flex-wrap: wrap; align-items: flex-start;}
.contact-form ul li .formTd input[type=checkbox]{width:18px; height: 18px; margin-top: 6px!important; }
.contact-form ul li .formTd label{width:calc(100% - 18px); min-height: 48px;  word-break:normal; word-wrap: normal;  margin: 0px; line-height: 1.375rem; }
.contact-form ul li .formTd{width: calc(100% - 15px);  display: flex; flex-wrap: wrap;  }  
.contact-form ul li.th-row .formTd select{ height: 30px; }  
.formTh label{font-weight: 700; }
@media (max-width: 840px) {
.contact-form ul li .form-checkbox{ width:calc(100%/2 - 10px); }    
}
@media (max-width: 768px) {
.contact-form ul  {width: 100%; margin: 15px 0px;padding: 0px 20px; }
.contact-form ul li {width: 100%; margin: 15px 0px;padding: 0px;}  
.contact-form ul li.width-full { width:100%;}
.contact-form ul li .form-checkbox{  width:100%; flex-wrap: nowrap;  }  
.contact-form .btn-btnbox .btn-send {width: 80%}
}
@media (max-width: 767.98px) {
.contact-form{ padding:0px 0px 80px 0px;}
.contact-form ul{ padding: 0px 10px; }
.contact-form ul li {margin:5px 0px; }   
}
@media (max-width: 320px) {
.contact-form ul{ padding: 0px; }
.contact-form ul li .form-checkbox{ width:100%; }    
.contact-form ul li .formTd label{min-height:auto;  }
}
/* ==== 底圖 === */
.bg-background { background-image: attr(src url); background-repeat: no-repeat; background-size: contain;background-position:left bottom; position: absolute;z-index: 0; top:0px; left: 0; right: 0; bottom: 0; line-height: 0;  width: 100%; background-color:#f0f0f0; }
@media(max-width: 992px) {
.bg-background {background-position:center;}
}



.icon-list{width: 100%; margin:0px auto; padding:20px 0px; display: flex; flex-wrap: wrap; }
.icon-list li{width:calc(100%/3); margin:0px; display:flex; flex-wrap: wrap;   transition: all 0s ease 0s;position: relative; } 
.icon-list li .item{ width: 100%; margin:0px; padding: 10px; }
.icon-list li h3 { width: 100%; font-size:3.75rem; line-height: 2.75rem; font-weight:700; color:#ed6d34; margin-bottom:20px; position: relative; }  
.icon-list li h3 span{ padding-right: 10px; font-size:1.15rem;  font-weight:400;  color:#000;  }
.icon-list li p {  width: 100%; font-size: 1rem; line-height: 1.15rem; font-weight:700; color:#225383;  }  
@media (max-width: 1280px) {
.icon-list{  padding:30px 10px 30px 60px; }
.icon-list li h3{  font-size: 2rem; }
.icon-list li h3 span{ font-size:1rem;  }
.icon-list li p{font-size:.875rem; }
}
@media (max-width:767.98px) {
.icon-list{  padding:30px 0px 30px 0px; }
.icon-list li{width:100%; margin:0px; display:flex; flex-wrap: wrap;  align-content: flex-start; transition: all 0s ease 0s;position: relative; } 
}


 
.product-item { width:100%; margin:0px auto;  padding:20px 0px; display: flex; flex-wrap: wrap; position: relative; }
.product-item li { width: calc( 100%/3 - 20px); margin:40px 10px 40px 10px; padding:0px ; display: flex; flex-wrap: wrap;align-self: flex-start;  align-content: flex-start; align-items: flex-start; z-index: 1; list-style: none; background:#ebebeb;  transition: all 0.3s linear 0s; position: relative; clip-path: polygon(100% 0, 100% 90%, 95% 100%, 0 100%, 0 0);   }
.product-item li figure{  width: 100%; padding-bottom:100%; height: 0; overflow: hidden; position: relative; z-index: 1; transition: all 0.5s ease 0s;  }
 

 @media (max-width:767.98px) {
.product-item { width: calc( 100% + 20px); margin:0px -10px;   }	 
 
}


  

/*--橫式樣式--*/
.product-item li  figure{  width: 100%; padding-bottom:62.25%; height: 0; overflow: hidden; position: relative; z-index: 1; transition: all 0.5s ease 0s;  }
.product-item li:hover img { transform: scale(1.05);  opacity: 1; }
.product-item li:hover figure{ background-image: linear-gradient(to bottom, #d8e1e9 0%, #fff 100%); }
.product-item .inner{  width: 100%;  padding: 10px; position: relative;} 
.product-item .inner h3{ width: 100%;margin:10px 0px; font-weight:700; font-size: 1.275rem;  color:#000; line-height:2rem;overflow: hidden;white-space: pre-line;word-break:normal; word-wrap:break-word; text-overflow: ellipsis;  display: -webkit-box;  -webkit-line-clamp: 3;  -webkit-box-orient: vertical; }
.product-item .inner a h3 {  color:#000; }
.product-item .inner a p{ width: 100%; margin:5px 0px; font-size: .9rem; line-height: 1.375rem; font-weight: 400; color:#312927;  overflow: hidden; white-space:pre-wrap;word-break:normal; word-wrap:break-word; text-overflow: ellipsis;  display: -webkit-box;  -webkit-line-clamp: 3;  -webkit-box-orient: vertical;} 
.product-item .inner-txt{min-height: 68px;  font-size: .875rem;  line-height: 1.35rem;color:#312927; overflow: hidden;white-space: pre-line;word-break:normal; word-wrap:break-word; text-overflow: ellipsis;  display: -webkit-box;  -webkit-line-clamp: 3;  -webkit-box-orient: vertical; }
.product-item li:hover a h3,.product-item li:hover a p{color:#e60013;}
 @media only screen and (max-width:1180px){
.product-item .inner h3{  font-size:1rem; line-height:1.5rem; }
}
@media only screen and (max-width:1024px){
.product-item li {width: calc(100%/3 - 30px); margin:30px 15px; padding:0px; }
}
@media (max-width:992px) {
.product-item .inner a p{   line-height: 1.125rem;  } 
}
@media (max-width: 767.98px) {
.product-item li { width: calc(100%/2 - 20px); margin: 10px 10px; height: auto; position: relative; transition: all 0.3s linear 0s; z-index: 1;   } 
}
@media (max-width:320px) {
.product-item li {width: calc(100%  - 30px);  margin: 10px auto;   }
}

.add-wrap{width: 100%;  margin: auto; display: flex; flex-wrap: wrap; justify-content: space-between; }
.add-detail{width:40%; padding:50px 10px; margin:20px auto; position: relative;z-index: 1  }
.add-detail-txt {width:100%; padding: 0px 20px; margin:auto;   }
@media (max-width: 992px) {
.add-detail-txt {  padding:20px 0px; }
}
.add-detail h3{font-size:1.875rem;  font-size: min(max(3.5vw, 1rem), 1.875rem); line-height:2rem; font-weight:400;  margin-bottom: 10px;   }

.add-detail-txt p{font-size:1.125rem;  font-size: min(max(3.5vw, 1rem), 1.125rem); line-height:2rem; font-weight:400;  margin-bottom: 10px;   }


.add-line{ width: 100%; display: flex; flex-wrap: wrap; margin: 1% 0; padding:5px 10px 10px 10px;font-size: 1rem; border-bottom: solid 1px #e5e0e0; align-content: center; align-items: center; }
.add-title{ width: 25%; font-size: 1rem; font-weight: 400; color: #000;  }
.add-name{ width: 75%; font-size:1rem; font-weight: 400; line-height: 1.75rem; color: #666; }
.add-name a{color: #666;}
.add-map{width: 100%; margin:auto}

.no-border{ border-bottom:none;}
.add-box{ width:calc(100% - 40%);  padding:50px 80px;  font-family: 'Roboto', sans-serif;} 
@media (max-width: 992px) {
.add-detail{width:100%;  padding:0px; order: 2;  }
.add-box{ width:100%; padding:0px ; order: 1; }
}


 
 