/*header====================================*/
.header {
  font-family: 'Noto Serif TC', serif;
  font-weight: 600;
  padding-bottom: 5px;
}

/*logo*/
.brandLogo a {
  display: block;
}

/*topLinkMenu*/
.topLink {
  height: 56px;
}

.topLinkMenu>li+li:before {
  display: none;
}

.topLinkMenu>li>a {
  display: flex;
  min-width: 118px;
  height: 56px;
  justify-content: center;
  align-items: center;
}

.topLinkMenu>li>a:hover {
  background: url(../images/tw/topLinkBg.png) no-repeat left bottom/cover;
}

.topLink .topLinkMenu>li>a i {
  padding-right: 5px;
  font-size: 24px;
}

.navMenu>li>a:before {
  display: none;
}

/*navMenu*/
.Bbox_view_full,
.headerType2 .navBar,
.headerType2 .topLinkContent,
.headerType6 .navBar {
  padding: 0 60px;
}
.navBarContent >div:last-child{width: calc(100% - 188px);}
.headerType2 .navMenu{
  width: 100%;
  display: flex;
  justify-content: flex-end;
}
.navMenu {
  font-size: 18px;
}
.navMenu>li {
  min-width: 108px;
  margin: 0 15px;
}

/*首頁======================================================*/
/*banner*/
.bannerBlock {
  position: relative;
}

.slideBanner .slick-dots {
  width: 100%;
  text-align: center;
  position: absolute;
  bottom: 37px;
}

.slick-slider .slick-dots li button:after,
.slick-slider .slick-dots li .btn-prev:after,
.slick-slider .slick-dots li .btn-next:after {
  background: #fff;
}

.slick-slider .slick-dots li button {
  border: none;
}

/*PC主選單*/
.navMenu > li > ul > li > ul >li >ul >li{
  background: #dcdcdc;
}
/*首頁內容區=======================================*/
.grayBg {
  background: #E5E5E5 url(../images/graybg.jpg) no-repeat center top/100% auto;
  padding: 0 10px;
  overflow: hidden;
}

/*內容容器*/
.indexContentSlideBox {
  width: calc(100% - 178px);
  max-width: 1678px;
  margin: 0 auto;
  padding: 0 89px;
}

.innerBox {
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
}

/*首頁區塊標題*/
.indexBlockTitle {
  font-family: 'Noto Serif TC', serif;
  text-align: center;
  line-height: initial;
}

.indexBlockTitle div:first-child {
  font-size: 36px;
  font-weight: 900;
  color: #000;
  margin-bottom: 12px;
}

.indexBlockTitle div:last-child {
  font-size: 21px;
  color: #F1A8C5;
  letter-spacing: 18px;
}

/*輪播*/
.indexContentSlideBlock1 {
  padding-top: 142px;
}

.indexContentSlideBlock2 {
  padding-top: 120px;
}

.indexSlide1 .slick-slider .slick-arrow.slick-prev,
.indexSlide2 .slick-slider .slick-arrow.slick-prev {
  left: 0;
}

.indexSlide1 .slick-slider .slick-arrow.slick-next,
.indexSlide2 .slick-slider .slick-arrow.slick-next {
  right: 0;
}

/*首頁video*/
.indexVideoBlock {
  width: 100%;
  padding-top: 115px;
}

#videoGallery {
  width: 100%;
  display: flex;
  justify-content: space-between;
  margin-top: 46px;
}

.pinkCircle3 {
  width: 40px;
  height: 40px;
  background-color: rgba(241, 168, 197, 0.3);
  border-radius: 50%;
  position: absolute;
  right: 233px;
  top: -100px;
}

.pinkCircle4 {
  width: 260px;
  height: 260px;
  background-color: rgba(241, 168, 197, 0.3);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  right: -103px;
  bottom: -172px;
}

.pinkCircle4>div {
  width: 184px;
  height: 184px;
  background-color: #E5E5E5;
  border-radius: 50%;
}

