/*****************************************
*                 import                 *
*****************************************/

@import url(https://fonts.googleapis.com/earlyaccess/notosanstc.css);
@import url("https://font.emtech.cc/css/LINESeedTW");

/*****************************************
*                  body                  *
*****************************************/

/** {outline: 0;}*/

.mt-1px{margin-top:1px}.mb-1px{margin-bottom:1px}.mt-2px{margin-top:2px}.mb-2px{margin-bottom:2px}.mt-3px{margin-top:3px}.mb-3px{margin-bottom:3px}.mt-4px{margin-top:4px}.mb-4px{margin-bottom:4px}.mt-5px{margin-top:5px}.mb-5px{margin-bottom:5px}.mt-6px{margin-top:6px}.mb-6px{margin-bottom:6px}.mt-7px{margin-top:7px}.mb-7px{margin-bottom:7px}.mt-8px{margin-top:8px}.mb-8px{margin-bottom:8px}.mt-9px{margin-top:9px}.mb-9px{margin-bottom:9px}.mt-10px{margin-top:10px}.mb-10px{margin-bottom:10px}.mt-11px{margin-top:11px}.mb-11px{margin-bottom:11px}.mt-12px{margin-top:12px}.mb-12px{margin-bottom:12px}.mt-13px{margin-top:13px}.mb-13px{margin-bottom:13px}.mt-14px{margin-top:14px}.mb-14px{margin-bottom:14px}.mt-15px{margin-top:15px}.mb-15px{margin-bottom:15px}.mt-16px{margin-top:16px}.mb-16px{margin-bottom:16px}.mt-17px{margin-top:17px}.mb-17px{margin-bottom:17px}.mt-18px{margin-top:18px}.mb-18px{margin-bottom:18px}.mt-19px{margin-top:19px}.mb-19px{margin-bottom:19px}.mt-20px{margin-top:20px}.mb-20px{margin-bottom:20px}.mt-21px{margin-top:21px}.mb-21px{margin-bottom:21px}.mt-22px{margin-top:22px}.mb-22px{margin-bottom:22px}.mt-23px{margin-top:23px}.mb-23px{margin-bottom:23px}.mt-24px{margin-top:24px}.mb-24px{margin-bottom:24px}.mt-25px{margin-top:25px}.mb-25px{margin-bottom:25px}.mt-26px{margin-top:26px}.mb-26px{margin-bottom:26px}.mt-27px{margin-top:27px}.mb-27px{margin-bottom:27px}.mt-28px{margin-top:28px}.mb-28px{margin-bottom:28px}.mt-29px{margin-top:29px}.mb-29px{margin-bottom:29px}.mt-30px{margin-top:30px}.mb-30px{margin-bottom:30px}.mt-31px{margin-top:31px}.mb-31px{margin-bottom:31px}.mt-32px{margin-top:32px}.mb-32px{margin-bottom:32px}.mt-33px{margin-top:33px}.mb-33px{margin-bottom:33px}.mt-34px{margin-top:34px}.mb-34px{margin-bottom:34px}.mt-35px{margin-top:35px}.mb-35px{margin-bottom:35px}.mt-36px{margin-top:36px}.mb-36px{margin-bottom:36px}.mt-37px{margin-top:37px}.mb-37px{margin-bottom:37px}.mt-38px{margin-top:38px}.mb-38px{margin-bottom:38px}.mt-39px{margin-top:39px}.mb-39px{margin-bottom:39px}.mt-40px{margin-top:40px}.mb-40px{margin-bottom:40px}.mt-41px{margin-top:41px}.mb-41px{margin-bottom:41px}.mt-42px{margin-top:42px}.mb-42px{margin-bottom:42px}.mt-43px{margin-top:43px}.mb-43px{margin-bottom:43px}.mt-44px{margin-top:44px}.mb-44px{margin-bottom:44px}.mt-45px{margin-top:45px}.mb-45px{margin-bottom:45px}.mt-46px{margin-top:46px}.mb-46px{margin-bottom:46px}.mt-47px{margin-top:47px}.mb-47px{margin-bottom:47px}.mt-48px{margin-top:48px}.mb-48px{margin-bottom:48px}.mt-49px{margin-top:49px}.mb-49px{margin-bottom:49px}.mt-50px{margin-top:50px}.mb-50px{margin-bottom:50px}.mt-51px{margin-top:51px}.mb-51px{margin-bottom:51px}.mt-52px{margin-top:52px}.mb-52px{margin-bottom:52px}.mt-53px{margin-top:53px}.mb-53px{margin-bottom:53px}.mt-54px{margin-top:54px}.mb-54px{margin-bottom:54px}.mt-55px{margin-top:55px}.mb-55px{margin-bottom:55px}.mt-56px{margin-top:56px}.mb-56px{margin-bottom:56px}.mt-57px{margin-top:57px}.mb-57px{margin-bottom:57px}.mt-58px{margin-top:58px}.mb-58px{margin-bottom:58px}.mt-59px{margin-top:59px}.mb-59px{margin-bottom:59px}.mt-60px{margin-top:60px}.mb-60px{margin-bottom:60px}.mt-61px{margin-top:61px}.mb-61px{margin-bottom:61px}.mt-62px{margin-top:62px}.mb-62px{margin-bottom:62px}.mt-63px{margin-top:63px}.mb-63px{margin-bottom:63px}.mt-64px{margin-top:64px}.mb-64px{margin-bottom:64px}.mt-65px{margin-top:65px}.mb-65px{margin-bottom:65px}.mt-66px{margin-top:66px}.mb-66px{margin-bottom:66px}.mt-67px{margin-top:67px}.mb-67px{margin-bottom:67px}.mt-68px{margin-top:68px}.mb-68px{margin-bottom:68px}.mt-69px{margin-top:69px}.mb-69px{margin-bottom:69px}.mt-70px{margin-top:70px}.mb-70px{margin-bottom:70px}.mt-71px{margin-top:71px}.mb-71px{margin-bottom:71px}.mt-72px{margin-top:72px}.mb-72px{margin-bottom:72px}.mt-73px{margin-top:73px}.mb-73px{margin-bottom:73px}.mt-74px{margin-top:74px}.mb-74px{margin-bottom:74px}.mt-75px{margin-top:75px}.mb-75px{margin-bottom:75px}.mt-76px{margin-top:76px}.mb-76px{margin-bottom:76px}.mt-77px{margin-top:77px}.mb-77px{margin-bottom:77px}.mt-78px{margin-top:78px}.mb-78px{margin-bottom:78px}.mt-79px{margin-top:79px}.mb-79px{margin-bottom:79px}.mt-80px{margin-top:80px}.mb-80px{margin-bottom:80px}.mt-81px{margin-top:81px}.mb-81px{margin-bottom:81px}.mt-82px{margin-top:82px}.mb-82px{margin-bottom:82px}.mt-83px{margin-top:83px}.mb-83px{margin-bottom:83px}.mt-84px{margin-top:84px}.mb-84px{margin-bottom:84px}.mt-85px{margin-top:85px}.mb-85px{margin-bottom:85px}.mt-86px{margin-top:86px}.mb-86px{margin-bottom:86px}.mt-87px{margin-top:87px}.mb-87px{margin-bottom:87px}.mt-88px{margin-top:88px}.mb-88px{margin-bottom:88px}.mt-89px{margin-top:89px}.mb-89px{margin-bottom:89px}.mt-90px{margin-top:90px}.mb-90px{margin-bottom:90px}.mt-91px{margin-top:91px}.mb-91px{margin-bottom:91px}.mt-92px{margin-top:92px}.mb-92px{margin-bottom:92px}.mt-93px{margin-top:93px}.mb-93px{margin-bottom:93px}.mt-94px{margin-top:94px}.mb-94px{margin-bottom:94px}.mt-95px{margin-top:95px}.mb-95px{margin-bottom:95px}.mt-96px{margin-top:96px}.mb-96px{margin-bottom:96px}.mt-97px{margin-top:97px}.mb-97px{margin-bottom:97px}.mt-98px{margin-top:98px}.mb-98px{margin-bottom:98px}.mt-99px{margin-top:99px}.mb-99px{margin-bottom:99px}.mt-100px{margin-top:100px}.mb-100px{margin-bottom:100px}.brand-color{color:#aa1322}.gray-color{color:#bebebe}.scan-color{color:#5b5b5b}.product-text-color{color:#000}


* {
  word-break: break-all;
}

html {
  /*	padding-top: 88px;*/
  padding-bottom: 63px;
  overflow-y: scroll;
}

body {
  color: #000000;
  font-size: 16px;
  font-family:  "LINESeedTW","sourcehansans-tc", "Noto Sans S Chinese", "Noto Sans TC",
    "PingFang TC", "Microsoft JhengHei", Tahoma, Verdana, Arial, Helvetica,
    sans-serif;
  text-shadow: rgba(0, 0, 0, 0.1) 0 0 0.1;
  background-color: #f7f7f6;
  /*	background-color: #e5e5e5;*/
}
.font-LINESeedTW {
    font-family: "LINESeedTW", sans-serif;
}
a {
  color: #000000;
  text-decoration: none;
  cursor: pointer;
}

a:hover,
a:focus {
  color: #000000;
  text-decoration: none;
  cursor: pointer;
}

p {
  margin-bottom: 0;
}

address {
  margin-bottom: 0;
  line-height: inherit;
}

#wrap {
  position: relative;
  width: 100%;
  z-index: 1;
}

#wrap2 {
  position: relative;
  width: 100%;
}

h1,
h2,
h3,
h4 {
  margin-top: 0;
  margin-bottom: 0;
}

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

label {
  font-weight: normal;
  cursor: pointer;
}

.input-text,
select {
  -webkit-appearance: none;
  appearance: none;
  border: 0;
  box-shadow: none;
  background: none;
  background-image: none;
  outline: 0;
}


.btn:active {
  box-shadow: none;
}

/*****************************************
*                 header                 *
*****************************************/

#header {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 88px;
  color: #000000;
  border-bottom: #e6e6e6 1px solid;
  background: #ffffff;
  z-index: 2;
}

#header:after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 100%;
  height: 10px;

  opacity: 0;

  background: rgb(0, 0, 0);
    0deg,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.25) 100%
  );
  background: -webkit-linear-gradient(
    0deg,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.25) 100%
  );
  background: linear-gradient(
    0deg,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.25) 100%
  );
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000", endColorstr="#000000", GradientType=1);

  transition: 0.35s ease-in-out;
}

#header.shadow:after {
  opacity: 1;
}

.navbar-collapse {
  display: none;
  border: none;
  box-shadow: none;
}

.navbar-default .navbar-brand {
  color: #000000;
}

.navbar-brand {
  display: block;
  height: auto;
  padding: 0;
  margin: 30px 0 0 20px;
}

.navbar-brand img {
  width: 162px;
}

.navbar > .container .navbar-brand,
.navbar > .container-fluid .navbar-brand {
  /*	margin-left: 15px;*/
}

.menu-toggle {
  position: relative;
  float: right;
  }

.navbar {
  min-height: 0;
  margin-bottom: 0;
}

.navbar-default {
  border: none;
  background: none;
}

.navbar-default .navbar-nav > li > a {
  position: relative;
  color: #000000;
}

.navbar-default .navbar-nav > li > a:focus,
.navbar-default .navbar-nav > li > a:hover {
  color: #000000;
}

/*****************************************
*                  main                  *
*****************************************/

#main {
  position: relative;
  z-index: 1;
}

#member #main {
  padding-bottom: 75px;
}

#main .box {
  position: relative;
}

#main .box-header {
  position: relative;
}

#main .box-main {
  position: relative;
}

#main section {
  padding-top: 100px;
  padding-bottom: 100px;
}

#main.page-edit-profile #profile-information {
  padding-bottom: 0;
}

#main section .back {
  position: absolute;
  top: 18px;
  left: 18px;
  height: 46px;
  color: #4f4f4f;
  font-size: 14px;
  line-height: 46px;
  padding-left: 58px;
}

#main section .back::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 46px;
  height: 46px;
  background: url(../images/common/back.svg) left center no-repeat;
  background-size: auto 46px;
}

#member #main section {
  display: none;
}

#member .tabs-header ul {
  font-size: 0;
  text-align: center;
}

#member .tabs-header li {
  display: inline-block;
  width: 33%;
  padding: 0 5px;
}

#member .tabs-header a {
  display: block;
  height: 50px;
  color: #ffffff;
  font-size: 20px;
  font-weight: 300;
  letter-spacing: 0.25em;
  text-indent: 0.25em;
  line-height: 50px;
  border-radius: 10px;
  background: #cdcdcd;
}

#member .tabs-header .current a {
  color: #6e6e6e;
  font-weight: 400;
  background: #ffffff;
}

#member .tabs-content {
  display: none;
  padding-top: 35px;
}

#member #main #account-settings {
  display: block;
}

#member #main #account-settings .already {
  display: none;
  color: #f00000;
  font-size: 15px;
  text-align: center;
  margin: 20px 0;
}

#member #main #account-settings .already a {
  position: relative;
  color: #f00000;
  margin-left: 30px;
}

#member #main #account-settings .already a:before {
  content: "";
  position: absolute;
  top: -4px;
  left: -28px;
  width: 22px;
  height: 26px;
  background: url(../images/member/icon-password-forgot.svg) 0 0 no-repeat;
  background-size: contain;
}

#main section h2 {
  color: #000000;
  font-size: 30px;
  text-align: center;
  text-indent: 0em;
  font-weight: bold;
  letter-spacing: 0em;
  margin-bottom: 35px;
}

#main #contact-information h2 {
  text-indent: 0.3em;
  letter-spacing: 0.3em;
}

#member .page-points .part-serial {
  margin-bottom: 0;
/*   padding-left: 45px; */
}

#main #points-input .notice {
  color: #747474;
  font-size: 14px;
  line-height: 22px;
  text-align: justify;
  padding: 0 15px;
}

#main #points-input .notice a {
  color: #747474;
  text-decoration: underline;
}

#main section .panel > * {
  position: relative;
  z-index: 1;
}

#main section .panel > h2 {
  /* margin-top: 78px; */
  margin-top: 60px;
  /* margin-bottom: 20px; */
  margin-bottom: 13px;
  text-indent: 0.1em;
  letter-spacing: 0.1em;
}

#main section .panel .points {
  color: #f00000;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
}

#main #member-home .panel .points,
#main #receipt-home .panel .points {
  font-size: 14px;
  /* top: 142px; */
}

#main #member-home.main .panel .points {
  top: 142px;
}

#main #member-home .panel .points-title:before,
#main #receipt-home .panel .points-title:before {
  width: 18px;
  height: 18px;
  margin-top: -4px;
  margin-right: 6px;
  margin-bottom: 0;
  vertical-align: middle;
}

#main section .panel .points-title {
  text-indent: 0.05em;
  letter-spacing: 0.05em;
  line-height: 26px;
  vertical-align: top;
}

#main section .panel .points-title:before {
  content: "";
  position: relative;
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-right: 6px;
  margin-bottom: 3px;
  vertical-align: middle;
    background: url(../images/points/icon-points.svg) 0 0 no-repeat;
  background-size: contain;
}

#main section .panel .points-value {
  font-size: 28px;
  font-weight: 600;
  line-height: 34px;
}

#main.page-member section#user-login h2,
#main.page-member section#user-login-home h2,
#main.page-edit-profile #profile-information h2 {
  letter-spacing: 0.3em;
  text-indent: 0.3em;
}

#main.page-member section .text {
  letter-spacing: 0.15em;
}

#main section h2 span {
  display: block;
  font-size: 20px;
  letter-spacing: 0.75em;
  text-indent: 0.75em;
  margin-top: 0.5em;
}

#member .steps {
  position: absolute;
  top: 30px;
  left: 0;
  width: 100%;
  text-align: center;
}

#member .steps ul {
  font-size: 0;
}

#member .steps li {
  display: inline-block;
  margin: 0 5px;
}

#member .steps li {
  width: 50px;
  height: 1px;
  background: #b7b7b7;
  vertical-align: middle;
}

#member .steps li.point {
  position: relative;
  width: 35px;
  height: 35px;
  background: none;
}

#member .steps li.point:before {
  position: absolute;
  top: 50%;
  left: 50%;
  content: "";
  width: 9px;
  height: 9px;
  margin: -4.5px 0 0 -4.5px;
  border-radius: 50%;
  background: #b7b7b7;
}

#member .steps li.point.current:before {
  background: #f00000;
}

#member .steps li.point:after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  border: #f00000 2px solid;
  border-radius: 50%;
  opacity: 0;
  transform: scale(0);
  transition: 0.15s ease-out;
}

#member .steps li.point.current:after {
  opacity: 1;
  transform: scale(1);
}

#member .form {
  font-size: 20px;
  letter-spacing: 0.5em;
}

#member .page-points .form {
  letter-spacing: 0.05em;
}

#member .part {
  position: relative;
  margin-bottom: 30px;
  /*	overflow: hidden;*/
}
#member .part.part-confirm{
  margin-bottom: 30px;
}
#member .part.part-checklist{
  margin-top: 30px;
  margin-bottom: 30px;
}

#member .part.disable {
  opacity: 0.3;
  pointer-events: none;
}

#member .form .part-act {
  font-size: 0;
  letter-spacing: 0;
  text-align: center;
  margin-top: 0;
  margin-bottom: 0;
  padding: 0;
  background: none;
}

#member #user-login-home .form .part-act {
  margin-top: 15px;
}

#user-login .form .part-act {
  font-size: inherit;
}

#user-login .form .part-act .link {
  position: relative;
  display: inline-block;
  color: #878787;
  font-weight: 300;
  letter-spacing: 0.5em;
  margin-top: 5px;
  padding-left: 35px;
}

