@charset "UTF-8";
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video,
input[type="text"],
input[type="submit"],
input[type="password"] {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

img {
  vertical-align: bottom;
}

/* clearfix */
.clearfix {
  zoom: 1;
  position: relative;
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.clearfix > * {
  float: left;
}

html > * {
  color: #000;
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka,
    "MS Pゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
}

body {
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka,
    "MS Pゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif !important;
  font-size: 62.5%;
  overflow: scroll;
  text-align: left;
  background: #fff;
  padding-bottom: 108px;
}

p {
  text-align: left;
}

.wrapper {
  /*width: 100%;*/
  margin: 20px 0;
}

.wrapper .inner {
  width: 90%;
  margin: 0 auto;
}

h1 {
  border-left: 4px solid #000;
  font-size: 2.1em !important;
  font-weight: bold;
  margin-bottom: 25px !important;
  padding: 2px 0 1px 13px;
  vertical-align: middle;
}

.android h1 {
  padding: 4px 0 1px 13px;
}

h2 {
  border-left: 3px solid;
  font-weight: bold;
  font-size: 1.8em;
  line-height: 1.2;
  padding-left: 13px;
  position: relative;
  margin: 25px 0;
  text-align: left;
  vertical-align: middle;
}

h2:after {
  border-left: 5px solid #a3a5a6;
  content: "";
  height: calc(100% + 2px);
  left: -4px;
  position: absolute;
  top: -1px;
  text-align: left;
  width: 100%;
  z-index: 0;
}

h2:before {
  border-left: 3px solid #fff100;
  content: "";
  height: calc(100%);
  left: -3px;
  position: absolute;
  top: 0px;
  text-align: left;
  width: 100%;
  z-index: 1;
}

.box-wrap {
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}

a {
  color: #000;
}

a.bl {
  text-decoration: underline;
  padding: 0 20px 0 18px;
  background: url("../img/common/ico_arrow_right.png") center right no-repeat;
  background-size: contain;
}

a.bl:hover {
  text-decoration: none;
}
a.bl.reverse {
  text-decoration: underline;
  padding: 0 18px 0 20px;
  background: url("../img/common/ico_arrow_left.png") center left no-repeat;
  background-size: contain;
}
a.btn {
  width: 100%;
  padding: 10px 0;
  text-align: center;
  border-radius: 10px;
}

footer {
  border-top: 1px solid #c4c4c4;
  color: #6b6b6b;
  margin-top: 20px;
  padding: 13px 0 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: none;
}

footer p {
  font-size: 1.6em;
  text-align: center;
  padding: 7px 0;
}

footer p a {
  text-decoration: none;
  color: #6b6b6b;
  padding: 0 3px;
}

.sectionmemberflowWrp .head-text {
  color: #5d5d5d;
  font-size: 1.2em;
  line-height: 1.8;
  margin-bottom: 20px;
}

.sectionmemberflowWrp ul {
  border-top: 2px solid #000;
  justify-content: space-between;
}

.sectionmemberflowWrp ul li {
  color: #707070;
  font-size: 1.4em;
  padding: 26px 0 20px;
  position: relative;
}

.sectionmemberflowWrp ul li:before {
  border-style: solid;
  border-width: 9px 5px 0 5px;
  border-color: #000 transparent transparent transparent;
  content: "";
  height: 0;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 12px;
  width: 0;
}

.sectionmemberflowWrp ul li.current {
  color: #000;
  font-weight: bold;
}

.sectionmemberflowWrp ul li.current:before {
  border-style: solid;
  border-width: 9px 5px 0 5px;
  border-color: #a3a5a6 transparent transparent transparent;
  content: "";
  height: 0;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 11px;
  width: 0;
}

.sectionmemberflowWrp ul li.current:after {
  border-style: solid;
  border-width: 7px 4px 0 4px;
  border-color: #fff100 transparent transparent transparent;
  content: "";
  height: 0;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 12px;
  width: 0;
}

.logo {
  background: url("../img/common/logo-renewal.png") center no-repeat;
  background-size: contain;
  height: 66px;
  margin: 25px auto 35px;
  width: 70%;
}

.promo-logo {
  background: url("../img/common/promo-logo-yellow.png") center no-repeat;
  background-size: contain;
  height: 132px;
  margin: 10px auto 5px;
  width: 100%;
}

.req {
  color: #cf2f25;
  padding-left: 10px;
  font-weight: normal;
  font-size: 0.8em;
}

.mt10 {
  margin-top: 10px;
}

.mt20 {
  margin-top: 20px;
}

.mt30 {
  margin-top: 30px;
}

.mt40 {
  margin-top: 40px;
}

.mb10 {
  margin-bottom: 10px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb40 {
  margin-bottom: 40px;
}

.mr5 {
  margin-right: 5px;
}

.red {
  color: #cf2f25;
}

.green {
  color: #82bf6e;
}

.gray {
  color: #707070;
}

.bold {
  font-weight: bold;
}

.strikethrough {
  text-decoration: line-through;
}

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

.f20 {
  font-size: 2em;
}

.f18 {
  font-size: 1.8em;
}

.f17 {
  font-size: 1.7em;
}
.f16 {
  font-size: 1.6em !important;
}

.f14 {
  font-size: 1.4em;
}

.f12 {
  font-size: 1.2em;
}

.f16px {
  font-size: 16px !important;
}
.newlogWrap {
  border-bottom: 4px solid #000;
  margin-bottom: 25px;
  padding-bottom: 25px;
}

.newlogWrap a {
  font-size: 1.8em;
}

.snslogWrap ul li {
  width: 23%;
  margin-bottom: 10px;
}

.snslogWrap ul li:last-child {
  margin-right: 0;
}

.snslogWrap ul li a {
  text-decoration: none;
  text-align: center;
  display: block;
  width: 100%;
  padding-top: 50%;
  padding-bottom: 13%;
  box-shadow: 1px 1px 1px 0 #adadad;
  box-sizing: border-box;
  border-radius: 6px;
  font-size: 1.4em;
}

.snslogWrap ul li.s-ya a {
  background: url("../img/social/ico_yahoo_renewal.png") top 40% center
    no-repeat;
  background-size: 45%;
  border: 2px solid #e51d37;
  color: #e51d37;
}

.snslogWrap ul li.s-fb a {
  background: url("../img/social/ico_facebook_renewal.png") top 35% center
    no-repeat;
  background-size: 35%;
  border: 2px solid #2e5095;
  color: #2e5095;
}

.snslogWrap ul li.s-go a {
  background: url("../img/social/ico_gplus_renewal.png") top 35% center
    no-repeat;
  background-size: 35%;
  border: 2px solid #3e82f1;
  color: #3e82f1;
}

.snslogWrap ul li.s-li a {
  background: url("../img/social/ico_line_renewal.png") top 35% center no-repeat;
  background-size: 35%;
  border: 2px solid #00c300;
  color: #00c300;
}

.snslogWrap ul li.s-ap a {
  background: url("../img/social/ico_apple_renewal.png") top 35% center
    no-repeat;
  background-size: 35%;
  border: 2px solid #000000;
  color: #000000;
}

.maillogWrap .maillog-lead {
  font-size: 1.4em;
  text-align: center;
  padding-top: 15px;
}

.maillogWrap .maillog-lead a {
  text-align: center;
  padding-top: 15px;
  line-height: 30px;
}

.maillog-lead a {
  text-decoration: underline;
}

.capWrap {
  margin-top: 30px;
  position: relative;
}

.capWrap .txt {
  width: calc(100% - 70px);
  font-size: 1.2em;
  color: #545757;
  line-height: 1.5;
  letter-spacing: -0.4px;
}

.capWrap .privacy {
  background: url("../img/common/ico_privacy.png") top center no-repeat;
  background-size: 30px;
  color: #919191;
  font-size: 1.2em;
  padding: 35px 0 10px;
  position: absolute;
  text-align: center;
  width: 75px;
  height: 60px;
  right: -10px;
  top: 0;
}

.capWrap .privacy span {
  font-size: 1em;
}

form {
  text-align: center;
}

form div {
  position: relative;
}

input {
  background: #edeff0;
  position: relative;
}

input[type="text"],
input[type="password"],
input[type="tel"],
input[type="email"],
input[type="number"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: 1px solid #000;
  -webkit-appearance: none;
  box-sizing: border-box;
  font-size: 1.8em;
  margin-bottom: 20px;
  padding: 17px 10px 7px;
  vertical-align: middle;
  width: calc(100% - 10px);
}

input[type="text"]:focus,
input[type="password"]:focus,
input[type="tel"],
input[type="email"],
input[type="number"]:focus {
  background: #fff !important;
}

button {
  border: 1px solid #a3a5a6;
  border-radius: 10px;
  box-shadow: 2px 2px 2px 0 #adadad;
  font-size: 2.1em;
  padding: 10px;
  width: 100%;
}

button.btn-primary {
  background: #ffff00;
}

.error-form {
  background: #ffdad7 !important;
}

.error-alert {
  background: #cf2f25;
  border-radius: 8px;
  color: #fff;
  font-size: 1.4em;
  margin: 0 auto 20px;
  width: calc(100% - 10px);
  padding: 5px 0;
  text-align: center;
}

.error-label {
  background: #fff;
  bottom: 0;
  border: 1px solid #000;
  box-shadow: 0 0 3px 1px #adadad;
  font-size: 1.6em;
  padding: 6px 5px 8px;
  right: 0;
  position: absolute;
  z-index: 100;
  line-height: inherit;
}

.error-label span {
  background: #ff0019;
  color: #fff;
  margin-right: 10px;
  padding: 3px 7px;
  position: relative;
}

.error-label:after {
  background: url("../img/common/ico_error-alert.png") center bottom no-repeat;
  background-size: contain;
  content: "";
  position: absolute;
  width: 30px;
  height: 20px;
  top: -18px;
  left: 0px;
}

.sectionregistWrp li {
  margin-bottom: 15px;
  width: 100%;
}

.sectionregistWrp li a {
  border-radius: 7px;
  border-style: solid;
  border-width: 2px;
  box-shadow: 1px 1px 1px 0 #adadad;
  box-sizing: border-box;
  display: block;
  clear: both;
  color: #ffffff;
  font-size: 1.5em;
  line-height: 38px;
  text-decoration: none;
  width: 100%;
}

.sectionregistWrp li a::before {
  background-position: center;
  background-repeat: no-repeat;
  background-size: 30px;
  border-radius: 5px 0 0 5px;
  content: "";
  display: block;
  float: left;
  height: 38px;
  margin-right: 10px;
  padding: 0 10px;
  width: 30px;
}

.sectionregistWrp li.new-ya a {
  background-color: #ff0033;
  border-color: #ff0033;
}

.sectionregistWrp li.new-ya a::before {
  background-image: url("../img/social/ico_yahoo_renewal.png");
  background-size: 36px;
}

.sectionregistWrp li.new-fb a {
  background-color: #1877f2;
  border-color: #1877f2;
}

.sectionregistWrp li.new-fb a::before {
  background-image: url("../img/social/ico_facebook_renewal.png");
  background-size: 30px;
}

.sectionregistWrp li.new-go a {
  background-color: #4285f4;
  border-color: #4285f4;
}

.sectionregistWrp li.new-go a::before {
  background-color: #ffffff;
  background-image: url("../img/social/ico_gplus_renewal.png");
  background-size: 26px;
}

.sectionregistWrp li.new-li a {
  background-color: #00c300;
  border-color: #00c300;
}

.sectionregistWrp li.new-li a::before {
  background-image: url("../img/social/ico_line_renewal.png");
  background-size: 30px;
}

.sectionregistWrp li.new-ap a {
  background-color: #000000;
  border-color: #000000;
}

.sectionregistWrp li.new-ap a::before {
  background-image: url("../img/social/ico_apple_renewal.png");
  background-size: 32px;
}

.sectionregistWrp li.new-ma {
  border: 1px solid #a3a5a6;
  border-radius: 7px;
  margin-bottom: 30px;
}

.sectionregistWrp li.new-ma a {
  background-color: #fff100;
  border-color: #fff100;
  color: #000000;
}

.sectionregistWrp li.new-ma a::before {
  background-image: url("../img/social/ico_mail.png");
  background-size: 35px;
}

.member_input h2 {
  margin: 25px 0 15px;
}

.member_input form {
  text-align: left;
}

.member_input input {
  margin-bottom: 0;
}

.member_input input[type="text"].input_nickname {
  width: 80%;
}

.member_input input[type="radio"] {
  font-size: 1.8em;
}

.member_input input[type="radio"]:checked:after {
  background-color: #000000;
}

.member_input input[type="checkbox"] {
  margin: 0;
  padding: 0;
  background: none;
  border: 0;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 20px;
  height: 20px;
}

.member_input select {
  -moz-appearance: button;
  -webkit-appearance: button;
  appearance: button;
  border-radius: 0;
  border: 0;
  box-sizing: content-box;
  background: none transparent;
  box-sizing: border-box;
  color: inherit;
  font-size: 1.8em;
  margin: 0;
  padding: 0 20px 0 0;
  vertical-align: middle;
}

.member_input label {
  position: relative;
  /*border-bottom: 1px solid #000;*/
  font-weight: normal;
}

.member_input label:after {
  /*border-style: solid;*/
  border-width: 10px 5px 0 5px;
  border-color: #001933 transparent transparent transparent;
  content: "";
  height: 0;
  right: 10px;
  position: absolute;
  width: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

.member_input .signup-flow-inner {
  width: calc(100% - 36px);
  margin: 0 18px 15px 18px;
}

/* form p {
  font-size: 1.2em;
  line-height: 1.6;
} */

.check_on {
  background: url("../img/common/ico_check.png") center no-repeat;
  background-size: contain;
  display: inline-block;
  height: 30px;
  width: 20%;
  vertical-align: middle;
}

.birthdateWrap {
  justify-content: space-between;
  width: 80%;
}

.birthdateWrap label {
  width: calc(33.3% - 10px);
}

.sexWrap input {
  margin-right: 5px !important;
  margin-left: 20px;
}

.sexWrap_register_form span {
  margin-right: 15px !important;
}

.sexWrap_social_register_form span {
  margin-right: -1px !important;
}

.sexWrap input:first-child {
  margin-left: 0;
}
.familyWrap label {
  font-size: 1.2em;
  padding-left: 10px;
  text-decoration: none;
  border-bottom: none;
  line-height: 1.6;
}

.familyWrap label:after {
  display: none;
}

.familyWrap input {
  margin-right: 5px !important;
}
.campaignWrap label span {
  display: inline-block;
}

input[type="checkbox"] {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

input[type="checkbox"] + span::before,
input[type="checkbox"] + span::after {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  content: "";
  box-sizing: border-box;
}

input[type="checkbox"] + span::before {
  z-index: 0;
  background-color: transparent;
  width: 19px;
  height: 19px;
  border: 1px #000 solid;
  /*border-radius: 5px;*/
}

input[type="checkbox"] + span::after {
  z-index: 1;
  margin: 5px 8px;
  width: 6px;
  height: 9px;
}

input[type="checkbox"]:checked + span::before {
  background-color: #fff;
}

input[type="checkbox"]:checked + span::after {
  background: url("../img/common/ico_check.png") no-repeat;
  background-size: contain;
  width: 20px;
  height: 20px;
}

.pageErrorLogWrap {
  margin: 20px 0 20px 0;
}

footer .inner {
  text-align: center;
  border-top: none !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* 共有の戻るボタン */

.fnavi {
  position: fixed;
  bottom: 0;
  width: 100%;
  border-top: 1px solid #545757;
  z-index: 1000;
  font-size: 1rem;
}

.fnavi > ul {
  width: 100%;
  overflow: hidden;
  background-color: #f7f7f8;
  border-top: 1px solid #feef00;
}

.fnavi > ul > li {
  float: left;
  width: 50%;
  text-align: center;
  position: relative;
  font-size: 80%;
}

.fnavi > ul > li > a {
  display: block;
  height: 21px;
  padding-top: 50px;
  color: #777;
  text-decoration: none;
  font-weight: normal;
}

.fnavi > ul > li > a::before {
  content: "";
  display: block;
  position: absolute;
}

.fnavi-top > a::before {
  background-size: contain;
  background-image: url("../img/icon-home.svg");
  background-repeat: no-repeat;
  width: 32px;
  height: 32px;
  top: 12px;
  left: 50%;
  margin-left: -13px;
}

.fnavi-back > a::before {
  border-top: 3px solid #545757;
  border-right: 3px solid #545757;
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
  width: 9px;
  height: 9px;
  top: 20px;
  left: 50%;
  margin-left: -6px;
}
/* SPDR 03: member register input */
.member_input .signupflowIn {
  width: calc(100% - 36px);
  margin: 0 18px 15px 18px;
}
.member_input .notes {
  font-size: 1.2em;
  line-height: 1.6;
}
.member_input .notes p {
  display: inline-block;
  width: calc(100% - 15px);
  vertical-align: top;
}
.member_input footer {
  border: none;
  text-align: center;
}

/* ニックネームのチェック */
.check-on {
  display: none;
}
.check-on.valid {
  background: url("../img/common/ico_check.png") center no-repeat;
  display: inline-block;
  background-size: contain;
  height: 30px;
  width: 20%;
  vertical-align: middle;
}
.check-on.invalid {
  background: url("../img/common/ico_check_error.png") center no-repeat;
  display: inline-block;
  background-size: contain;
  height: 30px;
  width: 20%;
  vertical-align: middle;
}

.signupflowWrap:last-child {
  border-bottom: 3px solid #000;
  margin-bottom: 20px;
}

.birthdateWrap {
  justify-content: space-between;
  width: 80%;
}
.birthdateWrap label {
  width: calc(33.3% - 10px);
}

.sexWrap label:nth-child(2) input {
  margin-left: 20px;
}

.prefecturesWrap label {
  width: 65%;
}

.professionWrap label {
  width: 50%;
}

.familyWrap span {
  line-height: 2;
}
.familyWrap label {
  font-size: 1.2em;
  padding-left: 10px;
  text-decoration: none;
  border-bottom: none;
  line-height: 1.6;
}
.familyWrap label:after {
  display: none;
}
.familyWrap input:nth-of-type(3) {
  margin-left: 10px;
}

.campaignWrap label,
.privacyWrap label {
  border-bottom: 0;
}
.campaignWrap label:after,
.privacyWrap label:after {
  display: none;
}
.campaignWrap span,
.privacyWrap span {
  display: inline-block;
  padding-left: 30px;
  font-size: 1.2em;
  line-height: 1.6;
}

.privacyWrap label {
  display: block;
  width: 245px;
  margin: auto;
}
.privacyWrap ul {
  display: flex;
  justify-content: space-between;
  margin: 20px auto 30px;
  width: 95%;
}
.privacyWrap a {
  font-size: 1.2em;
  text-decoration: underline;
}

.sectionselectIn label {
  border-bottom: 1px solid #000;
  display: block;
  position: relative;
}
.sectionselectIn label:after {
  border-style: solid;
  border-width: 10px 5px 0 5px;
  border-color: #001933 transparent transparent transparent;
  bottom: 0;
  content: "";
  height: 0;
  margin: auto;
  position: absolute;
  right: 10px;
  top: 0;
  width: 0;
}
.sectionselectIn .textlabel {
  font-size: 1.8em;
  position: absolute;
  text-align: center;
  width: calc(100% - 20px);
  z-index: 1;
}
.sectionselectIn .fix-shadow {
  width: 100%;
  text-align: center;
  padding-left: 10%;
  background: none;
}

.sectionselectIn .fix-shadow:focus {
  outline: none;
}

.sectionselectIn .select::-ms-expand {
  display: none;
}
.sectionselectIn .select:focus {
  color: #fff;
  opacity: 1;
  z-index: -1;
}

/*checkboxカスタマイズ*/
.checkbox-input {
  display: none;
}

.checkbox-parts {
  padding-left: 20px;
  position: relative;
}

.checkbox-parts::before {
  border: 1px solid #000;
  bottom: 0;
  content: "";
  display: block;
  height: 15px;
  left: 0;
  margin: auto;
  position: absolute;
  top: 0;
  width: 15px;
}

.checkbox-input:checked + .checkbox-parts::after {
  bottom: 0;
  border-bottom: 4px solid #53b332;
  border-right: 4px solid #53b332;
  content: "";
  display: block;
  height: 14px;
  left: 6px;
  margin: auto;
  position: absolute;
  transform: rotate(40deg);
  top: -3px;
  width: 7px;
}

.member_input input[type="text"].input-nickname {
  width: 80%;
}
/* SPDR 03: member register input - VNDEV custom */
form .notes p {
  font-size: inherit;
}

input[type="radio"] {
  -webkit-appearance: radio;
  box-sizing: border-box;
}

input,
select {
  vertical-align: initial;
}
/* member_sms_cerify
-------------------------------------------------------------*/
.member_attestation .smsstep-number {
  align-items: center;
  border: 2px solid #fff100;
  border-radius: 5px;
  box-sizing: border-box;
  box-shadow: 1px 0px 2px #adadad;
  display: flex;
  justify-content: center;
  margin: 20px 0 15px;
  padding: 7px 15px;
}
.member_attestation .smsstep-number .smsstep-number-head {
  border: 1px solid #fff100;
  font-size: 1.6em;
  margin-right: 15px;
  text-align: center;
}
.member_attestation .smsstep-number .smsstep-number-head span {
  background: #fff100;
  display: block;
}
.member_attestation .smsstep-number a {
  font-weight: bold;
  font-size: 3em;
  text-decoration: underline;
}
.member_attestation a.btn {
  background: #fff100;
  border: 1px solid #a3a5a6;
  border-radius: 14px;
  box-shadow: 2px 2px 2px 0 #adadad;
  box-sizing: border-box;
  display: block;
  font-size: 2.1em;
  min-height: 54px;
  padding: 16px 10px;
  text-decoration: none;
  width: 100%;
}
.member_attestation ol li {
  padding: 20px 0 10px;
}
.member_attestation h3 {
  align-items: center;
  display: flex;
  font-size: 1.8em;
  margin-bottom: 10px;
}
.member_attestation h3 img {
  display: inline-block;
  margin-right: 10px;
}

.member_attestation .sectionsmsIn p {
  font-size: 1.2em;
  line-height: 1.6;
}
.member_attestation h2 {
  margin: 25px 0 15px;
}
.member_attestation input {
  margin-bottom: 0;
}
.member_attestation .head-text.red {
  color: #cf2f25;
}

.member_attestation .head-text {
  margin-top: 10px;
}
.member_attestation .notes {
  line-height: 1.8;
}
.member_attestation .notes p {
  display: inline-block;
  vertical-align: top;
  width: calc(100% - 15px);
}
.member_attestation footer {
  border: none;
  text-align: center;
}
/* SPDR 03: social register input - VNDEV custom */
.head-text a {
  text-decoration: underline;
}
.social_input .signupflowWrap .social-signup-info {
  font-size: 1.8em;
}

/* member_registration_confirm
  ---------------------------------------------------------- */
.member-registration-confirm h2 {
  margin: 25px 0 15px;
}
.member-registration-confirm .head-text {
  color: #cf2f25;
}
.member-registration-confirm .signupflowIn p {
  font-size: 1.8em;
}
.member-registration-confirm footer {
  border: none;
  text-align: center;
}
.signupflowWrap .signupflowIn {
  margin: 0 18px 15px 19px;
  width: calc(100% - 36px);
}

/* Member register temporary complete
  */
.member-registration-confirm h2 {
  line-height: 1.2;
}

/* member_registration_complete
  ---------------------------------------------------------- */
.member-registration-complete .signupflowWrap {
  margin: 20px 0 40px 0;
}
.member-registration-complete .signupflowWrap p {
  font-size: 1.2em;
  line-height: 1.8;
  text-align: center;
}
.member-registration-complete .signupflowWrap .f14 {
  font-size: 1.4em;
}
.member-registration-complete footer {
  border: none;
  text-align: center;
}

/* member_attestation
  ---------------------------------------------------------- */
.member_attestation h2 {
  margin: 25px 0 15px;
}
.member_attestation h3 {
  align-items: center;
  display: flex;
  font-size: 1.8em;
  margin-bottom: 10px;
}
.member_attestation h3 img {
  display: inline-block;
  margin-right: 10px;
}
.member_attestation form {
  text-align: left;
}
.member_attestation input {
  margin-bottom: 0;
}
.member_attestation .head-text {
  margin-top: 10px;
}
.member_attestation .head-text.red {
  color: #cf2f25;
}
.member_attestation .error-alert {
  margin: 0 auto 10px;
}
.member_attestation .notes {
  line-height: 1.8;
}
.member_attestation .notes p {
  display: inline-block;
  vertical-align: top;
  width: calc(100% - 15px);
}
.member_attestation .sectionsmsIn p {
  font-size: 1.2em;
  line-height: 1.6;
}
.member_attestation ol li {
  padding: 20px 0 10px;
}
.member_attestation footer {
  border: none;
  text-align: center;
}
.member_attestation a.btn {
  background: #fff100;
  border: 1px solid #a3a5a6;
  border-radius: 14px;
  box-shadow: 2px 2px 2px 0 #adadad;
  box-sizing: border-box;
  display: block;
  font-size: 2.1em;
  min-height: 54px;
  padding: 16px 10px;
  text-decoration: none;
  width: 100%;
}
.member_attestation .smsstep-number {
  align-items: center;
  border: 2px solid #fff100;
  border-radius: 5px;
  box-sizing: border-box;
  box-shadow: 1px 0px 2px #adadad;
  display: flex;
  justify-content: center;
  margin: 20px 0 15px;
  padding: 7px 15px;
}
.member_attestation .smsstep-number a {
  font-weight: bold;
  font-size: 3em;
  text-decoration: underline;
}
.member_attestation .smsstep-number .smsstep-number-head {
  border: 1px solid #fff100;
  font-size: 1.6em;
  margin-right: 15px;
  text-align: center;
}
.member_attestation .smsstep-number .smsstep-number-head span {
  background: #fff100;
  display: block;
}

.android .member_attestation h3 img {
  margin-bottom: 3px;
}
.infoinputIn {
  margin: 0 18px 0 19px;
  width: calc(100% - 36px);
  text-align: left;
}

/* point_exchange_input
-------------------------------------------------------------*/
.sectionIn {
  margin: 0 auto;
  width: 90%;
}
.infoinputWrap:first-child h2 {
  margin: 25px 0 15px;
}
.infoinputIn {
  margin: 0 18px 0 19px;
  width: calc(100% - 36px);
  text-align: left;
}
.infoinputIn p {
  font-size: 1.8em;
}
.sectionselectIn {
  border-radius: 6px;
  cursor: pointer;
  overflow: hidden;
  position: relative;
}
.sectionselectIn .select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: block;
  border: none;
  cursor: pointer;
  opacity: 0;
  overflow: hidden;
  position: relative;
  width: 100%;
  z-index: 2;
}
.point_exchange_input select {
  font-size: 1.8em;
}
.mb10 {
  margin-bottom: 10px;
}
.mt20 {
  margin-top: 20px;
}
.point_exchange_input a.bl {
  display: inline-block;
}
a.bl.reverse {
  text-decoration: underline;
  padding: 0 18px 0 20px;
  background: url(../img/ico_arrow_left.png) center left no-repeat;
  background-size: contain;
}
a.bl {
  text-decoration: underline;
  padding: 0 20px 0 18px;
  background: url(../img/ico_arrow_right.png) center right no-repeat;
  background-size: contain;
}
.point_exchange_input .amount p {
  text-align: center;
}
.point_exchange_input .notes {
  line-height: 1.8;
  font-size: 1.2em;
}
.point_exchange_input .notes p {
  display: inline-block;
  font-size: 1em;
  vertical-align: top;
  width: calc(100% - 15px);
}
.point_exchange_input input {
  margin-bottom: 15px;
}
.point_exchange_input input.grey {
  background-color: rgb(237, 239, 240);
}
.point_exchange_input input.inline {
  width: 21%;
  padding: 5px 7px 5px;
  text-align: center;
}
.inputnumber {
  width: calc(100% - 7.5px);
}
.inputnumber input {
  margin-right: 10px;
}
.point_exchange_input input {
  margin-bottom: 15px;
}
.box-wrap {
  display: flex;
  align-items: center;
  margin-top: 20px;
  justify-content: space-between;
}

/* member_attestation_complete
  ---------------------------------------------------------- */
.member_attestation_complete a.btn {
  background: #fff100;
  border: 1px solid #a3a5a6;
  border-radius: 14px;
  box-shadow: 2px 2px 2px 0 #adadad;
  box-sizing: border-box;
  display: block;
  font-size: 2.1em;
  min-height: 54px;
  padding: 16px 10px;
  text-decoration: none;
  width: 100%;
}
.member_attestation_complete a.bl {
  display: inline-block;
  font-size: 1.6em;
  margin-bottom: 10px;
  text-align: center;
}
.member_attestation_complete p {
  font-size: 1.2em;
  line-height: 1.6;
}
.member_attestation_complete .completeWrap h2 {
  margin: 5px 0 25px;
}
.member_attestation_complete .complete-maintxt {
  font-size: 1.8em;
  text-align: center;
}
.member_attestation_complete footer {
  font-size: 1.2em;
}

.sectionIn {
  margin: 0 auto;
  width: 90%;
}

.bnrWrap a {
  display: inline-block;
  text-align: center;
  width: 100%;
}

.adWrap {
  padding: 20px 0 5px;
}
.adWrap .adIn {
  padding: 20px 0;
}
.adWrap .bnr-line {
  border-top: 2px solid #000;
  margin: auto;
  width: 90%;
}

.ads-detail {
  width: 96%;
  margin: auto;
}

.ads-detail .point-detail {
  color: #ff067b;
  font-weight: 700;
}

.ads-first {
  padding: 3%;
}

.adsf-content {
  background: url(../img/pollet/pollet_01.png) 100% 0% no-repeat;
  background-size: 30% auto;
  padding-right: 31%;
}

.adsf-content p {
  font-size: 1.2em;
  line-height: 1.5;
  margin-bottom: 10px;
}

.ads-first > div > p:nth-child(2) {
  font-size: 1.1em;
}

.stamprally {
  padding: 0 0 0 3%;
}

.stamprally table td {
  vertical-align: top;
}

p.stamprally-content {
  font-size: 1.2em;
  line-height: 1.5;
  margin-bottom: 5px;
}

.stamprally-content-img {
  width: 100%;
}

p.stamprally-content-note {
  font-size: 1.1em;
  line-height: 1.5em;
}

.stamprally a {
  background: #f1813a;
  color: #fff;
  padding: 10px 0;
  border-radius: 5px;
}

.stamprally-content-pink {
  color: #ff067b;
  font-weight: 700;
}

.ads-second {
  background-color: #f2f2f2;
  padding: 3% 3% 0 3%;
  margin-top: 5%;
  border: 1px;
  border-radius: 5px;
}

.ads-content {
  font-size: 1em;
  line-height: 1.5;
}

.pollet-explain {
  color: #e16e6a;
  font-size: 0.8em;
  margin-bottom: 2%;
  font-weight: 700;
}

.ads-instruction {
  margin-top: 20px;
  padding-bottom: 20px;
  line-height: 1.8;
  padding-right: 20%;
  font-size: 1em;
  background: url(../img/pollet/pollet_03.png) 100% 100% no-repeat;
  background-size: 19% auto;
}

.ads-instruction table {
  border-collapse: separate;
  border-spacing: 0 3px;
  font-weight: bold;
}

.ads-instruction p {
  font-size: 1em;
}

.ads-radius {
  white-space: nowrap;
}

.ads-radius span {
  padding: 2px 3px 2px 3px;
  background: #e06a65;
  color: white;
  border-radius: 14px;
}

.ads-indent {
  padding-left: 1%;
}

/* member_attestation_complete02
  ---------------------------------------------------------- */
.member_attestation_complete .sectioncontentsWrap {
  overflow: hidden;
}

.complete02Wrap .complete-txt {
  position: relative;
  text-align: center;
}
.complete02Wrap .complete-txt:before {
  background: url("../img/common/bg_complete02_left.png") top left no-repeat;
  background-size: contain;
  content: "";
  height: 185px;
  position: absolute;
  left: -25px;
  top: -15px;
  width: 100px;
}
.complete02Wrap .complete-txt:after {
  background: url("../img/common/bg_complete02_right.png") top right no-repeat;
  background-size: contain;
  content: "";
  height: 185px;
  right: -25px;
  position: absolute;
  top: -15px;
  width: 100px;
}
.complete02Wrap p {
  text-align: left;
  letter-spacing: -1px;
}
.complete02Wrap .f20 {
  font-size: 2em;
}
.complete02Wrap .main-text,
.complete02Wrap .main-text p {
  text-align: center;
}
.member_attestation_complete .swiper-container {
  margin-top: 20px;
}

.c-movie {
  position: relative;
  padding-bottom: 56.25%;
}

.c-movie iframe {
  position: absolute;
  width: 100%;
  height: 100%;
}

/* member_attestation_error
  ---------------------------------------------------------- */
.member_attestation_error .head-text {
  color: #000;
  margin: 20px 0;
}
.member_attestation_error dl {
  font-size: 1.2em;
  line-height: 1.8;
  margin-bottom: 20px;
}
.member_attestation_error dt {
  color: #cf2f25;
  font-weight: bold;
}
.member_attestation_error p {
  font-size: 1.2em;
  line-height: 1.8;
}
.member_attestation_error a.btn {
  background: #fff100;
  border: 1px solid #a3a5a6;
  border-radius: 14px;
  box-shadow: 2px 2px 2px 0 #adadad;
  box-sizing: border-box;
  display: block;
  font-size: 2.1em;
  min-height: 54px;
  padding: 16px 10px;
  text-decoration: none;
  width: 100%;
}
.member_attestation_error footer {
  border: none;
  text-align: center;
}

/* member_input_error
  ---------------------------------------------------------- */
.member_input_error .error-alert {
  font-size: 1.2em;
}
.member_input_error .birthdateWrap {
  text-align: left;
}
.member_input_error .current-error {
  background: url("../img/ico_check_error.png") center no-repeat;
  background-size: contain;
  display: inline-block;
  height: 30px;
  vertical-align: middle;
  width: 20%;
}
.member_input_error .familyWrap .error-alert {
  margin: 0 auto 10px;
}

/* point_passbook
  ---------------------------------------------------------- */
.point_passbook .bnrWrap {
  border-bottom: 2px solid #000;
  padding: 0 0 20px;
}
.point_passbook .adWrap {
  padding: 0 0 5px;
}
/*
point_details
-------------------------------*/
.point_details .box-wrap {
  align-items: center;
}
.point_details ul {
  justify-content: space-between;
  margin: 15px 0;
  padding-top: 15px;
}
.point_details ul li:first-child {
  padding: 0 0px 0 0;
  width: 24%;
}
.point_details ul li:last-child {
  border-right: none;
  padding: 0 0 0 0px;
}
.point_details ul li {
  border-right: 1px solid #000;
  padding: 0 2px;
  width: 35.5%;
  height: 4.5em;
}
.point_details .f14 {
  line-height: 1.6;
}
.point_details .exchangeWrap {
  border-bottom: 2px solid #000;
  padding-bottom: 20px;
}
.point_details .flow {
  text-align: center;
}
.acmenu {
  margin: 20px 0 10px;
}
.acmenu dt {
  border: 1px solid #a3a5a6;
  box-sizing: border-box;
  box-shadow: 1px 1px 1px 0 #adadad;
  font-size: 1.6em;
  position: relative;
  padding: 13px 10px;
  width: 100%;
}
.acmenu dt:after {
  background: url(../img/common/ico_arrow_left.png) center no-repeat;
  background-size: contain;
  bottom: 0;
  content: "";
  height: 14px;
  margin: auto;
  position: absolute;
  right: 10px;
  top: 0;
  transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg);
  width: 10px;
}
.acmenu dd {
  display: none;
  font-size: 1.2em;
  padding-top: 10px;
}
.slender {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.point_details a.bl {
  display: inline-block;
}
a.bl.reverse {
  text-decoration: underline;
  padding: 0 18px 0 20px;
  background: url(../img/common/ico_arrow_left.png) center left no-repeat;
  background-size: contain;
}
.gift-contents dl {
  text-align: left;
}
.gift-contents dt {
  font-weight: bold;
  font-size: 1.4em;
  margin-bottom: 8px;
}
.gift-contents dd {
  font-size: 1.2em;
}
.gift-contents .gift-img {
  margin-right: 20px;
}
.gift-contents .gift-txt div {
  align-items: baseline;
  margin-bottom: 5px;
}
.gift-contents .gift-txt div p:first-child {
  margin-right: 7px;
  position: relative;
  padding-right: 16px;
}
.gift-contents .gift-txt div p:first-child:before {
  border-style: solid;
  border-width: 5px 0 5px 9px;
  border-color: transparent transparent transparent #a3a5a6;
  bottom: 0;
  content: "";
  height: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 0;
}
.gift-contents .gift-txt div p:first-child:after {
  border-style: solid;
  border-width: 4px 0 4px 7px;
  bottom: 0;
  border-color: transparent transparent transparent #fff100;
  content: "";
  height: 0;
  margin: auto;
  position: absolute;
  right: 1px;
  top: 0;
  width: 0;
}
.verybold {
  font-weight: bold;
  text-shadow: 0.3px 0.5px 0, -0.3px -0.5px 0;
  filter: drop-shadow(0.3px 0.5px 0);
}

.lightred {
  color: #ff0019;
}
.f17 {
  font-size: 1.7em;
}
.point_details div.adIn {
  margin-left: 20px;
  margin-right: 20px;
}
.point_details div.adIn h2:after,
.point_details div.adIn h2:before {
  border-left: none;
}
.point_details div.adIn h2 {
  border-left: none;
  color: #707070;
  font-size: 11pt;
  -webkit-font-smoothing: antialiased;
  padding: 0px;
}

.sectionbooktWrp dl {
  border-bottom: 1px solid #9a9a9a;
  padding: 15px 20px 10px;
}
.sectionbooktWrp dl:last-of-type {
  border-bottom: 2px solid #000;
}
.sectionbooktWrp dl dt {
  font-size: 1.6em;
  font-weight: normal;
  line-height: 1;
}
.sectionbooktWrp dl dd {
  line-height: 1;
}
.sectionbooktWrp dl dd p {
  padding-top: 10px;
  text-align: right;
}
.sectionbooktWrp dl dd span {
  display: inline-block;
  padding: 0 5px 0 25px;
}
.sectionbooktWrp dl:first-of-type {
  padding: 0 20px 10px;
  margin-bottom: 0;
}
.sectionbooktWrp dl:first-of-type span {
  background: url("../img/ico_point01.png") center left no-repeat;
  background-size: contain;
  line-height: 1;
}
.sectionbooktWrp p {
  font-size: 1.4em;
}

.usagehistoryWrap {
  font-size: 1.4em;
  padding: 20px 0 0;
}

.select-head {
  padding: 0 10px;
}
.select-head dl {
  align-items: center;
  margin-top: 20px;
  justify-content: space-between;
}
.select-head dt {
  font-size: 1.2em;
  font-weight: normal;
  line-height: 1;
}
.select-head dd label {
  position: relative;
  font-weight: normal;
}
.select-head dd label:after {
  border-style: solid;
  border-width: 7px 5.5px 0 5.5px;
  border-color: #bec0c2 transparent transparent transparent;
  bottom: 0;
  content: "";
  height: 0;
  margin: auto;
  top: 0;
  right: 0;
  position: absolute;
  width: 0;
}
.select-head dd label select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: #fff;
  border: none;
  font-size: 1em;
  padding-right: 20px !important;
  width: auto !important;
  direction: rtl;
}

.uh-content {
  margin: 20px 0;
}
.uh-content li {
  border-top: 1px solid #9a9a9a;
  padding: 15px 0;
}
.uh-content .uh-title,
.uh-content .uh-main,
.uh-content .uh-mid-content {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
}
.uh-content .uh-title span,
.uh-content .uh-mid-content span {
  font-size: 0.8em;
  min-width: 60px;
  padding: 2px 0px;
  text-align: center;
}
.uh-content .uh-title span.validity,
.uh-content .uh-mid-content span.validity {
  border: 1px solid #11809f;
  color: #11809f;
}
.uh-content .uh-title span.invalid,
.uh-content .uh-mid-content span.invalid {
  border: 1px solid #000;
}
.uh-content .uh-title span.judging,
.uh-content .uh-mid-content span.judging {
  border: 1px solid #a3a5a6;
  color: #a3a5a6;
}
.uh-content .uh-title span.unused {
  border: 1px solid #ffaa00;
  color: #ffaa00;
}
.uh-content .uh-title span.used {
  border: 1px solid #a3a5a6;
  color: #a3a5a6;
}
.uh-content .uh-title + p span {
  padding-right: 5px;
}
.uh-content .uh-detail {
  color: #676767;
  margin-top: 10px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.uh-content .uh-detail span {
  padding-left: 10px;
}
.uh-content .uh-detail span a {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  border-bottom: solid 1px #000;
  color: #676767;
  text-decoration: none;
}

.notesWrap {
  margin-bottom: 20px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.notesWrap li {
  font-size: 1.4em;
  line-height: 1.6;
}
.notesWrap + p a {
  background: url("../img/common/ico_arrow_right.png") center right 15px
    no-repeat;
  background-size: 10px;
  border: 1px solid #a3a5a6;
  box-shadow: 2px 2px 2px 0 #adadad;
  display: block;
  font-size: 1.6em;
  padding: 15px 10px;
  text-decoration: none;
}

.flex-start {
  justify-content: flex-start;
}

/* emoney_query
  ---------------------------------------------------------- */
.emoney_query h2 {
  margin: 25px 0 10px;
}
.emoney_query .f18 {
  font-size: 1.8em;
}
.emoney_query p {
  font-size: 1.2em;
  line-height: 1.6;
}
.emoney_query .notes p {
  display: inline-block;
  width: calc(100% - 15px);
}
.emoney_query input {
  margin-bottom: 10px;
}
.emoney_query footer p {
  font-size: 1.6em;
  text-align: center;
  padding: 7px 0;
}

.detailIn {
  width: 90%;
  margin: auto;
}

/* emoney_id
  ---------------------------------------------------------- */
.emoney_id h1 {
  margin-bottom: 20px;
}
.emoney_id h2 {
  margin: 20px 0 10px;
}
.emoney_id .f17 {
  font-size: 1.7em;
}
.emoney_id p {
  font-size: 1.2em;
  line-height: 1.6;
}
.emoney_id .notes p {
  display: inline-block;
  width: calc(100% - 15px);
}
.emoney_id input {
  margin-bottom: 10px;
}
.emoney_id footer p {
  font-size: 1.6em;
  text-align: center;
  padding: 7px 0;
}
.emoney_id ul {
  margin-top: 20px;
}
.emoney_id ul li {
  border-right: 1px solid #000;
  width: calc(33.3% - 13.4px);
  padding: 0 10px;
}
.emoney_id ul li:first-child {
  padding: 0 10px 0 0;
}
.emoney_id ul li:last-child {
  border-right: none;
  padding: 0 0 0 5px;
}
.emoney_id dt {
  font-weight: bold;
  font-size: 1.7em;
  margin-bottom: 10px;
}
.emoney_id dd {
  font-size: 1.2em;
}

.detailIn {
  width: 90%;
  margin: auto;
}

.emoney_note {
  color: rgb(203, 68, 68);
  margin-top: 10px;
  font-size: 1.2em;
  text-align: left;
}

/* point_exchange_input
  ---------------------------------------------------------- */
.point_exchange_input a.bl {
  display: inline-block;
}
.point_exchange_input .btn-input {
  background: #fff;
  font-size: 1.8em;
  min-height: 45px;
  padding: 5px 10px;
}
.point_exchange_input input {
  margin-bottom: 15px;
}
.point_exchange_input select {
  font-size: 1.8em;
}
.point_exchange_input .amount p {
  text-align: center;
}
.point_exchange_input .f12 {
  font-size: 1.2em;
  line-height: 1.8;
}
.point_exchange_input .name input {
  width: calc(50% - 5px);
  margin-bottom: 0;
}
.point_exchange_input .name input:first-child {
  margin-right: 10px;
}
.point_exchange_input .notes {
  line-height: 1.8;
  font-size: 1.2em;
}
.point_exchange_input .notes p {
  display: inline-block;
  font-size: 1em;
  vertical-align: top;
  width: calc(100% - 15px);
}

.infoinputWrap-first h2 {
  margin: 25px 0 15px;
}

.exchange-btn-submit {
  border-radius: 14px !important;
  box-shadow: 2px 2px 2px 0 #adadad;
  font-size: 2.1em !important;
  min-height: 54px;
  padding: 10px;
  color: #000 !important;
}

.infoinputWrap:first-child h2 {
  margin: 25px 0 15px;
}

.infoinputIn {
  margin: 0 18px 0 19px;
  width: calc(100% - 36px);
  text-align: left;
}
.infoinputIn p {
  font-size: 1.8em;
}

.inputnumber {
  width: calc(100% - 7.5px);
}
.inputnumber input {
  margin-right: 10px;
}
.inputnumber input:last-child {
  margin-right: 0;
}

/* point_exchange_confirm
    ---------------------------------------------------------- */
.point_exchange_confirm a.bl {
  display: inline-block;
}
.point_exchange_confirm .f12 {
  font-size: 1.2em;
  line-height: 1.4;
}

/* point_exchange_complete
    ---------------------------------------------------------- */
.point_exchange_complete a.bl {
  display: inline-block;
}
.point_exchange_complete .f12 {
  font-size: 1.2em;
  line-height: 1.8;
}
.point_exchange_complete .f14 {
  font-size: 1.4em;
  line-height: 1.4;
}
.point_exchange_complete .f20 {
  font-size: 2em;
  line-height: 1.4;
}
.point_exchange_complete .maintxt p {
  text-align: center;
}
.point_exchange_complete .notes {
  line-height: 1.8;
  font-size: 1.2em;
}
.point_exchange_complete .notes p {
  display: inline-block;
  font-size: 1em;
  vertical-align: top;
  width: calc(100% - 15px);
}
.point_exchange_complete .exchangeinfoWrap:nth-of-type(2) h2 {
  margin: 25px 0 15px;
}
.point_exchange_complete .exchangeinfoIn {
  margin: 0 18px 0 19px;
  width: calc(100% - 36px);
  text-align: left;
}
.point_exchange_complete a.btn {
  background: #fff100;
  border: 1px solid #a3a5a6;
  border-radius: 14px;
  box-shadow: 2px 2px 2px 0 #adadad;
  box-sizing: border-box;
  display: block;
  font-size: 2.1em;
  min-height: 54px;
  padding: 16px 10px;
  text-decoration: none;
  width: 100%;
}
.point_exchange_complete .adWrap .adIn {
  padding: 0;
}
.point_exchange_complete .adWrap .adIn h2 {
  margin-bottom: 5px;
}

.modal-btn {
  background: url("../img/ico_modal01.png") center right no-repeat;
  background-size: contain;
  font-size: 1.6em;
  display: inline-block;
  text-decoration: underline;
  padding-right: 20px;
  z-index: 2;
  position: relative;
}

.modal-close {
  background: url("../img/btn_modal_close.png") center no-repeat;
  background-size: contain;
  cursor: pointer;
  height: 23px;
  position: absolute;
  top: 15px;
  right: 15px;
  width: 23px;
}

.modal-overlay {
  background-color: rgba(35, 24, 21, 0.8);
  display: none;
  height: 120%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1;
}
.member-registration-complete .signupflowWrap:last-child {
  border-bottom: none;
}

/* vndev custom */
.member-registration-confirm .signupflowWrap:last-child {
  border-bottom: none;
  margin-bottom: 20px;
}
.member-registration-confirm form p {
  line-height: inherit;
}

/* fix checkbox none border radius*/
.fix-checkbox::before {
  width: 19px !important;
  height: 19px !important;
  border-radius: 0px !important;
}

/* Global Navigation - fix error design - exchange */
/* indivisible */
.exchangeWrap .acmenu dt,
.apply label {
  font-weight: lighter;
}
button.indivisile,
button.auth,
button.apply,
.emoney_id .btn-primary,
button.register-form,
.privacyWrap button,
button.social-confirm {
  border: 1px solid #fff100;
  border-radius: 10px;
  box-shadow: 2px 2px 2px 0 #ffffff;
  font-size: 1.5em;
  max-height: 45px;
  padding: 10px;
  width: 80%;
  color: #0f0f0f;
  outline: none;
}

.btn-primary:hover {
  background: #fff100 !important;
  border: 1px solid #a3a5a6 !important;
  color: #0f0f15 !important;
}

.grecaptcha-badge {
  display: none;
}

.spinner {
  -webkit-animation: rotator 1.4s linear infinite;
  animation: rotator 1.4s linear infinite;
}

.l-header {
  min-height: 0px;
}

.fix-point-bb {
  font-size: 1.6em !important;
  padding-right: 5px !important;
}

.loginWrp {
  text-align: center;
}
.loginWrp a {
  font-size: 1.8em;
}
.underline {
  text-decoration: underline;
}
@-webkit-keyframes rotator {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg);
  }
}

@keyframes rotator {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg);
  }
}
.path {
  stroke-dasharray: 187;
  stroke-dashoffset: 0;
  -webkit-transform-origin: center;
  transform-origin: center;
  -webkit-animation: dash 1.4s ease-in-out infinite,
    colors 5.6s ease-in-out infinite;
  animation: dash 1.4s ease-in-out infinite, colors 5.6s ease-in-out infinite;
}

@-webkit-keyframes colors {
  0% {
    stroke: #00bcd4;
  }
  25% {
    stroke: #00bcd4;
  }
  50% {
    stroke: #00bcd4;
  }
  75% {
    stroke: #00bcd4;
  }
  100% {
    stroke: #00bcd4;
  }
}

@keyframes colors {
  0% {
    stroke: #00bcd4;
  }
  25% {
    stroke: #00bcd4;
  }
  50% {
    stroke: #00bcd4;
  }
  75% {
    stroke: #00bcd4;
  }
  100% {
    stroke: #00bcd4;
  }
}
@-webkit-keyframes dash {
  0% {
    stroke-dashoffset: 187;
  }
  50% {
    stroke-dashoffset: 46.75;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
  }
  100% {
    stroke-dashoffset: 187;
    -webkit-transform: rotate(450deg);
    transform: rotate(450deg);
  }
}
@keyframes dash {
  0% {
    stroke-dashoffset: 187;
  }
  50% {
    stroke-dashoffset: 46.75;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
  }
  100% {
    stroke-dashoffset: 187;
    -webkit-transform: rotate(450deg);
    transform: rotate(450deg);
  }
}

.exchange-outlet-tips {
  margin-top: 20px;
  text-align: center;
  font-size: 15px;
}

.auth-outlet-txt {
  font-size: 1.2em;
  color: #545757;
  line-height: 1.5;
  letter-spacing: -0.4px;
}

.auth-outlet-img {
  margin-bottom: 20px;
  width: 100%;
}

.auth-outlet-btn {
  margin-top: 15px;
}

.form-login-recommend {
  text-align: center;
}

.form-login-recommend-caution {
  color: #cf2f25;
  font-size: 2.5em;
  font-weight: bold;
  line-height: 1.5em;
  margin-bottom: 1em;
  text-align: center;
}

.form-login-recommend-button {
  margin-top: 20px;
  border: 2px solid;
  font-size: 2em;
  padding: 10px;
  text-align: center;
}

.form-login-recommend-button a {
  text-decoration: none;
  display: block;
}

.form-login-recommend-password {
  font-size: 2em;
  font-weight: bold;
  line-height: 1.5em;
  margin: 1em 0;
  text-align: center;
}

.form-login-recommend-password a {
  color: #cf2f25;
  text-decoration: underline;
  display: block;
}

/* welcomeページ改修 */
.first-box {
  text-align: center;
  margin-bottom: 30px;
}

.first-pollet-box {
  background: #f0f0f0;
  margin: 7px;
  padding: 20px 15px;
}

.first-pollet-campaign p {
  font-size: 15px;
  line-height: 1.5;
  text-align: center;
}

.first-pollet-campaign__title {
  font-size: 17px;
  margin-bottom: 10px;
}

.first-pollet-campaign__point {
  font-size: 18px;
  color: #fe5a5a;
  margin: 15px 0;
}

.first-pollet-about {
  margin-top: 20px;
  text-align: center;
}

.first-pollet-about p {
  line-height: 1.8;
}

.first-pollet-about__title {
  text-align: center;
  font-weight: bold;
}

.first-pollet-about__title p {
  font-size: 18px;
}

.first-pollet-about__text {
  margin-top: 5px;
}

.first-pollet-about__text p {
  font-size: 15px;
  text-align: left;
}

.first-pollet-about__link {
  padding: 20px 0 10px;
}

.first-pollet-about__link a {
  font-weight: bold;
  font-size: 16px;
}

.exchange_link_quopay {
  margin: 20px 0;
  text-align: left;
}

.exchange_link_quopay a {
  font-size: 16px;
  font-weight: bold;
  text-decoration: underline;
  color: black;
}

.exchange_button_quopay {
  margin: 10px 0 20px;
}

.exchange_text_quopay_attention {
  text-align: center;
  margin-top: 30px;
  font-size: 0.85rem;
}

.text--strong-color {
  color: #ff007f;
}

.exchange-confirm-campaign-text {
  font-size: 1.3em;
  margin: 10px;
  letter-spacing: 0.1em;
  line-height: 1.3em;
}

.exchange_amazon {
  text-align: left;
}

.amazon_november_campaign {
  font-family: "noto sans jp";
  font-weight: bold;
  margin-bottom: 13px;
}

.amazon_november_campaign_title {
  font-size: 24px;
  line-height: 40px;
}

.amazon_november_campaign_text {
  font-size: 18px;
  line-height: 32px;
  font-weight: normal;
  color: #333333;
}

.amazon_november_campaign_colorText {
  color: #f8991d;
  text-decoration: underline;
}

.campaignListButton {
  text-align: center;
  margin-bottom: 2em;
}

.campaignListButtonText {
  display: inline-block;
  padding: 0.7em 2em;
  text-decoration: none;
  color: #6e6e6e;
  border: solid 2px #6e6e6e;
  border-radius: 30px;
  transition: 0.4s;
  font-size: 15px;
  font-weight: bold;
  box-shadow: 1px 1px 3px;
}

.rankRewardsWrapper {
  font-style: normal;
  font-size: 12px;
}

.rankRewards--gold {
  background-color: #f0f18d;
  color: #92501b;
  padding: 3px 5px;
  margin-top: 10px;
  font-size: 10px;
  font-weight: 600;
}

.rankRewards--silver {
  background-color: #d7e0e3;
  color: #444a57;
  padding: 3px 5px;
  margin-top: 10px;
  font-size: 10px;
  font-weight: 600;
}

.rankRewards--bronze {
  background-color: #e9b297;
  color: #803e1b;
  padding: 3px 5px;
  margin-top: 10px;
  font-size: 10px;
  font-weight: 600;
}

.rankRewards--ippan {
  background-color: #96e9aa;
  color: #424242;
  padding: 3px 5px;
  margin-top: 10px;
  font-size: 10px;
  font-weight: 600;
}

.rankRewardsValue {
  color: #ff007f;
  font-size: 15px;
  font-weight: bold;
  margin-left: 4px;
  vertical-align: middle;
}

.rankRewardsValueIppan {
  font-weight: 300;
  font-size: 12px;
  margin-left: 4px;
}

.rankRewardsMessage {
  color: #ff007f;
  font-size: 12px;
  font-weight: bold;
  vertical-align: sub;
}

.rankRewardsModalBtn {
  background: #cecece;
  color: #ffffff;
  width: 2em;
  line-height: 2em;
  color: #ffffff;
  text-align: center;
  margin: auto;
  margin-left: 10px;
  border-radius: 50%;
}

.rankRewardModal__title {
  color: #707070;
  background-color: #e4e4e4;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 0 !important;
  padding: 5px 0;
  border-radius: 5px 5px 0 0;
}

.rankRewardModalList {
  width: 100%;
  border-collapse: collapse;
}

.rankRewardModalList tr {
  border: 1px solid #dedede;
}

.rankRewardModalList th {
  padding: 10px 5px;
  font-size: 10px;
}

.rankRewardModalList td {
  padding: 10px;
}

.rankRewardModalList__header--exchange {
  background-color: #f2f2f2;
  font-weight: bold;
}

.rankRewardModalList__header--gold {
  color: #92501b;
  background-color: #f0f18d;
  font-weight: bold;
}

.rankRewardModalList__header--silver {
  color: #444a57;
  background-color: #d7e0e3;
  font-weight: bold;
}

.rankRewardModalList__header--bronze {
  color: #803e1b;
  background-color: #e9b297;
  font-weight: bold;
}

.rankRewardModalList__header--ippan {
  color: #245b5b;
  background-color: #96e9aa;
  font-weight: bold;
}

.rankRewardModalList--strong {
  color: #ff009d;
}

.rankRewardModal__content {
  box-sizing: border-box;
  background: #fff;
  display: none;
  margin: 0;
  position: fixed;
  width: 90%;
  z-index: 50;
  border-radius: 5px;
}

.rankRewardModal__button-close {
  background: url(../img/btn_modal_close.png) center no-repeat;
  background-size: contain;
  background-color: #ffffff;
  cursor: pointer;
  position: absolute;
  height: 25px;
  width: 25px;
  top: -30px;
  right: 0px;
  padding: 10p;
  border-radius: 50%;
}
.rankRewardModal__button-mypage {
  border: 1px solid #fff100;
  background-color: #fff100;
  color: #707070;
  border-radius: 12px;
  font-size: 16px;
  font-weight: bold;
  padding: 10px;
  width: 80%;
  display: block;
  margin: 20px auto 0;
}
.rankRewardModal__content p {
  padding: 5px 10px;
}

.btn_register {
  text-align: center;
  border: 1px solid #fff100;
  border-radius: 10px;
  box-shadow: 2px 2px 2px 0 #ffffff;
  padding: 10px;
  width: 80%;
  color: #0f0f0f;
  outline: none;
  background: #ffff00;
  margin: 0 auto;
}

.bitcash_inquiry_link {
  color: #ff007f;
  font-weight: bold;
  text-decoration: underline;
}

/* 交換リニューアル */

.bank_campaign {
  padding: 15px 20px 0px 20px;
  border: 1px solid #4ebcd4;
}
.bank_campaign_title {
  display: flex;
  cursor: pointer;
  padding-bottom: 15px;
}
.bank_campaign_title_text {
  font-size: 14px;
  color: #4ebcd4;
}
.bank_campaign_explain {
  display: none;
  padding: 15px;
}

.exchange_accordion_title_arrow {
  margin: 0 0 0 auto;
}

.exchange_accordion_title_arrow.selected {
  transform: rotate(0.5turn);
  transition: 0.2s;
}

.giftImg {
  text-align: center;
  margin: 20px auto;
}

.giftImgSize {
  width: 160px;
  border: 1px solid #e0e0e0;
}

.giftSubTitle {
  font-weight: 600;
  font-size: 15px;
  line-height: 20px;
  color: #424242;
  margin-bottom: 10px;
}

.giftText {
  font-weight: 400;
  font-size: 12px;
  line-height: 140%;
  color: #424242;
  margin-bottom: 20px;
}

.giftTable {
  border-collapse: collapse;
  width: 100%;
  border: 1px solid #e0e0e0;
  text-align: left;
  margin-bottom: 40px;
}

.giftTableCell {
  padding: 8px 10px;
  border: 1px solid #e0e0e0;
  text-align: left;
}

.giftTableLeft {
  width: 8em;
}

.giftTableRight {
  width: 13em;
}

.giftTableRightCommissions {
  padding: 8px 0 8px 10px;
}

.commissions {
  display: flex;
  flex-wrap: wrap;
}

.commission {
  width: 48%;
}

@media screen and (max-width: 375px) {
  .commission {
    width: 100%;
  }
}

.commissionPoint {
  margin-left: 4px;
}

.rateToText {
  font-weight: 600;
  font-size: 16px;
  color: #ff007f;
}

.exchangeBtnWrap {
  text-align: center;
  margin-bottom: 40px;
}

.exchangeBtn {
  width: 173px;
  background: #ffffff;
  border: 1px solid #4ebcd4;
  border-radius: 8px;
  box-shadow: none;
  min-height: 40px;
}

.exchangeBtnText {
  font-weight: 600;
  font-size: 13px;
  line-height: 16px;
  color: #4ebcd4;
  padding: 12px 0;
  text-align: center;
}

.exchangeCopyrightBorder {
  border-top: 1px solid #e0e0e0;
}

.exchangeCopyright {
  font-weight: 300;
  font-size: 10px;
  line-height: 16px;
  color: #424242;
  margin-top: 1.25em;
}

.sectionTitle {
  background-color: #4ebcd4;
  height: 50px;
}

.bankName {
  font-style: normal;
  font-weight: 600;
  font-size: 20px;
  line-height: 116.7%;
  color: #ffffff;
  padding: 10px 18px 0 13px;
}

.v2bankbook {
  display: flex;
  margin: 3px auto 16px;
  gap: 8px;
  justify-content: center;
}

.v2bankbookButton {
  border: 1px solid #BDBDBD;
  height: 30px;
  min-width: 140px;
  font-family: 'Noto Sans JP';
  font-size: 12px;
  font-weight: 700;
  line-height: 14.4px;
  text-align: center;
  border-radius: 8px;
  background-color: #FFFFFF;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-left: 16px;
  padding-right: 16px;
}

.v2bankbookHint {
  display: flex;
  align-items: center;
  gap: 6px;
}

.v2bankbookHint span {
  font-family: 'Noto Sans JP';
  font-size: 12px;
  font-weight: 700;
  line-height: 16.8px;
  color: #3585FD;
}
