@charset "UTF-8";

/*----------------------------------------
Reset  Default Styles
----------------------------------------*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  font-size: inherit;
  vertical-align: baseline;
}

i,
em {
  font-style: normal;
}

small {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}

body {
  line-height: 1;
}

main,
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ul,
li {
  list-style: none;
}

th,
td {
  vertical-align: middle;
}

blockquote,
q {
  quotes: none;
}

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  color: inherit;
  text-decoration: none;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

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

td,
th {
  padding: 0;
}

ul,
dl,
ol {
  text-indent: 0;
}

li {
  list-style: none;
}

img {
  border: 0;
  max-width: 100%;
  width: 100%;
  height: auto;
  vertical-align: top;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #282828;
  margin: 1em 0;
  padding: 0;
}

input,
select {
  vertical-align: middle;
}

button,
input {
  line-height: normal;
}

input,
textarea {
  background-image: -webkit-linear-gradient(hsla(0deg, 0%, 100%, 0), hsla(0deg, 0%, 100%, 0));
  /* Removing the inner shadow, rounded corners on iOS inputs */
  padding: 4px 8px;
  border: 1px solid #282828;
  background: #fff;
}

button,
input[type=button],
input[type=reset],
input[type=submit] {
  cursor: pointer;
  -webkit-appearance: button;
}

em,
i {
  font-style: normal;
}

* {
  box-sizing: border-box;
}