#user-login .form .part-act .link::before {
  position: absolute;
  top: 2px;
  left: 0;
  content: "";
  width: 23px;
  height: 26px;
  background: url(../images/member/icon-forgot-password.svg) center center
    no-repeat;
  background-size: contain;
}

#user-login .form .part-act .btn {
  display: block;
  margin-top: 50px;
  margin-right: auto;
  margin-left: auto;
}

#user-login .form .part-act span {
  display: inline-block;
  color: #878787;
  font-weight: 300;
  letter-spacing: 0.5em;
  margin-top: 5px;
}

#member .field {
  position: relative;
  min-height: 50px;
/*   border: #c5c5c4 1px solid; */
  border-radius: 7px;
}

#member .page-points .field {
  min-height: 45px;
}

#member .page-points .part-serial {
  width: 400px;
  margin: 0 auto;
}

#member .page-points .part-serial .field {
  display: inline-block;
  width: 400px;
  margin: 7.5px 0;
  overflow: visible;
}

#member .page-points .field-input-text input {
  text-align: center;
  letter-spacing: 0.25em;
  padding: 0 30px;
}

#member .page-points .part-serial .field-input-text input {
  text-transform: uppercase;
}

#member .page-points .form .warning li {
  /* padding-left: 80px; */
}

#member .page-member .field {
  margin-right: 35px;
  margin-left: 35px;
}

#member .page-edit-profile .field {
  margin-right: 0;
  margin-left: 0;
}

#member .page-edit-profile #field-birth-month,
#member .page-edit-profile #field-birth-day {
  margin-bottom: 0;
}

#member .field-input-radio {
  border-width: 0;
}

#member .field-input-text {
  position: relative;
  border: 0;
  overflow: hidden;
}

#member .field-input-text input {
  position: relative;
  width: 100%;
  height: 100%;
  font-size: 20px;
  letter-spacing: 0.5em;
  padding: 0 65px 0 65px;
  border: #c5c5c4 1px solid;
  border-radius: 7px;
  background: #f7f7f6;
}

#member .field-input-text input:focus {
  outline: 0;
  background: #ffffff;
  box-shadow: rgba(170, 19, 34, 1) inset 0 0 0 1px;
  border: #f00000 1px solid;
}

#member #field-phone .input-text {
  padding-bottom: 20px;
}

#member .page-member #field-phone .input-text {
  padding-bottom: 0;
}

#member .icon-field {
  top: 0;
  left: 5px;
  width: 60px;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  pointer-events: none;
}

#member #field-phone .icon-field {
  background-image: url(../images/member/icon-phone.svg);
  background-size: 19px auto;
}

#member #field-email .icon-field {
  background-image: url(../images/member/icon-mail.svg);
  background-size: 31px auto;
}

#member #field-password .icon-field {
  background-image: url(../images/member/icon-password.svg);
  background-size: 20px auto;
}

#member #field-confirm .icon-field {
  background-image: url(../images/member/icon-password-confirm.svg);
  background-size: 36px auto;
}

#member #field-name .icon-field {
  background-image: url(../images/member/icon-name.svg);
  background-size: 24px auto;
}

#member #field-male .icon-field {
  /*	background-image: url(../images/member/icon-male.svg);
	background-position: center 0;
	background-size: 26px auto;*/
}

#member #field-male .input-radio:checked + .icon-field {
  /*	display: none;*/
}

#member .part-address .icon-field {
  top: -12px;
  height: 50px;
  background-image: url(../images/member/icon-address.svg);
  background-size: 33px auto;
}

#member .part-birthday .icon-field {
  top: -12px;
  height: 50px;
  background-image: url(../images/member/icon-birthday.svg);
  background-size: 42px auto;
}

#member #field-password .input-text,
#member #field-confirm .input-text {
  padding-right: 100px;
}

#member #field-password .btn,
#member #field-confirm .btn {
  position: absolute;
  top: 0;
  right: 0;
  width: 100px;
  height: 100%;
  font-size: 0;
  text-indent: -5000px;
  border-radius: 0;
  background: url(../images/member/icon-password-toggle.svg) transparent center
    0 no-repeat;
}

#member #field-password.field-password-show .btn,
#member #field-confirm.field-password-show .btn {
  background-position: center -85px;
}

#member .field .note {
  /*	top: 33px;
	left: 190px;*/
  top: 46px;
  left: 67px;
  color: #f00000;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.4em;
  pointer-events: none;
}

#member .page-member .field .note {
  top: 34px;
  left: 130px;
  color: #878787;
}

#member #field-phone.field-has-value .note,
#member #field-password.field-has-value .note {
  display: none;
}

#member #field-phone.field-has-value .input-text {
  padding-bottom: 0;
}

#field-phone {
  /*	margin-bottom: 40px;*/
}

#field-phone .icon-complete {
  /*	display: none;*/
  top: 0;
  right: 0;
  width: 65px;
  height: 100%;
  background: url(../images/member/icon-phone-verified.svg) center center
    no-repeat;
  opacity: 0;
  transform: scale(0);
}

.part-verify {
  /* display: none; */
}

.verified #field-phone .icon-complete {
  /*	display: block;*/
  opacity: 1;
  transform: scale(1);
}

#btn-sms-verify,
#btn-sms-verify-done {
  margin-top: 40px;
  margin-bottom: 40px;
}

#member #btn-sms-verify-done {
  display: none;
}

#member .verified #btn-sms-verify {
  display: none;
}

#member .verified #btn-sms-verify-done {
  display: block;
  pointer-events: none;
}

#field-sms-verify {
  text-align: center;
  padding-top: 80px;
  padding-bottom: 38px;
}

#field-sms-verify .text {
  position: relative;
  color: #f00000;
  font-size: 22px;
  display: inline-block;
  /*	text-align: center;*/
}

#field-sms-verify .text.error:after {
  content: "";
  position: absolute;
  top: -55px;
  left: 50%;
  width: 35px;
  height: 35px;
  margin-left: -17.5px;
  background: url(../images/member/icon-error.svg) center no-repeat;
  background-size: contain;
}

#field-sms-verify .code {
  font-size: 0;
  letter-spacing: 0;
  margin-top: 30px;
  padding: 0 20px;
  /*	text-align: center;*/
}

#field-sms-verify .code input {
  /* width: 12%;
	max-width: 52px; */
  width: 100%;
  max-width: 324px;
  letter-spacing: 0.25em;
  height: 66px;
  font-size: 24px;
  text-align: center;
  /*	margin: 0 6px;*/
  margin: 0 1%;
  border: #c5c5c4 1px solid;
  border-radius: 10px;
  background: #ffffff;
}

#field-sms-verify .code input:focus {
  box-shadow: rgba(170, 19, 34, 1) inset 0 0 0 1px;
  border: #f00000 1px solid;
  outline: 0;
}

#field-sms-verify .resend {
  display: inline-block;
  color: #6d6d6d;
  font-size: 20px;
  margin: 25px 0 40px;
  padding-left: 45px;
  background: url(../images/member/icon-count.svg) left center no-repeat;
  background-size: 25px 25px;
}

#field-sms-verify .resend.disable {
  pointer-events: none;
}

#field-sms-verify .counter {
  position: relative;
  top: -1px;
  color: #a5a5a5;
  font-size: 16px;
  /*	text-indent: 0.2em;*/
  letter-spacing: 0.2em;
  padding: 3px 6px 3px 8px;
  margin-left: 10px;
  border: #a5a5a5 1px solid;
  border-radius: 12px;
}

.field-gender {
  /*	display: inline-block;*/
  width: 48%;
  /*	overflow: hidden;*/
}

.field-gender .input-radio {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

.field-gender .radio-label {
  position: absolute;
  width: 100%;
  text-align: center;
  text-indent: 1em;
  line-height: 83px;
  margin: 0;
  border-radius: 45px;
  border: #c5c5c4 1px solid;
  /*	box-shadow: #c5c5c4 inset 0 0 0 1px;*/
  background-repeat: no-repeat;
  transition: background-color 0.15s ease-out;
}

.field-gender .input-radio:checked + .radio-label {
  color: #ffffff;
  box-shadow: none;
  border-color: #f00000;
  background-color: #f00000;
}

#field-female .input-radio + .radio-label {
  background-image: url(../images/member/icon-female.svg);
  background-position: 25px 0;
}

#field-female .input-radio:checked + .radio-label {
  background-position: 25px -85px;
}

#field-male .input-radio + .radio-label {
  background-image: url(../images/member/icon-male.svg);
  background-position: 25px 0;
}

#field-male .input-radio:checked + .radio-label {
  background-position: 25px -85px;
}

#field-female {
  float: left;
}

.text-label {
  padding-left: 80px;
  margin-bottom: 25px;
}

/* .page-edit-profile .text-label {
  padding-left: 15px;
  margin-bottom: 20px;
} */

#field-male {
  float: right;
}

#btn-verify-send {
  position: relative;
  margin-top: -38px;
}

/* #member .field-select {
  position: relative;
  display: inline-block;
  height: 85px;
  margin-bottom: 25px;
  border: 0;
  overflow: visible;
} */

/* #field-birth-year {
  display: block;
  width: 260px;
}

#field-birth-month {
  float: left;
  width: 48%;
}

#field-birth-day {
  float: right;
  width: 48%;
} */

.field-select select {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0 0 0 50px;
  letter-spacing: 0.5em;
  border: #bababa 1px solid;
  border-radius: 7px;
  background: none;
  cursor: pointer;
}

.field-select select:focus {
  box-shadow: rgba(170, 19, 34, 1) inset 0 0 0 1px;
  border: #f00000 1px solid;
  outline: 0;
  background: #ffffff;
}

#field-address-city select,
#field-address-area select {
  padding-left: 30px;
}

#member #field-address .input-text {
  padding: 0 30px;
}

.field-select::after {
  content: "\25BC";
  position: absolute;
  top: 26px;
  right: 25px;
  bottom: 0;
  width: 30px;
  height: 30px;
  padding: 0 0;
  color: #ffffff;
  font-size: 14px;
  line-height: 30px;
  text-align: center;
  letter-spacing: 0;
  pointer-events: none;
  border-radius: 50%;
  background: #f00000;
   
 
}

#personal-information .form .part:nth-child(3) {
  margin-bottom: 0;
}

#field-address-city {
  float: left;
  width: 48%;
}

#field-address-area {
  float: right;
  width: 48%;
}

#member .field.error .input-text {
/*   padding-left: 90px; */
}

#member .field.error .note {
  left: 92px;
}

#member .error .icon-field {
  left: 35px;
}

#member .part-gender.error {
  padding-top: 40px;
}

#member .part-birthday.error .icon-field,
#member .part-address.error .icon-field {
  left: 45px;
}

#member .field.error:after {
  top: 0;
  height: 100%;
}

#member .error .text-label {
  padding-left: 110px;
}

.list-input-checkbox {
  position: relative;
  font-size: 18px;
  letter-spacing: 0.35em;
  margin-bottom: 1em;
}

.list-input-checkbox .checkbox-label {
  position: relative;
  /*	position: absolute;*/
  width: 100%;
  color: #636363;
  /*	text-align: center;*/
  padding-left: 60px;
  line-height: 35px;
  margin: 0;
}

.list-input-checkbox .checkbox-label:after {
  position: absolute;
  content: "";
  top: 0px;
  left: 15px;
  width: 30px;
  height: 27px;
  background: url(../images/member/icon-agreement_original.svg) 0 0 no-repeat;
  background-size: 30px auto;
}

.list-input-checkbox .checkbox-label a {
  color: #636363;
  border-bottom: #b8b8b8 1px solid;
  padding-bottom: 8px;
}

.list-input-checkbox .input-checkbox {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

.list-input-checkbox .input-checkbox:checked + .checkbox-label:after {
  background-image: url(../images/member/icon-agreement-checked.svg);
}

#main > .container #brands-preference {
  width: 100%;
}

#main #brands-preference h2,
#main #user-login-home h2,
#main #forgot-password h2 {
  margin-bottom: 0.25em;
}

#social-network-binding .note {
  color: #6e6e6e;
  font-size: 14px;
  padding-left: 15px;
  margin-top: -16px;
  margin-bottom: 20px;
}

/*#brands-preference */
#main section .text,
#main #brands-preference .text {
  font-size: 20px;
  text-align: center;
  letter-spacing: 0.3em;
  line-height: 1.25em;
}

#main #forgot-password .text {
  margin-bottom: 30px;
}

#main #forgot-password .part-act {
  padding-top: 10px;
}

#brands-preference .part,
#contact-preference .part,
#profile-information .part {
  margin-top: 30px;
  padding: 45px 10px 25px;
/*   border: #fbfbfb 1px solid; */
  border-radius: 10px;
/*   background: #efefef; */
}

#member #main .part-signup-info {
  text-align: center;
  line-height: 1.6;
  margin-bottom: 40px;
}

#main .part-signup-info .icon-field {
  position: static;
  display: block;
  width: 65px;
  height: 65px;
  margin: 0 auto;
  background-image: url(../images/member/icon-phone.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 26px auto;
}

#main .signup-info__phone::after {
  content: "手機號碼驗證完成";
  display: block;
  color: #636363;
}

#profile #profile-information .part .info .row-tags {
  position: relative;
  top: -1px;
  padding: 0;
  border-top: #efefef 1px solid;
  border-bottom: #efefef 1px solid;
}

#profile-information .tags-preference {
  font-size: 0;
  text-align: left;
  letter-spacing: 0;
}

#profile-information .tags-preference li {
  display: inline-block;
  width: 44%;
  font-size: 14px;
  text-align: center;
  line-height: 30px;
  letter-spacing: 2px;
  padding-left: 15px;
  box-sizing: border-box;
  border-radius: 6px;
  margin: 0.75% 3%;
  background: url(../images/common/icon-heart.svg) #e5e5e5 8px 50% no-repeat;
  /* e5e5e5 */
  background-size: 12px 10px;
}

#main #line-binding {
  padding: 50px 0;
}

.page-line-binding #line-binding h2 {
  letter-spacing: 0.35em;
}

.page-line-binding #line-binding .part-phone .text,
.page-line-binding #line-binding .part-binding-success .text {
  margin-bottom: 30px;
  /* margin-bottom: 0; */
}

.page-line-binding #line-binding .part-phone .btn {
  margin-top: 45px;
}

.page-edit-profile #profile-information .part {
  border: 0;
  padding: 0 0 30px 0;
  margin-bottom: 0;
  background: none;
}

#member .page-edit-profile #profile-information .part-avatar {
  margin-top: 0;
  /* padding-top: 25px; */
  padding-top: 0;
}

#member .page-edit-profile #profile-information .part-act {
  padding-top: 50px;
}

#profile-information .part {
  padding-right: 20px;
  padding-bottom: 45px;
  padding-left: 20px;
}

#contact-preference .part {
  padding-right: 30px;
  padding-left: 20px;
}

#contact-preference .part .list-input-checkbox .checkbox-label {
  color: #272323;
}


#profile-information .part .avatar .image img {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 2;
  object-fit: cover;
}

/* .page-edit-profile #profile-information .part .avatar .image:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../images/member/icon-upload-avatar.svg) rgba(0, 0, 0, 0.2)
    center center no-repeat;
  background-size: 30% auto;
  z-index: 1;
} */

#profile-information .part .avatar .input-file {
  width: 0;
  height: 0;
  opacity: 0;
  overflow: hidden;
}

#profile-information .part .avatar .upload {
  display: inline-block;
  color: #000;
  font-size: 20px;
  margin: 10px 0;
}

#profile-information .part .info {
  color: #272323;
  font-size: 20px;
  letter-spacing: 0.3em;
}

#profile-information .part .info .row {
  text-align: center;
  margin: 0;
  padding: 30px 20px;
  border-bottom: #c5c5c4 1px solid;
}

#profile-information .part .info .row:last-child {
  border-bottom: 0;
}

#profile-information .part .info .row:nth-child(3) {
  padding-right: 0;
  padding-left: 0;
}

#profile-information .part .info .gender,
#profile-information .part .info .age {
  padding: 0;
}

#profile-information .part .info .gender {
  border-right: #c5c5c4 1px solid;
}

#profile-information .part .actions {
  font-size: 0;
  text-align: center;
  margin-top: 60px;
}

#profile-information .part .actions .btn {
  display: inline-block;
  width: 40%;
  max-width: none;
  padding-top: 0;
  padding-bottom: 0;
  letter-spacing: 0.1em;

  line-height: 50px;
  text-indent: 0em;
  margin: 0 5px;
  background-repeat: no-repeat;
}

#profile-information .part .actions .btn::before {
/*   position: relative;
  display: inline-block;
  content: "";
  vertical-align: middle;
  margin-right: 5px;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: contain; */
}

#profile-information .part .actions .btn-edit::before {
  top: -2px;
  width: 20px;
  height: 20px;
/*   background-image: url(../images/member/icon-edit.svg); */
}

#profile-information .part .actions .btn-reset-password::before {
  top: -3px;
  width: 31px;
  height: 28px;
/*   background-image: url(../images/member/icon-reset-password.svg); */
  /* text-indent: 1.6em;
	background-position: 1em center;
	background-size: auto 26px; */
}

#member .btn {
  display: block;
  width: 100%;
  max-width: 335px;
  color: #ffffff;
  font-size: 18px;
  font-weight: bold;
  margin-right: auto;
  margin-left: auto;
  border-radius:7px;
  text-indent: 0;
  background: #f00000;
  outline: 0;
  overflow: hidden;
  transition: all 0.3s ease-in-out;
}
#member .btn:hover,#member .form .btn:focus{
  background: #fff;
  color: #f00000;
  border: 1px solid #f00000;
}



