/* Reset */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  /*vertical-align: top;*/
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

body {
  -webkit-text-size-adjust: none;
  font-family: "sourcehansans-tc", "微軟正黑體", Helvetica, "Helvetica Neue",
    Arial, sans-serif;
  font-weight: 400;
  letter-spacing: 1px;
}
.s_order_title,
.sp_contact_t,
.card_title,
.atm_title,
.sp_paysel_left_fin span,
.sp_bank,
.sp_bank_number,
.sp_bank_atm,
.sp_fail_t {
  font-weight: 600;
}
section {
  margin: 0 auto;
  width: 100%;
  position: relative;
  width: 1200px;
  overflow: hidden;
}

.s_progress {
  list-style: none;
  margin: 0;
  padding: 0;
  display: table;
  table-layout: fixed;
  width: 100%;
  color: #849397;
}
.s_progress > li {
  position: relative;
  display: table-cell;
  text-align: center;
  font-size: 0.8em;
}
.s_progress > li:before {
  content: attr(data-step);
  display: block;
  margin: 0 auto;
  background: #dfe3e4;
  width: 40px;
  height: 40px;
  text-align: center;
  margin-bottom: 0.25em;
  line-height: 40px;
  border-radius: 100%;
  position: relative;
  z-index: 10;
  font-size: 22px;
}
.s_progress > li:after {
  content: "";
  position: absolute;
  display: block;
  background: #dfe3e4;
  width: 100%;
  /*height: 0.5em;
  top: 1.25em;*/
  height: 12px;
  top: 14px;
  left: 50%;
  margin-left: 1.5em\9;
  z-index: -1;
}
.s_progress > li:last-child:after {
  display: none;
}
.s_progress > li.is-complete {
  color: #2480d1;
}
.s_progress > li.is-complete:before,
.s_progress > li.is-complete:after {
  color: #fff;
  background: #2480d1;
}
.s_progress > li.is-active {
  color: #2480d1;
}
.s_progress > li.is-active:before {
  color: #fff;
  background: #2480d1;
}

/**
 * Needed for IE8
 */
.s_progress__last:after {
  display: none !important;
}

/**
 * Size Extensions
 */
.s_progress--medium {
  font-size: 1.5em;
}

.s_progress--large {
  font-size: 2em;
}

