﻿/*----------------------------------------- 
   Adjustment for css frameworks  
 ----------------------------------------*/
 * { -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; }
 /* Images' default margin */
.container img { margin:0 }
 
/*----------------------------------------/
  Default Typography
----------------------------------------*/
html { font-size: 100%; }  
body{font-family: 'Noto Sans TC', 'Microsoft JhengHei', 'Nunito', "sans-serif"!important;  overflow-x:hidden; margin:0; padding:0; height: 100%;  color:#363c40; position: relative;   }
#cms-main p, #cms-main td, #cms-main li, #cms-main label { font-family: 'Noto Sans TC', 'Microsoft JhengHei', 'Nunito', "sans-serif"!important; margin-bottom: 0px;  line-height: 1.85rem; font-weight: 400;}
#cms-main h1, #cms-main h2, #cms-main h3, #cms-main h4, #cms-main h5, #cms-main h6 { font-family: 'Noto Sans TC', 'Microsoft JhengHei', 'Nunito', "sans-serif";  font-weight: 400; }
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{ color:#0d386c; 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;}
}
 /*----------------------------------------/
  banner area
----------------------------------------*/
.cms-main-banner { width:100%; height: 100%; padding: 0; margin:-30px auto auto auto; display: flex;  flex-wrap: wrap; align-content: flex-start; position: relative; z-index: 0; line-height: 2.5em; vertical-align: top;  overflow: hidden; }
.cms-main-banner-img{width: 100%;  position: relative; top: 0%; margin-top: 0px;}
.cms-main-banner-img img {  width: 100%; height: auto; top:0px; -o-object-fit: cover;  object-fit: cover; -webkit-backface-visibility: hidden;  backface-visibility: hidden; }
@media (max-width: 767.98px) {
.cms-main-banner-img{ margin-top: 40px;}
    
}
.cms-main-banner-txt {width: 100%;  height: 300px; margin:2% auto auto auto; padding: 20px;  display: flex; flex-wrap: wrap;  justify-content: center; align-items:center; align-content: center; flex-direction:column; position: absolute;   z-index: 99;overflow:hidden;}

/* Banner 內文字 =====================================================================*/
.cms-main-banner.ins {  position: fixed; left: 0; top: 70px;  z-index: 0; width: 100%; height: 100%;}
.cms-main-banner-txt h1 {  font-size:2.75rem; font-weight: 700; text-align: center;  letter-spacing:1px; color: #fff;text-shadow:0px 1px rgba(0,0,0,.35); 	}
.cms-main-banner-txt em { font-size: 1.25rem;  margin-top: 10px; color: #fff;}
#cms-main .cms-main-banner-txt p { font-size: 15px; margin: 0!important; color: #fff;}
@media (min-width: 1600px) {
.cms-main-banner-txt { margin:5% auto auto auto; }
.cms-main-banner-txt h1 {  font-size:3.5rem;  }
}
@media (max-width: 991.98px) {
.cms-main-banner-txt { height: 200px; }
}
@media (max-width: 767.98px) {
 .cms-main-banner.ins {  top: 50px; }   
.cms-main-banner-txt { height:auto; margin:0 auto; padding: 10px 10px 0px 10px;  }
.cms-main-banner-txt h1 {  font-size: 1.25rem;  margin-top: 0px; }
.cms-main-banner-txt em { font-size: 1rem; margin-top: 0px; }
}

/*----------------------------------------/
  banner 固定 下方多一個區塊area
----------------------------------------*/
.cms-main-area { position: relative; padding: 0px; background: #fff; margin-top: 300px;}
@media (min-width: 1400px) {
.cms-main-area { position: relative; padding: 0px; background: #fff; margin-top: 360px;}
 }
@media (min-width: 1600px) {
.cms-main-area { position: relative; padding: 0px; background: #fff; margin-top: 480px;}
 }

@media (max-width: 991.98px) {
 .cms-main-area {  margin-top:220px;}   
}
@media (max-width: 767.98px) {
.cms-main-area {  margin-top:112px;}
}
 /*----------------------------------------/
cms-main-content
----------------------------------------*/
.cms-main-content{position: relative; padding:30px 0px 0px 0px; }
.cms-decorate-end {width: 100%;  height: 100px;  position: absolute; z-index: 13; left: 0px;  }
  
  /*----------------------------------------/
  麵包屑 自訂顏色樣式
----------------------------------------*/
.cms-main-breads{ width: 100%;  margin: auto; padding:0px;position: relative;z-index:0;  color:#a9a9a9;  }
.cms-main-breads .breadcrumb{padding:0px;color:#a9a9a9;  margin: 0 auto; max-width: 1160px;background:none;justify-content: flex-end; }
#cms-main .cms-main-breads .breadcrumb li{ font-size: 0.75rem;  color:#a9a9a9;  max-width: 100px; 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: #a9a9a9; }
.breadcrumb-item::before {   content: "\ed9b"; color:#a9a9a9 !important;  font-family: 'boxicons';   }
#cms-main .breadcrumb-item+.breadcrumb-item::before { content: "\ecee";font-family: 'boxicons';}


@media (max-width: 767.98px) {
 }


/* description =======================================================================	*/
#cms-main .cms-description{  max-width: 80%; display: flex; flex-wrap: wrap; justify-content:center; align-items: center; flex-direction: column;  padding:20px; margin:10px 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:#10376c;  }
#cms-main .cms-description p{margin:0 !important;font-size:0.875rem; line-height: 1.65rem; color:#10376c;  }
@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 { margin: 0; padding: 10px 8px; font-size: 1.15rem;font-weight: 400;display: flex; align-items: center; flex-wrap: wrap; flex-direction: column; justify-content: center;  }
.cms-title span{ display:block; font-size:.875rem;color: #b4a174; font-weight: 700; text-align: center;  } 
.cms-title-h1 { width:100%;  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-h1::before,.cms-title-h1::after{  content: ''; width: 50px;  height: 1px;   background:#fff;  }
.cms-title-h1::before { margin-right: 30px}
.cms-title-h1::after { margin-left: 30px}
.cms-title-h1 i{ margin: 0 auto; display: flex;  width:80px; height: 80px;  }
.cms-title-h1 i img{max-width: 100%; height: auto;}
@media (max-width: 1199.98px) {
 }
@media (max-width: 767.98px) {
.cms-title-h1 { font-size:1.5rem;margin-bottom:0px;margin-top: 15px; }   
 .cms-title-h1::before,.cms-title-h1::after{ display: none;  }
   
 }
 /*Style 2
=================================*/
.cms-title-h2 { width: 100%; display: flex; flex-wrap: wrap; position: relative;  }
.cms-title-h2 h1{ margin:15px 15px 0 15px; text-align: center; display: flex;  justify-content: center; flex-direction: column;  font-weight: 700;color:#10376c;}
.cms-title-h2 h2{ margin:0px 15px 15px 15px;  display: flex;flex-wrap: wrap;  justify-content: center; flex-direction: column;  font-weight: 700;color:#10376c;}
 
.cms-title-h2 span {margin-top: 10px; font-size:1.125rem;  color: #10376b;  text-align: center; display: flex; justify-content: center;  font-weight: 700; }
.cms-title-h2 i{ display:flex; width:80px; height: 80px;  }
.cms-title-h2 i img{max-width: 100%; height: auto;margin: 0; }
.cms-title-h2 { width:100%;  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-h2::before,.cms-title-h2::after{  content: ''; width: 50px;  height: 3px;   background:#10376b;  }
.cms-title-h2::before { margin-right: 30px}
.cms-title-h2::after { margin-left: 30px}
@media (max-width: 1199.98px) {
.cms-title-h2 h2,.cms-title-h2 h1{  font-size: 1.5rem; }
.cms-title-h2 i{ width:46px; height: 46px; margin-top: 10px;  }
.cms-title-h2::before,.cms-title-h2::after{ display: none;}
}


#cms-main .cms-title-h2 .cms-title-h2-sub h2{width: auto; margin-right:20px;  font-size: 2rem; color: #10376c; line-height:1.5rem; font-weight: 700!important; font-family:'Nunito', "sans-serif"; }
#cms-main .cms-title-h2 .cms-title-h2-sub h2 span{ display: block; margin-bottom:0px;  font-size:0.95rem;  color:#10376c; font-weight: 700; font-family:'Nunito', "sans-serif";  }
#cms-main .cms-title-h2 .cms-title-h2-title h2{  width:auto; font-size: 2.5rem; font-weight:400; color:#10376c;  }
#cms-main .cms-title-h2 .cms-title-h2-title span {margin:0px;  display: block;font-size: 2.5rem; font-weight: 700; color: #000;}
#cms-main .cms-title-h2 .cms-title-h2-title p {margin:10px 0px 0px 0px;  display: block;font-size: 1.25rem; color:#b19486;}

.cms-txt-stork { -webkit-text-stroke: 1px #10376c;  -webkit-text-fill-color: transparent;}
/*Style  
=================================*/
.cms-title-h3 { width:100%; height: auto; margin:0 auto; padding-left: 100px;padding-top: 0px;  padding-bottom: 0; position: relative; z-index: 9; display: flex; justify-content: flex-start; align-items: flex-start;  flex-wrap: wrap; flex-direction:column; background: none;}
#cms-main .cms-title-h3 h2{ margin:0px; color:#eb5e02;font-weight: 400; font-size: 2.25rem; position: relative; z-index: 9; }
#cms-main .cms-title-h3 p{ margin:0px; font-size:0.9375rem; font-weight: 700!important;color:#0d386d; position: relative; z-index: 9; }
#cms-main .cms-title-h3 h2:before { content: '';position: absolute;  margin-left: -40px; width:100px; height:80px; background: url(../images/index/dot-2.svg) no-repeat left top; z-index: 0;} 

 
 /*----------------------------------------/
  title樣式4
----------------------------------------*/
.cms-title-block{ width: 96%;  max-width: 900px; margin:1% auto 0px auto;  display: flex; flex-wrap: wrap; justify-content: center; }
.cms-title-block h1 {width:100%; margin:12px auto;padding:0px; font-size:2.25rem;  color:#eb5e02; text-align:center; font-weight:400; }
.cms-title-block em{  width: 100%;  margin:0px auto 10px auto;font-size:0.9375rem; font-weight: 700;  color:#0d386d; display: flex; justify-content: center;  }
.cms-title-sub { position: relative;  margin-top: 15px; padding: 10px 0;  font-size:0.9375rem;  }
.cms-title-sub::before,.cms-title-sub::after { content: ''; position: absolute; z-index: 1; left: 50%;  top: 0; width: 100%;  height: 1.15px;
  background: #f49e01;
  background: -webkit-gradient(linear, left top, right top, from(#f49e01), color-stop(60%, #f49e01), color-stop(60%, rgba(155, 192, 60, 0)), to(rgba(155, 192, 60, 0)));
  background: -webkit-linear-gradient(left, #f49e01 0%, #f49e01 60%, rgba(155, 192, 60, 0) 60%, rgba(155, 192, 60, 0) 100%);
  background: -o-linear-gradient(left, #f49e01 0%, #f49e01 60%, rgba(155, 192, 60, 0) 60%, rgba(155, 192, 60, 0) 100%);
  background: linear-gradient(90deg, #f49e01 0%, #f49e01 60%, rgba(155, 192, 60, 0) 60%, rgba(155, 192, 60, 0) 100%);
  background-size: 10px 100%;  -webkit-transform: translateX(-50%);  -ms-transform: translateX(-50%); transform: translateX(-50%); background-size: 7px 100%; }
.cms-title-sub::after { top: 100%; }

.cms-title-block h1::before { content: ''; position: absolute;  margin: 30px 30px 0px -400px;  width: 100px;  height:53px;  background: url("../images/index/dot-1.png") no-repeat left top; background-size:70% auto;   animation:bgcircle 9s linear infinite;}
.cms-title-block h1::after { content: ''; position: absolute;  margin: 0px 0px 0px 500px; width: 100px;  height: 53px;  background: url("../images/index/dot-2.png") no-repeat left top;background-size:80% auto;  animation:bgcircle 6s ease-in-out infinite;}

@keyframes bgcircle {
    0%{transform:scale(1);}
    50%{transform:scale(1.25); }
    100%{transform:scale(1);}
}



/*----------------------------------------/
  title樣式5
----------------------------------------*/
 .cms-title-about { width: 100%; margin: 30px auto 50px auto;padding:10px 0px 0px 35px; color: #de5f0c; font-size: 1.75rem;
    font-weight: 400; transition: all 0.4s ease-in-out;  -webkit-transition: all 0.4s ease-in-out;  -moz-transition: all 0.4s ease-in-out; list-style: none; background: url("../images/index/dot-2.svg")  no-repeat left top;  background-size: 10% auto; }

 .cms-btn-btnbox{ display: flex; justify-content: center; align-content: center; margin-top: 5rem; }



/*tab-bar style======================================================================*/
.cms-tab-bar {position: relative;width: 100%;  min-height:40px;  display: flex; flex-wrap: wrap; flex-direction: column; justify-content: center; background-image: linear-gradient( 135deg, #96a7bf 30%, #1d4474 100%); z-index:1;   }
.cms-tab-bar .cms-btn-tab{ color: #fff; width: 100%; text-align:center;margin: 0px auto; padding: 10px 0px; }
.cms-tab-bar .cms-btn-tab::after { float: right; margin-right: 20px; content: ""; display: inline-block; vertical-align: middle; width: 10px; height: 10px; border-top: 2px solid #fff; border-right: 2px solid #fff; -moz-transform: rotate(135deg); -ms-transform: rotate(135deg); -webkit-transform: rotate(135deg); transform: rotate(135deg); -webkit-transition: transform .5s; transition: transform .5s; }
ul.cms-tab { left: 0; right: 0; margin: 0; padding: 0; background-color:transparent; display: none;  list-style: none; z-index:0; }
ul.cms-tab li {width: 100%;display: flex; justify-content: center;border-bottom: 1px solid #fff; text-shadow:none; background: #1d4474; }
ul.cms-tab li:first-child { border-top: 1px solid #fff; }
ul.cms-tab li:last-child { border-bottom: none; }
ul.cms-tab a {padding:8px 10px; text-align: center; text-decoration: none; color: #fff; }
ul.cms-tab a:hover { color:#ac0b0b; }
ul.cms-tab li a span{  text-align: center; color:#fff;}

@media (min-width:768px) {
.cms-tab-bar {  background:none; z-index: 1; position: relative; }
.cms-tab-bar .cms-btn-tab { display: none; }
div.cms-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.cms-tab { width: 100%; display: flex; align-items: center; justify-content:center; flex-wrap: wrap; text-align: center; padding-top:20px; z-index:0;   background:transparent;}
ul.cms-tab a { padding:5px 15px;  color:#50585c;  }
ul.cms-tab li.current{ color:#fff!important; background: linear-gradient(to right, #ff8a00, #f3a432); text-shadow:none;    }
ul.cms-tab li{ display: flex; width: auto;  margin:5px;  position: relative;  background-color:#fef1d9; border-bottom:none;border-radius:8px;box-shadow: 0px 2px 5px rgba(0,0,0,.1);}
ul.cms-tab li a{ padding: 5px;  position: relative; font-size:.875rem; color:#50585c; transition: transform 0.2s;     }
ul.cms-tab li:hover{ color:#fff; background-color:#0d386c;   }
ul.cms-tab li a span{   padding:2px 15px; text-align: center; color:#ec651e;}
ul.cms-tab li.current a span{ color:#fff;}

ul.cms-tab li:first-child { border-top: solid 1px #f7f8fc; }
ul.cms-tab li:last-child { border-bottom:none; }
ul.cms-tab li.current:after{ content:" "; width: 0px; height: 0px; border-style: solid; border-width: 5px 7.5px 0 7.5px; border-color:#f3a432 transparent transparent transparent; position:absolute; bottom:-5px; left:50%; margin-left:-7.5px;}
ul.cms-tab li.current:hover:after{   border-color:#f3a432 transparent transparent transparent;  }
}


/*----------------------------------------/
  分頁 自訂顏色樣式
----------------------------------------*/
#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:#f3a432; border-color:#f3a432;}
.cms-pagination .page-item.disabled .page-link { color: #6c757d;  background-color: #fff; border-color:#e3ded2;}

/*----------------------------------------/
  btn 自訂顏色樣式
----------------------------------------*/
#cms-main .btn { padding: 0.375rem 0.75rem;  margin-bottom:5px;  font-size: .95rem; line-height: 1.75; border-radius:25px;  }
#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: #10376c;  font-weight:400;  border-color:#10376c;  }
.btn.cms-btn-outline-primary:hover { color:#71869d; background-color:#e2e2e2; border-color:#e2e2e2;}
.btn.cms-btn-secondary { color:#fff; font-weight: 400;  background-color:#10376c; border-color:#10376c;  }
.btn.cms-btn-secondary:hover { color: #71869d; background-color:#8a8073; border-color:#8a8073; }
.btn-back {  color: #48443b;  margin-bottom: 15px; padding: 5px 20px;   line-height: 28px;  text-align: center; background: url(../images/icon/arrow-left.svg) no-repeat left 8px; border: solid 1px #48443b;}
.btn-back:hover { color: #c9163a;  }
.cms-btn-submit{  font-weight: 400;  border-radius: 25px!important; background-image: linear-gradient(to right, #ec640a 10%, #fcca5c 100%);border: solid 1px #fcca5c;  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)}
.cms-text-pink{color: #ed5a5a!important;}



 

  /*cms-btn Styles 2===*/
#cms-main a.cms-btn-02{ color: #fff!important;  font-size:1rem; line-height:2rem; max-height: 200px; overflow: hidden; text-overflow: initial; -webkit-writing-mode: vertical-rl; writing-mode: vertical-rl;padding:0.5rem; background:#401e1f; border: none; cursor: pointer;  letter-spacing: 0.5rem;box-shadow: inset 0 0 0 1px #232323;    -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:#8c7879; background:#b3a5a5; }
.cms-btn-02:hover::before, .cms-btn-02:hover::after{border-color: #401e1f; -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:#797371!important; padding: 10px; font-weight: 700;border: solid 1px #797371;   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:#94000b!important; border: solid 1px #94000b;}
.cms-btn-back:hover:before{ background:#94000b; -moz-transform: translateX(20%); -ms-transform: translateX(20%); -webkit-transform: translateX(20%); transform: translateX(20%);  }
.cms-btn-back:hover:after{ background:#94000b;-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 Styles 樣式
=================================*/ 
 /*cms-btn Styles 1===*/
.cms-btn-01 { cursor: pointer; width: 100%; max-width: 300px; height: 2.5rem; line-height: 2.5rem; display: block; margin: auto; position: absolute; z-index: 0; box-shadow: 0px 0px 17px 1px rgba(0, 0, 0, 0.34); background-color: #411f1f; border-radius:25px;   }
.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; 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;z-index: 1; background: #fff;}
.cms-btn-01:before,.cms-btn-01:after {content: '';background: #fff;height: 50%; 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(1);}
 
 
#cms-main a.cms-btn-more{ position: relative; display: block; width: auto; margin:15px auto; padding:6px 25px 6px 25px; font-size: 1rem; font-weight: 400; color:#0d386d; letter-spacing: 1px;  -webkit-transition: 0.3s ease;  transition: 0.3s ease; }
#cms-main a.cms-btn-more:hover{ color:#ed6d20!important;    }
#cms-main a.cms-btn-more:before { content: "\e95e"; position: absolute; top:4px; left: 0px;   font-size:24px; color: #0d386d;    transition: all 0.3s ease; font-family: 'boxicons';}
#cms-main a.cms-btn-more:hover:before {   top:4px; left:5px; transform:translateX(20%); font-size:24px;  transition: all 0.3s ease; font-family: 'boxicons'; overflow: hidden; }

@media (max-width: 767.98px) {
#cms-main a.cms-btn-more{   letter-spacing: 0em; }
}


 
/*----------------------------------------/
  ul style 自訂樣式
----------------------------------------*/
.cms-dot{ width: 100%;  display: block; margin: 5px auto; }
.cms-dot li{ width: 100%; display: block; padding: 3px 15px; font-size:0.9rem; 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;  }

/*----------------------------------------/
  ul style 自訂樣式
----------------------------------------*/

.cms-table-scroll { overflow-x: auto; }
 /*--------form style-------------*/
#cms-main label{   font-size:.9rem; }
 input, option, textarea, input[type="radio"]{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;  }
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[type="radio"], input[type="checkbox"] { display: none;  }
input[type="radio"]+label, input[type="checkbox"]+label { width:auto; font-size:.75rem;  box-sizing: border-box; padding: 5px 5px 0px 5px; display: inline-block; border: 1px solid transparent; cursor: pointer; vertical-align: bottom; border-radius: 4px;background-color:transparent; color: #666; -moz-transition: color 0.2s ease, background-color 0.2s ease; -o-transition: color 0.2s ease, background-color 0.2s ease; -webkit-transition: color 0.2s ease, background-color 0.2s ease; transition: color 0.2s ease, background-color 0.2s ease; }
input[type="radio"]+label:before, input[type="checkbox"]+label:before { height: 18px; width: 18px; margin:0px 4px 0 0; content: ""; display: inline-block; vertical-align: middle; border: 1px solid #afbabf; background-color: #fff; border-radius: 50%; -moz-transition: border-color 0.2s ease, background-color 0.2s ease; -o-transition: border-color 0.2s ease, background-color 0.2s ease; -webkit-transition: border-color 0.2s ease, background-color 0.2s ease; transition: border-color 0.2s ease, background-color 0.2s ease; }
input[type="radio"]:nth-of-type(2n+1)+label, input[type="checkbox"]:nth-of-type(2n+1)+label {  color: #000 }
input[type="radio"]:checked+label, input[type="checkbox"]:checked+label { border: 1px solid transparent; color:#c74060; background-color:transparent; font-weight: 700; }
input[type="checkbox"]:checked+label:before { background: #fff url("../images/icon/icon.svg") no-repeat; background-position: -246px -60px }
input[type="radio"]:checked+label:before { background: #fff url("../images/icon/icon.svg") no-repeat; background-position: -107px -63px }
input, button, select, textarea { outline: none; }