#member .form .list-check {
  font-size: 16px;
  margin-top: 15px;
  padding-left: 0;
}

#member .page-member .form .list-check,
#member .page-member .form .warning {
  margin-right: 35px;
  margin-left: 35px;
}

#member .form .list-check li {
  line-height: 40px;
  padding-left: 60px;
  color: #c9c9c9;
  background: url(../images/member/icon-match-check.svg) 20px center no-repeat;
}

#member .form .list-check li.checked {
  color: #67A95E;
  background-image: url(../images/member/icon-match-checked-g.svg);
}

#member .form .warning {
  color: #f00000;
}

#member .form .warning ul {
  padding-left: 0;
}

#member .form .warning li {
  display: none;
/*   padding: 10px 0 ; */
  
}

#member #user-login .form .warning li {
  background: url(../images/member/icon-warning.svg) 0px center no-repeat;
  background-size: 25px;
  padding-left: 30px;
}

#main.page-member section {
  /* padding-top: 50px; */
}

/* #main.page-profile section#profile, */
#main.page-edit-profile section#profile {
  position: relative;
  padding-top: 15px;
}

#main .part-login-methods {
  margin-top: 45px;
  margin-bottom: 65px;
}

.part-login-methods li,
.part-social-connect li {
  margin-bottom: 25px;
}

.part-login-methods a {
  width: 380px;
}

.part-social-connect a {
  width: 420px;
}

.btn-connect {
  display: block;
  height: 85px;
  font-size: 0;
  line-height: 83px;
  letter-spacing: 0;
  margin: 0 auto;
  border: #898989 1px solid;
  background: #f7f7f6;
  border-radius: 5px;
}
#main.page-profile .container,
#main.page-edit-profile .container{margin-top: 0;}
.page-profile .actions .btn-connect {
  display: inline-block;
  max-width: none;
  padding-top: 0;
  padding-bottom: 0;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
  margin: 0 5px;

  border: transparent 1px solid;
  background-repeat: no-repeat;

  width: 60%;
  height: 50px;
  font-size: 16px;
  line-height: 50px;
  margin-bottom: 10px;
  border-radius: 100px;
}

.page-profile .actions .btn-connect .title {
  width: auto;
  line-height: 48px;
  font-size: 16px;
  letter-spacing: 0.1em;
}

.page-profile .actions .btn-connect .icon {
  margin-right: -9.5%;
  margin-left: -4%;
}

/* .page-profile .actions .btn-connect-line .icon {
  background-size: 50% auto;
} */

.btn-connect-facebook:hover,
.btn-connect-line:hover,
.btn-connect-facebook:focus,
.btn-connect-line:focus {
  color: #ffffff;
}

a.btn-stop-connect {
  border: #d1d1d1 1px solid;
  background-color: #d1d1d1;
}

.btn-connect-facebook {
  color: #ffffff;
  border: #1877f2 1px solid;
  background: #1877f2;
}

.btn-connect-line {
  color: #ffffff;
  border: #00b900 1px solid;
  background: #00b900;
}

.btn-connect > div {
  display: inline-block;
  vertical-align: top;
}

.btn-connect .icon {
  width: 130px;
  height: 100%;
  background-image: url(../images/member/icon-phone.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 30px auto;
}

.btn-connect .title {
  width: 220px;
  font-size: 24px;
  font-weight: 300;
  text-align: center;
  letter-spacing: 0.15em;
}

.btn-connect-facebook .icon {
  background-image: url(../images/member/icon-facebook.svg);
  background-size: 56px auto;
}

.btn-connect-line .icon {
  background-image: url(../images/member/icon-line.svg);
  background-size: 80px auto;
}

.btn-stop-connect.btn-connect-line .icon {
  background-image: url(../images/member/icon-line-grey.svg?v=190829);
}


.part-list .filter {
  width: 302px;
  height: 30px;
  border-radius: 15px;
  margin: 0 auto 25px;
  /* width: auto;
	margin: 0 10px 10px; */
  background: #e3e3e3;
}

.page-points .part-list .filter {
  /* width: auto; */
  width: 290px;
  height: 40px;
  border-radius: 20px;
}

.part-list .filter ul {
  position: relative;
  height: 100%;
  font-size: 0;
}

.part-list .filter ul:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  /* width: 25%; */
  height: 100%;
  border-radius: 15px;
  background: #ffffff;
  transition: left 0.15s ease-in-out;
}

.page-points .part-list .filter ul:before {
  width: 50%;
  border-radius: 20px;
}

.part-list .filter.current-1 ul:before {
  left: 0%;
}

.part-list .filter.current-2 ul:before {
  left: 25%;
}

.part-list .filter.current-3 ul:before {
  left: 50%;
}

.part-list .filter.current-4 ul:before {
  left: 75%;
}

.page-points .part-list .filter.current-1 ul:before {
  left: 0%;
}

.page-points .part-list .filter.current-2 ul:before {
  left: 50%;
}

.part-list .filter li {
  position: relative;
  display: inline-block;
  width: 25%;
  height: 100%;
  font-size: 13px;
  line-height: 30px;
}

.page-points .part-list .filter li {
  width: 50%;
  font-size: 15px;
  line-height: 40px;
}

.part-list .filter li a {
  display: block;
  height: 100%;
  color: #8b8b8b;
  text-align: center;
  letter-spacing: 2px;
}

.part-list .filter.current-1 li:nth-child(1) a,
.part-list .filter.current-2 li:nth-child(2) a,
.part-list .filter.current-3 li:nth-child(3) a,
.part-list .filter.current-4 li:nth-child(4) a {
  color: #f00000;
}

/* .page-coupons .actions { */
.page .actions {
  text-align: right;
  margin: 0 auto;
  line-height: 0;
}
/* 
.page-coupons .actions {
  width: 302px;
} */

/* #member .page-coupons #field-order { */
#member .page #field-order {
  width: auto;
  height: 40px;
  min-height: 0;
  margin: 0;
  line-height: normal;
}

/* #member .page-coupons #field-order::after { */
#member .page #field-order::after {
  content: "";
  top: 10px;
  right: 12px;
  width: 23px;
  height: 19px;
  background: url(../images/coupons/icon-order.svg) 0 0 no-repeat;
  background-size: contain;
  border-radius: 0;
}

/* #member .page-coupons #field-order select { */
#member .page #field-order select {
  color: #000;
  font-size: 18px;
  text-align: right;
  text-align-last: right;
  letter-spacing: 3px;
  padding-right: 42px;
  padding-left: 10px;
  border-radius: 0;
  border: none;
}

/* #member .page-coupons #field-order select:focus { */
#member .page #field-order select:focus {
  box-shadow: none;
  background: none;
}


/*/images/member/icon-address.svg*/

/* #points-redeem .part-content .item .point::before, */
#points-redeem .part-content .item .point::after {
  content: none;
}


#points-redeem .part-detail .item .info {
  display: block;
  width: auto;
  height: auto;
  font-size: 16px;
  line-height: 32px;
  padding: 15px 0 0;
}

#points-redeem .part-detail .item .intro {
  color: #747474;
  padding-top: 25px;
}

#points-redeem .part-detail .item .title {
  color: #3c3b3b;
  font-size: 15px;
  text-indent: 0;
  letter-spacing: 0.1em;
  background: none;
}

#points-redeem .part-detail .item .text {
  font-size: 12px;
  line-height: 20px;
  text-align: justify;
  letter-spacing: 0.1em;
}

.part-list .item-redeem .info,
.part-content .item-redeem .info {
  height: 85px;
}

.part-list .item .info > div,
.part-content .item .info > div {
/*   width: 170px; */
  text-overflow: ellipsis;
  overflow: hidden;
}

.part-list .item .info > .product-item,
.part-content .item .info > .product-item {
  /* text-overflow: ;
	overflow: hidden; */
  overflow: visible;
  white-space: normal;
}

#points-redeem .part-detail .item .info > div {
  width: auto;
}

#points-redeem .part-detail .item .name {
  font-size: 20px;
}

#points-redeem .part-detail .item .point {
  height: auto;
  font-size: 18px;
  text-align: left;
}

#points-redeem .part-detail .item .point:before {
  width: 18px;
  height: 18px;
  margin: 7px 5px 0 0;
}

#points-redeem .part-detail .item .point:after {
  content: none;
}

#points-redeem .part-detail .item .info .time {
  background-size: 16px 17px;
  background-position: left 7px;
}

.part-coupons-list > .more,
.page-points .more {
  position: relative;
  display: block;
  width: 74px;
  height: 74px;
  margin: 50px auto;
  border-radius: 50%;
  border: #e0e0df 2px solid;
  background: #ffffff;
}

.page-points .more {
  display: none;
}

.part-coupons-list > .more .sr-only,
.page-points .more .sr-only {
  position: absolute;
  top: 85px;
  left: 50%;
  width: 150px;
  height: auto;
  color: #898989;
  font-size: 16px;
  text-align: center;
  margin: 0 0 0 -75px;
  clip: auto;
  overflow: hidden;
}

.part-coupons-list > .more.loading,
.page-points .more.loading {
  pointer-events: none;
}

.part-coupons-list > .more.loading .sr-only,
.page-points .more.loading.sr-only {
  /*	font-size: 0;*/
  display: none;
}

.part-coupons-list > .more .plus,
.part-coupons-list > .more .spinner,
.page-points .more .plus,
.page-points .more .spinner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: all 0.35s ease-in-out;
}

.part-coupons-list > .more.loading .plus,
.page-points .more.loading .plus {
  /* rotate(360deg)  */
  /* rotate(360deg)  */
  /* rotate(360deg)  */
  /* rotate(360deg)  */
  transform: scale(0);
  /* rotate(360deg)  */
}

.part-coupons-list > .more .spinner,
.page-points .more .spinner {
  transform: scale(0);
}

.part-coupons-list > .more.loading .spinner,
.page-points .more.loading .spinner {
  transform: scale(1);
}

.part-coupons-list > .more .plus:before,
.part-coupons-list > .more .plus:after,
.page-points .more .plus:before,
.page-points .more .plus:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: #e0e0df;
}

.part-coupons-list > .more .plus:before,
.page-points .more .plus:before {
  width: 32px;
  height: 2px;
  margin: -1px 0 0 -16px;
}

.part-coupons-list > .more .plus:after,
.page-points .more .plus:after {
  width: 2px;
  height: 32px;
  margin: -16px 0 0 -1px;
}

.part-coupons-list > .more .path,
.page-points .more .path {
    moreColor 6s ease-in-out infinite;
  animation: dash 1.5s ease-in-out infinite, moreColor 6s ease-in-out infinite;
}

@keyframes moreColor {
  100%,
  0% {
    stroke: #e0e0df;
  }

  34% {
    stroke: #e0e0df;
  }

  67% {
    stroke: #e0e0df;
  }
}

#member #main #member-home,
#member #main #receipt-home,
#member #main .section-panel {
  padding-top: 0;
  padding-bottom: 25px;
}

/* #member .section-panel .part-basic {
  height: 220px;
} */

#member #member-home .part-basic .panel,
#member #receipt-home .part-basic .panel,
#member .section-panel .part-basic .panel {
  height: 190px;
  background: #ffffff;
}

#member .section-panel .part-basic .panel {
  height: 160px;
}

#member #member-home .part-basic::before,
#member-home .part-basic .user,
#member #receipt-home .part-basic::before,
#receipt-home .part-basic .user,
#member .section-panel .part-basic::before,
.section-panel .part-basic .extra,
#member #member-home .part-basic .extra {
  position: absolute;
  top: -25px;
  left: 50%;
  width: 240px;
  height: 240px;
  margin: 0 0 0 -120px;
  border-radius: 50%;
  background: #ffffff;
  overflow: hidden;
}

.section-panel .part-basic .extra,
,
#member #member-home .part-basic .extra {
  top: -55px;
}

#member #member-home .part-basic::before {
    filter: url(#goo); */
}

#member-home .part-basic .user .image,
#receipt-home .part-basic .user .image {
  width: 80px;
  height: 80px;
  margin: 55px auto 0;
  border: #dedede 3px solid;
  border-radius: 50%;
  background-image: url(../images/member/icon-avatar.svg);
  background-color: #dedede;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
}

#member-home .part-basic .user .image img,
#receipt-home .part-basic .user .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}

#member-home .part-basic .user .name,
#receipt-home .part-basic .user .name {
  width: 120px;
  color: #4e4e4e;
  font-size: 16px;
  text-align: center;
  text-indent: 2px;
  letter-spacing: 2px;
  margin: 0 auto;
  padding: 7px 0 10px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

#member #member-home .part-basic::before,
#member #receipt-home .part-basic::before,
#member .section-panel .part-basic::before {
  /* content: ''; */
  position: absolute;
  /* top: 0; */
  left: 50%;
  /* margin-left: -120px; */
  /* box-shadow: rgba(0, 0, 0, 0.15) 10px 0 45px; */
  z-index: -1;
}

.part-basic .btn-logout {
  position: absolute;
  top: 0;
  right: 0;
  width: 56px;
  color: #454545;
  font-size: 14px;
  text-align: center;
  padding: 48px 0 14px;
  background: url(../images/home/icon-logout.svg) center 22px no-repeat;
  background-size: 21px auto;
  z-index: 2;
}

#member #member-home .part-portal,
#member #receipt-home .part-portal,
#member #receipt-home .part-portal--instructions,
#member .section-panel .part-portal {
  width: 264px;
  margin: 0 auto 20px;
  text-align: center;
}

#member-home .part-portal > div,
#receipt-home .part-portal > div,
#member #receipt-home .part-portal--instructions > div,
.section-panel .part-portal > div {
  padding: 0;
  position: relative;
}

#member-home .part-portal a,
.section-panel .part-portal a {
  display: block;
  width: 112px;
  /* height: 130px; */
  height: 128px;
  margin: 0 auto 25px;
  border: #f00000 3px solid;
  border-radius: 10px;
  background: #ffffff;
  box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 10px;
  overflow: hidden;
}

#receipt-home .part-portal a {
  width: 120px;
}

.section-panel .part-portal a {
  width: auto;
}

#member-home .part-portal .portal-none,
#receipt-home .part-portal .portal-none {
  background: #dcdcdc;
  border-color: #dcdcdc;
  pointer-events: none;
}

/* #member-home .part-portal .new::after { */
#member-home .part-portal .new .notif,
#receipt-home .part-portal .new .notif {
  content: "";
  position: absolute;
  /* top: -8px; */
  top: 7px;
  left: 0;
  width: 46px;
  height: 20px;
  background: url(../images/home/icon-new.svg) 0 0 no-repeat;
  background-size: contain;
  overflow: hidden;
  border-radius: 5px 0 0 5px;
}

#member-home .part-portal .new .notif:after,
#receipt-home .part-portal .new .notif:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -30px;
  width: 50px;
  height: 30px;
  margin-top: -15px;
  border-radius: 50%;

  mix-blend-mode: lighten;

  background: rgb(233, 23, 31);
    circle,
    rgba(233, 23, 31, 1) 0%,
    rgba(161, 31, 36, 0) 100%
  );
  background: -webkit-radial-gradient(
    circle,
    rgba(233, 23, 31, 1) 0%,
    rgba(161, 31, 36, 0) 100%
  );
  background: radial-gradient(
    circle,
    rgba(233, 23, 31, 1) 0%,
    rgba(161, 31, 36, 0) 100%
  );
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#e9171f", endColorstr="#a11f24", GradientType=1);

  animation: notifAnimation 1.5s ease-in-out infinite;
}

@keyframes notifAnimation {
  0% {
    left: -50px;
  }

  100% {
    left: 100%;
  }
}

#member-home .part-portal .image,
#receipt-home .part-portal .image,
.section-panel .part-portal .image {
  position: relative;
  height: 90px;
  background: #ffffff;
}

#member-home .part-portal .image::before,
#receipt-home .part-portal .image::before,
.section-panel .part-portal .image::before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

#member-home .part-portal .image img,
#receipt-home .part-portal .image img,
.section-panel .part-portal .image img {
  display: inline-block;
  vertical-align: middle;
}

#member-home .part-portal .portal-points .image img {
  margin-left: -7px;
}

#member-home .title,
#receipt-home .title,
.section-panel .title {
  height: 32px;
  color: #ffffff;
  line-height: 32px;
  letter-spacing: 2px;
  text-indent: 2px;
  background: #f00000;
}
#member-home .part-portal .disabled a,
.section-panel .part-portal .disabled a {
  border-color: #cccccc;
}

#member-home .actions,
#member-news .actions,
#receipt-home .actions,
.section-panel .actions {
  font-size: 0;
  text-align: center;
}

#main.page-points .actions {
/*   text-align: right;
  margin: 0 -5px 25px; */
}

#points-redeem .actions {
/*   margin-bottom: 25px; */
}

#main #points-redeem .actions {
/*   text-align: center; */
  /* margin-top: 25px; */
/*   margin-top: 0; */
}

#main #points-redeem .part-detail .actions {
/*   margin-top: 25px; */
}

#main #points-redeem .part-list .actions {
/*   text-align: right;
  margin-top: 0px; */
}

#member #member-home .btn,
#member #member-news .btn,
#member #receipt-home .btn {
  display: inline-block;
  width: 140px;
  font-size: 18px;
/*   font-weight: 300; */
  letter-spacing: 2px;
  text-indent: 2px;
/*   padding-top: 10px; */
/*   padding-bottom: 10px; */
  margin: 0 2.5px;
}

#member .section-panel .item-disabled .btn {
  background-color: #b4b4b4;
  pointer-events: none;
}

#member .section-panel .item-notEnough .btn {
  pointer-events: auto;
}

#member .section-panel .item-empty .btn {
  background: #8e8e8e;
}