.shop_progress {
  margin: 0 auto;
  width: 100%;
  position: relative;
  max-width: 920px;
  overflow: hidden;
  margin-top: 20px;
}
.shop_div {
  margin: 0 auto;
  width: 100%;
  position: relative;
  max-width: 700px;
  overflow: hidden;
  margin-top: 20px;
}
.shop_coupon_div {
  max-width: 1100px;
}
.s_order_title {
  font-size: 21px;
  color: #2480d1;
  line-height: 45px;
}
.s_order_sum {
  background-color: #eaf2fa;
  font-size: 16px;
  color: #2480d1;
  line-height: 55px;
  padding-left: 10px;
  border-bottom: 1px solid #cccccc;
}
.s_list_content {
  display: block;
}
.sp_name {
  position: relative;
  float: left;
  width: 65%;
  padding: 5px 0px 15px 0px;
}
.sp_name a {
  display: block;
  text-decoration: none;
  font-size: 16px;
  color: #575756;
  padding-left: 10px;
}
.sp_price {
  position: relative;
  float: left;
  width: 20%;
  text-align: right;
  font-size: 16px;
  color: #575756;
  padding: 5px 0px 15px 0px;
}
.sp_price:before {
  font-size: 12px;
  content: "NT$";
}
.sp_del {
  position: relative;
  float: left;
  width: 15%;
  text-align: center;
  padding: 5px 0px 15px 0px;
}
.sp_del img {
  cursor: pointer;
  vertical-align: middle;
}
.s_price_list {
  position: relative;
  display: table;
  color: black;
  border-bottom: 1px solid #cccccc;
  height: 75px;
  width: 100%;
  overflow: hidden;
}
.s_price_list_delete::after {
  content: "此課程已無法購買，請從購物車移除";
  width: 86%;
  height: 100%;
  position: absolute;
  background-color: rgba(0, 0, 0, 0.6);
  display: table-cell;
  top: 0;
  left: 0;
  color: #ffffff;
  vertical-align: middle;
  line-height: 70px;
  font-size: 17px;
  text-align: center;
}
.sp_stotal_row {
  background-color: #eaf2fa;
  height: 90px;
}
.sp_stotal_right {
  background-color: #ffffff;
  position: relative;
  float: right;
  height: 56px;
  margin-right: 10px;
  margin-top: 15px;
}
.sp_stotal_a {
  margin: 5px 0px 0px 5px;
  display: block;
  position: relative;
  float: left;
  font-size: 15px;
  color: #575756;
}
.sp_stotal_b {
  margin: 30px 0px 0px 5px;
  display: block;
  position: relative;
  float: left;
  font-size: 16px;
  color: #2480d1;
}
.sp_stotal_c {
  margin: 0px 0px 0px 5px;
  display: block;
  position: relative;
  float: left;
  font-size: 44px;
  color: #2480d1;
}
.sp_stotal_d {
  margin: 30px 5px 0px 5px;
  display: block;
  position: relative;
  float: left;
  font-size: 15px;
  color: #575756;
}
.sp_discount {
  display: table;
  width: 100%;
}
.sp_discount_left {
  position: relative;
  float: left;
  text-align: left;
  font-size: 16px;
  color: #2480d1;
  line-height: 50px;
}
.sp_discount_right {
  position: relative;
  float: right;
  text-align: right;
}
.sp_discount_right label {
  font-size: 16px;
  color: #2480d1;
  line-height: 50px;
}
.sp_discount_right input {
  max-width: 150px;
  float: right;
  margin: 0px 5px 0px 5px;
  margin-top: 8px;
}
.sp_discount_right button[type="submit"] {
  float: right;
  margin-top: 9px;
  margin-bottom: 9px;
  cursor: pointer;
  width: 70px;
  font-size: 16px;
  background: #2480d1;
  color: #fff;
  outline: none;
  text-transform: uppercase;
  overflow: hidden;
  border: none;
  line-height: 20px;
  -moz-transition: all 0.15s ease-in-out;
  -o-transition: all 0.15s ease-in-out;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
}
.sp_discount_t {
  color: #2480d1;
  font-size: 21px;
  text-align: left;
  line-height: 50px;
  font-weight: 700;
}
.sp_discount {
  border: 1px solid #cccccc;
  padding: 10px 0px;
  margin-bottom: 20px;
}
.sp_discount_list {
  width: 100%;
  margin: 0 auto;
}
.sp_discount_list tr {
  border-bottom: 1px solid #cccccc;
  display: inline-block;
  padding: 15px 0px 15px 0px;
  width: 100%;
}
.sp_discount_list tr:last-child {
  border-bottom: none;
}
.sp_discount_icon {
  width: 13%;
  text-align: center;
  float: left;
}
.sp_discount_content {
  width: 50%;
  text-align: left;
  border-left: 1px solid #cccccc;
  padding: 0px 2%;
  float: left;
}
.sp_discount_txt {
  font-size: 21px;
  color: #5d5d5d;
  line-height: 28px;
  word-break: break-all;
}
.sp_discount_tip {
  font-size: 12px;
  color: #5d5d5d;
  line-height: 16px;
  word-break: break-all;
}
.sp_discount_use {
  width: 37%;
  float: right;
}
.sp_discount_use_up {
  width: 100%;
  display: inline-block;
}
.sp_discount_p {
  font-size: 26px;
  color: #b0272d;
  line-height: 32px;
  padding: 0px 5px;
}
.sp_discount_btn {
  background-color: #2480d1;
  font-size: 16px;
  color: #ffffff;
  padding: 3px 8px;
  line-height: 24px;
  width: auto;
  display: inherit;
  vertical-align: bottom;
  cursor: pointer;
}
.sp_discount_btn_none {
  background-color: #cccccc;
  font-size: 16px;
  color: #ffffff;
  padding: 3px 8px;
  line-height: 24px;
  width: auto;
  display: inherit;
  vertical-align: bottom;
}
.sp_discount_use_down {
  width: 100%;
  display: inline-block;
  font-size: 11px;
  color: #5d5d5d;
  line-height: 16px;
}
/*coupon++*/
.coupon_tag {
  font-size: 11px;
  color: #575756;
  border: solid 1px #2480d1;
  display: inline-block;
  padding: 0px 2px;
  margin-left: 5px;
}
.coupon_tag::before {
  content: url("../image/ok01-01.svg");
  padding: 1px 2px;
  width: 5px;
  vertical-align: middle;
}
.sp_coupon_t {
  font-size: 12px;
  color: #2480d1;
  display: block;
  padding: 0px 0px 5px 8px;
}
.add_coupon::before {
  content: url("../image/s-c-t-02.png");
  padding: 0px 10px 0px 0px;
  width: 42px;
  vertical-align: sub;
}
.add_coupon {
  font-size: 16px;
  color: #2480d1 !important;
}
.add_coupon > span {
  font-size: 12px;
}
.coupon_price {
  color: #2480d1 !important;
}
.sw_cp_t {
  text-align: left;
}
.sw_cp_radiodiv {
  text-align: left;
  padding-left: 20px;
}
.sw_cp_radiodiv label {
  color: #575756;
  font-size: 16px;
}
.sw_cp_radiodiv label > input {
  width: 20px;
  height: 20px;
  margin-left: -25px !important;
}
/*coupon--*/
.sp_udlr_div {
  background-color: #eaf2fa;
  display: table;
  width: 100%;
}
.sp_udlr_left {
  position: relative;
  float: left;
  font-size: 26px;
  color: #526bab;
}
.sp_udlr_left img {
  margin: 10px 10px 10px 10px;
}
.sp_udlr_right {
  position: relative;
  float: right;
  font-size: 44px;
  color: #526bab;
  line-height: 60px;
  padding-right: 5px;
}
.sp_udlr_right span {
  font-size: 15px;
}
.sp_tprice_div {
  height: auto;
  display: table;
  width: 100%;
}
.sp_tprice_div .sp_name {
  width: 80%;
  padding: 15px 0px 0px 0px;
}
.sp_tprice_div .sp_name a {
  font-size: 16px;
  color: #808080;
}
.sp_tprice_div .s_price_list {
  height: auto;
  border-bottom: none;
}
.sp_tprice_right {
  position: relative;
  float: right;
  margin: 10px 5px 10px 0px;
}
.sp_tprice_a {
  margin: 5px 0px 0px 5px;
  display: block;
  position: relative;
  float: left;
  font-size: 15px;
  color: #575756;
}
.sp_tprice_b {
  margin: 30px 0px 0px 5px;
  display: block;
  position: relative;
  float: left;
  font-size: 16px;
  color: #dc1c24;
}
.sp_tprice_c {
  margin: 0px 0px 0px 5px;
  display: block;
  position: relative;
  float: left;
  font-size: 44px;
  color: #dc1c24;
}
.sp_tprice_d {
  margin: 30px 0px 0px 5px;
  display: block;
  position: relative;
  float: left;
  font-size: 15px;
  color: #575756;
}
.sp_class_date {
  font-size: 12px;
  color: #575756;
  padding-left: 10px;
  margin-top: 5px;
}
.sp_order_num {
  padding-left: 10px;
  margin-top: 10px;
}
.sp_order_num span {
  color: #808080;
  font-size: 12px;
  background-color: #e6e6e6;
  padding: 1px 3px;
}
.s_hr {
  display: block;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  margin-left: auto;
  margin-right: auto;
  border-style: solid;
  border-color: #cccccc;
  max-width: 1200px;
}
.sp_uni_title {
  font-size: 18px;
  color: #6f6f6e;
}
.sp_uni_title span {
  font-size: 14px;
}
.red_star {
  color: red;
}
.sp_uniform_check_div {
  margin: 0 auto;
  width: 100%;
  position: relative;
  max-width: 700px;
  overflow: hidden;
  margin-top: 20px;
}
.sp_uniform_number_div {
  margin: 0 auto;
  width: 100%;
  position: relative;
  max-width: 700px;
  overflow: hidden;
  margin-top: 20px;
  border: solid 1px #cccccc;
  padding: 20px;
}
.sp_uniform_number_div .acc li {
  border: none;
}
.sp_uniform_number_div .sp_contact_t:hover {
  background-color: #ffffff;
}
.sp_uniform_number_detail {
  margin-top: 15px;
  color: #6f6f6e;
}