.indexVideoBox {
  display: block;
  width: 100%;
  max-width: 740px;
}
.indexVideoPosition{
  width: 100%;
  position: relative;
}
.indexVideoPosition > img{
  width: 100%;
  display: block;
}

.videoHover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  justify-content: center;
  align-items: center;
  display: none;
}

.indexVideoBox:hover .videoHover {
  display: flex;
}

.indexVideoTitle {
  font-family: 'Noto Serif TC', serif;
  font-size: 18px;
  color: #000;
  width: 100%;
  display: block;
  margin-top: 27px;
}

.indexVideoTitle:hover {
  color: #DF357A;
  text-decoration: underline;
}

/*首頁產品輪播區*/
.indexHotSaleBlock {
  padding-top: 80px;
  padding-bottom: 90px;
}

.indexSaleSlide {
  margin-top: 30px;
}

.indexSaleSlide .slideItem {
  background-color: #fff;
  padding: 5px;
  /*max-width: 355px;*/
  margin: 0 12px;
}

.indexSaleSlide .slideItem a {
  display: block;
  width: 100%;
  margin: 0 auto;
}

.indexSaleSlide .slideItem img {
  width: 100%;
  height: auto;
  max-width: 340px;
  display: block;
  margin: 0 auto;
}

.indexSaleName {
  width: 100%;
  padding: 25px 10px 8px 10px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.slaePrice {
  width: 100%;
  font-size: 20px;
  font-weight: bold;
  padding: 0 10px;
}

.indexSaleBar {
  width: 100%;
  text-align: center;
  margin-top: 25px;
  padding-bottom: 35px;
}

.indexSaleBar span {
  display: inline-flex;
  background-color: #D8D8D8;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  margin: 0 13px;
}

.indexSaleBar span i {
  color: #DF357A;
  font-size: 21px;
}

/*首頁課程連結區*/
.indexCourseBlock {
  width: 100%;
  padding: 0 10px;
  background: url(../images/graybg2.png) no-repeat center top/100% auto;
}

.indexCourseBlock .innerBox>div {
  width: 100%;
}

.indexCourseBlock img {
  width: 100%;
  height: auto;
  display: block;
}

.indexCourseList {
  width: 100%;
  padding: 0;
  margin: 0;
  display: flex;
}

.indexCourseList li {
  width: 25%;
  list-style: none;
}

.indexCourseList li:nth-child(odd) {
  background-color: #1E1B20;
}

.indexCourseList li:nth-child(even) {
  background-color: #444445;
}

.indexCourseList li:hover,{
  background-color: #DF357A;
}

.indexCourseList li a {
  display: flex;
  width: 100%;
  height: 100px;
  justify-content: center;
  align-items: center;
  font-family: 'Noto Sans TC', sans-serif;
  font-size: 21px;
  color: #fff;
}
.indexCourseList li.active {
  background-color: #DF357A;
}

/*首頁活動情報區*/
.indexNewsBlock {
  width: 100%;
  margin-top: 86px;
}

.indexNewsBlock .grayBg {
  background: #E5E5E5;
}

.indexNewsBlock .indexBlockTitle {
  background: url(../images/graybottom.png) no-repeat center bottom/100% auto;
}

.indexNewsContent {
  display: flex;
  padding-top: 65px;
}

.indexEventBg {
  padding-bottom: 112px;
}

.indexEventBox {
  width: 50%;
  max-width: 670px;
  display: inline-flex;
}

.indexEventMarginR {
  margin-right: 90px;
}

.eventImgBox {
  width: 100%;
  max-width: 308px;
  position: relative;
  margin-right: 46px;
}

.eventImgBox img {
  width: 100%;
  height: auto;
  display: block;
}

.indexEventTime {
  width: 126px;
  height: 45px;
  text-align: center;
  line-height: 45px;
  color: #fff;
  background-color: #EF76A7;
  position: absolute;
  right: -15px;
  bottom: -15px;
}

.eventTextBox h3 {
  font-family: 'Noto Serif TC', serif;
  font-size: 18px;
  font-weight: 900;
  margin-top: 25px;
  margin-bottom: 25px;
  word-wrap:break-word;
}

.eventTextBox p {
  font-family: 'Noto Serif TC', serif;
  font-weight: 500;
}

.indexMoreEvent {
  font-family: 'Noto Serif TC', serif;
  width: 100%;
  text-align: center;
  margin-top: 92px;
  font-weight: 900;
}

.indexMoreEvent a {
  color: #B7165F;
}

.indexMoreEvent span {
  display: inline-block;
}

.indexMoreEvent span:first-child {
  margin-right: 5px;
}

/*icon*/
.indexRightIconBar {
  width: 44px;
  position: fixed;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  z-index: 999;
}

.indexRightIconBar a {
  display: block;
  width: 44px;
  height: 44px;
  margin-bottom: 25px;
}

.indexRightIconBar img {
  width: 100%;
  height: auto;
}

.indexRightIconBar .showCart {
  height: 70px;
  margin-top: -10px;
}

/*footer*/
footer {
  margin-top: 0;
  background: #444445;
  color: #fff;
  font-family: 'Noto Serif TC', serif;
}

.footerContentBox {
  width: 100%;
  max-width: 1710px;
  margin: 0 auto;
}

.footerTop {
  width: 100%;
  padding: 30px 30px 25px 30px;
  border-bottom: 4px #B7165F solid;
  display: flex;
  justify-content: space-between;
}
.footerTop > div:first-child{min-width: 350px;}
.footerTitle {
  font-size: 18px;
  font-weight: 900;
  margin-bottom: 16px;
}

.footerSocialBar {
  width: 100%;
}

.footerSocialBar a {
  display: inline-block;
  margin-right:34px;
}
.footerTop>div:last-child .footerTitle{padding-left: 10px;}
.subscribe {
  background-color: #B7165F;
  font-weight: 400;
  margin-right: 30px;
}
.subscribe form{display: inline-flex;}
.subscribe input{
  width: 202px;
  height: 45px;
  border-radius: 0;
  padding: 5px 10px;
  background-color: #E5E5E5;
  color: #444445;
}
.subscribe_btn{
  width: 93px;
  height: 45px;
  margin: 0;
  border-radius: 0;
  background-color: #B7165F;
  border-color: #B7165F;
}

.footerBottom {
  width: 100%;
  padding: 30px 30px 25px 30px;
  display: flex;
  justify-content: space-between;
}

.footerList ul {
  display: inline-block;
}

.footerList {
  display: flex;
}

.footerList ul {
  margin:0 142px 0 0;
  padding: 0;
}

.footerList ul:last-child {
  margin-right: 30px;
}

.footerList ul li {
  list-style: none;
}

.footerList ul li a {
  color: #fff;
}
.footerList ul li a,.footerInfo a{
  text-decoration: none;
}
.footerList ul li a:hover {
  color: #F1A8C5;
  text-decoration: underline;
}

footer .footerInfo {
  padding-top: 0;
  padding-bottom: 0;
}

.footerInfo p {
  margin: 0;
}

.copyright {
  width: 100%;
  text-align: center;
  background-color: #B7165F;
  color: #fff;
  padding: 30px 0 40px 0;
}

/*fb對話 icon*/
.fb_dialog_content > iframe{
  margin-right: 0 !important;
  bottom: 25% !important;
  right: 10px !important;
}

.full_view {
  width: 100%;
  max-width: 100%;
  margin: 32px auto;
}

.txt_red,
.txt_red a {
  color: #ff0000 !important;
}

.shopDetail_button button {
  min-width: 180px;
}

.shopDetail_addFavor a {
  display: inline-block;
  text-align: center;
  margin-right: 15px;
}

.shopDetail_addFavor a .addFavor_circle {
  font-size: 14px;
  width: 25px;
  height: 25px;
  line-height: 24px;
  display: inline-block;
  border-radius: 100%;
  border: 1px solid #005428;
  /*請改cis主色*/
  background: #005428;
  /*請改cis主色*/
}

.shopDetail_addFavor a.circle_blue .addFavor_circle {
  border-color: #4267b2;
  background: #4267b2;
}

.shopDetail_addFavor a .addFavor_circle i {
  color: #ffffff;
}

.shopDetail_addFavor a p.tips {
  margin-top: 0;
  margin-bottom: 0;
  color: #005428;
  /*請改cis主色*/
  font-size: 14px;
}

.shopDetail_addFavor a.circle_blue p.tips {
  color: #4267b2;
}

.shopDetail_addFavor a:hover .addFavor_circle {
  background-color: #ffffff;
}

.shopDetail_addFavor a:hover .addFavor_circle i {
  color: #005428;
  /*請改cis主色*/
}

.shopDetail_addFavor a.circle_blue:hover .addFavor_circle i {
  color: #4267b2;
}

.proList.shop .itemList .item .itemPrice:not(.del),
.proDetail .itemPrice:not(.del) {
  color: #ff5353;
}

.proDetail .itemPrice {
  font-size: 25px;
  font-weight: bold;
  padding-top: 10px;
}

.proDetail .itemPrice small {
  font-size: 19px;
}

.proList.shop .itemList .item .itemPrice:not(.del) span {
  font-size: 15px;
}

.proList .itemList .item .itemTitle {
  height: 64px;
  /* text-align: center; */
}

.tabList_center {
  justify-content: center;
}

#spec1 {
  min-width: 180px;
}

