@charset "UTF-8";
@import url("/css/font-awesome-4.5.0/css/font-awesome.min.css");
.translateToX {
  opacity: var(--opacity);
  -webkit-transform: translateX(var(--translateX));
          transform: translateX(var(--translateX));
  will-change: transform;
  -webkit-transition: -webkit-transform .5s linear;
  transition: -webkit-transform .5s linear;
  transition: transform .5s linear;
  transition: transform .5s linear, -webkit-transform .5s linear;
}

.translateToY {
  opacity: var(--opacity);
  -webkit-transform: translateY(var(--translateY));
          transform: translateY(var(--translateY));
  will-change: transform;
  -webkit-transition: -webkit-transform .5s linear;
  transition: -webkit-transform .5s linear;
  transition: transform .5s linear;
  transition: transform .5s linear, -webkit-transform .5s linear;
}

.img-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

table {
  font-family: "新細明體", "細明體";
}

table tbody, table tfoot, table thead, table th, table td {
  vertical-align: middle;
  margin: 0 !important;
}

.gotoheader {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: 1.5em;
  margin-top: 20px;
  text-align: center;
}

.gotoheader a {
  display: inline-block;
  color: #6198ff;
}

.gotoheader a:hover {
  color: #aeffe3;
}

.wrapper {
  background-image: url(../../images/indexBg.jpg);
  background-color: #030011;
  background-position: top center;
  background-repeat: no-repeat;
  color: #fff;
}

/* ================= 版頭 ================= */
.header {
  width: 100%;
}

.header .container {
  width: 1280px;
  height: 664px;
  position: relative;
}

.header .slogan_main {
  width: 399px;
  height: 266px;
  position: absolute;
  top: 209px;
  left: 458px;
  background: url(../../images/main.png);
}

.header .slogan {
  width: 997px;
  height: 245px;
  position: absolute;
  top: 463px;
  left: 174px;
  background: url(../../images/slogan.png);
}

.header .logo, .header .logo a {
  width: 177px;
  height: 119px;
  display: block;
}

.header .logo {
  position: absolute;
  top: 34px;
  left: 553px;
  z-index: 9;
  background-image: url(../../images/logo.png);
}

/* ================= 頁面選單 ================= */
.nav {
  width: 100%;
  position: relative;
  z-index: 1;
  padding-bottom: 50px;
  -webkit-animation: slideInDown .5s;
          animation: slideInDown .5s;
}

.nav .container {
  width: 1280px;
  position: relative;
}