.sp_contact_div {
  margin: 0 auto;
  width: 100%;
  position: relative;
  max-width: 700px;
  overflow: hidden;
  margin-top: 20px;
}
.sp_contact_t {
  font-size: 21px;
  color: #2480d1;
  line-height: 40px;
  padding-right: 10px;
}
.sp_contact_detail {
  margin: 5px;
  -webkit-box-shadow: 0px 1px 5px 0px rgba(170, 170, 170, 0.75);
  -moz-box-shadow: 0px 1px 5px 0px rgba(170, 170, 170, 0.75);
  box-shadow: 0px 1px 5px 0px rgba(170, 170, 170, 0.75);
}
.spc_detail_tb {
  width: 95%;
  margin: 0 auto;
  margin-top: 10px;
  margin-bottom: 10px;
}
.spc_detail_tb tr {
  border-bottom: 1px solid #cccccc;
  display: table;
  width: 100%;
}
.spc_detail_tb tr:first-child {
  margin-top: 10px;
}
.spc_detail_tb tr:last-child {
  display: table;
  margin-bottom: 10px;
  width: 100%;
  border-bottom: none;
}
.spc_detail_tb tr td:nth-child(1) {
  font-size: 18px;
  color: #6f6f6e;
  width: 14%;
  height: 50px;
  vertical-align: middle;
}
.spc_detail_tb tr td:nth-child(2) {
  font-size: 18px;
  color: #6f6f6e;
  width: 32%;
  word-break: break-all;
}
.spc_detail_tb tr td:nth-child(3) {
  width: 40%;
  text-align: right;
  font-size: 14px;
}
.spc_detail_tb tr:nth-child(2) td:nth-child(3),
.spc_detail_tb tr:nth-child(4) td:nth-child(3),
.spc_detail_tb tr:nth-child(5) td:nth-child(3) {
  color: #dc1c24;
}
.spc_detail_tb tr td:nth-child(3) img {
  float: left;
}
.cls_sex {
  font-size: 12px;
}
.sp_name_fix_btn {
  float: right;
  color: #2480d1;
  background-color: #e9f2fa;
  padding: 3px 8px;
  font-size: 14px;
  cursor: pointer;
  margin-right: 5px;
}
.sp_pid_fix_btn {
  float: right;
  color: #2480d1;
  background-color: #e9f2fa;
  padding: 3px 8px;
  font-size: 14px;
  cursor: pointer;
  margin-right: 5px;
}
.sp_bd_fix_btn {
  float: right;
  color: #2480d1;
  background-color: #e9f2fa;
  padding: 3px 8px;
  font-size: 14px;
  cursor: pointer;
  margin-right: 5px;
}
.sp_mobile_fix_btn {
  float: right;
  color: #2480d1;
  background-color: #e9f2fa;
  padding: 3px 8px;
  font-size: 14px;
  cursor: pointer;
  margin-right: 5px;
}
.sp_email_fix_btn {
  float: right;
  color: #2480d1;
  background-color: #e9f2fa;
  padding: 3px 8px;
  font-size: 14px;
  cursor: pointer;
  margin: 3px 0px 3px 3px;
}
.cls_uniform {
  width: 95%;
  margin: 0 auto;
  margin-top: 10px;
  margin-bottom: 10px;
  vertical-align: top;
}
.cls_need {
  vertical-align: top !important;
  padding-top: 5px;
  font-size: 18px;
  color: #2480d1;
}
.cls_comp {
  padding-left: 20px;
}
.sp_other {
  font-size: 18px;
  color: #2480d1;
  margin-bottom: 10px;
}
.cls_uniform textarea {
  width: 100%;
  margin-bottom: 20px;
}
.sp_contact_chk {
  padding: 10px 20px 10px 20px;
  font-size: 14px;
  color: #a2a2a2;
}
.sp_unnextstep {
  float: right;
  margin-top: 9px;
  margin-bottom: 9px;
  cursor: pointer;
  width: 100%;
  font-size: 16px;
  background: #4d4d4d;
  color: #fff;
  outline: none;
  text-transform: uppercase;
  overflow: hidden;
  border: none;
  line-height: 36px;
  -moz-transition: all 0.15s ease-in-out;
  -o-transition: all 0.15s ease-in-out;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
  border-radius: unset;
  text-align: center;
}
.sp_unnextstep:hover {
  background: #4d4d4d !important;
  color: #ffffff !important;
}
.sp_nextstep {
  display: none;
  float: right;
  margin-top: 9px;
  margin-bottom: 9px;
  cursor: pointer;
  width: 100%;
  font-size: 16px;
  background: #2480d1;
  color: #fff;
  outline: none;
  text-transform: uppercase;
  overflow: hidden;
  border: none;
  line-height: 36px;
  -moz-transition: all 0.15s ease-in-out;
  -o-transition: all 0.15s ease-in-out;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
  border-radius: unset;
  text-align: center;
}
.sp_nextstep:hover {
  background: #2480d1 !important;
  color: #ffffff !important;
}
.sp_modify {
  float: left;
  margin-top: 9px;
  margin-bottom: 9px;
  cursor: pointer;
  width: 45%;
  font-size: 16px;
  background: #2480d1;
  color: #fff;
  outline: none;
  text-transform: uppercase;
  overflow: hidden;
  border: none;
  line-height: 36px;
  -moz-transition: all 0.15s ease-in-out;
  -o-transition: all 0.15s ease-in-out;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
  border-radius: unset;
  text-align: center;
}
.sp_modify:hover {
  background: #2480d1 !important;
  color: #ffffff !important;
}
.sp_nextstep_confirm {
  float: right;
  margin-top: 9px;
  margin-bottom: 9px;
  cursor: pointer;
  width: 45%;
  font-size: 16px;
  background: #2480d1;
  color: #fff;
  outline: none;
  text-transform: uppercase;
  overflow: hidden;
  border: none;
  line-height: 36px;
  -moz-transition: all 0.15s ease-in-out;
  -o-transition: all 0.15s ease-in-out;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
  border-radius: unset;
  text-align: center;
}