.btnColor_orange {
  background: #ff9933;
  border-color: #ff9933;
}

.btnColor_orange:hover {
  background: #ff8000;
}

.btnColor_pink {
  background: #ff5353;
  border-color: #ff5353;
}

.btnColor_pink:hover {
  background: #ff2020;
}

.share_social {
  margin-top: 10px;
  /* margin-bottom: 20px; */
}

.share_social ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.share_social ul li {
  display: inline-block;
  margin-right: 5px;
  vertical-align: top;
}

.share_social ul li .social_txt {
  font-size: 16px;
  line-height: 30px;
}

.share_social ul li .btn_clipboard {
  cursor: pointer;
}


/* checkbox_red */
form .checkbox label {
  font-weight: normal;
}

form .checkbox.checkbox_red,
form .checkbox.checkbox_red a,
form .checkbox.checkbox_red a:hover {
  color: #f00;
}

form .checkbox.checkbox_red input[type="checkbox"]+span::before {
  border-color: #f00;
}

form .checkbox.checkbox_red input[type="checkbox"]:checked+span::after {
  background-color: #f00;
}

.mb {
  display: none;
}

/* 20190715_soldOut */
.soldOut span {
  position: absolute;
  color: #ffffff;
  font-size: 35px;
  text-align: center;
  top: 50%;
  left: 0;
  right: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  z-index: 1;
  font-family: "Montserrat Alternates", arial;
}