.nav .navBtn {
  width: 942px;
  position: relative;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.nav .navBtn li {
  display: block;
  list-style: none;
  text-indent: -9999px;
  float: left;
  width: 314px;
  height: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.nav .navBtn li.navBtn1 a {
  background-position-x: 0px !important;
}

.nav .navBtn li.navBtn2 a {
  background-position-x: -306px !important;
}

.nav .navBtn li.navBtn3 a {
  background-position-x: -612px !important;
}

.nav .navBtn li.navBtn4 a {
  background-position-x: -918px !important;
}

.nav .navBtn li.navBtn5 a {
  background-position-x: -1224px !important;
}

.nav .navBtn li.navBtn6 a {
  background-position-x: -1530px !important;
}

.nav .navBtn li a:hover, .nav .navBtn li.action a {
  background-image: url(../../images/navBtn_action.png);
}

.nav .navBtn li a {
  width: 306px;
  height: 93px;
  display: block;
  background-image: url(../../images/navBtn.png);
  margin: 0 auto;
}

.nav .navBtn li a:hover {
  -webkit-animation: headShake 1s infinite;
          animation: headShake 1s infinite;
}

/* ================= 內容 ================= */
.content {
  width: 100%;
}

.content .container {
  width: 900px;
  padding: 30px 0;
}

.content .container .btnM, .content .container .btnM a {
  width: 147px;
  height: 173px;
}

.content .container .btnM {
  position: absolute;
  top: 30px;
  right: 30px;
}

.content .container .btnM a {
  -webkit-transition: all .5s;
  transition: all .5s;
  background: url("../../images/btnM_hover.png");
}

.content .container .btnM a:hover, .content .container .btnM.action a {
  background: url("../../images/btnM_hover.png");
  -webkit-transition: all .5s;
  transition: all .5s;
}

.content .container h3 {
  font-size: 1.5em;
  font-weight: bold;
  padding: 0 0 30px 0;
  width: 100%;
}

.content .container h3 img {
  display: block;
  max-width: 427px;
  width: 60%;
  margin: 0 auto;
}

.content .container h4 {
  position: relative;
  display: block;
  color: #F9D580;
  border-radius: 5px;
  font-weight: bold;
  font-size: 1.2rem;
  margin: 16px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media only screen and (max-width: 798px) {
  .content .container h4 {
    font-size: 1.125rem;
  }
}

.content .container h4:before {
  content: '';
  background-image: url("../../images/diamond.svg");
  background-size: 100%;
  width: 2em;
  height: 2em;
  display: inline-block;
  margin: 0 5px;
}

.content .container h5 {
  font-size: 1.2em;
  padding: .8em;
  text-align: center;
  background-image: #c4171c;
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(208, 104, 69, 0)), color-stop(20%, #d06845), color-stop(40%, #c4171c), color-stop(60%, #c4171c), color-stop(80%, #d06845), to(rgba(208, 104, 69, 0)));
  background-image: linear-gradient(to left, rgba(208, 104, 69, 0) 0%, #d06845 20%, #c4171c 40%, #c4171c 60%, #d06845 80%, rgba(208, 104, 69, 0) 100%);
}

.content .container > p {
  margin-left: 2rem;
}

.content .container > p a {
  color: #EE00FD;
  text-decoration: underline;
}

.content .container > p a:hover {
  color: #1cc9fd;
}

.content .container > p.txt-center {
  margin-left: 0;
}

.content .container ol a,
.content .container ul a {
  color: #EE00FD;
  text-decoration: underline;
}

.content .container ol a:hover,
.content .container ul a:hover {
  color: #1cc9fd;
}

.content__btn div {
  color: #fff;
  text-align: center;
  margin-bottom: 38px;
}

.content__btn div a:hover, .content__btn div.action a {
  width: 120px;
  border-radius: 18px;
  border: 1px solid #9bc6ff;
  background-image: #4e9bff;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#006dfb), color-stop(20%, #006dfb), color-stop(40%, #4e9bff), color-stop(60%, #4e9bff), color-stop(80%, #006dfb), to(#006dfb));
  background-image: linear-gradient(to bottom, #006dfb 0%, #006dfb 20%, #4e9bff 40%, #4e9bff 60%, #006dfb 80%, #006dfb 100%);
  color: #fff799;
}

.content__btn div a {
  background: #dfdfdf;
  /* Old browsers */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(20%, #dfdfdf), to(#b8b8b8));
  background: linear-gradient(to bottom, #dfdfdf 20%, #b8b8b8 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  color: #303030;
  border-radius: 18px;
  border: 1px solid #f1f1f1;
}

.content__btn div .label:before {
  color: #ffe049;
  text-shadow: 1px 1px 2px #4f2a00;
  font-size: 3.5em;
}

.content__btn div .label:after {
  color: #4a0000;
  font-size: 0.7em;
}

.btnBox a {
  border: 1px solid #cf33ff;
  cursor: pointer;
  background-image: #c300ff;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#9400c2), color-stop(20%, #9400c2), color-stop(40%, #c300ff), color-stop(60%, #c300ff), color-stop(80%, #9400c2), to(#9400c2));
  background-image: linear-gradient(to bottom, #9400c2 0%, #9400c2 20%, #c300ff 40%, #c300ff 60%, #9400c2 80%, #9400c2 100%);
  -webkit-box-shadow: 0px 3px 3px #4e0066;
          box-shadow: 0px 3px 3px #4e0066;
  color: #fff;
}

.btnBox a:hover {
  border: 1px solid #fffad1;
  background-image: #fff59e;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#ffef61), color-stop(20%, #ffef61), color-stop(40%, #fff59e), color-stop(60%, #fff59e), color-stop(80%, #ffef61), to(#ffef61));
  background-image: linear-gradient(to bottom, #ffef61 0%, #ffef61 20%, #fff59e 40%, #fff59e 60%, #ffef61 80%, #ffef61 100%);
  -webkit-box-shadow: 0px 2px 2px #ffe505, inset 0 1px 1px 1px #fff9c7, inset 0 -8px 8px 0px #fffdf0;
          box-shadow: 0px 2px 2px #ffe505, inset 0 1px 1px 1px #fff9c7, inset 0 -8px 8px 0px #fffdf0;
  top: 2px;
  color: #665b00;
}

/* ================= item__box ================= */
.item__box {
  background: white;
  border: 0;
  border-radius: 10px 10px 0 0;
  border: 3px solid #e9ca74;
  margin: 0 auto;
}

.item__box .item__box--shadow {
  -webkit-box-shadow: 0px 2px 2px 2px rgba(25, 23, 39, 0.2);
          box-shadow: 0px 2px 2px 2px rgba(25, 23, 39, 0.2);
}

.item__box .item__box-title {
  background: -webkit-gradient(linear, left top, right top, from(#e2b948), color-stop(20%, #e9ca74), color-stop(80%, #e9ca74), to(#e2b948));
  background: linear-gradient(to right, #e2b948 0%, #e9ca74 20%, #e9ca74 80%, #e2b948 100%);
  color: #58440e;
}

.item__box .item__box-title img {
  display: block;
  margin: 0 auto;
}

.item__box .item__box-get {
  text-align: center;
  color: #ff9100;
  font-weight: bold;
}

.item__box .item__box-get .plus {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.item__box .item__box-text {
  text-align: left;
}

.item__box .item__box--02 {
  background-color: #ffffff;
  border: 3px #6198ff solid;
  border-radius: 10px;
  height: 100%;
}

.item__box .item__box--02 .item__box-title {
  color: #58440e;
}

.item__box-img img {
  border-radius: 0px;
}

.item-title {
  width: 96%;
  margin: 0 auto;
  text-align: center;
  font-weight: bold;
  background-color: #6198ff;
  border-radius: 12px;
  border: 3px solid #000;
  padding: 5px 0;
}

.item-title img {
  vertical-align: middle;
}

/*================= table================= */
.table tr th, .table tr td {
  border: 1px solid #ffb3b3;
}

.table {
  font-family: "Helvetica Neue","微軟正黑體","Helvetica","Arial","PingFangTC-Light","STHeitiTC-Light","Microsoft JhengHei",sans-serif;
  font-size: 1em;
  border-collapse: initial;
  border-radius: 5px;
  color: #202c0d;
  border: 3px solid #ffb3b3;
  table-layout: fixed;
}

.table tr {
  background: #fff;
}

.table tr th {
  position: relative;
  background: -webkit-gradient(linear, left bottom, left top, from(#d60000), to(#ff0000));
  background: linear-gradient(to top, #d60000 0%, #ff0000 100%);
  color: #fff;
}

.table tr th.thStyle02 {
  color: #752b00;
  background: #ffec80;
}

.table tr td {
  /*單格變色*/
}

.table tr td p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.table tr td img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
}

.table tr td img.img-inline {
  width: 4em;
  display: inline;
  margin: 0;
}

.table tr td[data-tdstyle="style01"] {
  background-color: #f6f6f6;
}

/* ================= 說明框 ================= */
.explanation .note-main {
  color: #210032;
  border: 5px solid #fff;
  -webkit-box-shadow: 0px 0px 8px 2px #6198ff;
          box-shadow: 0px 0px 8px 2px #6198ff;
  background: -webkit-gradient(linear, left bottom, left top, from(#87b1ff), to(#3b7fff));
  background: linear-gradient(to top, #87b1ff 0%, #3b7fff 100%);
  margin: 0 auto;
  padding: 10px 20px;
  text-align: left;
  color: 219.11392deg;
  color: 69.01961%;
  color: #fff;
}

.explanation .note-main .icon_tit {
  width: 169px;
  height: 169px;
  position: absolute;
  top: -47%;
  left: 56%;
  z-index: 9;
  background-image: url(../../images/icon_tit.png);
  background-repeat: no-repeat;
  background-position: center;
}

.explanation .symbol {
  color: #fff;
}

@media only screen and (max-width: 798px) {
  .explanation .symbol {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
}

/*================= tableNote =================*/
.DESClabel {
  position: relative;
}

.DESClabel .label {
  width: 110px;
  position: absolute;
  top: -3em;
  left: 50%;
  -webkit-transform: translateX(20px);
          transform: translateX(20px);
  padding: 5px;
  background-color: #af2ec6;
  color: #fff;
  border-radius: 10px;
  font-size: 0.85rem;
  line-height: 1.125em;
  text-indent: 0;
  z-index: 1;
}

.DESClabel .label::before {
  content: '';
  position: absolute;
  height: 0;
  width: 0;
  border-top: 15px solid #af2ec6;
  border-right: 15px solid transparent;
  right: 60%;
  bottom: -15px;
  -webkit-transform: skewX(-15deg);
          transform: skewX(-15deg);
}

.comment {
  z-index: 1;
}

.comment:before {
  font-size: 3.5em;
  color: #d31818;
}

.comment:after {
  font-size: 1.125em;
  letter-spacing: 0;
}

.comment-purple:before {
  color: #d858ff;
}

.comment01 {
  top: -0.5em;
  left: inherit;
  right: 8em;
}

.comment01::before {
  font-size: 7.5em;
}

.ribbon {
  width: 30px;
  background: linear-gradient(-20deg, #e560ff 0%, #f6c6ff 80%, #e560ff 100%);
  top: -6px;
  right: -5px;
  padding: 0;
  font-size: 1rem;
  line-height: 1.125em;
  padding: 10px;
  letter-spacing: 2px;
  font-weight: bold;
  color: #550066;
}

@media only screen and (max-width: 798px) {
  .ribbon {
    width: 48px;
    height: 110px;
    right: -38px;
    font-size: .88rem;
  }
}

@media only screen and (max-width: 560px) {
  .ribbon {
    right: -5px;
  }
}

.ribbon:before {
  border-bottom: 6px solid #d000f9;
  border-left: 6px solibad transparent;
  left: -6px;
  top: 0;
}

@media only screen and (max-width: 560px) {
  .ribbon:before {
    border-bottom: 6px solid #d000f9;
    border-right: 0 solid transparent;
    border-left: 6px solid transparent;
    right: initial;
    left: -6px;
    top: 0;
  }
}

.ribbon:after {
  border-left: 15px solid #e76dff;
  border-right: 15px solid #e76dff;
  border-bottom: 12px solid transparent;
  bottom: -12px;
  left: 0;
}

@media only screen and (max-width: 798px) {
  .ribbon:after {
    border-left: 24px solid #e76dff;
    border-right: 24px solid #e76dff;
  }
}

.ribbon_01 {
  width: 80%;
  height: 24px;
  margin-left: -9px;
}

.ribbon_01 p {
  font-size: 12px;
  line-height: 1em;
}

.ribbon_01:before {
  margin-top: -8.5px;
  left: 0;
  border-bottom: 9px solid black;
  border-left: 9px solid transparent;
}

.ribbon_01:after {
  width: 0;
  top: 0;
  left: 100%;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
}

.ribbon_01--A {
  background: linear-gradient(-65deg, #004984 0%, #0081ea 80%, #004984 100%);
  margin-left: -15px;
}

@media only screen and (max-width: 798px) {
  .ribbon_01--A {
    width: 95%;
    height: 35px;
  }
}

.ribbon_01--A:before {
  border-bottom: 9px solid #00111e;
}

.ribbon_01--A:after {
  border-left: 15px solid #004984;
}

@media only screen and (max-width: 798px) {
  .ribbon_01--A:after {
    border-top: 17.5px solid transparent;
    border-bottom: 17.5px solid transparent;
  }
}

.certificate:before {
  font-family: "FontAwesome";
  display: inline-block;
  position: absolute;
}

.certificate:after {
  content: attr(data-comment);
  white-space: pre;
  position: absolute;
  display: inline-block;
}

.certificate {
  position: absolute;
  top: 10px;
  right: 30px;
  -webkit-transform: rotate(20deg);
          transform: rotate(20deg);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media only screen and (max-width: 798px) {
  .certificate {
    top: 0;
    right: 25px;
  }
}

.certificate:before {
  content: '\f0a3';
  font-size: 100px;
  color: #ff7b00;
  text-align: center;
}

.certificate:after {
  color: #fff;
  font-weight: bold;
  font-size: 1em;
  line-height: 1.25em;
  letter-spacing: 0px;
  text-align: center;
}

.giftLabel {
  background: url(../../images/label.svg);
  width: 5em;
  height: 5em;
  position: absolute;
  top: -.8em;
  left: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.giftLabel:before {
  content: attr(data-content);
  display: inline-block;
  color: #fff;
  font-size: 1.125em;
  white-space: pre;
  line-height: 1.025em;
  position: absolute;
  top: .8em;
}

/*================= box-單雙欄分色(box-compose) ================= */
.box-compose .title p {
  background: #a2002a;
  padding: 5px;
  text-align: center;
}

.box-compose .box-composeMain {
  border-radius: 10px;
  margin: 10px auto;
  padding: 10px;
}

.box-compose .box-composeMain-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 10px;
  padding: 5px;
  height: 100%;
  margin-right: 0;
  margin-left: 0;
  color: #440000;
}

.box-compose .box-composeMain-block .itemlist {
  margin: 5px;
}

.box-compose .box-composeMain img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
}

.box-compose .box-composeMain:nth-child(even) {
  background: #ffc185;
}

.box-compose .box-composeMain:nth-child(even) .box-composeMain-block {
  background: #fff3c9;
}

.box-compose .box-composeMain:nth-child(even) div:first-child .box-composeMain-block {
  background: #ffc185;
}

.box-compose .box-composeMain:nth-child(odd) {
  background: #ffabaf;
}

.box-compose .box-composeMain:nth-child(odd) .box-composeMain-block {
  background: #ffdfe1;
}

.box-compose .box-composeMain:nth-child(odd) div:first-child .box-composeMain-block {
  background: #ffabaf;
}

.box-compose .symbol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: rgba(0, 0, 0, 0.35);
  background: transparent !important;
}

.box-compose .symbol i {
  font-size: 1.5rem;
}

@media only screen and (max-width: 560px) {
  .box-compose .symbol i {
    font-size: 1.2rem;
  }
}

/*================= 內容區塊獨立樣式設定 =================*/
.card {
  padding: 30px;
  margin: 8px 0;
}

.card-notice {
  color: #fff;
  line-height: 1.5em;
  outline: 2px dashed #ffffff;
  outline-offset: -12px;
  border-radius: 15px;
  background: #5DABB9;
  color: #fff;
}

.card-notice2 {
  border-radius: 10px;
  background: #FEC3DF;
}

.card-notice2 p {
  color: #A860BB;
  text-align: left;
  line-height: 1.5em;
}

/*=============== 禮包圖片輪播 =====================*/
.slider-wra, .slider-wra .slider, .slider-wra .slider ul.slider__list li {
  width: 800px;
}

.slider-wra {
  margin: 10px auto 30px auto;
  text-align: center;
  background: #6198ff;
  border-radius: 10px;
}

.slider-wra .slider {
  height: 600px;
  position: relative;
  overflow: hidden;
  border: 3px #6198ff solid;
}

.slider-wra .slider ul.slider__list {
  padding: 0;
  margin: 0;
  list-style: none;
  position: absolute;
  width: 9999px;
  height: 100%;
}

.slider-wra .slider ul.slider__list li {
  float: left;
  height: 100%;
}

.slider-wra .slider ul.slider__list li img {
  width: 100%;
  height: 100%;
  border-top-right-radius: 0px;
  border-top-left-radius: 0px;
}

.slider-wra .slider__btn ul {
  margin: 0;
}

.slider-wra .slider__btn ul li {
  display: inline-block;
  list-style: none;
  margin: 10px 3px;
  font-size: 1.2em;
}

.slider-wra .slider__btn ul li a {
  color: #fff;
  background: #c54ec9;
  -webkit-box-shadow: 0 3px 0 0px #ab35af;
          box-shadow: 0 3px 0 0px #ab35af;
  text-decoration: none;
  color: #fff;
}

.slider-wra .slider__btn ul li a:hover {
  background: #ffa42c;
  -webkit-box-shadow: 0 3px 0 0px #f88d00;
          box-shadow: 0 3px 0 0px #f88d00;
  color: #fff;
}

.slider-wra .slider__btn ul li.current a {
  background: #ff1100;
  -webkit-box-shadow: 0 3px 0 0px #cc0e00;
          box-shadow: 0 3px 0 0px #cc0e00;
  color: #fff;
}

.slider-wra .slider__btn .slider__control {
  padding: 12px 0;
}