html {
  word-wrap: break-word;
  font-size: 62.5%;
  margin: 0;
  padding: 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

body {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  position: relative;
  font-size: 100%;
  line-height: 1;

  font-weight: 400;
  -webkit-text-size-adjust: 100%;
}

a {
  display: block;
  width: 100%;
  height: 100%;
  transition: filter 0.3s ease;
}



button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  transition: filter 0.3s ease;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

/* button:hover {
  /* filter: brightness(120%); 
} */
@media only screen and (max-width: 640px) {
  button:hover {
    filter: none;
  }
}

button:active,
button:focus,
button:visited {
  color: #000;
}

button,
a,
img {
  outline: none;
}

/*------------------------------------------------------
  contents
------------------------------------------------------*/
body {
  position: relative;
  width: 100%;
  line-break: strict;
}

.wrapper {
  width: 100%;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  -webkit-text-size-adjust: 100%;
  font-feature-settings: "palt";
  background-color: #fff;
}

.txtRB {
  /* font-family: "Roboto", sans-serif; */
  white-space: nowrap;
  display: inline-block;
}

.bg_main {
  background-color: #129FDD;
}

.titleBox {
  display: flex;
  height: 80px;
  justify-content: center;
  align-items: center;
  margin: auto;
  /* padding: 0 40px;
  border: solid 5px #000;
  border-radius: 12px;
  background-color: #fff; */
  left: 0;
  right: 0;
  margin: auto;
}

@media only screen and (max-width: 640px) {
  .titleBox {
    top: -6.2vw;
    height: 12vw;
    padding: 0 5%;
    border-width: 4px;
  }
}

.header {
  height: auto;
  background-image: url(../images/bg_header.png);
  background-size: cover;
  background-position: center;
  padding-bottom: 11%;
  text-align: center;
  position: relative;
}

@media only screen and (max-width: 640px) {
  .header {
    padding-bottom: 17%;
  }
}

@media only screen and (min-width: 1600px) {
  .header {
    padding-bottom: 8%;
  }
}

.header__note {
  position: absolute;
  bottom: 60px;
  width: 100%;
  font-size: 2rem;
  letter-spacing: 0.057em;
  text-align: center;
  line-height: 1.665;
}

.header__note br.sp {
  display: none;
}

@media only screen and (max-width: 1400px) {
  .header__note {
    font-size: 20px;
    font-size: 1.4285714286vw;
  }
}

@media only screen and (max-width: 640px) {
  .header__note {
    padding-top: 1em;
    position: static;
    font-size: 18px;
    font-size: 2.8125vw;
    line-height: 1.61;
  }

  .header__note br.sp {
    display: block;
  }
}

.header .toDetail {
  max-width: 450px;
  width: 50%;
  margin: 0 auto;
}

@media only screen and (max-width: 640px) {
  .header .toDetail {
    width: 60%;
    margin: -13vw auto 0;
  }
}

.header .toDetail img {
  width: 100%;
  height: auto;
}

.header .toDetail:hover img {
  transform: scale(1.02);
}

.bankName {
  position: relative;
  z-index: 1;
  padding: 30px 0;
  font-size: 5.3rem;
  text-align: center;
  box-shadow: 0 5px 5px rgba(191, 191, 191, 0.35);
  background-color: #fff;
}

.bankName img {
  width: auto;
  height: 50px;
  vertical-align: bottom;
}

@media only screen and (max-width: 768px) {
  .bankName {
    font-size: 40px;
    padding: 3% 0;
  }
}

@media only screen and (max-width: 640px) {
  .bankName {
    padding: 3% 0;
    font-size: 40px;
    font-size: 6.25vw;
  }

  .bankName img {
    width: auto;
    height: 6vw;
  }
}

.mainImage {
  position: relative;
  width: 1000px;
  height: 0;
  padding-top: 706px;
  margin: auto;
  background-image: url(../images/bg_mv_pc.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center -10px;
}

@media only screen and (max-width: 1600px) {
  .mainImage {
    width: 62.5vw;
    padding-top: 44%;
  }
}

@media only screen and (max-width: 640px) {
  .mainImage {
    width: 90%;
    padding-top: 100%;
    background-image: url(../images/bg_mv_sp.svg);
  }
}

.mainImage::before,
.mainImage::after {
  content: "";
  position: absolute;
  top: 0;
  display: block;
  width: 37%;
  max-width: 330px;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center 40%;
}

@media only screen and (max-width: 640px) {

  .mainImage::before,
  .mainImage::after {
    height: 48%;
  }
}

.mainImage::before {
  left: -23%;
  top: 21%;
  background-image: url(../images/mv_p1.svg);
  background-size: 100% auto;
}

@media only screen and (max-width: 640px) {
  .mainImage::before {
    display: none;
  }
}

.mainImage::after {
  right: -23%;
  top: 21%;
  background-image: url(../images/mv_p2.svg);
  background-size: 100% auto;
}

@media only screen and (max-width: 640px) {
  .mainImage::after {
    display: none;
  }
}

.mainImage__inner {
  position: absolute;
  top: 0;
  width: 100%;
}

.mainImage__inner .logoJcb {
  display: block;
  width: 7%;
  padding: 5% 0 1%;
  text-align: center;
}

@media only screen and (max-width: 640px) {
  .mainImage__inner .logoJcb {
    width: 10.8620689655%;
    padding: 5% 0;
  }
}

.mainImage__inner .subText {
  width: 86.4%;
  margin: 0 auto 20px;
}

@media only screen and (max-width: 1600px) {
  .mainImage__inner .subText {
    margin: 0 auto 2%;
  }
}

@media only screen and (max-width: 640px) {
  .mainImage__inner .subText {
    width: 52.2413793103%;
    margin: 0 auto 5%;
  }
}

.mainImage__inner .mainText {
  width: 80%;
  margin: -10% auto;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media only screen and (max-width: 640px) {
  .mainImage__inner .mainText {
    width: 95%;
    margin: -15vw auto 0;
  }
}

.mainImage__inner .note {
  width: 55%;
  padding: 3% 0;
  font-size: 2rem;
  line-height: 1.6;
  margin: 10% auto 0;
  color: #fff;
  text-align: left;
}

@media only screen and (max-width: 1600px) {
  .mainImage__inner .note {
    padding: 5% 0;
    font-size: 20px;
    font-size: 1.25vw;
    color: #fff;
  }
}

@media only screen and (max-width: 640px) {
  .mainImage__inner {
    font-size: 17px;
    font-size: 2.9310344828vw;
  }

  .note {
    display: none;
  }
}

.section__inner {
  width: 1030px;
  max-width: 100%;
  margin: 0 auto;
  padding: 0 15px;

}

.period {
  padding: 80px 0;
}

@media only screen and (max-width: 1600px) {
  .period {
    padding: 4% 0;
  }
}

@media only screen and (max-width: 640px) {
  .period {
    padding: 7.8% 0;
  }
}

.period picture {
  display: block;
  margin: auto;
}

.period picture:first-of-type {
  width: 63.8%;
  max-width: 638px;
}

@media only screen and (max-width: 640px) {
  .period picture:first-of-type {
    width: 51.5625%;
  }
}

.period picture:first-of-type img {
  width: 100%;
}

.period picture:last-of-type {
  width: 66.8%;
  max-width: 667px;
}

@media only screen and (max-width: 640px) {
  .period picture:last-of-type {
    width: 70.625%;
  }
}

.period picture+picture {
  display: block;
  margin-top: 70px;
}

@media only screen and (max-width: 1600px) {
  .period picture+picture {
    margin-top: 4%;
  }
}

.benefit {
  width: 1050px;
  max-width: 100%;
  margin: auto;
  padding: 150px 15px;
}

.benefit_nyukai {
  width: 1050px;
  max-width: 100%;
  margin: auto;
  padding: 50px 15px;
}

.benefit_join {
  width: 1050px;
  max-width: 100%;
  margin: auto;
  padding: 50px 15px;
}

@media only screen and (max-width: 640px) {
  .benefit {
    padding: 20% 0 0;
  }

  .benefit_nyukai {
    padding: 0;
  }

  .benefit_join {
    padding: 0;
  }
}

.benefit__box {
  position: relative;
  padding: 60px 50px 50px;
  border-radius: 30px;
  /* border: solid 7px #000; */
  background-color: #fff;
}

@media only screen and (max-width: 640px) {
  .benefit__box {
    width: 90.6%;
    margin: auto;
    padding: 10% 4% 6%;
    border-width: 4px;
    border-radius: 15px;
  }
}

.benefit__box:last-of-type {
  margin-top: 150px;
}

@media only screen and (max-width: 640px) {
  .benefit__box:last-of-type {
    margin-top: 25%;
  }
}

.benefit .titleBox {
  position: absolute;
  top: -50px;
  width: 518px;
}

@media only screen and (max-width: 640px) {
  .benefit .titleBox {
    width: 80%;
    top: -6.2vw;
  }

}

.benefit__topImage {
  display: block;
  margin-bottom: 30px;
}

.benefit_top2 {
  margin: 0 auto 40px;
}

#titile_nyukai {
  width: 80%;
}

@media only screen and (max-width: 640px) {
  .benefit__topImage {
    margin-bottom: 5%;
  }

  .benefit_top2 img {
    width: 300px;
  }

  .benefit_top2 {
    margin: 0 auto 40px;
  }

  #titile_nyukai {
    width: 90%;
  }
}


.benefit__topImage img {
  width: 898px;
}

.benefit__detailBtn {
  position: relative;
  width: 900px;
  max-width: 100%;
  height: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #129FDD;
  border-radius: 20px;
  box-shadow: 0 10px 0 rgba(0, 0, 0, 0.2);
}

@media only screen and (max-width: 1024px) {
  .benefit__detailBtn {
    height: 10vw;
  }
}

@media only screen and (max-width: 640px) {
  .benefit__detailBtn {
    border-radius: 10px;
    height: 14vw;
    box-shadow: 0 1.5vw 0 rgba(0, 0, 0, 0.2);
  }
}

.benefit__detailBtn img {
  width: 464px;
}

@media only screen and (max-width: 1024px) {
  .benefit__detailBtn img {
    width: 51.5555555556%;
  }
}

@media only screen and (max-width: 640px) {
  .benefit__detailBtn img {
    width: 64.0384615385%;
  }
}

.benefit__detailBtn>.btn {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 3%;
  transform: translateY(-50%);
  width: 66px;
  height: 66px;
  background-color: #fff;
  border-radius: 100%;
}

@media only screen and (max-width: 640px) {
  .benefit__detailBtn>.btn {
    width: 8.5%;
    height: 49.4%;
  }
}

.benefit__detailBtn>.btn::before,
.benefit__detailBtn>.btn::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  background-color: #129FDD;
  transform: translate(-50%, -50%);
}

.benefit__detailBtn>.btn::before {
  width: 33px;
  height: 6px;
}

@media only screen and (max-width: 640px) {
  .benefit__detailBtn>.btn::before {
    width: 60%;
    height: 3px;
  }
}

.benefit__detailBtn>.btn::after {
  width: 6px;
  height: 33px;
}

@media only screen and (max-width: 640px) {
  .benefit__detailBtn>.btn::after {
    width: 3px;
    height: 60%;
  }
}

