@charset "UTF-8";
/* ================================================
Basic
================================================ */
body {
  min-width: 1250px;
  color: #333;
  font: 13px/1.6em "Century Gothic", Arial, "Microsoft JhengHei", "蘋果儷中黑", "儷黑 Pro", "新細明體", "sans-serif";
  background-color: #101010;
}
a {
  display: block;
  text-decoration: none;
}
:focus {
  outline: none;
}
i {
  font-style: normal;
}
.header, .footer {
  width: 100%;
  margin: auto;
  background: #fff;
}
:root {
  --animate-delay: 0.5s;
  --swiper-theme-color: #747474;
}
.hd_pc {
  width: 100%;
}
.hd_m {
  display: none;
}
.pc_mode {
  display: block;
}
.m_mode {
  display: none;
}
.M_menu_wrap {
  display: none;
}
/**wrapper**/
.wrapper {
  position: relative;
  background-color: #101010;
  margin: auto;
  width: 100%;
  overflow: hidden;
}
/**main**/
.main {
  position: relative;
  margin: auto;
  width: 100%;
  overflow: hidden;
}
/* ================================================
kv
================================================ */
.kv_wrapper {
  position: relative;
  background: url('../images/kv_bg.png') no-repeat top center;
  z-index: 2;
}
.kv {
  position: relative;
  z-index: 1;
  margin: auto;
  max-width: 1200px;
  height: 960px;
}
.kv img {
  width: 100%;
  max-width: 100%;
}
.kv_logo {
  position: absolute;
  top: 1%;
  left: 2%;
  width: 12%;
  z-index: 2;
}
/**kv_slogan**/
.kv_slogan1 {
  position: absolute;
  top: 14%;
  left: 18%;
  width: 46%;
  z-index: 2;
}
.kv_slogan2 {
  position: absolute;
  top: 25%;
  left: 24%;
  width: 44%;
  z-index: 3;
}
/**.kv_slogan1 img {
  -webkit-animation: lighting 2s ease-in-out infinite alternate;
  animation: lighting 2s ease-in-out infinite alternate;
}**/
.kv_date {
  position: absolute;
  left: 22%;
  top: 8%;
  width: 33%;
  z-index: 2;
}
.kv_people {
  position: absolute;
  left: -30%;
  top: 6%;
  width: 67%;
  z-index: 2;
}
.kv_people img {
  animation: lightning 2s ease-in-out infinite alternate, upDown_animation 1s ease-in-out infinite alternate;
}
/* ================================================
kv_prod
================================================ */
.kv_prod {
  position: absolute;
  right: 0;
  top: 13%;
  width: 36%;
  z-index: 2;
}
/* ================================================
event_wrapper
================================================ */
.event_wrapper {
  max-width: 1200px;
  left: 0;
  right: 0;
  margin: auto;
  position: absolute;
  bottom: 0;
  z-index: 3;
}
.event_wrapper ul {
  display: flex;
  justify-content: space-between;
}
@media (hover:hover) {
  .event_wrapper li a {
    transition: 0.3s all ease-in;
  }
  .event_wrapper li a:hover {
    transform: translateY(-10px);
    filter: brightness(1.3);
  }
}
/*bg_wrapper*/
.bg_wrapper {
  /**display: none; **/
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  z-index: 1;
  pointer-events: none;
}
.bg_fly {
  top: 0;
  width: 100%;
  height: 100%;
  background: url("../images/deco.png") center repeat-y;
}
/* ================================================
prod_wrapper
================================================ */
.title_temp {
  max-width: 1200px;
  margin: auto;
}
.pro_temp {
  display: none;
}
.prod_wrapper {
  position: relative;
  padding-bottom: 0;
}
.prod_container {
  padding-bottom: 100px;
  position: relative;
  overflow: hidden;
}
.ProductList {
  margin: auto;
  position: relative;
}
/**title**/
.tit {
  display: none;
  margin: auto;
}
.group {}
.group .tit {
  display: block !important;
  width: 100%;
  position: relative;
  z-index: 2;
  top: -75px;
}
.group .tit a {
  color: #fff;
  font-size: 45px;
  font-weight: bold;
  max-width: 695px;
  margin: auto;
  height: 154px;
  position: relative;
  cursor: default;
  font-weight: bold;
  background: url("../images/title_bg.png") no-repeat;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
/**more**/
.group .tit a span {
  color: #000;
  background: linear-gradient(275deg, rgba(247, 247, 247, 1) 0%, rgba(195, 187, 174, 1) 100%);
  font-size: 50%;
  padding: 7px 16px;
  border-radius: 30px;
  margin-left: 5px;
  text-align: center;
}
/**PID group**/
.group {
  box-sizing: border-box;
  max-width: 1170px;
  width: 100%;
  margin: 0 auto;
  margin-top: 150px;
  padding-bottom: 80px;
  padding-left: 20px;
  padding-right: 20px;
  position: relative;
  z-index: 2;
  background: url("../images/prod_bg.png") no-repeat top center;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
}
/**product**/
.ProductList {}
.ProductImg .tab {
  color: #ffffff;
  font-size: 18px;
  font-weight: bold;
  display: inline-block;
  background-color: #e04d34;
  padding: 10px 20px;
  border-radius: 0 0 10px 10px;
  box-shadow: rgb(0 0 0 / 35%) 2px 2px 3px;
  position: absolute;
  top: 0;
  left: 10px;
  z-index: 4;
}
.ProductList .ProductDesc {
  background: linear-gradient(90deg, #e04d34 0%, #ffb02c 100%);
}
.ProductList .item {
  text-align: center;
  width: 240px;
  margin-bottom: 15px;
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.45);
  transition-timing-function: ease-out;
  ;
  transition-duration: 0.1s;
}
.ProductList .item > a {
  display: block;
}
@media(hover:hover) {
  .ProductList .item:hover, .ProductList .item:focus, .ProductList .item:active {
    transform: translateY(-5px)
  }
}
.ProductList .item .ProductImg {
  position: relative;
  overflow: hidden;
  margin: 0 auto;
  margin-bottom: 3px;
  width: 100%;
  max-width: 100%;
}
.ProductList .item .ProductImg img {
  max-width: 100%;
  max-height: 100%;
  object-fit: cover;
}
.item .ProductDesc {
  overflow: hidden;
  padding: 0 5px;
  height: 36px;
  color: #000;
  font-weight: bold;
  font-size: 15px;
  line-height: 36px;
  background: linear-gradient(275deg, rgba(228, 206, 163, 1) 0%, rgba(255, 244, 220, 1) 100%);
  width: 90%;
  margin: 2px auto;
  border-radius: 50px;
}
.item .ProductName {
  overflow: hidden;
  padding: 4px 5px;
  height: 38px;
  color: #000;
  text-align: center;
  font-size: 16px;
  line-height: 21px;
}
.item .ProducPrice, .item .Event_Condition {
  padding: 7px 10px 0 10px;
  height: 45px;
  color: crimson;
  position: relative;
  margin-top: 3px;
}
.item .ProducPrice label {
  cursor: pointer;
}
.item .ProducPrice i em span {
  margin: 0 10px 0 0;
  font-weight: 100;
  font-size: 13px;
}
.item .ProducPrice span, .item .Event_Condition i span {
  margin: 0 2px 0 2px;
  font-weight: 500;
  font-size: 33px;
  line-height: 37px;
  font-weight: bold;
}
.item .ProducPrice i em {
  color: #747474;
  text-decoration: line-through;
  font-style: normal;
}
.item .ProducPrice .price_txt {
  color: crimson;
  font-size: 15px;
  line-height: 26px;
}
/**tag wfe******************/
.tag_wfe {
  position: relative;
  top: -5px;
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url("//www.payeasy.com.tw/pezlib/images/tag_wfe_s.png") left;
  background-size: cover;
}
.tag_wfe:before {
  display: inline-block;
  height: 100%;
  content: '';
  vertical-align: text-bottom;
}
.tag_wfe .brief:after {
  position: absolute;
  top: 10px;
  left: -10px;
  width: 0;
  height: 0;
  border-color: transparent #E36E1A transparent transparent;
  border-style: solid;
  border-width: 5px;
  content: '';
  font-size: 0;
  line-height: 0;
}
.tag_wfe.checked {
  background-position: right;
}
.tag_wfe.checked:hover .brief {
  display: none;
}
.tag_wfe .brief {
  position: absolute;
  top: -5px;
  left: 25px;
  z-index: 10;
  display: none;
  width: 64px;
  background: #E36E1A;
  color: #f6f6f6 !important;
  text-align: center;
  font-size: 12px !important;
  line-height: 16px !important;
}
.tag_wfe:hover .brief {
  display: block;
}
/* ================================================
NavArea
================================================ */
.gotop {
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  font-size: 22px;
  line-height: 60px;
  text-align: center;
  height: 60px;
  position: fixed;
  left: calc(50% + 620px);
  width: 60px;
  border-radius: 30px;
  bottom: 250px;
  z-index: 999;
  display: none;
  cursor: pointer;
}
.NavArea {
  display: none;
}
@media screen and (min-width: 821px) {
  /**NavArea**/
  .NavArea {
    display: none;
    width: 140px;
    position: fixed;
    top: 50px;
    right: 0;
    z-index: 250;
    animation: slideLeft 1s ease-in-out 1;
  }
  @keyframes slideLeft {
    0% {
      transform: translateX(150%);
    }
    50% {
      transform: translateX(-8%);
    }
    65% {
      transform: translateX(4%);
    }
    80% {
      transform: translateX(-4%);
    }
    95% {
      transform: translateX(2%);
    }
    100% {
      transform: translateX(0%);
    }
  }
  .Nav-slide.active {
    color: #fff;
    background: #977d68;
    text-shadow: #000 0 0 0.5em;
  }
  .float_tit {
    text-align: center;
  }
  .float_main {
    width: 138px;
    opacity: 0.9;
    filter: alpha(opacity=90);
  }
  .go_top {
    display: block;
    cursor: pointer;
  }
  .Nav-wrapper {
    background-color: rgb(49 47 57 / 95%);
    width: 105px;
    margin: -8px auto 0;
    padding-top: 10px;
    border-top-right-radius: 10px;
    border-top-left-radius: 10px;
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
  }
  .Nav-wrapper li {
    font-size: 15px;
    line-height: 15px;
    text-align: center;
    background: transparent;
    margin: 1px auto; /**可調整上下間距**/
    padding: 5px 0;
    position: relative;
  }
  .Nav-wrapper li.highlight0 {
    font-size: 24px;
    line-height: 26px;
    border-radius: 20px 0 0 0;
    padding-top: 20px;
    padding-left: 2px;
    color: #fff;
    font-weight: bold;
  }
  .Nav-wrapper li.highlight1 {
    padding-left: 2px;
  }
  .Nav-wrapper li.highlight2 {
    font-size: 24px;
    border-radius: 0 0 20px 20px;
    padding-bottom: 20px;
    padding-left: 2px;
  }
  .Nav-wrapper li.go_top:before {
    content: ' ';
    display: block;
    background: url("../images/float_bottom.png");
    position: absolute;
    width: 126px;
    height: 116px;
    bottom: -85px;
    right: -20px;
    z-index: 251;
  }
  .Nav-wrapper li a {
    color: #ffecc4;
    font-weight: bold;
    cursor: pointer;
    display: block;
    padding: 2px 0;
    position: relative;
    z-index: 500;
  }
  .Nav-wrapper li.best a {
    background-color: #000;
    padding: 8px 0;
    margin: 0 5px;
    border-radius: 30px;
  }
  .Nav-wrapper li a:hover, .Nav-wrapper li a:focus, .Nav-wrapper li a:active {
    color: #fff;
    text-shadow: #fff 0 0 1em;
  }
  .Nav-wrapper li:after {
    background: #fff;
    box-shadow: #fff 0 0 1em;
    height: 2px;
    position: absolute;
    right: 51%;
    left: 51%;
    bottom: 0;
    z-index: 1;
    content: "";
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: left, right;
    transition-property: left, right;
  }
  .Nav-wrapper li:hover:after {
    right: 10%;
    left: 10%;
  }
  .Nav-wrapper li.highlight0:after {
    background: transparent;
  }
}
/* ================================================
- 底部選單
================================================ */
.M_menu_wrap {
  display: none;
}
.M_menu_block {
  background: rgba(85, 85, 85, 0.85);
  background: -moz-linear-gradient(0deg, rgba(85, 85, 85, 0.85) 0%, rgba(17, 17, 17, 0.85) 100%);
  background: -webkit-linear-gradient(0deg, rgba(85, 85, 85, 0.85) 0%, rgba(17, 17, 17, 0.85) 100%);
  background: linear-gradient(0deg, rgba(85, 85, 85, 0.85) 0%, rgba(17, 17, 17, 0.85) 100%);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
@media screen and (max-width:768px) {
  .M_menu_wrap {
    display: block;
    font-size: 15px;
    position: fixed;
    bottom: 0;
    z-index: 200;
  }
  .M_menu_block {
    position: fixed;
    bottom: 0; /**background: rgba(0,0,0,1)**/ ;
    width: 100%;
    z-index: 200;
  }
  .M_menu_block ul li {
    width: 25vw;
    box-sizing: border-box;
    text-align: center;
    float: left;
    height: 50px;
    cursor: pointer;
    border-top: 1px solid #999;
    border-right: 1px solid #666;
    border-left: 1px solid #222;
  }
  .rule .M_menu_block ul li /* - 活動說明頁 : 規則頁 rule */ {
    width: 26vw;
  }
  .M_menu_block ul li.M_menu_gotop {
    background: linear-gradient(0deg, #173c68 0%, #0378af 100%);
    width: 22vw;
  }
  /**.M_menu_block ul li:last-child {border:none;}**/
  .M_menu_block ul li:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    height: 100%;
  }
  .M_menu_block ul li a {
    display: inline-block;
    width: 100%;
    color: #fff;
    font-size: 15px;
    line-height: 16px;
    vertical-align: middle;
  }
  .M_menu_block ul li a b {
    display: inline-block;
    text-shadow: 0 0 2px black;
    box-sizing: content-box;
    background: #e04d34;
    padding: 5px;
    width: 1em;
    height: 1em;
    border-radius: 100px;
  }
  .M_menu_block ul li.best a {
    color: yellow;
  }
  .M_menu_filter {
    display: none;
    position: fixed;
    bottom: 60px;
    width: 95%;
    margin: auto;
    left: 0;
    right: 0;
    background: #fefefe;
    border-radius: 10px;
    z-index: 200;
  }
  .M_menu_filter:after {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-width: 7px;
    border-color: #fefefe transparent transparent transparent;
    border-style: solid;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -14px;
    margin: auto;
  }
  .M_menu_filter ul li { /*width: 33.3%;*/ box-sizing: border-box;
    text-align: center;
    float: left;
    height: 50px;
    padding: 5px;
  }
  .M_menu_filter ul li a {
    background: darkred;
    display: block;
    font-size: 14px;
    height: 35px;
    color: #fff;
    vertical-align: middle;
    border-radius: 20px;
  }
  .M_menu_filter ul li a:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    height: 100%;
  }
  .bk_mask {
    display: none;
    position: fixed;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, .8);
    top: 0;
    z-index: 100;
  }
}
/* ================================================
- 自適應
================================================ */
@media screen and (max-width: 1200px) {
  body {
    width: 100vw;
    min-width: inherit;
  }
  * {
    box-sizing: border-box;
  }
  .header {
    width: 100vw;
  }
  .footer {
    display: none;
  }
  .hd_pc {
    display: none;
  }
  .hd_m {
    display: block;
  }
  .pc_mode {
    display: none;
  }
  .m_mode {
    display: block;
  }
  /**wrapper**/
  .wrapper {}
  .bg_wrapper {
    display: none;
  }

  /**kv**/
  .kv_wrapper {
    width: 100vw;
    background-size: 173vw;
  }
  .kv {
    width: 100vw;
    height: 86vw;
  }
  .kv_logo {
    display: none;
  }
  .event_wrapper {
    width: 96%;
  }
  .event_wrapper li {
    width: 32%;
  }
  .event_wrapper img {
    width: 100%;
  }
  /* ================================================
prod_wrapper
================================================ */
  .prod_wrapper {
    margin-top: 10px;
  }
  .prod_wrapper_bg {
    width: 100vw;
  }
  .prod_container {
    padding-bottom: 30px; /*無底部*/
  }
  .ProductList {
    width: 100vw;
  }
  .group {
    background-size: 98vw;
    padding-bottom: 10vw;
    margin-top: 10vw;
  }
  .group .tit {
    height: 10vw;
  }
  /***/
  .ProductList .item {
    width: 24%;
  }
  .item .ProducPrice {
    padding: 7px 0 0 0;
  }
  .item .ProducPrice span, .item .Event_Condition i span {
    font-size: 25px;
    font-weight: bold;
  }
  .item .ProducPrice span, .item .Event_Condition i span {
    line-height: 25px;
  }
  .item .ProducPrice i em span {
    margin-right: 5px;
    font-size: 12px;
    font-weight: bold;
  }
  .item .ProductName {
    height: 40px;
    font-size: 14px;
    line-height: 18px;
  }
  .item .ProductDesc {
    font-size: 14px;
	  height: 30px;
	  line-height: 30px;
    width: 95%;
    overflow: hidden;
  }
  /**M_menu**/
  .M_menu_block {
    width: 100vw;
    /* background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #555), color-stop(100%, #111)); */
    box-shadow: 0px -1px 1px #333;
  }
  .M_menu_block:after {
    clear: both;
    display: table;
    content: '';
  }
  .M_menu_block ul {
    overflow: hidden;
  }
  .M_menu_block li {
    float: left;
    /* padding-top: 7px; */
    width: 20vw;
    height: 55px;
    border-top: 1px solid #999;
    border-right: 1px solid #666;
    border-left: 1px solid #222;
    text-align: center;
  }
  .M_menu_block li.col-4 {
    width: 25vw;
  }
  .M_menu_block li a {
    color: #fff;
    display: inline-block;
    line-height: 19px;
  }
  .M_menu_block ul li.best {
    width: 100vw;
  }
  .M_menu_block ul li.best a {
    color: yellow;
  }
  .M_menu_block ul li:before {
    display: inline-block;
    height: 100%;
    content: '';
    vertical-align: middle;
  }
  /**/
  .tag_wfe {
    top: auto;
  }

  .go-back-btn {
    /* margin: auto;
    position: absolute;
    left: 0; right: 0;
    bottom: 0; */
    margin: -35px auto 0;
    padding-bottom: 58px;
  }
}
@media screen and (max-width: 992px) {
  /* 右側懸浮 float */
  .gotop {
    font-size: 18px;
    line-height: 40px;
    height: 40px;
    left: auto;
    right: 10px;
    width: 40px;
    bottom: 80px;
    display: none;
  }
  .NavArea {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 999;
    /* display: block; */
    display: none;
  }
  .NavArea .Nav {
    position: relative;
    margin: 0;
    padding: 0;
    overflow-x: scroll;
    background-color: #000;
  }
  .NavArea .Nav ul {
    white-space: nowrap;
  }
  .NavArea .Nav li {
    z-index: 10;
    position: relative;
    display: inline-block;
    padding: 0;
    overflow: hidden;
    width: auto;
    font-weight: inherit;
    text-align: center;
  }
  .NavArea .Nav li:nth-child(odd) {
    background-color: #131313;
  }
  .NavArea .Nav a {
    color: #fff;
    text-decoration: none;
    line-height: 44px;
    position: relative;
    padding: 0 12px;
    height: 44px;
  }
  .Nav-slide.active a {
    color: salmon;
  }
  .float_tit {
    display: none !important;
  }
  /**prod**/
  .group {
	  margin-top: 12vw;
	}
  .group .tit {
    height: 2vw;
    top: -12vw
  }
  .group .tit a {
    font-size: 40px;
    background-size: contain;
    background-position: center;
    height: 13vw;
  }
}
@media screen and (max-width: 576px) {
	.ProductList .item{
		width: 48%;
	}
	.group{
		background-image: url("../images/prod_bg_m.png");
	}
	.group .tit a {
    line-height:1;
    font-size: 1.8em;
  }
	.swiper-pagination{
		display: none
	}

  /**more**/

}
@media screen and (max-width: 320px) {
  .item .ProducPrice i em span {
    font-size: 11px;
  }
  .item .ProducPrice .price_txt {
    font-size: 13px;
  }
	.item .ProducPrice span, .item .Event_Condition i span{
		font-size: 22px;
	}
  .tag_wfe {
	  display: none;
    width: 16px;
    height: 16px;
  }
}