﻿/* CSS Document */

* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-kerning: auto; }

  

/** font-family:=================================*/

.f-s{ font-size: 0.9rem;} 

.f-400{font-weight: 400!important;}

.vText { -webkit-writing-mode: vertical-rl; writing-mode: vertical-rl; }

.color-bold{color: #004098;}

.color-white{color: #fff!important; }

.color-red{color:#cb2520!important; }

.color-gray{color:#5a5a5a; }

.color-bk{color:#000!important; }

.txt-stork { -webkit-text-stroke: 1px #fff;  -webkit-text-fill-color: transparent;}

.txt-just{text-align: justify!important; }

.txt-center{text-align: center!important; }

 .txt-gradient{ background-image: linear-gradient(45deg, #FFC107, #F44336); -webkit-background-clip: text; -webkit-text-fill-color: transparent;}

/** bg-color:=================================*/

 

.bg-orange{background: #004098;  }

.bg-orange-line{background: #004098;  }



.main-wrap{width: 100%;padding: 0px; display: flex; flex-wrap: wrap; align-content:flex-start;}

.wrapper-full { display: block; margin:0px auto; padding: 0px 20px; width: 100%;  max-width: calc((100% - 40px)/12*12 + 40px); }

@media (min-width: 320px) {

.wrapper-full { padding: 0px 30px; }   

}

@media (min-width: 1200px) {

.wrapper-full { width: 96%;}

}

@media (min-width: 1300px) {

.wrapper-full { width:92%;}

}

@media (min-width: 1600px) {

.wrapper-full { max-width: 96%;}

}

 

.wrapper { display: block; margin:0px auto; padding: 0px 30px; width: 100%;  max-width: calc((100% - 40px)/12*12 + 40px); }

@media (min-width: 1200px) {

.wrapper { width: 96%;   }

}

@media (min-width: 1300px) {

.wrapper { width:92%;}

}

@media (min-width: 1600px) {

.wrapper {  width:90%;max-width: 1400px;}

}

@media (max-width: 1180px) {

.wrapper {padding: 0px 40px;}

 }

@media (max-width: 480px) {

.wrapper {padding: 0px 25px;}

}

@media (max-width: 320px) {

.wrapper {padding: 0px 20px;}

}

.main-banner-txt .txt-style { position: absolute; top:10%; left: 0px;  z-index: -1; color:transparent;  font-size: 120px;  font-weight:900;   line-height: 1; letter-spacing:1px;text-transform: uppercase;  -webkit-text-stroke: 1px #dfdfdf;}

.main-banner-txt .txt-style {color: #fff; opacity: .35; }

/*  banner area*/

.main-banner{width:100%;  height: auto; min-height: 200px; margin:0px; display: flex; flex-wrap: wrap;justify-content:flex-start; align-items: flex-start;   position: relative; overflow: hidden; background-image: linear-gradient(to top, #ebf7ff 0%, #fafcfe 100%);  }

.main-banner::after { content: "";  width: 50%; height: 100%;  position: absolute;  z-index: 8; left: 0; bottom: 0; background: url("../images/index/mask.svg") no-repeat right top;  background-size: cover;  }

.main-banner-img{width: 100%;  height: auto; margin:0; padding:0px;  position: relative;    }

.main-banner-img img{ width: 100%; max-width: 100%; height: auto; display: block; margin: auto; -o-object-fit: cover;  object-fit: cover; -webkit-backface-visibility: hidden;  backface-visibility: hidden; transition: all 0.3s; position: relative; z-index: 0;  }

.main-banner-txt {display: flex;flex-direction: column; justify-content:center; padding: 0 20px; z-index: 9;  width:50%;  height: 100%; margin:auto 0px; position: absolute;  top: 0; left: 0; right: 0; bottom: 0;}

.main-banner-txt h1 {  font-weight: 700; font-size:3rem;line-height: 3.75rem; letter-spacing:2px; margin: auto auto 10px auto; color: #fff; overflow-wrap: break-word;  position: relative;}

.main-banner-txt p{ margin-bottom: 15px;font-size:1.75rem;line-height: 1.75rem; font-weight: 900;color: #fff;  letter-spacing:3px; overflow: hidden;  text-transform: uppercase;   } 





.title-box { width: 100%;  border-bottom: 1px solid rgba(255, 255, 255, 0.5); position: relative }

.title-box::after { content: "";  position: absolute; left: 0px; bottom:0px; width: 55px; height: 3px; background: #ffffff;}

@media (max-width:1440px) {

.main-banner-txt h1 {  font-size:2.5rem;line-height: 2.125rem; letter-spacing:1px; }

}



@media (max-width:1160px) {

.main-banner-txt h1 { margin-bottom: 10px; font-size:2.5rem;line-height: 2.75rem;}

.main-banner-txt p{ font-size:1.125rem;line-height: 1.5rem; } 

}



@media (max-width:992px) {

.main-banner{ box-shadow:none;background: none }   

 .main-banner::after {display: none  }



.main-banner-txt {width: 100%; position: relative; order: 2; padding: 0px;   left: auto;}

.main-banner-img{  width: 100%;  position: relative; order: 1; }

.main-banner-txt h1 { font-size:2rem; color:#000;  text-align: center;}

.main-banner-txt h1 span{ font-size:1rem;display: block;color:#000; } 

 .main-banner-txt h1:after{content: ""; display: block; width:2px; height:10px; margin: 10px auto; background:#000} 

.main-banner-txt p {font-size:1rem; margin-bottom: 0px; text-align: center;font-weight: 400;color: #000; } 

.title-box {  border-bottom:none }	

.title-box::after {display: none; }



}

@media (max-width:767.98px) {

.main-banner{ margin-top: 0px; min-height: auto;}    

.main-banner-img{width: 100%;  position: relative; order: 1;}

.main-banner-txt {margin-top: 10px;  }

.main-banner-txt h1 { font-size:1.375rem; line-height: 1.75rem; margin-bottom: 5px;letter-spacing: 1px;  }   

.main-banner-txt p { font-size:.75rem; line-height: 1.15rem; letter-spacing:0;  }  

}

/*----------------------------------------/

麵包屑 自訂顏色樣式

----------------------------------------*/

.main-breads{ width: 100%;  max-width: calc((100% - 40px)/12*12 + 40px); margin:auto; padding:10px 0px; border-bottom: solid 1px #eee;background-color: #fff;  position: relative; }

.main-breads .breadcrumb{ width: auto; padding:0px; margin:2px auto; background:none;   }

.main-breads .breadcrumb li{ font-size:.75rem;  font-weight:400; overflow: hidden;  word-break: break-all; }

.main-breads .breadcrumb li a{color:#4f5d78;   }

.main-breads .breadcrumb li a:hover,.main-area.top .main-breads .breadcrumb li a:hover{color:#035cd8;}

.breadcrumb-item+.breadcrumb-item::before { content: " / "; margin-left: 5px;color:#4f5d78;}

.main-breads .breadcrumb li:first-child{ position: relative;  color:#edf1f7;}

.main-breads .breadcrumb-item.active{color:#004198;}

 

.main-area.top .main-breads{   padding:5px 0px; border-top:solid 1px #eee;border-bottom:solid 1px #eee;  }

.main-area.top .main-breads .breadcrumb{ }

.main-area.top .main-breads .breadcrumb li a,.main-area.top .breadcrumb-item+.breadcrumb-item::before{  color:#777; }

@media (max-width: 992px) {

.main-breads{ max-width: 100%;  margin:0px auto; border-top: solid 1px rgba(255,255,255,.35); border-bottom: solid 1px rgba(255,255,255,.35);}

.main-breads .breadcrumb{width: 100%; padding:2px 0px; justify-content: center;  }

.main-breads .breadcrumb li{ font-size:.9rem;  }

.main-breads .breadcrumb li a{color:#a4a4a4;}

.breadcrumb-item+.breadcrumb-item::before {  margin-left:2px;color:#a4a4a4;}

.breadcrumb-item+.breadcrumb-item{padding-left: 0.1rem} 

.main-breads::after { display: none}

	

}

@media (max-width: 767.98px) {

.main-breads .breadcrumb li{ font-size:.55rem; line-height: 1rem; }

}

 

.main-content{position: relative;z-index: 1; width: 100%; min-height: 50vh; margin:0px auto; padding:40px 0px 0px 0px; overflow: hidden; }

 @media (max-width:1024px) {

.main-content{margin: auto;  padding:20px 0px 0px 0px;  }

}

 @media (max-width:767.98px) {

.main-content{margin: auto;  padding:0px;  }

}





.description{ max-width: 80%; margin: auto; padding:0px;}

.description p{font-weight: 400;}

 @media (max-width:1024px) {

.description{ max-width: 100%; }	 

}













/* cms-title-block h2 =======================================================================	*/

.title-block{ width: 100%; height: auto; margin:0px auto 30px auto; text-align: center;  position: relative; }

.title-block h2:before{ content: ""; position: absolute; height: 2px; width: 100px; background-color:#004198; display: inline-block; margin-left:-200px; margin-top: 30px;}

.title-block h2::after { content: ""; height: 2px; width: 100px; background-color:#004198; position: absolute; display: inline-block; margin-left: 100px;  margin-top: 30px;}

.title-block h2 {width: auto; display: block; margin:0px auto; padding:20px 0px; font-size: calc(1.5625rem + 1.0416666667vw);  letter-spacing: 3px;color:#004198; font-weight:700;   position: relative;  }

.title-block h3 { font-size: calc(0.9rem + 1.0416666667vw); font-weight:500; letter-spacing: 3px;   }

.title-block p { margin:0px auto; padding:20px 0px 0px 0px; font-size:1.25rem;  color:#2c3943; font-weight:400;  text-align: center; position: relative;  }



.title-block.subtitle {  display: inline-block; text-transform: uppercase;  font-size: 18px; font-weight: 700; letter-spacing: 2.8px; margin-bottom: 8px; color:#004198;}

.title-block.line .subtitle:before {  content: ""; position: absolute; top: calc(50% - 0.5px); right: 0;  width: 0; height: 1px; background-color: #0075af; transition: ease-out 0.5s 0.8s;}



 



@media (max-width: 1199.98px) {

.title-block h2{  font-size: 1.5rem; }

}

@media (max-width: 767.98px) {

.title-block {  margin: 15px auto;   }  

.title-block h2{  font-size: 1.275rem;  }

.title-block h2:before,.title-block h2::after{  display: none}    

}  

 /*cms-Title Styles 樣式

=================================*/



 .title {  width: 100%; margin:0px auto 30px 0px; padding: 0px; letter-spacing: 2px; text-transform:uppercase } 

.title h1,.title h2{  margin:10px  auto; font-size:1.75rem; font-weight:700; color: #003399;  }

.title em{ font-size:1rem; font-weight:700; color: #003399; display: block }

.title h3{ font-size: 2.75rem; font-weight:700; color: #000;  }

.title strong{color:#003399;}



 @media (max-width:1160px) {

.title h1,.title h2{ font-size: 1.875rem;}

.title span{ font-size: 1.875rem; }	 

}



@media (max-width:840px) {

.title {width: 100%; margin: auto;}

.title h1,.title h2{  font-size: 1.5rem;}  

.title h2 span{margin-left: 10px;}

.title span{ font-size: 1rem;}       

}



@media (max-width:767.98px) {

.title { margin:0px auto;  }  

.title h2 span{ display: block; font-size: .875rem;margin-left: 0; }       

}

@media (max-width:320px) {

.title h1,.title h2{  font-size: 1.175rem;   }  

.title h3{ font-size: 1rem;   }   

}

 

/*title-left  樣式

=================================*/

.title-left { width:100%; height: auto; padding-bottom: 10px; margin:0 auto 30px auto; position: relative;  border-bottom:2px solid #c0d1dd; }

.title-left h2{ margin-bottom: 0px; font-size:2.2875rem; font-size: calc(1.5625rem + 1.0416666667vw);font-weight: 500; line-height: 1.23; letter-spacing: normal;  color:#004098;  }

.title-left h3{ margin-bottom: 0px;font-size:2rem; font-size: calc(0.9rem + 1.0416666667vw); font-weight:600; line-height: 1.23; letter-spacing: normal;  color:#000;  }



.title-left p{ width: 100%;  margin:0px auto;  font-size:1.15rem; font-weight:400;   color:#000;  }

.title-left strong{ letter-spacing:2px; font-weight:700; color:#004098; }



@media (max-width: 1280px) {

.title-left p{font-size: 1rem;}   

.title-left h2,.title-left h3,.title-left p{ margin:15px auto; }

}



@media (max-width: 768px) {

.title-left p{ line-height: 1.35rem;}   

.title-left span{  line-height: 1rem;   }    

}



@media (max-width: 767.98px) {

.title-left { padding:0px; }

.title-left h2{font-size:1.5rem;}  

.title-left h3{font-size: 130%; line-height: 1.75rem; color: #004098 }	

.title-left p{ font-size: .9rem; line-height: 1.15rem; }      

}

@media (max-width: 480px) {

.title-left h2{font-size:1.35rem;}   

}

 

.title-wrap{ width: calc(100% - 200px);  margin: 20px auto;position: relative;z-index:3; }

.titlebox{margin-bottom: 20px;position: relative;z-index:3; }

.titlebox strong{display: block}

.titlebox .title-en { font-size: 2rem; font-weight: 700; line-height: 3rem; color:#004098; position: relative;}

.titlebox .title-en:after { position: absolute; left: -30px; top: -4px; content: "";  width:46px; height:46px; border-radius:50%;  background: linear-gradient(135deg, rgba(230, 0, 18, 0.08) 0%, rgba(255, 255, 255, 0) 100%); z-index: -1;  opacity: 1 }

@media (max-width:840px) {

.title-wrap{ width: 100%; margin: 20px auto;  }

}

@media (max-width:767.98px) {

.titlebox strong{display: inline-block!important; }	

.titlebox .title-en {font-size: 130%; line-height: 1.75rem;  }	

}

 .title-4 { margin: 30px 0px;  display: flex; flex-wrap: wrap; flex-direction: column; border-bottom: solid 1px #1d1d1f;position: relative;  letter-spacing: 3px;}

.title-4 h2{margin:0px 0px 15px 0px;  color: #212529; line-height: 1.15;  text-transform: uppercase; font-size: calc(1.5625rem + 1.0416666667vw); font-weight:700; letter-spacing: 3px;}

.title-4 h3{margin:0px 0px 15px 0px; color: #212529; line-height: 1.15;  text-transform: uppercase; font-size: calc(0.9rem + 1.0416666667vw); font-weight:500; letter-spacing: 3px;}

 

.line-en { margin-bottom: 20px; font-size: 1.275rem;  font-weight: 700; line-height: 2.5rem;  position: relative;}

.line-en:before { content: ""; margin:0px auto;position: absolute; bottom:0px;left:0px; width:20px; height: 2px; background-color: #004098; }

@media (max-width:767.98px) {

.line-en {font-size: 130%; line-height: 1.75rem;  }	

.line-en:before {  bottom:-5px;left:0px;  }	

}



 

.title-center { width: calc(100% - 100px);  margin: 0 auto 80px auto; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; ustify-content: center; position: relative;  z-index: 1;}

.title-center::before { content: ""; position: absolute; width: 100%; height: 5px; background: #004198; top: 50%; left: 0;  -webkit-transform: translateY(-50%);  transform: translateY(-50%);}

@media (max-width: 480px) {

.title-center {width: 100%; margin:20px 0px 0px 0px; }

}

.title-center .innerbox { background:#fff; padding: 0 10px; position: relative; z-index: 1; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal;  -webkit-box-direction: normal; -webkit-box-align: center; -ms-flex-align: center; align-items: center;  -webkit-box-pack: center;  -ms-flex-pack: center; justify-content: center;  flex-direction: column }

.title-center .innerbox .m-title { font-size: calc(1.5625rem + 1.0416666667vw); font-weight:700;line-height: 3rem;margin-bottom: 10px;}

@media (max-width: 768px) {

.title-center .innerbox .m-title { font-size:1.5rem; }

}

@media (max-width: 480px) {

.title-center .innerbox .m-title { font-size:1.35rem;line-height: 1.875rem; }

}

.title-center .innerbox .circle-dot {display: block; width: 22px; height: 22px; border: 2px solid #004098; border-radius: 50%; position: relative; top: unset; left: unset; right: unset; bottom: unset; z-index: 1; margin: 0 10px; -webkit-animation: jump 1.5s linear infinite;}

@media (max-width: 740px) {

.title-center .innerbox .circle-dot { display: none; }

}

.title-center .innerbox .circle-dot:before { content: ""; position: absolute; width: 6px; height: 6px; background:#fdb311; border-radius: 50%; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%);}

.title-center .innerbox .subtitle {  width: 100%; text-align: center;  font-weight: 700; margin:20px auto;}

@media (max-width: 740px) {

.title-center .innerbox .subtitle { display: none; }

}

.title-center .innerbox .subtitle span { color:#004098; padding-left: 5px;}

.title-center .innerbox  p { font-size: calc(0.9rem + 1.0416666667vw); font-weight:500; color:#004098; }

.title-center .leftLine { width:5px; height: 50px; background:#004198; position: absolute; top:50%; left: 0; right: unset; bottom: unset; z-index: 1;}

.title-center .rightLine {  width:5px;  height: 50px;  background:#004198; position: absolute; top:50%; left: unset; right: 0; bottom: unset; z-index: 1;}

@media (max-width: 740px) {

.title-center .leftLine ,.title-center .rightLine{display: none}

}

 

.title-text span{color: #f38054; font-size: 26px; font-weight: bold; top:-10px;  margin-right: 30px; position: absolute;}

/*----------------------------------------/

分頁 自訂顏色樣式

----------------------------------------*/

.pagination{ width: 100%; margin:50px auto 0px auto; padding-bottom: 30px; display: flex; justify-content: center;  }

.pagination .page-link { color:#004198;  width:40px;height: 40px;text-align: center; background-color:transparent;; border-color:transparent; border-radius:99rem;}

.pagination .page-link:hover { color: #fff; background-color:#004198; border-color:#004198;}

.pagination .page-link:focus { box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);}

.pagination .page-item{ margin: 5px;  }

.pagination .page-item:first-child .page-link {  border-radius:99rem; background-color:transparent; border-color:#004198;}

.pagination .page-item:last-child .page-link { border-radius:99rem;  background-color:transparent;  border-color:#004198;}

.pagination .page-item.active .page-link { color: #fff!important;  background-color:#004198; border-color:#004198;}

.pagination .page-item.disabled .page-link { color: #fff;  background-color:#555;  border-color:#555;  }

.pagination .page-link:hover span { color: #004198; }



@media (max-width: 320px) {

.pagination .page-link {  padding: 3px;  width:30px;height: 30px; }    

}

 .editor blockquote {width: 100%; display: block; font-size: 26px; font-weight: 400; line-height: 1.5; letter-spacing: normal;  position: relative; margin: 0; padding-left: 32px;  color: #1e88c9;  -webkit-box-sizing: border-box;box-sizing: border-box;}

.editor blockquote:before { width: 8px; height: 100%; content: ""; position: absolute; top: 0; left: 0; display: block; background-color: #1e88c9;}

/*---------------*/

/***** icon *****/

/*---------------*/

.icon-download{  background: url("../images/icon/icon-download.svg") no-repeat  left center; }

.icon-back{background: url("../images/icon/arrow-left-2.svg") no-repeat left center;  background-size:auto;}

.icon-shop{display: block;  margin: auto;background:url("../images/icon/shop-1.svg") no-repeat left top; }

 .icon-next{background: url("../images/icon/arrow-right-2.svg") no-repeat left 0px;  background-size:auto;}

.icon-link{background: url("../images/icon/link.svg") no-repeat left center;  background-size:auto;}

.icon-check{background: url("../images/icon/check.svg") no-repeat center 4px; background-size:70% auto;}

.icon-clear{background: url("../images/icon/clear-w.svg") no-repeat center 4px; background-size:70% auto;}

.arrow-w{background: url("../images/icon/arrow-right-2.svg") no-repeat right top;  } 

 

 .transition-3d-hover { transition: all .2s ease-in-out}

.transition-3d-hover:focus, .transition-3d-hover:hover {-webkit-transform: translateY(-3px);transform: translateY(-3px)}



/***** btn *****/

/*---------------*/

.btn { width: 100%; min-height: 58px; margin: 0px 5px 0px 0px;padding: 10px;font-size: .95rem; line-height: 1.5;  border-radius:0px;  overflow: hidden;}

/*.btn i{ width:36px; height:36px;margin:auto ;}*/

.btn .circle{ width:36px; height:36px; border: solid 1px #004198;  background: #fff; border-radius:99rem; margin:auto 5px auto 0px; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;z-index: 1 }

.btn .circle-orange{  background: #004198; border: solid 1px #004198;}



@media (max-width: 991.98px) {

.btn { font-size: .9rem;  }

}

@media (max-width: 797.98px) {

.btn { font-size: .875rem;  }

}

@media (max-width: 320px) {

.btn { font-size: .75rem;  }

}

.btn-play {  width: 116px; height: 116px;  z-index: 9999; position: absolute;  margin: auto; display: flex;  align-items: center;  justify-content: center;}

.btn-play:before { content: '';  position: absolute; left: 50%; top: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%);  width:60px; height:60px; background: url("../images/icon/play-btn.svg") no-repeat; background-size: contain;}

.btn-play:hover .rotate2 {  -webkit-animation: rotate 1s linear infinite;animation: rotate 1s linear infinite;}

.btn-play .rotate1,.btn-play .rotate2 { -webkit-transform: translate(5px, 5px); -ms-transform: translate(5px, 5px);transform: translate(5px, 5px);}

.btn-play .rotate2 { stroke-dashoffset: 110; stroke-dasharray: 360; -webkit-transform-origin: center center; -ms-transform-origin: center center; transform-origin: center center; -webkit-transform: rotate(-90deg) translate(5px, 5px); -ms-transform: rotate(-90deg) translate(5px, 5px); transform: rotate(-90deg) translate(5px, 5px);}

.btn-play-bg{width: 116px; height: 116px;}

.btn-play .bg {  opacity: .5;}



@media (max-width: 767.98px) {

.btn-play {transform: scale(.7)}

}



.btn-more { opacity: 1; transform: none; margin: 0px;}

.btn-more a{color: #000; font-weight: 700;  font-size: 1.125rem;  display: flex; align-items: center; }

.btn-more a:hover{opacity: .5;}

 

.btn.btn-secondary { color:#fff; font-size: 1rem; font-weight: 700; letter-spacing: 0px;  background:#000; display: flex;  flex-wrap: wrap; justify-content: center; align-items: center;transition: all 1s;  }

.btn.btn-secondary:hover { color: #fff;   }

 

.btn-btnbox {position: relative;z-index:9; display: flex;  justify-content: center;  width: calc(100% - 80px); max-width:600px;  height: auto; margin:10px auto; transition: all 1s;border-radius:30px; overflow: hidden;  }    

.btn-btnbox .btn { margin: 0px; }

.btn-submit{ font-weight: 700; background:#004098;border: solid 1px #000;  color: #fff!important; vertical-align: text-bottom; }

.btn-submit:hover { color: #fff;  background:#000; border: solid 1px #000;   }



.btn-reset{ font-weight: 700;  background: #555;border: solid 1px #555;  color: #fff!important; vertical-align: text-bottom; }

.btn-reset:hover { color: #fff;  background:#000;   }

 

/*print

=================================*/

.btn.btn-print { color:#fff; font-size: 1rem; font-weight: 700; letter-spacing: 0px;  background-color:#004098; display: flex;  flex-wrap: wrap; justify-content: center; align-items: center; transition: all 1s; }

.btn.btn-print:hover { color: #fff;   }



/*---------------*/

/***** btn *****/

/*---------------*/

.btnbox {position: relative;z-index:9; display: flex;  justify-content: center;  width: 100%; height: auto; margin:20px auto 0px auto;  transition: all 1s;}   

a.btn-prev {color:#000; font-weight: 400; text-align: center; transition: all 0.5s; position: relative;   }

a.btn-next {color:#000; font-weight: 400;  text-align: center; transition: all 0.5s; position: relative;  }

a.btn-prev:before{content: "";  position: absolute;top:18px; left:calc(50% - 18px);width:18px; height:12px; background: url("../images/icon/arrow-left-2.svg") no-repeat left top; transition: all 0.5s; filter: grayscale(1) brightness(0);}

a.btn-next:before{content: "";  position: absolute;top:18px; right:calc(50% - 8px);width:18px; height:12px; background: url(../images/icon/arrow-right-2.svg) no-repeat left top; transition: all 0.5s; filter: grayscale(1) brightness(0);}

a.btn-prev:after,a.btn-next:after { display: block; content: ''; width: 0; height:3px; position: absolute; left:0px; bottom: 0px;  background:#29b8ed; transition: all .3s ease;} 

@media (max-width:320px) {

a.btn-prev:before{ top:10px; }

a.btn-next:before{ top:10px; }   

}



a.btn-prev:hover:after,a.btn-next:hover:after{ width: 100%;  }

a.btn-prev:hover:before{  -webkit-transform: translateX(5px); transform: translateX(-5px);  }

a.btn-next:hover:before{  -webkit-transform: translateX(-5px); transform: translateX(5px);  }

a.btn-prev:hover, a.btn-next:hover  { color:#2ab8ed!important;    }



a.btn-back { width:auto; color:#000!important; padding: 10px; font-weight: 400; background-color:#f2f2f2;  display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-justify-content:center;  -ms-flex-pack: center; justify-content: center;  -webkit-align-items: center;  -ms-flex-align: center;  align-items: center;  }

.btn-back:before,.btn-back::after{ content: ''; width: 10px; height:1px;  display: block; background:#797371;-moz-transition: ease 0.3s; -o-transition: ease 0.3s; -webkit-transition: ease 0.3s;  transition: ease 0.3s;  }

.btn-back:before { margin-left: 20px;margin-right: 20px;  }

.btn-back:after { margin-left: 20px; margin-right: 20px; }

a.btn-back:hover {   color:#2da6e0!important;  }

.btn-back:hover:before{   background:#2da6e0; -moz-transform: translateX(20%); -ms-transform: translateX(20%); -webkit-transform: translateX(20%); transform: translateX(20%);  }

.btn-back:hover:after{  background:#2da6e0;-moz-transform: translateX(-20%); -ms-transform: translateX(-20%); -webkit-transform: translateX(-20%); transform: translateX(-20%);  }

@media (max-width:1024px) {

.btn-back:before,.btn-back::after{ display: none; }

}

 @media (max-width: 767.98px) {

.btn-back  { font-size:.875rem; padding:5px  10px;}  

}



 



.back-button {  width: auto; height: 40px; margin: 0; padding: 10px 20px 10px 1px; position: relative; display: -webkit-box;  display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; cursor: pointer; border-radius:0px;   background:#004098;}

.back-button:hover .back-button-circle { -webkit-transform: scale(1.2); transform: scale(1.2)}

.back-button:hover .back-button-txt, .back-button:hover i { -webkit-transform: translateX(-5px); transform: translateX(-5px)}

.back-button-circle { width: 32px; height: 32px;  position: relative; display: block; margin:0px 10px 0px 0px; border: 1px solid none;  border-radius: 50%;  -webkit-transition: -webkit-transform .2s; transition: -webkit-transform .2s; transition: transform .2s; transition: transform .2s, -webkit-transform .2s}

.back-button i.arrow-l { width: 28px; height: 28px; position: absolute;top: 0; bottom: 0; left:0px; background: url("../images/icon/arrow-left-2.svg") no-repeat 4px 4px;  margin: auto;   -webkit-transition: -webkit-transform .2s;  transition: -webkit-transform .2s; transition: transform .2s; transition: transform .2s, -webkit-transform .2s}

.back-button-txt { font-size: 16px; font-weight: 700; line-height: 1.5; letter-spacing: 1px; color: #fff;  -webkit-transition: -webkit-transform .2s; transition: -webkit-transform .2s; transition: transform .2s; transition: transform .2s, -webkit-transform .2s}

.back-button:hover{  background:#000; }

@media (max-width:767px) {

.back-button { width: auto;  }

.back-button-circle { width: 24px; height: 24px; margin-right: 15px}

.back-button i { width: 22px; height: 22px; margin: auto auto auto 10px}

.back-button-txt { font-size: 14px; line-height: normal; letter-spacing: normal }

}

/*cms-btn Styles 1

=================================*/

 /*.btn-1

=================================*/

.btn-1 {position:relative; border: none; cursor: pointer; margin: 20px auto; padding:12px 20px; background:#003399; border-radius:30px; overflow: hidden; }

a.btn-1 { color: #fff;}

a:active .btn-1 {background-color:#004198;}

.btn-1 span { color: #fff;font-weight:700; position: relative;z-index:1; transform-origin: center left; transition: color 0.3s ease; }

.btn-1:before,.btn-1:after {content: '';background:#fdb212;height:100%; width: 0;position: absolute;  transition: 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);border-radius:30px; overflow: hidden; }

.btn-1:before { top: 0; left: 0; right: auto;}

.btn-1:after { bottom: 0; right: 0; left: auto;}

.btn-1:hover:before { width: 100%; right: 0; left: auto;}

.btn-1:hover:after { width: 100%; left: 0; right: auto;}





/*=================================*/

 /*.btn-01

=================================*/



.btn-01 {position:relative;  cursor: pointer; margin: 20px auto; padding:15px 20px; border: solid 1px #fff;background-color:transparent}

a.btn-01 { color: #fff;}

.btn-01::before, .btn-01::after{ content:""; width: 0; height: 2px; position: absolute;transition: all 0.2s linear; background:#fff;transition-delay: 0.2s;   box-shadow: 0px 2px 2px rgba(255,255,255,.2) }

.btn-01 span::before, .btn-01 span::after{  content:""; width:2px; height:0; position: absolute; transition: all 0.2s linear; background:#fff;transition-delay: 0s;}

.btn-01::before{  right: 0; top: 0;}

.btn-01::after{ left: 0; bottom: 0;}

.btn-01 span{ font-size: 1.125rem; font-weight: 700;}

.btn-01 span::before{  left: 0; top: 0;}

.btn-01 span::after{right: 0;bottom: 0;}

.btn-01:hover::before, .btn-01:hover::after{  width: 100%;transition-delay: 0s;}

.btn-01:hover span::before, .btn-01:hover span::after{ height: 100%;transition-delay: 0.2s; }

.btn-01:hover{background-color: #ff6633; border: solid 1px rgba(255,255,255,1); box-shadow: 0px 10px 10px  rgba(237,109,52,.25);  }

a.btn-01:hover { color: #fff;}

@media (max-width:640px) {

.btn-01 {  padding:10px  }

.btn-01 span{ font-size: 1rem;  }

}







 

/*.btn-02

=================================*/

.btn-02{ cursor: pointer; width:200px; height:2.75rem; padding:0px 30px 0px 50px;margin: 0px; line-height:2.75rem; display: flex; align-items: center; position: relative; box-shadow: 0px 0px 17px 1px rgba(0, 0, 0, 0.34); background-color:#003399; z-index: 1; border-radius:30px; overflow: hidden; }

.btn-02 span {display: flex;  transform-origin: center left; transition: color 0.3s ease;position: relative;z-index:1; font-weight: 700; color: #fff;}

.btn-02 em {position: absolute;width:32px; height:32px;right:5px;top:5px;border-radius:99rem; transition: all 0.3s ease; background: url("../images/icon/arrow-right-f.svg") no-repeat center; background-size:22px;  background-color: #fff;  z-index:1;  }

.btn-02:before,.btn-02:after {content: '';background:#fdb212;height:100%; width: 0;position: absolute;  transition: 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);}

.btn-02:before { top: 0; left: 0; right: auto;  }

.btn-02:after { bottom: 0; right: 0; left: auto; }

.btn-02:hover:before { width: 100%; right: 0; left: auto;}

.btn-02:hover:after { width: 100%; left: 0; right: auto;}

.btn-02:hover span{color: #fff;}

.btn-02:hover em{ transform:translateX(5px);}

@media (max-width: 320px) {

.btn-02{  width:100%;  }   

.btn-02 span { font-size:.9rem;}   

}



 

/*cms-btn Styles 3=== */

a.btn-03{width:auto;  display: flex;  flex-wrap: wrap; justify-content: center; align-items: center; color: #004098;font-weight:400;  overflow: hidden; text-align: center; background-color: transparent;border:solid 1px transparent; cursor: pointer;  letter-spacing: 0.1rem;  box-shadow: inset 0 0 0 1px #004098;-webkit-transition: color 0.25s 0.0833333333s; transition: color 0.25s 0.0833333333s;   position: relative;}

 .btn-03 span { display: inline-block;  transform-origin: center left; transition: color 0.3s ease;position: relative;z-index:1;font-size:1rem; font-weight: 700; color:#004098;}

  

 

.btn-03 i{  filter: brightness(200%);  }

.btn-03:hover i{  filter:invert(1) brightness(200%);   }

.btn-03:hover .circle{ background-color: #fff  }



 a.btn-03:hover{color:#fff; background:#ff6733; }

 a.btn-03:hover span{color:#fff;  }



/* Bounce To Right */

.hvr-bounce-to-right { display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; -webkit-transition-property: color;  transition-property: color; -webkit-transition-duration: 0.5s; transition-duration: 0.5s;}

.hvr-bounce-to-right:before { content: ""; position: absolute; z-index: -1; top: 0; left: 0; right: 0; bottom: 0;  background:#004098; -webkit-transform: scaleX(0);  transform: scaleX(0); -webkit-transform-origin: 0 50%; transform-origin: 0 50%; -webkit-transition-property: transform; transition-property: transform; -webkit-transition-duration: 0.5s; transition-duration: 0.5s;  -webkit-transition-timing-function: ease-out;  transition-timing-function: ease-out;}

.hvr-bounce-to-right:hover, .hvr-bounce-to-right:focus, .hvr-bounce-to-right:active {color: white;}

.hvr-bounce-to-right:hover:before, .hvr-bounce-to-right:focus:before, .hvr-bounce-to-right:active:before { -webkit-transform: scaleX(1); transform: scaleX(1);  -webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66); transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);}



a.text-button{color:#004098 }

.text-button { margin: 25px 0px; font-size: 1rem; font-size: min(max(3.5vw, 0.9rem), 1rem); font-weight: 700; text-transform: uppercase; letter-spacing: 0.125rem; cursor: pointer; display: inline-block; color: currentColor; padding-left: 2.1875rem; position: relative; transition: padding 0.3s ease;}



.text-button::before { content: ''; display: inline-block; position: absolute; left: 0; top: 50%; width: 1.5625rem; height: 0.0625rem; background: currentColor; vertical-align: middle; margin-right: 0.625rem; transition: padding 0.3s ease}

@media (hover: hover) {

.text-button:hover { color: currentColor; padding-left: 2.8125rem  }

.text-button:hover:before { width: 2.1875rem; color: currentColor  }

}

@media (max-width: 798px) {

.text-button { letter-spacing: 0rem; }  

a.text-button { font-size: 0.875rem; }    

}



@media (max-width: 320px) {

.text-button::before {  top: 20%;}

}

 

 

/*----------------------------------------/

ul style 自訂樣式

----------------------------------------*/

 

.check{ width: 100%;  display: block; margin:0px;padding: 0px; }

.check li{ width: 100%; display: block; padding: 0px 0px 0px 25px!important; margin:0px 0px 2px 0px; font-size:1.125rem;   font-weight:400; color: #131212; position: relative;}

.check li:before{ content: ''; width: 15px; height: 15px; background-color:#004098; border-radius: 99rem; position: absolute; top: 6px; left: 0px;  transition: all 0.5s ease 0s;}

.check li:after{ content: ''; width: 12px; height: 12px;  background: url("../images/icon/check.svg") no-repeat left top;position: absolute; top:8px; left: 2px;  transition: all 0.5s ease 0s;}

.decimal { list-style-position: outside; list-style-type: decimal; padding-left: 15px;}

.decimal li{margin-bottom: 10px; font-size:1rem;font-size: min(max(3.5vw, .9rem), 1rem);line-height: 1.5rem;font-weight:400;  }

.tag{ padding: 5px 10px;  display: inline-block; width: auto; max-width: 100px; margin:  5px;font-size:15px; line-height:1.5em; font-weight:400; text-align: center;  border: solid 1px #eee; background: #eee;}



/*----------------------------------------/

aside cssmenu樣式

----------------------------------------*/

.main-area.top #cssmenu{margin:50px auto 10px auto;}

 /*----------------------------------------/

aside cssmenu樣式

----------------------------------------*/

#menu-line{position:relative;bottom:0px; left:0px;top:50px; right: 0px; margin-left: 5px; width: auto;height:3px;background:#db0632;-webkit-transition:all 0.25s ease-out;-moz-transition:all 0.25s ease-out;-ms-transition:all 0.25s ease-out;-o-transition:all 0.25s ease-out;transition:all 0.25s ease-out;}

 #cssmenu > ul > li a { vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; }

#cssmenu > ul > li a:before { content: ""; position: absolute; z-index: -1; left: 51%; right: 51%; bottom: 0; background:#004198; height: 4px;  -webkit-transition-property: left, right; transition-property: left, right;  -webkit-transition-duration: 0.3s;  transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out;}

#cssmenu > ul > li a:hover:before, #cssmenu > ul > li a:focus:before, #cssmenu > ul > li a:active:before {left: 0;right: 0;}

#cssmenu{width:100%;margin:0px;padding:0;border:0;list-style:none;  border-top:solid 1px #d6d6d6;border-bottom:solid 1px #d6d6d6;display:block;position:relative; -webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;z-index:9;}

#cssmenu #menu-button{margin:0px;padding:0;border:0;list-style:none; display:block;position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;z-index:9999;background-color:#fff;  }

#cssmenu #menu-button{display:none;}

#cssmenu ul,#cssmenu ul li,#cssmenu ul li a{margin:0;padding:0;border:0;list-style:none; display:block;position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}

#cssmenu:after, #cssmenu > ul:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0;}

#cssmenu > ul > li{float:left;width: auto; position: relative;z-index: 1; margin:0px;border-radius:0px; background-color:transparent;}

#cssmenu > ul > li::after{content: ""; width: 1px; height: 100%; display: block; position: absolute; right: 0px; top:0px; background:#d3d3d3; }

#cssmenu.align-center > ul{font-size:0;text-align:center;   }

#cssmenu.align-center > ul > li{display:inline-block;float:none;}

#cssmenu.align-center ul ul{text-align:left;}

#cssmenu.align-right > ul > li{float:right;}

#cssmenu.align-right ul ul{text-align:right;}

#cssmenu > ul > li:hover,#cssmenu > ul > li:hover > a,#cssmenu > ul > li.active{ border-color:#eee;}  

#cssmenu > ul > li.active > a{color:#fff;  background-color:#004198}  

#cssmenu > ul > li:hover > a {color:#fff;}

#cssmenu > ul > li.active:hover > a {color:#004198;}  

#cssmenu > ul > li > a{padding:10px 25px 10px 25px; font-size:0.95rem; font-weight: 600;  text-align:center;text-decoration:none;text-transform:uppercase;color:#1e1e1e;-webkit-transition:color .2s ease;-moz-transition:color .2s ease;-ms-transition:color .2s ease;-o-transition:color .2s ease;transition:color .2s ease;}

#cssmenu > ul > li > a span{ margin: auto; width: 100%; max-width: 100px;font-size: 0.875rem; line-height: 1rem;}

#cssmenu > ul > li.has-sub:hover > a::after{border-color:#eee;}

#cssmenu ul ul{position:absolute;left:-9999px; background:#fff; box-shadow: 0 5px 10px -6px rgba(0, 0, 0, 0.5);  }

 #cssmenu li:hover > ul{left:auto;}

 #cssmenu.align-right li:hover > ul{right:0;}

 #cssmenu.align-right ul ul ul{margin-left:0;margin-right:100%;}

#cssmenu ul ul li{  -webkit-transition:height .2s ease;-moz-transition:height .2s ease;-ms-transition:height .2s ease;-o-transition:height .2s ease;transition:height .2s ease;}

#cssmenu ul ul ul{margin-left:100%;top:0; background:#fff8f9!important;  -webkit-transition:all 0.25s ease-out;-moz-transition:all 0.25s ease-out;-ms-transition:all 0.25s ease-out;-o-transition:all 0.25s ease-out;transition:all 0.25s ease-out;}

#cssmenu ul li:hover > ul > li{   }

#cssmenu ul ul li a{ padding:8px 20px; width:200px; font-size:0.9rem;font-weight:400;line-height:1.5rem;text-align:left;text-decoration:none;color:#000;  -webkit-transition:color .2s ease;-moz-transition:color .2s ease;-ms-transition:color .2s ease;-o-transition:color .2s ease;transition:color .2s ease;}

#cssmenu ul ul li:hover > a,#cssmenu ul ul li a:hover{color:#004198;}

#cssmenu ul ul li.has-sub > a::after{position:absolute;top:25px;right:10px;width:4px;height:4px;border-bottom:1px solid #000;border-right:1px solid #000;content:"";-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transition:border-color 0.2s ease;-moz-transition:border-color 0.2s ease;-ms-transition:border-color 0.2s ease;-o-transition:border-color 0.2s ease;transition:border-color 0.2s ease;}

#cssmenu ul ul li.has-sub:hover > a::after{border-color:#776b62;}

#cssmenu .submenu-button{position:absolute;z-index:10;right:10px;top:15px;display:block; height:14px;width:14px;cursor:pointer;}

#cssmenu .submenu-button::after{content:'';position:absolute;top:0;right:7px;display:block;width:1px;height:14px;background:#000000;z-index:99;}

#cssmenu .submenu-button::before{content:'';position:absolute;top:7px;right:0;display:block;width:14px;height:1px;background:#000000;z-index:99;}

#cssmenu .submenu-button.submenu-opened:after{display:none;}

#cssmenu li:hover .submenu-button{ }

#cssmenu li:hover .submenu-button::after,#cssmenu li:hover .submenu-button::before{ background:#fff; }





/*img*/

#cssmenu > ul > li:hover > a > figure,#cssmenu > ul > li.active  a  figure{filter:invert(100%) brightness(5) grayscale(1)}   

#cssmenu > ul > li:hover {  border-color:transparent; background: #004198; z-index: 2; }  

#cssmenu > ul > li > a > figure{width: 100%; max-width:42px; height: 42px; margin: auto;}

#cssmenu > ul > li > a span{font-size: 0.95rem; font-weight: 400; text-align: center; margin: 10px auto;}

#cssmenu > ul > li.active > a span{color:#fff; }  





/*brand*/



#cssmenu > ul > li.brand a:before { display: none; }



    

#cssmenu li.brand ul.brand-list { width: 100%; min-width: 1000px; margin: auto; padding: 10px; display: flex; flex-wrap: wrap; list-style: none;}

#cssmenu li.brand ul.brand-list  li{width:calc(100%/5 - 10px); margin: 5px; padding:5px; transition: all 0s ease 0s;border:solid 1px rgba(255,255,255,1); border-radius:5px;background-image: linear-gradient(to top,  #c6d5de 0%, #f4f5f5 100% );  box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2);  } 

#cssmenu li.brand ul.brand-list li a{ padding: 0px; display: flex; flex-wrap: wrap; align-items: center;   position: relative  } 

#cssmenu li.brand ul.brand-list li a .pic  { margin-left: 10px; width:40px; height: 40px; position: relative; z-index: 1; transition: all 0.5s ease 0s; transition: all 0.5s ease-in-out; }

#cssmenu li.brand ul.brand-list li a .pic img { width: 100%;height: auto; padding: 0px;}

#cssmenu li.brand ul.brand-list li a span {width:calc(100% - 60px); margin: 0px auto 0px 10px; padding:0px; font-size:0.8rem; line-height: 1.175rem; text-align: left;  font-weight:400; text-decoration: none; color:#1d1d1f;   }        

#cssmenu li.brand ul.brand-list  li i.lable{width: 24px; height: 24px; position: absolute; left:-10px; bottom:-10px; z-index: 1 }

#cssmenu li.brand ul.brand-list  li i.label-gray{width: 24px; height: 24px; background: url("../images/index/labe-gray.png") no-repeat center top;background-size: 24px; }

#cssmenu li.brand ul.brand-list  li i.label-gloden{width: 24px; height: 24px; background: url("../images/index/labe-gloden.png") no-repeat center top; background-size: 24px; }

 

#cssmenu li.brand ul.brand-list  li a:hover span{ color:#004198;}

#cssmenu li.brand ul.brand-list  li:hover {background-image: linear-gradient(to bottom, #d8e1e9 0%, #fff 100%); border: solid 1px rgba(0,65,152,.5)}





 







@media (max-width:999px) {

#cssmenu{width:100%;margin-top:0px !important; position: sticky; z-index:11; border-color: #004198;}

#cssmenu ul{width:100%;height: 100vh; overflow-y: scroll ; margin: auto; display:none; background:#fff; position: absolute; box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2); }

#cssmenu ul ul{ height: auto; box-shadow: none;  background-color: #eaedf0}

#cssmenu ul ul ul{ background:#eee;  }   

#cssmenu.align-center > ul,#cssmenu.align-right ul ul{text-align:left;}

#cssmenu ul li,#cssmenu ul ul li,#cssmenu ul li:hover > ul > li{width:100%;height:auto;margin: 0px; /*border-top:1px solid rgba(120, 120, 120, 0.15);*/}

#cssmenu > ul > li{border: none; border-bottom: solid 1px #ddd; box-shadow: none;}

#cssmenu ul li a,#cssmenu ul ul li a{width:100%; }

  #cssmenu li:hover > ul{display: block}

	

	

	

#cssmenu > ul > li.active:hover > a {color:#fff;}  

#cssmenu > ul > li,#cssmenu.align-center > ul > li,#cssmenu.align-right > ul > li{float:none;display:block;}

#cssmenu ul ul li a{padding:10px 15px; color:#000;background:none;text-align:center;}

#cssmenu ul ul li:hover > a,#cssmenu ul ul li a:hover{color:#000000;}

#cssmenu ul ul ul li a{padding-left:40px;}

#cssmenu ul ul,#cssmenu ul ul ul{position:relative;left:0;right:auto;width:100%;margin:0; padding-bottom: 0px;}

#cssmenu > ul > li::after,#cssmenu ul ul li.has-sub > a::after{display:none;}

#cssmenu > ul > li > a{  flex-direction: row;}

#cssmenu > ul > li > a span{ margin: auto 0; }

#menu-line{display:none;}

#cssmenu #menu-button{display:block; padding:10px 20px; color:#004198;cursor:pointer;font-size:1rem;font-weight: 700;text-align: center; text-transform:uppercase; border-bottom:solid 1px #004198; background-color:#fff;-webkit-border-radius:0px;-moz-border-radius:0px;border-radius:0px;}

#cssmenu #menu-button::after {display: block; content: ""; position: absolute; left:3%; top: 10px;width: 24px; height: 24px;background: url("../images/icon/nav.svg") no-repeat left top;  }

#cssmenu .submenu-button{position:absolute;z-index:10;right:0;top:0;display:block;border-left:1px solid rgba(120, 120, 120, 0.15);height:52px;width:100%;cursor:pointer;}

#cssmenu .submenu-button::after{content:'';position:absolute;top:21px;right:26px;display:block;width:1px;height:11px;background:#000000;z-index:99;}

#cssmenu .submenu-button::before{content:'';position:absolute;right:21px;top:26px;display:block;width:11px;height:1px;background:#000000;z-index:99;}

#cssmenu .submenu-button.submenu-opened:after{display:none;}

#cssmenu li:hover .submenu-button{display:block;}

#cssmenu > ul > li > a > figure{ display: none}

#cssmenu li.brand ul.brand-list { min-width: auto;height:55vh; overflow-y: scroll; padding-bottom: 20px; }

#cssmenu li.brand ul.brand-list li{width:calc(100%/2 - 10px);display:block; } 	

#cssmenu li.brand ul.brand-list li a h3 { letter-spacing: 0; }        	

}

@media (max-width:767.98px) {

#cssmenu li.brand ul.brand-list li{width:100%; margin:5px auto} 	

}

/* ==== 底圖 === */

.bg-background { background-image: attr(src url); background-repeat: no-repeat; background-size: 100% auto;background-position:left bottom; position: absolute;z-index: 1; bottom:0px; left: 0; right: 0;  line-height: 0;  width: 100%;  }

@media(max-width: 992px) {

.bg-background {background-position:center;}

}

  

/*tab-bar style======================================================================*/

.tab-bar {position: relative;width: 100%;  min-height:40px;  display: flex; flex-wrap: wrap; flex-direction: column; justify-content: center;  background:#fff; z-index:1;   }

.tab-bar .btn-tab{   width: 100%; margin: 0px auto;  padding: 10px 0px;  position: relative;font-size: 1.188rem; font-size: min(max(3vw, 1rem), 1.188rem); font-weight: 700; letter-spacing: 6px; color: #ab2a02; text-align:center; border-bottom: 1px solid #ab2a02; }

.tab-bar .btn-tab::after { right: 20px;  top: 10px; content: ""; position: absolute; width: 14px; height: 14px; border-top: 2px solid #ab2a02; border-right: 2px solid #ab2a02; -moz-transform: rotate(135deg); -ms-transform: rotate(135deg); -webkit-transform: rotate(135deg); transform: rotate(135deg); -webkit-transition: transform .5s; transition: transform .5s; }

ul.tab { left: 0; right: 0; top:50px; position: absolute; margin: 0; width: 100%; padding: 0; display: none;  list-style: none;z-index: 5;}

ul.tab li {width: 100%; display: flex; justify-content: center; text-shadow:none;   font-size: 1.15rem;  font-size: min(max(3vw, 0.9rem), 1.15rem); background: #fafaf5;border-bottom: 1px solid #d8d8d8; z-index: 1; }

ul.tab li:last-child {/* border-bottom: none;*/ }

ul.tab a { width: 100%;  display: flex; justify-content: center;  padding:8px 10px; text-align: center; text-decoration: none; color: #1d1d1f;}

ul.tab a:hover { color:#ab2a02; }

ul.tab li a span{  text-align: center; color:#fff;}

ul.tab li.current a{ color:#ab2a02; }

/* Underline From Center */

ul.tab li { display: inline-block;vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); position: relative; overflow: hidden;}

ul.tab li:before { content: ""; position: absolute; z-index: -1; left: 51%; right: 51%; bottom: 0; background:#ab2a02; height: 4px; -webkit-transition-property: left, right; transition-property: left, right; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out;}

ul.tab li:hover:before, ul.tab li:focus:before, ul.tab li:active:before { left: 0; right: 0;}





@media (min-width:769px) {

.tab-bar { margin-bottom: 2%; background:none; z-index: 1; position: relative;  }

.tab-bar .btn-tab { display: none; }

div.tab-bar { width:100%; display: flex; margin:2% auto auto auto; font-size: 0.875rem!important; transition: background-color 220ms ease-in, box-shadow 80ms ease-in; background: transparent; box-shadow: none; border: none;z-index:0;  }

ul.tab { width: 100%; margin:auto;  top:auto;display: flex; align-items: center; justify-content:center; flex-wrap: wrap; text-align: center; z-index:0;position:relative; }

ul.tab.align-left { margin-left: 10px; justify-content:flex-start;  text-align: left; }

ul.tab.align-left li{  border-radius:5px;margin:0px 5px;  border-color: #ab2a02;  background-color: #fff; box-shadow:none;font-family: "Kanit", sans-serif; }



ul.tab a { padding:5px 10px;  color:#2c2c2c;  }

ul.tab li.current { color:#fff!important; background-color:#ab2a02; text-shadow:none; border-color: #ab2a02;  }

ul.tab li{ width: auto; margin:0px 5px; display: flex;  position: relative;z-index: 1; border: solid 1px  #f5c9c9; border-radius:5px;  background-color: #ffeeee; box-shadow: 3px 0 10px rgb(186 186 186 / 35%);  -webkit-transition: all 0.3s; transition: all 0.3s; }

ul.tab li.current a{ color: #fff!important; }

ul.tab li.current:hover a{ color:#ab2a02!important; }



ul.tab li a{ font-size:0.9rem;font-weight: 400; color:#ca3000!important;  background-color: transparent; letter-spacing: 2px;  padding:8px 15px; position: relative; transition: all 0.4s ease;    } 

ul.tab li:last-child { }

ul.tab li:hover{background:#f8f9f9;}    

}

.sec-fw-normal p {font-weight: 400;margin: 0;padding: 0;}
.sec-fw-normal ul, .sec-fw-normal ol{margin: 0;padding: 0;}
.sec-fw-normal ul li, .sec-fw-normal ol li {font-weight: 400;margin-left: 19px;}
.sec-brand-mit{padding: 0 0 70px 0;}
.sec-branding{margin-bottom: 90px;}
.sec-branding .sec-title{text-align: center;font-size: 2.125rem;font-weight: 500;letter-spacing: 3px;color: #000;margin-bottom: 35px;}
.sec-branding .sec-block .item{ display: grid;grid-template-columns: 1fr 1fr;gap:0 130px;align-items: center;}
.sec-branding .sec-block .item:not(:last-child){ margin-bottom: 40px;}
.sec-branding .sec-block .item .sec-pho{ position: relative;font-size: 0;line-height: 0;}
.sec-branding .sec-block .item .sec-pho::before{ position: absolute;content: "";top: 60px;right: -65px;width: 100px;height: 1px;background: #000;}
.sec-branding .sec-block .item .sec-pho img{border-radius: 10px;}
.sec-branding .sec-block .item .sec-dep {position: relative;}
.sec-branding .sec-block .item .sec-dep .number{ font-size: 32px; color: #004198;font-weight: 500;font-family: "Roboto", sans-serif;width: 38px;position: absolute;top: -2px;left: 0;line-height: 1;}
.sec-branding .sec-block .item .sec-dep .text-block{ padding-left: 54px;}
.sec-branding .sec-block .item .sec-dep .text-block .dep-title{font-weight: bold;font-size: 1.275rem;margin-bottom: 10px;}

.sec-branding .sec-block .item:nth-child(2n+2) .sec-pho{order: 2;}
.sec-branding .sec-block .item:nth-child(2n+2) .sec-dep{order: 1;}
.sec-branding .sec-block .item:nth-child(2n+2) .sec-pho::before{right: auto;left: -65px;}
.sec-branding .sec-block .item:nth-child(2n+2) .sec-dep .text-block{padding: 0 54px 0 0}
.sec-branding .sec-block .item:nth-child(2n+2) .sec-dep .number{left: auto;right: 0;}

.sec-mit .sec-title{text-align: center;font-size: 2.125rem;font-weight: 500;letter-spacing: 3px;color: #000;margin-bottom: 35px;}
.sec-mit .sec-block {display: grid;grid-template-columns: repeat(3, 1fr);gap:25px;}
.sec-mit .sec-block .item{display: grid;grid-template-rows: subgrid;grid-row: span 3;gap:0;}
.sec-mit .sec-block .item .pho{position: relative;overflow: hidden;width: 100%;height: 0;padding-bottom: 60.466%;border-radius: 10px;margin-bottom: 20px;}
.sec-mit .sec-block .item .pho img{width: 100%;height: 100%!important;object-fit: cover;}
.sec-mit .sec-block .item .dep-title{font-weight: bold;font-size: 1.275rem;color: #004198;margin-bottom: 8px;}

.sec-rdc-title{font-weight: 500;font-size: 28px;}
.sec-title-sm{font-weight: 500;font-size: 20px;}
.sec-text .text-block .dep-title{margin-bottom: 25px;}
.sec-rd {display: grid;grid-template-columns: 42.017% 1fr;max-width: 1190px;margin: 0 auto;gap:0 7.15%;align-items: center;margin-bottom: 75px;}
.sec-rd .pho-block{position: relative;overflow: hidden;width: 100%;height: 0;padding-bottom: 131%;}
.sec-rd .pho-block img{width: 100%;height: 100%!important;object-fit: cover;}
.sec-rd .text-block .rd-title {color: #003399;margin-bottom: 15px;}

.sec-factory {position: relative;padding: 75px 0;}
.sec-factory::before {position: absolute;content: ""; top: 0%;left: 50%;transform: translateX(-50%);background: url('../images/sec-factory-bg.jpg')no-repeat center;background-size: cover;width: 143%;height: 100%;z-index: -1;}
.sec-factory .factory-block .factory .item .icon{display: block;margin-bottom: 20px;}
.sec-factory .factory-block .factory .item .icon img{height: 40px;}
.sec-factory .text-block {color: #fff;}
.sec-text .text-block {text-align: center;max-width: 720px;margin: 0 auto 25px auto;}
.sec-factory .text-block .dep-title{}
.sec-factory .factory-block .factory-title{text-align: center;color: #fff;margin-bottom: 30px;}
.sec-factory .factory-block .factory{display: grid;grid-template-columns: repeat(4, 1fr);gap:20px;}
.sec-factory .factory-block .factory .item{background: #fff;text-align: center;padding: 25px 20px 30px 20px;display: grid;grid-template-rows: subgrid;grid-row: span 3;gap: 0;}
.sec-factory .factory-block .factory .item .dep-title{}
.sec-products{padding: 75px 0;}
.sec-products .text-block .dep-title{color: #003399;}
.sec-products .products-block .products-title{text-align: center;margin-bottom: 30px;}
.sec-products .products-block .products {display: grid;grid-template-columns: repeat(3, 1fr);gap:35px 25px;}
.sec-products .products-block .products .item .pho{position: relative;overflow: hidden;width: 100%;height: 0;padding-bottom: 100%;margin-bottom: 20px;}
.sec-products .products-block .products .item .pho img{width: 100%;height: 100%!important;object-fit: cover;}
.sec-products .products-block .products .item .dep-title{text-align: center;}
.sec-custom{position: relative;padding: 75px 0;}
.sec-custom::before {position: absolute;content: ""; top: 0%;left: 50%;transform: translateX(-50%);background: url('../images/sec-custom-bg.jpg')no-repeat center;background-size: cover;width: 143%;height: 100%;z-index: -1;}
.sec-custom .text-block{color: #fff;}
.sec-custom .custom-block .custom-title{text-align: center;color: #fff;margin-bottom: 30px;}
.sec-custom .custom-block .custom {display: grid;grid-template-columns: repeat(5, 1fr);gap:0 6.343%;margin-bottom: 75px;}
.sec-custom .custom-block .custom .item{cursor: pointer;}
.sec-custom .custom-block .custom .item .pho{position: relative;overflow: hidden;width: 100%;height: 0;padding-bottom: 100%;border-radius: 50%;margin-bottom: 20px;}
.sec-custom .custom-block .custom .item .pho img{width: 100%;height: 100%!important;object-fit: cover;}
.sec-custom .custom-block .custom .item .step{text-align: center;color: #fff;margin-bottom: 20px;font-size: 1.07rem;font-weight: 500;}
.sec-custom .custom-block .custom .item .dep-title{text-align: center;color: #fff;font-size: 1.07rem;font-weight: 500;}
.sec-custom .custom-block .sec-progress-bar{position: relative;width: 100%;background: #fff;height: 2px;overflow: hidden;}
.sec-custom .custom-block .sec-progress-bar .sec-progress{position: absolute;top: 0;left: 0; width: 14.926%;background: #76aef9;height: 2px;}

.sec-custom .custom-block .custom .item.line .step{color: #94c2fe;}
.sec-custom .custom-block .custom .item.line .dep-title{color: #94c2fe;}

@media (max-width:1200px) {
.sec-branding .sec-block .item{gap:0 80px;}
.sec-branding .sec-block .item .sec-pho::before{right: -40px;}
.sec-branding .sec-block .item:nth-child(2n+2) .sec-pho::before{left: -40px;}
}

@media (max-width:1024px) {
.sec-brand-mit{padding: 20px 0 70px 0;}
.sec-rd-custom{padding: 20px 0 0 0;}
}

@media (max-width:992px) {
.sec-branding .sec-block {display: grid;grid-template-columns: 1fr 1fr;gap:25px;align-items: flex-start;}
.sec-branding .sec-block .item{grid-template-columns:1fr;}
.sec-branding .sec-block .item:nth-child(2n+2) .sec-pho{order: 1;}
.sec-branding .sec-block .item:nth-child(2n+2) .sec-dep{order: 2;}
.sec-branding .sec-block .item .sec-pho::before{display: none;}
.sec-branding .sec-block .item .sec-dep .number{position: relative;top: 0;margin-bottom: 10px;}
.sec-branding .sec-block .item .sec-dep .text-block{padding-left: 0;}
.sec-branding .sec-block .item:nth-child(2n+2) .sec-dep .text-block{padding: 0;}
.sec-branding .sec-block .item .sec-pho{margin-bottom: 20px;}
.sec-branding .sec-block .item:not(:last-child){margin-bottom: 0;}
.sec-mit .sec-block{grid-template-columns: repeat(2, 1fr);}
	
.sec-factory .factory-block .factory{grid-template-columns: repeat(2, 1fr);}
.sec-custom .custom-block .custom{grid-template-columns: repeat(3, 1fr);gap:50px;margin-bottom: 0;}
.sec-custom .custom-block .sec-progress-bar{display: none;}
}

@media (max-width:768px) {
.sec-rd{grid-template-columns: 1fr;}
.sec-rd .pho-block{padding-bottom: 110%;margin-bottom: 30px;}

.sec-custom .custom-block .custom{grid-template-columns: repeat(2, 1fr);}
}

@media (max-width:767.98px) {
.sec-brand-mit{padding: 40px 0 70px 0;}
.sec-rd-custom{padding: 40px 0 0 0;}
}

@media (max-width:570px) {
.sec-brand-mit{padding: 40px 0 50px 0;}
.sec-branding{margin-bottom: 50px;}
.sec-branding .sec-block{grid-template-columns: 1fr;}
.sec-branding .sec-title{font-size: 24px;margin-bottom: 20px;}
.sec-mit .sec-title{font-size: 24px;margin-bottom: 20px;}
.sec-mit .sec-block{grid-template-columns: 1fr;}

.sec-rdc-title{font-size: 24px;}
.sec-rd{margin-bottom: 50px;}
.sec-factory{padding: 50px 0;}
.sec-products{padding: 50px 0;}
.sec-custom{padding: 50px 0;}
.sec-factory .factory-block .factory{grid-template-columns: 1fr;}
.sec-products .products-block .products{grid-template-columns: 1fr;}
.sec-custom .custom-block .custom{grid-template-columns: 1fr;}
.sec-custom .custom-block .custom .item{width: 100%;max-width: 300px;margin: 0 auto;}
}

/*table*/
.datatable { width: 100%; border-spacing: 0; margin: auto;background-color:#fff;  box-shadow: 0px 0px 13px 0px #dbdee0;}

.datatable thead {  letter-spacing: 0.05em;  text-transform: uppercase;}

.datatable tbody { font-size: .9rem ;border: 2px solid #c0d1dd; }

.datatable th { font-size:1rem; font-weight: 700; color:#004198;  padding:10px; text-align: center; /*white-space: nowrap;*/ border-right: 1px solid #c0d1dd; border-top: 2px solid #c0d1dd;  border-bottom: 2px solid #c0d1dd; background-color: #eef2f6;}

.datatable td { font-size:1rem; font-weight: 400;padding: 10px; /*white-space: nowrap;*/ border: 1px solid #c0d1dd;   }

.datatable thead td{ color: #000;  font-weight: 700; }

/*.datatable tr:nth-child(even) {background-color:#ededed; }*/

.datatable tr.sticky {color: #000; font-weight: 700; position: sticky;  top: 0;  z-index: 1;  background: #fff;box-shadow: 0 0 6px rgba(0,0,0,0.25);}

.datatable th.sticky,.datatable td.sticky {  color: #000; font-weight: 700;  position: sticky; left: 0; background: var(--stickyBackground);}

.datatable th.sticky::after,.datatable td.sticky::after {content: ""; position: absolute; right: -6px; top: 0; bottom: -1px;  width: 5px; border-left: 1px solid var(--borderColor); background: linear-gradient(90deg, rgba(0,0,0,0.08) 0%, rgba(0,0,0,0) 100%);}

.datatable th.sticky::before,.datatable td.sticky::before { content: ""; position: absolute; left: -6px; top: 0; bottom: -1px;  width: 5px; border-right: 1px solid var(--borderColor); background: linear-gradient(90deg, rgba(0,0,0,.1) 0%, rgba(0,0,0,0.08) 100%);}

.datatable td .wrap { display: flex; flex-wrap: nowrap; justify-content: space-between; align-items: center}

.datatable span.txt-r{ display: flex; flex-wrap: wrap;text-align: right}

.datatable span.txt-name{ display: flex; flex-wrap: wrap;flex-direction: column;  }