.active .benefit__detailBtn>.btn::after {
  display: none;
}

.benefit .toggleContent {
  display: none;
}

.step {
  padding: 30px 0 0;
}

@media only screen and (max-width: 640px) {
  .step {
    padding: 3% 0 0;
  }
}

.benefit2 .step {
  padding: 70px 0 0;
}

@media only screen and (max-width: 640px) {
  .benefit2 .step {
    padding: 12% 0 0;
  }
}

.step__inner {
  width: 1000px;
  max-width: 100%;
  display: flex;
  justify-content: space-between;
  margin: 0 auto 30px;
  width: 90%;
}

@media only screen and (max-width: 640px) {
  .step__inner {
    flex-direction: column;
    margin: 0 auto;
  }
}

.step__item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 30.47%;
  text-align: center;
}

@media only screen and (max-width: 640px) {
  .step__item {
    width: 100%;
    padding-bottom: 8%;
    margin-bottom: 8%;
  }

  .step__item:last-of-type {
    margin-bottom: 0;
  }
}

.step__item:nth-of-type(-n+2)::after {
  position: absolute;
  top: 0;
  right: -7.4%;
  background: url(../images/bg_dotted_v.svg);
  background-repeat: repeat-y;
  content: "";
  display: block;
  height: 100%;
  width: 3px;
}

@media only screen and (max-width: 640px) {
  .step__item:nth-of-type(-n+2)::after {
    width: 20%;
    top: 95%;
    right: 40%;
    background: url(../images/bg_dotted_h_sp.svg);
    background-repeat: repeat-x;
  }
}

.step__icon {
  width: 120px;
  height: 26px;
  margin: 0 auto 15px;
}

.step__title {
  min-height: 0px;
  margin-bottom: 1em;
  font-size: min(2vw, 2.3rem);
  line-height: 1.25;
  letter-spacing: 0.075em;
  font-weight: 500;
}

@media only screen and (min-width: 641px) {
  .step__title {
    min-height: 21%;
  }
}

@media only screen and (max-width: 640px) {
  .step__title {
    font-size: 4.5vw;
  }
}

.step__title br.pc {
  display: block;
}

@media only screen and (max-width: 640px) {
  .step__title br.pc {
    display: none;
  }
}

.step__title br.sp {
  display: none;
}

@media only screen and (max-width: 640px) {
  .step__title br.sp {
    display: block;
  }
}

.step__linkBtn {
  height: auto;
  margin-bottom: 20px;
}

@media only screen and (max-width: 768px) {
  .step__linkBtn {
    margin-bottom: 5%;
  }
}

.step__appDL {
  display: inline-block;
  width: auto;
  height: auto;
  font-size: 1.7rem;
  line-height: 1;
  padding: 0 8px 8px;
  border-bottom: 2px solid #f6e232;
  transition: font-weight 0.2s ease-in;
}

@media only screen and (max-width: 1024px) {
  .step__appDL {
    font-size: 1.6vw;
  }
}

@media only screen and (max-width: 640px) {
  .step__appDL {
    font-size: 3.5vw;
  }
}

.step__appDL:hover {
  font-weight: bold;
}

.step__note {
  text-align: left;
  font-size: 1.3rem;
  line-height: 1.54;
  letter-spacing: 0.05em;
}

@media only screen and (max-width: 1024px) {
  .step__note {
    font-size: 13px;
    font-size: 1.3vw;
  }
}

@media only screen and (max-width: 640px) {
  .step__note {
    font-size: 18px;
    font-size: 2.8125vw;
    letter-spacing: 0.025em;
  }
}

.step .appDL {
  display: inline-block;
  font-weight: 500;
}

.step .appDL::after {
  position: relative;
  top: 5px;
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #000;
}

@media only screen and (max-width: 640px) {
  .step .appDL {
    margin-bottom: 1em;
  }
}

.use__bg {
  width: 915px;
  max-width: 100%;
  padding: 24px;

}

@media only screen and (max-width: 640px) {
  .use__bg {
    margin-bottom: 3%;
    padding: 7% 3% 3%;
    border-width: 1em;
  }
}

.use__inner {
  margin-bottom: 20px;
  padding: 25px;
  background-color: #fff;
  text-align: center;
}

@media only screen and (max-width: 640px) {
  .use__inner {
    margin-bottom: 6%;
    padding: 6%;
  }
}

.use__quickpayTitle {
  width: 203px;
  max-width: 100%;
  margin: 0 auto 20px;
}

.use__quickpayTitle>img {
  height: 3rem;

}

.use__JCBtouchTitle>img {
  height: 3rem;

}

@media only screen and (max-width: 640px) {
  .use__quickpayTitle {
    width: 47.73%;
  }
}

.use__quickpayIcons {
  width: 50%;
  max-width: 100%;
  margin: 45px auto 45px;
}

.use__jcbtouchIcons {
  width: 30%;
  max-width: 100%;
  margin: 30px auto 30px;
}

@media only screen and (max-width: 640px) {
  .use__quickpayIcons {
    width: 80%;
    margin: 30px auto 30px;
  }

  .use__jcbtouchIcons {
    width: 50%;
  }
}

.use__quickpayInfo {
  width: 540px;
  max-width: 100%;
  margin: 0 auto 10px;
}

.use__example {
  display: block;
  width: 657px;
  max-width: 100%;
  margin: 0 auto 30px;
}

.use__storeLogos {
  display: block;
  width: 460px;
  max-width: 100%;
  margin: 40px auto;
}

@media only screen and (max-width: 640px) {
  .use__storeLogos {
    margin: 10% auto;
  }
}

.use__storeLogos02 {
  display: block;
  width: 540px;
  max-width: 100%;
  margin: 40px auto;
}

@media only screen and (max-width: 640px) {
  .use__storeLogos02 {
    margin: 10% auto;
    width: 170px;
  }
}

.traffic {
  margin: 0 auto 40px;
}

.use__more {
  display: block;
  width: 557px;
  max-width: 100%;
  margin: 40px auto 0;
}

@media only screen and (max-width: 640px) {
  .use__more {
    margin: 10% auto 0;
  }
}

.use__storeListAdd {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 auto 3%;
  text-align: center;
}

.use__storeListAdd li {
  display: inline-flex;
  height: 80px;
  margin: 10px 20px;
}

@media only screen and (max-width: 1000px) {
  .use__storeListAdd li {
    margin: 1vw;
    height: 10vw;
  }
}