#member .section-panel .part-detail .item-notEnough .btn {
  background-color: #b4b4b4;
  pointer-events: none;
}

#member .section-panel .part-detail .item-empty .btn {
  background-color: #8e8e8e;
}

#footer #warning {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 63px;
  font-size: 0;
  text-align: center;
  white-space: nowrap;
  background: url(../../blog/images/common/warning-bg.png) #383838 center top
    no-repeat;
  background-size: cover;
  z-index: 1;
  transform: translate3d(0, 0, 0);
  overflow: hidden;
}

#footer #warning span {
  display: inline-block;
  height: 100%;
  color: #b6b6b6;
  font-size: 28px;
  font-weight: 300;
  line-height: 63px;
  letter-spacing: 5px;
  vertical-align: middle;
}

#footer #warning span:first-child {
  padding-left: 5px;
  transform: scaleY(1.2);
}

#footer #warning span:last-child {
  transform: scaleY(1.2);
}

#footer #warning span img {
  width: 22px;
  margin-top: -2px;
  margin-right: 5px;
}

/*****************************************
*                   pop                  *
*****************************************/

#pop {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  min-height: 100%;
  z-index: 2;
}

.pop-container {
  position: absolute;
  width: 100%;
  height: 100%;
  min-height: 100%;

  display: -webkit-flex;
  display: flex;

  align-items: center;
  justify-content: center;

  background: rgba(0, 0, 0, 0.5);
}

.pop-main {
  display: none;
  position: relative;
  margin-top: 80px;
  max-height: 90dvh;
  margin-right: auto;
  margin-bottom: 80px;
  margin-left: auto;
}

#pop-serial-notice{
  width: 100%;
  max-width: 1000px;
  height: 80%;
  background: #fff;
  border-radius: 30px;
  padding: 100px 180px;

}
#pop-serial-notice .notice{
  overflow-y: scroll;
  height: 100%;
}

#pop-thirdparty-login-tips {
  line-height: 1.5;
  margin: 120px 20px;
  /* padding: 40px 22px; */
  padding: 40px 6% 45px;
  background: #fff;
}

#pop-thirdparty-login-tips .title {
  color: #252525;
  text-align: left;
  letter-spacing: 0;
}

#pop-thirdparty-login-tips .text {
  color: #646464;
  margin-top: 12px;
  text-align: left;
  line-height: 1.5;
  letter-spacing: 0;
  word-break: break-word;
}

#pop-thirdparty-login-tips .btns {
  font-size: 0;
  text-align: center;
}

#pop-thirdparty-login-tips .btns li {
  margin: 0 10px 10px;
}

#pop-signup-success,
#pop-reset-password-success,
/* #pop-account-upgrade, */
#pop-account-upgrade-success {
  width: 420px;
  padding: 40px 0;
  background-color: #ffffff;
  border-radius: 20px;
}

.pop-main .title {
  color: #f00000;
  font-size: 24px;
  font-weight: 500;
  text-align: center;
/*   letter-spacing: 0.25em; */
}

.pop-main .text {
  color: #000;
  font-size: 18px;
  text-align: center;
  line-height: 34px;
/*   letter-spacing: 0.3em; */
  margin-top: 0.65em;
  margin-bottom: 1.6em;
  vertical-align: middle;
}

/* #member #pop-account-upgrade .text, */
#member #pop-account-upgrade-success .text {
  text-indent: 0.15em;
  letter-spacing: 0.15em;
}

/* #member #pop-account-upgrade .btn, */
#member #pop-account-upgrade-success .btn {
  text-indent: 0.25em;
  max-width: 40rem;
  letter-spacing: 0.025em;
  margin-bottom: 0.75em;
}

#pop-signup-success .title img {
  width: 28px;
  margin-top: -3px;
  margin-right: 8px;
}

#pop-signup-success .btn {
  text-indent: 1em;
}

#pop-signup-success .btn-back {
  margin-top: 10px;
}

#pop-signup-success .btn img {
  position: absolute;
  top: 20px;
  left: 50px;
  width: 34px;
  margin-right: 10px;
}


#pop-coupon .close,
.pop-main .close {
  position: absolute;
  top: -90px;
  right: 0;
  width: 60px;
  height: 60px;
  background: url(../images/common/close.svg) center center no-repeat;
  background-size: contain;
  opacity: 0.75;
  filter: alpha(opacity=75);
}

.modal {
  padding: 0 0 !important;
}

.modal .close {
  line-height: 0;
  opacity: 1;
}

.modal .close:focus {
  outline: 0;
}

.modal:before {
  content: "";
  display: inline-block;
  width: 0;
  height: 100%;
  vertical-align: middle;
}

.modal-dialog {
  display: inline-block;
  text-align: left;
  vertical-align: middle;
}

.modal-content {
  border: none;
  box-shadow: none;
  /*	background: #fdd000;*/
}

.modal-header {
  border: none;
}

.modal-footer {
  border: none;
}

/*****************************************
*                 loading                *
*****************************************/

#loading {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.5);
  z-index: 99;
}

.loader {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 80px;
  margin: -40px 0 0 -40px;
}

.loader:before {
  content: "";
  display: block;
  padding-top: 100%;
}

.circular {
  animation: rotate 2s linear infinite;
  transform-origin: center center;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: auto;
}

.path {
  stroke-dasharray: 1, 200;
  stroke-dashoffset: 0;
    color 6s ease-in-out infinite;
  animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
  stroke-linecap: round;
}

@keyframes rotate {
  100% {
    transform: rotate(360deg);
  }
}

@keyframes dash {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
  }

  50% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -35px;
  }

  100% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -124px;
  }
}

@keyframes color {
    100%,
  0% {
    stroke: #f00000;
  }

  34% {
    stroke: #f00000;
  }

  67% {
    stroke: #f00000;
  }
}

/*****************************************
*             common settings            *
*****************************************/

.template {
  display: none !important;
}

.transition-150 {
  transition: 0.15s ease-out;
}

.clearFix:after {
  clear: both;
  content: ".";
  display: block;
  height: 0;
  overflow: hidden;
  visibility: hidden;
}

.ele {
  position: absolute;
}

.fltR {
  float: right;
}

.fltL {
  float: left;
}

.pos-a {
  position: absolute;
}

.pos-r {
  position: relative;
}

.textHide {
  font-size: 0;
  text-indent: -5000px;
}

.container-row{
  margin: 0 auto;
}
/*****************************************
*              media queries             *
*****************************************/

@media (min-width: 480px) {
  #main #points-input .notice table td.terms {
    padding-top: 50px;
  }

  .page-points .part-list .no-result p {
    font-size: 22px;
    padding: 70px 0;
  }

  #member #user-login-home .form .part-act {
    margin-top: 20px;
  }

 

  #member .page-coupons #field-order::after,
  #member .page #field-order::after {
    top: 8px;
    right: 14px;
    width: 30px;
    height: 24px;
  }

  #member .page-coupons #field-order select,
  #member .page #field-order select {
    padding-right: 56px;
  }

  .page-coupons select,
  #member .page #field-order select {
    font-size: 16px;
  }

  

  #main section .back {
    font-size: 16px;
  }

 

 
  #main .section-panel .panel h2 {
    /* font-size: 38px; */
    font-size: 32px;
    margin-top: 75px;
    margin-bottom: 20px;
  }

  #main .section-panel .panel .points-title {
    font-size: 20px;
  }

  #main .section-panel .panel .points-title:before {
    width: 22px;
    height: 22px;
    vertical-align: middle;
    margin: -5px 10px 0 0;
  }

  #main .section-panel .panel .points-value {
    font-size: 34px;
    line-height: 40px;
    margin-top: 5px;
  }

  #member .page-points .part-serial {
/*     width: 316px; */
/*     padding-left: 60px; */
  }

  #member .page-points .part-serial .field {
/*     width: 255px; */
/*     min-height: 70px; */
  }

  #member .page-points .form .warning li {
/*     font-size: 18px;
    padding-left: 0px; */
  }

  #main #points-input .notice {
    font-size: 24px;
    line-height: 35px;
    padding: 0 30px;
    margin-top: 10px;
    margin-bottom: 20px;
  }

  .page-points .part-list .filter {
    width: 420px;
    height: 70px;
    border-radius: 35px;
  }

  .page-points .part-list .filter ul:before {
    border-radius: 35px;
  }

  .page-points .part-list .filter li {
    font-size: 22px;
    font-weight: 500;
    line-height: 70px;
  }

 

  #points-redeem .part-content .item .image {
    /* height: 125px; */
    /* height: 146px; */
  }

  #points-redeem .part-detail .item .image,
  #points-redeem .part-form .item .image {
    /* height: 206px; */
  }

    #main .part-detail .item .point:before {
    width: 22px;
    height: 22px;
    margin-top: 6px;
  }

  #points-redeem .part-detail .item .intro {
    padding-top: 0;
  }

  #points-redeem .part-detail .item .title {
    font-size: 20px;
  }

  #points-redeem .part-detail .item .text {
    font-size: 18px;
    line-height: 30px;
    margin-bottom: 25px;
  }

  #points-redeem .part-detail .item .info .time {
    font-size: 20px;
  }

 
/*   .part-detail .item .info > div {
    font-size: 20px;
  } */

  #points-redeem .part-form .item .form {
    padding-top: 30px;
  }

  #points-redeem .part-form .item .form > p {
    font-size: 24px;
    margin-bottom: 30px;
  }

  #points-redeem .part-form .field {
/*     min-height: 60px; */
  }

  #member #points-redeem .part-form .field-input-text input {
    font-size: 20px;
    padding-left: 25px;
  }

  #member #points-redeem .part-form .field-select select {
    font-size: 20px;
    padding-left: 25px;
  }

  #member #points-redeem .part-form .field-select::after {
/*     top: 17px;
    right: 16px; */
  }

  #main.page-points #points-redeem .part-form .item .actions {
    padding-top: 15px;
  }

/*   #member #points-redeem .part-form #field-name .icon-field {
    background-size: 22px auto;
  } */

/*   #member #points-redeem .part-form #field-phone .icon-field {
    background-size: 18px auto;
  } */

  #points-redeem .part-form .item .info span {
    top: 4px;
  }

  #member #points-redeem .part-form .actions .btn {
    font-size: 20px;
  }

  #main #member-home .panel .points,
  #main #receipt-home .panel .points {
    font-size: 16px;
    top: 163px;
  }

  #main #member-home.main .panel .points {
    top: 163px;
  }
  #main #member-home.serial-panel .panel .points {
    top: 0px;
  }

  #member-home .part-basic .user .image,
  #receipt-home .part-basic .user .image {
    margin-top: 180px;
  }

  #member-home .part-basic .user .name,
  #receipt-home .part-basic .user .name {
    width: 170px;
    font-size: 18px;
    padding: 12px 0;
  }

  .part-basic .btn-logout {
    width: 88px;
    font-size: 16px;
    padding-top: 60px;
    background-size: 28px auto;
  }

  #member #member-home .part-portal,
  #member #receipt-home .part-portal--instructions,
  #member #receipt-home .part-portal {
    width: 386px;
  }

  #member .section-panel .part-portal,
  #member .section-panel .part-portal--instructions {
    width: 360px;
  }

  #member-home .part-portal a,
  #receipt-home .part-portal a,
  .section-panel .part-portal a {
    width: 157px;
    height: 182px;
    margin-bottom: 55px;
  }

  .section-panel .part-portal a {
    width: auto;
    margin-bottom: 55px;
  }

  /* #member-home .part-portal .new::after { */
  #member-home .part-portal .new .notif,
  #receipt-home .part-portal .new .notif {
    /* top: -10px; */
    top: 8px;
    width: 70px;
    height: 30px;
  }

  #member-home .part-portal .image,
  #receipt-home .part-portal .image,
  .section-panel .part-portal .image {
    height: 126px;
  }

  .section-panel .part-portal .portal-input .image img {
    width: 80px;
  }

  .section-panel .part-portal .portal-history .image img {
    width: 58px;
  }

  .section-panel .part-portal .portal-products .image img {
    width: 56px;
  }

  #member-home .title,
  #receipt-home .title,
  .section-panel .title {
    height: 50px;
    font-size: 21px;
    font-weight: 300;
    line-height: 52px;
  }

  .section-panel .title {
    font-size: 22px;
    font-weight: 400;
  }

  #member #member-home .btn,
  #member #member-news .btn,
  #member #receipt-home .btn {
    width: 190px;
    font-size: 21px;
    margin: 0 10px;
  }

}

@media (min-width: 768px) {
  html {
    /*padding-top: 120px;*/
  }

  .page-points .part-list .no-result p {
    font-size: 26px;
    padding: 90px 0;
  }

  #header {
    height: 120px;
  }

  .navbar > .container .navbar-brand {
    margin: 44px 0 0 20px;
  }

  .navbar-brand img {
    width: 162px;
  }

  #main.page-member section {
    /* padding-top: 75px; */
  }

  #main section h2 {
    font-size: 40px;
    margin-bottom: 50px;
  }

  #main .section-panel .panel h2 {
    font-size: 40px;
    margin-top: 90px;
    margin-bottom: 35px;
  }

  #main .section-panel .panel .points-title {
    font-size: 26px;
  }

  #main .section-panel .panel .points-title:before {
    width: 28px;
    height: 28px;
    vertical-align: middle;
    margin: -5px 10px 0 0;
  }

  #main .section-panel .panel .points-value {
    font-size: 42px;
    line-height: 50px;
    margin-top: 15px;
  }

  #member .page-points .part-serial {
/*     width: 380px; */
  }

  #member .page-points .part-serial .field {
/*     width: 320px; */
  }

  #member #user-login-home .form .part-act {
/*     margin-top: 40px; */
  }

  #member #main #account-settings .already {
/*     font-size: 16px; */
  }

  #member #main #account-settings .already a:before {
    top: -5px;
    left: -34px;
    width: 25px;
    height: 30px;
  }

  /* #main.page-member section h2, */
  #main #user-login-home h2 {
    font-size: 38px;
    text-indent: 0.15em;
    margin-bottom: 0.8em;
  }

  #main.page-member section .text {
    font-size: 32px;
    font-weight: 500;
  }

  #main #brands-preference .text {
    font-weight: 400;
  }

  #main #forgot-password .text {
    font-size: 16px;
    font-weight: 400;
    margin-bottom: 30px;
    /* line-height: 42px; */
  }

  #main #forgot-password .part-act .btn {
/*     width: 60%; */
/*     max-width: 380px; */
  }

  #main #forgot-password .part-act {
    padding-top: 5px;
  }

  #main section h2 span {
    font-size: 28px;
    font-weight: 400;
    text-indent: 0em;
    letter-spacing: 0.5em;
    margin-top: 0.7em;
  }

  .part-login-methods a,
  .part-social-connect a {
    width: 425px;
    border-radius: 10px;
  }

  .part-login-methods a .icon,
  .part-social-connect a .icon {
    width: 140px;
  }

  .part-login-methods a .title,
  .part-social-connect a .title {
    width: 240px;
  }

  #member .icon-field {
    width: 80px;
  }

  #member .field-input-text input {
    font-size: 28px;
    padding: 0 100px 0 80px;
  }

  #member #field-phone .input-text {
    padding-bottom: 24px;
  }

  #member .field .note {
    /*	top: 28.5px;
	left: 265px;
	font-size: 20px;*/
    top: 48px;
    left: 83px;
    font-size: 16px;
    letter-spacing: 0.5em;
  }

  #member .page-member .field .note {
    top: 33px;
    left: 170px;
  }

  #member .part {
    margin-bottom: 50px;
  }

  #contact-preference .part {
    padding-right: 60px;
    padding-left: 60px;
  }

  #user-login .form .part-act .link,
  #user-login .form .part-act span {
    font-size: 22px;
  }

  #user-login .form .part-act .link::before {
    left: -2px;
    width: 25px;
    height: 28px;
  }

  #main .part-login-methods {
    margin-top: 70px;
    margin-bottom: 80px;
  }

  #field-sms-verify {
    padding-top: 45px;
  }

  #field-sms-verify .text {
    font-size: 28px;
  }

  #field-sms-verify .text.error {
    padding-left: 50px;
  }

  #field-sms-verify .text.error:after {
    top: 6px;
    left: 7px;
    width: 29px;
    height: 29px;
    margin-left: 0;
  }

  #field-sms-verify .code {
    margin-top: 38px;
  }

  #field-sms-verify .code input {
    /* max-width: 85px; */
    height: 102px;
    font-size: 34px;
    margin: 0 1.5%;
  }

  #field-sms-verify .resend {
    margin-bottom: 25px;
  }

  .field-gender {
    max-width: 265px;
  }

  .field-gender .radio-label {
    font-size: 28px;
  }

  #field-male,
  #member .page-edit-profile #field-male {
    float: left;
    margin-left: 20px;
  }

  #field-female .input-radio + .radio-label {
    background-size: 40px auto;
    background-position: 25px -22px;
  }

  #field-female .input-radio:checked + .radio-label {
    background-position: 25px -154px;
  }

  #field-male .input-radio + .radio-label {
    background-size: 33px auto;
    background-position: 25px -12px;
  }

  #field-male .input-radio:checked + .radio-label {
    background-position: 25px -120px;
  }

  #field-phone .icon-complete {
    width: 100px;
    background-size: 55px 55px;
  }

/*   #member #field-phone .icon-field {
    background-size: 26px auto;
  } */

  #member #field-password .icon-field {
    background-size: 28px auto;
  }

  #member #field-confirm .icon-field {
    background-size: 46px auto;
  }

  #member #field-name .icon-field {