.soldOut:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background-color: rgba(255, 0, 0, 0.5);
  z-index: 1;
}

/* 190724_edit */
[class^="btn-"] {
  font-family: arial;
}

.btn-line {
  border-radius: 15px;
  background: #00c300;
  border-width: 1px;
  border-style: solid;
  border-color: #00c300;
  letter-spacing: 1px;
  color: #fff;
  padding: 0.65em 1.5em;
  line-height: 1em;
  font-size: 16px;
  cursor: pointer;
  margin: 16px 0;
  display: inline-block;
  color: #fff;
}

.btn-line:before {
  content: "";
  background-image: url(../images/w05/line.png);
  width: 18px;
  height: 18px;
  background-size: contain;
  display: inline-block;
  vertical-align: sub;
  margin-right: .5em;
}

.mb16 {
  margin-bottom: 16px;
}

footer .footerContent:not(.copyright) .footerType3 {
  padding-top: 20px;
}


@media (max-width: 1024px) {
  .pc {
    display: none;
  }

  .mb {
    display: block;
  }
}

.proList .itemList .item .itemImg_rectangle {
  padding-bottom: 125%;
}

.proList .itemList .item .itemImg_square {
  padding-bottom: 100%;
}

.itemImg_noRadius {
  border-radius: 0;
}