@media only screen and (max-width: 640px) {
  .use__storeListAdd li {
    margin: 3vw 3vw 0;
    height: 15vw;
  }
}

.use__storeListAdd li img {
  max-width: 180px;
  -o-object-fit: contain;
  object-fit: contain;
}

@media only screen and (min-width: 640px) {
  .use__storeListAdd li img {
    max-width: 17vw;
  }
}

@media only screen and (max-width: 640px) {
  .use__storeListAdd li img {
    max-width: 35vw;
  }
}

.use__noteList {
  font-size: 1.3rem;
  line-height: 1.6;
  font-feature-settings: "palt";
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  color: #000;
}

.benefit2 .use__noteList {
  font-weight: 500;
}

@media only screen and (max-width: 640px) {
  .use__noteList {
    font-size: 18px;
    font-size: 2.8125vw;
    letter-spacing: 0.05em;
  }
}

.use__noteItem {
  text-indent: -1em;
  padding-left: 1em;
}

.use__noteItem a {
  display: inline;
}

.use__noteItem .txtRB {
  font-weight: 400;
  padding: 0 0 0 1em;
}

.use__noteItem .ggl {
  padding: 0 0.25em 0 1.25em;
}

.use__noteItem br.pc {
  display: block;
}

@media only screen and (max-width: 640px) {
  .use__noteItem br.pc {
    display: none;
  }
}

.benefitTerm {
  position: relative;
  max-width: 100%;
  margin: 0 auto 90px;
  border-radius: 30px;
  background-color: #fff;
  padding: 30px 0;
}

@media only screen and (max-width: 1030px) {
  .benefitTerm {
    width: calc(100% - 30px);
  }
}

@media only screen and (max-width: 640px) {
  .benefitTerm {
    width: 90.6%;
    margin: 25% auto 0;
    padding: 10% 0 6%;
    border-width: 4px;
    border-radius: 15px;
  }
}

.benefitTerm .titleBox {
  position: absolute;
  top: -50px;
  width: auto;
}

#title_join {
  width: 400px;
}

@media only screen and (max-width: 640px) {
  .benefitTerm .titleBox {
    width: 70%;
    top: -6vw;
  }
}

.benefitTerm__detail {
  width: 90%;
  margin: 70px auto 5px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.24;
  color: #000;
  overflow: auto;
}

@media only screen and (max-width: 640px) {
  .benefitTerm__detail {
    margin: 0 auto;
    font-size: 1.2rem;
  }
}

.benefitTerm__detail table {
  width: 100%;
  border-top: solid 3px #CBCBCB;
  border-left: solid 3px #CBCBCB;
}

@media only screen and (max-width: 640px) {
  .benefitTerm__detail table {
    border-width: 2px;
  }
}

.benefitTerm__detail table tr {
  border-bottom: solid 3px #CBCBCB;
}

@media only screen and (max-width: 640px) {
  .benefitTerm__detail table tr {
    border-width: 2px;
  }
}

.benefitTerm__detail table th {
  padding: 16px 30px;
  white-space: nowrap;
  background-color: #439BB1;
  border-right: solid 3px #CBCBCB;
  color: #fff;
}

.benefitTerm__detail table th:nth-of-type(-n+2) {
  width: 30%;
}

.benefitTerm__detail table th:last-of-type {
  width: 40%;
}

@media only screen and (max-width: 640px) {
  .benefitTerm__detail table th {
    padding: 8px 10px;
    border-width: 2px;
  }
}

.benefitTerm__detail table td {
  white-space: nowrap;
  border-right: solid 3px #CBCBCB;
  padding: 16px 30px;
  text-align: center;
}

@media only screen and (max-width: 640px) {
  .benefitTerm__detail table td {
    padding: 8px 10px;
    border-width: 2px;
  }
}

.benefitTerm__detail table td>span {
  display: inline-block;
  text-align: left;
}

.benefitTerm__detail table td:last-of-type {
  text-align: left;
}

.benefitTerm__notes {
  width: 90%;
  margin: 0 auto;
  font-size: 1.3rem;
  line-height: 1.615;
  letter-spacing: 0.05em;
  counter-reset: benefitTermNoteCounter;
  padding-top: 30px;
}

@media only screen and (max-width: 640px) {
  .benefitTerm__notes {
    margin: 10px auto 0;
    font-size: 1rem;
    padding-top: 0px;
  }
}

.benefitTerm__notes li {
  position: relative;
  padding-left: 2em;
  counter-increment: benefitTermNoteCounter;
}

.benefitTerm__notes li::before {
  content: "※"counter(benefitTermNoteCounter);
  position: absolute;
  left: 0;
  display: block;

}

.target_card {
  width: 90%;
  margin: 0 auto;
  font-size: 1.3rem;
  line-height: 1.615;
  letter-spacing: 0.05em;
  counter-reset: benefitTermNoteCounter;
  padding-top: 10px;
}

@media only screen and (max-width: 640px) {
  .target_card {
    width: 90%;
    margin: 0 auto;
    font-size: 1rem;
    line-height: 1.615;
    letter-spacing: 0.05em;
    padding-top: 0px;
  }
}

.product {
  padding: 0;
}

@media only screen and (max-width: 640px) {
  .product {
    padding: 25% 0 0;
  }
}

.product .titleBox {
  width: 630px;
}

@media only screen and (max-width: 640px) {
  .product .titleBox {
    width: 76.56%;
    height: 12vw;
  }
}

.product__name {
  height: 29px;
  margin: 50px auto 25px;
  text-align: center;
  color: #fff;
  font-size: 2.7rem;
  letter-spacing: 0.1em;
  line-height: 1.2;
}

@media only screen and (max-width: 640px) {
  .product__name {
    height: 4.53vw;
    font-size: 4.3vw;
  }

  #title_targetcard {
    width: 100%;

  }
}

.product__name img {
  max-height: 100%;
}

.product__cards {
  width: 930px;
  margin: auto;
}

@media only screen and (min-width:640px) {
  .product__cards {
    width: 430px;
  }
}

@media only screen and (max-width: 640px) {
  .product__cards {
    width: auto;
  }
}

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

.product__cardsInner {
  width: 430px;
  float: left;
}

@media only screen and (min-width: 641px) {
  .product__cardsInner {
    margin-bottom: 60px;
  }
}

