@charset "UTF-8";
@import url("/css/font-awesome-4.5.0/css/font-awesome.min.css");
img {
  max-width: 100%;
}

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: #43f2ff;
}

.gotoheader a:hover {
  color: #90ff97;
}

body {
  background-color: #FFF4E0;
}

.wrapper {
  background-image: url(../../images/indexBg.jpg), url(../../images/indexCenter.jpg);
  background-color: #FFF4E0;
  background-position: top center;
  background-repeat: no-repeat, repeat-y;
  color: #ffffff;
  padding-bottom: 16px;
}

/* ================= 版頭 ================= */
.header {
  width: 100%;
  height: 100%;
  background: url(../../images/light.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: center;
}

.header .container {
  width: 1280px;
  height: 753px;
  position: relative;
}

.header .role {
  width: 474px;
  height: 684px;
  position: absolute;
  top: 104px;
  left: 912px;
  background: url(../../images/role.png);
  -webkit-animation: delay 0.3s, bounceInRight 0.5s 0.3s, pulse 0.5s 1.5s;
          animation: delay 0.3s, bounceInRight 0.5s 0.3s, pulse 0.5s 1.5s;
}

.header .slogan {
  width: 677px;
  height: 191px;
  position: absolute;
  top: 571px;
  left: 290px;
  -webkit-animation: delay 0.5s, jackInTheBox 0.8s 0.5s, pulse 1s 2.3s infinite;
          animation: delay 0.5s, jackInTheBox 0.8s 0.5s, pulse 1s 2.3s infinite;
  background: url(../../images/slogan01.png);
}

.header .slogan02 {
  width: 337px;
  height: 138px;
  position: absolute;
  top: 0px;
  left: 875px;
  background: url(../../images/slogan02.png);
  overflow: hidden;
}

.header .slogan02::before {
  content: '';
  display: block;
  width: 311px;
  height: 115px;
  left: 9px;
  top: 5px;
  background: linear-gradient(-60deg, rgba(255, 255, 255, 0) 0%, #fff 50%, #fff 55%, rgba(255, 255, 255, 0) 60%, rgba(255, 255, 255, 0) 100%);
  background-size: 200%;
  background-position-y: -100%;
  -webkit-mask-image: url(../../images/slogan02.svg);
          mask-image: url(../../images/slogan02.svg);
  -webkit-mask-size: 100%;
          mask-size: 100%;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  position: absolute;
  -webkit-animation: move 5s infinite linear;
          animation: move 5s infinite linear;
  opacity: 0.3;
}

.header .hand {
  width: 82px;
  height: 76px;
  position: absolute;
  top: 53px;
  left: 1160px;
  -webkit-animation: delay 0.5s, pulse 0.8s 2s infinite;
          animation: delay 0.5s, pulse 0.8s 2s infinite;
  background: url(../../images/hand.png);
}

.header .card {
  width: 339px;
  height: 577px;
  position: absolute;
  top: 53px;
  left: 30px;
  -webkit-animation: delay 0.3s, bounceInLeft 0.5s 0.3s;
          animation: delay 0.3s, bounceInLeft 0.5s 0.3s;
  background: url(../../images/card.png) no-repeat;
}

.header .logo, .header .logo a {
  width: 266px;
  height: 98px;
  display: block;
}

.header .logo {
  position: absolute;
  top: 22px;
  left: 493px;
  z-index: 9;
  background-image: url(../../images/logo.png);
  -webkit-animation: fadeInUp .5s;
          animation: fadeInUp .5s;
}

@-webkit-keyframes delay {
  from, to {
    opacity: 0;
  }
}

@keyframes delay {
  from, to {
    opacity: 0;
  }
}

@-webkit-keyframes move {
  from {
    background-position-x: -250px;
  }
  to {
    background-position-x: 800px;
  }
}

@keyframes move {
  from {
    background-position-x: -250px;
  }
  to {
    background-position-x: 800px;
  }
}

/* ================= 頁面選單 ================= */
.nav {
  width: 100%;
  position: relative;
  z-index: 1;
  -webkit-animation: slideInDown .5s;
          animation: slideInDown .5s;
}

.nav .container {
  width: 1280px;
  position: relative;
}

.nav .navBtn {
  width: 933px;
  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: 311px;
  height: 108px;
  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: -311px !important;
}

.nav .navBtn li.navBtn3 a {
  background-position-x: -622px !important;
}

.nav .navBtn li a:hover, .nav .navBtn li.action a {
  background-image: url(../../images/navBtn_action.png);
}

.nav .navBtn li a {
  width: 311px;
  height: 108px;
  display: block;
  background-image: url(../../images/navBtn.png);
  margin: 0 auto;
}

.nav .navBtn li a:hover {
  -webkit-animation: pulse 1s;
          animation: pulse 1s;
}

/* ================= 內容 ================= */
.content {
  width: 100%;
  border-radius: 25px;
}

.content .container {
  width: 1000px;
  margin-top: 10px;
  padding: 30px 20px;
  border-radius: 25px;
  background: #432399;
}

.content h3 {
  font-size: 1.5em;
  font-weight: bold;
  padding: 0 0 30px 0;
  width: 100%;
}

.content h3 img {
  display: block;
  max-width: 807px;
  width: 95%;
  margin: 0 auto;
}

.content h4 {
  position: relative;
  display: block;
  color: #FFE9A8;
  border-radius: 5px;
  font-weight: bold;
  font-size: 1.2rem;
  margin: 16px 0;
}

@media only screen and (max-width: 798px) {
  .content h4 {
    font-size: 1.125rem;
  }
}

.content h4.point {
  color: #ffae00;
}

.content h5 {
  font-size: 1.2em;
  padding: .8em;
  margin-bottom: 0.8em;
  text-align: center;
  background-image: #59dfe9;
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(89, 223, 233, 0)), color-stop(20%, #9decf2), color-stop(40%, #59dfe9), color-stop(60%, #59dfe9), color-stop(80%, #9decf2), to(rgba(89, 223, 233, 0)));
  background-image: linear-gradient(to left, rgba(89, 223, 233, 0) 0%, #9decf2 20%, #59dfe9 40%, #59dfe9 60%, #9decf2 80%, rgba(89, 223, 233, 0) 100%);
  color: #062a2d;
}

.content h6 {
  font-size: 1.125em;
  line-height: 1.5em;
  padding: 15px;
  text-align: center;
  color: #7CACFF;
}

.content h6 span {
  padding: 5px 15px;
  background: #7CACFF;
  border-radius: 8px;
  color: #fff;
  margin-right: 6px;
  font-weight: bold;
}

.content p a, .content ol a, .content ul a {
  color: #3ce2ff;
  text-decoration: underline;
}

.content p a:hover, .content ol a:hover, .content ul a:hover {
  color: #ff52d4;
}

.content p {
  margin-left: 2rem;
}

.content p.txt-center {
  margin-left: 0;
}

.page3-btn {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
}

.page3-btn .hand {
  width: 82px;
  height: 76px;
  position: absolute;
  top: 75%;
  left: 78%;
  -webkit-animation: pulse 0.8s infinite;
          animation: pulse 0.8s infinite;
  background: url(../../images/hand.png);
}

.btnBox a {
  border: 1px solid #ffa8ea;
  padding: 8px;
  cursor: pointer;
  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;
  background: -webkit-gradient(linear, left top, left bottom, from(#ff38ce), color-stop(20%, #ff38ce), color-stop(40%, #ff75dd), color-stop(60%, #ff75dd), color-stop(80%, #ff38ce), to(#ff38ce)) !important;
  background: linear-gradient(to bottom, #ff38ce 0%, #ff38ce 20%, #ff75dd 40%, #ff75dd 60%, #ff38ce 80%, #ff38ce 100%) !important;
  -webkit-box-shadow: 0px 3px 3px #db00a5;
          box-shadow: 0px 3px 3px #db00a5;
  color: #fff;
}

.btnBox a:hover {
  border: 1px solid #b6eeeb;
  background: -webkit-gradient(linear, left top, left bottom, from(#5cd8d3), color-stop(20%, #5cd8d3), color-stop(40%, #8de4e0), color-stop(60%, #8de4e0), color-stop(80%, #5cd8d3), to(#5cd8d3)) !important;
  background: linear-gradient(to bottom, #5cd8d3 0%, #5cd8d3 20%, #8de4e0 40%, #8de4e0 60%, #5cd8d3 80%, #5cd8d3 100%) !important;
  background-image: #8de4e0;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#5cd8d3), color-stop(20%, #5cd8d3), color-stop(40%, #8de4e0), color-stop(60%, #8de4e0), color-stop(80%, #5cd8d3), to(#5cd8d3));
  background-image: linear-gradient(to bottom, #5cd8d3 0%, #5cd8d3 20%, #8de4e0 40%, #8de4e0 60%, #5cd8d3 80%, #5cd8d3 100%);
  -webkit-box-shadow: 0px 2px 2px #29afa9, inset 0 1px 1px 1px #aeece9, inset 0 -8px 8px 0px #cff4f2;
          box-shadow: 0px 2px 2px #29afa9, inset 0 1px 1px 1px #aeece9, inset 0 -8px 8px 0px #cff4f2;
  top: 2px;
  color: #145250;
}

/* ================= item__box ================= */
.item__box {
  background: white;
  border: 0;
  border-radius: 10px 10px 0 0;
  border: 3px solid #DC90FF;
  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(#cc5dff), color-stop(20%, #DC90FF), color-stop(80%, #DC90FF), to(#cc5dff));
  background: linear-gradient(to right, #cc5dff 0%, #DC90FF 20%, #DC90FF 80%, #cc5dff 100%);
  color: #460066;
}

.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-get p {
  margin-left: 0;
}

.item__box .item__box-text {
  text-align: left;
}

.item__box .item__box--02 {
  background-color: #ffffff;
  border: 3px #59dfe9 solid;
  border-radius: 10px;
  height: 100%;
}

.item__box .item__box--02 .item__box-title {
  color: #460066;
}

.item__box-img img {
  border-radius: 0px;
}

.item-title {
  width: 96%;
  margin: 0 auto;
  text-align: center;
  font-weight: bold;
  background-color: #59dfe9;
  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 #ff8fa1;
}

.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 #ff8fa1;
  table-layout: fixed;
}

.table tr {
  background: #fff;
}

.table tr th {
  position: relative;
  background: -webkit-gradient(linear, left bottom, left top, from(#ff2828), to(#ff5151));
  background: linear-gradient(to top, #ff2828 0%, #ff5151 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 #59dfe9;
          box-shadow: 0px 0px 8px 2px #59dfe9;
  background: -webkit-gradient(linear, left bottom, left top, from(#7be6ed), to(#37d8e5));
  background: linear-gradient(to top, #7be6ed 0%, #37d8e5 100%);
  margin: 0 auto;
  padding: 10px 20px;
  text-align: left;
  color: 184.16667deg;
  color: 63.13725%;
  color: #0c555a;
}

.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: #805200;
}

@media only screen and (max-width: 798px) {
  .explanation .symbol {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
}

/*================= 內容區塊獨立樣式設定 =================*/
.card {
  padding: 24px;
  margin: 8px 0;
}

.card-notice {
  color: #fff;
  padding-bottom: 32px;
  line-height: 1.5em;
  border-radius: 15px;
  background: linear-gradient(-5deg, #5ca8ff 0%, #cb81e9 50%, #8837f1 100%);
  background-size: 200%;
  background-position: center;
  -webkit-box-shadow: inset 0 0 20px #f8c7ff, 5px 5px 8px #20163a;
          box-shadow: inset 0 0 20px #f8c7ff, 5px 5px 8px #20163a;
  color: #fff;
}

.card-notice h4 {
  font-size: 1.5rem;
  text-align: center;
  margin: 0;
  margin-bottom: 16px;
  text-shadow: 2px 2px 5px #432399;
  color: #fffd6e;
}

.card-notice p {
  margin-left: 0;
  text-align: center;
  font-size: 1.25rem;
  line-height: 2rem;
}

.card-notice2 {
  border-radius: 10px;
  background: #FEC3DF;
}

.card-notice2 p {
  color: #A860BB;
  text-align: left;
  line-height: 1.5em;
}

.iframe-ingame {
  position: relative;
  width: 100%;
  height: 0 !important;
  padding-bottom: 44.444%;
  overflow: hidden;
}

@media only screen and (max-width: 812px) {
  .iframe-ingame {
    display: none;
  }
}

.iframe-ingame iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 5px solid #ff0000;
  border-radius: 20px;
}

@media only screen and (min-width: 813px) {
  a.ingameBtn {
    display: none;
  }
}
