/*! HTML5 Boilerplate v8.0.0 | MIT License | https://html5boilerplate.com/ */

/* main.css 3.0.0 | MIT License | https://github.com/h5bp/main.css#readme */
/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
  color: #222;
  font-size: 1em;
  line-height: 1.4;
  /* overflow: hidden; */
}
img{
  max-width: 100%;
}
  body{
    overflow-x: auto;
    background: url(../img/bg.jpg) no-repeat center center fixed;
    background-size: cover;
  }

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Customize the background color to match your design.
 */

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
  resize: vertical;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers
 */

.hidden,
[hidden] {
  display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 *
 * 1. For long content, line feeds are not interpreted as spaces and small width
 *    causes content to wrap 1 word per line:
 *    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
 */

.visually-hidden {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
  /* 1 */
}

/*
 * Extends the .visually-hidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.visually-hidden.focusable:active,
.visually-hidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  white-space: inherit;
  width: auto;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
  visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * The use of `table` rather than `block` is only necessary if using
 * `::before` to contain the top-margins of child elements.
 */

.clearfix::before,
.clearfix::after {
  content: "";
  display: table;
}

.clearfix::after {
  clear: both;
}

.container {
  margin-left: auto;
  margin-right: auto;
  width: 80%;
  max-width: 1200px;
  position: relative;
}

.swal2-container.swal2-center>.swal2-popup{
  background: #dbd7d1;
}
.title_style{
  text-align: center;
}
  .title_style b > img{
    width: 20%;
    margin-bottom: 20px;
  }
  .swal2-container .swal2-html-container{
    background: #4f3d7a;
    color: #ffffff;
    font-size: 16px;
    text-align: left;
    margin: 0;
    padding: 1em 1.6em .3em;
    -webkit-border-top-left-radius: 5px;
    -webkit-border-top-right-radius: 5px;
    -moz-border-radius-topleft: 5px;
    -moz-border-radius-topright: 5px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
  }
.swal2-container.tips-con .swal2-popup{
  padding: 0;
  background: none;
}
  .swal2-container.tips-con .swal2-html-container{
    padding: 0;
    background: none;
  }
    .swal2-container.tips-con .swal2-close{
      position: relative;
      left: -10px;
      top: 10px;
    }
      .swal2-container.tips-con .swal2-close img{
        width: 35px;
      }
    .swal2-container .swal2-html-container .info h2{
      color: #ffffff;
      padding-bottom: 10px;
      border-bottom: 1px solid #fff;
      text-align: left;
    }
    .swal2-container .swal2-html-container h2{
      text-align: center;
      margin-bottom: 0px;
    }
    .swal2-container .swal2-html-container h3{
      text-align: center;
      font-size: 28px;
      margin-top: 10px;
    }
    .swal2-container .swal2-html-container .info > div{
      height: 60vh;
    }
    .swal2-container .swal2-html-container .info p{
      padding: 0 20px;
      line-height: 1.4;
      text-align: left;
    }
    .swal2-container .swal2-html-container .info ol{
      padding-left: 40px;
    }
    .agree_box{
      display: inline-block;
      padding-left: 20px;
      padding-bottom: 20px;
    }
      .agree_box input{
        zoom: 1.2;
        transform: scale(1.2);
        -ms-transform: scale(1.2);
        -webkit-transform: scale(1.2);
        -o-transform: scale(1.2);
        -moz-transform: scale(1.2);
        transform-origin: 0 0;
        -ms-transform-origin: 0 0;
        -webkit-transform-origin: 0 0;
        -o-transform-origin: 0 0;
        -moz-transform-origin: 0 0;
        display: inline-block;
        margin-right: 5px;
      }
    ol.cus_num li {
      position: relative;
    }
    ol.cus_num li:nth-child(1):before{
      content: "(1)";
      position: absolute;
      left: -25px;
      top: 5px;
    }
    ol.cus_num li:nth-child(2):before{
      content: "(2)";
      position: absolute;
      left: -25px;
      top: 5px;
    }
    .swal2-container .swal2-html-container p{
      text-align: center;
      margin-top: 5px;
    }
    .swal2-container .swal2-html-container a{
      color: #ffffff;
      text-decoration: none;
    }
    .swal2-actions .swal2-styled.swal2-confirm, .swal2-actions .swal2-styled.swal2-cancel{
      background-color: #EC9A4E;
      border-radius: 10px;
      font-size: 20px;
    }
    .swal2-actions .swal2-styled.swal2-cancel{
      background-color: #C76BF4;
    }
    .swal2-container .start_pop{
      padding-bottom: 40px;
    }
    .swal2-container .swal2-html-container .icon_box img{
      width: 100px;
    }
    .swal2-validation-message{
      background: none !important;
      padding: 0 0.625em !important;
      margin-bottom: -10px !important;
      color: #000 !important;
    }

    /* tipModel */
    .tips-modal {
      background: #fff;
      border-radius: 16px;
      overflow: hidden;
      box-shadow: 0 12px 40px rgba(0, 0, 0, 0.2);
    }

    .tips-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      background: #4f3d7a;
      color: #fff;
      padding: 14px 20px;
    }
    .tips-title {
      font-size: 28px;
      font-weight: 700;
      letter-spacing: 0.5px;
    }
    .tips-body{
      color: #525770;
    }
      .tips-bottom {
        display: grid;
        grid-template-columns: 1fr 260px;
        gap: 24px;
        padding: 0 24px;
      }
    .tips-text {
      font-size: 28px;
      line-height: 1.7;
      text-align: left !important;
      padding: 14px 20px;
      margin-bottom: 0;
    }

    .platforms {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
      margin-top: 16px;
    }
    .platform {
      border-radius: 12px;
      padding: 16px;
      text-align: center;
    }
    .platform h4 {
      margin: 0 0 8px;
      font-size: 16px;
      font-weight: 700;
    }
    .download-btn {
      display: inline-block;
      padding: 10px 20px;
      margin: 6px 0 10px;
      border-radius: 24px;
      background: #4f3d7a;
      color: #fff;
      text-decoration: none;
      font-weight: 700;
    }
    .qr {
      display: grid;
      place-items: center;
    }
    .qr img {
      width: 120px;
      height: 120px;
      object-fit: contain;
    }

    .tips-right {
      display: grid;
      place-items: end center;
    }
    .tips-right img {
      width: 300px;
      height: auto;
    }
    #tipsTitle img {
      width: 120px;
    }

    @media (max-width: 760px) {
      .tips-body {
        grid-template-columns: 1fr;
      }
      .tips-text {
        font-size: 16px;
      }
      .qr img {
        width: 100px;
        height: 100px;
      }
      .tips-bottom{
        grid-template-columns: 1fr 180px;
      }
    }