.sp_nextstep_confirm:hover {
  background: #2480d1 !important;
  color: #ffffff !important;
}
/*pay*/
.s_pay_sum {
  background-color: #eaf2fa;
  font-size: 16px;
  color: #2480d1;
  line-height: 55px;
  padding-left: 10px;
  border-bottom: none;
}
.sp_payprice_div {
  display: table;
  width: 100%;
  margin: 15px 0px 15px 0px;
}
.sp_payprice_right {
  width: 100%;
  display: inline-block;
  text-align: right;
  font-size: 18px;
  color: #575756;
  line-height: 24px;
  padding-right: 5px;
}
.sp_payprice_right span {
  display: inherit;
  width: auto;
}
.sp_paysel_div {
  display: table;
  width: 100%;
  border-top: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
  background-color: #f2f2f2;
}
.sp_paysel_left {
  position: relative;
  float: left;
  font-size: 21px;
  color: #2480d2;
}
.sp_paysel_left img {
  margin: 10px 10px 5px 10px;
}
.sp_paysel_right {
  position: relative;
  float: right;
  font-size: 16px;
  color: #575756;
  line-height: 40px;
  padding-right: 5px;
  vertical-align: middle;
  margin-top: 10px;
}
.sp_paysel_right input {
  margin-top: 12px;
}
.card_div,
.atm_div,
.store_div {
  display: none;
}
.card_title,
.atm_title,
.store_title {
  font-size: 18px;
  color: #2480d1;
  line-height: 24px;
  margin-top: 30px;
  margin-bottom: 20px;
}
.credit_card_div {
  margin-top: 20px;
  margin-bottom: 20px;
}
.credit_card_div input {
  padding-left: 5px;
  padding-right: 5px;
}
.credit_card_div .form-group {
  padding-left: 10px;
  padding-right: 10px;
}
.credit_card_div .form-group > div {
  padding-left: 10px;
  padding-right: 10px;
  padding-top: 10px;
}
.credit_card_div .form-group > .control-label {
  font-size: 16px;
  color: #575756;
  padding-top: 12px;
}
.credit_card_div .warn_border {
  border-color: #dc1c24;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075),
    0 0 8px rgba(220, 28, 36, 0.6);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075),
    0 0 8px rgba(220, 28, 36, 0.6);
}