/*     background-size: 32px auto; */
  }

  #member .part-birthday .icon-field {
    background-size: 56px auto;
    top: -8px;
  }

  #member .part-address .icon-field {
    top: -8px;
    background-size: 44px auto;
  }

  #member #field-password .btn,
  #member #field-confirm .btn {
    background-position: center -20px;
    background-size: 40px auto;
  }

  #member #field-password.field-password-show .btn,
  #member #field-confirm.field-password-show .btn {
    background-position: center -146px;
  }

  #member #field-email .icon-field {
    background-size: 38px auto;
  }

  .part-birthday .clearfix {
    font-size: 0;
    letter-spacing: 0;
  }

  #member .form,
  #main.page-edit-profile #social-network-binding {
    font-size: 28px;
    letter-spacing: 0.125em;
  }

  #social-network-binding .note {
    font-size: 24px;
    margin-top: -8px;
    margin-bottom: 50px;
  }

  #member .form .btn {
    max-width: 350px;
    font-size: 28px;
    text-indent: 0.3em;
  }

/*   #member .form .part-act .btn {
    max-width: none;
  } */

  #member .form .list-check li {
    font-size: 24px;
    line-height: 58px;
    padding-left: 90px;
    f
    background-position: 30px center;
    background-size: 40px auto;
  }

  #member .form .warning {
    /* padding-bottom: 1em; */
  }

  #member .form .warning li {
/*     font-size: 26px; */
/*     padding-left: 80px; */
/*     background-position: 22.5px center;
    background-size: 32px; */
  }

  .text-label {
    letter-spacing: 0.5em;
    padding-left: 90px;
  }

  #member .error .text-label {
    padding-left: 145px;
  }

  #member .field-select,
  #member .page-edit-profile .field-select {
/*     float: none;
    width: 30%;
    font-size: 28px;
    margin-right: 3%; */
  }

  #member #profile-information .part-birthday .field-select {
    margin-bottom: 0;
  }

  #member .error:after {
    display: none;
  }

  #member .error .icon-field {
    left: 50px;
  }

  #member .field.error .input-text {
/*     padding-left: 130px; */
  }

  #member .field.error .note {
    left: 132px;
  }

  #member .part-birthday.error .icon-field,
  #member .part-address.error .icon-field {
    left: 55px;
  }

  .list-input-checkbox {
    font-size: 22px;
  }
/* 
  #brands-preference .list-input-checkbox {
    width: 255px;
    height: 255px;
    margin-bottom: 100px;
  }

  #brands-preference .checkbox-label:after {
    top: 235px;
    height: 20px;
    border-radius: 0 0 10px 10px;
  }

  #brands-preference .checkbox-label span {
    top: 255px;
    height: 80px;
    font-size: 26px;
    line-height: 80px;
    letter-spacing: 0.2em;
  }

  .brands-preference-empty:after {
    height: 20px;
  }

  #brands-preference .checkbox-label:before {
    background-position: 204px 14px;
    background-size: 32px 28px;
  }

  #brands-preference
    .list-input-checkbox
    .input-checkbox:checked
    + .checkbox-label:before {
    background-position: 202px 12px;
  }

  #brands-preference-gogotea .checkbox-label img {
    width: 150px;
  }

  #brands-preference-barbeer .checkbox-label img {
    width: 150px;
  }

  #brands-preference-ichiban .checkbox-label img {
    width: 150px;
  }

  #brands-preference-namacya .checkbox-label img {
    width: 150px;
  }

  #brands-preference-hyoketsu .checkbox-label img {
    width: 150px;
  }

  #brands-preference-greenlabel .checkbox-label img {
    width: 150px;
  }

  #brands-preference-special .checkbox-label img {
    width: 150px;
  }

  #brands-preference-honshibori .checkbox-label img {
    width: 150px;
  } */

  #pop-thirdparty-login-tips .btns li {
    display: inline-block;
  }

  .pop-main .title {
    font-size: 34px;
  }

  .pop-main .text {
    font-size: 24px;
/*     letter-spacing: 0.5em; */
    line-height: 38px;
    margin-top: 1em;
  }

/*   #member #pop-account-upgrade .btn, */
  #member #pop-account-upgrade-success .btn {
    max-width: 340px;

    text-indent: 0.15em;
    letter-spacing: 0.15em;
  }

  #pop-signup-success .title img {
    width: 32px;
    margin-right: 24px;
    margin-left: -20px;
  }

  #member #pop-signup-success .btn {
    text-indent: 0.25em;
    letter-spacing: 0.25em;
  }

  #member #pop-reset-password-success .btn {
    width: 340px;
    max-width: none;
  }

  #pop-signup-success .btn img {
    top: 26px;
    left: 52px;
    width: 36px;
  }

  /* #main #coupons h2 {
    padding-bottom: 40px;
    margin-right: 0;
    margin-bottom: 45px;
    margin-left: 0;
  }
 */
  .part-coupons-list .filter {
    width: 560px;
    height: 60px;
    margin-bottom: 15px;
    border-radius: 30px;
  }

  .part-coupons-list .filter ul:before {
    border-radius: 30px;
  }

  .part-coupons-list .filter li {
    font-size: 24px;
    line-height: 60px;
  }

/*   .page-coupons .actions {
    width: 560px;
  } */

  #member .page-coupons #field-order,
  #member .page #field-order {
    height: 60px;
  }

  #main #points-redeem .part-list .actions {
    /* #member #points-redeem #field-order { */
    /* width: 820px; */
/*     margin-right: auto;
    margin-left: auto; */
  }

  #member .page-coupons #field-order::after,
  #member .page #field-order::after {
    top: 14px;
    right: 20px;
    width: 39px;
    height: 32px;
  }

  #member .page-coupons #field-order select,
  #member .page #field-order select {
    padding-right: 80px;
  }

  .page-coupons select,
  #member .page #field-order select {
    font-size: 20px;
  }

  

  
  
  #main #member-home .panel .points,
  #main #receipt-home .panel .points {
    font-size: 22px;
  }
  #main #member-home.main .panel .points {
    top: 280px;
  }
  #main #member-home.serial-panel .panel .points {
    top: 0;
  }
  #main #member-home .panel .points-title:before,
  #main #receipt-home .panel .points-title:before {
    width: 22px;
    height: 22px;
  }

  
  #member-home .part-basic .user .image,
  #receipt-home .part-basic .user .image {
    width: 145px;
    height: 145px;
    margin-top: 565px;
  }

  #member-home .part-basic .user .name,
  #receipt-home .part-basic .user .name {
    width: 330px;
    font-size: 24px;
    padding: 25px 0;
  }

  .part-basic .btn-logout {
    width: 128px;
    font-size: 24px;
    padding-top: 110px;
    background-size: 46px;
    background-position: center 48px;
  }

  #member #member-home .part-portal,
  #member #receipt-home .part-portal,
  #member #receipt-home .part-portal--instructions,
  #member
    .section-panel
    .part-portal--instructions
    #member
    .section-panel
    .part-portal {
    width: 560px;
    margin-bottom: 35px;
  }

  #member-home .part-portal a,
  #receipt-home .part-portal a,
  .section-panel .part-portal a {
    width: 232px;
    height: 270px;
  }

  .section-panel .part-portal a {
    width: 450px;
    height: 230px;
    margin-bottom: 65px;
  }

  #member-home .part-portal .image,
  #receipt-home .part-portal .image,
  .section-panel .part-portal .image {
    height: 190px;
  }

  .section-panel .part-portal .image {
    height: 150px;
  }

  .section-panel .part-portal .portal-input .image img {
    width: 98px;
  }

  .section-panel .part-portal .portal-history .image img {
    width: 74px;
  }

  .section-panel .part-portal .portal-products .image img {
    width: 72px;
  }

  .page-points .part-list .filter {
    width: 530px;
    height: 80px;
    margin-bottom: 65px;
    border-radius: 40px;
  }

  .page-points .part-list .filter ul:before {
    border-radius: 40px;
  }

  .page-points .part-list .filter li {
    font-size: 24px;
    line-height: 80px;
  }

  .part-list .item-redeem .point.validate-error,
  .part-content .item-redeem .point.validate-error,
  .part-list .item .point.validate-error,
  .part-content .item .point.validate-error {
    font-size: 27px;
  }
  #points-redeem .part-detail .item .info .time {
    background-position: left 2px;
    background-size: 30px 30px;
    padding-left: 36px;
  }

  #points-redeem .part-detail .item .point {
    font-size: 28px;
  }

  #points-redeem .part-detail .item .title {
    height: 40px;
    font-size: 26px;
    line-height: 40px;
  }

  #points-redeem .part-detail .item .actions .btn {
    width: 250px;
    font-size: 26px;
    font-weight: 400;
    padding-top: 15.5px;
    padding-bottom: 15.5px;
  }

  .part-list .item .point:after,
  .part-content .item .point:after {
    /* height: 110px; */
  }

  #member #points-redeem .part-form #field-name input,
  #member #points-redeem .part-form #field-phone input {
    padding-left: 60px;
  }

/*   #member #points-redeem .part-form .part-address .text-label {
    letter-spacing: 0.05em;
  } */

  #member #points-redeem .part-form .field-select {
    width: 46%;
  }

  #main.page-points #points-redeem .part-form .item .actions {
    padding-top: 30px;
  }

  #member #points-redeem .part-form .actions .btn {
    font-size: 26px;
    font-weight: 400;
  }

  #points-redeem .part-content .item .image {
    /* height: 239px; */
  }

  #points-redeem .part-content .item.item-empty .image::after {
    width: 52px;
    height: 52px;
  }

  #points-redeem .part-detail .item .image,
  #points-redeem .part-form .item .image {
    /* height: 240px; */
  }

  #points-redeem .part-content .item .info {
/*     padding: 40px 0;
    line-height: 48px; */
  }

  #points-redeem .part-content .item .info .name {
    font-size: 28px;
    margin-bottom: 20px;
  }

   #member-home .title,
  #receipt-home .title,
  .section-panel .title {
    height: 74px;
    font-size: 32px;
    font-weight: 400;
    line-height: 78px;
    border-radius: 0 0 6px 6px;
  }

  #member-home .part-portal .new .notif,
  #receipt-home .part-portal .new .notif {
    top: 15px;
  }

  #member #member-home .btn,
  #member #member-news .btn,
  #member #receipt-home .btn {
    width: 305px;
    font-size: 32px;
/*     padding-top: 25.5px; */
/*     padding-bottom: 25.5px; */
    border-radius: 50px;
  }
}

/* 正式站調整css */

/* 正式站調整css */

@media (min-width: 992px) {
  html {
    /*padding-top: 78px;*/
  }

  body {
    background: #f9f9f9;
  }

  #header {
    height: 140px;
  }

  .page-points .part-list .no-result p {
    font-size: 20px;
    padding: 120px 0;
  }

  .navbar > .container .navbar-brand {
    margin-top: 46px;
  }

  .navbar-brand img {
    width: 162px;
  }

  #main section .back {
    top: 24px;
    left: 24px;
    height: 46px;
    font-size: 15px;
    line-height: 46px;
    padding-left: 58px;
  }

  #main section .back:hover {
    color: #f00000;
  }

  #main section .back:hover:after {
    background-position: right center;
  }

  #main > .container,
  #main.page-member-home > .container-fluid,
  #main.page-points > .container-fluid {
    position: relative;
    width: 910px;
    margin-top: 45px;
    margin-bottom: 45px;
    background: #f7f7f6;
    border-radius: 30px;
/*     box-shadow: rgba(0, 0, 0, 0.1) 25px 25px 30px; */
  }
  .container-row{width: 910px;}
  #main.page-member-home > .container-fluid,
  #main.page-points > .container-fluid {
    overflow: hidden;
  }

  #main.page-profile > .container {
    /* margin-top: 95px; */
  }

/*   #main #points-input h2::after {
    content: none;
  } */

  #member .page-points .part-serial .field {
/*     min-height: 60px; */
  }

 /*  #member .page-points .part-serial .btn-add {
    top: 10px;
  } */

  #main #points-input .notice {
    font-size: 18px;
  }

  #member #user-login-home .form .part-act {
    margin-top: 20px;
  }

  #member .page-points #points-input .part {
    margin-top: 20px;
    margin-bottom: 50px;
  }

  #member .page-points #points-input .part-serial {
    margin-top: 0;
    margin-bottom: 0;
  }

  #main.page-profile #profile .tabs-header {
    position: absolute;
    top: -55px;
    width: 100%;
    z-index: -1;
  }

  #main.page-profile #profile .tabs-header ul {
    text-align: left;
    padding-left: 40px;
  }

  #main.page-profile #profile .tabs-header li {
    width: 150px;
    vertical-align: top;
    margin-top: 5px;
  }

  #main.page-profile #profile .tabs-header .current {
    width: 170px;
    margin-top: 0;
  }

  #main.page-profile #profile .tabs-header a {
    height: 50px;
    font-size: 18px;
    line-height: 50px;
    text-align: center;
    border-radius: 20px 20px 0 0;
    box-shadow: rgba(0, 0, 0, 0.1) 0 0 30px;
  }

  #main.page-profile #profile .tabs-header .current a {
    height: 55px;
    font-size: 20px;
    line-height: 55px;
    background: #f7f7f6;
  }

  #main.page-profile #profile .tabs-content {
    padding-top: 50px;
  }

  #main > .container section,
  #social-network-binding {
    /*	width: 502px;*/
    width: 512px;
    margin: 0 auto;
  }

  #social-network-binding {
    font-size: 20px;
  }

  #main > .container #profile {
    width: 100%;
    
  }
  #main.page-profile > .container #profile{max-width: 660px;}
  

  #main.page-member > .container section {
    padding-top: 100px;
    padding-bottom: 100px;
  }

  #main.page-edit-profile #profile-information {
    padding-bottom: 40px;
  }

  #main.page-member section .text {
    font-size: 20px;
    font-weight: 400;
    margin-top: 1.35em;
  }

  #member .steps {
    top: 182px;
    right: 25px;
    left: auto;
    width: 24px;
  }

  #member .steps li {
    width: 1px;
    height: 36px;
    margin: 5px 0;
  }

  #member .steps li.point {
    width: 24px;
    height: 24px;
  }

  #main section h2 {
    font-size: 30px;
    margin-bottom: 18px;
  }

  #main #user-login-home h2 {
    font-size: 28px;
    margin-bottom: 0.25em;
  }

  #main section h2 span {
    font-size: 15px;
    margin-top: 1em;
  }

  #member .steps li.point:before {
    width: 6px;
    height: 6px;
    margin: -3px 0 0 -3px;
  }

  #member .steps li.point:after {
    border-width: 1px;
  }

  #member .form,
  #main.page-edit-profile #social-network-binding {
    font-size: 20px;
    letter-spacing: 0.125em;
  }

  #social-network-binding .note {
    font-size: 16px;
    margin-top: -10px;
    margin-bottom: 30px;
  }

  #member .field {
    min-height: 65px;
  }

  #member .field-input-text input {
    font-size: 20px;
    padding: 0 65px;
  }

  #member .field.error .input-text {
/*     padding: 0 65px; */
  }

  #member .field .note {
    /*	top: 21.5px;
	left: 200px;
	font-size: 16px;*/
    top: 35px;
    left: 67px;
    font-size: 14px;
    letter-spacing: 0.4em;
  }

  #member .field.error .note {
    left: 67px;
  }

  #member .icon-field {
    width: 65px;
  }

  #member #field-phone .input-text {
    padding-bottom: 20px;
  }

  #member #field-phone .icon-field {
/*     background-size: 20px auto; */
  }

  #member #field-password .icon-field {
    background-size: 20px auto;
  }

  #member #field-confirm .icon-field {
    background-size: 36px auto;
  }

  #member #field-name .icon-field {
/*     background-size: 24px auto; */
  }

  #member #field-email .icon-field {
    background-size: 30px auto;
  }

  #member .field-input-text {
    overflow: visible;
  }

  #member .error .icon-field {
    left: 5px;
  }

  #field-sms-verify .text.error {
    padding-left: 45px;
  }

  #field-sms-verify .text.error:after {
    top: 3px;
    left: 12px;
    width: 18px;
    height: 18px;
    margin-left: 0;
  }

  #field-phone .icon-complete {
    width: 65px;
    background-size: auto;
  }

  #member #field-password .input-text,
  #member #field-confirm .input-text {
    padding-right: 65px;
  }

  #member #field-password .btn,
  #member #field-confirm .btn {
    width: 65px;
    background-position: center -12px;
    background-size: 28px auto;
  }

  #member #field-password.field-password-show .btn,
  #member #field-confirm.field-password-show .btn {
    background-position: center -100px;
  }

  #member .form .list-check li {
    font-size: 16px;
    letter-spacing: 0.125em;
    line-height: 30px;
    padding-left: 55px;
    background-position: 20px center;
    background-size: 24px;
  }

  #member .form .warning {
    /* padding-bottom: 0.5em; */
  }

  #member .form .warning li {
