/* 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;}
main{background-color: #f5f5f5}
.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%;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 {  }
.banner .slick-dots{ bottom: 20px}
}
@media (max-width:840px) {
.banner .slide {   }
}
.banner .slide .slide-content { width: 55%; position: absolute;top:38%;  left: 10%; transform: translate(-10%, -38%);}
.banner .slide .slide-content-headings {   color: #000; text-shadow: 0px 1px 2px rgba(0,0,0,.2);  }
.banner .slide .slide-content-headings strong{color: #e60012;}
.banner .slide .slide-content-headings h2 { width: auto; font-size: 2.375rem; font-weight:700; line-height:2.5rem; margin: 10px 0; text-align: left; position: relative;z-index:3 }
.banner .slide .slide-content-headings h2:after { content: ""; width:80%; height: 6px; background-color: #e60012; position: absolute;z-index: -1; left:0px; bottom:4px; }
.banner .slide .slide-content-headings p { font-size:1rem; font-weight:700; line-height:2rem;   margin: 3px 0; text-align: left;  color: #000;}
.banner .slide .slide-content-headings span { margin: 10px 0px ;text-align: left  }
.banner .slide .slide-content-headings h3 {  font-size:2rem; font-weight: 700; margin-bottom: 10px; color: #000; }
@media (min-width: 1400px) {
.banner .slide .slide-content { max-width: 500px; top:42%;  left:15%; transform: translate(-15%, -42%);}
.banner .slide .slide-content-headings { transform: scale(1.2)}
}
@media (min-width: 1900px) {
.banner .slide .slide-content {  top:45%;  left:15%; transform: translate(-15%, -45%);}
.banner .slide .slide-content-headings { transform: scale(1.3)}
}

@media (max-width:840px) {
.banner .slide .slide-content-headings span img{ width: auto; max-height: 30px;  }
}
@media (max-width:768px) {
.banner .slide .slide-content { left:10%; top:35%; transform: translate(-10%, -35%);}
.banner .slide .slide-content-headings p { font-size:1rem; font-weight:700; line-height:1.5rem; letter-spacing: -0.1px;   }
}

@media (max-width:767.98px) {
.banner .slide .slide-content { width: 75%;left:10%; top:45%; transform: translate(-10%, -45%); }    
.banner .slide .slide-content-headings h2 { font-size: 2rem;   line-height:2.35rem; margin-bottom: 10px; }
.banner .slide .slide-content-headings h3 {  font-size:1.75rem;  }    
}
@media (max-width:640px) {
.banner .slide .slide-content-headings h2 { font-size: 1.75rem;}
.banner .slide .slide-content-headings p { font-size:.875rem;   }
}
@media (max-width:320px) {
.banner .slide .slide-content-headings h2 { font-size: 1.5rem;}
.banner .slide .slide-content-headings h3 {  font-size:1.125rem;  }    
}

/* /////////// IMAGE ZOOM /////////// */
@media (min-width:769px) {
.banner .slide .slide-content-headings .animated { transition: all 0.5s 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:140px  0px; display: flex; flex-wrap: wrap;justify-content: space-between; background-image: linear-gradient(to top, #d5d4d0 0%, #d5d4d0 1%, #fff 31%, #fff 75%, #efeeec 100%);}
.main-about .animated {  -webkit-animation-duration: 1.5s; animation-duration: 1.5s; transition: opacity 0.5s ease 0.3s;}
.block {width:50%; height: auto;margin: 0; padding:0px;  display: flex; flex-wrap: wrap;  position: relative;z-index: 1 }
.block-txt{width:80%; margin:60px auto; padding:0px 30px;}
.block p { width: 100%; font-size:1.125rem; font-size: min(max(3.5vw, .9rem), 1.125rem); line-height:2rem; font-weight: 400;  padding:5px; margin-bottom: 50px;  color:#3f3a39;  }
.block 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: #3f3a39; }
.block-box{ width: 80%;bottom: 0px;left:0px;  position: absolute; z-index: 9; }
.post-btn{  margin-left:62.5%; }
.card-1{ width:auto; height: auto; position: relative; z-index: 1; display: flex; flex-wrap: wrap; align-items: flex-end; }
.card-2{ width: auto; margin: 0px; padding: 0px;    top:20px; right:0px; position: absolute; z-index: 2; display: flex; flex-wrap: wrap; }
.card-font{ width: 50%;  height: auto;  top:20px; left:0px; position: absolute; z-index: 3;  }
.card-1 img,.card-2 img{display: block; margin: 0; box-shadow: 0px 5px 16px rgba(0,0,0,.3)}
 
@media (max-width: 1440px) {
 .card-font{ width:60%;top:15%; }
 .card-1{ width: 70%;    }
 .card-2{ width: 70%; top:20px; right:-100px; }
}
@media (max-width: 1366px) {
.main-about{ padding:60px 0px;}
 .card-font{ top:22%; }
}
@media (max-width: 1280px) {
.main-about{ padding:60px 0px 60px 30px;}
.block-txt{width:100%; padding:20px;  }
.card-1{ width: 70%;margin-bottom: 4%; }
}
@media (max-width: 1180px) {
.main-about{ padding:60px 0px 0px 30px;}
.card-1{  margin-bottom: 19%; }
}

@media (max-width: 1024px) {
.main-about{ padding:20px}    
.block {width:100%;margin: 0px; padding: 0px; }  
.block-txt{ padding:0px 20px;  }    
.block-box{ width: 100%;}
.card-1{  margin-bottom: 0; }
.card-font{ position: relative;top:0px}
.card-2{ width: 70%; top:20px; right:-18%; }
}
@media (max-width:767.98px) {
.main-about{ padding:40px 0px; }
.block-txt{ margin:20px 0px; padding: 0px 20px;}   
}
@media (max-width:640px) {
.main-about{ padding:0px; }
.block p { padding:5px 0px; margin-bottom: 20px; line-height: 1.5rem;  }    
.block-txt .btn-02{margin-bottom: 20px;}
}

.bg-product{background: url("../images/index/bg-pro.jpg") no-repeat left bottom #f5f5f5; background-size: cover;}
.bg-applaction{position:relative;z-index: 0; background-color: #fff}
.bg-applaction:after{ content: ""; width: 100%; height: 40vh; position:absolute; z-index: 0; left:0px; bottom:0px;background: #ededed;}
@media (max-width: 1440px) {
.bg-applaction:after{  height: 52vh; }
}
@media (max-width: 1024px) {
.bg-applaction:after{  height: 44vh; }
}
/***** product  **** 
=================================*/
.produt-wrap{width:100%; padding:50px 0px;margin:0px auto;   }
@media (max-width: 1440px) {
.produt-wrap{ padding:20px 0px;  }
}
@media (max-width: 1024px) {
.produt-wrap{padding:30px 0px; }
}

.slider-nav{  width: 100%; padding:0px; margin:0px; display: flex;flex-wrap: wrap; }


.grid-w100{width: 100%; }
.grid-w40{width:40%; }
.grid-w45{width:45%; }
.grid-w50{width:50%;}
.grid-w55{width:55%;}
.grid-w60{width:60%; }
.grid-w80{width:80%;}

.grid-left{width:49.5%; }
.grid-right{width:50.5%; }


@media (max-width:844px) {
.grid-left{width:100%; margin-bottom: 15px; }
.grid-right{width:100%; }

}

@media (max-width: 767.98px) {
.grid-w50{width:100%;}  
.grid-w80{width:100%;}
.grid-w50 .grid-w50{width:50%;}   
}

/*產品清單頁  cms-main-.product-item  
----------------------------------------*/
.product-item { width:100%; margin:0px auto;  padding:0px 10px; display: flex; flex-wrap: wrap; position: relative; }
.product-item li { width:calc(100%/2 - 16px); margin:0px 8px 24px 8px; padding:0px; display: flex; flex-wrap: wrap;align-self: flex-start;  align-content: flex-start; align-items: flex-start; z-index: 1; list-style: none;  transition: all 0.3s linear 0s; position: relative;}
.product-item li.first {  width:100%!important; margin:0px 0px 0px 0px;   }
.product-item li figure{  width: 100%;height: 0;  padding-bottom: 120%; overflow: hidden; position: relative; z-index: 1; transition: all 0.5s ease 0s; }
.product-item .inner{ width:100%;  height:auto;  position:absolute; bottom:0px; left:0px; margin:0px auto; padding:20px; text-align:left;z-index:3;transition: all 0.5s ease 0s; }
.product-item .inner h3{ width: 100%;margin: 10px 0px 0px 0px;  font-size:1.25rem;font-weight:700; overflow: hidden;white-space: pre-line;word-break:normal; word-wrap:break-word; text-overflow: ellipsis;  display: -webkit-box;  -webkit-line-clamp: 3;  -webkit-box-orient: vertical; }
.product-item .inner a h3  {  color:#000; }
.product-item .inner p{ margin-top: 10px; font-size:.875rem;font-weight:700; line-height: 1rem;  color:#312927; } 
.product-item li.first {  width:100%!important; margin:0px;   }
.product-item li.first .inner h3{  font-size:2.15rem;  }
.product-item li.first .inner p{ font-size:1.15rem; } 
.product-item li:hover h3,.product-item li:hover p{ color:#fff; }
.product-item li:before { content: ""; position: absolute; z-index: 2; top: 0; left: 0; right: 0; bottom: 0;background:rgba(231,20,26,.85); opacity: 0; transition: all 0.5s ease 0s;  }
.product-item li:hover::before { color: #fff; opacity: 1;}    
.product-item li:hover .inner{ transform: translateY(-50%);transition: all 0.5s ease 0s;  }
 
@media only screen and (max-width:1180px){
 .product-item .inner h3{   font-size:1rem; }
}
 
@media (max-width: 767.98px) {
.product-item { padding:0px;}    
.product-item li { width: calc(100% / 2 - 10px); margin: 10px 5px; height: auto; position: relative; transition: all 0.3s linear 0s; z-index: 1;   }
.product-item li:nth-child(3n){margin-right: auto;}
.product-item li:nth-child(2n){margin-right: auto;}
  
.product-item .inner{  padding: 0px 10px}    
.product-item li.first .inner h3{  font-size:1.5rem;  }  
.product-item li.first .inner p{   line-height:1.35rem;  }  
.product-item  .inner h3{  font-size:.875rem;  }      
.product-item .inner p{ margin-top: 0px; font-size:11px;font-weight:700; line-height: .8rem;    }   
}

 
.grid-card { display: grid; width: 100%; margin: auto; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 30px; padding: 15px 0px;}
.grid-card > .grid-w30 {  aspect-ratio: 4 / 3;  width: 100%;  }
.grid-w30 img {  width: 100%; height: auto;   object-position: center;}

.cms-slider-for { width:60%;  height: auto; margin:30px auto; position: relative;z-index: 1}
.cms-slider-for.bg{position: relative;}
.cms-slider-for.bg:after{ content: ""; width: 100%; height: 40vh; position:absolute; z-index: 0; left:-25vw; bottom:0px;background: #ededed;}
.slider-for{ margin: 0px; padding: 0px;position: relative;z-index: 9}

 

.slider-for .slick-prev,.slider-for .slick-next{top:auto; bottom:0px;}
.slider-for .slick-prev{left:auto; right: 60px;}
.slider-for .slick-next{left:auto; right:0px;}


.cms-slider-nav { width: 40%;  height: auto; margin:30px auto; padding:0px; position: relative; z-index: 1}
.cms-slider-nav a.btn-02{ margin:30px auto;}




@media (max-width:840px) {
.cms-slider-for { width:100%; height: auto; margin:0px auto; padding: 0px;  order: 1;}
.cms-slider-nav {  width:100%;  height: auto; margin:0px auto; padding:0px;order: 2;  }
}
@media (max-width:767.98px) {
.slider-nav{ padding:0px;  }   
.slider-for li figure,.slider-for li figure img{ padding:0px;}   
.slider-for .slick-prev{left:auto; right: 40px;}
 
    
}

.applaction-txt{ margin-top: 20%;  padding: 20px 60px;}
.applaction-txt p,.case-txt p{font-size:1.125rem; font-size: min(max(3.5vw, .9rem), 1.125rem);}
.case-txt{ padding: 20px 60px;}
.case-txt p{ overflow: hidden; white-space:pre-wrap;word-break: normal;word-wrap:break-word;text-overflow: ellipsis;  display: -webkit-box;  -webkit-line-clamp: 4;  -webkit-box-orient: vertical;}
.inner-item { width: 100%; margin-bottom: 30px; display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: center; position: relative}
.inner-img {  margin:0;width: 100%;height:auto; position: relative;}
.inner-img img { margin: auto;  width:50%; max-width: 100%; height:auto;  }
.inner-item h3{ margin:5px 0px;   font-size:1.135rem; color:#d90012; font-weight: 700;overflow: hidden; white-space:pre-wrap;word-break: normal;word-wrap:break-word;text-overflow: ellipsis;  display: -webkit-box;  -webkit-line-clamp: 4;  -webkit-box-orient: vertical; }
@media (max-width:1024px) {
.applaction-txt{ margin-top: 10%;  padding: 20px 40px;}
.applaction-txt p,.case-txt p{font-size:1rem; }   
}
@media (max-width:767.98px) {
.applaction-txt{ margin-top:0;  padding: 20px 0px;}
 .applaction-txt p,.case-txt p{font-size:.875rem; }   
}

.application{position: relative; z-index: 9;}
.application.bg:after{ content: ""; width:65%; height: 40vh; position:absolute; z-index: 0; left:-25vw; bottom:0px;background: #ededed;}
 
.application-item { width:100%; margin:30px auto; padding:0px; position: relative; z-index: 99;}
.application-item li { width:calc(100%  - 30px); margin:50px 15px;padding:0px; list-style: none;   transition: all 0.5s ease 0s;  position: relative; z-index: 9;}
.application-item li .item{width: 100%; display: flex; flex-wrap: wrap;  align-items: flex-start;}
.application-item li .item-inner{width:40%; margin: 0px; padding:20px 40px;  display: flex; flex-wrap: wrap; justify-content: flex-start; align-content: flex-start  } 
.application-item li .item-pic{ width: 60%; display: flex; flex-wrap: wrap; justify-content: center; align-items:center; background-color: #000 }
.application-item li .item-pic figure{ width: 100%; padding-bottom: 56.25%; height: 0; overflow: hidden; position: relative;  z-index: 1; transition: all 0.5s ease 0s;  }
.application-item li .item-pic figure img { max-width: 100%; height: auto; margin: auto; transition: all 0.5s ease 0s;   }
.application-item li .item-pic figure:hover img { transform: scale(1.1);  opacity: 1; }
.application-item li h3{flex: 0 0 100%; padding:0px; margin:0px 0px 20px 0px;width: 100%; font-weight:700; font-size:1.5rem;  line-height:2.25rem; color:#d90112;  word-break: normal; word-wrap: break-word; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical;overflow: hidden; }
.application-item li p{ flex: 0 0 100%;   margin:5px 0px; padding: 0px;  font-size:1rem; line-height: 1.75rem;  font-weight: 400; color: #727272;   overflow: hidden; word-break: normal; word-wrap: break-word; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical;} 
.application-item li .listBox{width:100%; display: flex; align-items: center; flex-wrap: wrap;justify-content: space-between; padding: 20px 0px;position: relative; }
.application-item .slick-prev,.application-item .slick-next{top:auto; bottom:13.75%;}
.application-item .slick-prev{left:calc(56% - 60px); right: auto;}
.application-item .slick-next{left:56%; right:auto;}

.btnbox {position: relative;z-index:99; display: flex;  width: 100%; height: auto; margin:-80px 0px 0px 65%;  transition: all 1s;}  

/*logo*/
.application-item li .inner-img {  margin:0 auto 20px auto;width: 50%; max-width: 200px; height:auto; position: relative;}
.application-item li .inner-img img { margin: auto;  width:100%; max-width: 100%; height:auto;  }
@media (max-width:1024px) {
.application-item li {margin:0px 15px;}   
.application-item .slick-prev,.application-item .slick-next{top:auto; bottom:23%;}   
.application-item .slick-prev{left:calc(55% - 60px); right: auto;}
.application-item .slick-next{left:55%; right:auto;}   
.btnbox { margin:-80px auto auto auto;justify-content: center;}  
}

@media (max-width:840px) {
.application-item li .item-inner{width:100%; margin: 0px; padding:20px 40px;   } 
.application-item li .item-pic{ width:100%; }   
.application-item .slick-prev,.application-item .slick-next{top:30%; bottom:auto;}
.application-item .slick-prev{left:0px; right: auto;}
.application-item .slick-next{left:auto; right:0px;}
 .btnbox { margin:0px auto auto auto; }  
   
}
@media (max-width:767.98px) {
.application-item li { width: 100%; margin:0px auto;padding:0px; }
.application-item li .item-inner{ padding:0px;}   
.application-item li h3{  font-size:1.125rem; line-height: 1.5rem;  }
.application-item li p{   font-size:.875rem;  } 
    
.application-item .slick-prev,.application-item .slick-next{top:33%; bottom:auto;}   
.application-item .slick-prev{left:auto; right: 40px;}
.application-item .slick-next{left:auto; right:0px;}   
    
}
 
 /*-------------------*/
/***** 最新消息 *****/
/*------------------*/
.news .main-wrap{padding: 50px 0px; height: auto; }
@media (max-width:1024px) {
.news .main-wrap{padding:0px; }   
}

@media (max-width:844px) {
.news .main-wrap{  }   
}

.news-first{width:calc(65% - 20px); padding-right: 20px;  }
.news-end{width:35%;  }
 

.new-tag { width:auto;; font-size: 0.875rem; font-weight: 700; }
@media (max-width: 768px) {
.new-tag {  font-size: 0.75rem; }    
}
.new-tag a{color:#fff;   padding:0px 10px    }
 /*--分類new-tg --*/
.new-tag-01{color:#fff; background:#e60013;}
.new-tag-02{color:#fff; background:#000;}
.new-tag-03{color:#fff; background:#ccc;}

 
.new-tag.white { color: #bca480; border: 1px solid #bca480}
a.new-tag:hover {color:#fff; background:#bca480;}

.news-list{width: 100%; height: auto; margin: 0px;  padding: 0px;  position: relative; z-index: 1; }
.news-list li{ width:100%; padding:0px 10px;margin: 0px 0px 10px 0px; box-sizing: border-box; list-style: none;  border-bottom: solid 1px #dcdbdb;transition: all 0.5s ease 0s; }
.news-list figure img { max-width:100%; height: auto; object-fit: cover; margin: auto; display: block; border-radius:0px;   transition: all 0.5s ease-in-out;}
.news-list figure  {width: 100%; padding-bottom: 66.66%; height: 0; overflow: hidden; position: relative;  z-index: 1; transition: all 0.5s ease 0s; transition: all 0.5s ease-in-out;}
.news-list figure:hover img { opacity: .75;border-color: #df7475;  transform: scale(1.15); }
.news-list .news-item  {width:100%; height: auto; padding: 0px; display: flex;  flex-wrap: wrap;    }
.news-list .news-pic  {width:100%; height: auto; padding: 0px; overflow: hidden; position: relative;border-radius:0px;background-color: #000;  }
.news-list .news-box{position: relative;width: 100%; margin: 0px;padding:5px 10px;  box-sizing: border-box;display: -ms-flexbox; display: flex; flex-wrap: wrap; }
.news-list h3 {position: relative;width: 100%; height: 48px;  margin:0px 0px 15px 0px; font-size:1.188rem; line-height:1.5rem; font-weight:700; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp:2; -webkit-box-orient: vertical; overflow-wrap: break-word; }
.news-list a h3 { color:#000; }
.news-list a:hover h3,.news-list a:hover p{ color:#e60013; }
.news-list p{ height: 72px;  font-size:1rem; line-height: 1.5rem; color:#919191; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow-wrap: break-word; }
 
.listDateBox {width: 100%; padding: 0px; font-size: 1rem; color:#666464;  }
.listBox{width:100%; display: flex; align-items: center; flex-wrap: wrap;justify-content: space-between; padding:0px;position: relative; }
   /*--分類new-tg --*/
.listBox .new-tag { width:auto;;  display: flex; position: relative}
.list-date {padding:0px; font-size: .875rem;font-weight:700; color:#666464;  }
.list-date span { color: #000; padding: 5px 0 0;}


.news-first .news-list .news-box{position: absolute; z-index: 99; left:0px; bottom:0px; width: 100%; margin: 0px;padding:20px;  box-sizing: border-box;display: -ms-flexbox; display: flex; flex-wrap: wrap; justify-content: space-between; background-color: rgba(0,0,0,.8) }
.news-first .news-list li{ width:100%; padding:0px;margin:0px;   }
.news-first .news-list h3,.news-first .news-list p,.news-first .list-date{ color:#fff; }

@media (max-width: 844px) {
.news-list h3 {height:38px;font-size:0.875rem; line-height: 1.15rem; }  
.news-list p { height:56px;font-size:0.875rem; line-height: 1.15rem; }
}
@media (max-width: 767.98px) {
.news-first{width:100%; padding-right: 0px;  display: block; }
.news-end{width:100%; padding: 30px 0px; margin-bottom: 20px; }
.news-first .news-list .news-box{padding: 10px;}
.news-first .news-list h3{margin-bottom: 0px;}
.news-first .news-list p{display: none;}
.news-list li{  padding:0px;}    
}
@media (max-width:320px) {
.news-list .news-pic  {width:100%;    }
.news-list .news-box{ width: 100%; margin: 0px;padding:10px 0px; }
.listBox{ padding:10px 0px; }
}



@-webkit-keyframes sx {
from {  -webkit-transform: translateX(0);  transform: translateX(0); }
50% { -webkit-transform: translateX(-10px); transform: translateX(-10px); }
to {  -webkit-transform: translateX(0);  transform: translateX(0); }
}

@keyframes run {
from { -webkit-transform: translateX(0);  transform: translateX(0); }
50% { -webkit-transform: translateX(-10px); transform: translateX(-10px); }
to {  -webkit-transform: translateX(0); transform: translateX(0); }
}

.view a { margin-bottom: -1px; font-size: 13px; font-weight: 700; text-transform: uppercase; color: #153872; letter-spacing: 2.3px; border-bottom: 1px solid #153872; padding-bottom: 16px; padding-top: 2px;}
.view .circle { display: -webkit-box; display: -ms-flexbox; display: flex;  width: 36px; height:36px; border-radius: 999px; border: 1px solid #153872; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center;  -ms-flex-pack: center; justify-content: center; margin-right: 16px; background: url("../images/icon/arrow-right-2.svg") no-repeat center;background-size: 14px;}



/* 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);}


.main-contact{   margin:0px; padding:0px; overflow: hidden;position: relative;z-index: 0;background-color:#fff;  }
.contact-wrap{width: 100%;  margin: auto; display: flex; flex-wrap: wrap; justify-content: space-between; position: relative; }
.contact-detail{width:40%; padding:50px 10px; margin:20px auto;   }
.contact-box{ width:calc(100% - 40%);   }

 @media (max-width: 1024px) {
 .contact-detail{width:44%; padding:50px 20px;  }
.contact-box{ width:calc(100% - 44%);   }     
     
}

 @media (max-width: 767.98px) {
.contact-detail{width:100%;  padding:0px;  }
.contact-box{ width:100%; }
}
/* ==== 底圖 === */
.bg-background { background-image: attr(src url); background-repeat: no-repeat; background-size: cover;background-position:center bottom; position: absolute;z-index: -1; top:0px; left: 0; right: 0; bottom: 0; line-height: 0;  width: 100%;  }
@media(max-width: 992px) {
.bg-background {background-position:center;}
}
@media(max-width: 767.98px) {
.bg-position {background-size:200% auto; background-position:left bottom; }
}
/*----------------------------------------/
title樣式5
----------------------------------------*/
.title-h2-sub{  margin: auto;}
.title-h2-sub h2{ font-size: 2.75rem;  font-size: min(max(3.5vw, 1.75rem), 2.75rem);  line-height: 130%;font-weight: 700; letter-spacing: 3px;  text-transform:uppercase}
.title-h2-sub span{ display: block; margin:10px auto 30px auto;font-size: 1.5rem;font-size: min(max(3.5vw, 1rem), 1.5rem); line-height: 130%;font-weight: 700; color: #d90012; text-transform:uppercase  }
.title-h2-sub p{ font-size:1.125rem;  font-size: min(max(3.5vw, 1rem), 1.125rem); line-height:1.75rem; font-weight:400; }
 @media (max-width: 998px) {
.title-h2-sub{text-align: left; padding-left: 20px;} 
}
 @media (max-width: 767.98px) {
.title-h2-sub{  padding-left: 0px;} 
}
/*----------------------------------------/
form
----------------------------------------*/
.contact-form{width: 100%;margin: auto; padding:40px 20px 80px 20px;}
.contact-form input, .contact-form option, .contact-form select, .contact-form textarea { font-size: 1.15rem;background: #fff; border: 1px solid #d8d8d8;  border-radius:8px;}
.contact-form select, .contact-form input, .contact-form option, .contact-form textarea, .contact-form input[type=radio] + label, .contact-form input[type=checkbox] + label {font-size: 1.15rem;transition: all 0.5s; box-sizing: border-box;outline: none;}
.contact-form ul {width: 100%; margin: 2% auto;  padding:20px 40px; display: flex; flex-wrap: wrap; list-style: none; }
.contact-form ul li { width: calc(100%/2 - 10px); margin: 15px 10px 15px 0px;}
.contact-form ul li input { padding: 0 10px;width: 100%;height: 46px;   }
.contact-form ul li input::placeholder, .contact-form ul li textarea::placeholder { color:#b3b3b3; font-size:.875rem;  }
.contact-form ul li select {  padding: 0 0 0 5px;  width: 100%; height: 46px; line-height: 40px;font-weight:400; color:#b3b3b3;}
.contact-form ul li select:focus option {color: #666;}
.contact-form ul li option { padding: 5px 10px;}
.contact-form ul li textarea { width: 100%;height: 100px;line-height: 20px; padding: 5px 10px;}
.contact-form ul li input:focus, .contact-form ul li textarea:focus {background: #fff8de;color: #000;}
.contact-form ul li input:focus::placeholder, .contact-form ul li textarea:focus::placeholder {  color: #000;}
.contact-form ul li.width-full {  width: calc(100% - 10px); margin-right: 0px !important;}

 
.must{position: relative; padding:0px 0px 0px 15px; }
.must:after{content:"*";color:#a01f35; font-size: 1.25rem; font-weight: 700; padding-right: 3px;position: absolute; left:0px; top:-5px; }


@media (max-width: 768px) {
.contact-form ul  {width: 100%; margin: 15px 0px;padding: 0px 20px; }
.contact-form ul li {width: 100%; margin: 15px 0px;padding: 0px;}  
.contact-form ul li.width-full { width:100%;}
	
}

@media (max-width: 767.98px) {
.contact-form{ padding:0px 0px 80px 0px;}
.contact-form ul{ padding: 0px 10px; }
.contact-form ul li {margin:5px 0px; }   
	
}
@media (max-width: 320px) {
.contact-form ul{ padding: 0px; }
}
/* ==== 底圖 === */
.bg-background { background-image: attr(src url); background-repeat: no-repeat; background-size: contain;background-position:left bottom; position: absolute;z-index: -1; top:0px; left: 0; right: 0; bottom: 0; line-height: 0;  width: 100%; background-color:#f0f0f0; }
@media(max-width: 1024px) {
.bg-background { background-color:#f5f5f5;}
}


/*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-weight:700; color:#3f3a39;  letter-spacing:1px; }
.title h2{ width: auto;  margin:auto 0; font-size: 2.5rem; color:#3f3a39; font-weight:700;   }
.title h3{ margin:10px auto; font-weight: 700; color:#bea570;  }
.title p{ margin:10px auto;  font-weight: 400; line-height: 1.35rem;  color:#3f3a39; }
.title span{ width: auto; margin:10px 0px; font-size: 1.35rem; letter-spacing:2px; font-weight:700; color:#d90012;   }
 
@media (max-width:768px) {
.title h1{  font-size: 2rem;   }
.title h2{  font-size: 1.5rem;  }
}
@media (max-width:767.98px) {
.title {   margin:0px auto;  }  
.title h1{  font-size: 1.5rem;   }    
}

/*ms-title-2  樣式
=================================*/
.title-2 { width:100%; height: auto;  margin:30px auto; padding:0px 20px; text-align: left; position: relative;  }
 
.title-2 span{ width: auto; margin:0px auto 30px auto; font-size: 1rem; color:#d90012;  line-height: 3rem; font-weight:700;  position: relative; }
.title-2 span:after{ content: ""; width:30%; height:3px; bottom: -10px; left:0; background:#d90012; position: absolute; }
.title-2 h2{ width: auto; margin:15px 0px; font-size:2.75rem; font-weight: bold;  }
.title-2 p{ width: auto; margin:0px auto;font-size: 1.15rem;  line-height:1.75rem;   letter-spacing:1px; color:#777;   }
.title-2 strong{color:#d90012;}
@media (max-width: 1280px) {
.title-2 h2{font-size:2rem;}   
.title-2 p{font-size: 1rem;}   
.title-2 h2,.title-2 h3,.title-2 p{ margin:15px auto; }
}
 
@media (max-width: 768px) {
.title-2 p{ line-height: 1.35rem;}   
.title-2 span{  line-height: 1rem;   }    
}

@media (max-width: 767.98px) {
.title-2 { padding:0px; }
.title-2 h2{font-size:1.5rem;}   
.title-2 p{ font-size: .9rem; line-height: 1.15rem; }      
}
@media (max-width: 320px) {
.title-2 h2{font-size:1.35rem;}   
 
}

 
/*-title-3 樣式
=================================*/
.title-3 { width: 100%; margin:30px auto 0px auto; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; flex-direction: column; }
.title-3 span{display: flex; margin:0px auto; font-size: 1rem; color:#d90012; text-align: center; line-height: 3rem; font-weight:700;  position: relative;   }
.title-3 span:after{ content: ""; width:100%; height:3px; margin: auto; background:#d90012; position: absolute;  }
.title-3 h2{ margin:15px auto; font-size:2.75rem; font-weight: bold;  }
.title-3 p{ margin:0px auto;font-size: 1.15rem;  line-height:1.75rem;   letter-spacing:1px; color:#777; text-align: center;   }
.title-3 strong{color:#d90012;}
 
@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;line-height: 1.5rem;}   
.title-3 h2,.title-3 h3,.title-3 p{ margin:15px auto; }
}
@media (max-width: 1024px) {
.title-3 { width: 80%; margin:0px auto 0px auto; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; flex-direction: column; }
}
@media (max-width: 320px) {
.title-3 { width: 100%; padding: 0px 10px;   }
 .title-3 h2{font-size:1.375rem; margin-bottom: 5px;}   
}
/*ms-title-4  樣式
=================================*/
.title-4 { width:100%; height: auto;  margin:30px auto; padding:0px 20px; text-align: center; position: relative;  }
.title-4:after{ content: "";width: 2px; height: 10vh; display: block;  top:100px; left: 50%;  background:#e60013;position: absolute; z-index: 99; }  
.title-4 span{ width: auto; margin:0px auto 30px auto; font-size: 1rem; color:#d90012;  line-height: 3rem; font-weight:700;  position: relative; }
.title-4 span:after{ content: ""; width:30%; height:3px; bottom: -15px; left:0; background:#d90012; position: absolute; }
.title-4 h2{ width: auto; margin:15px 0px; font-size:2rem; font-weight: bold;  }
.title-4 p{ width: auto; margin:0px auto;font-size: 1.15rem;  line-height:1.75rem;   letter-spacing:1px; color:#777;   }
.title-4 strong{color:#d90012;}

@media (max-width: 1366px) {
.title-4 p{  font-size: 1.5rem;   }
}
@media (max-width: 1180px) {
.title-4 h2{font-size:2rem;}   
.title-4 p{font-size: 1rem;}   
.title-4 h2,.title-2 h3,.title-2 p{ margin:15px auto; }
}
@media (max-width: 1024px) {
.title-4 h2 {font-size:1.5rem; }
.title-4:after{   height: 5vh;   top:80px; left: 50%;   -webkit-transform: translate(-50%,0); transform: translate(-50%, 0); background:#e60013;position: absolute; z-index: 99; }  
}
 @media (max-width: 768px) {
.title-4 p{ line-height: 1.35rem;}   
.title-4 span{  line-height: 1rem;   }    
}
 @media (max-width: 767.98px) {
.title-4 { padding:0px; }    
.title-4:after{ display: none;}  
.title-4 h2{font-size:1.25rem; }  
.title-4 h3{font-size:1rem; }        
}
 @media (max-width: 320px) {
 .title-4 { margin-bottom: 0px; }        
 .title-4 h2{font-size:1.25rem;text-align: left;}  
.title-4 h3{font-size:1rem;text-align: left;}        
}



 /***** btn **** 
=================================*/
.btn-btnbox {position: relative;z-index:9; display: flex;  justify-content: center;  width: 100%; height: auto; margin: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;}
}
/*cms-btn Styles 1
=================================*/
.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-radius:20px;  box-shadow: 0px 0px 17px 1px rgba(0, 0, 0, 0.34); background:#00a0e8;  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;}
.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;   }
.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: #00a0e8;}
.btn-01:hover em{ transform:translateX(20px);}

/*cms-btn Styles 1
=================================*/
.btn-02{ 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;   box-shadow: 0px 0px 17px 1px rgba(0, 0, 0, 0.34); background-color:#e60013; z-index: 1; overflow: hidden; border: none; }
.btn-02 span { display: flex;  transform-origin: center left; transition: color 0.3s ease;position: relative;z-index:1; font-weight: 700; color: #fff;}
.btn-02 em {position: absolute;width: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;   }
.btn-02:before,.btn-02:after {content: '';background:#000;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);}