.sp_paycontact_chk {
  padding: 10px 10px 10px 10px;
  font-size: 14px;
  color: #a2a2a2;
  border-top: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
}
.sp_pay_tips {
  font-size: 12px;
  color: #dc1c24;
  line-height: 30px;
  width: 100%;
  text-align: right;
  margin-bottom: 10px;
}
/* ATM FINISH */
.sp_nextstep_finish {
  display: inline-block;
  text-align: center;
  text-decoration: none;
  margin-top: 9px;
  margin-bottom: 9px;
  cursor: pointer;
  width: 100%;
  font-size: 16px;
  background: #2480d1;
  color: #ffffff;
  outline: none;
  text-transform: uppercase;
  overflow: hidden;
  border: none;
  line-height: 36px;
  -moz-transition: all 0.15s ease-in-out;
  -o-transition: all 0.15s ease-in-out;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
  border-radius: unset;
}
.sp_nextstep_finish:hover {
  color: #ffffff;
  text-decoration: none;
}
.cls_topdown_border {
  border-top: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
}
.sp_contact_div_finish {
  margin-top: 0px;
}
.sp_paysel_div_fin {
  display: table;
  width: 100%;
  border-bottom: 1px solid #cccccc;
}
.sp_paysel_left_fin {
  position: relative;
  float: left;
  font-size: 16px;
  color: #2480d1;
  width: 100%;
}
.sp_paysel_left_fin img {
  margin: 10px 10px 5px 10px;
  float: left;
}
.sp_paysel_left_fin span {
  padding-top: 15px;
  float: left;
}
.sp_bank_div {
  max-width: 300px;
  margin: 0 auto;
  margin-top: 30px;
  margin-bottom: 30px;
}
.sp_bank {
  font-size: 19px;
  color: #4d4d4d;
}
.sp_bank span {
  font-size: 19px;
  color: #dc1c24;
}
.sp_bank_atm {
  font-size: 13px;
  color: #4d4d4d;
}
.sp_bank_number {
  font-size: 26px;
  color: #4d4d4d;
}
/* card */
.sp_cardmsg_div {
  max-width: 320px;
  margin: 0 auto;
  margin-top: 30px;
  margin-bottom: 30px;
  font-size: 16px;
  color: #575756;
}
.sp_cardmsg_fail_div {
  max-width: 520px;
  margin: 0 auto;
  margin-top: 30px;
  margin-bottom: 30px;
  font-size: 16px;
  color: #575756;
}
.sp_fail_t {
  font-size: 21px;
  color: #dc1c24;
  line-height: 40px;
}
/*store*/
.sp_storemsg_div {
  margin: 0 auto;
  font-size: 16px;
  color: #575756;
  padding: 30px 20px 30px 20px;
}
.sp_storemsg_time {
  text-align: right;
  font-size: 14px;
}
.sp_storemsg_t {
  text-indent: 30px;
  font-size: 14px;
}
.barcode_center {
  margin: 0 auto;
}
.cls_storebtn_div {
  display: table;
  width: auto;
  margin: 0 auto;
  margin-bottom: 20px;
}
.cls_storemsg_save {
  text-align: center;
  cursor: pointer;
  width: 120px;
  font-size: 16px;
  background: #808080;
  color: #ffffff;
  outline: none;
  text-transform: uppercase;
  line-height: 36px;
  margin-bottom: 20px;
  float: left;
  margin: 0px 5px;
}
.cls_storemsg_print {
  text-align: center;
  cursor: pointer;
  width: 80px;
  font-size: 16px;
  background: #808080;
  color: #ffffff;
  outline: none;
  text-transform: uppercase;
  line-height: 36px;
  margin-bottom: 20px;
  float: left;
  margin: 0px 5px;
}
.sp_contact_div .qrcode_img {
  text-align: center;
  width: 100%;
  display: inline-block;
  margin: 0 auto;
}
.sp_contact_div .qrcode_img canvas {
  text-align: center;
  margin: 0 auto;
  display: table;
  padding: 10px;
  border: 1px solid #000000;
}
.sp_contact_div .qrcode_c {
  position: relative;
  font-size: 16px;
  color: #2480d1;
  width: 100%;
  display: table;
  margin: 0 auto;
  width: 300px;
}
.sp_contact_div .qrcode_c span {
  padding-top: 15px;
  float: left;
}
.sp_contact_div .qrcode_c img {
  margin: 10px 10px 5px 10px;
  float: left;
  width: 60px;
}
.sp_store_div .sp_pay_tips {
  line-height: 20px;
  margin-top: 5px;
}