/*     font-size: 18px; */
/*     padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 55px; */
/*     background-size: 18px auto; */
  }

  #member .error:after {
    top: 4.5px;
    left: -45px;
  }

  .list-input-checkbox.error:after {
    top: 4.5px;
    left: -45px;
  }

  #member .part-gender.error {
    padding-top: 0;
  }

  .field-gender .radio-label {
    font-size: 20px;
    line-height: 63px;
  }

  #field-male,
  #member .page-edit-profile #field-male {
    margin-left: 15px;
  }

  #field-female .input-radio + .radio-label {
    background-position: 25px -12px;
    background-size: 26px auto;
  }

  #field-female .input-radio:checked + .radio-label {
    background-position: 25px -96px;
  }

  #field-male .input-radio + .radio-label {
    background-position: 25px -8px;
    background-size: 24px auto;
  }

  #field-male .input-radio:checked + .radio-label {
    background-position: 25px -86px;
  }

  #member .form .btn {
    max-width: 200px;
    font-size: 18px;
    padding-top: 15px;
    padding-bottom: 15px;
  }

  #member .verified #btn-sms-verify-done {
    max-width: 265px;
  }

  #btn-sms-verify,
  #btn-sms-verify-done {
    margin-top: 25px;
    margin-bottom: 25px;
  }

  #field-sms-verify {
    padding-top: 15px;
    padding-bottom: 28.5px;
  }

  #field-sms-verify .text {
    font-size: 18px;
  }

  #field-sms-verify .code {
    margin-top: 15px;
  }

  #field-sms-verify .code input {
    /* width: 65px; */
    height: 75px;
    /* max-width: none; */
    margin: 0 7px;
  }

  #field-sms-verify .resend {
    font-size: 15px;
    padding-left: 25px;
    margin-top: 15px;
    margin-bottom: 15px;
    background-size: 17px auto;
  }

  #field-sms-verify .counter {
    font-size: 12px;
    margin-left: 0px;
  }

  #btn-verify-send {
    margin-top: -28.5px;
    margin-bottom: 45px;
  }

  .text-label {
    padding-left: 65px;
  }

  #member .part {
    margin-top: 60px;
    margin-bottom: 70px;
  }

  #member #reset-password .part {
    margin-top: 50px;
    margin-bottom: 50px;
  }

  #member #reset-password .part-act {
    margin-top: -10px;
  }

  #member #forgot-password .part {
/*     margin-bottom: 70px; */
  }

  #member #user-login .part {
    margin-top: 15px;
    margin-bottom: 15px;
  }

  #member .page-member .field .note {
    top: 24px;
    left: 130px;
  }

  #user-login .form .part-act .link,
  #user-login .form .part-act span {
    font-size: 15px;
  }

  #user-login .form .part-act .link::before {
    top: -1px;
    left: 2px;
    width: 23px;
    height: 26px;
  }

  #user-login .form .part-act .btn:first-child {
    margin-top: 40px;
  }

  #user-login .form .part-act .btn {
    margin-top: 25px;
  }

  #main #personal-information .form .part-birthday {
    margin-bottom: 15px;
  }

  /*#member .part-birthday .text-label {*/
  #member .part .text-label {
    padding-top: 18px;
    margin-bottom: 20px;
  }

  /*#member .part-birthday.error .text-label {*/
  #member .part.error .text-label {
    padding-left: 65px;
  }

  #member .part-birthday .icon-field,
  #member .part-address .icon-field {
    top: 6px;
    left: 0;
    background-size: 40px auto;
  }

  #member .part-address .icon-field {
    background-size: 34px;
  }

  #member .part-address .clearfix {
    font-size: 0;
    letter-spacing: 0;
  }

  #member .part-birthday.error .icon-field,
  #member .part-address.error .icon-field {
    left: 0;
  }

  #member #field-address-city {
/*     width: 180px; */
  }

  #member .field-select,
  #member .page-edit-profile .field-select {
/*     height: 65px;
    font-size: 20px;
    margin-right: 15px; */
  }

  .field-select select {
    letter-spacing: 0.25em;
    padding-left: 30px;
  }

  .field-select::after {
/*     top: 22.5px;
    width: 20px;
    height: 20px;
    font-size: 12px;
    line-height: 20px; */
  }

  .list-input-checkbox {
    font-size: 18px;
  }

  .list-input-checkbox .checkbox-label {
    padding-left: 55px;
  }

  .list-input-checkbox .checkbox-label:after {
    top: 0px;
    left: 21px;
    width: 24px;
    height: 22px;
    background-size: 24px auto;
  }

  
/* 
  #brands-preference .list-input-checkbox {
    width: 140px;
    height: 140px;
    margin-bottom: 75px;
  }

  #brands-preference .checkbox-label:after {
    top: 130px;
    height: 10px;
  }

  #brands-preference .checkbox-label:before {
    background-position: 104px 12px;
    background-size: 22px 18px;
  }

  #brands-preference
    .list-input-checkbox
    .input-checkbox:checked
    + .checkbox-label:before {
    background-position: 102px 10px;
  }

  #brands-preference .checkbox-label span {
    top: 140px;
    height: 60px;
    font-size: 17px;
    line-height: 60px;
    letter-spacing: 2px;
  }

  #brands-preference-gogotea .checkbox-label img {
    width: 90px;
  }

  #brands-preference-barbeer .checkbox-label img {
    width: 90px;
  }

  #brands-preference-ichiban .checkbox-label img {
    width: 90px;
  }

  #brands-preference-namacya .checkbox-label img {
    width: 90px;
  }

  #brands-preference-hyoketsu .checkbox-label img {
    width: 90px;
  }

  #brands-preference-greenlabel .checkbox-label img {
    width: 90px;
  }

  #brands-preference-special .checkbox-label img {
    width: 90px;
  }

  #brands-preference-honshibori .checkbox-label img {
    width: 90px;
  }
 */
/*   #brands-preference .list-input-checkbox.fltR,
  #brands-preference .list-input-checkbox.fltL {
    float: none;
    margin-right: auto;
    margin-left: auto;
  } */

  .brands-preference-empty:after {
    height: 10px;
  }

  #pop-signup-success,
  #pop-reset-password-success {
    width: 540px;
    padding: 70px 0 50px;
  }

  .pop-main .title {
    font-size: 26px;
  }

  .pop-main .text {
    font-size: 18px;
/*     letter-spacing: 0.5em; */
    line-height: 30px;
    margin-top: 0.75em;
  }

  #pop-signup-success .title img {
    width: 26px;
    margin-right: 16px;
    margin-left: -20px;
  }

  #member #pop-signup-success .btn {
    text-indent: 0.25em;
  }

  #member #pop-reset-password-success .btn {
    width: 220px;
  }

  #pop-signup-success .btn img {
    top: 16px;
    left: 40px;
    width: 24px;
  }

  .part-login-methods a {
    width: 300px;
    height: 60px;
    line-height: 58px;
  }

  .part-social-connect ul {
    font-size: 0;
    letter-spacing: 0;
    text-align: center;
  }

  .part-social-connect li {
    display: inline-block;
    text-align: left;
    margin: 0 5px;
  }

  .part-social-connect a {
    width: 225px;
    height: 50px;
    line-height: 48px;
  }

  .part-login-methods .btn-connect .icon {
    width: 70px;
    background-size: 22px auto;
  }

  .part-social-connect .btn-connect .icon {
    width: 65px;
    background-size: 22px auto;
  }

  .part-login-methods .btn-connect .title {
    width: 210px;
    font-size: 20px;
  }

  .part-social-connect .btn-connect .title {
    font-size: 16px;
  }

  .part-social-connect .btn-connect-facebook .title {
    width: 150px;
  }

  .part-social-connect .btn-connect-line .title {
    width: 135px;
  }

  .part-login-methods .btn-connect-facebook .icon,
  .part-social-connect .btn-connect-facebook .icon {
    background-size: 32px auto;
  }

  .part-login-methods .btn-connect-line .icon,
  .part-social-connect .btn-connect-line .icon {
    background-size: 45px auto;
  }

/* 
  #member #coupons .part {
    margin-top: 50px;
  } */

  .part-coupons-list .filter {
    width: 594px;
    height: 50px;
  }

  .part-coupons-list .filter li {
    font-size: 18px;
    font-weight: 400;
    line-height: 50px;
  }

/*   #main #points-redeem .part-list > .actions {
    width: 820px;
  } */

  #member .page-coupons #field-order::after,
  #member .page #field-order::after {
    top: 13px;
    right: 12px;
    width: 30px;
    height: 26px;
  }

  #member .page-coupons #field-order,
  #member .page #field-order {
    height: 50px;
  }

  #member .page-coupons #field-order select,
  #member .page #field-order select {
    font-size: 18px;
    padding-right: 52px;
  }

  

  #member #main #member-home,
  #member #main #receipt-home,
  #member #main .section-panel {
    padding-bottom: 55px;
  }

  #main #points-redeem .part-content {
    margin-top: 0;
  }

    #main #member-home .panel .points,
  #main #receipt-home .panel .points {
    font-size: 14px;
    /* top: 170px; */
  }

  #main #member-home.main .panel .points {
    top: 170px;
  }

  
  
  #member-home .part-basic .user .image,
  #receipt-home .part-basic .user .image {
    width: 95px;
    height: 95px;
    margin-top: 385px;
  }

  #member-home .part-basic .user .name,
  #receipt-home .part-basic .user .name {
    width: 250px;
    font-size: 16px;
    padding-top: 12px;
    padding-bottom: 12px;
  }

  #main .section-panel .panel h2 {
    font-size: 36px;
    margin-top: 72px;
    margin-bottom: 25px;
  }

  
  #main .section-panel .panel .points-title {
    font-size: 18px;
  }

  #main .section-panel .panel .points-title:before {
    width: 26px;
    height: 26px;
    margin-right: 5px;
  }

  #main .section-panel .panel .points-value {
    font-size: 34px;
    margin-top: 0;
  }

  #points-history .part-list {
    margin-top: 0;
  }

  .page-points .part-list .filter {
    width: 440px;
    height: 66px;
    margin-bottom: 50px;
    border-radius: 33px;
  }

  .page-points .part-list .filter ul:before {
    border-radius: 33px;
  }

  .page-points .part-list .filter li {
    font-size: 24px;
    line-height: 66px;
  }

  

  .part-list .item .point:after,
  .part-content .item .point:after {
    /* height: 110px; */
  }

  
  .part-basic .btn-logout {
    top: 37px;
    right: 31px;
    width: 60px;
    font-size: 14px;
    letter-spacing: 2px;
    text-indent: 2px;
    padding-top: 45px;
    padding-bottom: 10px;
    background-position: center 16px;
    background-size: 23px auto;
  }

  #member #member-home .part-portal,
  #member #receipt-home .part-portal,
  #member #receipt-home .part-portal--instructions,
  #member .section-panel .part-portal--instructions,
  #member .section-panel .part-portal {
    width: 700px;
    margin-bottom: 0px;
  }

  #member-home .part-portal a,
  .section-panel .part-portal a,
  #receipt-home .part-portal a {
    width: 127px;
    height: 148px;
    margin-bottom: 30px;
  }

  .section-panel .part-portal a {
    width: 300px;
  }

  .section-panel .part-portal .portal-input .image img {
    width: 54px;
  }

  .section-panel .part-portal .portal-history .image img {
    width: 52px;
  }

  .section-panel .part-portal .portal-products .image img {
    width: 54px;
  }

  /* #member-home .part-portal .new::after, */
  #member-home .part-portal .new .notif,
  #receipt-home .part-portal .new .notif {
    top: 8px;
    width: 56px;
    height: 30px;
  }

  #member-home .part-portal .image,
  .section-panel .part-portal .image,
  #receipt-home .part-portal .image {
    height: 104px;
  }

  #member-home .title,
  .section-panel .title {
    height: 40px;
    font-size: 17px;
    font-weight: 300;
    line-height: 40px;
  }

  #receipt-home .title {
    height: 40px;
    font-size: 15px;
    font-weight: 300;
    line-height: 40px;
  }

  #member #member-home .btn,
  #member #member-news .btn,
  #member #receipt-home .btn {
    width: 255px;
    font-size: 18px;
/*     padding-top: 13px; */
/*     padding-bottom: 13px; */
    margin: 0 15px;
  }
}

@media (min-width: 1200px) {
  .container-row,
  #main > .container,
  #main.page-member-home > .container-fluid,
  #main.page-points > .container-fluid {
    width: 1000px;
  }

  #member .steps {
    right: 70px;
    width: 32px;
  }

  #member .steps li {
    height: 45px;
  }

  #member .steps li.point {
    width: 32px;
    height: 32px;
  }

  #member .steps li.point:before {
    width: 8px;
    height: 8px;
    margin: -4px 0 0 -4px;
  }

  /* #main.page-member > .container #profile-information */
  #main.page-edit-profile > .container #profile-information,
  #social-network-binding {
    width: 725px;
    margin: 0 auto 0;
    /*157px*/
    /* margin-left: 255px; */
    padding-top: 15px;
    /* 170px */
    padding-bottom: 30px;
    /* 0 */
    /* padding-left: 50px; */
    /* border-left: #e0e0e0 1px solid; */
    box-sizing: content-box;
  }

  #social-network-binding {
    margin-top: 0;
  }

  #social-network-binding .note {
    position: absolute;
    bottom: -28px;
    padding-left: 5px;
    font-size: 14px;
    margin-top: 0;
    margin-bottom: 0;
    letter-spacing: 0.25em;
  }

  #social-network-binding .part {
    padding-bottom: 0;
    /* padding-bottom: 40px; */
    padding-left: 170px;
  }

/*   .page-edit-profile .text-label {
    position: absolute;
    top: 0;
    left: 0;
    font-size: 18px;
    letter-spacing: 0.4em;
  } */

/*   .page-edit-profile #profile-information .part {
    padding-bottom: 40px;
    padding-left: 170px;
  } */

  .part-social-connect ul {
    padding-top: 7.5px;
    padding-bottom: 7.5px;
    text-align: left;
  }

/*   .page-edit-profile #field-name {
    width: 365px;
  } */

  #member #profile-information .part-birthday .field-select {
/*     width: 175px; */
    /* margin-bottom: 0; */
  }

  #member .part-birthday .field-select:last-child {
/*     margin-right: 0; */
  }

  .page-edit-profile .field-input-radio {
/*     width: 175px; */
  }

  #main.page-edit-profile #profile-information h2 {
/*     position: absolute;
    top: 100px;
    left: 0;
    width: 100%; */
  }

  #member .page-edit-profile #profile-information .part-avatar {
    /* position: absolute;
	top: 220px; */
/*     left: 0;
    width: 270px;
    padding-left: 0; */
  }

  .page-edit-profile #profile-information .part .avatar .image:hover:before {
    z-index: 3;
  }

  #member .page-edit-profile #profile-information .field-input-text input,
  #member .page-edit-profile #profile-information .field-gender .radio-label,
  #member .page-edit-profile #profile-information .field-select select {
    font-size: 18px;
    letter-spacing: 0.4em;
  }

  #member .page-edit-profile #profile-information .part-act {
    position: absolute;
    bottom: 50px;
    width: auto;
    text-align: left;
  }

  #member .page-edit-profile #profile-information .part-act .btn {
    width: 247.5px;
  }

  #member-home .part-portal a,
  #receipt-home .part-portal a {
    /* .section-panel .part-portal a { */
    /* position: relative; */
    width: 114px;
    height: 134px;
    border-color: transparent;
    border-width: 0;
    border-top-width: 3px;
    /* border-right-width: 7.5px;
	border-left-width: 7.5px; */
    border-radius: 5px;
    background-color: #ffffff;
    transition: transform 0.15s ease-in;
  }

  #receipt-home .part-portal a {
    width: 120px;
    transform: scale(1.05);
  }

  /* #member-home .part-portal .new::after, */
  #member-home .part-portal .new .notif,
  #receipt-home .part-portal .new .notif {
    top: -10px;
    left: 10px;
    width: 46px;
    height: 20px;
  }

  #member-home .part-portal :not(.disabled) a:hover,
  #member-home .part-portal :not(.disabled) a:focus,
  #receipt-home .part-portal :not(.disabled) a:hover,
  #receipt-home .part-portal :not(.disabled) a:focus {
    /* .section-panel .part-portal a:hover,
.section-panel .part-portal a:focus { */
    border: #f00000 3px solid;
    background: #f00000;
    transform: scale(1.1);
    outline: 0;
  }

  #member-home .part-portal :not(.disabled) a:hover::before,
  #member-home .part-portal :not(.disabled) a:focus::before,
  #receipt-home .part-portal :not(.disabled) a:hover::before,
  #receipt-home .part-portal :not(.disabled) a:focus::before {
    /* .section-panel .part-portal a:hover::before,
.section-panel .part-portal a:focus::before { */
    content: none;
  }

  #member-home .part-portal :not(.disabled) a:hover .image,
  #member-home .part-portal :not(.disabled) a:focus .image,
  #receipt-home .part-portal :not(.disabled) a:hover .image,
  #receipt-home .part-portal :not(.disabled) a:focus .image {
    /* .section-panel .part-portal a:hover .image,
.section-panel .part-portal a:focus .image { */
    height: 94px;
  }

  #member-home .part-portal :not(.disabled) a:hover .title,
  #member-home .part-portal :not(.disabled) a:focus .title,
  #receipt-home .part-portal :not(.disabled) a:hover .title,
  #receipt-home .part-portal :not(.disabled) a:focus .title {
    /* .section-panel .part-portal a:hover .title,
.section-panel .part-portal a:focus .title { */
    height: 36px;
    color: #ffffff;
    font-size: 15px;
    font-weight: 300;
    line-height: 36px;
    border-top: none;
    margin: 0;
    background: #f00000;
  }

  #member-home .part-portal .image,
  #receipt-home .part-portal .image {
    /* .section-panel .part-portal .image { */
    height: 88px;
  }

  #member-home .title,
  #receipt-home .title {
    /* .section-panel .title { */
    position: relative;
    height: 36px;
    color: #f00000;
    font-weight: 500;
    line-height: 36px;
    border-top: #f00000 1px solid;
    margin: 0px;
    background: #ffffff;
  }

  #receipt-home .disabled .title {
    border-top: #cccccc;
    color: #cccccc;
  }

  #member-home .part-portal a .title::before,
  #receipt-home .part-portal a .title::before {
    /* .section-panel .part-portal a .title::before { */
    content: "";
    position: absolute;
    bottom: -7px;
    left: -7px;
    width: 114px;
    height: 7px;
    background: #f00000;
  }
  #member-home .part-portal .disabled a .title::before,
  #receipt-home .part-portal .disabled a .title::before {
    background: #cccccc;
  }

  #receipt-home .part-portal a .title::before {
    /* width: 120px; */
    width: 130px;
  }

  #member-home .part-portal a.portal-none .title::before,
  #receipt-home .part-portal a.portal-none .title::before {
    /* .section-panel .part-portal a.portal-none .title::before { */
    content: none;
  }

  #member #member-home .btn,.#member #member-news .btn {
    color: #ffffff;
    border: #f00000 1px solid;
    background-color: #f00000;
    box-shadow: #f00000 inset 0 0 0 1px;
  }

  #member #receipt-home .btn {
    /*#member .section-panel .btn*/
    color: #444444;
    /* border: #e5e5e5 1px solid; */
    background-color: #ffffff;
    box-shadow: #e5e5e5 inset 0 0 0 1px;
    transition: background-color 0.15s ease-in, box-shadow 0.15s ease-in;
  }

  #member #receipt-home .btn:hover,
  #member #receipt-home .btn:focus {
    /* #member .section-panel .btn:hover,
#member .section-panel .btn:focus { */
    color: #ffffff;
    /* border: #f00000 1px solid; */
    background-color: #f00000;
    box-shadow: none;
    box-shadow: #f00000 inset 0 0 0 1px;
  }

 /*  .page-coupons .actions {
    padding-top: 50px;
  }

  .page-coupons .list {
    padding-top: 0;
  }

  #pop-coupon:before {
    content: none;
  }

  #pop-coupon .coupon {
    width: 540px;
    margin-bottom: 0;
    padding: 50px 20px 30px;
    border-radius: 20px;
    transform: translateY(0);
    transition: none;
  }

  #pop-coupon .coupon::before {
    content: none;
  }

  #pop-coupon .coupon::after {
    content: none;
  }

  #pop-coupon .image {
    display: none;
  }

  #pop-coupon .info {
    display: none;
  }

  #pop-coupon .tips {
    display: block;
  }

  #pop-coupon .tips .title {
    font-size: 28px;
    text-indent: 0.4em;
    letter-spacing: 0.4em;
    text-align: center;
    padding: 0;
  }

  #pop-coupon .tips img {
    display: block;
    margin: 0 auto 25px;
  }

  #pop-coupon .tips .text {
    font-weight: 300;
    margin-top: 0.5em;
    line-height: 25px;
    letter-spacing: 0.15em;
  } */

  #pop-coupon .close,
  .pop-main .close {
    top: 20px;
    right: 20px;
    width: 40px;
    height: 40px;
    background-image: url(../images/common/back-2.svg);
  }