@media only screen and (max-width: 640px) {
  .product__cardsInner {
    width: 100%;
    margin-bottom: 18%;
  }
}

.product__cardsInner+.product__cardsInner {
  margin-left: 0px;
}

@media only screen and (min-width: 640px) {
  .product__cardsInner+.product__cardsInner {
    margin-left: 0px;
  }
}

@media only screen and (min-width: 640px) {
  .Item_card_inner {
    display: flex;
    justify-content: center;
    width: 100%;
  }
}

@media only screen and (max-width: 640px) {
  .product__cardsItem {
    flex-direction: column;
    width: 54%;
    margin: 0 auto;
  }
}

.product__cardsItem img {
  width: 200px;
  margin: 30px 30px 50px 30px;
}

.product__cardsItem.is-debit img {
  width: 35%;
  margin: 30px 30px 50px 30px;
}

.product__cardsItem+p {
  color: #fff;
  font-size: 1.3rem;
  line-height: 1.6;
  text-align: center;
  margin: 0 auto 40px auto;
}

@media only screen and (max-width: 640px) {
  .product__cardsItem+p {
    text-align: left;
    margin: 1em;
  }
}

@media only screen and (max-width: 640px) {
  .product__cardsItem.is-debit {
    width: 100%;
    padding: 20px 10px;
  }

  .product__cardsItem.is-debit .Item_card_inner {
    display: flex;
  }

  .product__cardsItem img,
  .product__cardsItem.is-debit img {
    width: 54%;
    display: block;
    margin-bottom: 0;
    margin: 0px auto 30px;
  }

  .product__cardsItem.is-debit img {
    width: 30%;
  }

  .product__note {
    text-align: left;
  }
}

@media only screen and (max-width: 640px) {
  .product__cardsItem img {
    width: 100%;
    margin-bottom: 0;
    margin: 0px auto 30px;
  }

}

@media only screen and (max-width: 640px) {
  .credit_3 {
    margin: 12% 0 16%;

  }

  .credit_2 {
    margin: 12% 0 16%;
  }
}

.product .linkButton {
  width: 420px;
  max-width: 100%;
  margin: 0 auto;
}

.support_2 .linkButton {
  width: 60%;
  margin: 0 auto;
  margin-top: 5%;

}

@media only screen and (max-width: 640px) {
  .product .linkButton {
    width: 85%;
    margin-top: 12%;
  }
}

.merit {
  padding-bottom: 90px;
}

.merit__title {
  width: 50%;
  margin: 0 auto 40px;
}

@media only screen and (max-width: 640px) {
  .merit__title {
    width: 69%;
  }

  .merit {
    padding-bottom: 0px;
  }
}

.merit__list {
  display: flex;
  justify-content: space-between;
  text-align: center;
  width: 906px;
  max-width: 100%;
  margin: auto;
}

@media only screen and (max-width: 640px) {
  .merit__list {
    flex-direction: column;
    align-items: center;
  }
}

.merit__item {
  width: 280px;
}

@media only screen and (max-width: 1000px) {
  .merit__item {
    padding: 2%;
  }
}

@media only screen and (max-width: 640px) {
  .merit__item {
    width: 70%;
    margin-bottom: 8%;
  }
}

.merit__item>img {
  width: 100%;
  margin-bottom: 25px;
}

@media only screen and (max-width: 640px) {
  .merit__item>img {
    margin-bottom: 10%;
  }

}

.merit__text {
  color: #fff;
  font-weight: bold;
  font-size: 2rem;
  line-height: 1.7;

}

@media only screen and (max-width: 640px) {
  .merit__text {
    font-size: 1.5rem;
    line-height: 1.4;
  }
}

.detail {
  padding: 120px 0 0px;
  color: #000;
}


@media only screen and (max-width: 640px) {
  .detail {
    padding: 0 9.4% 11%;
  }
}

.detail .pt1 {
  padding-top: 1em;
}

.detail__title {
  width: 58.4%;
  max-width: 100%;
  margin: 0 auto 60px;
}

@media only screen and (max-width: 640px) {
  .detail__title {
    width: 100%;
    margin: 0 auto 12%;
  }
}

.detail .section__inner {
  padding-bottom: 100px;
}

@media only screen and (max-width: 640px) {
  .detail .section__inner {
    padding: 15% 0 0;
  }
}

.detail__list {
  /* padding: 40px 0; */
  border-top: solid 5px #000;
  font-size: 2rem;
  line-height: 1.3;
  align-items: center;
  text-align: center;
}

.detail__list>dt {
  /* width: 290px; */
  font-weight: 500;
  padding: 50px 0 40px 0;
  font-size: 30px;
  font-weight: bold;
}

.detail__list>dd {
  /* width: calc(100% - 290px); */
  text-align: justify;
  font-weight: 400;
  padding-bottom: 5%;
  line-height: 2.0;
}

.detail__list>dd span.pc {
  display: inline-block;
}

.detail__list>dd br.pc {
  display: inline-block;
}

.detail__list:last-of-type {
  border-bottom: solid 5px #000;
}

@media only screen and (max-width: 1000px) {
  .detail__list>dd br.pc {
    display: none;
  }
}

/* @media only screen and (max-width: 768px) {
  .detail__list > dt {
    width: 200px;

  }
  .detail__list > dd {
    width: calc(100% - 200px);
  }
} */
@media only screen and (max-width: 640px) {
  .detail__list {
    width: auto;
    padding: 1.8em 0;
    margin: auto;
    border-width: 3px;
    font-size: 20px;
    font-size: 3.125vw;
    display: block;
  }

  .detail__list>dt {
    width: auto;
    padding: 0 0 1em;
    text-align: center;
    font-size: 1.5rem;
  }

  /* .detail__list > dt br {
    display: none;
  } */
  .detail__list>dd {
    width: auto;
    line-height: 1.77;
    text-align: left;
    font-size: 1.5rem;
  }
}

.detail__innerList li {
  position: relative;
  padding-left: 1.1em;
}

.detail__innerList li::before {
  position: absolute;
  top: 1px;
  left: 0;
  content: "●";
  display: block;
}

.detail__step {
  padding-left: 0.8em;
}

.detail__step>dt {
  float: left;
}

.detail__step>dd {
  padding-left: 4.8em;
}

.detail__step:first-of-type>dd {
  letter-spacing: -0.03em;
}

