*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
button,
textarea,
p,
blockquote,
th {
  font-family: Helvetica, Arial, 'Microsoft JhengHei', sans-serif !important;
}

img,
object,
embed,
video {
  max-width: 100%;
}

.ie6 img {
  width: 100%;
}

::-webkit-input-placeholder {
  color: #b4b4b4;
}

:-ms-input-placeholder {
  color: #b4b4b4;
}

::-ms-input-placeholder {
  color: #b4b4b4;
}

::placeholder {
  color: #b4b4b4;
}

body {
  color: #333333;
  font-size: 16px;
  min-width: 320px;
  background: #fff;
}

.cp-tips,
.cp-tips-ie10 {
  width: 100%;
  line-height: 1.6;
  text-align: center;
  color: #996600;
  background-color: #ffefc6;
  padding: 10px;
  font-size: 16px;
}

.cp-tips p,
.cp-tips-ie10 p {
  margin: 0;
}

.cp-tips a,
.cp-tips-ie10 a {
  color: #f75c61;
  text-decoration: underline;
}

.cp-tips .cp-tips-close,
.cp-tips-ie10 .cp-tips-close {
  position: absolute;
  top: 10px;
  right: 10px;
  display: block;
  width: 22px;
  height: 22px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  cursor: pointer;
}

.cp-tips .cp-tips-close:before,
.cp-tips-ie10 .cp-tips-close:before {
  content: '';
  position: absolute;
  width: 100%;
  border-top: 1px solid #996600;
  top: 50%;
  left: 0;
}

.cp-tips .cp-tips-close:after,
.cp-tips-ie10 .cp-tips-close:after {
  content: '';
  position: absolute;
  height: 100%;
  border-left: 1px solid #996600;
  top: 0;
  left: 50%;
}

