@charset "UTF-8";
html,
body {
  font-family: "Microsoft JhengHei", "微軟正黑體";
  font-size: 20px; }

body {
  background-color: #f2f2f2; }

a {
  color: inherit;
  text-decoration: none; }
  a:hover {
    color: inherit;
    text-decoration: none; }

ul {
  padding-left: 0;
  list-style-type: none; }

.c_orange {
  color: #d74108; }

.font_w_700 {
  font-weight: 700; }

.common_btn {
  display: inline-block;
  height: 60px;
  font-size: 1.1rem;
  line-height: 60px;
  text-align: center;
  white-space: nowrap;
  -webkit-transition: all 240ms;
  -o-transition: all 240ms;
  transition: all 240ms; }
  .common_btn a {
    padding-left: 2em;
    padding-right: 2em;
    display: block; }
  .common_btn.is_master {
    background-color: #d74108;
    color: #fff; }
    .common_btn.is_master:hover {
      background-color: #a63206; }
  .common_btn.is_sub {
    background-color: #fff;
    text-decoration: underline;
    color: #d74108;
    font-size: 0.9rem; }
    .common_btn.is_sub:hover {
      background-color: #e6e6e6;
      text-decoration: none; }
  .common_btn.is_special {
    background-color: #fde876;
    color: #000; }
    .common_btn.is_special:hover {
      background-color: #fce044;
      text-decoration: none; }
  .common_btn.is_disable {
    width: 200px;
    font-size: 0.9rem;
    background-color: #dde6f0;
    color: #666;
    cursor: auto; }

.sec_mastervision .mv {
  position: relative; }

.sec_mastervision .mv_container {
  position: absolute;
  left: 5.20833%;
  right: 5.20833%;
  top: 6.94444%;
  bottom: 13.88889%;
  margin: auto; }
  .sec_mastervision .mv_container .logo {
    position: absolute;
    left: 0;
    top: 0; }
    .sec_mastervision .mv_container .logo img {
      height: 50px; }
  .sec_mastervision .mv_container .word {
    position: absolute;
    top: 25%;
    left: 0;
    color: #fff;
    letter-spacing: 0.1em; }
    .sec_mastervision .mv_container .word .primary {
      margin-left: -.5em;
      font-size: 2.8rem;
      font-weight: 700;
      line-height: 1.2; }
    .sec_mastervision .mv_container .word .sub {
      font-size: 2.4rem;
      opacity: .9; }
    .sec_mastervision .mv_container .word .cta {
      margin-top: 40px; }
  .sec_mastervision .mv_container::after {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 136.36364px;
    height: 1px;
    background-color: #fff; }

.sec_mastervision img {
  max-width: 100%; }

.sec_gift {
    max-width: 800px;
    margin: 0 auto;
  }
  .sec_gift .parag {
    margin-bottom: 30px; }
    .sec_gift .parag p {
      margin: 0;
      line-height: 1.7rem; }
  .sec_gift .gift_item {
    padding-left: 10px;
    padding-right: 10px;
    text-align: center; }
    .sec_gift .gift_item img {
      width: 100%;}
    .sec_gift .gift_item .name {
      font-size: 14px;
      margin-top: 1em; }

.intro_word .class_name {
  border-left: 3px solid #fde876;
  padding-left: 1em;
  margin-bottom: 1em;
  line-height: 1;
  font-size: 1.2em; }
  .intro_word .class_name .main {
    margin-top: 16px;
    font-size: 1.9em;
    font-weight: 700;
    letter-spacing: .04em;
    color: #d74108; }

@media (max-width: 1599px) {
  .sec_mastervision .mv_container .word .primary {
    font-size: 2.2rem; }
  .sec_mastervision .mv_container .word .sub {
    font-size: 1.9rem; } }

@media screen and (max-width: 991px) {
  .sec_gift .gift_item {
    margin-bottom: 40px; }
    .sec_gift .gift_item .name {
      margin-top: 10px; } }

@media screen and (max-width: 575px) {
  .intro_word .class_name {
    font-size: 1em; }
    .intro_word .class_name .main {
      font-size: 1.5em; } }

/*.sec_mastervision .mv {
  max-height: 420px;
  overflow: hidden; }*/

.sec_form {
  position: relative;
  margin-top: 60px;
  z-index: 1; }
  .sec_form .intro_word {
    max-width: 600px;
    margin: 0 auto 40px; }
  .sec_form .form-control {
    border-radius: 0; }
  .sec_form .tit {
    font-weight: 700;
    font-size: 2rem;
    margin-bottom: 60px; }
  .sec_form .area {
    position: relative;
    padding-top: 60px;
    padding-bottom: 60px;
    margin-top: -100px;
    padding-left: 30px;
    padding-right: 30px;
    background-color: #fff; }
  .sec_form .wrap {
    margin: 0 auto;
    max-width: 650px; }
  .sec_form .checks_area {
    margin-top: 0.5em;
    padding-left: 1em; }
    .sec_form .checks_area .form-check {
      margin-bottom: 20px; }
  .sec_form .form-check-input {
    width: 20px;
    height: 20px; }
  .sec_form .warning_box {
    margin-top: 40px;
    margin-bottom: 50px; }
    .sec_form .warning_box p {
      margin-bottom: 0; }
    .sec_form .warning_box .form_checks {
      padding-left: 1em;
      padding-right: 1em; }
      .sec_form .warning_box .form_checks p {
        margin-top: 10px; }
    .sec_form .warning_box .parag_box {
      margin-top: 16px;
      border: 1px solid #d74108;
      padding: 1em 1.2em;
      font-size: .875em;
      line-height: 1.6;
      color: #555; }
      .sec_form .warning_box .parag_box a {
        color: #20bac6;
        text-decoration: underline; }
  .sec_form .g_cta {
    font-size: 0; }
    .sec_form .g_cta .common_btn {
      display: inline-block; }
    .sec_form .g_cta .is_sub {
      margin-left: 20px; }
    .sec_form .g_cta a[type="submit"] {
      -webkit-appearance: inherit;
      cursor: pointer; }

.login_text {
  position: absolute;
  top: -25px;
  left: 50%;
  -webkit-transform: translate3d(-50%, 0, 0);
  transform: translate3d(-50%, 0, 0);
  max-width: 95%;
  /*width: 680px;*/
  width: 100%;
  height: 50px;
  line-height: 50px;
  padding: 0 2rem;
  font-size: 1.1em;
  background-color: #fde876;
  text-align: center; }

.login_part .mail_input {
  padding: 0; }
  .login_part .mail_input input {
    padding-top: .5em;
    padding-bottom: .5em;
    width: 100%;
    height: 60px; }

.a_footer {
  margin-top: -140px;
  height: 250px;
  background-color: #152935; }

@media screen and (max-width: 767px) {
  .login_text {
    position: static;
    top: inherit;
    left: inherit;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    margin: -35px -30px 30px;
    max-width: inherit;
    width: auto;
    height: auto;
    line-height: 28px;
    padding: 1rem;
    font-size: 1em;
    text-align: left; } }

@media screen and (max-width: 575px) {
  .sec_form {
    margin-top: 40px; }
    .sec_form .area {
      padding-top: 35px;
      padding-bottom: 30px; }
    .sec_form .tit {
      margin-bottom: 20px; }
    .sec_form .company_number_part {
      margin-bottom: 10px; }
    .sec_form .checks_area {
      padding-left: 0; }
    .sec_form .form-check {
      margin-bottom: 10px; }
    .sec_form .g_cta {
      text-align: center; }
      .sec_form .g_cta .is_sub {
        margin-top: 10px;
        margin-left: 0; }
  .login_part .g_cta {
    margin-top: 15px; } }
