﻿/* 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-400{font-weight: 400!important;}
.vText { -webkit-writing-mode: vertical-rl; writing-mode: vertical-rl; }
.txt-red{color: #9e2b2f;}
.txt-white{color: #fff!important; }
.txt-gray{color:#5a5a5a; }
.f-16{font-size: 1rem; }

/** common======*/
.imgCenter,.imgCenter a {position: absolute; top: 0; left: 0; right: 0; bottom: 0; line-height: 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; z-index: 10;  transition: all 0.5s ease 0s; }
.imgCenter img {max-height: 100%; transition: all 0.3s linear 0s;}
/* figure {  width: 100%; padding-bottom: 100%; height: 0; overflow: hidden; position: relative; background-color: #e8e5e3; transition: all 0.5s ease 0s;}*/

/*----------------------------------------/
  Default Typography
----------------------------------------*/
.edit h2 {font-size: 175%;  }
.edit h3 {font-size: 162.5%;   }
.edit h4 {font-size: 150%; }
.edit h5 {font-size: 135%; }
.edit h6 {font-size: 115%;  }

/*----------------------------------------/
  description Typography
----------------------------------------*/

/* description =======================================================================	*/
.description{ width:calc(100% - 100px); margin:35px auto; padding:20px;  }
.description p {font-size: 1rem; font-size: min(max(3vw, .875rem), 1rem);  }

.description h2 {font-size: 175%;  }
.description h3 {font-size: 162.5%;  }
.description h4 {font-size: 150%; }
.description h5 {font-size: 137.5%; }
.description h6 {font-size: 125%;  }
@media (max-width: 767.98px) {
.description{  width: 100%; margin:15px auto; padding:0px 0px 20px 0px;  } 
}
 


/*cms-Title Styles-v 樣式
=================================*/
.cms-title-v  {max-width: 600px;height: 50%;  display: flex; flex-wrap: wrap; justify-content: flex-start; align-self: center;position: relative; z-index: 9;-webkit-writing-mode: vertical-rl; writing-mode: vertical-rl; }   
.cms-title-v h2 { width: auto; height: 100%; margin:0px 5px; font-size:2rem; line-height:2.5rem; letter-spacing: 10px; font-weight:700;  word-wrap:break-word;word-break:keep-all; }
.cms-title-v h3 { width: auto; height: 100%; margin:0px 5px; font-size: 1.75rem; font-size: min(max(3vw, 1.25rem), 1.75rem);line-height:2.5rem; letter-spacing: 5px;  font-weight:700;  word-wrap:break-word;word-break:keep-all;  }
.cms-title-v p { width: auto; font-size:0.875rem; font-weight: 400;  word-wrap:break-word;word-break:keep-all; }

@media (max-width: 768px) {
.cms-title-v h2 { font-size:1.75rem; }
.cms-title-v h3 { font-size: 1.5rem;  }
}