.cp-tips-ie10 {
  display: none;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .cp-tips-ie10 {
    display: block;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.4;
}

p {
  line-height: 1.6;
}

.pt-0,
.p-0,
.py-0 {
  padding-top: 0px;
}

.pb-0,
.p-0,
.py-0 {
  padding-bottom: 0px;
}

.pl-0,
.p-0,
.px-0 {
  padding-left: 0px;
}

.pr-0,
.p-0,
.px-0 {
  padding-right: 0px;
}

.mt-0,
.m-0,
.my-0 {
  margin-top: 0px;
}

.mb-0,
.m-0,
.my-0 {
  margin-bottom: 0px;
}

.ml-0,
.m-0,
.mx-0 {
  margin-left: 0px;
}

.mr-0,
.m-0,
.mx-0 {
  margin-right: 0px;
}

.pt-1,
.p-1,
.py-1 {
  padding-top: 10px;
}

.pb-1,
.p-1,
.py-1 {
  padding-bottom: 10px;
}

.pl-1,
.p-1,
.px-1 {
  padding-left: 10px;
}

.pr-1,
.p-1,
.px-1 {
  padding-right: 10px;
}

.mt-1,
.m-1,
.my-1 {
  margin-top: 10px;
}

.mb-1,
.m-1,
.my-1 {
  margin-bottom: 10px;
}

.ml-1,
.m-1,
.mx-1 {
  margin-left: 10px;
}

.mr-1,
.m-1,
.mx-1 {
  margin-right: 10px;
}

.pt-2,
.p-2,
.py-2 {
  padding-top: 20px;
}

.pb-2,
.p-2,
.py-2 {
  padding-bottom: 20px;
}

.pl-2,
.p-2,
.px-2 {
  padding-left: 20px;
}

.pr-2,
.p-2,
.px-2 {
  padding-right: 20px;
}

.mt-2,
.m-2,
.my-2 {
  margin-top: 20px;
}

.mb-2,
.m-2,
.my-2 {
  margin-bottom: 20px;
}

.ml-2,
.m-2,
.mx-2 {
  margin-left: 20px;
}

.mr-2,
.m-2,
.mx-2 {
  margin-right: 20px;
}

.pt-3,
.p-3,
.py-3 {
  padding-top: 30px;
}

.pb-3,
.p-3,
.py-3 {
  padding-bottom: 30px;
}

.pl-3,
.p-3,
.px-3 {
  padding-left: 30px;
}

.pr-3,
.p-3,
.px-3 {
  padding-right: 30px;
}

.mt-3,
.m-3,
.my-3 {
  margin-top: 30px;
}

.mb-3,
.m-3,
.my-3 {
  margin-bottom: 30px;
}

.ml-3,
.m-3,
.mx-3 {
  margin-left: 30px;
}

.mr-3,
.m-3,
.mx-3 {
  margin-right: 30px;
}

.pt-4,
.p-4,
.py-4 {
  padding-top: 40px;
}

.pb-4,
.p-4,
.py-4 {
  padding-bottom: 40px;
}

.pl-4,
.p-4,
.px-4 {
  padding-left: 40px;
}

.pr-4,
.p-4,
.px-4 {
  padding-right: 40px;
}

.mt-4,
.m-4,
.my-4 {
  margin-top: 40px;
}

.mb-4,
.m-4,
.my-4 {
  margin-bottom: 40px;
}

.ml-4,
.m-4,
.mx-4 {
  margin-left: 40px;
}

.mr-4,
.m-4,
.mx-4 {
  margin-right: 40px;
}

.pt-5,
.p-5,
.py-5 {
  padding-top: 50px;
}

.pb-5,
.p-5,
.py-5 {
  padding-bottom: 50px;
}

.pl-5,
.p-5,
.px-5 {
  padding-left: 50px;
}

.pr-5,
.p-5,
.px-5 {
  padding-right: 50px;
}

.mt-5,
.m-5,
.my-5 {
  margin-top: 50px;
}

.mb-5,
.m-5,
.my-5 {
  margin-bottom: 50px;
}

.ml-5,
.m-5,
.mx-5 {
  margin-left: 50px;
}

.mr-5,
.m-5,
.mx-5 {
  margin-right: 50px;
}

.pt-6,
.p-6,
.py-6 {
  padding-top: 60px;
}

.pb-6,
.p-6,
.py-6 {
  padding-bottom: 60px;
}

.pl-6,
.p-6,
.px-6 {
  padding-left: 60px;
}

.pr-6,
.p-6,
.px-6 {
  padding-right: 60px;
}

.mt-6,
.m-6,
.my-6 {
  margin-top: 60px;
}

.mb-6,
.m-6,
.my-6 {
  margin-bottom: 60px;
}

.ml-6,
.m-6,
.mx-6 {
  margin-left: 60px;
}

.mr-6,
.m-6,
.mx-6 {
  margin-right: 60px;
}

.text-hidden {
  text-indent: -9999px;
  height: 0;
}

.text-center {
  text-align: center;
}

.d-block {
  display: block;
}

.all-content {
  font-size: 1.2em;
}

.container {
  width: 940px;
  max-width: 100%;
  padding-right: 20px;
  padding-left: 20px;
  margin-right: auto;
  margin-left: auto;
}

.row {
  margin-left: -15px;
  margin-right: -15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.row > [class^="col"] {
  padding-left: 15px;
  padding-right: 15px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.row.smmargin {
  margin-left: -5px;
  margin-right: -5px;
}

.row.smmargin > [class^="col-"] {
  padding-left: 5px;
  padding-right: 5px;
}

.row .col-2 {
  width: 16.66%;
}

.row .col-3 {
  width: 25%;
}

.row .col-4 {
  width: calc(100% / 3);
}

.row .col-5 {
  width: 41.66%;
}

.row .col-6 {
  width: 50%;
}

.row .col-7 {
  width: 58.34%;
}

.row .col-8 {
  width: calc(100% * 2 / 3);
}

.row .col-9 {
  width: 75%;
}

.row .col-12 {
  width: 100%;
}

.header {
  height: 0 !important;
  overflow: hidden !important;
}

.main_top {
  width: 100%;
  position: relative;
  height: 31.2vw;
  background: url(../images/bg_xl.jpg) no-repeat center;
  background-size: cover;
}

.intro_section {
  overflow: hidden;
  padding: 6em 0;
}

.intro_section .container .left {
  position: relative;
}

.intro_section .container .left:before {
  content: '';
  position: absolute;
  right: 102%;
  top: 0;
  width: 74px;
  height: 40px;
  background: url(../images/dot.png) no-repeat center;
  background-size: contain;
}

.intro_section .container p {
  line-height: 1.8;
  background: url(../images/taiwan.png) no-repeat right top;
  background-size: auto 100%;
  padding-top: 30px;
  padding-bottom: 30px;
  font-size: 1.05em;
}

.intro_section .container p span {
  color: #dc6282;
}

.intro_section .container .right {
  position: relative;
}

.intro_section .container .right:before {
  content: '';
  position: absolute;
  right: 101%;
  bottom: 20%;
  width: 74px;
  height: 40px;
  background: url(../images/dot.png) no-repeat center;
  background-size: contain;
}

.intro_section .container .right:after {
  content: '';
  position: absolute;
  left: 101%;
  top: 20%;
  width: 74px;
  height: 40px;
  background: url(../images/dot.png) no-repeat center;
  background-size: contain;
}

.intro_section .container .img {
  position: relative;
  display: inline-block;
  border-radius: 20px;
  overflow: hidden;
}

.case {
  padding: 2em 0 4em;
}

.case .box {
  border: 2px solid #47c0c9;
  padding: 0 60px 60px;
  border-radius: 20px;
  margin-bottom: 10px;
}

.case .box .title {
  text-align: center;
  margin-top: -55px;
  margin-bottom: 40px;
}

.case .box .img {
  display: inline-block;
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid #ccc;
}

.case .box .txt {
  padding-left: 20px;
}

.case .box h2 {
  color: #000;
  font-size: 1.2em;
  margin: 30px 0 10px;
}

.case .box h3 {
  color: #e4685d;
  font-size: 1.6em;
  line-height: 1.2;
}

.case .box h3 span {
  display: block;
}

.case .box .date p {
  display: inline-block;
  background: #ededed;
  border-radius: 6px;
  padding: 5px 15px;
  color: #e4685d;
  margin-top: 20px;
}

.case .box .date p span {
  white-space: nowrap;
}

.case .box.box__2 {
  padding: 60px;
  text-align: center;
}

.case .box.box__2 table {
  font-size: .85em;
  max-width: 100%;
  margin: 0 auto;
}

.case .box.box__2 table th {
  text-align: center;
  background: #47c0c9;
  color: #fff;
  border: 1px solid #2d9097;
  padding: 8px 10px;
  white-space: nowrap;
}

.case .box.box__2 table .bg_g td {
  background: #f3f3f3;
}

.case .box.box__2 table td {
  border: 1px solid #afbfc7;
  padding: 5px 10px;
  color: #355c7d;
  text-align: center;
  vertical-align: middle;
}

.case .box.box__2 table td.td_r {
  background: #d9f3ea;
}

.case .box.box__2 table td.time {
  text-align: left;
}

.case .box.box__2 table td.cata {
  text-align: left;
}

.case .box.box__2 table td.cata .cata__1 {
  display: inline-block;
  background: #57bff1;
  color: #fff;
  border-radius: .1em;
  padding: 1px 8px;
}

.case .box.box__2 table td.cata .cata__2 {
  display: inline-block;
  background: #f782a9;
  color: #fff;
  border-radius: .1em;
  padding: 1px 8px;
}

.case .box.box__2 table td.cata > div {
  margin: 3px 0;
}

.case .box.box__2 table td.cata small {
  color: #999;
}

.case .box.box__2 table td .p__2 {
  color: #999;
}

.case .box.box__2 .sign_section {
  width: 500px;
  max-width: 100%;
  margin: 40px auto 0;
}

.case .box.box__2 .sign_section p.rule {
  font-size: .9em;
  margin-bottom: 30px;
}

.case .box.box__2 h4 {
  font-size: 1.2em;
  color: #47c0c9;
  margin-bottom: 10px;
}

.case .box.box__2 a {
  display: inline-block;
  color: #fff;
  padding: 15px;
  border-radius: 50em;
  width: 200px;
  max-width: 100%;
  text-align: center;
  -webkit-box-shadow: inset 0px 1px 0px 0px #f7c5c0;
          box-shadow: inset 0px 1px 0px 0px #f7c5c0;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(5%, #fc8d83), to(#e4685d));
  background: linear-gradient(to bottom, #fc8d83 5%, #e4685d 100%);
  background-color: #fc8d83;
  border: 1px solid #d83526;
  text-shadow: 0px 1px 0px #b23e35;
}

.case .box.box__2 a:hover {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(5%, #e4685d), to(#fc8d83));
  background: linear-gradient(to bottom, #e4685d 5%, #fc8d83 100%);
  background-color: #e4685d;
}

.group_select {
  text-align: left;
}

.group_select .ans_block_show {
  position: relative;
  overflow: visible !important;
  margin-bottom: 40px !important;
}

.group_select .ans_block_show .ans_block_title {
  border: 1px solid #afbfc7;
  padding: 12px 20px;
  cursor: pointer;
  border-radius: 5px;
}

.group_select .ans_block_show .ans_block_title small {
  color: #666;
}

.group_select .ans_block_show:after {
  content: '';
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -4px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 8px 0 8px;
  border-color: #afbfc7 transparent transparent transparent;
  pointer-events: none;
}

.group_select .ans_block {
  position: absolute;
  background: #fff;
  color: #333333;
  border: 1px solid #afbfc7;
  top: calc(100% + 5px);
  left: 0;
  width: 100%;
  z-index: 2000;
  padding: 10px 0;
  border-radius: 5px;
  display: none;
}

.group_select .ans_block .q_left:not(:last-child) {
  margin-bottom: 10px;
}

.group_select .ans_block input[type="radio"] {
  display: none;
}

.group_select .ans_block input[type="radio"]:disabled + label {
  color: #ccc;
}

.group_select .ans_block input[type="radio"]:disabled + label:hover {
  background: transparent;
}

.group_select .ans_block input[type="radio"] + label {
  position: relative;
  display: block;
  line-height: 1.6;
  padding: 0 20px;
}

.group_select .ans_block input[type="radio"] + label:hover {
  background: #f3f3f3;
}

.group_select .ans_block input[type="radio"] + label small {
  color: #666;
}

#QT1 {
  margin-bottom: 10px;
  font-weight: bold;
  padding: 10px;
  background: #eaeaea;
  color: #000;
}

.n_footer {
  background: #4ad3a9;
  color: #fff;
  padding: 3em 20px;
}

.n_footer .container {
  width: 800px;
}

.n_footer .col-6:first-child {
  border-right: 1px solid rgba(255, 255, 255, 0.4);
}

.n_footer .app {
  padding-left: 40px;
}

.n_footer .app .col-4 {
  text-align: right;
}

.n_footer .app p {
  letter-spacing: .1em;
}

.n_footer .app a {
  display: inline-block;
  padding: 7px 30px;
  color: #222;
  border-radius: 50em;
  font-size: .8em;
  margin-top: 5px;
  background: #fadeaf;
}

.form_top {
  margin-bottom: 40px;
}

.form_top .form_top_list {
  margin-bottom: 20px;
}

.form_top .form_top_title {
  font-weight: bold;
  color: #de6284;
}

.form_top ol {
  padding-left: 1.5em;
  margin-top: 6px;
}

.form_top ol li {
  list-style-type: disc;
  line-height: 1.4;
}

.form_top p {
  line-height: 1.4;
}

.form_top p a {
  color: #2b7fc5;
}

#login-modal {
  position: relative;
  width: 500px;
  max-width: 95%;
  margin: 60px auto;
  background: #fff;
  padding: 40px;
  border-radius: 20px;
}

.mfp-close-btn-in .mfp-close {
  color: #ccc !important;
  top: -12px;
  right: -12px;
  opacity: 1;
  width: 36px;
  height: 36px;
  line-height: 36px;
  font-size: 21px;
  background: #222;
  border-radius: 50%;
}

@media only screen and (max-width: 1200px) {
  .container {
    width: 800px;
  }
}

@media only screen and (max-width: 992px) {
  .container {
    width: 760px;
  }
  .main_top {
    height: 45.7vw;
    background-size: 130% auto;
  }
  .intro_section .col-6 {
    width: 500px;
    max-width: 100%;
    margin: 0 auto;
  }
  .case .col-5,
  .case .col-7 {
    width: 100%;
    text-align: center;
  }
  .case .img {
    margin-bottom: 30px;
  }
  .case .box .txt {
    padding-left: 0;
  }
}

@media only screen and (max-width: 768px) {
  .all-content {
    font-size: 1.05em;
  }
  .container {
    width: 580px;
  }
  .main_top {
    height: 120vw;
    background: url(../images/bg_m.jpg) no-repeat center;
    background-size: cover;
    background-size: 120% auto;
  }
  .case .box .title {
    margin-top: -42px;
  }
  .case .box .title {
    margin-top: -42px;
  }
  .case .box.box__2 .overflow_scroll {
    overflow-x: scroll;
  }
  .case .box.box__2 table {
    min-width: 600px;
  }
  .case .box.box__2 table td {
    padding: 4px 8px;
  }
  .n_footer .col-6:first-child {
    border: none;
    width: 100%;
    text-align: center;
  }
  .n_footer .col-6:first-child img {
    max-width: 70%;
  }
  .n_footer .col-6:last-child {
    width: 360px;
    max-width: 100%;
    margin: 0 auto;
  }
  .n_footer .col-6:last-child .app {
    padding-left: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.4);
    padding-top: 20px;
    margin-top: 20px;
  }
  .n_footer .col-6:last-child .app p {
    font-size: 1.4em;
  }
  .n_footer .col-6:last-child .app a {
    width: 100%;
    text-align: center;
    padding: 10px;
    font-size: 1em;
  }
}

@media only screen and (max-width: 576px) {
  .all-content {
    font-size: 1em;
  }
  .container {
    width: 520px;
  }
  .intro_section {
    padding: 3em 0;
  }
  .intro_section .container p {
    font-size: 1.1em;
  }
  .intro_section .container .right:before, .intro_section .container .right:after {
    display: none;
  }
  .case .box {
    padding: 0 20px 40px;
  }
  .case .box .title {
    margin-top: -7vw;
  }
  .case .box.box__2 {
    padding: 20px 20px 40px;
  }
  .case .box.box__2 h4 span {
    display: block;
  }
  .group_select .ans_block input[type="radio"] + label small {
    display: none;
  }
  .group_select .ans_block_show .ans_block_title small {
    display: none;
  }
  #login-modal {
    padding: 40px 20px;
  }
}

@media only screen and (max-width: 450px) {
  .toggle_wrapper #toggle_abc + label img {
    height: 21px;
  }
  .toggle_wrapper #toggle_jr + label img {
    height: 28px;
  }
}
