/* 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:=================================*/
.color-white{color: #fff!important;  }
.txt-stork { -webkit-text-stroke: 1px #c2c3c4;  -webkit-text-fill-color: transparent;}
 .wrapper { position: relative; display: block; margin:0px auto; padding: 0px 20px; width: 100%;  max-width: calc((100% - 40px)/12*12 + 40px); }
@media (min-width:1025px) {
.wrapper { padding-right: 40px; padding-left: 40px;   }
}
@media (min-width: 1201px) and (max-width: 1400px) {
.wrapper { padding-right: 20px; padding-left: 20px; max-width: 100%;}
}
@media (min-width: 1401px) {
.wrapper { padding-right: 80px; padding-left: 80px; max-width: 1440px; }
}
.wrapper-full { position: relative; display: block; margin:0px auto; padding: 0px 20px; width: 100%;  max-width: calc((100% - 40px)/12*12 + 40px); }
@media (min-width:1025px) {
.wrapper-full { padding-right: 40px; padding-left: 40px;   }
}
@media (min-width: 1201px) and (max-width: 1400px) {
.wrapper-full { padding-right: 20px; padding-left: 20px; }
}
@media (min-width: 1401px) {
.wrapper-full { padding-right: 100px; padding-left: 100px;   }
}
 

.banner{width: 100%; max-width: 100%;height: auto; margin: 0px auto; padding:0px;  position: relative; }
.banner .slick-dots{ bottom: 20px}
.banner .slide { width: 100%; min-height:66vh;position: relative;}
.banner .slide .slide-img { width: 100%; height: auto;  overflow: hidden;}
.banner .slide .slide-img figure img { width: 100%; height: auto;  opacity: 1 !important;  -webkit-animation-duration: 6s; animation-duration: 6s; transition: all 1s ease;}

@media (min-width: 1600px) {
.banner .slide { width: 100%;  height: auto; display: block; position: relative;}
}
@media (max-width:1180px) {
.banner .slide {min-height: 56vh; }
 }
@media (max-width:1024px) {
.banner .slide {min-height: 37vh; }
 }
@media (max-width:840px) {
.banner .slide {  min-height:32vh; }
}
.banner .slide .slide-content { width: 55%; position: absolute;top:50%;  left: 10%; transform: translate(-10%, -38%);}
.banner .slide .slide-content-headings { color: #fff; text-shadow: 0px 1px 2px rgba(0,0,0,.2);  }
.banner .slide .slide-content-headings strong{   font-weight:700; font-style: normal; display: block;}
.banner .slide .slide-content-headings h2 { margin-bottom: 30px; font-size: 3.125rem; font-weight:700; line-height:2.5rem; margin: 10px 0; text-align: left;position: relative;z-index:3; }
.banner .slide .slide-content-headings h3 { font-size:1.125rem;line-height:3rem; font-weight:500; margin-bottom: 10px;   text-transform: uppercase;  }
  
.head-list{ width: 100%; display: flex; flex-wrap:wrap;align-items: flex-start; list-style: none;}
.head-list li{ width: calc(100%/3 - 10px);margin: 0px 5px; }
.head-list li .item{ display: flex; flex-wrap: wrap; justify-content: center; flex-direction: column; }

.head-list li .circle-box{ width: 120px; height: 120px; margin: 0px auto; border-radius:50%; background-color: rgba(255,255,255,.3); display: flex; flex-wrap: wrap; justify-content: center; align-items: center; }
.head-list li .circle-inner{ text-align: center; font-size: 1.5rem; font-weight: 700; letter-spacing: 2px; color: #fff ; margin: 0px auto; }
.head-list li .circle-txt{   text-align: center; margin: 0px auto; font-size:1rem;font-weight: 400; line-height: 1.35rem; color: #fff }
@media (min-width: 1400px) {
.banner .slide .slide-content { max-width: 500px; top:55%;  left:15%; transform: translate(-15%, -55%);}
.banner .slide .slide-content-headings { transform: scale(1.25)}
     
}
@media (min-width: 1900px) {
.banner .slide .slide-content { top:50%;  left:20%; transform: translate(-20%, -60%);}
.banner .slide .slide-content-headings { transform: scale(1.65)}
}

@media (max-width:840px) {
.banner .slide .slide-content {top:55%; left: 15%;}
.banner .slide .slide-content-headings h2 { font-size: 2rem;   line-height:2.35rem; margin-bottom: 10px; }
.banner .slide .slide-content-headings h3 { font-size:1rem; font-weight:700; line-height:1.5rem; letter-spacing: -0.1px;   }
}

@media (max-width:767.98px) {
.banner .slide .slide-content {width: 85%; left:15%; top:65%; transform: translate(-15%, -65%);}
.banner .slide .slide-content-headings h2 { font-size: 2rem;   line-height:2.35rem; margin-bottom: 10px; }
.banner .slide .slide-content-headings h3 { font-size:1rem; font-weight:700; line-height:1.5rem; letter-spacing: -0.1px;   }
.head-list{margin: 0px; padding: 0px;}

    
    .head-list li .item{  justify-content: flex-start;  }

    
 .head-list li .circle-box{ width: 100px; height: 100px; margin: 5px; }    
 .head-list li .circle-inner{  font-size: 1.15rem; font-weight: 700; letter-spacing: 2px; color: #fff ; margin: 0px auto; }
.head-list li .circle-txt{   text-align: center; margin: 0px auto; font-size:1rem;font-weight: 400; line-height: 1.35rem; color: #fff }
   
}
@media (max-width:640px) {
.banner .slide .slide-content-headings h2 { font-size: 1.75rem;}
.banner .slide .slide-content-headings h3 { font-size:.875rem;   }
}
@media (max-width:320px) {
.banner .slide .slide-content { left:18%;  }   
.banner .slide .slide-content-headings h2 { font-size: 1.5rem;}
.banner .slide .slide-content-headings .btnbox{margin: 0px;}
}

/* /////////// IMAGE ZOOM /////////// */
@media (min-width:769px) {
.banner .slide .slide-content-headings .animated { transition: all 0.3s ease;}
.banner .slide .slide-content-headings .animated-1 {  animation-delay:0.5s;  transition: all 0.3s ease;}
.banner .slide .slide-content-headings .animated-2 {  animation-delay:1s;   transition: all 0.3s ease;}
.banner .slider [data-animation-in] {opacity: 0;  -webkit-animation-duration: 6s; animation-duration:6s; transition: opacity 0.5s ease 0.3s;}
.zoomOutImage { -webkit-animation-name: zoomOutImage; animation-name: zoomOutImage;}    
}
@-webkit-keyframes zoomInImage {
from { transform: scale3d(1, 1, 1); }
to { transform: scale3d(1.1, 1.1, 1.1); }
}
@keyframes zoomInImage {
from { transform: scale3d(1, 1, 1); }
to { transform: scale3d(1.1, 1.1, 1.1); }
}
.zoomInImage { -webkit-animation-name: zoomInImage; animation-name: zoomInImage;}
@-webkit-keyframes zoomOutImage {
from { transform: scale3d(1.1, 1.1, 1.1); }
to {transform: scale3d(1, 1, 1); }
}
@keyframes zoomOutImage {
from { transform: scale3d(1.1, 1.1, 1.1); }
to { transform: scale3d(1, 1, 1); }
}

.text-content{ width: 100%; font-weight: 700; font-size:2rem!important; margin-bottom: 10px; color: #000!important; }
.text-content:first-letter{ color:#e60012;}
@media (max-width: 1199.98px) {
.text-content {  font-size:1.5rem!important;  }
}
@media (max-width:767.98px) {
.text-content{ font-size:1.25rem!important; margin-bottom: 5px;  }   
}

.main-wrap{ width: 100%; padding:0px; margin:0px auto; height: auto;  display: flex; flex-wrap: wrap;  }
.main-about{ position: relative; margin:0px; padding:80px 0px 40px 0px; display: flex; flex-wrap: wrap;justify-content: space-between; background-color: #fff;   }
.main-about .animated {  -webkit-animation-duration: 1.5s; animation-duration: 1.5s; transition: opacity 0.5s ease 0.3s;}
.block-pic {width:45%; height: auto;margin: 0; padding:0px;  }
.block {width:55%; height: auto;margin: 0; padding:0px;  position: relative;z-index: 1 }

.main-about .block-txt{width:80%; margin:60px auto; padding:0px 30px;}
.block-txt p { width: 100%; font-size:1rem;  font-size: min(max(3vw, .9rem), 1rem);line-height:1.875rem; font-weight: 400;  padding:5px;  color:#333;  }
.block-txt p strong{  display: block;  width: 100%; font-size: 1.313rem; line-height: 2rem; letter-spacing: 1.2px; font-weight:400;  padding:5px; margin-bottom: 10px; color: #333; }
.block-txt .block-btn{ width: 100%; margin: 5% auto;}
 
.card-1{ width:auto; height: auto;  position: relative; z-index: 1;  }
 .card-1 img {display: block; margin: 0; }
@media (max-width:1366px) {
.main-about .block-txt{width:100%; margin:0px auto; padding:0px 30px;}
.block p {  font-size:1rem;  line-height:1.75rem;  }
}
@media (max-width: 1280px) {
 .main-about{ padding:40px 0px;}
.block-txt{width:100%; padding:20px;  }
  }
@media (max-width: 1160px) {
.main-about{ padding:40px 0px; }
.main-about .block {width:65%;margin: 0px; padding: 0px; display: block; }  
.main-about .block-pic {width:35%; height: auto;margin: 0; padding:0px;  }
}
@media (max-width: 1024px) {
.main-about{ padding:40px 0px; }
.main-about .block {width:70%;margin: 0px; padding: 0px; display: block; }  
.main-about .block-pic {width:30%; height: auto;margin: 0; padding:0px;  }
}
 
@media (max-width:767.98px) {
.main-about{ padding: 0px; }
.main-about .block {width:100%;  }  
.main-about .block-pic {width:100%;  }
}

.icon-list{width: 100%; margin:0px auto; padding:30px 0px; display: flex; flex-wrap: wrap; list-style: none; }
.icon-list li{width:calc(100%/3 - 30px); margin:0px 15px; transition: all 0s ease 0s;position: relative;z-index: 1 } 
.icon-list li .item{ width: 100%; margin:auto; padding:10px;  display:flex; flex-wrap: wrap; align-items:center; position: relative; }
.icon-list li:before{ content: "";width: 100%; height: 100%; position: absolute;  z-index: -1;left:0px; top:0px; background-color: #fff; border-radius:10px; border: solid 1px #6fbb28}
.icon-list li:after{ content: "";width:calc(100% + 10px); height: 70%; position: absolute;  z-index: -2;left:-5px; bottom:-5px; background-color: #6fbb28; border-radius:10px;  }

.icon-list li:nth-child(1):before{ border: solid 1px #6fbb28}
.icon-list li:nth-child(2):before{ border: solid 1px #408b5c}
.icon-list li:nth-child(3):before{ border: solid 1px #33cc99}

.icon-list li:nth-child(1) h3{ color:#6fbb28}
.icon-list li:nth-child(2) h3{ color:#408b5c}
.icon-list li:nth-child(3) h3{ color:#33cc99}

.icon-list li:nth-child(1):after{background-color: #6fbb28;}
.icon-list li:nth-child(2):after{background-color: #408b5c;}
.icon-list li:nth-child(3):after{background-color: #33cc99;}

.icon-list li .item-txt{width:75%; margin:auto;padding: 0px 0px 0px 10px; }
.icon-list li .item-pic{width:25%; margin:auto;}
.icon-list li h3 { width: 100%; font-size:1.125rem; line-height: 1.75rem; font-weight:500; word-wrap: normal;  }  
.icon-list li p { padding: 0px; font-size: 0.875rem; line-height: 1.15rem; font-weight:400; color:#777;   }  
@media (max-width: 1280px) {
 .icon-list li h3 span{ font-size:1rem;  }
.icon-list li p{font-size:.875rem; }
}
@media (max-width:767.98px) {
.icon-list{  padding:30px 0px; }
.icon-list li{width:100%; margin:10px auto;  } 
}

 

.bg-product{background: url("../images/index/bg-pro.jpg") no-repeat left bottom #f5f5f5; background-size: cover;}
 


 
 .produt-wrap{width:100%; padding:100px 0px 150px 0px;margin:0px auto; display: flex; flex-wrap: wrap; justify-content: flex-end;   background-color:#f5f5e4; position: relative}
@media (max-width: 1366px) {
.produt-wrap{ padding:40px 0px 20px 0px;  }
}
@media (max-width: 1160px) {
.produt-wrap{padding:40px 0px 0px 0px; align-items: center;  }
}
@media (max-width:767.98px) {
.produt-wrap{padding:0px;  }
}



.produt-wrap .block-txt{width:80%; margin:0px auto 60px auto; padding:0px 30px;}
.produt-wrap .block-pic img{  border-radius:0px 30px 30px 0px; }

@media (max-width:767.98px) {
.produt-wrap .block-txt{width:100%; margin:0px auto 60px auto; padding:30px;}
.produt-wrap .block-pic { width:100%;}
.produt-wrap .block {width:100%;}

}



.grid-box{ width: 60%; background-color:#6fbb28; position: absolute; right: 0px; bottom:60px; z-index: 1; border-radius:50px 0px 0px 50px;   }

.grid-list{ width: 100%; display: flex;flex-wrap: wrap; padding:30px 40px 0px 40px; list-style:none; }

.grid-list li {width:calc(100%/2 - 30px ); margin: 0px 15px; transition: all 0s ease 0s; } 
.grid-list li a{width: 100%; display: flex; flex-wrap: wrap; align-items: center; color: #000; text-align: left;}
.grid-list li a h3 { width:calc(100% - 15px); margin: 0px 0px 10px 0px; padding:0px 0px 10px 15px;  font-size: 1.375rem; letter-spacing: 2px; font-weight:600;  text-align: left; color:#fff;overflow: hidden;   white-space: nowrap;  cursor: default;position: relative;}        
.grid-list li a h3::before { content: ''; position: absolute; z-index: 2; left: 0; bottom: 0; height: 2px; width: 30%; background-color:#f8b500;}
.grid-list li a h3::after { content: ''; position: absolute; left: 0; bottom: 0; height: 2px; width: 100%; background-color:#fff;}

.grid-list li ul{list-style:none; margin: 10px 0px; padding: 0px 0px 0px 10px;  display: flex; flex-wrap: wrap;}
.grid-list li ul li{ margin-bottom: 10px; color:#fff;} 
.grid-list li ul li a{ letter-spacing: 2px; font-weight: 500; color:#fff;} 
.grid-list li ul li:hover  a{  color:#f8b500;} 
 
@media (max-width: 1366px) {
 .grid-box{  width: 90%;  position: relative; margin-top: 40px; }
}
@media (max-width: 992px) {
.grid-box{  width: 100%; border-radius:0px;margin-bottom: 0px;}
.grid-list li {width:100%; margin: 0px auto;  } 
  
}


/*----------------------------------------/
產品清單頁  cms-product-cate  
----------------------------------------*/
.cate { width:100%; margin:0px;  padding:0px; display: flex; flex-wrap: wrap; position: relative;z-index: 0;}
.cate li {width:100%;height: auto; margin:0px; padding:0px; position: relative; z-index: 1; list-style: none;  transition: all 0.3s linear 0s; overflow: hidden;}
.cate li img { width:100%; transition: all 0.3s ease;overflow: hidden;  opacity:1;  }
.cate li:hover img {  transition: all 0.3s ease; }
.cate li figure {display: block; vertical-align: top;  width:100%; height:auto; margin: 0px; position: relative;z-index: 3; transition: all 0.3s linear 0s; overflow: hidden;} 
.cate li figure:before {  content: "";  width:calc(100% - 0px); background-image: linear-gradient(to bottom, rgba(17,117,75,.5) 20%, rgba(0,0,0,1)  100%);opacity: 0; position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 1; transition: all 0.3s ease;}
.cate li .inner-body {width: 100%;  position: absolute;z-index: 9; left: 50%; top:35%; padding: 20px; -webkit-transform: translate(-50%, -15%); transform: translate(-50%, -15%); -webkit-box-sizing: border-box;box-sizing: border-box;   transition: 375ms cubic-bezier(0.7, 0, 0.3, 1); text-align: center;  }
.cate li  h3 {  margin-bottom: 30px; font-size:2.625rem;  font-size: min(max(3.5vw, 1.25rem),2.625rem);  letter-spacing: 3px;  line-height: 3rem; font-weight:700; text-align: center; color:#fff;  -webkit-text-stroke: 1px rgba(255,255,255,.15); text-shadow: 0px 2px 3px rgba(0,86,57,.5);  }
.cate li  p {  margin-bottom: 5px; font-size:1.5rem;  font-size: min(max(3.5vw, 1.125rem),1.5rem);  letter-spacing: 3px;line-height: 2rem;    font-weight:500; text-align: center; color:#fff;  -webkit-text-stroke: 1px rgba(255,255,255,.15); text-shadow: 0px 2px 3px rgba(0,86,57,.5);  }
@media (max-width:1024px) {
.cate li h3 {  line-height: 2rem;  } 
}
@media (max-width: 992px) {
.cate { margin-top: -56px;}
}
@media (max-width: 767.98px) {
.cate li{width:100%;height: auto; margin:0px;}
.cate li h3 { margin-bottom: 10px; font-size:1.35rem; line-height: 1.75rem;}
}

@media (max-width:280px) {
.cate li .inner-body { left: 50%; bottom:0; -webkit-transform: translate(-50%, 0); transform: translate(-50%, 0);  } 
}

.bg-cate{ background: -webkit-gradient(linear, left bottom, left top, color-stop(70%, #e7ecf0), color-stop(70%, #fff), to(#fff));  background: linear-gradient(0deg, #e7ecf0 70%, #fff 70%, #fff 100%); }

/* ==== 底圖 === */
.bg-background { background-image: attr(src url); background-repeat: no-repeat; background-size: cover;background-position:center bottom; position: absolute;z-index: 0; top:0px; left: 0; right: 0; bottom: 0; line-height: 0;  width: 100%;   }
@media(max-width: 992px) {
.bg-background {background-position:center;}
}

/*cms-Title Styles 樣式
=================================*/
.title { width: 100%; height: auto; margin:0px auto 30px auto;padding: 0px; display: flex;flex-wrap: wrap; justify-content: center; flex-direction:column; position: relative; } 
.title h1{ width: 100%;display: block;margin: 0; font-size: 2.5rem; font-size: min(max(3vw, 1.5rem), 2.5rem); font-weight:700; color:#80c342;  letter-spacing:1px;  word-wrap: normal; }
.title h2{ width: 100%;display: block;margin: 0; font-size: 2rem; font-size: min(max(3vw, 2rem), 2rem); font-weight:700; color:#000;  letter-spacing:1px;  word-wrap: normal; }
.title h3{ width: auto;  margin:auto 0; font-size: 1.15rem; font-size: min(max(3vw, .9rem), 1.15rem);font-weight:700; word-wrap: normal;color:#9c9a9a;font-family: "Montserrat", sans-serif;}
.title h4{ margin:10px auto; font-weight: 700; color:#bea570;  }
.title p{ margin:10px auto;  font-weight: 400; line-height: 1.35rem;  color:#333; }

/*v-title-2  樣式
=================================*/
.title-2 { width:100%; height: auto;  margin:30px auto; padding:0px; text-align: left; position: relative;  }
.title-2 span{ margin:0px auto; font-size: 2rem; color:#181a86;  font-weight:300; font-style: italic; font-family: 'Montserrat', sans-serif; position: relative; }
.title-2 h2{ margin:0px 0px 15px 0px; font-size:3.75rem; font-weight: 700;  word-wrap: normal;  }
.title-2 p{ margin:0px auto;font-size: 1.15rem;  line-height:1.75rem;   letter-spacing:1px; color:#777;   }
.title-2 strong{color:#181a86;}

@media (max-width: 1440px) {
.title-2  h2{font-size:2.875rem;}       
.title-2 span{ font-size: 1.75rem;  }
.title-2 p{font-size: 1rem;}       
}
@media (max-width: 1180px) {
.title-2 h2,.title-2 h3,.title-2 p{ margin:15px auto; }
.title-2 h2{ font-size:2.5rem;}   
}
 
@media (max-width: 768px) {
.title-2 p{ line-height: 1.35rem;}   
.title-2 span{  line-height: 1rem;   }    
}

@media (max-width: 640px) {
.title-2 { padding:0px; }
.title-2 p{ font-size: .9rem; line-height: 1.15rem; }      
}
/*v-title-2  樣式
=================================*/
.title-3 { width:100%; height: auto;  margin:30px auto; padding:0px; text-align: center; position: relative;  }
.title-3 span{ margin:0px auto; font-size: 2rem; color:#181a86;  font-weight:300;   font-family: 'Montserrat', sans-serif; position: relative; }
.title-3 h2{ margin:0px 0px 15px 0px; font-size:3.75rem;  font-weight: 700; word-wrap: normal;  }
.title-3 p{ margin:0px auto;font-size: 1.15rem;  line-height:1.75rem;   letter-spacing:1px; color:#777;   }
.title-3 strong{color:#181a86;}

@media (max-width: 1366px) {
.title-3 p{  font-size: 1.5rem;   }
}
@media (max-width: 1180px) {
.title-3 h2{font-size:2rem;}   
.title-3 p{font-size: 1rem;}   
.title-3 h2,.title-3 h3,.title-3 p{ margin:15px auto; }
}
 
@media (max-width: 768px) {
.title-3 p{ line-height: 1.35rem;}   
.title-3 span{  line-height: 1rem;   }    
}

@media (max-width: 640px) {
.title-3 { padding:0px 10px; }
.title-3 p{ font-size: .9rem; line-height: 1.15rem; }      
}
 
 /***** btn **** 
=================================*/
.btn-btnbox {position: relative;z-index:9; display: flex;  justify-content: center;  width: 100%; height: auto; margin:0px;  transition: all 1s;}  
.btnbox {position: relative;z-index:99; display: flex; width: 100%; height: auto; margin:40px 0px 0px 0px;  transition: all 1s;}  
/*mousey Styles====*/
.scroll-downs { position: absolute; top: -30px; right: 0; bottom: auto; left: 0; margin:auto; width :20px; height: 44px;z-index: 9;}
.mousey { width: 2px; padding: 5px 8px; height: 24px; border: 1px solid #0070bd; border-radius: 25px; opacity: 0.75; box-sizing: content-box; position: relative; }
.mousey:after{content: "";position: absolute;top:38px; left:8px;width: 1px; height:30px; background:#0070bd;}
.scroller { width: 2px; height: 8px; border-radius: 25%; background-color:#0070bd; animation-name: scroll; animation-duration: 2.2s; animation-timing-function: cubic-bezier(.15,.41,.69,.94); animation-iteration-count: infinite;}
@keyframes scroll {
0% { opacity: 0; }
10% { transform: translateY(0); opacity: 1; }
100% { transform: translateY(15px); opacity: 0;}
}
/*white border
=================================*/
 .btn-01{ cursor: pointer; width:200px; height:2.75rem; padding:0px 30px;margin: 0px; line-height:2.75rem; display: flex;justify-content: center; align-items: center;  position: relative; border: solid 1px #fff;   background-color:transparent; z-index: 1; overflow: hidden; }
.btn-01 span { display: flex;  transform-origin: center left; transition: color 0.3s ease;position: relative;z-index:1; font-weight: 700; color: #fff; text-transform: uppercase; letter-spacing: 2px;}
.btn-01 em {position: absolute;width:60px; height:25px; right:20px;top: 20%; transition: all 0.3s ease; background: url("../images/icon/arrow-right-f.svg") no-repeat right top; z-index:1;  filter: brightness(100%) invert(1) }
.btn-01:before,.btn-01:after {content: '';background:#fff;height:100%; width: 0;position: absolute;  transition: 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);}
.btn-01:before { top: 0; left: 0; right: auto;  }
.btn-01:after { bottom: 0; right: 0; left: auto; }
.btn-01:hover:before { width: 100%; right: 0; left: auto;}
.btn-01:hover:after {  width: 100%; left: 0; right: auto;}
.btn-01:hover span{color: #181a86;}
.btn-01:hover em{ transform:translateX(20px); filter:none}

/*cms-btn Styles 1
=================================*/
.btn-02{ cursor: pointer; width:250px; height:60px; padding:10px 30px;margin: 0px; line-height:2.75rem; display: flex;justify-content: center; align-items: center;  position: relative;     background-color:#6fbb28; z-index: 1; overflow: hidden; border-radius:30px;  }
.btn-02 span { display: flex;  transform-origin: center left; transition: color 0.3s ease;position: relative;z-index:1; font-weight: 700; color: #fff; text-transform: uppercase; letter-spacing: 2px;}
.btn-02 em {position: absolute;width:60px; height:25px; right:20px;top: 30%; transition: all 0.3s ease; background: url("../images/icon/arrow-right-f.svg") no-repeat right top; z-index:1;   }
.btn-02:before,.btn-02:after {content: '';background:#f8b500;height:100%; width: 0;position: absolute;  transition: 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);}
.btn-02:before { top: 0; left: 0; right: auto;  }
.btn-02:after { bottom: 0; right: 0; left: auto; }
.btn-02:hover:before { width: 100%; right: 0; left: auto;}
.btn-02:hover:after {  width: 100%; left: 0; right: auto;}
.btn-02:hover span{color: #fff;}
.btn-02:hover em{ transform:translateX(20px); filter: brightness(100%) invert(1)}