.proList .itemList .item .itemImg_horizontal {
  padding-bottom: 75%;
}

.proList .itemList .item .itemInfo {
  display: block;
}


/* 20200409_edit */
.itemImgCover {
  position: relative;
  -webkit-transition: all .2s ease-in;
  transition: all .2s ease-in;
}

.itemImgCover:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  top: 0;
  opacity: 0;
  background-color: #BEDFCF;
  -webkit-transition: all .2s ease-in;
  transition: all .2s ease-in;
}

.itemImgCover:hover:after {
  opacity: 0.5;
}


/* 20200701_edit */
.proList .itemList .item .itemPrice {
  color: gray;
}

.shopdetail .itemTitle {
  color: #666666;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.5;
}

.shopDetail_button button,
.shopdetail .btn-cis1 {
  border-radius: 15px;
}


/* proList_dece */
.proList.proList_dece .itemList .item {
  align-items: center;
  width: 100%;
}

.proList.proList_dece .itemList .item .imgBox {
  width: 55%;
  position: relative;
  box-shadow: 0 0 8px rgba(0, 0, 0, .3);
}

.proList.proList_dece .itemList .item .txtBox {
  width: 45%;
  padding: 30px 60px;
  position: relative;
  background: #fff;
  box-shadow: 0 0 8px rgba(0, 0, 0, .3);
}

.proList.proList_dece .itemList .item:nth-child(2n) .imgBox {
  order: 2;
  right: 35px;
}

.proList.proList_dece .itemList .item:nth-child(2n) .txtBox {
  order: 1;
  left: 0;
  z-index: 3;
}

.proList.proList_dece .itemList .item:nth-child(2n-1) .imgBox {
  order: 1;
  left: 0;
}

.proList.proList_dece .itemList .item:nth-child(2n-1) .txtBox {
  order: 2;
  right: 35px;
}

.proList.proList_dece .itemList .item .blockTitle {
  color: #000;
  margin-bottom: 20px;
}

.proList.proList_dece .itemList .item .itemInfo {
  color: #000;
  font-size: 16px;
}

.proList.proList_dece .itemList .item .itemInfo p {
  margin: 10px 0;
}

.proList.proList_dece .itemList .item .itemInfo p:last-child {
  margin-bottom: 0;
}


@media (max-width: 768px) {
  .proList.proList_dece .itemList .item .imgBox {
    z-index: 2;
    width: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
    top: 0;
  }

  .proList.proList_dece .itemList .item .txtBox {
    position: inherit;
    display: block;
    width: 100%;
    top: 0;
    padding: 20px;
  }

  .proList.proList_dece .itemList .item:nth-child(2n) .imgBox {
    order: 1;
    right: 0;
  }

  .proList.proList_dece .itemList .item:nth-child(2n) .txtBox {
    order: 2;
    left: 0;
  }
}

/*RWD==================================================================*/