/*new shop pay*/
.new_paysel_div {
  width: 100%;
  border-top: 1px solid #cccccc;
}

.new_paysel_title {
  display: table;
  width: 100%;
  border-bottom: 1px solid #cccccc;
}

.new_paysel_once_div,
.new_paysel_installment_div,
.new_paysel_atm_div {
  width: 100%;
}

.new_paysel_once_div_t,
.new_paysel_installment_div_t,
.new_paysel_atm_div_t {
  display: table;
  width: 100%;
  border-bottom: 1px solid #cccccc;
  padding: 0px 20px;
}

.new_paysel_title > img {
  text-align: left;
  width: 40px;
}

.new_paysel_title > .new_paysel_title_s {
  font-size: 16px;
  color: #2480d1;
  line-height: 60px;
  padding-left: 10px;
}

.new_paysel_left {
  position: relative;
  float: left;
  font-size: 21px;
  color: #2480d2;
  width: 70%;
}

.new_paysel_left img {
  margin: 0px 5px 0px 0px;
  width: 35px;
}

.new_paysel_left_s {
  font-size: 19px;
  color: #1d1e1c;
  line-height: 60px;
}

.new_paysel_span_red {
  color: #b0292d;
}

.new_paysel_right {
  position: relative;
  float: right;
  font-size: 16px;
  color: #575756;
  line-height: 40px;
  padding-right: 5px;
  vertical-align: middle;
  width: 30%;
  min-width: 180px;
}