.hold{
  height: 100vh;
  position: relative;
  background: #ffd18d;
  z-index: 99999;
}
  .hold img{
    width: 100%;
  }
.header{
  height: 10vh;
  background: #fff;
}
.logo{
  display: flex;
  align-items: center;
  vertical-align: middle;
  height: 10vh;
  width: 20%;
  position: absolute;
  left: 5%;
}
  .logo img{
    height: 70%;
    vertical-align: middle;
    display: inline-block;
  }
.game_con .logo, .dash_con .logo{
  position: relative;
}
.content{
  background-size: cover;
  background-position: center;
  height: 100vh;
  position: relative;
  max-height: -webkit-fill-available;
  overflow-y: auto;
  overflow-x: hidden;
}
  .content .container{
    height: 100%;
    /* overflow-y: auto; */
    zoom: 0.9;
    -moz-transform: scale(0.9);
    background: #ffffff;
  }
    .content_box{
      margin-top: 5%;
      text-align: right;
    }
    .title + .content_box{
      text-align: center;
    }
    .login_con{
      margin: 0 auto;
      padding: 5% 0;
      width: 80%;
      background: #fff;
    }
  .level_con{
    /* overflow-y: auto; */
    /* min-height: 670px; */
  }
    .level_con .content_box{
      text-align: left;
      width: 70%;
      margin-left: auto;
      margin-right: auto;
    }
      .level_con .content_box p{
        font-size: 20px;
        font-weight: bold;
        margin-bottom: 0;
      }
      .level_con .content_box > div{
        margin-left: -15px;
        margin-right: -15px;
      }
      .btn{
        border-radius: 10px;
        display: inline-block;
        padding: 10px;
        text-align: center;
        width: 200px;
        color: #fff;
        text-decoration: none;
        font-size: 24px;
        margin: 15px;
      }
      .stepS .btn, .stepF .btn{
        width: 120px;
      }
      .btn:hover{
        opacity: 0.9;
      }
      .btn_public{
        background: #3ACFFF;
      }
      .btn_student{
        background: #773AFF;
      }
      .btn_junior, .btn_senior, .level_con .btn_back{
        width: calc(28% - 30px);
      }
      .btn_junior{
        background: #FD5896;
      }
      .btn_senior{
        background: #3A8DFF;
      }
      .game_bg .btn.btn_result{
        display: none;
      }
        .per{
          position: absolute;
          width: 35%;
        }
        .per1{
          width: 25%;
          bottom: 4%;
          left: 8%;
        }
        .per2{
          bottom: 1%;
          right: -4%;
        }
    .login_box, .rename_box{
      margin: 0 auto;
    }
    .rename_box{
      padding: 0 3%;
    }
      .login_box p {
        display: inline-block;
        width: 45%;
        padding: 0 2%;
        margin: 0;
      }
        .login_box p.btn_box{
          text-align: right;
          width: 95%;
        }
        .login_box label, .rename_box label{
          text-align: left;
          font-weight: bold;
        }
        .rename_box label{
          font-size: 18px;
        }
          .rename_box label span{
            display: block;
            font-size: 70%;
            font-weight: normal;
          }
        .login_box input, .rename_box input{
          width: 100%;
          border-radius: 10px !important;
          padding: 0.8em 0.9em !important;
        }
      .btn_login, .btn_submit, .btn_reset, .btn_visit, .btn_download, .btn_reboot{
        margin-right: 0;
        background: #EC9A4E;
        width: 110px;
        cursor: pointer;
        margin-top: 30px;
        display: inline-block;
      }
      .btn_submit, .btn_reset{
        margin-top: 20px;
      }
      .btn_reset, .btn_visit, .btn_download{
        background: #C76BF4;
        margin-left: 20px;
      }
      .level_con .btn_back, .pass .btn_visit, .btn_reboot{
        background: #EC9A4E;
      }
      .pass #coupon{
        background: #ACEC5A;
        color: #4B5F2E;
      }
      .fail #coupon{
        background: #E84538;
        color: #fff;
      }
    .game_con, .dash_con, .coin_box{
      display: none;
      /* transition: all 2s ease-out; */
      opacity: 1;
      position: relative;
      background: #fffdf8;
      /* padding: 10px; */
    }
    .game_con.result_con, .dash_con{
      display: block;
    }
    .game_con{
      z-index: 1;
      height: auto !important;
    }
    .fade_out{
      opacity: 0;
    }
      .game_con .pure-g, .dash_con .pure-g{
        width: 90%;
        margin: 3% auto 5%;
        height: 75%;
        padding-bottom: 50px;
      }
      .dash_con .game_wrapper .pure-g{
        margin: 0;
        width: 100%;
        height: 100%;
      }
      .game_con .pure-u-1-4{
        position: relative;
        background-size: 100% auto;
      }
        .game_con .pure-u-1-4 img{
          display: inline;
          width: 100%;
          top: 0;
        }
      .game_con .pure-u-3-4{
      }
        .game_wrapper{
          padding: 20px 5% 50px;
          margin-left: 1%;
          background: #fff;
          height: calc(100% - 70px);
        }
        .dash_con .game_wrapper{
          background: none;
        }
          .game_bg{
            height: 100%;
            padding-left: 20px;
            overflow: hidden auto;
            border-radius: 30px;
            padding-right: 20px;
            position: relative;
          }
          .result_con .game_bg{
            background-position: bottom center;
            background-size: 100% 100%;
          }
            .game_box{
              position: relative;
            }
              .game_box h2{
                margin-top: 5%;
                margin-bottom: 20px;
                /* background: url(../img/title_noline_bar.png) no-repeat; */
                background-size: 100%;
                color: #500F7A;
              }
              .result_con .game_box h2{
                background-size: 100%;
              }
                .game_box h2 > i, .game_box h2 span{
                  display: block;
                  position: relative;
                  font-weight: bold;
                  margin-bottom: 20px;
                  background: url(../img/line.png) no-repeat;
                  background-size: 100% auto;
                  background-position: bottom;
                  padding-bottom: 10px;
                }
                .game_box h2 > i{
                  background-image: url(../img/line-full.png);
                }
                .game_box h2 i{
                  font-style: normal;
                  font-size: 1.5rem;
                }
                .game_box h2 span i{
                  position: absolute;
                  left: 0;
                  bottom: 0;
                  height: 8px;
                  border-radius: 5px;
                  background: #500F7A;
                  display: inline-block;
                }
                .game_box h2 span i.w_1-10{
                  width: 10%;
                }
                .game_box h2 span i.w_2-10{
                  width: 20%;
                }
                .game_box h2 span i.w_3-10{
                  width: 30%;
                }
                .game_box h2 span i.w_4-10{
                  width: 40%;
                }
                .game_box h2 span i.w_5-10{
                  width: 50%;
                }
                .game_box h2 span i.w_6-10{
                  width: 60%;
                }
                .game_box h2 span i.w_7-10{
                  width: 70%;
                }
                .game_box h2 span i.w_8-10{
                  width: 80%;
                }
                .game_box h2 span i.w_9-10{
                  width: 90%;
                }
                .game_box h2 span i.w_10-10{
                  width: 100%;
                }
                .game_box h2 span i.w_1-15{
                  width: calc(1/15 * 100%);
                }
                .game_box h2 span i.w_2-15{
                  width: calc(2/15 * 100%);
                }
                .game_box h2 span i.w_3-15{
                  width: calc(3/15 * 100%);
                }
                .game_box h2 span i.w_4-15{
                  width: calc(4/15 * 100%);
                }
                .game_box h2 span i.w_5-15{
                  width: calc(5/15 * 100%);
                }
                .game_box h2 span i.w_6-15{
                  width: calc(6/15 * 100%);
                }
                .game_box h2 span i.w_7-15{
                  width: calc(7/15 * 100%);
                }
                .game_box h2 span i.w_8-15{
                  width: calc(8/15 * 100%);
                }
                .game_box h2 span i.w_9-15{
                  width: calc(9/15 * 100%);
                }
                .game_box h2 span i.w_10-15{
                  width: calc(10/15 * 100%);
                }
                .game_box h2 span i.w_11-15{
                  width: calc(11/15 * 100%);
                }
                .game_box h2 span i.w_12-15{
                  width: calc(12/15 * 100%);
                }
                .game_box h2 span i.w_13-15{
                  width: calc(13/15 * 100%);
                }
                .game_box h2 span i.w_14-15{
                  width: calc(14/15 * 100%);
                }
                .game_box h2 span i.w_15-15{
                  width: calc(15/15 * 100%);
                }
                .game_box h2 b{
                  /* height: 70px; */
                  display: block;
                }
              .result_con .game_box h2{
                background-position: bottom center;
                font-size: 20px;
                margin-bottom: 0;
                position: relative;
              }
              .result_con .game_box h2::after{
                content: "";
                display: block;
                clear: both;
              }
                .result_con .game_box h2 span{
                  display: inline-block;
                  font-size: 34px;
                  margin: 0 5px;
                }
                .result_con .game_box h2 b, #Timer{
                  right: 15px;
                  height: auto;
                  position: absolute;
                  top: 5px;
                  padding-left: 30px;
                  background: url(../img/clock.png) no-repeat;
                  background-size: auto 100%;
                  background-position: left center;
                }
                #Timer{
                  top: 5%;
                }
                  .result_con .game_box h2 b i{
                    font-style: normal;
                    font-weight: 400;
                    font-size: 90%;
                  }
                  .result_con .game_box h2 p{
                    margin-bottom: 0;
                    line-height: normal;
                  }
                    .result_con .game_box h2 p span{
                      background: none;
                    }
                .tnc{
                  position: absolute;
                  text-align: left;
                  font-size: 10px;
                  max-width: 900px;
                  left: 50%;
                  width: 80%;
                  /* margin-left: -300px; */
                  transform: translate(-50%, 0);
                  bottom: 10px;
                  padding: 5px 10px;
                  border-radius: 10px;
                }
                .coin_box{
                  position: relative;
                  width: 75%;
                  height: 80% !important;
                  background: transparent;
                  left: 0;
                  /* transform: translate(-50%, 0); */
                  /* overflow-x: hidden; */
                  top: -80vh;
                  padding: 0;
                  /* max-width: 100%; */
                  /* z-index: 3; */
                  margin: 0 auto;
                }
                .coin_box.open{
                  display: block;
                }
                  .coin{
                    position: absolute;
                  }
                  .coin1{
                    width: 7%;
                    top: 1%;
                    left: -4%;
                  }
                  .coin2{
                    width: 10%;
                    left: -20%;
                    top: 32%;
                  }
                  .coin3{
                    width: 15%;
                    left: -10%;
                    top: 70%;
                  }
                  .coin4{
                    width: 6%;
                    left: 102%;
                    top: 25%;
                  }
                  .coin5{
                    width: 5%;
                    left: 110%;
                    top: 58%;
                  }
                  .coin6{
                    width: 21%;
                    left: 92%;
                    top: 80%;
                  }
              .result_box > div{
                margin-bottom: 40px;
              }
                .result_box h3{
                    color: #500F7A;
                    font-size: 22px;
                }
                  .result_box h3 b{
                    display: block;
                    font-size: 16px;
                    margin-bottom: 10px;
                  }
                .option_box a{
                  display: block;
                  text-decoration: none;
                  background: #DBDBDB;
                  padding: 10px 50px 10px 10px;
                  border-radius: 30px;
                  color: #500F7A;
                  margin-bottom: 10px;
                  font-size: 20px;
                  opacity: 1;
                  width: calc(90% - 40px);
                  font-weight: bold;
                  position: relative;
                }
                .option_box a:before{
                  display: inline-block;
                  content: "";
                  border-radius: 50% 0 0 50%;
                  background-color: #DBDBDB;
                }
                .option_box a:after{
                  display: inline-block;
                  content: "";
                  border-radius: 0 50% 50% 0;
                }
                .option_box a.wrong::after{
                }
                .option_box a.correct{
                  background-color: #FFF800;
                  color: #4B5F2E;
                }
                .option_box a.wrong::after, .option_box a.correct::after{
                  content: 'X';
                  font-style: normal;
                  font-weight: normal;
                  text-decoration: inherit;
                  margin-left:10px;
                  color: #E84538;
                  font-weight: bold;
                }
                .option_box a.correct::after{
                  color: #4B5F2E;
                  content: '✔' !important;
                }
            .back_bar{
              text-align: center;
            }
              .back_bar a{
                margin-top: 0 !important;
                margin-bottom: 20px !important;
              }
            .remark_box{
              background: #FFF800;
              opacity: 0.9;
              color: #4B5F2E;
              border-radius: 10px;
              padding: 20px;
              margin-top: 20px;
              width: 87%;
            }
              .remark_box b{
                display: block;
                margin-bottom: 10px;
                padding-bottom: 5px;
                border-bottom: 1px solid #4B5F2E;
                font-weight: bold;
              }
              .remark_box p{
                font-size: 18px;
                color: #4B5F2E;
              }

            .options {
              padding-right: 70px;
            }
              .options a{
                display: block;
                text-decoration: none;
                background: #DBDBDB;
                padding: 10px 40px 10px 10px;
                border-radius: 30px;
                color: #500F7A;
                margin-bottom: 10px;
                font-size: 20px;
                opacity: 1;
                width: 90%;
                font-weight: bold;
                position: relative;
              }
              .options a:hover, .options a.actived{
                background: #BE50FF;
                color: #fff
              }
                .options a .back_cir, .option_box a .back_cir{
                  position: absolute;
                  width: 30px;
                  height: 30px;
                  background: #fff;
                  border-radius: 50%;
                  right: 3%;  
                  top: 20%;
                  box-shadow: inset 0 0 3px #cacaca;
                  text-align: center;
                }
                .options a .back_cir::after, .option_box a .back_cir::after{
                  content: "";
                  display: none;
                  width: 60%;
                  height: 60%;
                  background: #BE50FF;
                  position: relative;
                  text-align: center;
                  border-radius: 50%;
                  vertical-align: top;
                  top: 50%;
                  margin-top: -30%;
                }
                .options a:hover .back_cir::after, .options a.actived .back_cir::after{
                  display: inline-block;
                }
                .option_box a.correct .back_cir::after{
                  background: #4B5F2E;
                  display: inline-block;
                }
                .option_box a.wrong .back_cir::after{
                  background: #E84538;
                  display: inline-block;
                }

            .game_bg .btn, .nav_con a, .nav_con a:not(.app):hover, .nav_con a.actived {
              appearance: button;
              background-color: #8371BB;
              border: solid transparent;
              border-width: 0 0 4px;
              box-sizing: border-box;
              color: #FFFFFF;
              cursor: pointer;
              display: inline-block;
              font-family: din-round,sans-serif;
              font-size: 15px;
              font-weight: 700;
              letter-spacing: .8px;
              line-height: 24px;
              margin: 0;
              outline: none;
              overflow: visible;
              padding: 13px 16px;
              text-align: center;
              text-transform: uppercase;
              touch-action: manipulation;
              transform: translateZ(0);
              transition: filter .2s;
              user-select: none;
              -webkit-user-select: none;
              vertical-align: middle;
              display: inline-block;
              font-size: 20px;
            }
            .btn_next, .btn_result{
              background-color: #EC9A4E !important;
              border-radius: 16px;
              margin-top: 20px !important;
            }

            .nav_con a:not(.app):hover:after, .nav_con a:not(.app).actived:after {
              background-clip: padding-box;
              background-color: #8371BB;
              border: solid transparent;
              border-width: 0 0 4px;
              bottom: -4px;
              content: "";
              left: 0;
              position: absolute;
              right: 0;
              top: 0;
              z-index: -1;
            }
            .btn_next:after, .btn_result:after{
              background-color: #EC9A4E !important;
              border-radius: 16px;
            }

            .game_bg .btn:main,
            .game_bg .btn:focus {
              user-select: auto;
            }

            .game_bg .btn:hover:not(:disabled) {
              filter: brightness(1.1);
              -webkit-filter: brightness(1.1);
            }

            .game_bg .btn:disabled {
              cursor: auto;
            }

            .game_bg .btn:active {
              border-width: 4px 0 0;
              background: none;
            }
            .nav_con a.award{
/*              display: none !important;*/
            }
            .btn.btn_next{
              color: #fff;
            }
    .dash_con{
      z-index: 2;
    }
      .dash_con .side_bar, .game_con .side_bar{
        /* padding: 20px; */
        color: #402D79;
        background: #fff;
      }
      .game_con .side_bar{
        /* background: url(../img/game_side_bg.jpg) repeat-y; */
      }
      .result_con.game_con .side_bar{
        background: #fff;
      }
      .side_bar{
        overflow: hidden auto;
        height: 100%;
      }
        .side_bar .profile_con{
          position: relative;
          margin: 50px 10px 20px 10px;
        }
          .profile_con > img{
            position: relative !important;
            width: 40% !important;
            display: block !important;
            margin-bottom: 30px;
          }
          .side_bar tr td:first-child{
            width: 40%;
            min-width: 60px;
          }
      .nav_con{
        margin: 20px 0;
      }
        .nav_con a{
          text-decoration: none;
          display: block !important;
          background-color: transparent;
          padding: 4% 10% 4% calc(10% + 28px);
          color: #525770;
          text-align: left;
          margin: 0;
        }
        .nav_con a.app{
          padding: 0;
        }
        .nav_con a:not(.app):hover, .nav_con a:not(.app).actived{
          text-align: left;
          color: #fff;
          padding: 4% 10% 4% calc(10% + 28px);
        }
          .nav_con a span{
            width: 20px;
            height: 20px;
            display: inline-block;
            background-position: center center;
            background-size: cover;
            position: absolute;
            top: 10px;
            left: 10%;
            margin-right: 10px;
          }
        .home span{
          background: url(../img/icon_home.png) no-repeat;
        }
        .home:hover span, .home.actived span{
          background-image: url(../img/icon_home_h.png);
        }
        .game span{
          background: url(../img/icon_game.png) no-repeat;
        }
        .game:hover span, .game.actived span{
          background-image: url(../img/icon_game_h.png);
        }
        .practices span{
          background: url(../img/icon_practice.png) no-repeat;
        }
        .practices:hover span, .practice.actived span{
          background-image: url(../img/icon_practice_h.png);
        }
        .site span{
          background: url(../img/icon_site.png) no-repeat;
        }
        .site:hover span, .site.actived span{
          background-image: url(../img/icon_site_h.png);
        }
        .study span{
          background: url(../img/icon_study.png) no-repeat;
        }
        .study:hover span, .study.actived span{
          background-image: url(../img/icon_study_h.png);
        }
        .billboard span{
          background: url(../img/icon_board.png) no-repeat;
        }
        .billboard:hover span, .billboard.actived span{
          background-image: url(../img/icon_board_h.png);
        }
        .award span{
          background: url(../img/icon_award.png) no-repeat;
        }
        .award:hover span, .award.actived span{
          background-image: url(../img/icon_award_h.png);
        }
        .out span{
          background: url(../img/icon_logout.png) no-repeat;
        }
        .out:hover span, .out.actived span{
          background-image: url(../img/icon_logout_h.png);
        }
    .dash_txt{
      /* overflow: auto; */
      /* display: table; */
      height: 100%;
    }
      .dash_txt .game_wrapper{
        padding: 0 0 0 1%;
        /* overflow-y: auto; */
        /* overflow-x: hidden; */
        height: 100%;
        /* zoom: 0.9;
        -moz-transform: scale(0.9); */
        /* display: table-cell; */
      }
        .dash_txt .game_wrapper > img{
          position: relative;
          /* left: 0%; */
          /* width: 103%; */
          max-width: 102%;
        }
        .dash_txt .game_wrapper > p{
          margin-bottom: 0;
          font-weight: bold;
          font-size: 18px;
        }
          .link_box p{
            margin: 0;
            height: 100%;
          }
          .link_box p a{
            padding-right: 1px;
            height: 100%;
            width: 100%;
            display: inline-block;
            position: relative;
            background: #F3C32B;
          }
          .link_box p:nth-child(2) a{
            background: #FF8D15;
          }
          .link_box p:nth-child(3) a{
            background: #6750C4;
          }
            .link_box a img{
              width: 100%;
              position: absolute;
              z-index: 9;
            }
            .link_box a img.txt_part{
              width: 90%;
              left: 5%;
              top: 10%;
              z-index: 10;
            }
            .icon_part{
              bottom: 0;
            }
    .top_box{
      
    }
      .tab_wrapper{
        height: 100%;
        margin-left: 2%;
        /* background: #f7dbc6; */
      }
        .tabs {
          position: relative;
          display: flex;
          height: 100%;
          overflow: hidden;
        }
        .tabs.award_con{
          display: block;
          margin-left: 1%;
          background: #fff;
          overflow: auto;
        }
          .award_con > h2{
            font-size: 30px;
            color: #491575;
            /* background: #ff8e51; */
            border-bottom: 1px solid #fff;
            width: 80%;
            margin: 20px auto 0;
          } 
          .award_list, .form_msg, .coupon_form{
            width: 80%;
            margin: 0 auto;
          }
            .award_list div{
              padding: 15px 0;
              border-radius: 20px;
              color: #474747;
              font-size: 18px;
              margin-bottom: 15px;
            }
            .award_list div::after{
              content: "";
              display: block;
              width: 0;
              clear: both;
            }
              .coupon_box label, .pass .form_msg, .fail .form_msg{
                margin-top: 40px;
              }
              .award_list div a{
                float: right;
              }
                .award_list div a img{
                  width: 20px;
                }
            #coupon{
              width: 70%;
            }
            .coupon_btn{
              width: 70%;
              text-align: right;
            }
              .coupon_btn > span{
                display: none;
              }
              .coupon_btn > span.step1{
                display: block;
              }
              .coupon_btn .btn{
                font-size: 20px;
              }
          
        
        .tabby-tab {
            flex: 1;
            /* border: 1px solid #FF8E51; */
        }
        
        .tabby-tab label {
            display: block;
            box-sizing: border-box;
            /* tab content must clear this */
            height: 70px;
            padding: 20px;
            text-align: left;
            background: #8371BB;
            cursor: pointer;
            transition: background 0.5s ease;
            color: #fff;
            font-size: 17px;
            font-weight: bold;
            border: 3px solid #f7dbc6;
            position: relative;
        }
          .tabby-tab label .arrow{
            display: inline-block;
            width: 30px;
            height: 15px;
            background: url(../img/arrow.png) no-repeat;
            background-size: cover;
            position: absolute;
            right: 10px;
            top: calc(50% - 7.5px);
            transition: all 0.5s ease;
          }
        
        .tabby-tab label:hover {
            background: #491575;
        }
        .tabby-tab.tab3 label{
          padding: 6px;
        }
        
        .tabby-content {
            position: absolute;
            left: 0;
            bottom: 0;
            right: 0;
            /* clear the tab labels */
            top: 70px;
            padding: 20px;
            border-radius: 0 0 8px 8px;
            background: #f7dbc6;
            transition: 
                opacity 0.8s ease,
                transform 0.8s ease;
            
            /* show/hide */
            opacity: 0;
            /* transform: scale(0.1);
                transform-origin: top left; */
        }
          .tabby-content table{
            width: 100%;
            border: none;
            color: #f7dbc6;
          }
            .tabby-content .pure-table thead{
              background: none;
              color: #fff;
              border-bottom: 1px solid #fff;
              font-weight: bold;
            }
              .tabby-content .pure-table thead tr{
                position: relative;
              }
              .tabby-content .pure-table thead tr::after{
                  content: "";
                  display: none;
                  height: 1px;
                  width: 100%;
                  position: absolute;
                  left: 0;
                  top: 100%;
                  background: #53576E;
              }
            .tabby-content .pure-table tbody tr{
              /* background: #fff; */
              /* padding-bottom: 20px; */
              /* border-collapse: separate; */
              /* border-spacing: 1em; */
              border: 20px solid;
            }
              .tabby-content .pure-table tbody td {
                background: #fff;
                color: #7064A3;
              }
              .tabby-content .pure-table th{
                color: #53576E;
              }
              .tabby-content .pure-table tbody td:first-child{
                background: url(../img/bar_l.png) no-repeat;
                background-size: cover;
              }
              .tabby-content .pure-table tbody td:last-child{
                background: url(../img/bar_r.png) no-repeat;
                background-size: cover;
                background-position: right center;
                position: relative;
              }
              .tab1 .tabby-content .pure-table tbody td:nth-child(3), .tab2 .tabby-content .pure-table tbody td:nth-child(4){
                min-width: 35px;
              }
              .tabby-content .pure-table td, .tabby-content .pure-table th{
                border: none;
                font-weight: bold;
                font-size: 19px;
                margin-bottom: 20px;
                /* background: #fff; */
              }
              .pure-table tbody td img{
                margin: 0;
                float: none;
                width: 20px;
              }
        
          .tabby-content img {
              float: left;
              margin-right: 20px;
              border-radius: 8px;
          }
        
        .tabby-tab [type=radio] { display: none; }
        [type=radio]:checked ~ label {
            background: #491575;
            z-index: 2;
        }
        [type=radio]:checked ~ label .arrow{
          transform: rotate(180deg);
        }
        
        [type=radio]:checked ~ label ~ .tabby-content {
            z-index: 1;
            overflow: auto;
            /* show/hide */
                opacity: 1;
                /* transform: scale(1); */
        }

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media all and (min-width:321px) and (max-width:768px) {
  /* Style adjustments for mobile */
  .login_box p.btn_box .btn_reset{
    width: 120px;
  }
  .game_bg .btn, .nav_con a, .nav_con a:hover, .nav_con a.actived{
    font-size: 18px;
    white-space: normal;
  }
  .coupon_btn{
    width: 100%;
  }
  .stepS .btn, .stepF .btn{
    width: 90px;
    font-size: 16px;
  }
  .top_box{
    height: 100%;
  }
  .top_box .tabs.award_con{
    overflow: auto;
  }
  .btn{
    font-size: 20px;
  }
  .btn_junior, .btn_senior, .level_con .btn_back{
    width: calc(27% - 30px);
  }
}

@media all and (max-width:1023px) {
  .game_con .pure-u-1-4 img{
    /* position: absolute; */
  }
}

@media print,
  (-webkit-min-device-pixel-ratio: 1.25),
  (min-resolution: 1.25dppx),
  (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
  *,
  *::before,
  *::after {
    background: #fff !important;
    color: #000 !important;
    /* Black prints faster */
    box-shadow: none !important;
    text-shadow: none !important;
  }

  a,
  a:visited {
    text-decoration: underline;
  }

  a[href]::after {
    content: " (" attr(href) ")";
  }

  abbr[title]::after {
    content: " (" attr(title) ")";
  }

  /*
   * Don't show links that are fragment identifiers,
   * or use the `javascript:` pseudo protocol
   */
  a[href^="#"]::after,
  a[href^="javascript:"]::after {
    content: "";
  }

  pre {
    white-space: pre-wrap !important;
  }

  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }

  tr,
  img {
    page-break-inside: avoid;
  }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
  }
}