.wrapper { position: relative; display: block; margin:0px  auto;  width: 100%; padding:0px 30px;  max-width: calc((100% - 40px)/12*12 + 40px)}
@media (min-width:1025px) {
.wrapper { padding-right: 20px; padding-left: 20px;  }
}
@media (min-width:1100px) {
.wrapper { padding-right:30px; padding-left: 30px;  }
}
@media (min-width:1200px) {
.wrapper { padding-right: 40px; padding-left: 40px; max-width: 1280px}
}
@media (min-width:1920px) {
.wrapper { padding-right: 40px; padding-left: 40px; max-width: 1440px }
}
.main-wrap{ width: 100%;  margin: auto; height: auto;  display: flex; flex-wrap: wrap; align-content: flex-start; align-items: flex-start;  }
.text-stroke{ -webkit-text-stroke: 1px #a3d6bf;} 
/*----------------------------------------/
banner area
----------------------------------------*/
.main-banner { width:100%;  height:auto; padding: 0px; margin:0px auto; display: flex; flex-wrap: wrap; align-items: flex-start; justify-content:center; flex-direction: row;  line-height: 2.5em; vertical-align: top; position: relative; z-index: 0;}
.main-banner-img{width: 100%;  position: relative; top: 0px; margin-top: 0px; padding:0px; z-index: 0;}
.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; }
@media (max-width: 768px) {
.main-banner-img{ padding:0px; order:1; }
}
@media (max-width: 767.98px) {
.main-banner-img{ padding:0px;}   
}
/* Banner 內文字 =====================================================================*/
.main-banner-txt {max-width: 600px; margin: auto; padding:0px;  display: flex; flex-wrap: wrap; justify-content: center; align-items: center;  align-content: center;  z-index: 9;
position: absolute; top: 40%; left: 50%; -webkit-transform: translate(-50%, -40%); transform: translate(-50%, -40%);   background-image: linear-gradient(to right, rgba(215, 215, 215, 0.8) 0%, rgba(215, 215, 215, .6) 50%,rgba(215, 215, 215, 0) 100%);    -webkit-backdrop-filter: blur(2px);backdrop-filter: blur(2px);  }
.main-banner-txt h1{  margin: auto; padding:5px 15px; text-align: center; font-size:2rem; font-weight: 700; letter-spacing:12px; color:#000;  position: relative; }
.main-banner-txt h1:after{ content: "";width:100%; height:3px; display: block; position: absolute; z-index: 999; left:50%;top:53px;-webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); background:#000;}   
.main-banner-txt p {width: 100%;margin:0px auto; font-size:1.125rem; font-weight:700; text-align: center;  color:#E64A72; letter-spacing: 1px; position: relative;z-index: 1; }
.main-banner-txt:after{ content: "";width:2px; height: 100px; display: block; position: absolute; z-index: 999; left:50%;top:130px;-webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); background:#fff;}   
@media (max-width: 1024px) {
.main-banner-txt h1 { font-size: 1.75rem;  margin-top: 0px; font-weight:700; }
.main-banner-txt p { font-size:0.875rem;   }
}
@media (max-width: 768px) {
.main-banner {width:100%;  margin:0px auto;   align-items: center; justify-content: center;  }
.main-banner-txt { height: auto; margin: 0px auto; padding: 20px;  }
.main-banner-txt p {text-align: center;   }
.main-banner-txt p:after{  display: none;}  
}
@media (max-width: 767.98px) {
.main-banner { padding: 0px; justify-content: flex-start;  }
.main-banner-txt { order:2; padding:5px 20px;margin: 0px auto;  }    
.main-banner-txt h1 {  font-size: 1.35rem; letter-spacing: 1px;}
.main-banner-txt h1:after{  top:45px; }      
.main-banner-txt:after{top:76px; height: 30px; display: none;}    
}
@media (max-width:320px) {
.main-banner-txt { padding:5px;  }        
.main-banner-txt h1 { font-size: 1.125rem; letter-spacing: 0;}
.main-banner-txt h1:after{  top:40px; }          
}

.main-area{ width: 100%; padding: 0px; margin: 0px; flex: 1 1 100%;   position: relative; z-index: 0;}
/*----------------------------------------/
cms-main-content
----------------------------------------*/
.main-content{position: relative; width: 100%; min-height: 50vh; margin:0 auto; padding:0px; }
 /*----------------------------------------/
麵包屑 自訂顏色樣式
----------------------------------------*/
.main-breads{ width: 100%; max-width: calc((100% - 40px)/12*12 + 40px); margin: auto; padding:10px 0px;position: relative;z-index:9;  color:#000;}
.main-breads .breadcrumb{ width: auto; padding:0px 10px;  margin: 0 auto; background:none; justify-content: flex-end;  }
.main-breads .breadcrumb li{ font-size:12px; max-width: 200px; overflow: hidden;  word-break: break-all; text-overflow: ellipsis;  display: -webkit-box;  -webkit-line-clamp: 1;  -webkit-box-orient: vertical; }
.main-breads .breadcrumb li a{ color:#6c757d; ;   }
.main-breads .breadcrumb li a:hover{color:#E64A72}
.breadcrumb-item:first-child::before {content: ""; color:#6c757d !important; position: absolute; left:0px;top:4px; width: 13px; height:13px;  background: url("../images/icon/home-b.svg") no-repeat left top; }
.breadcrumb-item+.breadcrumb-item::before { content: " | "; margin-left: 5px;color:#6c757d;}
.main-breads .breadcrumb li:first-child{ position: relative; padding-left: 20px;}
.main-breads .breadcrumb li.breadcrumb-item.active{color:#E64A72; }

@media (min-width: 1600px) {
.main-breads .breadcrumb{padding:0px 20px}
}

@media (max-width: 768px) {
.main-breads{margin:0px auto; border-top: solid 1px rgba(255,255,255,.35);}
.main-breads .breadcrumb{ padding:2px; justify-content: flex-start;  }
}


     
/*敘述區----*/
.main-about{position: relative; margin:0px auto; padding:120px 0px 40px 0px; width: 100%;  background-image: linear-gradient(to top,#f5f5f5 50%, #fff 100%); }
.block-title{width:20%; height: auto;   margin:0; padding: 0px; display: flex; flex-wrap: wrap; flex-direction: row-reverse; align-content: flex-start;position: relative; z-index: 1;}
.block-txt{width:80%; margin:0; padding: 0px 40px;  } 
.block-txt p { font-size:1em;  font-weight: 500; line-height: 2rem; color:#6c757d;  margin-bottom:5px;   }
.block-txt-2{width:40%; margin:0; padding: 0px 0px;  }
@media (max-width: 920px) {
.block-txt{ padding: 0px 20px;  } 
}
@media (max-width: 767.98px) {
.main-about{  padding: 40px 0px;  }   
.block-title{ width:100%; margin: 30px auto;} 
.block-txt{width:100%; padding: 0px; } 
}
 

.title-block{ width: 100%; margin:0px auto 30px auto;  display: flex; flex-wrap: wrap; justify-content:center;  border-bottom: 1px solid #e84a75;}
.title-block h1 {width:100%; margin:0px auto 15px auto; padding: 0px; font-size:2.25rem;  color:#e84a75; font-weight:700; text-align: center; position: relative;  }
@media (max-width: 1199.98px) {
.title-block h1{  font-size: 1.5rem; }
}
@media (max-width: 767.98px) {
.title-block {  margin: 15px auto; }  
.title-block h1::before { width:88px; height: 63px; left: 10px;background-size:80% auto;   }
}  

/*----------------------------------------/
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-span{ margin:0px; font-size: 1rem; text-align: left; text-transform: uppercase; letter-spacing: 1px;  font-weight: 400;color:#666;}

/*cms-Title Styles 樣式
=================================*/
.cms-title { width: 100%; height: auto; margin:0px 0px 30px  0px;padding: 0px;   }
.cms-title h1{  display: block;margin: 0; font-size:2.25rem;  line-height: 2.5rem; color:#8f929e;  }
.cms-title h2{  width: auto;  margin:0px;  font-size: 2rem;  font-size: min(max(3vw, 1.5rem), 2rem);font-weight: 700;color: #c98f25; text-shadow: 0px 0px rgba(255,255,255,1); letter-spacing: 2px;}
.cms-title h3{  width: auto;  margin:0px;  font-size: 1.75rem;  font-size: min(max(3vw, 1.25rem), 1.75rem); font-weight: 700;color: #000; line-height:2rem; letter-spacing: 2px;}

.cms-title span{ width: auto; margin:10px auto; font-size:1rem; letter-spacing:2px; font-weight:400; color: #333;   }
.cms-title p{ margin:0px;font-size: 0.9375rem;  font-weight: 700; color:#8f929e;}

.cms-title-2 { width:100%; height: auto; margin:0 auto 2% auto;  padding-top: 0px;  padding-bottom: 0; display: flex;  flex-wrap: wrap; justify-content: center; align-items: center;  flex-direction:column; background: none;}
.cms-title-2 h2{   font-size:2rem; font-weight:700;   }

.cms-title-2 h3{ color: #c98f25; font-size: 1.75rem; font-size: min(max(3vw, 1.25rem), 1.75rem);font-weight:700; line-height:2rem;  }
.cms-title-2 p{ width:100%;  margin:0px auto;  font-size:0.75rem; font-weight:400; text-align: center; color:#6c7280;  }
 
@media (max-width: 767.98px) {
.cms-title-style{ font-size: 1.875rem;}
.cms-title-2 p{ width: 90%;   }
.cms-title { margin: 0 0px 20px 0px; justify-content: flex-start;   align-content: flex-start; align-items: flex-start;  }
.cms-title span{  margin:10px 0;   }
}

.cms-title-3 { width:auto; height: auto; margin:0px 0px 30px 30px;padding: 0px;  display: flex; justify-content: flex-start;align-items: flex-start; flex-wrap: wrap; flex-direction:column;  }
.cms-title-3 h3{  display: block;margin:5px 0px; font-size: 1.75rem; font-size: min(max(3vw, 1.25rem), 1.75rem); line-height:2rem; font-weight:700; color:#c98f25;  letter-spacing: 1px; position: relative;  }
.cms-title-3 h3:before{  content: ""; position: absolute;z-index:99!important; left: -50px; top:10px; width:19px; height:5px; background: url("../images/index/t-l.svg")  no-repeat left top;  background-size: 19px 5px; }
.cms-title-3 h3:after{  content: ""; position: absolute;z-index:99!important; right:-50px; top: 10px;width:19px; height:5px; background: url("../images/index/t-r.svg")  no-repeat right top;background-size: 19px 5px;  }
.cms-title-3 h4{  width: auto;  margin:0px;  font-size: 2rem;font-size: min(max(3vw, 1.75rem), 2rem);  font-weight: 700;color: #c98f25; text-shadow: 0px 0px rgba(255,255,255,1); letter-spacing: 2px;}
.cms-title-3 span{ width: auto; margin:10px auto; font-size:1rem; letter-spacing:2px; font-weight:400; color: #333;   }
.cms-title-3 p{  width:100%;  margin:0px;  font-size:0.875rem; font-weight:700;  color:#c98f25; }

.cms-title-4 { width:auto; height: auto; margin:30px 0px; padding: 0px;  display: flex; justify-content: flex-start;align-items: flex-start; flex-wrap: wrap;   }
.cms-title-4 h3{ width:100%; display: block;margin:0px; padding:10px 0px 20px 70px;  font-size: 1.75rem; font-size: min(max(3vw, 1.25rem), 1.75rem);  line-height:2rem; font-weight:700; color:#e74a72;  letter-spacing: 1px; position: relative;  }
.cms-title-4 h3:before{ content: ""; position: absolute;z-index:9; left: 0px; top:0px; width:50px; height:50px; background: url("../images/index/f-3.svg") no-repeat left top;  background-size:50px 50px; }
.cms-title-4 h3:after{ content: ""; position: absolute;z-index:9; right:0px; bottom:0px;width:100%; height:2px; background:#c8d0d4;  }
.cms-title-4 h4{ width: auto;  margin:0px;  font-size: 2rem; font-size: min(max(3vw, 1.75rem), 2rem); font-weight: 700;color: #c98f25; text-shadow: 0px 0px rgba(255,255,255,1); letter-spacing: 2px;}
.cms-title-4 span{ width: auto; margin:10px auto; font-size:1rem; letter-spacing:2px; font-weight:400; color: #333;   }
.cms-title-4 p{  width:100%;  margin:0px;  font-size:0.875rem; font-weight:700;  color:#c98f25; }

@media (max-width: 767.98px) {
.cms-title-4 h3:before{ display: none; }
.cms-title-4 h3{  padding:0px 0px 20px 0px;   }
    
}

/*Title Styles-v 樣式
=================================*/
.title-v  { height: 40vh;  display: flex; flex-wrap: wrap; justify-content: space-between;  align-items:  flex-start; z-index: 9;-webkit-writing-mode: vertical-rl; writing-mode: vertical-rl;  }   
.title-v h2 { height: 100%; display: block; margin:0px 5px; font-size: 2rem;  font-size: min(max(3vw, 1.75rem), 2rem); letter-spacing: 10px; font-weight:700; color: #e74a75; word-wrap:break-word; word-break: break-all }
.title-v h3 { width: 100%; margin:0px 5px; font-size: 1.75rem; font-size: min(max(3vw, 1.25rem), 1.75rem);line-height:2.5rem; letter-spacing: 5px; font-weight:700; word-wrap:break-word;word-break:break-all ;  }
.title-v p { width: 100%;font-size: 1.375rem; font-size: min(max(3vw, .9rem), 1.375rem);font-weight: 400; text-align: left; word-wrap:break-word;word-break:break-all; color: #8f929e; font-family: 'Tenor Sans', sans-serif; }
@media (max-width: 767.98px) {
.title-v{ width: 100%;  max-width: 100%; height:auto; padding: 0px 10px; flex-wrap: wrap; -webkit-writing-mode: horizontal-tb; writing-mode: horizontal-tb; }  
 .title-v h2 { width: 100%;  height: auto; margin:0px; letter-spacing:3px;  }
 
}








.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;}
/*----------------------------------------/
分頁 自訂顏色樣式
----------------------------------------*/
.pagination{ margin:10px auto auto auto; padding-bottom: 20px;  display: flex; justify-content: center;  }
.pagination .page-link { color:#31315e; background-color:#fff; border-color:transparent; border-radius:99rem;}
.pagination .page-link:hover { color: #fff; background-color:#dcdddd; border-color:#dcdddd;}
.pagination .page-link:focus { box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);}
.pagination .page-item{   }
.pagination .page-item:first-child .page-link { }
.pagination .page-item:last-child .page-link { }
.pagination .page-item.active .page-link { color: #fff!important;  background-color:#333; border-color:#333;}
.pagination .page-item.disabled .page-link { color: #6c757d;  background-color: #fff; border-color:transparent;   }

/*----------------------------------------/
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;   border-color:#E64A72; background: #E64A72;  }
#cms-main .btn.cms-btn-secondary i{font-size: 1.1rem;  width: 24px; height:24px; display: inline-block;  }

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

#cms-main .btn.cms-btn-secondary:hover { color: #fff; background-color: #000;; border-color:#000;; }
#cms-main .btn.cms-btn-buynow { color:#bf9548; font-weight: 400;  background-color:#fff; border-color:#bf9548;  }
#cms-main .btn.cms-btn-buynow:hover { color: #000; background-color: #fff;; border-color:#000;; }

.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/icon-arrow-r-w.svg") no-repeat left 0px;  background-size:auto;}
.icon-next-r{background: url("../images/icon/icon-arrow-r.svg") no-repeat left 0px;  background-size:auto;}
.icon-link{ width: 26px; height: 26px;  background: url("../images/icon/link.svg") no-repeat left 0px;  background-size:auto;}
.btn-circle-link {  position: relative;  z-index: 1; display: flex; align-items: center; justify-content: center; text-align: center; width: 36px; max-width: 36px; max-height: 36px;  height: 36px; opacity: 1!important; margin: auto;  border: solid 1px #ea5d84;border-radius: 99rem; transition: all 0.5s;}
.btn-circle-link:hover{opacity: .5; transform: scale(1.1)}

.cms-btn { width: 100%; max-width: 180px; height: 42px;   margin: 15px 0px;  padding: 0px 20px; font-size: 1rem; font-weight: 700; text-decoration: none;   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: center; cursor: pointer;  border-radius:30px;  overflow: hidden;position: relative;  }
a.cms-btn { color: #fff;font-size: 0.9rem; font-weight:700; letter-spacing: 3px;   background:#e74a75; text-shadow: 0px 1px 1px rgb(0,0,0,.3); box-shadow: 2px 4px 8px rgba(0, 0, 0, 0.1); }
.cms-btn:hover {border-color: rgba(255, 255, 255,.5); }
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:30px; height: 20px; -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)}
@media (max-width: 768px) {
.cms-btn i { width:18px; height: 18px;  }
.cms-btn {padding: 15px;}
}


/*cms-btn Styles 樣式=================================*/ 
.cms-btn-01 { width: 100%; max-width: 360px; height: auto;   margin: 15px 0px;  padding: 5px 20px; font-size: 1rem; font-weight: 700; text-decoration: none;   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: center; cursor: pointer;  border-radius:30px;  overflow: hidden;position: relative;  }
a.cms-btn-01 { color:#000;;font-size: 1rem; font-weight:700; letter-spacing: 3px;  border: solid 2px #000;   box-shadow: 2px 4px 8px rgba(0, 0, 0, 0.1); }
.cms-btn-01:hover {border-color: rgba(255, 255, 255,.5); }
a.cms-btn-01:hover {color: #000;}
.cms-btn-01: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-01:hover:before {left: 100%;}
.cms-btn-01 i { margin-left: 10px; width:30px; height: 20px; -webkit-transition: -webkit-transform .2s;  transition: -webkit-transform .2s; transition: transform .2s; transition: transform .2s, -webkit-transform .2s}
.cms-btn-01:hover i{ -webkit-transform: translateX(15px); transform: translateX(15px)}
@media (max-width: 768px) {
.cms-btn-01 i { width:30px!important;height: 30px!important;  }
.cms-btn-01 {padding: 15px;}
}


/*cms-btn Styles 2===*/
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;}
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) {
a.cms-btn-02{max-width: 100%;  font-size:0.9rem;   }
}

a.cms-btn-prev {color:#131212; font-weight: 700; text-align: center; transition: all 0.5s; position: relative;   }
a.cms-btn-next {color:#131212; font-weight: 700;  text-align: center; transition: all 0.5s; position: relative;  }

a.cms-btn-prev:before{content: "";   position: absolute;top:14px; left:8px;width:18px; height:18px; background: url(../images/icon/icon-arrow-l.svg) no-repeat left top; transition: all 0.5s; filter: grayscale(1) brightness(1);}
a.cms-btn-next:before{content: "";   position: absolute;top:14px; right:8px;width:18px; height:18px; background: url(../images/icon/icon-arrow-r.svg) no-repeat left top; transition: all 0.5s; filter: grayscale(1) brightness(1);}
a.cms-btn-prev:after,a.cms-btn-next:after { display: block; content: ''; width: 0; height:1px; position: absolute; left:0px; bottom: 0px;  background:#936f2f; transition: all .3s ease;} 


a.cms-btn-prev:hover:after,a.cms-btn-next:hover:after{ width: 100%;  }
a.cms-btn-prev:hover:before{  -webkit-transform: translateX(5px); transform: translateX(5px); filter: none; }
a.cms-btn-next:hover:before{  -webkit-transform: translateX(-5px); transform: translateX(-5px);  filter: none;}
a.cms-btn-prev:hover, a.cms-btn-next:hover  { color:#936f2f!important;  }


a.cms-btn-back { width:auto; color:#000!important; padding: 10px; font-weight: 700; 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;  }
.cms-btn-back:before,.cms-btn-back::after{   content: ''; width: 20px; 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:#936f2f!important;  }
.cms-btn-back:hover:before{   background:#936f2f; -moz-transform: translateX(20%); -ms-transform: translateX(20%); -webkit-transform: translateX(20%); transform: translateX(20%);  }
.cms-btn-back:hover:after{  background:#936f2f;-moz-transform: translateX(-20%); -ms-transform: translateX(-20%); -webkit-transform: translateX(-20%); transform: translateX(-20%);  }
@media (max-width:1024px) {
.cms-btn-back:before,.cms-btn-back::after{ display: none; }
}

@media (max-width: 767.98px) {
.cms-btn-back  { font-size:.875rem; padding:5px  10px;}  
}


a.text-button,.text-button a{color: #e84a75;}
.text-button {  padding-left: 2.1875rem; margin:20px 0px; font-size:1rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.125rem; cursor: pointer; display: inline-block; color: #e84a75;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:#e84a75; vertical-align: middle; margin-right: 0.625rem; transition: padding 0.3s ease}



@media (hover: hover) {
.text-button:hover {  padding-left: 2.8125rem ;color:#7e787a;}
.text-button:hover:before { width: 2.1875rem; color:#7e787a  }
}
a.txt-button-border{ border: solid 1px #c19546}

/*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 =================================*/ 
.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 =================================*/ 
.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 }
}


.back-button {  width: 100px; height: 100px; margin: 0; padding: 10px  0px; 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; flex-direction: column;  cursor: pointer; border-radius:99rem;   background:#e84a75;  -webkit-transition: -webkit-transform .2s; transition: -webkit-transform .2s; transition: transform .2s; transition: transform .2s, -webkit-transform .2s}
.back-button:hover{ -webkit-transform: translateY(-6px); transform: translateY(-6px)}


.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: 20px; height: 20px; position: absolute;top: 0; bottom: 0; left:0px; background: url("../images/icon/icon-arrow-l.svg") no-repeat 4px 2px;  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!important; }

@media (max-width:767.98px) {
    .back-button {  width: 60px; height: 60px; }
 .back-button-circle { width: 24px; height: 24px; margin:10px auto}
.back-button i { width: 22px; height: 22px; margin: auto auto auto 10px}
.back-button-txt { font-size: 14px; line-height: normal; letter-spacing: normal }
}



/*----------------------------------------/
ul style 自訂樣式
----------------------------------------*/
.cms-dot{ width: 100%;  display: block; margin:0px;padding: 0px; }
.cms-dot li{ width: 100%; display: block; padding: 2px 0px 2px 15px; margin: 0px 0px 10px 0px; font-size:1.063rem; line-height:1.5rem; font-weight:400; color: #333; background: url(../images/icon/dot.svg)  no-repeat left 12px; background-size:4px;}

.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;}


/*----------------------------------------/
leftMenu start 樣式
----------------------------------------*/
@media only screen and (min-width:993px){
.leftMenuMobile {display: none;}
}

.leftMenu { width: 100%;  padding: 20px 30px 0 0; }
.leftMenu h2{ font-size: 1.875rem;font-size: min(max(3vw, 1.25rem), 1.875rem); font-weight: 700; margin-bottom: 30px;letter-spacing: 2px; }
@media(min-width:1002px) {
.leftMenu { width:240px;  }    
}
@media(min-width:1100px) {
.leftMenu { width: 300px;   }
}
@media (max-width:767.98px) {
 .leftMenu h2{  margin-bottom: 10px;  }
   
}
.leftMenu ul, .leftMenu ul li {list-style-type:none; margin: 0; padding: 0; }
.leftMenu ul {width: 100%; }
.leftMenu ul li.menu-title a{ color:#fff; font-size: 1.15rem; font-weight: 700; line-height: 2rem; background:#e74a72; }
.leftMenu ul li:hover.menu-title a{ color:#fff; }
.leftMenu ul:nth-child(2){margin-bottom: 30px;}
.leftMenu > ul ul {display: none;}
.leftMenu ul li { margin: 10px 0px;  position: relative; z-index: 1; font-size: 1rem; font-weight: bold;  line-height:1.5rem; border-bottom: 1px solid #d8d8d8;  }
.leftMenu ul li:last-child {border-bottom: none;}
.leftMenu ul li a:hover { color:#e74a72!important; }
.leftMenu ul li a { transition: all .3s ease }
.leftMenu ul li a:after { content: ""; display: block; height: 4px; width: 100%; transition: all .3s ease; transform: scaleX(0);  position: absolute; left: 0;  bottom: 0; background-color: #e74a72;  transform-origin: left bottom}
.leftMenu ul li a.active, .leftMenu ul li a:hover {  border-color: transparent}
.leftMenu ul li a.active:after, .leftMenu ul li a:hover:after {  transform: scaleX(1)}

.leftMenu ul li ul li a{ font-weight: 400; color:#e74a72;}
.leftMenu ul li.current a{ color:#e74a72;}


.menu_dot {position: absolute; top: 10px; right: 0px; z-index: 99; width: 30px; height: 30px; cursor: pointer;}
.menu_dot::before {content: ''; width: 12px; height: 2px; background-color: #000; border-radius: 2px; position: absolute; top: 12px; left: 7px; z-index: 99; transition: all 0.5s ease 0s;}
.menu_dot::after {content: ''; width: 2px; height:12px; background-color: #000; border-radius: 2px; position: absolute; top: 7px; left: 12px; z-index: 99; transition: all 0.5s ease 0s;}
.leftMenu .menu_dot_open{top:6px; }
.leftMenu .menu_dot_open::before {background-color:#e74a72;}
.leftMenu .menu_dot_open::after { display: none;}
.leftMenu a:link, .leftMenu a:visited {text-decoration:none; color:#312927; background-color: transparent; padding: 10px 30px; display: block; position: relative; z-index: 1; transition: all 0.5s ease 0s;}
.leftMenu a:active, .leftMenu a:hover {text-decoration:none;  color:#e74a72!important; cursor:pointer; transition: all 0.5s ease 0s;}
.leftMenu ul li ul li a{color:#666464; font-weight: 400; }

/*.leftMenu img style*/
.menu-img {width: 100%; display: flex;flex-wrap: wrap; align-items: center; }
.menu-img figure{width:20%; padding-right: 10px;}
.menu-img h3{width: calc(80% - 10px);}
/*.leftMenu img end style*/
.menu_bg_open{background-color: rgba(243,152,0,0);}

.leftMenu ul li a.menu_arrow_open{background-color:transparent; color:#e74a72;}
.menu_arrow {position: absolute; top: 15px; left: 5px; width: 20px; height: 20px; -moz-transform:rotate(0deg); -webkit-transform:rotate(0deg); -o-transform:rotate(0deg); -ms-transform:rotate(0deg); transform:rotate(0deg); transition: all 0.5s ease 0s;}
.menu_arrow::before {content: ''; width: 7px; height: 2px; background-color: #000; border-radius: 2px; position: absolute; top: 7px; left: 6px; -moz-transform:rotate(45deg); -webkit-transform:rotate(45deg); -o-transform:rotate(45deg); -ms-transform:rotate(45deg); transform:rotate(45deg); transition: all 0.5s ease 0s;}
.leftMenu a:hover .menu_arrow::before {background-color: #e74a72; transition: all 0.5s ease 0s;}
.menu_arrow::after {content: ''; width: 7px; height: 2px; background-color: #000; border-radius: 2px; position: absolute; top: 11px; left: 6px; -moz-transform:rotate(-45deg); -webkit-transform:rotate(-45deg); -o-transform:rotate(-45deg); -ms-transform:rotate(-45deg); transform:rotate(-45deg); transition: all 0.5s ease 0s;}
.leftMenu ul li a.menu_arrow_open .menu_arrow::before,.leftMenu ul li a.menu_arrow_open .menu_arrow::after  {background-color:#e74a72; }
.leftMenu a:hover .menu_arrow::after {background-color: #e74a72; transition: all 0.5s ease 0s;}
.menu_arrow_open .menu_arrow {-moz-transform:rotate(90deg); -webkit-transform:rotate(90deg); -o-transform:rotate(90deg); -ms-transform:rotate(90deg); transform:rotate(90deg); transition: all 0.5s ease 0s; }
@media only screen and (max-width:992px){
.leftMenu { width: 100%;  padding: 20px 0px 0px 0px; }    
  .leftMenuMobile {width: 100%; height: 46px; margin: 20px auto auto auto; cursor: pointer; border-bottom: solid 2px #000; background-color: #fff;  position: relative; z-index: 9;  }
.leftMenuMobile > span:nth-child(1) {width: 20px; height: 2px; background-color: #000; position: absolute; top: 25px; right: 23px; transform: rotate(45deg);   transition: all 0.5s ease 0s;}
.leftMenu > div.show > span:nth-child(1) {  background-color: #e74a72; transform: rotate(-45deg);}
.leftMenuMobile > span:nth-child(2) {width:20px; height: 2px; background-color: #000; position: absolute; top: 25px; right: 10px; transform: rotate(-45deg); transition: all 0.5s ease 0s;}
.leftMenu > div.show > span:nth-child(2) { background-color: #e74a72; transform: rotate(45deg);}
.leftMenuMobile::before {content: attr(data-title); width: 200px; height: 30px; line-height: 30px; position: absolute; top: 5px; left: 0px; text-align: left; font-size: 1rem; font-weight: 700;  color: #000;}
.leftMenu > ul {width:93%;; max-height: 0; overflow: hidden;  border-radius:0px 0px 15px 15px;    background: #fff;transition: all 0.5s ease 0s; position: absolute;z-index: 99; }
.leftMenu > ul.open {max-height: 500px; overflow: auto; padding-bottom: 10px;transition: all 1.5s ease 0s;  background: #fff; box-shadow: 0 0 30px hsla(0,0%,46.7%,.2);}
 
}

/*----------------------------------------/
aside cssmenu樣式
----------------------------------------*/
#menu-line{position:relative;bottom:0px; left:0px;top:50px; right: 0px; margin-left: 5px; width: auto;height:3px;background:#E64A72;-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;}

/* Underline From Center */
#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:#E64A72; 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:99;}
#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 5px; border-radius:0px; background-color:transparent; -webkit-transition: all 0.3s; transition: all 0.3s;  }
#cssmenu > ul > li::after{content: ""; width: 1px; height: 18px; display: block; position: absolute; right: 0px; top:14px; 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:#f6f2f0;}  
#cssmenu > ul > li.active > a{color:#E64A72;   }  
#cssmenu > ul > li:hover > a {color:#E64A72;}
#cssmenu > ul > li.active:hover > a {color:#E64A72;}  
#cssmenu > ul > li > a{padding:10px 35px 10px 25px; font-size:1rem; 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:#f6f2f0;}
#cssmenu ul ul{position:absolute;left:-9999px; background:#fff; -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; 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:10px 20px;  width:160px; font-size:1rem; line-height:2rem;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:#776b62;}
#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:0;display:block; height:100%;width:100%;cursor:pointer;}
#cssmenu .submenu-button::after{content:'';position:absolute;top:20px;right:8px;display:block;width:1px;height:10px;background:#000000;z-index:99;}
#cssmenu .submenu-button::before{content:'';position:absolute;right:3px;top:24px;display:block;width:10px;height:1px;background:#000000;z-index:99;}
#cssmenu .submenu-button.submenu-opened:after{display:none;}
#cssmenu li:hover .submenu-button{display:none;}
@media (max-width:999px) {
#cssmenu{width:100%;margin-top:0px !important; position: relative; z-index:999;}
#cssmenu ul{width:100%; margin: auto; display:none; background:#ea5d84; position: absolute; }
#cssmenu ul ul{background:#fff0f4; box-shadow: none;}
#cssmenu ul ul ul{ background:#e7eaeb;  }   
#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 ul li a{ color: #fff; }
#cssmenu > ul > li:hover > a{color:#000;}
#cssmenu > ul > li.active > a{color:#000;   }  
#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:#E64A72;cursor:pointer;font-size:1rem;font-weight: 700;text-align: center; text-transform:uppercase; border-bottom:solid 1px #E64A72; 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;}
}




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

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

.cloud-wrap {width: 100%; margin: auto; padding:0px; z-index: 9;position: absolute; left:0px; top:30%; }
@media (max-width:767.98px) {
.cloud-wrap {display: none; } 
}
.footer-img{width: 100%;  position: relative;  margin-top: 0px; padding:0px; z-index: 0;}
.footer-img img{ width: 100%; max-width: 100%; height: auto;  -o-object-fit: cover;  object-fit: cover; -webkit-backface-visibility: hidden;  backface-visibility: hidden; transition: all 0.3s; position: relative; z-index: 1; }

/* Sweep To Right */
.hvr-sweep-to-right { cursor: pointer; display: inline-block; position: relative; vertical-align: middle;  -webkit-transform: translateZ(0); transform: translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-backface-visibility: hidden; backface-visibility: hidden; -moz-osx-font-smoothing: grayscale; -webkit-transition-property: color; transition-property: color; -webkit-transition-duration: 0.3s; transition-duration: 0.3s;}
.hvr-sweep-to-right:before { content: ""; position: absolute; z-index: -1; top: 0; left: 0; right: 0; bottom: 0; background: #000!important; -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.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease-out; transition-timing-function: ease-out;}
.hvr-sweep-to-right:hover, .hvr-sweep-to-right:focus, .hvr-sweep-to-right:active { color: #fff!important;}
.hvr-sweep-to-right:hover:before, .hvr-sweep-to-right:focus:before, .hvr-sweep-to-right:active:before { -webkit-transform: scaleX(1); transform: scaleX(1);}


/*table css*/
:root { --stickyBackground: #eee; --borderColor: #C9D1DC;}
.table-wrapper { width: auto; height: auto;  margin: 0px auto 30px 0px;  }
@media (max-width: 991.98px) {
.table-wrapper { width: 100%; height: 320px; border: 1px solid var(--borderColor); overflow: auto;}
}
.datatable { width: 100%; border-spacing: 0; margin: auto; border: 1px solid var(--borderColor);}
@media (max-width: 991.98px) {
.datatable { width: 100%;}
}

.datatable thead { font-size: 12px; line-height: 16px; letter-spacing: 0.05em; font-weight: 700; text-transform: uppercase;}
.datatable tbody { font-size: 1rem;}
.datatable th, .datatable td { font-size: 1rem; padding: 15px; white-space: nowrap;  border-bottom: 1px solid var(--borderColor);  border-right: 1px solid var(--borderColor);}
.datatable thead td{ color: #000;  font-weight: 700; }
/*.datatable tr:last-child td { border-bottom: none; border-right:none;}
*/
.datatable tr:nth-child(even) {background-color: #f5f5f5; }



/*STICKY ROW Normal css box-shadow works for the header as it is a single html element*/
.datatable tr.sticky { color: #000;  font-weight: 700; position: sticky;  top: 0;  z-index: 1;background: var(--stickyBackground); box-shadow: 0 0 6px rgba(0,0,0,0.25);}
/*STICKY COLUMN Avoid undesirable overlapping shadows by creating a faux shadow on the ::after psudo-element instead of using the css box-shadow property.*/
.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,0) 0%, rgba(0,0,0,0.08) 100%);}

 @media (max-width:320px) {
.datatable tr.sticky {   position: relative;  }
.datatable th.sticky,.datatable td.sticky {  position: relative; }
}


