﻿ 
/*----------------------------------------/
產品總覽頁Product
----------------------------------------*/
 /* cms-product-cate -----------------*/
.cms-product-cate { width:100%; margin: 5% 0px;  }
.cms-product-cate li{margin: 0px; padding:0px;  position: relative; display: flex; flex-wrap: wrap; flex-direction: row; justify-content: flex-start; align-items: flex-start;}
.cms-product-cate li figure{ width: 55%; position: relative; z-index: 9; display: flex;   }
.cms-product-cate li figure img{  max-width: 100%; height: auto;   margin: auto;  }
.cms-product-cate li figcaption {   display: flex; flex-wrap: wrap;  justify-content: flex-start; align-content: flex-start;  align-items: flex-start; width: 50%; position: relative; z-index: 1; margin-left:-5%; padding: 50px 40px 55px; }
.cms-product-cate .cms-product-cate-num { font-size: 60px; color:#d4d4d4;  font-style: italic; line-height: 1; letter-spacing: 2px; position: absolute; top: -35px; right: 40px;}
.cms-product-cate h3{ font-size: 2.5rem; position: relative; z-index: 1; letter-spacing: 1.5rem;  text-align: center; color:#0d386d;    -webkit-writing-mode: vertical-rl;writing-mode: vertical-rl;border-left: solid 1px #0d386d; border-right: solid 1px #0d386d;   }

#cms-main .cms-product-cate p{ margin:0px 20px;  font-size: 1rem; line-height: 2;  letter-spacing: 0.5rem;text-align: justify; overflow: hidden; text-overflow: ellipsis; text-overflow: initial; -webkit-writing-mode: vertical-rl;writing-mode: vertical-rl;  }
.cms-product-cate li:nth-child(even){ flex-direction: row-reverse; }
.cms-product-cate li:nth-child(even) figcaption { margin-right:-5%; justify-content: flex-end; }
.cms-product-cate li:nth-child(2) .bg-circle{top: -90px;right:0px; left: auto; padding-bottom: 75%;}
 
@media (max-width: 991.98px) {
.cms-product-cate li{ justify-content:center; margin:20px auto;  }
}

@media (max-width: 767.98px) {
.cms-product-cate li figcaption {padding:30px 15px; }
.cms-product-cate h3 { font-size: 1.5rem;  } 
.cms-product-cate h3::before,.cms-product-cate h3::after{width: 30px;  height: 1px; background:#93020d;  }
 #cms-main .cms-product-cate p{ margin:0px 5px;  letter-spacing: 0.1rem; }
  
}

/*----------------------------------------/
產品清單頁  cms-main-product-item  
----------------------------------------*/
/***** 圖文方格 *****/
/*------------------*/
 .cms-main-product { width: 100%; padding:20px 15px 40px 15px; margin:auto; position: relative;  }
.cms-main-product-item { width:100%;  margin:15px  auto;  padding:20px 0px 60px 0px; display: flex; flex-wrap: wrap; overflow: hidden;  list-style: none; }
.cms-main-product-item li { width: calc(100% / 3 - 40px); margin: 10px 20px; padding: 15px 0px; height: auto; position: relative; transition: all 0.3s linear 0s; z-index: 1; border: solid 1px rgba(0,0,0,.1); border-radius:15px;  background: #fff;  box-shadow:2px 3px 5px rgba(0,0,0,.1);}
.cms-main-product-item li:nth-child(3n){margin-right: 0px;}
.cms-main-product-item li:hover { transform: scale(1.05);}
.cms-main-product-item li a figure { position: relative;   width:100%; max-width:70%; height: auto;  margin: auto; overflow: hidden; transition: all 0.5s ease 0s; }
.cms-main-product-item li a figure img {  width: 100%; max-width: 100%; transition: all 0.3s; -webkit-transform: translate3d(0,0px,0);transform: translate3d(0px,0px,0px);  }
.cms-main-product-item li:hover figure img {  opacity: 0.7;-webkit-transform: translate3d(0,-20,0);transform: translate3d(0,-20px,0); -webkit-filter:grayscale(1); -webkit-transition-delay: 0.15s;transition-delay: 0.15s;}
#cms-main .cms-main-product-item li a h3{ margin:auto ; padding: 15px 5px 5px 5px; width: 100%; font-size:1rem; font-weight: 400;color: #000;  text-align: center;  overflow: hidden; word-break:break-all; word-wrap:break-word;text-overflow: ellipsis;  display: -webkit-box;  -webkit-line-clamp: 2;  -webkit-box-orient: vertical; }
#cms-main .cms-main-product-item li a span.cms-main-product-unit{ margin: 0 auto ; font-size:0.875rem; color:#b3a5a5;line-height: 1.5;   text-align: center;  overflow: hidden; word-break:break-all; word-wrap:break-word;text-overflow: ellipsis;  display: -webkit-box;  -webkit-line-clamp:2;  -webkit-box-orient: vertical; }
.cms-main-product-item li a span.cms-main-product-price{ display: flex; justify-content: center; margin:0px auto;font-size:1rem; color:#f58a3c;  font-weight: 700; }
.cms-main-product-item li a span.cms-main-product-price-origin{ display: flex; justify-content: center; margin:0px auto;font-size:.85rem; color:#717171;  font-weight: 700;text-decoration: line-through; }
.cms-main-product-note { position: absolute; top:-50px; left: 0; width:138px; height: 100px;   font-size:0.9375rem; text-align: left; line-height: 1.5em; text-shadow:none; z-index: 11; }
.cms-main-product-note.cms-main-product-note-sale {  color: #cc3333; padding:15px 0px 0px 50px; background: url("../images/icon/note.png") no-repeat left 10px;  background-size:46px 33px;}
.cms-main-product-note.cms-main-product-note-stock { color: #ff9900; padding:15px 0px 0px 50px; background: url("../images/icon/note-1.png") no-repeat left 10px;  background-size:46px 33px;}
.cms-main-product-item .slick-current {  }	
.cms-main-product-item .slick-dots {bottom:-30px;  }	
.cms-main-product-item .slick-prev { left:0; z-index: 11; }
.cms-main-product-item .slick-next { right:10px; z-index: 11; }
 
.cms-main-product-item li:before {pointer-events: none; content: ''; width: 100%; height: 100%; box-sizing: border-box;  position: absolute; top: 0;  left: 0;  transform: scale(0); background: linear-gradient(to right, #ed6a0e, #fbd37c); transform-origin: 0 100%;transition: 0.5s;z-index:1; border-radius:  15px;}
.cms-main-product-item li:hover:before {  transform: scale(1); opacity: .75;}
.cms-main-product-item li:hover:after { content: '加入購物車'; position: absolute; z-index: 9; top: 50%; left: 50%; display: block;pointer-events: none; width: 210px; font-weight: 300; line-height: 30px; border-radius: 50px; background-color: #FFF; color: #F16377; text-align: center; -webkit-transform: scale(0.8) translate(-50%, -50%); -ms-transform: scale(0.8) translate(-50%, -50%); transform: scale(0.8) translate(-50%, -50%);  -webkit-transition: .4s ease; -o-transition: .4s ease; transition: .4s ease; opacity: 1; padding-top: 15px;  padding-bottom: 15px;}
@media (max-width: 767.98px) {
.cms-main-product-item li { width: calc(100% / 2 - 10px); margin: 10px 5px; height: auto; position: relative; transition: all 0.3s linear 0s; z-index: 1; background: #fff;  }
.cms-main-product-item li:nth-child(3n){margin-right: auto;}
.cms-main-product-item li:nth-child(2n){margin-right: 0;}
}
/*----------------------------------------/
btn區塊
----------------------------------------*/
.cms-product-group{width: 100%; margin-top: 2%; display: flex; flex-wrap: wrap; justify-content:space-between;}
.cms-product-group .btn{ width: 30.333%;}

/*----------------------------------------/
促銷區塊
----------------------------------------*/
.cms-promotion { margin:10px auto; padding:5px; font-size:0.875rem; font-weight:400; display: flex;  flex-wrap: wrap;  background-color: #fff;  }
.cms-promotion a{color:#b9afa1;}
.cms-coupon{  margin:0px; padding:3px; color:#0d386d;   border-right: 1px solid #d2d0c5;}
.cms-label { width: 100%; display: flex; flex-wrap: wrap; padding:3px; }
#cms-main .cms-label a.cms-ticket{padding:2px 5px;  margin: 0 10px; color:#fff; border: solid 1px #c30d23; background:#c30d23;}
 
/*----------------------------------------/
產品詳細內容區塊
----------------------------------------*/
.cms-main-product-wrapper {  display: flex;  flex-wrap: wrap; justify-content: flex-end;  width: 100%; max-width: 1140px; margin:50px auto auto auto; }
.cms-main-product-left{width:50%;  }
.cms-main-product-left-image{ }
 
 
/*----------------------------------------/
圖片輪播區塊
----------------------------------------*/
ul.cms-slider-for{ width: 100%;  height: auto; margin:0px auto; }
ul.cms-slider-for li { width:100%;  display: block;  }
ul.cms-slider-for li img{ width:100%;max-width:100%; margin: auto;   }
 #cms-main ul.cms-slider-for .slick-dots {bottom:-20px;}
ul.cms-slider-nav{ width: 100%;  height: auto; margin:10px auto; display: flex; flex-wrap: wrap; justify-content: space-around;  }
ul.cms-slider-nav li{  opacity: .5; margin:auto; }
ul.cms-slider-nav li:focus{opacity: 1;}
ul.cms-slider-nav li img{ width:70%; margin:auto; }
#cms-main ul.cms-slider-nav .slick-dots {bottom:-20px;}

.cms-slider-for .slick-prev {left:0!important;z-index:1}
.cms-slider-for .slick-next {right:15px!important;}
.cms-main-product-right{ width: 50%; padding-left: 8%; margin-bottom: 15px;  overflow: hidden;   }
.cms-main-product-right .cms-main-breads .breadcrumb{justify-content: flex-start;}

@media (max-width: 767.98px) {
.cms-main-product-left,.cms-main-product-right{width: 100%;padding:0px 15px;  }
}
.cms-main-product-info{ width:100%; padding:30px 50px;  background:#fff; border: 1px solid #e9e9e9  }
#cms-main .cms-main-product-info h1{   padding:0px 0px 15px 0px;width: 100%; display: flex; justify-content: flex-start; font-size:2rem; font-weight: 400; color:#000; position: relative; word-spacing: normal; word-break:normal; }
.cms-product-description{ padding:15px 0px; }
#cms-main .cms-product-description p {margin-bottom: 15px; font-size:0.9375rem; color: #98979d;}
#cms-main .cms-product-description ul{width: 100%; margin: auto;   font-size:0.9375rem;}
#cms-main .cms-product-description ul li{width: 100%;margin:0px; padding: 0px; display: flex; flex-wrap: wrap; align-content: center; align-items: center; font-size:0.85rem; line-height: 1rem; }
#cms-main .cms-product-description ul li span.cms-item-title{width:auto; justify-content: flex-start; padding:5px 5px 5px 0px;color:#98979d;  font-size:0.85rem;}
#cms-main .cms-product-description p strong{color:#eb5c05;}
.cms-main-product-info del{color: #98979d;} 
.cms-main-product-info .cms-sale { font-size:1.313rem;  font-weight:700; color:#eb5c05;  }
.cms-main-product-info .cms-sale b{ margin-left: 5px; font-size:1.313rem; font-weight:400;   }
.cms-badge-tag{ padding: 5px 15px;  font-size: 0.875rem;  color:#5b3932;; background: #eae6dd;  border-right: 1px dashed #5b3932; border-left: 1px dashed #5b3932; }
.cms-store { display:flex;  flex-wrap: wrap; }
.cms-store img{ display:flex;width: auto; height: 20px; margin: 5px; }

.cms-product-marker { margin:15px 0px; border-top: 1px solid #e2e2e2; width: 100%;}
 @media (max-width: 991.98px) {
.cms-main-product-info{padding-left:0; }    
}
@media (max-width: 767.98px) {
 .cms-main-product-info{  padding:0px; border:none; }    
   
}
/*----------------------------------------/
產品規格
----------------------------------------*/
.cms-product-form-item{ }
.cms-product-form-item label{font-size:.875rem;font-weight:700!important; color:#212529;   }
.cms-option-radio { border: 0;  padding: 0;  margin: 0;  position: relative;}
.cms-option-radio input[type="radio"]+label{ border: solid 1px #677788;}
.cms-option-radio input[type="radio"]+label:before{ display: none;}
.cms-option-radio input[type=radio]:checked+label {  color:#fff!important;  border-color: #30315f; background: #30315f;}
.cms-option-radio label { position: relative;min-width: 40px;  height: 36px;display: inline-block; padding: 0 10px; margin: 3px 8px 7px 0; line-height:36px; background-color: rgba(113,134,157,.1);  color: #30315f;  background-position: center;  background-size: cover;   text-align: center; vertical-align: middle;}
.product-variation { cursor: pointer;font-size: 0.85rem; display: inline-block;  min-width: 5rem;  -moz-box-sizing: border-box; box-sizing: border-box; padding: 0 .75rem; height: 2.125rem; line-height: 1;  margin: 0 8px 8px 0; color: rgba(0,0,0,.8); text-align: center; white-space: nowrap;  border-radius: 2px;  border: 1px solid rgba(0,0,0,.09); position: relative;  background: #fff; outline: 0;}
.product-variation:hover{ border: 1px solid #5d5049; color: #5d5049;}
/*----------------------------------------/
數量選擇
----------------------------------------*/
.cms-amount-pane{  }  
.cms-amount-pane span{color: #0d386d;}
.cms-amount { height: 36px; width:100%; margin:8px 0; display: flex;  flex-direction: row; justify-content: space-between; align-content: center; border:solid 1px #0d386d;border-radius:5px;  }
.cms-amount-button { display: flex;  width:40px;  height: 34px;font-size:1.125rem; font-weight:700;  padding: 0;}
.plus {display: flex;  flex-wrap: wrap; justify-content: center; align-content: center; color:#fff;   background:#0d386d; border-radius:0px 3px 3px 0px  }
.minus {display: flex;  flex-wrap: wrap; justify-content: center; align-content: center; color:#fff;  background:#0d386d;  border-radius:3px 0px 0px 3px }
.plus:hover,.minus:hover { color: #ffffff; background:#483e39; cursor: pointer; transition: all .3s ease-in-out;}
.cms-amount p { display: flex; flex-wrap: wrap; justify-content: center;  align-content: center; height:34px;  font-size:1.125rem; font-weight:400;  }
.cms-surplus {  padding-left: 10px; font-size:0.875rem;  text-align: center;  color:#c74060; }
#cms-main a.spec-node { display: inline-block; padding: 4px; margin-right: 5px;  margin-bottom: 5px; min-width: 4rem;font-size:.875rem; border: 1px solid #fef1d9;background-color:#fef1d9; color:#eb5c05;text-align: center; border-radius:3px; }
#cms-main a.spec-node.active {color:#fff; border-color:#0d386d; background-color:#0d386d;}
#cms-main a.spec-node.disable { border-color: lightgray; color: lightgray;}
#cms-main a.spec-node:hover { text-decoration: none;}
#cms-main .amount-pane { border: 1px solid #999; display: inline-flex; flex-direction: row;  flex-wrap: nowrap; width: 156px; height: 40px; font-size: 16px; border-radius: 5px;}
#cms-main .amount-less { width: 36px; border: 0;  border-right: 1px solid #999; line-height: 36px; display: block; text-align: center;  background: none; cursor: pointer; outline: 0;}
#cms-main .amount-more { width: 36px; border: 0; border-left: 1px solid #999; line-height: 36px;  display: block; text-align: center; background: none; cursor: pointer; outline: 0;}
#cms-main .amount-pane > input[type="text"] { display: block; width: calc(100% - 72px); text-align: center; background: none;  border-width: 0; font-size: 16px;  height: 38px; line-height: 38px; outline: 0;}
#cms-main .amount-pane > input:disabled { color: lightgrey;}
#lower-picked { display: table; padding-left: 5px;}
#lower-picked > li { display: table-row;}
#lower-picked > li > span { display: table-cell; padding: 5px 10px 0 10px;}
 /*----------------------------------------/
social-icons
----------------------------------------*/
#cms-main .cms-main-product-info .cms-social-icons{color:#675952;  display: flex; flex-wrap: wrap; justify-content: flex-start; align-content: center; align-items: center; font-size:0.75rem;   }
 #cms-main .cms-main-product-info .cms-social-icons li{ width: auto!important; margin:5px; padding-top: 8px;  }
#cms-main .cms-main-product-info .cms-social-icons li a{ opacity:1;font-size:0!important;color:#675952!important;  }
/*----------------------------------------/
tab
----------------------------------------*/
.resp-tabs-list{ border-bottom: solid 1px #fbd1bf;}
#cms-tabs-product .resp-tab-content { padding:30px 0px ;}
.resp-tab-content h4{ margin:2% 0;  font-size: 1.15rem; font-weight: 700; }
#cms-main .resp-tab-content p{ margin:1% auto; font-size: 1rem; font-weight: 400;  }

.edit{ display: flex; flex-wrap: wrap; flex-direction: column; width: 100%; max-width:960px;padding:15px 5px; margin: auto; border-bottom: dashed 1px #f2971a; }
#cms-main .edit h4{ display: flex; justify-content: center; width: 100%; max-width:680px;  margin:15px auto!important; color:#0d386d;font-size:1.5rem;  font-weight: 700;  }
.edit h4 img{display: block; width: 100%; max-width:600px;  margin: 15px auto!important;}
.edit .description{display: block; width: 100%; max-width:680px;  margin: 15px auto!important;}


 



/*---------------------------------
best-wrap
----------------------------------------*/
.cms-best-wrap{  width: 100%; max-width: 1200px; height: auto;  margin:0 auto; padding:20px 0px 50px 0px;  }
.cms-best-wrap .cms-main-product-item {  text-align: center;   padding:30px 15px;  margin: 10px auto; }
.cms-best-wrap .cms-main-product-item li { margin:15px; padding:20px; height: auto; position: relative; transition: all 0.3s linear 0s; z-index: 1; background: #fff;box-shadow: none;  }
 .cms-best-wrap .slick-dots li button:before{ color: #fff; }
.cms-best-wrap .slick-dots li.slick-active button:before { opacity: .75; color: #fff; }
.cms-best-wrap .slick-dots {bottom:-30px;}




.cms-main-product-link{ color: #ef3d6f; display: inline-block; margin:20px auto;  width: auto; position: relative;  left: 0;  overflow: hidden;transition:all .3s}
.cms-main-product-link a{color: #fff;}
.cms-main-product-link .cms-btn-text{display:inline-block;padding-right:22px; font-size: 1.25rem; transition:all .3s}
.cms-main-product-link .cms-left-arrow{position:absolute;left:-30px;top:50%;transform:translateY(-50%);transition:all .3s;font-size:14px;margin-top:1px}
.cms-main-product-link .cms-right-arrow{position:absolute;right:0;top:50%;transform:translateY(-50%);transition:all .3s;font-size:14px}
.cms-main-product-link i{font-weight:bold}
.cms-main-product-link:hover .cms-btn-text{left:6px; padding-right:0;padding-left:22px}
.cms-main-product-link:hover .cms-left-arrow {left:0px}
.cms-main-product-link:hover .cms-right-arrow {right:-30px}
.cms-bg-1{background-image: linear-gradient(233deg, #2a201b, #675a53);}
.cms-bg-2{background-image: linear-gradient(233deg, #c30d23, #3e0200);}
.cms-bg-3{background-image: linear-gradient(233deg, #d3d00a, #eeec64);}
.cms-bg-4{background-image: linear-gradient(233deg, #c3beb9, #f9f8f8);}

.bg-circle { top: -20px; left: 10%; position: absolute; width:80%; z-index: 0; padding-bottom: 200%; background: url("../images/index/banner.png") no-repeat left top;background-size:80% auto; animation: bg-circle 30s ease-in-out infinite;}
@media (min-width: 992px){
.bg-circle{ top: -90px; left: 5%; width: 80%; padding-bottom: 75%;}
}

@keyframes opacity {
0% { opacity: 1 }
65% { opacity: .5 }
to { opacity: 1 }
}
@keyframes bg-circle {
0% { transform: translateZ(0) scale(1)  }
10% {transform: translate3d(2%, 2%, 0) scale(1.05) }
25% { transform: translate3d(1%, -1%, 0) scale(.95) rotate(-5deg)}
50% { transform: translate3d(0, -1%, 0) scale(1) rotate(-10deg)}
70% { transform: translate3d(-1%, -2%, 0) scale(1.05) rotate(-5deg)  }
to { transform: translateZ(0) scale(1)}
}
 

 /* cms-main-download =====================================================================*/
 
.cms-main-download{ width: 100%;  max-width:960px;   margin:5% auto;  display: flex;  flex-direction: column;  justify-content: flex-start; align-content: flex-start;  }
.cms-main-download li{display: block;width: 100%;  position: relative; padding: 20px 0px; }
.cms-main-download li:before{ content: ''; position: absolute; background-color:#d8d8d8;  height: 1px; width: 100%;bottom: 0;left: 0;}
.cms-main-download li:after{  content: ''; position: absolute; background-color:#7a6164; height: 2px;bottom: 0;left: 0; width: 12%;}
.cms-main-download li:hover{  background-color:#eae3e2;}
.cms-main-download li em{font-size: 38px;width: 12%;text-align: center;display: table;float: left;color:#0d386d;height: 50px; font-weight: 700;}
.cms-main-download li em span{ display: table-cell;  vertical-align: middle;}
.cms-main-download li .title{color: #242424; font-size:1.15rem; display: table; vertical-align: middle; float: left; width: 68%; line-height: 23px; margin: 0;  padding-left: 19px; padding-top:0px; }
.cms-main-download li .icon { display: block; float: right; font-size: 22px; color: #fff; width: 55px;  height: 55px; text-align: center; background-image: linear-gradient(to right, #7c6364 0%, #411f20 100%) !important;  box-shadow: 0 0 20px rgba(0,0,0,0.15);  border-radius: 50%;}
.cms-main-download li .icon i{margin-top: 8px;}
@media (max-width: 767.98px) {
 .cms-main-download li em{font-size: 24px;width: 10%; }   
}

