﻿/* 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; }
html { font-size: 100%;  }  
body::-webkit-scrollbar { -webkit-appearance: none;}
body::-webkit-scrollbar:vertical { width: 12px;}
body::-webkit-scrollbar:horizontal {  height: 12px;}
body::-webkit-scrollbar-thumb { background-color: #df7475; border-radius: 6px;  border: 2px solid #eaeaea;}
body::-webkit-scrollbar-track { border-radius: 6px;  background-color: #eaeaea;}
/*----------------------------------------/
  Default Typography
----------------------------------------*/
h1 {font-size: 2.36rem;margin:0.4rem 0;  }
h2 {font-size: 2rem;margin:0.6rem 0;}
h3 {font-size: 1.73rem;margin:0.7rem 0;}
h4 {font-size: 1.6rem;margin:0.8rem 0;}
h5 {font-size: 1.48rem;margin:0.8rem 0;}
h6 {font-size: 1.3rem;margin:0.8rem 0;}
#cms-main p {margin:auto 0; display: block;}
#cms-main a{ text-decoration: none;  }
#cms-main a:hover, #cms-main a:active, #cms-main a:visited, #cms-main a:focus {text-decoration: none;  }
@media all and (max-width: 1024px) {
h1 {font-size: 2rem;}
h2 {font-size: 1.73rem;}
h3 {font-size: 1.6rem;}
h4 {font-size: 1.48rem;}
h5 {font-size: 1.3rem;font-weight:bold;}
h6 {font-size: 1rem;font-weight:bold;}
}

   /** font-family:=================================*/
.txt-ch{font-family:'Noto Sans TC','Microsoft JhengHei',"sans-serif"; }
.txt-en{font-family: 'Roboto','Arial', "sans-serif"; }

.cms-wrapper { position: relative; margin-right: auto; margin-left: auto; width: 100%; padding-right: 10px; padding-left: 10px; max-width: calc((100% - 40px)/12*12 + 40px)}
 
@media (min-width:1200px) {
  .cms-wrapper { padding-right:20px; padding-left: 20px;max-width: 1280px; }
}
@media (min-width:1600px) {
  .cms-wrapper { padding-right: 40px; padding-left: 40px; max-width: 1440px; }
}

 .cms-wrapper-full { position: relative; margin-right: auto; margin-left: auto; width: 100%; padding-right: 0px; padding-left: 0px; max-width: calc((100% - 40px)/12*12 + 40px)}

@media (min-width:1002px) {
 .cms-wrapper-full { padding-right: 10px; padding-left: 10px;   }
}

@media (min-width:768px) {
 .cms-wrapper-full { padding-right: 10px; padding-left: 10px;   }
}
 
@media (min-width:1920px) {
 .cms-wrapper-full{ padding-right: 40px; padding-left: 40px; }
}
 /*----------------------------------------/
  banner area
----------------------------------------*/
.cms-main-banner { width:100%; height: 100%; padding: 0; margin:0px auto; display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: center; flex-direction: row; z-index: 0; line-height: 2.5em; vertical-align: top;  overflow: hidden;position: relative; }
.cms-main-banner-img{width: 100%;  position: relative; top: 0px; margin-top: 0px; z-index: 0;}
 .cms-main-banner-img img  { width: 100%; max-width: 100%; height: auto; top:0px; -o-object-fit: cover;  object-fit: cover; -webkit-backface-visibility: hidden;  backface-visibility: hidden; transition: all 0.3s; position: relative; z-index: 1; }
 
 .cms-main-banner.ins {  position: fixed; left: 0; top: 60px;  z-index: 0; width: 100%; height: 100%;}


@media (max-width: 1024px) {
.cms-main-banner { width:100%;   }
}

@media (max-width: 768px) {
.cms-main-banner-img img  { width: 100%; max-width: 100%; height: auto; -webkit-clip-path:none;clip-path: none;}       
 
}

/* Banner 內文字 =====================================================================*/
.cms-main-banner-txt {width: 100%; max-width: 600px;   margin:100px auto 2% auto; padding: 20px 30px;  display: flex; flex-wrap: wrap;  justify-content:center;   position: absolute; z-index: 99;overflow:hidden;  

}
 #cms-main .cms-main-banner-txt h1 { width: auto; font-size:2.75rem;   font-weight: 400; text-align: center; letter-spacing:0.2px; color:#fff; position: relative; text-shadow: 2px 1px 1px rgba(0,0,0,.5)  }
#cms-main .cms-main-banner-txt h1:after{ content: "";width: 16px; height: 16px; display: block; position: absolute; right: -20px;bottom: 16px; background: url("../images/index/dot.svg")  no-repeat  right top;}  

