main{background: linear-gradient(to bottom, #eeede9 , #f5f6f6);position: relative; }      
 


main::after { content: "";  width: 50%; height: 100%;  position: absolute;  z-index: 0; left: 0; top: -17vw; background: url("../images/index/pattern.png") no-repeat left top;  background-size: 100% auto ; opacity: .5 }

.card-2 { width: 35%;  background-image: attr(src url); background-repeat: no-repeat; background-size: 50% auto; background-position:right top; position: absolute;z-index: -2; top:70vh; left: auto; right: -10vw; bottom:0; opacity: .75 }
 
@media (max-width: 1024px) {
.card-2 { width: 30%;  background-size: 100% auto;top:-8vh; right: -13vw; opacity: .5  }	
}


.main-content {margin:0px; padding:0px; }
.main-contact{ margin:0px; padding:0px; }
.contact-wrap{width: 100%;  margin: auto; display: flex; flex-wrap: wrap; justify-content: space-between;   position: relative; }
.contact-detail{width:100%; padding: 10px; margin:0px auto;  display: flex; flex-wrap: wrap;  justify-content: flex-end  }
.contact-detail-txt {width:100%;   margin:auto 0;   }

.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: 40%; margin:0;padding:60px 30px 0px 30px;  overflow: hidden }

.contact-map iframe{width: 100%; min-height:40vh;margin: auto; border-radius:0px 50px 0px 50px; }

.contact-box{ width:calc(100% - 40%);   }

.contact-line{ width: 100%; display: flex; flex-wrap: wrap; margin: 1% auto; padding:5px 10px 10px 10px;font-size: 1rem; border-bottom: solid 1px #fff; align-content: center; align-items: center; }
.contact-title{ width: 25%; font-size: 1rem; font-weight: 700; color: #000;  }
.contact-name{ width: 75%; font-size:1rem; font-weight: 400; line-height: 1.75rem;   }
.contact-name a{color: #000;}
@media (max-width: 1024px) {
.contact-detail-txt{  max-width: 100%; padding:10px 20px 50px 20px;  }
}

@media (max-width: 992px) {
.contact-box{ width:100%;   }
.contact-detail{width:100%; } 
.contact-map{width: 100%;  border-radius:40px 40px 0px 0px;}	
.contact-map iframe{width: 100%; min-height:20vh; }
}
@media (max-width: 768px) {
.contact-detail-txt p{font-size:.9rem; }
.contact-map{ padding:20px 0px 0px 0px; }		
}
@media (max-width: 767.98px) {
.contact-detail{width:100%;  padding:0px;  }
.contact-box{ width:100%; }
.contact-detail-txt{  padding:10px 0px;  }
}
.bg-contact{background: url("../images/index/contact.png"),linear-gradient(75deg, #8ebaee 20%, #edeff2 100% ); background-position: left bottom, left bottom;  background-repeat: no-repeat, repeat;background-size:40% auto,100% auto;  }
@media (max-width: 1024px) {
.bg-contact{ padding:20px 0px 240px 0px;  background-position: center bottom; background-size:60% auto,100% auto; }	 
}
@media (max-width: 767.98px) {
.bg-contact{ padding:20px 0px 140px 0px;   }	 
}
/*----------------------------------------/
title樣式5
----------------------------------------*/
.title-h2-sub{  margin: auto;}
.title-h2-sub h2{ color:#004098;font-size: 1.75rem;  font-size: min(max(3.5vw, 1.125rem), 1.75rem);  line-height: 130%;font-weight: 700; 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: #555; 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:700; color: #000;}
 @media (max-width: 998px) {
.title-h2-sub{text-align: left; padding-left: 20px;} 
}
 @media (max-width: 768px) {
.title-h2-sub{ padding-left: 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 #c3d7e4;  border-radius:0px;}
.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: #e6f1f8;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;}
.contact-form ul li span{ display: block; margin-bottom: 8px; }
.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;padding-top: 3px;  padding-left: 8px; 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; }
.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; } 
}


 