@media only screen and (max-width: 640px) {
  .detail__period {
    letter-spacing: 0.04em;
  }

  .detail__period+.detail__period {
    margin-top: 1.5em;
  }
}

.detail__periodDl {
  display: flex;
  margin-bottom: 1em;
}

@media only screen and (max-width: 640px) {
  .detail__periodDl {
    display: block;
    font-size: 20px;
    font-size: 3.125vw;
  }

  .detail__periodDl+dl {
    margin-top: 1.5em;
  }
}

.detail__periodDl+p span {
  display: inline-block;
}

.detail__periodDt {
  display: inline-block;
  white-space: nowrap;
}

@media only screen and (max-width: 640px) {
  .detail__periodDt {
    display: block;
    white-space: normal;
  }
}

.faq {
  padding-bottom: 80px;
  font-weight: 500;
}

@media only screen and (max-width: 640px) {
  .faq {
    padding-bottom: 1%;
  }
}

.faq__inner {
  width: 1030px;
  max-width: 100%;
  margin: auto;
  padding: 0 15px;
}

@media only screen and (max-width: 640px) {
  .faq__inner {
    padding: 0 5%;
  }
}

.faq__title {
  width: 30.3%;
  margin: 0 auto 40px;
}

@media only screen and (max-width: 640px) {
  .faq__title {
    width: 44.26%;
    margin: 0 auto 5%;
  }
}

.faq__box {
  padding: 30px 40px 30px 100px;
  background-color: #F1F1F1;
  margin-bottom: 40px;
  font-size: 2rem;
  line-height: 1.55;
  letter-spacing: 0.1em;
  text-align: justify;
}

.faq__box br.pc {
  display: block;
}

.faq__box br.sp {
  display: none;
}

@media only screen and (max-width: 640px) {
  .faq__box {
    margin-bottom: 5%;
    padding: 5% 5% 5% 15.5%;
    font-size: 20px;
    font-size: 3.125vw;
    line-height: 1.75;
    letter-spacing: 0;
  }

  .faq__box br.pc {
    display: none;
  }

  .faq__box br.sp {
    display: block;
  }
}

.faq__box dt {
  position: relative;
  margin-bottom: 30px;
  font-weight: 700;
  display: flex;
  align-items: center;
  min-height: 62px;
  line-height: 1.3;
}

@media only screen and (max-width: 640px) {
  .faq__box dt {
    margin-bottom: 6%;
    min-height: initial;
  }
}