.cms-main-banner-txt h2 { width: 100%; margin: 0px auto; font-size:2.5rem; font-weight:400; text-align: center; letter-spacing:1px; color: #fff;  }
 #cms-main .cms-main-banner-txt p {  width: 100%;margin:0px auto; font-size:1.125rem; font-weight: 700; text-align: center; color:rgba(255,255,255,1); letter-spacing: 1px; text-shadow: 2px 1px 1px rgba(0,0,0,.5)  }
.text-stroke{ -webkit-text-stroke: 1px #a3d6bf;} 
@media (min-width:1600px) {
#cms-main .cms-main-banner-txt  {  font-size:3.25rem;    }
 #cms-main .cms-main-banner-txt h1 {  font-size:3.25rem;    }
}

@media (max-width: 1024px) {
.cms-main-banner-txt {width: 100%; max-width: 720px;   margin-top:50px; padding: 20px; }
#cms-main .cms-main-banner-txt h1 { font-size: 1.75rem;  margin-top: 0px; }
#cms-main .cms-main-banner-txt p { font-size:0.875rem;   }

 }
@media (max-width: 768px) {
 .cms-main-banner-txt {  margin-top:30px;   }   
}

@media (max-width: 767.98px) {
.cms-main-banner-txt {  margin-top:60px;   }      
.cms-main-banner-txt h1 {  font-size: 1.25rem;  margin-top: 0px; }
.cms-main-banner-txt em { font-size: 1rem; margin-top: 0px; }
}



.cms-main-area{ width: 100%; padding: 0px; margin: 0px; flex: 1 1 100%; display: flex; flex-wrap: wrap; justify-content: center; position: relative;background: url("../images/index/bg.png")  no-repeat  left top #fff;}

.txt-blue{color: #016f89;}
.txt-second-blue{color: #007aff;}
.txt-three-blue{color: #42acdc;}
.txt-green{color: #afd9d3;}

.txt-red{color: #9e2b2f;}
 /*----------------------------------------/
cms-main-content
----------------------------------------*/
.cms-main-content{position: relative; width: 100%; margin: auto; padding:0px; }
.cms-decorate-end {width: 100%;  height: 100px;  position: absolute; z-index: 13; left: 0px;  }
 
  /*----------------------------------------/
  麵包屑 自訂顏色樣式
----------------------------------------*/
.cms-main-breads{ width: 100%; max-width: calc((100% - 40px)/12*12 + 40px); margin:0px auto auto auto; padding:0px;position: relative;z-index:0;  color:#000;background: #fff; border-bottom:solid 1px #eae8e4; }
.cms-main-breads .breadcrumb{max-width: 1360px; padding:10px 20px;color:#878787;  margin: 0 auto; background:none; justify-content: flex-start;  }
#cms-main .cms-main-breads .breadcrumb li{ font-size:0.8125rem;  color:#000;  max-width: 200px; overflow: hidden;  word-break: break-all; text-overflow: ellipsis;  display: -webkit-box;  -webkit-line-clamp: 1;  -webkit-box-orient: vertical; }
#cms-main .cms-main-breads .breadcrumb li a{ color:#b5b1a9; ; }
.breadcrumb-item::before {   content: "\e901"; color:#b5b1a9 !important;  font-family: 'icomoon'; margin-right: 5px;  }
#cms-main .breadcrumb-item+.breadcrumb-item::before { content: " \e915 ";  font-family: 'icomoon';margin-right: 2px; }

@media (max-width: 768px) {
.cms-main-breads{ display: none; margin:-28px auto auto auto; border-top: solid 1px rgba(255,255,255,.35);}
.cms-main-breads .breadcrumb{ padding:2px 0px; justify-content: flex-start;  }
 #cms-main .cms-main-breads .breadcrumb li,#cms-main .cms-main-breads .breadcrumb li a,.breadcrumb-item::before {   color:#fff!important;  }   
}
/* description =======================================================================	*/
#cms-main .cms-description{ width: 100%; max-width: 740px; display: flex; flex-wrap: wrap; justify-content:flex-start; align-items: center; flex-direction: column;  padding:0px 20px 20px 20px; margin:30px auto;}
#cms-main .cms-description h2{ width: 100%;  margin:0px 15px 15px 15px;  display: flex;  justify-content: flex-start; font-weight: 700;color:#411f20;}
#cms-main .cms-description h2::before{  content: ''; width: 50px;  height:2px; margin-top:25px; margin-right: 30px;  background:#333;  }
#cms-main .cms-description p{margin:0 !important;font-size:0.875rem; line-height: 1.65rem; color:#333;  }
@media (max-width: 767.98px) {
#cms-main .cms-description{ max-width:100%;} 
#cms-main .cms-description h2::before{ display: none; }
#cms-main .cms-description p{ max-width: 100%; font-size:0.8rem; }
}
 
/*----------------------------------------/
  title樣式 cart
----------------------------------------*/
.cms-title-style{  margin-bottom:10px;position: relative;width: auto; display: block;  font-size: 2.7rem; color: #006f8a; font-weight: 400; }
.cms-title-style:after { content: ""; width: 16px;  height: 16px; display: block; position: absolute; right: -20px; bottom: 12px; background: url(../images/index/dot.svg) no-repeat right top;}
.cms-title-span{ margin:0px; font-size: 1.35rem; text-align: left; text-transform: uppercase; letter-spacing: 1px;  font-weight: 700;color:#df7475;}
/*cms-Title Styles 樣式
=================================*/
.cms-title { width:100%; height: auto; margin:0 auto 2% auto;  padding-top: 0px;  padding-bottom: 0;  display: flex; justify-content: flex-start; align-items: flex-start;  flex-wrap: wrap; flex-direction:column; background: none;}
.cms-title h1{  display: block; text-align: left;  color:#006f8a; }
.cms-title h2{ margin:0px;display: block;   }
.cms-title h3{ margin:15px auto; text-align: center; font-size: 3.6rem; color:#000;}
.cms-title p{ margin:0px auto; text-align: center; font-weight: 700; color:#615f5e;}

.cms-title-2 { width:100%; height: auto; padding-bottom: 10px; margin:0 auto 2% auto; position: relative;  border-bottom: 1px solid #ebeaef; }
.cms-title-2::after { content: ""; position: absolute; left: 50%; margin-left: -4.5px; bottom: -4.5px;  width: 10px; height: 10px;  border: 1px solid #ebeaef; background-color: #fff;  transform: rotate(45deg);}



#cms-main .cms-title-2 h2{ width: 100%;  margin:5px auto;  font-size:1.15rem; font-weight:400; text-align: center; color:#505761;  }
 #cms-main .cms-title-2 p{ width: 100%;  margin:0px auto;  font-size:0.75rem; font-weight:400; text-align: center; color:#505761;  }
.cms-title-style{  margin-bottom:10px;position: relative;width: auto; display: block;  font-size: 2.7rem; color: #006f8a; font-weight: 400; }
.cms-title-style:after { content: ""; width: 16px;  height: 16px; display: block; position: absolute; right: -20px; bottom: 12px; background: url(../images/index/dot.svg) no-repeat right top;}
.cms-title-span{ margin:0px; font-size: 1.35rem; text-align: left; text-transform: uppercase; letter-spacing: 1px;  font-weight: 700;color:#505761;}

 
.cms-title-3 { width:100%; height: auto; margin:0 auto 2% auto;  padding-top: 0px;  padding-bottom: 0; position: relative; display: flex; justify-content: flex-start; align-items: flex-start;  flex-wrap: wrap; flex-direction:column; background: none; z-index: 0;  }
#cms-main .cms-title-3 h2{ margin:0;padding:0px; width: 100%;  font-size:2.75rem; text-align: left; color:#333!important; font-weight:700;   position: relative; z-index: 1;   }
#cms-main .cms-title-3 h3{ margin:0px; font-weight: 400; font-size: 1.875rem; position: relative;  z-index: 1;  }
#cms-main .cms-title-3 p{ margin:0px; font-size:1rem; font-weight: 700!important;color:#6c7280; position: relative;  z-index: 1; }
@media (max-width: 767.98px) {
#cms-main .cms-title-3 h2{ font-size:1.75rem;    }
}
 
.cms-title-4 { width: 100%; display: flex; flex-wrap: wrap; position: relative; justify-content: center; flex-direction: column; }
#cms-main .cms-title-4 h2{ margin:15px 15px 0 15px; text-align: center; font-weight: 700;color: #000; }
#cms-main .cms-title-4 h3{ margin:15px 15px 15px 15px;  font-weight: 700;color: #000;  }
.cms-title-4 span {margin-top: 10px; font-size: .875rem; color: #b4a174;  text-align: left; display: flex;font-weight: 400; }
.cms-title-4 { width:100%; margin: 30px auto; 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; flex-wrap: wrap;}
.cms-title-4::before { display: block; content: ''; width: 2px; height:80px; top:-68px; background:#000; position: absolute; z-index:0; }
@media (max-width: 1199.98px) {
.cms-title-4 h2,.cms-title-4 h1{  font-size: 1.5rem; }
}
@media (max-width: 767.98px) {
.cms-title-4 {  margin: 15px auto; }  
.cms-title-4::before {   top:-70px;   }
 #cms-main .cms-title-4 h2{ margin:55px 15px 0 15px; }
   
}
 

.cms-title-5 { width:100%; height: auto; margin:30px auto 2% auto;  padding: 0px; display: flex;   flex-wrap: wrap; flex-direction:column; background: none;  position: relative; z-index: 1;}
.cms-title-5 h2{ margin:0 auto; padding: 20px 0px 20px 0px; width: 100%;  font-size:2rem; font-weight: 400;  color:#333;  position: relative; z-index: 1;   }
 #cms-main .cms-title-5 h2::before {content: ""; position: absolute; z-index: 0; left: -40px;  top:40px;  width: 18px; height: 3px; background:#df7475;}
 #cms-main .cms-title-5 h3::before {content: ""; position: absolute; z-index: 0; left: -40px;  top:20px;  width: 18px; height: 6px; background:#df7475;}
#cms-main .cms-title-5 p{ margin:0px; font-size:1rem; font-weight: 400;color:#575a61;  }
@media (max-width: 767.98px) {
.cms-title-2 h5{  font-size: 1.875rem;  }  
}



.cms-btn-btnbox{ display: flex; justify-content: center; align-content: center; margin-top: 5rem; }
.cms-txt-stork { -webkit-text-stroke: 1px #333;  -webkit-text-fill-color: transparent;}
 
/*tab-bar style======================================================================*/
.cms-tab-bar {position: relative;width: 100%;  min-height:40px;  display: flex; flex-wrap: wrap; flex-direction: column; justify-content: center; align-content: flex-start; align-items: flex-start;  background-color:transparent; z-index:1;   }
.cms-tab-bar .cms-btn-tab{ color: #d70749; width: 100%; text-align:center;margin: 0px auto; padding: 10px 0px; font-weight: 700; }
.cms-tab-bar .cms-btn-tab::after { display: block; content: "\e91e"; position: absolute; left: 48%; top: 30px;  font-family: 'icomoon'; font-size: 1rem;
 vertical-align: middle;  -webkit-transition: transform .5s; transition: transform .5s; }
ul.cms-tab { left: 0; right: 0; margin: 0; width: 100%; padding: 0; display: none;  list-style: none; z-index:0; }
ul.cms-tab li {width: 100%; display: flex; justify-content: center; text-shadow:none; background:#e6e9ea; border-bottom: solid 1px #fff; z-index: 1; }
ul.cms-tab li:last-child {  }
ul.cms-tab a { width: 100%;  display: flex; justify-content: center;  padding:8px 10px; text-align: center; text-decoration: none; color:#016f89!important;}
ul.cms-tab a:hover { color:#ac0b0b; }
ul.cms-tab li a span{  text-align: center; color:#fff;}
 ul.cms-tab li.current a{  color: #df7475!important; }

@media (min-width:769px) {
.cms-tab-bar { z-index: 1; position: relative; margin:0px auto; justify-content: center;  align-content: center; align-items: center;  }
.cms-tab-bar .cms-btn-tab { display: none; }
div.cms-tab-bar { width:100%; display: flex; margin:2% 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.cms-tab { width: 100%; max-width: 1400px; margin: auto;  padding:20px;  display: flex;  justify-content: center;z-index:0;position:relative;  }
ul.cms-tab a { padding:5px 15px;  color:#505761;  }
ul.cms-tab li.current { color:#333!important; text-shadow:none; border-bottom: 1px solid #333; background: #505761;  }
ul.cms-tab li{ width: auto; position: relative;z-index: 1; margin:5px; border-radius:0px;border:solid 1px #505761;background-color: transparent; box-shadow: 3px 0 10px rgb(186 186 186 / 35%);  -webkit-transition: all 0.3s; transition: all 0.3s; }
ul.cms-tab li.current a{ color:#fff!important; }
ul.cms-tab li.current a:hover{ color:#333!important; }

ul.cms-tab li a{ font-size:1rem; font-weight:400; color:#505761!important;  background-color: transparent;  display: block;  margin: 0;  padding: 8px 15px; position: relative; transition: all 0.4s ease;    } 
ul.cms-tab li:first-child {  }
ul.cms-tab li:last-child {    }
ul.cms-tab li:hover{background:#e6e9ea;   border: solid 1px #e6e9ea;}    
ul.cms-tab li a span{  text-align: center; color:#016f89;}
ul.cms-tab li.current a span{  color:#fff;}
}
 

ul.cms-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.cms-tab li:before { content: ""; position: absolute; z-index: -1; left: 51%; right: 51%; bottom: 0; background:#000; 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.cms-tab li:hover:before, ul.cms-tab li:focus:before, ul.cms-tab li:active:before { left: 0; right: 0;}
  

.navfix { position: fixed;  top:72px; left: 0; right: 0; z-index:6!important; background:#eaeef0; }
.navfix ul{ padding: 0px;
}
 


@-webkit-keyframes getIn {
    0% { opacity: 0; -webkit-transform: translate3d(0, -120%, 0); transform: translate3d(0, -120%, 0); }
    100% { opacity: 1;  -webkit-transform: none; transform: none; }
}
@keyframes getIn {
    0% { opacity: 0; -webkit-transform: translate3d(0, -120%, 0); transform: translate3d(0, -120%, 0); }
    100% { opacity: 1;  -webkit-transform: none; transform: none; }
}
.getIn {-webkit-animation-duration: 1s; animation-duration: 1s;-webkit-animation-fill-mode: both;animation-fill-mode: both; -webkit-animation-name: getIn; animation-name: getIn;}

@media (max-width: 1024px) {
.navfix {top: 34px; }
}
@media (max-width:768px) {
.navfix {  top: 66px;background:#df7475;  }
}
@media (max-width:767px) {
.navfix {  top: 62px;background:#df7475;  }
}
/*==========nav.stick end==========*/
 
/*----------------------------------------/
  分頁 自訂顏色樣式
----------------------------------------*/
#cms-main-pages .cms-pagination{ margin:10px auto;  display: flex; justify-content: center;  }
.cms-pagination .page-link { color:#31315e; background-color:#fff; border: 1px solid #e3ded2;}
.cms-pagination .page-link:hover { color: #fff; background-color:#dcdddd; border-color:#dcdddd;}
.cms-pagination .page-link:focus { box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);}
.cms-pagination .page-item:first-child .page-link { }
.cms-pagination .page-item:last-child .page-link { }
.cms-pagination .page-item.active .page-link { color: #fff!important;  background-color:#333; border-color:#333;}
.cms-pagination .page-item.disabled .page-link { color: #6c757d;  background-color: #fff; border-color:#e3ded2;}

/*----------------------------------------/
  btn 自訂顏色樣式
----------------------------------------*/
#cms-main .btn { width: 100%;margin: 0px 5px;  padding: 10px 0.75rem ; font-size: .95rem; line-height: 1.5; border-radius:0px;   }
#cms-main .btn-secondary{  font-size: .95rem;color:#fff;line-height: 1.5;   }
 @media (max-width: 767.98px) {
#cms-main .btn { padding: 0.375rem 0.7rem; font-size: .875rem;    }
#cms-main .btn-secondary{ font-size: .875rem;  }     
}   
.btn.cms-btn-pill { border-radius: 6.1875rem; }
.btn.cms-btn-outline-primary{text-align: center; color: #333;  font-weight:400;  border-color:none;  }
.btn.cms-btn-outline-primary:hover { color:#71869d; background-color:#e2e2e2; border-color:#e2e2e2;}
#cms-main .btn.cms-btn-secondary { color:#fff; font-weight: 400;  background-color:#333; border-color:#333;  }
#cms-main .btn.cms-btn-secondary:hover { color: #fff; background-color: #df7475;; border-color:#df7475;; }
#cms-main .btn.cms-btn-buynow { color:#fff; font-weight: 400;  background-color:#df7475; border-color:#df7475;  }
#cms-main .btn.cms-btn-buynow:hover { color: #fff; background-color: #333;; border-color:#333;; }
 
.cms-btn-prev {color:#6c7280; font-weight: 500; text-align: center; background: url(../images/icon/arrow-left.svg) no-repeat left 8px; border: solid 1px #6c7280;   }
.cms-btn-next {color:#6c7280; font-weight: 500;  text-align: center; background: url(../images/icon/arrow-right.svg) no-repeat right 8px; border: solid 1px #6c7280;  }
.cms-btn-prev:hover,.cms-btn-next:hover  { color: #d70749;  border: solid 1px #6c7280; }
a.cms-btn-prev:hover,a.cms-btn-next:hover  { color: #d70749!important;  border: solid 1px #d70749!important; }
@media (max-width: 991.98px) {
    .cms-btn-prev,.cms-btn-next { background-size:16px; }  
}


.cms-btn-submit{  font-weight: 400;  background-image: linear-gradient(to right, #333 10%, #000 100%);border: solid 1px #333;  color: #fff!important; vertical-align: text-bottom; }
.cms-btn-submit:hover { color: #fff;  background:#232323;   box-shadow: 0px 3px 10px rgba(148,0,11,.5); }
.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 *****/
/*---------------*/
.icon-next{background: url("../images/icon/arrow-right-2.svg"); }
.cms-btn { width: auto; height: 35px; padding: 20px 40px; font-weight: 700; text-decoration: none; border: 1px solid #767676; 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;  overflow: hidden;position: relative;  }
#cms-main a.cms-btn { color:#767676;font-weight: 400;  }
.cms-btn:hover {  border-color: rgba(255, 255, 255,.5);  box-shadow: 1px 1px 8px rgba(255, 255, 255, 0.4);}
a.cms-btn:hover {  color: #fff;}
.cms-btn:before { content: ""; position: absolute; top: 0; left: -100%; width: 100%;  height: 100%; background: linear-gradient( 120deg, transparent, rgba(255, 255, 255, 0.6), transparent); transition: all 650ms;}
.cms-btn:hover:before {left: 100%;}
.cms-btn i { margin-left: 10px; width:22px; height: 16px; -webkit-transition: -webkit-transform .2s;  transition: -webkit-transform .2s; transition: transform .2s; transition: transform .2s, -webkit-transform .2s}
.cms-btn:hover i{ -webkit-transform: translateX(15px); transform: translateX(15px)}
/*cms-btn-more =================================*/ 
.custom-btn-1{  width: auto; height: 35px; padding: 20px 40px;  font-weight: 500; 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:30px;  background:#006f8a; background-size: 20px auto;  -webkit-transition: -webkit-transform .2s;  transition: -webkit-transform .2s; transition: transform .2s; transition: transform .2s, -webkit-transform .2s  }
.custom-btn-1:hover{background:#d70749; }

/*cms-btn-gray =================================*/ 
.custom-btn-2{   border-radius:0px;  background:none;   -webkit-transition: -webkit-transform .2s;  transition: -webkit-transform .2s; transition: transform .2s; transition: transform .2s, -webkit-transform .2s  }
#cms-main a.cms-btn.custom-btn-2{ color: #B5B5B5;font-weight: 400;  }
.custom-btn-2:hover{background:#d70749; }

.custom-btn-2:hover i{ -webkit-transform: translateX(15px); transform: translateX(15px)}


  
/*cms-btn Styles 樣式=================================*/ 
.cms-btn-01 { cursor: pointer; width: 100%; max-width: 220px; height: 3rem; line-height: 3rem; display: block; margin: 0; position: relative;   box-shadow: 0px 0px 17px 1px rgba(0, 0, 0, 0.34); background-image: linear-gradient(to right, #ec640a 10%, #fcca5c 100%); border-radius:25px; z-index: 1;  }
.cms-btn-01 span { display: block;padding-left: 35px;text-transform: uppercase;letter-spacing: 3px; transform-origin: center left; transition: color 0.3s ease;position: relative;z-index:1; font-weight: 400;  color: #fff;}
.cms-btn-01 em {position: absolute;width: 45%; height: 1px;right: 23px;top: 50%;transform: scaleX(0.25); transform-origin: center right; transition: all 0.3s ease; background: #fff;  z-index:1;   }
.cms-btn-01:before,.cms-btn-01:after {content: '';background:#f39139;height:100%; width: 0;position: absolute;transition: 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);}
.cms-btn-01:before { top: 0; left: 0; right: auto;  border-radius:25px; }
.cms-btn-01:after { bottom: 0; right: 0; left: auto; border-radius:25px; }
.cms-btn-01:hover:before { width: 100%; right: 0; left: auto;}
.cms-btn-01:hover:after {  width: 100%; left: 0; right: auto;}
.cms-btn-01:hover span{ color: #000;}
.cms-btn-01:hover em{background: #000; transform: scaleX(0.5);}

 

/*cms-btn Styles 2===*/
#cms-main a.cms-btn-02{ color: #016f89!important; font-size:1rem; font-weight:600; height: auto; overflow: hidden; padding:10px; background:#f3f3f3; border: none; cursor: pointer;  letter-spacing: 0.1rem;  box-shadow: inset 0 0 0 1px #eaeff3;-webkit-transition: color 0.25s 0.0833333333s; transition: color 0.25s 0.0833333333s;  position: relative;}
.cms-btn-02::before, .cms-btn-02::after {border: 0 solid transparent; box-sizing: border-box; content: ''; pointer-events: none; position: absolute; width: 0; height: 0; bottom: 0; right: 0;}
.cms-btn-02::before{border-bottom-width: 2px; border-left-width: 2px;}
.cms-btn-02::after{border-top-width: 2px; border-right-width: 2px;}
#cms-main a.cms-btn-02:hover{color:#016f89; background:#afd9d3; }
.cms-btn-02:hover::before, .cms-btn-02:hover::after{border-color: #80c2c6; -webkit-transition: border-color 0s, width 0.25s, height 0.25s; transition: border-color 0s, width 0.25s, height 0.25s; width: 100%; height: 100%;}
.cms-btn-02:hover::before{-webkit-transition-delay: 0s, 0s, 0.25s; transition-delay: 0s, 0s, 0.25s;}
.cms-btn-02:hover::after{-webkit-transition-delay: 0s, 0.25s, 0s; transition-delay: 0s, 0.25s, 0s;}
.cms-btn-02:focus{outline: 1px inset #fff;}

@media (max-width: 991.98px) {
#cms-main a.cms-btn-02{max-width: 100%;  font-size:0.9rem;   }
}

/*cms-btn Styles3===*/
#cms-main  .cms-btn-03{ padding: 10px 50px; display: flex; align-items: center;  justify-content: center;   margin:20px auto; text-align: center; font-size: 1.1rem; font-weight:400; color:#b4a174; background-color:#fff;   -webkit-transition: all 0.3s; transition: all 0.3s;  }
#cms-main .cms-btn-03:hover { color:#fff;  background-color: #344357; transform: scale(1.05);}
#cms-main .cms-btn-03:active,.cms-btn-03:visited { color: #b4a174; }
 
/*cms-btn Styles 3===*/
a.cms-btn-04  { position: relative; margin:20px auto;padding: 5px 30px; width: 100%;  max-width: 50%; display: flex;  justify-content: center; align-items: center;  background:#029944;  font-size: 1rem;  color: #fff!important; font-weight: 700; line-height: 38px;  letter-spacing: 2px; transform: scale(1);  transition: all 1s; }
a.cms-btn-04:hover { color:#fff!important;text-shadow:1px 1px  rgba(0,0,0,.5);  background:#b4a174; transform: scale(1.05);}
 

a.cms-btn-back { width:auto; color:#000!important; padding: 10px; font-weight: 700;border: solid 1px #6c7280;   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;  }
.cms-btn-back:before,.cms-btn-back::after{  content: ''; width: 30px; height:1px; background:#797371;-moz-transition: ease 0.3s; -o-transition: ease 0.3s; -webkit-transition: ease 0.3s;  transition: ease 0.3s;  }
.cms-btn-back:before { margin-right: 20px; margin-left: 5px;}
.cms-btn-back:after { margin-left: 20px; margin-right: 5px;}
a.cms-btn-back:hover {   color:#d70749!important; border: solid 1px #d70749;}
.cms-btn-back:hover:before{ background:#d70749; -moz-transform: translateX(20%); -ms-transform: translateX(20%); -webkit-transform: translateX(20%); transform: translateX(20%);  }
.cms-btn-back:hover:after{ background:#d70749;-moz-transform: translateX(-20%); -ms-transform: translateX(-20%); -webkit-transform: translateX(-20%); transform: translateX(-20%);  }
@media (max-width: 767.98px) {
.cms-btn-back  { font-size:.875rem; padding:5px  10px;}  
.cms-btn-back:before,.cms-btn-back::after{ display: none; }
 }
 .cms-btn-play {  width: 116px; height: 116px;  z-index: 9999; position: absolute;  margin: auto; display: flex;  align-items: center;  justify-content: center;}
.cms-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;}
.cms-btn-play:hover .rotate2 {  -webkit-animation: rotate 1s linear infinite;animation: rotate 1s linear infinite;}
.cms-btn-play .rotate1,.cms-btn-play .rotate2 { -webkit-transform: translate(5px, 5px); -ms-transform: translate(5px, 5px);transform: translate(5px, 5px);}
.cms-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);}
.cms-btn-play-bg{width: 116px; height: 116px;}
.cms-btn-play .bg {  opacity: .85;}

@-webkit-keyframes rotate {
  0% {  -webkit-transform: rotate(-90deg) translate(5px, 5px); transform: rotate(-90deg) translate(5px, 5px);}
  100% { -webkit-transform: rotate(270deg) translate(5px, 5px);transform: rotate(270deg) translate(5px, 5px);}
}

@keyframes rotate {
  0% { -webkit-transform: rotate(-90deg) translate(5px, 5px);transform: rotate(-90deg) translate(5px, 5px); }
  100% { -webkit-transform: rotate(270deg) translate(5px, 5px);transform: rotate(270deg) translate(5px, 5px);}
 }


.cms-btn-m{ width: 100%; max-width:180px;  }
 /*cms-btn-more =================================*/ 
.cms-next-button {  width: auto;   height: 35px; padding: 20px 2px 20px 15px; 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:30px;  background-image: linear-gradient(120deg, #22559e 0%, #6fcccb 55%);  }
@media (max-width:767px) {
.cms-next-button { width: auto; height: 24px }
}
.cms-next-button:hover .cms-next-button-circle, .cms-next-button:hover i { -webkit-transform: scale(1.2); transform: scale(1.2)}
.cms-next-button:hover .cms-next-button-txt, .cms-next-button:hover i { -webkit-transform: translateX(5px); transform: translateX(5px)}
.cms-next-button:hover{background:#afd9d3; }

.cms-next-button-circle { width: 30px; height: 30px;  position: relative; display: block; margin-left: 20px; border:2px solid #fff;  border-radius: 50%;  -webkit-transition: -webkit-transform .2s; transition: -webkit-transform .2s; transition: transform .2s; transition: transform .2s, -webkit-transform .2s}
@media (max-width:767px) {
.cms-next-button-circle { width: 24px; height: 24px; margin-right: 15px}
}

 .cms-next-button i { font-size: 1.875rem; color: #fff;  position: absolute; top: 0; bottom: 0; left: auto; margin: 5px auto auto 100px;   -webkit-transition: -webkit-transform .2s;  transition: -webkit-transform .2s; transition: transform .2s; transition: transform .2s, -webkit-transform .2s}
 .cms-next-button i.icon-check { font-size: 1.35rem; margin: 10px auto auto 86px;  }
 
.cms-next-button-txt { font-size: 16px; font-weight: 400; line-height: 1.5;  color: #fff;  -webkit-transition: -webkit-transform .2s; transition: -webkit-transform .2s; transition: transform .2s; transition: transform .2s, -webkit-transform .2s}
@media (max-width:767px) {
.cms-next-button-txt { font-size: 14px; line-height: normal; letter-spacing: normal }
}
@media (max-width:768px) {
a.btn-view{ font-size: 0.875rem;}
}
/*----------------------------------------/
  ul style 自訂樣式
----------------------------------------*/
.cms-dot{ width: 100%;  display: block; margin: 5px 0px; }
.cms-dot li{ width: 100%; display: block; padding: 3px 15px; margin: 0px; font-size:0.875rem; line-height:1.75rem; font-weight:400;  background: url(../images/icon/dot.svg)  no-repeat left 12px; background-size:6px;}
.cms-arrow{ width: 100%; display: block; margin: 1.5% auto; }
.cms-arrow li{ width: 100%; display: block; padding:1px 0 10px 15px; font-size:15px; line-height:1.4em; font-weight:400; background: url(../images/icon/arrow-right.svg) no-repeat left 8px; background-size:8px;}
.cms-decimal { list-style-position: outside; list-style-type: decimal; padding-left: 15px;}
.cms-decimal li{margin-bottom: 10px; font-size:15px; line-height:1.5em; font-weight:400;  }
.cms-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;}
/*----------------------------------------/
  ul style 自訂樣式
----------------------------------------*/

 /*--------form style------------*/
#cms-main label{ font-size:.75rem; }
 input, option, textarea, input[type="radio"]{ line-height:2rem;  padding-left:15px;  font-size:0.875rem; color: #000;background-color:#f7f7f7;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; }

 
 *:focus { outline: none; }
/* placeholder ---*/
input::placeholder {  font-size:0.875rem;  }
input:focus, textarea:focus { outline: none;  }
input:focus:placeholder { color: transparent;  }
input:focus::-webkit-input-placeholder { color: transparent; }
input:focus:-moz-placeholder { color: transparent; }
input:focus::-moz-placeholder { color: transparent; }
input:focus:-ms-input-placeholder { color: transparent; }
select{min-height:2rem; line-height:2rem;  padding-left:15px;  font-size:0.875rem; color: #000;background-color:#f7f7f7;border: 1px solid #f7f7f7;border-radius:0px;  }
/*IE --*/ 

select::-ms-expand {display: none; }
select:focus{ box-shadow: 0 0 5px 2px #467BF4;    }
input, button, select, textarea { outline: none; }