.new_paysel_right_price {
  font-size: 19px;
  color: #b0292d;
  line-height: 60px;
}

.new_paysel_right .radio-inline {
  float: right;
  padding-left: 0px;
}

.new_paysel_right input {
  margin-top: 18px;
}

.radio_card_once,
.radio_card_a,
.radio_card_b,
.radio_card_atm {
  position: relative !important;
  margin-left: 0px !important;
  width: 20px;
  height: 20px;
}

.new_paysel_div_txt {
  width: 100%;
  border-bottom: 1px solid #cccccc;
  padding: 20px 20px;
  display: none;
}

.new_paysel_atm_div .new_paysel_div_txt {
  border-bottom: none;
}

.new_paysel_div_tip {
  font-size: 16px;
  color: #ffffff;
  background-color: #2f7dc1;
  line-height: 22px;
  text-indent: 10px;
  display: inline;
  padding: 2px 5px;
  position: relative;
  float: left;
  margin-bottom: 20px;
  width: 100%;
}

.new_paysel_div_tip img {
  width: 15px;
}

/*account*/
.sh_swal_title {
  font-size: 21px;
  color: #2480d1;
  text-align: center;
}
.sh_swal_content {
  font-size: 16px;
  color: #6f6f6e;
  text-align: center;
  margin-top: 10px;
}
.sw_name,
.sw_pid,
.sw_mobile,
.sw_mobileVaild,
.sw_email,
.sw_emailVaild {
  font-size: 18px;
  color: #d5d5d5;
  text-align: center;
  width: 300px;
  margin: 0 auto;
  margin-top: 10px;
  margin-bottom: 10px;
}
.sw_name input,
.sw_pid input,
.sw_mobile input,
.sw_mobileVaild input,
.sw_email input,
.sw_emailVaild input {
  text-align: center;
  font-size: 18px;
}
#sh_year_text {
  width: 90px;
  float: left;
  text-align: center;
}
.sw_bd {
  font-size: 18px;
  color: #d5d5d5;
  text-align: center;
  width: 315px;
  margin: 0 auto;
  margin-top: 10px;
  margin-bottom: 10px;
  display: inline-block;
}
.sw_bd span {
  float: left;
  color: #6f6f6e;
  line-height: 26px;
  padding: 5px 10px;
}
#sh_month_text,
#sh_day_text {
  width: 50px;
  float: left;
  text-align: center;
}
.timeline_div {
  width: 180px;
  margin: 0 auto;
  margin-top: 10px;
  text-align: center;
}
.timeline_div > div,
.timeline_div > span {
  position: relative;
  float: left;
  font-size: 12px;
  color: #dc1c24;
}
.regv_btn_div {
  width: 300px;
  margin: 0 auto;
  margin-top: 10px;
}

.regv_btn_a {
  position: relative;
  float: left;
  margin: 0 auto;
}

.regv_btn_b {
  clear: both;
  position: relative;
  margin: 0 auto;
  display: none;
}

.regv_reset {
  margin: 0 auto;
  margin: 0px 5px 5px 5px;
  cursor: pointer;
  width: 100px;
  font-size: 16px;
  background: #2480d1;
  color: #fff;
  outline: none;
  text-transform: uppercase;
  overflow: hidden;
  border: none;
  line-height: 36px;
  -moz-transition: all 0.15s ease-in-out;
  -o-transition: all 0.15s ease-in-out;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
  border-radius: unset;
}
.loadergif_shoplist {
  background-image: url(../image/Ball.gif);
  background-size: 50px 50px;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  min-height: 100px;
  position: relative;
}
.loadergif_coupon {
  background-image: url(../image/Ball.gif);
  background-size: 50px 50px;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  min-height: 100px;
  position: relative;
}