/*   #member .page-coupons #field-order {
    position: absolute;
    top: 0;
    right: 60px;
  } */
}

/*20220929 add*/



/*20221122 add*/

#member #member-news .articles-container {
  margin-bottom: 40px;
}
#member #member-news .articles-container h2 {
  color: #f00000;
  font-size: 40px;
  text-align: center;
  text-indent: unset;
  letter-spacing: 0em;
  margin-bottom: 16px;
}
#member #member-news .articles-container .showyouText {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 24px;
  color: #000;
  margin-bottom: 16px;
}

#member #member-news .articles-container .image {
  position: relative;
  /* display: inline-block; */
  display: block;
  overflow: hidden;
}
#member #member-news .articles-container li {
  margin-bottom: 25px;
}
#member #member-news .articles-container li .image img {
  width: 100%;
}

#member #member-news .articles-container li a .image img {
  transition: transform 0.5s ease-out;
}

#member #member-news .articles-container li a .image img {
  transition: transform 0.5s ease-out, opacity 0.75s ease-out;
}

#member #member-news .articles-container li a:hover .image img {
  transform: scale(1.1);
}

#member #member-news .articles-container h3 {
  height: 48px;
  font-size: 17px;
  line-height: 24px;
  padding-left: 0px;
  -webkit-line-clamp: 2;
  max-height: 58px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

#member #member-news .articles-container .info {
  position: relative;
  padding: 5px 0px 15px 0px;
  border-top: 0;
  border-radius: 0 0 20px 20px;
  background: #ffffff;
}

#member #member-news .articles-container .info .date {
  font-size: 12px;
  color: #b9b9b9;
}

/*20230421*/

.service-tip {
  padding-left: 1em;
  max-width: 80%;
  margin: 0 auto;
  margin-bottom: 50px;
}

.service-tip li {
  list-style-type: disc;
  color: #686666;
  margin-bottom: 1em;
}
.service-tip a {
  color: #686666;
  border-bottom: 1px solid;
}

/*0421*/
.part-title {
  text-align: left;
  font-size: 15px;
  color: #f00000;
  font-weight: bold;
  margin-bottom: 3em;
  margin-left: 10px;
}

.part-title::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 13px 7.5px 0 7.5px;
  border-color: #f00000 transparent transparent transparent;
  display: inline-block;
  margin-right: 0.5em;
}

#receipt-home .part-portal a {
  overflow: initial;
  position: relative;
}
#receipt-home .part-portal a {
  overflow: initial;
}
#receipt-home .part-portal .image {
  border-radius: 8px 8px 0 0;
}
.icon-bell {
  position: absolute;
  left: 100%;
  top: 0;
  z-index: 2;
  transform: translate(-50%, -50%);
}
.icon-bell img {
  width: 100%;
}
/* 
#manual-start form .input-row {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 35px;
}
#manual-start form .input-row label {
  font-size: 23px;
  width: calc(1.25em * 7);
  color: #f00000;
  letter-spacing: 0.25em;
}

#manual-start form .input-row > *:nth-child(2) {
  width: calc(100% - 1.25em * 7);
}

#manual-start form .receipt_number,
#manual-start .date,
#manual-start form .random_code {
  margin: 0px !important;
} */

#main form .actions {
  margin-top: 45px;
}
/* #receipt-scan-manual .input-direction {
  margin-bottom: 50px;
} */

.floating {
  display: none;
}

#member .btn.disable {
  background: #b3b3b3;
  pointer-events: none;
}

#receipt-home .disabled a {
  cursor: initial;
}
#receipt-home .disabled .image img {

  filter: grayscale(100%);

  filter: gray;
}

/*2404*/

.fixed-linebtn {
  width: 80px;
  position: fixed;
  bottom: 110px;
  right: 64px;
  z-index: 2;
}
.fixed-line-msg {
  background: #4cc764;
  position: absolute;
  bottom: calc(100% + 20px);
  width: 154px;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 8px;
  padding: 10px 0;
}
.fixed-line-msg::before {
  content: "";
  position: absolute;
  left: calc(50% - 7.5px);
  top: 100%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 7.5px 0 7.5px;
  border-color: #4cc764 transparent transparent transparent;
}
.fixed-line-msg p {
  font-size: 21px;
  line-height: 1.25em;
  color: #fff;
  text-align: center;
}

/* 2024  activity */

#member .part.part-activity {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 0 5px 0;
  margin-top: -30px;
  flex-direction: column;
}

.activity-main {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.activity-coin {
  position: relative;
  margin-bottom: 30px;
}
.activity-btn {
  width: 320px;
  height: 76px;
  background: url("../images/home/btn_mb.png") center center;
  background-size: contain;
  margin: -19px 0 10px 0;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  color: #fff;
  font-size: 24px;
  letter-spacing: 0.1em;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
  line-height: 1.25em;
  background-repeat: no-repeat;
}
.activity-btn:hover {
  transform: scale(1.05);
}
.activity-btn.disable {
  background-image: url("../images/home/btn_disable_mb.png");
  pointer-events: none;
  user-select: none;
}

.activity-btn span {
  font-size: 1.25em;
  letter-spacing: 0em;
  margin-left: 0.15em;
  background: linear-gradient(to bottom, #bf953f, #fcf6ba, #aa771c);
  background: -webkit-linear-gradient(to bottom, #bf953f, #fcf6ba, #aa771c);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}

.part-activity.finish .activity-main {
  display: none;
}

.activity-finish {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  display: none;
}
.finish .activity-finish {
  display: flex;
}

.activity-finish p {
  color: #f00000;
  font-size: 36px;
  letter-spacing: 0.1em;
  cursor: pointer;
  font-weight: 700;
  margin-bottom: 30px;
  text-align: center;
}

.activity-finish .coins {
  display: flex;
  justify-content: center;
  align-items: flex-start;
}

.activity-finish .coins span {
  position: relative;
  display: inline-block;
  transition: all 0.3s ease-in-out;
}
.activity-finish .coins span:nth-child(1) {
  margin-top: 45px;
  transition-delay: 0s;
  -webkit-transition-delay: 0s;
}
.activity-finish .coins span:nth-child(2) {
  margin: 0 -30px 0 -40px;
  z-index: 2;
  transition-delay: 0.3s;
  -webkit-transition-delay: 0.3s;
}
.activity-finish .coins span:nth-child(3) {
  margin-top: 45px;
  z-index: 3;
  transition-delay: 0.15s;
  -webkit-transition-delay: 0.15s;
}

.activity-finish .coins span {
  opacity: 0;
  transform: translateY(-100%);
}

.activity-finish.show .coins span {
  opacity: 1;
  transform: translateY(0%);
}

/* 2024/11/30 */
@keyframes coin-scale {
  0%,
  100% {
    transform: scale(1); /* 原始大小 */
  }
  50% {
    transform: scale(1.2); /* 放大 1.2 倍 */
  }
}

.activity-coin img {
  animation: coin-scale 2s infinite; /* 每 10 秒重複一次，無限循環 */
  transition: transform 0.5s ease; /* 平滑過渡效果 */
}
#main.page-member > .container #profile-information,
#main.page-profile > .container #profile{
  padding-top: 50px;
}
#main.page-profile > .container #profile .part{
  padding: 0;
  margin-top: 0;
}
/* 2025/06/30 手機版同意隱私權聲明偽元素隱藏*/

/* ============================================================
   Responsive Media Queries
   ============================================================ */

@media (min-width: 461px) {
#profile-information .tags-preference li {
    width: 47%;
    font-size: 16px;
    line-height: 40px;
    margin: 0.75% 1.5%;
    background-size: 14px 12px;
  }

.page-profile .actions .btn-connect {
    width: 40%;
    height: 65px;
    line-height: 65px;
  }

.page-profile .actions .btn-connect .title {
    width: auto;
    font-size: 20px;
    line-height: 63px;
    letter-spacing: 0.1em;
  }

.page-profile .actions .btn-connect-line .icon {
    position: relative;
    top: -4px;
    width: 24px;
    height: 24px;
    margin: 0;
    vertical-align: middle;
    background-size: auto 130%;
  }
}



@media (min-width: 768px) {
#member #main .part-signup-info {
    margin-top: 0;
    margin-bottom: 50px;
  }

#footer #warning span:first-child {
    transform: scaleY(1);
  }

  #footer #warning span:last-child {
    transform: scaleY(1);
  }
}

@media (min-width: 992px) {
#profile #profile-information .part .info .row-tags {
    border-color: #f7f7f6;
  }

  #profile-information .tags-preference li {
    width: 31%;
    font-size: 16px;
    line-height: 36px;
    margin: 0.75% 0.75%;
    background-size: 13px 12px;
  }

.page-profile .actions .btn-connect {
    width: 190px;
    height: 52px;
    font-size: 18px;
    line-height: 30px;
    padding-top: 10px;
    padding-bottom: 10px;
  }

.page-profile .actions .btn-connect .title {
    font-size: 18px;
    line-height: 28px;
  }

#member .new_layout .part-portal {
    display: flex !important;
    justify-content: center !important;
  }

  .new_layout .title {
    /* margin: 0 5.5px !important; */
    letter-spacing: 0.5px !important;
  }

.service-tip {
    width: 440px;
  }

#member #receipt-home .part-portal {
    width: 650px;
  }
  .icon-bell {
    width: 36px;
  }



  .section-panel .portal-manual .image img {
    width: calc(112px * 0.75);
    transform: translate(2.5%);
    margin-top: -26px;
  }

  .section-panel .portal-tradition .image img {
    width: calc(113px * 0.75);
    vertical-align: bottom;
    transform: translate(2.5%);
    margin-top: -26px;
  }

  #receipt-home.section-panel .portal-carrier .image img {
    width: calc(129px * 0.75);
    vertical-align: bottom;
    transform: translate(2.5%);
    margin-top: -26px;
  }

  .section-panel .portal-hint .image img {
    width: 47px;
  }

  .section-panel .portal-record-check .image img {
    width: 55px;
  }
  .section-panel .portal-redeem .image img {
    width: 66px;
  }

  .section-panel .portal-login-information .image img {
    width: 55px;
  }

  .part-portal .portal-mail .image img {
    width: 53px;
  }
}

@media (min-width: 1199px) {
#receipt-home .part-portal .portal-redeem .title {
    margin: 0 4px;
  }
}

@media (min-width: 1200px) {
html {
    height: 90px;
  }

#footer #warning {
    height: 90px;
  }

  #footer #warning span {
    font-size: 42px;
    font-weight: 200;
    line-height: 90px;
    letter-spacing: 20px;
  }

  #footer #warning span:first-child {
    padding-left: 20px;
  }

  #footer #warning span img {
    width: 40px;
    margin-top: -4px;
    margin-right: 20px;
  }

.new_layout .part-portal a {
    width: 130px !important;
  }

  .new_layout .part-portal a .title::before {
    width: 130px !important;
    left: -8px !important;
  }

#member #receipt-home .part-portal {
    width: 700px;
  }

  #receipt-home .part-portal a {
    overflow: initial;
    width: 130px;
    position: relative;
  }
  #receipt-home .part-portal a .title::before {
    /* width: 120px; */
    width: calc(100%);
    left: 0;
    border-radius: 0 0 10px 10px;
  }
  #receipt-home .part-portal :not(.disabled) a:hover {
    border-radius: 10px 10px 0 0;
  }
  #receipt-home .part-portal :not(.disabled) a:hover .title::before {
    width: calc(100% + 6px);
    left: -3px;
  }
}

@media (min-width: 0px) and (max-width: 460px) {
/*html {padding-top: 60px;}*/

  #header {
    height: 60px;
  }

  .navbar-brand {
    margin-top: 19px;
  }

  .navbar-brand img {
    width: 104px;
  }

  #member .steps li {
    width: 30px;
    margin: 0 5px;
  }

  #member .steps li.point {
    width: 30px;
    height: 30px;
  }

  #member .steps li.point:after {
    border-width: 1px;
  }

  #main section {
    padding: 90px 0;
  }

  #main.page-edit-profile #profile-information {
    padding-bottom: 0;
  }

  #main section h2 {
    font-size: 28px;
  }

  #main section h2 span {
    font-size: 16px;
    margin-top: 0.85em;
  }

  .text-label {
    padding-left: 70px;
  }

  #member .part {
    margin-bottom: 30px;
  }

    #member .form {
    font-size: 18px;
    letter-spacing: 0.2em;
  }

  #member .page-points .form {
    letter-spacing: 0.05em;
  }

  #member .field {
    min-height: 65px;
  }

  #field-birth-year {
    width: 100%;
  }

  .field-select::after {
/*     top: 20px;
    right: 15px;
    width: 25px;
    height: 25px;
    font-size: 12px;
    line-height: 25px; */
  }

  #field-address-city select,
  #field-address-area select {
    padding-left: 20px;
  }

  #member #field-address .input-text {
    padding: 0 20px;
  }

  .list-input-checkbox {
    font-size: 16px;
    letter-spacing: 0.25em;
  }

  .list-input-checkbox .checkbox-label:after {
    left: 21px;
    width: 26px;
    height: 24px;
    background-size: 25px auto;
  }

  #brands-preference .text {
    font-size: 14px;
    line-height: 20px;
    margin-top: 1em;
  }

/*   #brands-preference .list-input-checkbox {
    width: 105px;
    height: 105px;
    margin-bottom: 50px;
  }

  #brands-preference .checkbox-label:before {
    border-radius: 5px;
  }

  #brands-preference .checkbox-label:after {
    top: 100px;
    height: 5px;
  }

  #brands-preference .checkbox-label span {
    top: 105px;
    height: 40px;
    line-height: 40px;
    font-size: 13px;
    letter-spacing: 1px;
  }

  .list-input-checkbox .checkbox-label {
    line-height: 30px;
  }

  .list-input-checkbox .checkbox-label a {
    padding-bottom: 3px;
  } */

  .field-select select {
    letter-spacing: 0.25em;
    padding-left: 40px;
  }

  #member .field-select {
    height: 65px;
    margin-bottom: 15px;
  }

  #member .form .btn {
    max-width: 220px;
    font-size: 18px;
    text-indent: 0.2em;
    padding-top: 12.5px;
    padding-bottom: 12.5px;
  }

  #member .form .part-act .btn {
    letter-spacing: 0.2em;
  }

  #member #field-password .icon-field {
    background-size: 18px auto;
  }

  #member #field-confirm .icon-field {
    background-size: 32px auto;
  }

  #member #field-name .icon-field {
    background-size: 20px auto;
  }

  #member #field-email .icon-field {
    background-size: 24px auto;
  }

  #member .part-birthday.error .icon-field,
  #member .part-address.error .icon-field {
    left: 45px;
  }

  #member .part-address .icon-field {
    top: -14px;
  }

  #member .error .text-label {
    padding-left: 105px;
  }

  .field-gender .radio-label {
    line-height: 63px;
  }

  #field-female .input-radio + .radio-label {
    background-position: 18px -10px;
  }

  #field-female .input-radio:checked + .radio-label {
    background-position: 18px -95px;
  }

  #field-male .input-radio + .radio-label {
    background-position: 18px -10px;
  }

  #field-male .input-radio:checked + .radio-label {
    background-position: 18px -96px;
  }

  #btn-sms-verify,
  #btn-sms-verify-done {
    margin-top: 15px;
    margin-bottom: 15px;
  }

  #member .icon-field {
    width: 55px;
  }

  #member #field-phone .input-text {
    padding-bottom: 15px;
  }

  #member .field.error .input-text {
