.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:40%; 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:calc(100% - 40%);   }

 @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%; }
}
 
/*----------------------------------------/
title樣式5
----------------------------------------*/
.title-h2-sub{  margin: auto;}
.title-h2-sub h2{ font-size: 2.75rem;  font-size: min(max(3.5vw, 1.75rem), 2.5rem);  line-height: 130%;font-weight: 400; letter-spacing: 3px; margin-bottom: 20px; text-transform:uppercase}
.title-h2-sub span{ display: block; margin:10px auto 30px auto;font-size: 1.5rem;font-size: min(max(3.5vw, 1rem), 1.5rem); line-height: 130%;font-weight: 700; color: #d90012; text-transform:uppercase  }
.title-h2-sub p{ font-size:1.125rem;  font-size: min(max(3.5vw, 1rem), 1.125rem); line-height:1.75rem; font-weight:400; }
 @media (max-width: 998px) {
.title-h2-sub{text-align: left; padding-left: 20px;} 
}
 @media (max-width: 768px) {
.title-h2-sub{ padding-left: 0px;} 
}
 @media (max-width: 640px) {
.title-h2-sub h2{ font-size: 1.375rem; }
.title-h2-sub p{ font-size:1rem;  line-height:1.5rem;}
	 
}

/*----------------------------------------/
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: 2% auto;  padding:20px 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%;}
	
}

@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; } 
}


 

.country{width: 100%; margin:0px auto; padding:0px 0px 20px 0px; display: flex; flex-wrap: wrap; }
.country li{width:calc(100%/3); margin:0px;   transition: all 0s ease 0s;position: relative; list-style: none} 
.country li .item{ width: 100%; margin:0px; padding: 10px;display:flex; flex-wrap: wrap;  align-items: center; }
.country li .flg-pic {  width: 40%;  }  
.country li .flg-txt{  width: 60%;padding-left: 10px; font-size: 1rem; line-height: 1.15rem; font-weight:700; color:#225383; word-break: normal; word-wrap: normal; }  
@media (max-width:767.98px) {
.country li{width:calc(100%/2);  }   
.country li .flg-txt{   font-size: .9rem; font-weight:400;  } 
.country li .item{  padding: 10px 5px;  }
}
@media (max-width:280px) {
.country li .flg-txt{   font-size: .75rem;  } 
    
}