@media screen and (max-width:1800px) {
  .indexContentSlideBox {
    width: 100%;
    max-width: 1500px;
    padding: 0;
  }
@media screen and (max-width:1540px) {
  .indexVideoBox { width: 49.5%;}
}
@media screen and (max-width:1200px) {
  .Bbox_view_full,.headerType2 .navBar,.headerType2 .topLinkContent,.headerType6 .navBar {padding: 0 15px;}
  .navMenu>li{margin: 0;}
}

@media screen and (max-width:1024px) {
  #mbPanel .mbPanel_funNav .mbPanel_content>* img,
  .mbPanel .mbPanel_funNav .mbPanel_content>* img {
    max-height: 75%;
  }
  /*banner*/
  .indexContentSlideBlock1 {padding-top: 90px;}
  .indexVideoBlock {padding-top: 70px;}
  .indexContentSlideBlock2 {padding-top: 70px;}
  .slick-slider .slick-dots li button {
    width: 16px;
    height: 16px;
    margin-left: 7px;
    margin-right: 7px;
  }
  .indexNewsContent {flex-wrap: wrap;}
  .indexEventBox {
    width: 100%;
    margin-bottom: 35px;
  }
  .indexEventMarginR {margin-right: 0;}
  .indexMoreEvent {margin-top: 35px;}
  .gotop{right: 10px;}
}

@media screen and (max-width:999px) {
  .indexContentSlideBlock1 {padding-top: 50px;}
  .indexVideoBlock {padding-top: 70px;}
  .indexContentSlideBlock2 {padding-top: 30px;}
  .indexHotSaleBlock {padding-top: 70px;padding-bottom: 40px;}
  .indexNewsBlock {margin-top: 70px;}
  .indexNewsBlock .indexBlockTitle {margin-bottom: -2px;}
}

@media screen and (max-width:860px) {
  .subscribe{margin-right: 0;}
  .footerList ul:last-child {margin-right: 0;}
  .footerBottom>div { margin-bottom: 30px;}
}

@media screen and (max-width:768px) {
  #videoGallery {
    flex-wrap: wrap;
    justify-content: center;
  }
  .indexVideoBox {
    width: 100%;
    margin-bottom: 25px;
  }
  .indexVideoTitle{margin-top: 10px;}
  .eventImgBox {margin-right: 25px;}
  .eventTextBox h3 {
    margin-top: 15px;
    margin-bottom: 0px;
    line-height: 18px;
  }
  .eventTextBox p {margin: 7px 0 0 0;}
}
@media screen and (max-width:730px) {
  .footerBottom {flex-wrap: wrap;}
  .footerInfo,.footerList {width: 100%;}
  .footerList ul {margin: 0 60px 0 0;}
}
@media screen and (max-width:710px){
  .footerTop{flex-wrap: wrap;}
  .footerTop > div:first-child{margin-bottom: 20px;}
}
@media screen and (max-width:580px) {
  .indexEventBox {
    display: flex;
    flex-wrap: wrap;
  }
  .eventImgBox {
    margin-right: 0;
    margin-bottom: 10px;
  }
  .eventTextBox {
    width: 100%;
  }
}

@media screen and (max-width:520px) {
  .indexBlockTitle div:first-child {
    font-size: 28px;
    margin-bottom: 2px;
  }
  .indexBlockTitle div:last-child {
    font-size: 16px;
    letter-spacing: 14px;
  }
  .indexContentSlideBlock1 {
    padding-top: 35px;
  }
  .indexVideoBlock {padding-top: 35px;}
  #videoGallery {margin-top: 10px;}
  .indexContentSlideBlock2 {padding-top: 10px;}
  .indexHotSaleBlock {
    padding-top: 40px;
    padding-bottom: 20px;
  }
  .indexHotSaleBlock {
    padding-top: 40px;
    padding-bottom: 20px;
  }
  .indexVideoTitle {
    font-size: 16px;
    line-height: 24px;
  }
  .indexEventBg {padding-bottom: 70px;}
  .footerBottom {padding: 20px 10px 25px 10px;}
  .footerBottom>div {margin-bottom: 15px;}
  .gotop img{width: 46px;height: 46px;}
}

@media screen and (max-width:420px) {
  .indexCourseList {flex-wrap: wrap;}
  .indexCourseList li {width: 50%;}
  .indexCourseList li a {font-size: 18px;}
  .indexCourseList li:nth-child(4) {background-color: #1E1B20;}
  .indexCourseList li:nth-child(3) {background-color: #444445;}
}

@media screen and (max-width:414px) {
  .footerTop {padding: 30px 10px 25px 10px;}
  .footerSocialBar a {
    margin: 0 10px;
    width: 40px;
    height: 40px;
  }
}

@media screen and (max-width:375px) {
  .indexEventTime {
    right: -7px;
    bottom: -7px;
  }
}
@media screen and (max-width:320px){
  .subscribe{
    background-color: initial;
    text-align: center;
  }
  .subscribe input{width: calc(100% - 93px);}
  .subscribe_btn{padding: 10px;}
}