/*     padding-left: 74px; */
  }

  #member .field.error .note {
    left: 76px;
  }

  #member .error:after {
    left: 10px;
    display: none;
  }

  #member .error .icon-field {
    left: 27.5px;
  }

  #profile-information .part .avatar .upload {
    font-size: 20px;
    text-indent: 0em;
  }

  #field-sms-verify .text.error:after {
    top: 1px;
    left: -30px;
    width: 22px;
    height: 22px;
    margin-left: 0;
  }

  #member #field-password .input-text,
  #member #field-confirm .input-text {
    padding-right: 65px;
  }

  #user-login .form .part-act .link::before {
    top: 0;
  }

  #member #field-password .btn,
  #member #field-confirm .btn {
    width: 65px;
    background-position: center -10px;
    background-size: auto;
  }

  #member #field-password.field-password-show .btn,
  #member #field-confirm.field-password-show .btn {
    background-position: center -95px;
  }

  #member .form .list-check {
    font-size: 14px;
    margin-top: 10px;
  }

  #member .form .list-check li {
    line-height: 34px;
  }

  #member .form .warning {
    font-size: 14px;
  }

  #member .form .warning li {
/*     padding: 8px 0;
    background-position: 20px center;
    background-size: 22px; */
  }

  #field-phone .icon-complete {
    width: 55px;
  }

  #member .field-input-text input {
    font-size: 18px;
    letter-spacing: 0.25em;
    padding: 0 55px;
  }

  #member .field .note {
    top: 36px;
    left: 57px;
    font-size: 12px;
  }

  #member .page-member .field .note {
    top: 24px;
    left: 108px;
  }

  #field-sms-verify {
    padding-top: 25px;
    padding-bottom: 26px;
  }

  #field-sms-verify .text {
    font-size: 18px;
  }

  #field-sms-verify .code {
    margin-top: 20px;
  }

  #field-sms-verify .code input {
    /* width: 14%; */
    height: auto;
    padding: 5% 0;
  }

  #field-sms-verify .resend {
    font-size: 16px;
    margin-top: 15px;
    margin-bottom: 20px;
    padding-left: 30px;
    background-size: 20px 20px;
  }

  #field-sms-verify .counter {
    font-size: 14px;
    padding: 2px 4px 2px 7px;
    margin-left: 5px;
  }

  #btn-verify-send {
    margin-top: -26px;
  }

/*   #brands-preference .checkbox-label:before {
    background-position: 80px 8px;
    background-size: 16px 14px;
  }
 */
/*   #brands-preference
    .list-input-checkbox
    .input-checkbox:checked
    + .checkbox-label:before {
    background-position: 78px 6px;
  } */
  /* 

  #brands-preference-gogotea .checkbox-label img {
    width: 75%;
  }

  #brands-preference-barbeer .checkbox-label img {
    width: 75%;
  }

  #brands-preference-ichiban .checkbox-label img {
    width: 75%;
  }

  #brands-preference-namacya .checkbox-label img {
    width: 75%;
  }

  #brands-preference-hyoketsu .checkbox-label img {
    width: 75%;
  }

  #brands-preference-greenlabel .checkbox-label img {
    width: 75%;
  }

  #brands-preference-special .checkbox-label img {
    width: 75%;
  }
 */
  #brands-preference .list-input-checkbox {
/*     border-radius: 5px; */
  }

  .brands-preference-empty:after {
    height: 5px;
  }
  #pop-account-upgrade-success,
  #pop-signup-success,
  #pop-reset-password-success {
    width: 310px;
    padding: 40px 0;
  }

  .pop-main .title {
    font-size: 20px;
  }

  .pop-main .text {
    font-size: 14px;
    line-height: 24px;
  }

  #pop-signup-success .title img {
    width: 24px;
  }

  #pop-signup-success .btn img {
    top: 12px;
    left: 60px;
    width: 28px;
    margin-right: 10px;
  }

  #main.page-member section#user-login h2,
  #main.page-member section#user-login-home h2,
  #main.page-edit-profile #profile-information h2,
  #main.page-line-binding #line-binding h2 {
    letter-spacing: 1vw;
    text-indent: 1vw;
  }

  #main #user-login-home .text,
  #main #forgot-password .text {
    font-size: 16px;
  }

  #main #forgot-password .text {
    line-height: 1.25em;
    padding-top: 0px;
  }

  #member .tabs-header a {
    font-size: 16px;
    letter-spacing: 0.15em;
    text-indent: 0.15em;
  }

  #profile-information .part .avatar {
    width: 150px;
  }

  #profile-information .part .avatar .image {
    width: 150px;
    height: 150px;
  }

  #profile-information .part .info {
    font-size: 16px;
  }

  #profile-information .part .info .row {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  #profile-information .part .actions .btn {
    width: 60%;
    font-size: 16px;
    line-height: 50px;
    margin-bottom: 10px;
  }

  #main section .text,
  #main #brands-preference .text {
    font-size: 16px;
    line-height: 28px;
  }

  .part-login-methods a,
  .part-social-connect a {
    width: 100%;
    overflow: hidden;
  }

  #member .page-member .field {
    margin-right: 10px;
    margin-left: 10px;
  }

  #member .page-edit-profile #profile-information .field {
    margin-right: 0;
    margin-left: 0;
  }

  .btn-connect {
    height: 70px;
  }

  .btn-connect .icon {
    width: 30%;
    background-size: 27.5% auto;
  }

  .btn-connect-facebook .icon {
    background-size: 37% auto;
  }

  .btn-connect-line .icon {
    background-size: 50% auto;
  }

  .btn-connect .title {
    width: calc(70% - 30px);
    font-size: 20px;
    line-height: 68px;
  }

  .page-member #user-login .field .note {
    letter-spacing: 0.25em;
  }

  #user-login .form .part-act .link,
  #user-login .form .part-act span {
    font-size: 16px;
  }

  #user-login .form .part-act .btn {
    margin-top: 30px;
  }
}

@media (max-width: 399px) and (min-width: 370px) {
#footer #warning span {
    font-size: 22px;
    letter-spacing: 3px;
  }

  #footer #warning span:first-child {
    padding-left: 3px;
  }

  #footer #warning span img {
    margin-right: 3px;
  }
}

@media (max-width: 449px) and (min-width: 400px) {
#footer #warning span {
    font-size: 23px;
  }
}

@media (max-width: 509px) and (min-width: 450px) {
#footer #warning span {
    font-size: 26px;
  }
}

@media (min-width: 480px) and (max-width: 768px) {
#member #receipt-home .part-basic {
    height: 234px;
  }

  #member #receipt-home .part-basic .panel {
    height: 144px;
  }

  /* .section-panel .part-basic .extra {
    top: -150px;
  } */

  .part-portal .portal-points .image img {
    width: 50px;
  }

  .part-portal .portal-invoice .image img {
    width: 45px;
  }
}

@media (min-width: 768px) and (max-width: 992px) {
#main #member-home .panel .points,
  #main #receipt-home .panel .points {
    top: 280px;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
#member #receipt-home .part-basic {
    height: 360px;
  }

  #member #receipt-home .part-basic .panel,
  #member #member-home .part-basic .panel {
    height: 250px;
  }

  .section-panel .portal-scan .image img {
    width: 87px;
  }

  .section-panel .portal-manual .image img {
    /* width: 73px; */
    width: 108px;
  }

  .section-panel .portal-tradition .image img {
    width: 84px;
  }

  .section-panel .portal-carrier .image img {
    width: 140px;
  }

  .section-panel .portal-redeem .image img {
    width: 90px;
  }

  .section-panel .portal-hint .image img {
    width: 100px;
  }

  .section-panel .portal-login-information .image img {
    width: 85px;
  }

  .section-panel .portal-record-check .image img {
    width: 96px;
  }

  .part-portal .portal-points .image img {
    width: 80px;
  }

  .part-portal .portal-invoice .image img {
    width: 70px;
  }

.section-panel .portal-manual .image img {
    width: calc(112px * 1);
    transform: translate(0%);
    margin-top: 0px;
  }

  .section-panel .portal-tradition .image img {
    width: calc(113px * 1);
    vertical-align: bottom;
    transform: translate(2.5%);
    margin-top: 0px;
  }

  #receipt-home.section-panel .portal-carrier .image img {
    width: calc(112px * 1);
    vertical-align: middle;
    transform: translate(0%);
    margin-top: 0px;
  }
  .part-portal .portal-mail .image img {
    width: 77px;
  }
  .icon-bell {
    width: 53px;
  }
}

@media (max-width: 991px) {
#main.page-points section .back {
    height: 34px;
    line-height: 34px;
    padding-left: 42px;
  }

#main.page-points section .back::after {
    width: 34px;
    height: 34px;
    background-size: auto 34px;
  }

.part-title {
    font-size: 23px;
    letter-spacing: 0.25em;
  }
/*   #manual-start form .input-row {
    align-items: flex-start;
    flex-direction: column;
    width: 80% !important;
  } */
  /* #manual-start form .input-row label {
    font-size: 23px;
    width: calc(1.25em * 7);
    color: #f00000;
    letter-spacing: 0.25em;
  }

  #manual-start form .input-row > *:nth-child(2) {
    width: 100%;
  }
  #manual-start form .receipt_number,
  #manual-start .date,
  #manual-start form .random_code {
    margin: 0 !important;
  } */

  #main form .actions {
    margin-top: 4.5rem;
  }
  .floating {
    display: block;
    position: fixed;
    right: 15px;
    bottom: 80px;
    z-index: 9;
  }
  .fixed-linebtn {
    bottom: 120px;
  }
}

@media (max-width: 769px) {
#member .list-input-checkbox.error:after {
    display: none;
  }
}

@media (max-width: 768px) {
#member #receipt-home .part-basic {
    height: 242px;
  }

  #member #receipt-home .part-basic .panel,
  #member #receipt-home .part-basic .panel {
    height: 138px;
  }

#member #member-news .articles-container ul {
    display: flex;
    flex-wrap: wrap;
  }
  #member #member-news .articles-container li {
    margin: 0px 0 15px 0;
    padding: 0;
  }
  #member #member-news .articles-container li:nth-child(odd) {
    padding-right: 5px;
  }
  #member #member-news li:nth-child(even) {
    padding-left: 5px;
  }
}

@media (max-width: 767px) {
#receipt-home div.disabled a .title {
    background: #cccccc;
  }
  .section-panel .portal-manual .image img {
    width: calc(112px * 1);
    transform: translate(0%);
    margin-top: -26px;
  }

  .section-panel .portal-tradition .image img {
    width: calc(113px * 1);
    vertical-align: bottom;
    transform: translate(2.5%);
    margin-top: -26px;
  }

  #receipt-home.section-panel .portal-carrier .image img {
    width: calc(112px * 1);
    vertical-align: middle;
    transform: translate(0%);
    margin-top: -26px;
  }
  #receipt-home .part-portal a {
    margin-bottom: 40px;
  }

  .icon-bell {
    width: 53px;
  }
  #member #user-login .form .warning li{
    background-size: 3rem;
    padding-left: 4rem;

  }
}

@media (max-width: 640px) {
.fixed-linebtn {
    width: 50px;
    position: fixed;
    /*bottom: 70px;*/
    right: 30px;
    z-index: 2;
  }
  .fixed-line-icon img {
    width: 100%;
  }
  .fixed-line-msg::before {
    left: calc(50% - 3.75px);
    border-width: 5px 3.75px 0 3.75px;
  }
  .fixed-line-msg {
    bottom: calc(100% + 10px);
    width: 100px;
    border-radius: 8px;
    padding: 5px 0;
  }
  .fixed-line-msg p {
    font-size: 12px;
  }

#member #member-home .part-basic {
    height: auto;
  }
  #member .part.part-activity {
    margin-top: 5vw;
  }
  .activity-btn {
    width: 65.78125vw;
    height: 17.875vw;
    font-size: 4vw;
  }
}

@media (max-width: 480px) {
#main #member-home .panel .points,
  #main #receipt-home .panel .points {
    top: 142px;
  }
  #main #member-home.serial-panel .panel .points {
    top: 0;
  }

.section-panel .part-basic .extra,
  #member #member-home .part-basic .extra {
    top: -70px;
  }

#member #member-home .part-portal,
  #member #receipt-home .part-portal,
  #member #receipt-home .part-portal--instructions,
  #member .section-panel .part-portal,
  #receipt-home .part-portal {
    width: 76vw !important;
  }
  #member-home .part-portal a,
  .section-panel .part-portal a,
  #receipt-home .part-portal a,
  .new_layout .part-portal a {
    width: 35vw !important;
    height: calc(30vw + 38px);
  }
  #member-home .part-portal .image,
  #receipt-home .part-portal .image,
  .section-panel .part-portal .image {
    height: 30vw;
  }
  .icon-bell {
    width: 10vw;
  }
  #member-home .part-portal .image img,
  #receipt-home .part-portal .image img,
  .section-panel .part-portal .image img {
    min-width: 50%;
  }
    #main section .panel > h2 {
    font-size: 28px;
    text-align: left;
    padding-left: 0.5em;
    color: #4e4e4e;
  }
/*   #member .section-panel .part-basic .panel {
    height: 138px;
  } */
  #member-home .part-basic .user {
    position: absolute;
    top: 0px;
    left: 0%;
    width: 100%;
    height: 138px;
    margin: 0px;
    border-radius: 0;
    background: transparent;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    z-index: 1;
    margin-left: 20px;
  }
  #member-home .part-basic .user .image {
    margin: 0;
  }
  #member-home .part-basic .user .name {
    margin: 0;
    margin-bottom: 2em;
    width: initial;
    margin-left: 1em;
    font-size: 19px;
  }
  #main #points-redeem.section-panel .panel .points,
  #main #member-home.serial-panel .panel .points,
  #main #member-home.main .panel .points {
    top: initial;
    padding-top: 5.5em;
    text-align: left;
    padding-left: 115px;
    display: flex;
    align-items: center;
  }
  #main #points-redeem.section-panel .panel .points,
  #main #member-home.serial-panel .panel .points,
  #main #points-history .panel .points {
    position: absolute;
    right: 15px;
    padding-top: 0;
    top: 25px;
    text-align: right;
    padding-left: 120px;
    display: flex;
    align-items: flex-end;
    flex-direction: column;
  }
  #main #points-redeem.section-panel .panel .points-value,
  #main #member-home.serial-panel .panel .points-value,
  #main section .panel .points-value {
    margin-left: 0.25em;
    font-size: 35px;
  }
  #member-home .part-basic .user .image,
  #receipt-home .part-basic .user .image {
    width: 74px;
    height: 74px;
  }
  #receipt-home .title {
    font-size: 15px;
  }
}

@media (max-width: 478px) {
.new_layout .part-portal a {
    width: 120px !important;
  }

  .new_layout .title {
    /* margin: 0 5.5px !important; */
    letter-spacing: 1px !important;
  }
  #member #member-home .part-basic .panel {
    height: 138px;
  }
}

@media (max-width: 375px) {
#main section .panel > h2 {
    font-size: 24px;
  }
  
  #member-home .part-basic .user {
    height: 118px;
  }
  #member-home .part-basic .user .image {
    margin: 0;
  }
  #member-home .part-basic .user .name {
    margin: 0;
    margin-bottom: 2em;
    width: initial;
    margin-left: 1em;
    font-size: 19px;
  }
  #main #points-redeem.serial-panel .panel .points,
  #main #member-home.serial-panel .panel .points,
  #main #member-home.main .panel .points {
    top: initial;
    padding-top: 4.5em;
    text-align: left;
    padding-left: 100px;
    display: flex;
    align-items: center;
  }
  #main #points-redeem.serial-panel .panel .points-value,
  #main #member-home.serial-panel .panel .points-value,
  #main section .panel .points-value {
    margin-left: 0.25em;
  }
  .part-basic .btn-logout {
    font-size: 16px;
    margin-top: 15px;
  }

  #member-home .part-basic .user .image,
  #receipt-home .part-basic .user .image {
    width: 60px;
    height: 60px;
  }

.section-panel .portal-manual .image img {
    margin-top: -36px;
  }

  .section-panel .portal-tradition .image img {
    margin-top: -36px;
  }

  #receipt-home.section-panel .portal-carrier .image img {
    margin-top: -26px;
  }
}

@media (max-width: 369px) {
#footer #warning span {
    font-size: 19px;
    letter-spacing: 2px;
  }

  #footer #warning span:first-child {
    padding-left: 2px;
  }

  #footer #warning span img {
    margin-right: 2px;
  }
}

@media (max-width: 320px) {
#receipt-home .part-portal {
    width: 264px !important;
  }
  .icon-bell {
    width: 8vw;
  }
  .section-panel .portal-manual .image img {
    width: calc(112px * 0.75);
    transform: translate(2.5%);
    margin-top: -26px;
  }

  .section-panel .portal-tradition .image img {
    width: calc(113px * 0.75);
    vertical-align: bottom;
    transform: translate(2.5%);
    margin-top: -26px;
  }

  #receipt-home.section-panel .portal-carrier .image img {
    width: calc(129px * 0.75);
    vertical-align: bottom;
    transform: translate(2.5%);
    margin-top: -26px;
  }
}