.faq__box dt::before {
  content: "";
  display: block;
  position: absolute;
  top: 10px;
  left: -60px;
  width: 50px;
  height: 40px;
  background-image: url(../images/icon_q.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top left;
}

@media only screen and (max-width: 640px) {
  .faq__box dt::before {
    top: 0;
    left: -13%;
    width: 10.87%;
  }
}

.faq__box dt br.pc {
  display: block;
}

@media only screen and (max-width: 900px) {
  .faq__box dt br.pc {
    display: none;
  }
}

.faq__box dd {
  position: relative;
  font-weight: 500;
  letter-spacing: 0.1em;
}

.faq__box dd::before {
  content: "";
  display: block;
  position: absolute;
  top: -3px;
  left: -60px;
  width: 50px;
  height: 40px;
  background-image: url(../images/icon_a.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top left;
}

@media only screen and (max-width: 640px) {
  .faq__box dd::before {
    top: 0;
    left: -13%;
    width: 10.87%;
  }
}

.faq__box dd .faq__note {
  font-weight: 500;
}

.faq__box dd .amazonNote {
  padding-top: 0.5em;
  font-size: 1.6rem;
  font-weight: 500;
  text-indent: -1em;
  padding-left: 1em;
}

@media only screen and (max-width: 640px) {
  .faq__box dd .amazonNote {
    font-size: 16px;
    font-size: 2.5vw;
  }
}

.faq__list li {
  position: relative;
  padding-left: 1.1em;
}

.faq__list li::before {
  position: absolute;
  top: 1px;
  left: 0;
  content: "●";
  display: block;
}

.faq__target {
  display: flex;
}

@media only screen and (max-width: 640px) {
  .faq__target {
    display: block;
  }
}

.faq__targetList {
  width: 50%;
  margin: 1em 0;
  padding-left: 0.5em;
}

@media only screen and (max-width: 640px) {
  .faq__targetList {
    width: 100%;
    border-width: 2px;
  }

  .faq__targetList:first-of-type {
    margin-bottom: 0;
  }

  .faq__targetList:last-of-type {
    margin-top: 0;
  }
}

.support_inner {
  background-color: #f2f2f2;
  width: 1030px;
  max-width: 100%;
  margin: 0 auto;
  padding: 0 30px 60px 30px;
}

#support_inner {
  padding-bottom: 0px;
}

.contact {
  background-color: #fff;
  padding: 0 15px 70px 15px;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.contact dd {
  font-size: 1.8rem;
  line-height: 1.5;
}

.contact dd span {
  display: block;
  font-size: 1.4rem;
  margin-top: 10px;
}

.contact dd span a {
  display: inline;
}

.contact dl:first-of-type {
  padding: 60px;
}

.contact dl:first-of-type dt {
  font-size: 2.3rem;
  padding-bottom: 0.5em;
}

.contact dl dt {
  font-size: 2.3rem;
  padding-bottom: 0.5em;
}

/* .support_1 dl:last-of-type dt {
  margin-bottom: 20px;
  font-size: 2.3rem;
  padding-top: 95px;
  background-image: url(../images/icon_support.svg);
  background-repeat: no-repeat;
  background-size: 81px 81px;
  background-position: center top;
} */

.support_2 dl:last-of-type dt {
  font-size: 2.3rem;
  padding-bottom: 95px;
  background-image: url(../images/icon_jcb_support.svg);
  background-repeat: no-repeat;
  background-size: 81px 81px;
  background-position: center bottom;
}

.contact dl dd {
  font-size: 1.4rem;
  margin-bottom: 5px;
  font-weight: 400;
}

.contact dl dd:nth-of-type(1) {
  font-size: 1.8rem;
  margin-bottom: 8px;
  line-height: 1.5;
  font-weight: 700;
}


.support_2 dl dd:nth-of-type(1) {
  font-size: 1.4rem;
  letter-spacing: 0;
  font-weight: 400;
}

.support_2 dl dd:nth-of-type(2) {
  font-size: 1.6rem;
  letter-spacing: 0;
  font-weight: 700;
}

/* .contact dl:last-of-type dd {
  font-size: 1.6rem;
} */

.contact dl:last-of-type dd p {
  margin-top: 0.75em;
}


@media only screen and (max-width: 640px) {
  .contact {
    /* padding: 0 9.4% 11%; */
    padding: 0 20px 11%;
    background-color: #fff;
  }

  /* .contact dd {
    font-size: 18px;
    font-size: 2.8125vw;
  } */

  .contact dl {
    padding: 0px;
  }

  .contact dl dt {
    font-size: 1.8rem !important;
    /* font-size: 3.75vw; */
    line-height: 1.3;
    margin-bottom: 1em;
  }

  .contact dl dd {
    font-size: 1.1rem;
    letter-spacing: 0;
    font-weight: 400;
  }

  .contact dl dd:nth-of-type(1) {
    font-size: 1.3rem;
    letter-spacing: 0;
    line-height: 1.4;
    font-weight: 700;
    /* font-size: 2.8125vw; */
  }

  /* .contact dd span {
    font-size: 1.2rem;
  } */

  .contact dl:first-of-type {
    margin-bottom: 1em;
    padding: 0px;
  }


  .contact dl:first-of-type dt {
    margin-bottom: 1em;
  }

  .contact dl:last-of-type dt {
    /* padding-top: 25%; */
    padding-top: 40px;
    background-size: 20%;
  }

  .support_2 dl:last-of-type dt {
    padding-top: 0%;
  }

  .support_2 dl dd:nth-of-type(1) {
    font-size: 1.1rem;
    letter-spacing: 0;
    font-weight: 400;
  }

  .support_2 dl dd:nth-of-type(2) {
    font-size: 1.3rem;
    letter-spacing: 0;
    font-weight: 700;
  }

  .support_2 dl:last-of-type dt {
    margin-bottom: 20px;
    padding-bottom: 55px;

  }

  /* .contact dl:last-of-type dt {
    margin-bottom: 1em;
    font-size: 24px;
    font-size: 3.75vw;
  } */
  /* .contact dl:last-of-type dd {
    font-size: 16px;
    font-size: 2.5vw;
    font-size: 18px;
    font-size: 2.8125vw;
  } */

  .support_inner {
    max-width: 100%;
    margin: 0 auto;
    padding: 30px 0 30px 0;
  }

  #support_inner {
    padding: 30px 0 30px 0;
  }




  .support_2 .linkButton {
    width: 70%;
  }

}

.footer {
  padding: 20px 4.7% 149px;
  text-align: center;
  background-color: #f2f2f2;
  font-size: 1.1rem;
  font-weight: 500;
  line-height: 1.8;
}

.footer span {
  display: inline-block;
}

@media only screen and (max-width: 640px) {
  .footer {
    padding-bottom: 33%;
  }
}

.applicationButton {
  position: fixed;
  bottom: 0;
  width: 100%;
  margin: auto;
  padding: 20px 0;
  background-color: rgba(204, 204, 204, 0.9);
  text-align: center;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.applicationButton__button {
  position: relative;
  display: flex;
  justify-content: space-between;
  width: 920px;
  max-width: 100%;
  margin: 0 auto 20px;
  cursor: pointer;
}

.applicationButton__button .btn {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(50% - 25px);
  height: 64px;
  font-size: 2.3rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  background-color: #eeb400;
  border-radius: 32px;
  color: #fff;
}

@media only screen and (max-width: 768px) {
  .applicationButton__button .btn {
    width: 48%;
    height: 9vw;
    font-size: 3vw;
  }
}

.applicationButton__button .btn::after {
  position: absolute;
  content: "";
  display: block;
  top: 50%;
  right: 23px;
  width: 11px;
  height: 23px;
  background-image: url(../images/icon_arrow_right.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  transform: translateY(-50%);
}

@media only screen and (max-width: 768px) {
  .applicationButton__button .btn::after {
    right: 8%;
  }
}

.applicationButton p.info {
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}

.applicationButton p.info br {
  display: none;
}

@media only screen and (max-width: 640px) {
  .applicationButton {
    padding: 4% 5%;
  }

  .applicationButton__button {
    width: 100%;
    margin: 0 auto 3%;
  }

  .applicationButton p.btn {
    width: 100%;
    height: auto;
    padding: 1em;
    font-size: 23px;
    font-size: 3.59375vw;
  }

  .applicationButton p.btn::after {
    width: 3%;
  }

  .applicationButton p.info {
    font-size: 18px;
    font-size: 2.8125vw;
    line-height: 1.4;
  }

  .applicationButton p.info br {
    display: block;
  }
}

.popup {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 150px 3%;
  overflow: auto;
  transition: opacity 0.2s ease-in 0s;
}

@media only screen and (max-width: 640px) {
  .popup {
    padding-top: 20%;
  }
}

.popup.active {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.2s ease-in 0s;
}

.popup__bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(204, 204, 204, 0.8);
  z-index: 0;
}

.popup__wrapper {
  position: relative;
  width: 1100px;
  max-width: 100%;
  height: 1100px;
  margin: auto;
  z-index: 2;
}

.popup__inner {
  width: 1100px;
  max-width: 100%;
  margin: auto;
  padding: 7.27% 7.27% 5.45%;
  background-color: #fff;
  border-radius: 17px;
}

.popup__close {
  position: absolute;
  top: -80px;
  right: 0;
  left: 0;
  width: 1100px;
  max-width: 100%;
  height: 60px;
  margin: auto;
  padding: 0;
  border: none;
  background-color: transparent;
}

.popup__close span {
  position: absolute;
  top: 30px;
  right: 0;
  display: block;
  height: 6px;
  width: 80px;
  background-color: #fff;
}

.popup__close span:first-of-type {
  transform: rotate(45deg);
}

.popup__close span:last-of-type {
  transform: rotate(-45deg);
}

@media only screen and (max-width: 640px) {
  .popup__close {
    top: -65px;
  }

  .popup__close span {
    width: 50px;
  }
}

.popup__title {
  margin-bottom: 30px;
  font-size: 3.9rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.1em;
}

@media only screen and (max-width: 640px) {
  .popup__title {
    font-size: 39px;
    font-size: 6.09375vw;
    margin-bottom: 8%;
  }
}

.popup__cards {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.popup__cards:first-of-type {
  border-bottom: solid 1px #000;
}

@media only screen and (max-width: 768px) {
  .popup__cards {
    display: block;
    margin-bottom: 10%;
  }

  .popup__cards:first-of-type {
    padding-bottom: 10%;
  }
}

.popup__cardsInner {
  width: calc(100% - 250px);
}

@media only screen and (max-width: 768px) {
  .popup__cardsInner {
    width: 100%;
  }
}

.popup__cardItem {
  display: flex;
  align-items: center;
  padding: 20px 0;
}

.popup__cardItem figure {
  width: 191px;
  margin-right: 29px;
}

@media only screen and (max-width: 900px) {
  .popup__cardItem figure {
    width: 140px;
  }
}

@media only screen and (max-width: 640px) {
  .popup__cardItem {
    padding: 0 0 5%;
  }

  .popup__cardItem figure {
    width: 40%;
    margin-right: 5%;
  }
}

.popup__cardName {
  width: calc(100% - 220px);
  font-size: 2.3rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.popup__cardName span {
  font-size: 1.2rem;
  line-height: 1.5;
  font-weight: 400;
  letter-spacing: 0;
  margin-top: 7px;
  display: inline-block;
}

@media only screen and (max-width: 640px) {
  .popup__cardName span {
    font-size: 0.78rem;

  }
}

@media only screen and (max-width: 900px) {
  .popup__cardName {
    width: calc(100% - 160px);
  }
}

@media only screen and (max-width: 640px) {
  .popup__cardName {
    font-size: 19px;
    font-size: 2.96875vw;
    width: 55%;
  }
}

.popup__application {
  position: relative;
  width: 288px;
  height: 70px;
  margin: auto;
}

.popup__application a {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding-left: 10px;
  line-height: 1.2;
  font-size: 1.9rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  background-color: #129FDD;
  color: #ffffff;
}

.popup__application a::after {
  position: absolute;
  content: "";
  display: block;
  top: 50%;
  right: 12px;
  width: 36px;
  height: 8px;
  background-image: url(../images/icon_arrow_right_long.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  transform: translateY(-50%);
}

@media only screen and (max-width: 768px) {
  .popup__application {
    width: 100%;
    height: auto;
  }

  .popup__application a {
    padding: 1em;
    font-size: 19px;
    font-size: 2.96875vw;
  }

  .popup__application a br {
    display: none;
  }
}


.l-content2 {
  width: 100%;
  max-width: 850px;
  padding: 0px 20px;
  margin: 0 auto;
  box-sizing: border-box;
}

.c-title01 {
  width: 100%;
  height: auto;
  text-align: center;
}

.c-title01 h2 {
  font-size: 50px;
  font-weight: 900;
  position: relative;
  display: inline-block;
  z-index: 1;
  margin-top: 20px;
  width: 100%;
}

@media screen and (max-width: 768px) {
  .c-title01 h2 {
    font-size: 35px;
    line-height: 1.3;
  }
}

@media screen and (max-width: 768px) and (max-width: 374px) {
  .c-title01 h2 {
    font-size: 30px;
  }
}

.c-title01 h2 strong {
  font-size: 36px;
  font-weight: 900;
  line-height: 1;
  margin: 10px 0px;
  display: block;
}

@media screen and (max-width: 768px) {
  .c-title01 h2 strong {
    font-size: 22px;
  }
}

.c-title01 h2 span {
  color: #f2f2f2;
  font-size: 70px;
  font-weight: 900;
  line-height: 1;
  position: absolute;
  display: inline-block;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  letter-spacing: 5px;
  top: -37px;
  width: 100%;
}

@media screen and (max-width: 768px) {
  .c-title01 h2 span {
    font-size: 54px;
    letter-spacing: 6px;
  }
}

@media screen and (max-width: 768px) and (max-width: 374px) {
  .c-title01 h2 span {
    font-size: 46px;
  }
}

.c-tab01__list {
  width: 100%;
  height: auto;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.c-tab01__list li {
  width: calc(50% - 0px);
}

.c-tab01__list li a {
  width: 100%;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px 10px 0 0;
  color: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  background: #9BDBEA;
  font-weight: 700;
  padding: 6% 0px;
  cursor: pointer;
  transition: 0.2s;
  font-size: 3rem;
}

@media screen and (max-width: 640px) {
  .c-tab01__list li a {
    font-size: 1.5rem;
    height: 100%;
  }

}

/* .c-tab01__list li a:hover {
	color: #fff;
	background: rgba(216, 68, 147,0.9);
	
} */
.c-tab01__list li.is-active a {
  color: #fff;
  background: #33A8D1;
}


.c-tab01__box.is-active {
  display: block;
}

/* .index-flow .c-tab01__box {
	padding: 45px 0px 30px;
} */
.c-tab01__box {
  display: none;
  clear: both;
  position: relative;
  width: 100%;
  height: auto;
  border: 1.5rem solid #33A8D1;
  border-top: 1.5rem solid #33A8D1;
}

@media screen and (max-width: 640px) {
  .c-tab01__box {
    border: 1rem solid #33A8D1;
    border-top: 1rem solid #33A8D1;

  }
}

.c-tab01__box.is-active {
  display: block;
}

@media only screen and (max-width: 641px) {
  .pc_only {
    display: none;
  }
}

@media only screen and (min-width: 500px) {
  .sp_only {
    display: none;
  }
}

.m-card-tablearea {
  box-sizing: border-box;

}

.m-card-tablearea-shadow {
  display: none;
}

@media screen and (max-width:960px) {
  .m-card-tablearea {
    overflow-x: auto;
    border-left: 15px solid #fff;
    transition: .3s;
    width: 100%;

  }

  .m-card-tablearea-shadow.is-hide {
    opacity: 0;
  }

}

@media screen and (max-width:640px) {
  .m-card-tablearea-shadow {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .2) 100%);
    display: block;
    width: 25px;
    position: absolute;
    right: 5%;
    opacity: 1;
  }
}

@media screen and (min-width:641px)and (max-width: 960px) {
  .m-card-tablearea-shadow {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .2) 100%);
    display: block;
    width: 25px;
    position: absolute;
    right: 5%;
    opacity: 1;
  }
}

@media screen and (max-width:640px) {
  .detail_can li {
    position: relative;
    padding-left: 1.5rem;

  }
}


.detail_can li {
  position: relative;
  padding-left: 2rem;

}

.detail_can li::before {
  position: absolute;
  content: "※";
  left: 0;
  display: block;


}