@charset "UTF-8";
/* common
---------------------------------*/
.goldCard {
  font-size: 14px;
}

a:hover {
  opacity: 0.8;
}

img {
  vertical-align: top;
}

.inner {
  margin: 0 auto;
  max-width: 960px;
}

.section_w {
  background-color: #0a2240;
  font-family: "YuMincho", "Yu Mincho", "Hiragino Mincho ProN", serif;
}

.heading {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #c0954c;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 144px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.heading .heading02 {
  color: #fff;
  font-size: 38px;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}

.heading .heading02 .sub {
  display: block;
  font-size: 20px;
  font-weight: normal;
  position: relative;
}

.heading .heading02 .sub::after {
  background: #f3c873;
  content: "";
  display: inline-block;
  width: 82px;
  left: 0;
  height: 2px;
  margin: 0 auto;
  position: absolute;
  right: 0;
  bottom: -6px;
}

/* mainvisual
---------------------------------*/
.mainvisual {
  background: url(/promotion/ordercard/gold/images/bg_mainvisual.png) no-repeat top center #060028;
  position: relative;
  z-index: 1
}

.mainvisual::before {
  content:"";
  width: 100%;
  display: block;
  height: 100px;
  position: absolute;
  bottom: 0;
  background:-moz-linear-gradient(90deg, #000 20%, transparent 100%);
  background:-webkit-linear-gradient(90deg, #000 20%, transparent 100%);
  background:-ms-linear-gradient(90deg, #000 20%, transparent 100%);
  z-index: -1;
}
.mainvisual::after {
  position: absolute;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 23px 16.5px 0 16.5px;
  border-color: #0a2240 transparent transparent transparent;
  bottom: -23px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.mainvisual .inner {
  padding: 40px 20px 60px;
  max-width: 1100px;
}

.mainvisual .header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 960px;
  margin: 0 auto 30px;
  box-sizing: border-box;
}

.mainvisual .header_logo {
  max-width: 6%;
}

.mainvisual .heading01 {
  max-width: 960px;
  width: 100%;
  margin: 0 auto;
  padding-right: 0 80px;
  box-sizing: border-box;
}

.mainvisual .heading01 .h1_secondary {
  margin: 0 0 -56px -10px;
}

.mainvisual .lead dt {
  margin-bottom: 60px;
  text-align: center;
}

.mainvisual .lead dd {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.mainvisual .lead dd figure {
  width: 100%;
}

.mainvisual .lead dd figure + figure {
  margin-left: 20px;
}



/* renewal
---------------------------------*/


.renewal {
  text-align: center;
  background-color: #000;
  padding: 25px 0 80px;
}
.renewal_campaign {
  max-width: 880px;
  width: 100%;
  margin: 60px auto 0;
}

.renewal_column {
  display: flex;
  justify-content: space-between;
}

.renewal_campaign_list01 {
  margin-bottom: 13px;
}
.renewal_campaign_list a:hover{
  display: block;
  opacity: 0.8;

}

/* campaign
---------------------------------*/


.campaign {
  background-color: #0a2240;
}

.campaign .inner {
  padding: 75px 20px;
}

.campaign_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
}

.campaign_list li {
  width: 48%;
}

.campaign_list li + li {
  margin-left: 20px;
}

.campaign_list li dl {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #e2c68d;
  color: #e2c68d;
  display: inline-block;
  max-width: 460px;
  width: 100%;
  text-align: center;
}

.campaign_list li dl dt {
  border-bottom: 1px solid #e2c68d;
  font-size: 26px;
  letter-spacing: 0;
  margin: 0 15px;
  padding: 10px 0;
  position: relative;
}

.campaign_list dt::after {
  content: "";
  display: block;
  width: 9px;
  height: 23px;
  position: absolute;
  top: 50%;
  right: 0px;
  transform: translateY(-50%);
  background-image: url(/promotion/ordercard/gold/images/campaign_icon.png);
}

.campaign_list li dl dd {
  font-size: 24px;
  padding: 15px 25px;
  position: relative;
}

.campaign_list li dl dd .em {
  font-size: 40px;
  margin: 0 0.1em;
  display: inline-block;
}

.campaign_list li dl dd .sl {
  font-size: 18px;
}

.campaign_list_main {
  margin-bottom: 6px;
}

.campaign_list_daytxt {
  font-size: 16px;
  margin-bottom: 3px;
}

.campaign_list_daytxt > .daytxt_small {
  font-size: 14px;
}

.campaign_list_note {
  font-size: 12px;
}

/* .campaign_list li dl dd:after {
  content: url(/promotion/ordercard/gold/images/icon_arrow_right.png);
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
} */

.campaign .campaign_link {
  margin-top: 50px;
  text-align: center;
}

.campaign .campaign_link .title {
  color: #e2c68d;
  font-size: 29px;
}

.campaign .campaign_link a {
  color: #e2c68d;
  font-size: 20px;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}

.campaign .campaign_link li:not(:last-child) {
  margin-bottom: 10px;
}

.campaign_premium {
  border: 1px #e2c68d solid;
  margin-top: 75px;
  width: 100%;
}

.campaign_premium_title {
  padding: 30px 0px;
  text-align: center;
}

.campaign_premium_title p {
  color: #e2c68d;
  font-size: 32px;
}

.campaign_premium_bnr {
  margin-bottom: 50px;
  text-align: center;
}

.campaign .accordion_btn {
  background-color: #060028;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #e2c68d;
  margin: 0 auto 40px;
  width: 100%;
}

.campaign .accordion_btn.is-active {
  margin: 0 auto 52px;
}

.campaign .accordion_btn p {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #e2c68d;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 24px;
  font-weight: bold;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 8px 0;
  padding-right: 20px;
  position: relative;
  text-align: center;
}

.campaign .accordion_btn p:after {
  right: 10px;
  content: "";
  display: inline-block;
  background-image: url(/promotion/ordercard/gold/images/icon_plus.png);
  background-size: contain;
  height: 30px;
  position: absolute;
  width: 30px;
  background-repeat: no-repeat;
}

.campaign .accordion_btn.is-active p:after {
  background-image: url(/promotion/ordercard/gold/images/icon_minus.png);
}

.campaign_list_sp {
  display: none;
}

@media screen and (max-width: 1198px) {
  .campaign_list li dl {
    max-width: 490px;
    width: 100%;
  }
}

@media screen and (max-width:1000px) {
  .campaign_list li dl {
    min-height: 28vw;
    height: 100%;
  }
  .campaign_list li dl dt {
    font-size: 2.7vw;
  }
  .campaign_list li dl dd {
    font-size: 2.2vw;
  }
  .campaign_list li dl dd .em {
    font-size: 4vw;
  }
  .campaign_list li dl dd .sl {
    font-size: 1.8vw;
  }
}


/* service
---------------------------------*/
.service {
  color: #e2c68d;
  padding-bottom: 60px;
}

.service .inner {
  padding: 60px 20px 0px;
}

.service .heading {
  height: 130px;
}

.service .heading02 {
  margin-top: -7px;
  font-size: 30px;
  letter-spacing: -0.8px;
}

.service .heading .heading02 .sub {
  font-size: 14px;
  margin-top: 10px;
  letter-spacing: 2px;
}

.service_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.service_list li {
  width: 100%;
}

.service_list li + li {
  margin-left: 23px;
}

.service_list li a {
  display: block;
  position: relative;
}

.service_list li a:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 50px 50px;
  border-color: transparent transparent #fff transparent;
}

.service_list + ul {
  margin-top: 23px;
}

.service .service_premir {
  padding: 75px 0;
}

.service .service_premir .title {
  font-size: 29px;
  margin-bottom: 34px;
}

.service .service_premir .title .em {
  display: block;
  font-size: 39px;
}

.service_premir .inner {
  padding: 60px 20px 0px;
  max-width: 808px;
}

.service_premir .heading {
  height: 130px;
}

.service_premir .heading02 {
  margin-top: -19px;
  font-size: 30px;
  letter-spacing: -0.8px;
}

.service_premir .heading .heading02 .sub {
  font-size: 14px;
  margin-top: 10px;
  letter-spacing: 2px;
}

.service_premir .heading {
  height: 130px;
}

.service_premir .heading02 {
  margin-top: -7px;
  font-size: 30px;
  letter-spacing: -2.6px;
}

.service_premir .heading .heading02 .sub {
  font-size: 14px;
  margin-top: 10px;
  letter-spacing: 2px;
}

.premir_heading {
  font-size: 30px;
  color: #e2c68d;
  text-align: center;
  margin-bottom: 9px;

}
.premir_img {
  display: flex;
  align-items: center;
}

.premir_imgtxt {
  font-size: 14px;
  color: #fff;
  margin-left: 25px;
  line-height: 2.2;
}
.premir_imgtxt_gd {
  font-size: 20px;
  color: #e2c68d;
  margin-bottom: 7px;
}

.service_premir_request .inner {
  padding: 58px ​20px 0px;
}

.service_premir_request_feature {
  text-align: center;
  font-size: 28px;
  margin-bottom: 10px;
}

.service_premir_request_link {
  text-align: center;
  font-size: 16px;
  color: #e2c68d;
}

.service_premir_request_link > a {
  color: #e2c68d; 
  text-decoration: underline;
}

.service_premir_request_boxtxt {
  border: solid 1px #fff;
  text-align: center;
  margin: auto;
  padding: 25px 30px;
  font-size: 20px;
  max-width: 578px;
  width: 100%;
  color: #fff;
  margin-top: 37px;
}

.service .service_premir .feature {
  font-size: 28px;
  margin: 0 auto;
  text-align: center;
  display: flex;
  justify-content: space-around;
}


.service .service_premir .feature dl dt {
  margin: 16px 0 16px;
  position: relative;
  font-size: 20px;
}

.service .service_premir .feature dl dt .em {
  font-size: 20px;
}

.service .service_premir .feature dl dt:after {
  background: #e2c68d;
  content: "";
  display: inline-block;
  left: 0;
  height: 2px;
  margin: 0 auto;
  position: absolute;
  right: 0;
  bottom: 0px;
  width: 96px;
}
.service .service_premir .feature dl dd {
  font-size: 16px;
  color: #fff;
}
.service .service_premir .feature dl dd .note {
  font-size: 12px;
  margin-left: 10px;
  display: inline-block;
  margin-top: 5px;
}

.service .service_premir .feature dl dd .notice {
  display: block;
  font-size: 24px;
}

.service .service_premir .feature dl .feature_lead {
  background-color: #e2c68d;
  color: #0a2240;
  font-weight: bold;
  margin: 25px 0 20px;
  width: 100%;
}

.service .service_premir a {
  color: #e2c68d;
  font-size: 19px;
  text-decoration: underline;
}

.service .service_premium_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.service .service_premium_list li {
  width: 100%;
}

.service .service_premium_list li + li {
  margin-left: 23px;
}

.service .service_premium_list li a {
  display: block;
  position: relative;
}

.service .service_premium_list li a:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 50px 50px;
  border-color: transparent transparent #fff transparent;
}

.service .service_premium_list + ul {
  margin-top: 23px;
}

@media all and (-ms-high-contrast: none) {
  .service_list li {
    max-width: 304px;
  }
  .service_list:nth-child(2) li {
    max-width: 222px;
  }
  .service_premium_list li {
    max-width: 304px;
  }
  .service_premium_list:nth-child(2) li {
    max-width: 468px;
  }
}

/* upgrade
---------------------------------*/
.upgrade {
  background: url(/promotion/ordercard/gold/images/bg_upgrade.jpg) no-repeat top center/ cover #000000;
  text-align: center;
}

.upgrade .inner {
  padding: 50px 20px 80px;
}

.upgrade .lead {
  color: #f3c873;
  font-size: 34px;
  margin-bottom: 40px;
}

.upgrade .heading03 {
  color: #fff;
  font-size: 30px;
  margin-bottom: 30px;
}

.upgrade .heading03 span {
  display: block;
}

.upgrade .heading03 .sub {
  font-size: 29px;
}

.upgrade .heading03 .em {
  color: #f3c873;
  font-size: 44px;
  font-weight: bold;
  margin: 5px 0 -15px;
}

.upgrade .heading03 .em_num {
  display: inline;
  font-size: 55px;
}

.upgrade .heading03 .last {
  margin-top: -16px;
}

.upgrade .heading03 .sub2 {
  font-size: 24px;
}

.upgrade .description {
  color: #fff;
  font-size: 18px;
}


/* upgrade_img */


.upgrade_img {
  color: #fff;
  text-align: left;
  max-width: 800px;
  width: 100%;
  margin: auto;
  padding-right: 20px;
}

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

.upgrade_img :last-child{
  margin-bottom: 0;
}

.upgrade_img_title {
  font-size: 40px;
  color: #fff;
  float: right;
  width: 47%;
  margin-bottom: 25px;
}

.upgrade_img_description {
  font-size: 16px;
  float: right;
  width: 47%;
  margin-bottom: 25px;
  line-height: 1.7;
}

.upgrade_img_card {
  float: left;
  width: 50%;
  text-align: center;
  margin-top: -15px;
}


/* security
---------------------------------*/
.security .inner {
  padding: 70px 20px 90px;
  max-width: 880px;
}

.security .heading {
  height: 130px;
}

.security .heading02 {
  margin-top: -7px;
  font-size: 28px;
  letter-spacing: -0.8px;
}

.security .heading .heading02 .sub {
  font-size: 14px;
  margin-top: 10px;
  letter-spacing: 2px;
}

.security .security_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  justify-content: space-around;
}

.security .security_list li {
  text-align: center;
  max-width: 273px;
}

.security .security_list li figure {
  display: flex;
  align-content: center;
  justify-content: center;
}
.security .security_list li:nth-child(1) figure {
  margin-bottom: 31px;
}
.security .security_list li:nth-child(2) figure {
  margin-bottom: 25px;
}
.security .security_list li:nth-child(3) figure {
  margin-bottom: 35px;
}


.security .security_list li dl {
  color: #Fff;
}

.security .security_list li dl dt {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 13px;
  text-align: center;
}

.security .security_list li dl dd {
  font-size: 14px;
  padding: 0 15px;
  text-align: left;
}

/* point
---------------------------------*/
.point {
  color: #fff;
}

.point .inner {
  padding: 55px 20px 100px;
  max-width: 848px;
}

.point .heading {
  height: 130px;
}

.point .heading02 {
  margin-top: -7px;
  font-size: 30px;
  letter-spacing: -0.8px;
}

.point .heading .heading02 .sub {
  font-size: 14px;
  margin-top: 10px;
  letter-spacing: 2px;
}

.point .heading03 {
  font-size: 20px;
  margin-bottom: 47px;
  text-align: center;
}

.point_list {
  margin-bottom: 70px;
}

.point_list li {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 60px;
}

.point_list li figure {
  width: 30%;
}

.point_list li dl {
  padding-left: 5%;
  width: 70%;
}

.point_list li dl dt {
  color: #e2c68d;
  font-size: 30px;
  font-weight: bold;
  margin-bottom: 33px;
}

.point_list li dl dd {
  font-size: 14px;
}

.point_list li dl .link {
  margin-top: 30px;
  font-size: 16px;
}

.point_list li dl .link a {
  color: #fff;
  text-decoration: underline;
}

.point_list li:nth-child(2) dl {
  padding-left: 0;
  padding-right: 50px;
  max-width: 815px;
}


.point .pointchange .title {
  color: #e2c68d;
  font-size: 29px;
  font-weight: bold;
  margin-bottom: 30px;
  text-align: center;
}


.pointchange {
  padding-right: 2vw;
}
.point .pointchange .pointchange_list {
  display: flex;
  flex-wrap: wrap;
}
.point .pointchange .pointchange_list li {
  width: 50%;
  margin-bottom: 20px;
}
.point .pointchange .pointchange_list li:nth-child(2) {
  margin-left: 0;
}
.pointchange_list h4 {
  padding: 1em;
  color: #e2c68d;
  font-size: 20px;
  text-align: left;
}
.pointchange_list h4::before,
.pointchange_list h4::after {
  content: "-";
  padding: 0 0.5em;
}
.pointchange_list .flex {
  display: flex;
  justify-content: flex-end;
}
.point .pointchange .pointchange_list li figure {
  margin: 0;
  width: 40%;
}
.pointchange_list dl {
  width: 60%;
  padding: 1em;
  text-align: left;
}
.point .pointchange .pointchange_list li dl dt {
  margin-top: 10px;
}
.point .pointchange .pointchange_list li dl dt {
  font-size: 14px;
  vertical-align: middle;
}
.pointchange_list .em {
  color: #ffff00;
  font-size: 15px;
  vertical-align: middle;
}
.pointchange_list .arrow {
  position: relative;
  display: inline-block;
  padding: 0px 32px 0 0;
}
.pointchange_list .arrow::before,
.pointchange_list .arrow::after {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}
.pointchange_list .arrow::before {
  right: 0;
  box-sizing: border-box;
  width: 1px;
  height: 12px;
  border: 8px solid transparent;
  border-left: 10px solid #ffff00;
}
.pointchange_list .arrow::after {
  right: 10px;
  width: 6px;
  height: 8px;
  border-left: 12px solid #ffff00;
}
.point .pointchange .pointchange_list li.amazon figure {
  width: 40%;
}
.pointchange_list p {
  font-size: 14px;
}
li.amazon .em {
  font-size: 16px;
}
.point .pointchange .pointchange_list li.amazon dl dt {
  margin-top: 5px;
}
li.amazon dt p {
  padding-top: 0.5em;
}
.point .pointchange .pointchange_list li.jcbgift dl dt {
  font-size: 16px;
}
.pointchange_list li.jcbgift dl dt .em {
  color: #ffff00;
  font-size: 16px;
}


.point .pointchange .notice {
  font-size: 12px;
  text-indent: -1em;
  max-width: 750px;
  margin-top: 40px;
}

/* voice
---------------------------------*/
.voice .inner {
  padding: 60px 20px 100px;
}

.voice_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.voice .heading {
  height: 130px;
}

.voice .heading02 {
  margin-top: -7px;
  font-size: 30px;
  letter-spacing: -0.8px;
}

.voice .heading .heading02 .sub {
  font-size: 14px;
  margin-top: 10px;
  letter-spacing: 2px;
}

.voice_list li {
  border: 1px solid #e2c68d;
  border-top: none;
  width: 380px;
}

.voice_list li + li {
  margin-left: 30px;
}

.voice_list li dl dt {
  background-color: #e2c68d;
  color: #0a2240;
  font-size: 20px;
  font-weight: bold;
  padding: 6px 0;
  text-align: center;
}

.voice_list li dl dd {
  color: #e2c68d;
  font-size: 18px;
  line-height: 1.6;
  padding: 30px 20px;
}

.voice_list li dl dd .personal_info {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 24px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 30px;
}

.voice_list li dl dd .personal_info p {
  line-height: 1.4;
  margin-left: 20px;
}

/* basicinfo
---------------------------------*/
.basicinfo {
  background-color: #fff;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}

.basicinfo .inner {
  padding: 100px 20px 0;
}

.basicinfo .heading02 {
  font-size: 34px;
}

.basicinfo .sub {
  font-size: 16px;
  margin-bottom: 45px;
}

.basicinfo .links {
  margin: 25px 0 75px;
}

.basicinfo .card_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  margin-top: 40px;
  margin-bottom: 80px;
}

.basicinfo .card_list li {
  max-width: 296px;
  width: 100%;
}

.basicinfo .card_list li + li {
  margin-left: 60px;
}

.basicinfo .card_list li p {
  font-size: 18px;
  margin-bottom: 10px;
}

.basicinfo .notes {
  margin: 0 auto 35px;
  max-width: 842px;
  text-align: left;
  font-size: 12px;
}

@media all and (-ms-high-contrast: none) {
  .basicinfo .card_list li {
    max-width: 288px;
  }
}

.goldCard .section {
  padding: 40px 0 100px;
}

.goldCard .section_inner {
  width: 100%;
  max-width: 982px;
  margin: 0 auto;
  padding: 0 10px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.goldCard .section_inner > * {
  margin-bottom: 10px;
}

.goldCard .section_feature {
  background: #e7e1d1;
}

.goldCard .section_premium .m-box-c {
  margin-bottom: 25px;
}

.goldCard .section_premium .m-list-notes {
  margin: 30px 0 20px;
}

.goldCard .section_class .m-list-notes {
  margin: 30px 0 0;
}

.goldCard .section_border {
  border-top: 1px solid #ccc;
}

.goldCard .section_platinum {
  background: url(/promotion/ordercard/gold/images/bg_platinum.png) repeat-y center top #313131;
}

.goldCard .section_platinum .m-card-box-img {
  width: 320px;
  max-width: 320px;
}

.goldCard .section_platinum .m-card-box-body {
  width: 55%;
  max-width: 500px;
}

.goldCard .section_notes {
  background: #f2f2f2;
}

.goldCard .section_notes .section_inner > * {
  margin-bottom: 40px;
}

.goldCard .section_notes .m-hdg-normal {
  font-family: "YuMincho", "Yu Mincho", "Hiragino Mincho ProN", serif;
}

.goldCard .section_notes .m-hdg-normal > * {
  font-size: 20px;
  font-weight: bold;
}

.goldCard .section_notes .m-txt-bold {
  margin-bottom: 10px;
}

.goldCard .status_img {
  padding: 50px 0;
  position: relative;
  overflow: hidden;
}

.goldCard .status_img::before, .goldCard .status_img::after {
  content: "";
  display: block;
  width: 14px;
  height: 14px;
  margin: 0 auto;
  border-radius: 50%;
  background: #9c7b15;
}

.goldCard .status_img::after {
  margin-top: 75px;
}

.goldCard .status_box {
  opacity: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  max-width: 962px;
  min-height: 300px;
  padding: 45px 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  z-index: 2;
}

.goldCard .status_box_wrap {
  opacity: 0;
  position: relative;
}

.goldCard .status_box_wrap::before, .goldCard .status_box_wrap::after {
  content: "";
  display: block;
  border-radius: 50%;
  z-index: 3;
}

.goldCard .status_box_wrap::before {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #eee4c5;
  position: absolute;
  left: 55px;
  top: 50%;
  margin-top: -25px;
}

.goldCard .status_box_wrap::after {
  width: 14px;
  height: 14px;
  background: #9c7b15;
  position: absolute;
  left: 73px;
  top: 50%;
  margin-top: -7px;
}

.goldCard .status_box_wrap_premium::before {
  left: auto !important;
  right: 55px !important;
}

.goldCard .status_box_wrap_premium::after {
  left: auto !important;
  right: 73px !important;
}

.goldCard .status_card_info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 510px;
  padding: 40px 20px 40px 60px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: #fff;
  -webkit-box-shadow: 0 15px 15px -10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 15px 15px -10px rgba(0, 0, 0, 0.2);
  position: relative;
  z-index: 2;
}

.goldCard .status_card_info_rev {
  width: 590px;
  padding: 40px 30px 40px 20px;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.goldCard .status_card_info_rev .status_card_txt {
  max-width: 285px;
  padding: 0 30px 0 0;
}

.goldCard .status_card_img {
  width: 100%;
  max-width: 214px;
}

.goldCard .status_card_txt {
  width: 100%;
  max-width: 276px;
  padding-left: 30px;
  text-align: center;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.goldCard .status_card_txt > p {
  color: #9c7b15;
  font-size: 14px;
  font-weight: bold;
  font-family: "YuMincho", "Yu Mincho", "Hiragino Mincho ProN", serif;
}

.goldCard .status_card_txt > p span {
  font-size: 20px;
}

.goldCard .status_card_txt .m-band-gold {
  margin: 25px 0 0;
}

.goldCard .status_card_txt .m-notes-list {
  margin-top: 5px;
}

.goldCard .status_border {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding: 0 78px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
  position: absolute;
  left: 0;
  top: 55px;
}

.goldCard .status_border img {
  height: 1173px;
}

.goldCard .status_normal {
  -webkit-transform: translateX(-5%);
  transform: translateX(-5%);
  -webkit-transition: -webkit-transform .5s;
  transition: -webkit-transform .5s;
  transition: transform .5s;
  transition: transform .5s, -webkit-transform .5s;
  margin-top: 55px;
  padding-left: 80px;
  background: url(/promotion/ordercard/gold/images/status_img_01.png) no-repeat right center;
}

.goldCard .status_normal.is-active {
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.goldCard .status_premium {
  -webkit-transform: translateX(5%);
  transform: translateX(5%);
  -webkit-transition: -webkit-transform .5s;
  transition: -webkit-transform .5s;
  transition: transform .5s;
  transition: transform .5s, -webkit-transform .5s;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin-top: 60px;
  padding-right: 80px;
  background: url(/promotion/ordercard/gold/images/status_img_02.png) no-repeat left center;
}

.goldCard .status_premium.is-active {
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.goldCard .status_class {
  -webkit-transform: translateX(-5%);
  transform: translateX(-5%);
  -webkit-transition: -webkit-transform .5s;
  transition: -webkit-transform .5s;
  transition: transform .5s;
  transition: transform .5s, -webkit-transform .5s;
  margin-top: 60px;
  padding-left: 80px;
  background: url(/promotion/ordercard/gold/images/status_img_03.png) no-repeat right center;
}

.goldCard .status_class.is-active {
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.goldCard .txt_block {
  margin-top: 100px;
}

.goldCard .txt_block .m-border-ttl span {
  background: #e7e1d1;
}

.goldCard .txt_block_inner {
  width: 100%;
  max-width: 910px;
  margin: 0 auto;
  padding: 30px 20px 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.goldCard .txt_block .m-btn {
  margin: 20px auto 40px;
}

.goldCard .txt_block .m-btn span {
  border: 1px solid #000;
}

.goldCard .pointchange_area {
  margin-top: 80px;
}

.goldCard .pointchange_area > .m-txt-lg {
  margin-bottom: 15px;
}

.goldCard .pointchange_item {
  width: 164px;
  margin: 10px 0 0 16px;
}

.goldCard .pointchange_item_list {
  width: 100%;
  max-width: 885px;
  margin: 0 auto 50px;
}

.goldCard .pointchange_item_list .m-grid {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: -10px 0 0 -16px;
}

.goldCard .pointchange_item p {
  margin-top: 15px;
  font-size: 13px;
  font-weight: bold;
  text-align: center;
}

.goldCard .pointchange_item p span {
  color: #9c7b15;
  font-weight: normal;
}

.goldCard .m-align-c {
  text-align: center;
}

.goldCard .m-align-l {
  text-align: left !important;
}

.goldCard .m-align-r {
  text-align: right !important;
}

.goldCard .m-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -20px 0 0 -16px;
}

.goldCard .m-grid.m-grid-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.goldCard .m-grid-3 > * {
  margin: 20px 0 0 16px;
  width: calc(100% / 3 - 16px);
}

.goldCard .m-grid-4 > * {
  margin: 20px 0 0 16px;
  width: calc(100% / 4 - 16px);
}

.goldCard .m-grid-basic {
  width: 516px;
  margin: 0 auto 30px;
}

.goldCard .m-grid-basic > * {
  width: 250px;
  margin: 0;
}

.goldCard .m-grid-basic > *:last-child {
  margin-left: 16px;
}

.goldCard .m-grid-basic > * .card_name {
  margin-bottom: 5px;
}

.goldCard .m-grid-basic + .m-list-notes {
  margin-bottom: 30px;
}

.goldCard .m-border-ttl {
  position: relative;
  text-align: center;
}

.goldCard .m-border-ttl > span {
  display: inline-block;
  padding: 0 20px;
  color: #000;
  font-size: 20px;
  background: #fff;
  position: relative;
  z-index: 1;
}

.goldCard .m-border-ttl > span::before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #000;
  position: absolute;
  left: 100%;
  top: 50%;
  margin-top: -0.5px;
}

.goldCard .m-border-ttl > span::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #000;
  position: absolute;
  right: 100%;
  top: 50%;
  margin-top: -0.5px;
}

.goldCard .m-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}

.goldCard .m-btn > * {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  min-height: 50px;
  padding: 5px 15px;
  color: #000;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: #fff;
  border-radius: 50px;
}

.goldCard .m-btn > *:hover {
  opacity: .9;
}

.goldCard .m-btn-gold > * {
  color: #fff;
  background: #9c7b15;
}
.goldCard .m-btn-grey > * {
  color: #fff;
  background: #AFABAB;
}

.goldCard .m-btn-gradation > * {
  color: #4c412a;
  background: #9c7b15;
  background: -webkit-gradient(linear, left bottom, left top, from(#e49a02), color-stop(50%, #f4cc7a), to(#e49a02));
  background: linear-gradient(0deg, #e49a02 0%, #f4cc7a 50%, #e49a02 100%);
}

.goldCard .m-btn-xl {
  max-width: 540px;
}

.goldCard .m-btn-xl > * {
  font-size: 20px;
  min-height: 70px;
}

.goldCard .m-btn-lg {
  max-width: 400px;
}

.goldCard .m-btn-lg > * {
  font-size: 16px;
  min-height: 70px;
}

.goldCard .m-btn-sm {
  max-width: 150px;
}

.goldCard .m-btn-sm > * {
  min-height: 30px;
}

.goldCard .m-btn-gotop {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: #bba56d;
  border-radius: 50%;
}

.goldCard .m-btn-gotop:hover {
  opacity: .9;
}

.goldCard .m-hdg {
  margin-bottom: 50px;
  padding-bottom: 25px;
  text-align: center;
  position: relative;
  font-family: "YuMincho", "Yu Mincho", "Hiragino Mincho ProN", serif;
}

.goldCard .m-hdg > * {
  font-weight: bold;
  font-size: 26px;
}

.goldCard .m-hdg::after {
  content: "";
  display: block;
  width: 72px;
  height: 3px;
  background: #9c7b15;
  position: absolute;
  left: 50%;
  bottom: 0;
  margin-left: -36px;
}

.goldCard .m-hdg-platinum > * {
  color: #fff;
}

.goldCard .m-hdg-platinum > * span {
  font-size: 14px;
  font-family: "YuMincho", "Yu Mincho", "Hiragino Mincho ProN", serif;
}

.goldCard .m-hdg-platinum::after {
  width: 100%;
  height: 1px;
  background: #707070;
  margin: 0;
  left: 0;
}

.goldCard .m-hdg-normal {
  padding-bottom: 0;
}

.goldCard .m-hdg-normal::after {
  display: none;
}

.goldCard .m-hdg-normal + .m-align-c {
  margin-bottom: 50px;
}

.goldCard .m-icon-blank {
  width: 10px;
  height: 10px;
  margin-left: 10px;
  vertical-align: middle;
}

.goldCard .m-icon-arrow {
  width: 14px;
  height: 10px;
  margin-left: 10px;
}

.goldCard .m-icon-arrow-2 {
  width: 7px;
  height: 10px;
  margin-right: 5px;
  vertical-align: middle;
}

.goldCard .m-icon-rhombus {
  width: 11px;
  height: 14px;
  vertical-align: middle;
}

.goldCard .m-txt-sm {
  font-size: 12px;
}

.goldCard .m-txt-lg {
  font-size: 16px;
}

.goldCard .m-txt-xl {
  font-size: 18px;
}

.goldCard .m-txt-bold {
  font-weight: bold;
}

.goldCard .m-band-gold {
  padding: 3px;
  color: #fff;
  font-size: 13px;
  text-align: center;
  background: #9c7b15;
}

.goldCard .m-band-gold sup {
  font-size: 10px;
  line-height: 1;
  top: 0;
}

.goldCard .m-list-notes {
  font-size: 12px;
  color: #666;
}

.goldCard .m-list-notes > * {
  display: table;
}

.goldCard .m-list-notes > * > .m-list-icon {
  display: table-cell;
  padding-right: 2px;
}

.goldCard .m-list-notes > *:not(:last-child) {
  margin-bottom: 10px;
}

.goldCard .m-list-num {
  font-size: 12px;
}

.goldCard .m-list-num > * {
  display: table;
}

.goldCard .m-list-num > * > .m-list-icon {
  display: table-cell;
  padding-right: 4px;
}

.goldCard .m-list-num > *:not(:last-child) {
  margin-bottom: 10px;
}

.goldCard .m-list-rhombus {
  margin-bottom: 10px;
  color: #fff;
  padding-left: 20px;
  text-indent: -20px;
}

.goldCard .m-list-rhombus > * > img {
  margin-right: 9px;
  vertical-align: middle;
}

.goldCard .m-list-rhombus > *:not(:last-child) {
  margin-bottom: 10px;
}

.goldCard .m-list-disc {
  padding-left: .5em;
  text-indent: -.5em;
}

.goldCard .m-list-disc > *:not(:last-child) {
  margin-bottom: 10px;
}

.goldCard .m-list-normal {
  list-style: decimal;
  padding-left: 1em;
  text-indent: -1em;
}

.goldCard .m-list-normal li {
  margin-bottom: 10px;
}

.goldCard .m-card {
  background: #fff;
  position: relative;
}

.goldCard .m-card-icon {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #9c7b15;
  color: #fff;
  font-weight: bold;
  line-height: 1;
  padding: 5px 10px;
}

.goldCard .m-card-body {
  padding: 15px 20px;
}

.goldCard .m-grid-4 .m-card-body {
  padding: 15px;
}

.goldCard .m-card-body dt {
  margin-bottom: 20px;
  font-size: 18px;
  font-weight: bold;
}

.goldCard .m-grid-4 .m-card-body dt {
  font-size: 16px;
  margin-bottom: 10px;
}

.goldCard .m-grid-4 .m-card-body dd {
  font-size: 12px;
}

.goldCard .m-card-body dt span {
  font-size: 14px;
  font-weight: normal;
}

.goldCard .m-card-link {
  margin-top: 20px;
}

.goldCard .m-grid-4 .m-card-link {
  margin-top: 10px;
}

.goldCard .m-card-border {
  border: 1px solid #ccc;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.goldCard .m-card-box {
  display: table;
  margin: auto;
}

.goldCard .m-card-box-premium {
  margin-top: 100px;
}

.goldCard .m-card-box-img {
  display: table-cell;
  max-width: 260px;
  vertical-align: middle;
}

.goldCard .m-card-box-body {
  display: table-cell;
  padding-left: 30px;
  vertical-align: middle;
}

.goldCard .m-card-box-name {
  margin: -30px 0 20px;
  color: #9c7b15;
  font-weight: bold;
  font-family: "YuMincho", "Yu Mincho", "Hiragino Mincho ProN", serif;
}

.goldCard .m-card-box-name span {
  font-size: 24px;
}

.goldCard .m-card-box-class {
  margin-bottom: 30px;
}

.goldCard .m-card-box-platinum {
  margin-bottom: 20px;
}

.goldCard .m-card-box-platinum .m-card-box-name, .goldCard .m-card-box-platinum p {
  color: #fff;
}

.goldCard .m-link {
  color: #3e93ff;
}

.goldCard .m-link:hover {
  text-decoration: underline;
}

.goldCard .m-box-c {
  display: table;
  margin: 15px auto 0;
}

.goldCard .m-table {
  margin-top: 50px;
}

.goldCard .m-table table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #ccc;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.goldCard .m-table table th, .goldCard .m-table table td {
  padding: 20px;
  border: 1px solid #ccc;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.goldCard .m-table table th {
  width: 270px;
  font-size: 14px;
  font-weight: normal;
  border-right: none;
  background: #f2f2f2;
}

.goldCard .m-def-list dt {
  float: left;
}

.goldCard .m-def-list dd {
  display: table;
  margin-left: 4em;
}

.goldCard .m-def-list dd > span {
  display: table-cell;
  padding-right: 2px;
}

.goldCard .m-def-list-02 dt {
  float: left;
}

.goldCard .m-def-list-02 dd {
  display: table;
  margin-left: 3em;
}

.goldCard .m-def-list-02 dd > span {
  display: table-cell;
  padding-right: 2px;
}

.goldCard .m-def-list-03 dt {
  float: left;
}

.goldCard .m-def-list-03 dd {
  display: table;
}

.goldCard .m-def-list-03 dd > span {
  display: table-cell;
  padding-right: 2px;
}

.goldCard .spPayInfo_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 85px;
}

.goldCard .spPayInfo_box_rev {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.goldCard .spPayInfo_box_rev .spPayInfo_img {
  padding: 0 40px 0 0;
  text-align: right;
}

.goldCard .spPayInfo_box_rev .spPayInfo_img img {
  max-width: 202px;
}

.goldCard .spPayInfo_box_rev .spPayInfo_img .m-list-notes {
  margin-top: 10px;
}

.goldCard .spPayInfo_box_rev .spPayInfo_img .m-list-notes > * {
  margin-left: auto;
}

.goldCard .spPayInfo_box_rev .spPayInfo_read {
  margin-bottom: 50px;
  padding-top: 30px;
}

.goldCard .spPayInfo_img {
  -webkit-box-flex: 405px;
  -ms-flex: 405px 1 0px;
  flex: 405px 1 0;
  max-width: 405px;
  padding-left: 40px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.goldCard .spPayInfo_img > img {
  max-width: 310px;
}

.goldCard .spPayInfo_read {
  margin-bottom: 50px;
  font-size: 28px;
  font-weight: bold;
}

.goldCard .spPayInfo_txt {
  margin-bottom: 85px;
  font-size: 18px;
}

.goldCard .spPayInfo_desc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.goldCard .spPayInfo_desc .m-list-notes {
  margin-top: 10px;
}

.goldCard .spPayInfo_desc > * {
  width: 100%;
}

.goldCard .spPayInfo_logo {
  padding-bottom: 30px;
  -ms-flex-item-align: end;
  align-self: flex-end;
}

.goldCard .contact_box {
  border: 1px solid #ccc;
}

.goldCard .contact_box dt {
  padding: 25px 10px;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  background: #ccc;
}

.goldCard .contact_box dd {
  padding: 35px;
}

.goldCard .contact_tel > * {
  display: inline-block;
}

.goldCard .contact_tel > *:last-child {
  margin-left: 5px;
}

.goldCard .contact_tel + .m-box-c {
  margin-top: 0;
}

.goldCard .sponsored {
  margin-top: 40px;
}

.goldCard .sponsored > p:first-child {
  padding-right: 20px;
  float: left;
  border-right: 1px solid #ccc;
}

.goldCard .sponsored > p:first-child > img {
  width: 120px;
}

.goldCard .sponsored > div {
  margin-left: 145px;
  padding: 10px 0 10px 15px;
}

.goldCard .tel_num {
  color: #333;
  font-size: 44px;
}

.goldCard .footer_area {
  background: #e7e1d1;
}

.goldCard .footer_area_inner {
  width: 100%;
  max-width: 962px;
  margin: 0 auto;
  padding: 30px 20px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}

.goldCard .footer_area .copyright_wrap {
  padding: 20px;
  background: #bba56d;
}

.goldCard .footer_area .copyright_wrap p {
  width: 100%;
  max-width: 962px;
  margin: 0 auto;
  color: #e1ddcf;
  text-align: center;
}

.goldCard .footer_link > li {
  margin-right: 10px;
  float: left;
}

.goldCard .footer_link > li a {
  color: #000;
}

.goldCard .footer_link > li a:hover {
  text-decoration: underline;
}

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

.goldCard .footer_gotop {
  width: 48px;
  height: 48px;
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -24px;
}

.goldCard .footer_gotop img {
  width: 14px;
  height: 10px;
}

.goldCard .fix_btn_wrap {
  height: 149px;
}

.goldCard .fix_btn {
  background: rgba(0, 0, 0, 0.4);
  bottom: 0;
  font-family: "YuMincho", "Yu Mincho", "Hiragino Mincho ProN", serif;
  left: 0;
  position: fixed;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  width: 100%;
  z-index: 4;
  display: none;
}

.goldCard .fix_btn_inner {
  width: 100%;
  max-width: 962px;
  margin: 0 auto;
  padding: 20px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
}

.goldCard .fix_btn .m-btn {
  margin-bottom: 20px;
}

.goldCard .fix_btn .m-btn span {
  -webkit-box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.2);
  box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.2);
}

.goldCard .fix_btn .m-btn span .m-icon-blank {
  width: 14px;
  height: 14px;
}

.goldCard .fix_link a {
  color: #fff;
  font-size: 20px;
  text-decoration: underline;
}

.goldCard .fix_link a:hover {
  text-decoration: none;
}

.goldCard .fix_link a .m-icon-arrow {
  vertical-align: middle;
}

.goldCard img {
  max-width: 100%;
  height: auto;
}

.goldCard .sp_only {
  display: none !important;
}

/* cashless */
.cb__cashless {
  padding-top: 40px;
  padding-bottom: 80px;
  border-bottom: 5px solid #e7e1d1;
  text-align: center;
}

.cb__cashless__img {
  text-align: center;
}

.cb__cashless__img img {
  width: 100px;
}

.cb__cashless__text {
  font-size: 1.4rem;
}

.cb__cashless__schedule {
  font-size: 1.2rem;
  margin: 20px 0;
}

.cb__cashless__link a {
  text-decoration: underline;
  color: #fff;
  font-size: 1.2rem;
}

.cb__cashless__link a:visited {
  color: #fff !important;
}

.cb__cashless__link--black a {
  color: #000 !important;
}

.cb__cashless__link--black a:visited {
  color: #000 !important;
}

.goldCard .delay_message {
  text-align: center;
  max-width: 400px;
  margin: 0 auto 40px;
}

.goldCard .delay_message .delay_message_image_sp {
  display: none;
}

/*-------------------------------------------------------------------------
modal service
--------------------------------------------------------------------------*/
.modal_layer {
  display: none;
  position: fixed;
  z-index: 5;
}

.modal_layer .is-layer {
  background: rgba(255, 255, 255, 0.5);
}

.modal_content {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: "YuMincho", "Yu Mincho", "Hiragino Mincho ProN", serif;
  z-index: 100;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 100%;
  max-width: 480px;
  margin: 0 auto;
  padding: 0 20px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.modal_inner {
  background-color: #0a2240;
  padding: 40px 0;
  text-align: center;
}

.modal_inner figure {
  margin-bottom: 30px;
}

.modal_title {
  color: #f3c873;
  font-size: 26px;
  font-weight: bold;
}

.modal_sub {
  color: #f3c873;
  font-size: 14px;
}

.modal_txt {
  color: #fff;
  font-size: 18px;
  max-width: 388px;
  margin: 26px auto 0;
  text-align: left;
}

.modal_txt a {
  display: block;
  font-size: 14px;
  margin-top: 10px;
}

.modal_txt.modal_note {
  font-size: 14px;
  margin-top: 10px;
}

.modal_close {
  position: absolute;
  right: -4px;
  top: -25px;
  width: 56px;
}

/*-------------------------------------------------------------------------
modal entry
--------------------------------------------------------------------------*/
.m-modal-ttl {
  padding: 10px 0;
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
  background: #bba56d;
  color: #ffffff;
  font-size: 22px;
  text-align: center;
}

.m-modal-img {
  text-align: center;
}

.m-modal-lead {
  margin-bottom: 25px;
  color: #262626;
  font-size: 20px;
  text-align: center;
}

.m-modal-btn-list {
  margin-bottom: 20px;
  text-align: center;
}

.m-modal-btn-list li {
  margin-bottom: 20px;
}

.m-modal-link {
  margin-bottom: 5px;
  text-align: center;
}

.m-modal-txt {
  margin-bottom: 5px;
  font-size: 16px;
}

.m-modal-txt-center {
  margin-bottom: 5px;
  font-size: 16px;
  width: 450px;
  margin: 10px auto;
}

.m-modal-txt-apply {
  font-size: 14px;
  text-align: center;
}

.m-modal-list {
  font-size: 16px;
}

.m-modal-list-note {
  max-width: 450px;
  margin: 0 auto;
}

.l-modal {
  display: none;
  color: #000000;
  position: fixed;
  z-index: 5;
}

.l-modal-inner {
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  z-index: 100;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  padding: 0 10px;
  transform: translate(-50%, -50%);
}

.l-modal-box {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  border: 1px solid #bba56d;
  border-radius: 5px;
}

.l-modal-box-inner {
  padding: 60px 40px;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
  background: #fff;
}

.l-modal-box-inner-inquiry {
  padding: 30px 40px;
}

.l-modal-btn {
  margin: 20px 0 0;
  text-align: center;
}

.m-btn-modal span {
  position: relative;
  font-size: 18px;
}

.m-btn-modal span::after {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  position: absolute;
  top: calc(50% - 5px);
  right: -25px;
  width: 10px;
  height: 10px;
  transform: rotate(45deg);
  border: 1px solid #fff;
  border-bottom: none;
  border-left: none;
  content: "";
}

.m-link-modal {
  position: relative;
  font-size: 14px;
}

.m-link-modal span {
  position: relative;
  font-size: 14px;
}

.l-modal-box .m-list-icon {
  display: table-cell;
}

.l-modal-box .m-list-body {
  display: table-cell;
}

.m-modal-headtxt {
  color: #9c7b15;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
}

.m-modal-headtxt span {
  margin: 0 auto;
  max-width: 340px;
  position: relative;
  display: block;
  padding: 0em 1em;
}
.m-modal-headtxt em {
  font-weight: bold;
}
.m-modal-headtxt em strong {
  font-size: 40px;
  vertical-align: -2px;
}

.m-modal-headtxt span::before {
  position: absolute;
  content: "";
  height: 80%;
  width: 3px;
  background-color: #9c7b15;
  left: 10%;
  -webkit-transform: rotate(-30deg) translateY(-50%) translateX(-50%);
          transform: rotate(-30deg) translateY(-50%) translateX(-50%);
  top: 50%;
}

.m-modal-headtxt span::after {
  position: absolute;
  content: "";
  height: 80%;
  width: 3px;
  background-color: #9c7b15;
  right: 10%;
  -webkit-transform: rotate(30deg) translateY(-50%) translateX(-50%);
          transform: rotate(30deg) translateY(-50%) translateX(-50%);
  top: 50%;
}

/*-------------------------------------------------------------------------
btn
--------------------------------------------------------------------------*/
.close-btn {
  display: inline-block;
  position: relative;
  width: 100%;
  max-width: 390px;
  margin: 0 auto;
  padding: 8px 45px;
  border: 1px solid #000000;
  border-radius: 5px;
  background: #fff;
  color: #000000;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}

.m-btn-small {
  max-width: 158px;
}

.m-btn-cross::before {
  position: absolute;
  top: calc(50% - 1px);
  right: 13px;
  width: 13px;
  height: 2px;
  background: #092c64;
  content: "";
}

.m-btn-cross::after {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -webkit-transition: all .3s ease;
  position: absolute;
  top: calc(50% - 1px);
  right: 13px;
  width: 13px;
  height: 2px;
  transform: rotate(90deg);
  background: #092c64;
  content: "";
  transition: all .3s ease;
}

/*-------------------------------------------------------------------------
state
--------------------------------------------------------------------------*/
.is-open::after {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}

.is-layer {
  z-index: 100;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
}

/*-------------------------------------------------------------------------
adjust
--------------------------------------------------------------------------*/
.sp_menu {
  display: none;
}

.sp_only {
  display: none;
}


/*-------------------------------------------------------------------------
210901公開分追加
--------------------------------------------------------------------------*/

.heading.heading--mini {
  height: 100px;
}

.subheading {
  font-size: 28px;
  color: #fff;
  text-align: center;
  vertical-align: middle;
  display: inline;
  position: relative;
  font-weight: bold;
  letter-spacing: -1.8px;
}


.subheading::after,
.subheading::before {
  content: "";
  height: 40px;
  width: 1px;
  background-color: #fff;
  position: absolute;
  display:block;
}

.subheading::after {
  margin: auto 0;
  top: 50%;
  left: -35px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.subheading::before {
  margin: auto 0;
  top: 50%;
  right: -32px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}


/*--- KV部分 ---*/
.mainvisual .heading01 {
  overflow: hidden visible;
}
.h1_main {
  margin: 0 auto;
}
.h1_main img{
  max-width: 100%;
}

.header_button {
  text-align: center;
  margin-top: -30px;
  margin-bottom: 30px;
}

.header_textbox {
  max-width: 900px;
  font-size: 22px;
  border: 1px solid #F3C873;
  color: #FFFFFF;
  text-align: center;
  padding: 30px 10px;
  margin: 0 auto;
}

.header_textbox span {
  color: #F3C873;
}

.mainvisual .txt {
  color: #F3C873;
  font-size: 26px;
  text-align: center;
  margin-top: 30px;
}

/*--- flow部分 ---*/

.section_w.flow .inner {
  padding: 70px 20px;
}

.flow .heading {
  height: 130px;
}

.flow .heading02 {
  margin-top: -7px;
  font-size: 30px;
  letter-spacing: -0.8px;
}

.flow .heading .heading02 .sub {
  font-size: 14px;
  margin-top: 10px;
  letter-spacing: 2px;
}

.section_w.flow figure {
  margin: 0px 20px 70px;
  text-align: center;
}

.flow_button {
  text-align: center;
  margin-bottom: 30px;
}

.section_w.flow p.flow_text,
.section_w.flow p.flow_link a {
  color: #fff;
  font-size: 16px;
}

.section_w.flow p.flow_link a {
  text-decoration: underline;
}

.flow_application {
  text-align: center;
  margin-top: 50px;
  margin-bottom: 50px;
}

.flow_line {
  border: 1px #fff solid;
}

.flow_note {
  font-size: 12px;
  position: relative;
}

.flow_note li {
  position: relative;
  padding-left: 1em;
  color: #fff;
}

.flow_note li::before {
  content:'※';
  position: absolute;
  left: 0;
}


/*--- personal部分 ---*/

.section_w.voice .inner {
  display: flex;
  justify-content: space-between;
}

.personal_voice {
  width: 31%;
  display: flex;
  flex-flow: column;
}

.section_w.voice .personal_info {
  display: flex;
}

.personal_voice p {
  color: #fff;
}

.personal_info figure {
  width: 30%;
  height: 90px;
}

.personal_info p {
  margin-left: 20px;
  font-size: 16px;
  margin-top: 14px;
  line-height: 26px;
}

.personal_fukidashi {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 23px 18px 23px 24px;
  min-width: 120px;
  max-width: 100%;
  color: #555;
  font-size: 16px;
  border: solid 1px #fff;
  box-sizing: border-box;
  height: 100%;
}

.personal_fukidashi:before {
  content: "";
  position: absolute;
  top: -24px;
  left: 16%;
  margin-left: -15px;
  border: 12px solid transparent;
  border-bottom: 12px solid #0a2240;
  z-index: 2;
}

.personal_fukidashi:after {
  content: "";
  position: absolute;
  top: -28px;
  left: 16%;
  margin-left: -17px;
  border: 14px solid transparent;
  border-bottom: 14px solid #fff;
  z-index: 1;
}

.personal_fukidashi p {
  margin: 0;
  font-size: 14px;
}


.personal_fukidashi p:first-child {
  color: #F3C873;
  font-size: 18px;
  letter-spacing: -1px;
  margin-bottom: 18px;
}

.personal_fukidashi p:last-child {
  line-height: 1.72;
}


/*--- 追加accordion部分 ---*/

.info_accordion_btn {
  color: #fff;
  border-bottom: 1px #fff solid;
  margin: 0 auto;
  padding-bottom: 5px;
  cursor: pointer;
  text-align: center;
}

.info_accordion_btn:hover {
  opacity: 0.8;
}

.info_accordion_btn p span {
  position: relative;
  font-size: 16px;
}

.info_accordion_btn p span::before {
  position: absolute;
  content: "";
  right: -30px;
  top: 0px;
  width: 20px;
  height: 20px;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background: #fff;
}

.info_accordion_btn p span::after {
  position: absolute;
  content: "";
  top: 5px;
  right: -24px;
  width: 6px;
  height: 6px;
  border-bottom: 2px solid #150C37;
  border-right: 2px solid #150C37;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.info_accordion_btn.is-active p span::after{
  top: 8px;
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}

.info_accordion_contents {
  display: none;
  border-bottom: 1px #fff solid;
  text-align: left;
  margin: 0 auto;
  padding: 20px 0 14px;
}
.info_accordion_contents p {
  font-size: 14px;
  margin-bottom: 15px;
  font-weight: bold;
  color: #fff;
}
.goldCard .info_accordion_contents .m-list-notes > * {
  line-height: 20px;
  color: #fff;
  margin-bottom: 10px;
}

.goldCard .info_accordion_contents a.m-link  {
  color: #fff;
  text-decoration: underline;
}

.goldCard .info_accordion_contents .m-link:hover {
  opacity: 0.8;
}


/*-------------------------------------------------------------------------
211001公開分追加
--------------------------------------------------------------------------*/

.campaign_premium.campaign_premium--noborder {
  border: none;
}


/*-------------------------------------------------------------------------
211109公開分追加
--------------------------------------------------------------------------*/
.original_series_renewal{
  border: 1px #e2c68d solid;
  padding: 30px 50px;
  color: #fff;
}
.original_series_renewal_title{
  font-weight: bold;
  font-size: 26px;
  margin-bottom: 13px;
}
.original_series_renewal_notice{
  margin-top: 10px;
  font-size: 12px;
}
.original_series_renewal_text{
  font-size: 12px;
}
/*-------------------------------------------------------------------------
211208公開分追加
--------------------------------------------------------------------------*/
.charm .inner {
  padding: 70px 20px;
}

.charm .heading {
  height: 130px;
}

.charm .heading02 {
  margin-top: 5px;
  font-size: 30px;
  letter-spacing: -0.8px;
}

.charm .heading .heading02 .sub {
  font-size: 14px;
  margin-top: 10px;
  letter-spacing: 2px;
}

.charm_disc p.f_sm {
  font-size: 14px;
}
.charm_disc p .f_gd {
  color: #e2c68d;
}
.service .service_premir.pb0 {
  padding-top: 0;
}
.service .service_premir.pb0 img {
  margin: 0 30px;
}
.upgrade_btn a {
  align-items: center;
  border: 1px solid #fff;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  justify-content: center;
  margin: 18px auto 0;
  display: inline-block;
  padding: 15px 35px;
}



/*-------------------------------------------------------------------------
220401公開分追加
--------------------------------------------------------------------------*/

.security_2col {
  display: flex;
  max-width: 897px;
  width: 100%;
  justify-content: space-between;
}
.security_2col div {
  width: 100%;
}
.security_2col div p {
  font-size: 14px;
  color: #fff;
}
.security_2col div:first-child {
  max-width: 403px;
}
.security_2col div:first-child .security_2col_img {
  margin-bottom: 20px;
}
.security_2col div:last-child {
  max-width: 410px;
}
.security_2col div:last-child .security_2col_img {
  margin-bottom: 40px;
}

/*-------------------------------------------------------------------------
220401公開分追加
--------------------------------------------------------------------------*/
.renewal_campaign_note {
	font-size: 12px;
	text-indent: -1em;
	padding-left: 1em;
	margin-top: 10px;
  color: #fff;
  text-align: left;
}
.renewal_campaign_link {
	font-size: 12px;
  text-align: left;
}
.renewal_campaign_link a {
  color: #fff;
	text-decoration: underline;
}
.point_list li dl dd span.point_list_notes {
  font-size: 12px;
  display: inline-block;
  margin-top: 5px;
}

/*-------------------------------------------------------------------------
220701公開分追加
--------------------------------------------------------------------------*/


.charm_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.charm_list_disc {
  margin-bottom: 20px;
}

.charm_list_02 .charm_list_img {
  margin-bottom: 20%;
}

.charm_list_03 .charm_list_img {
  margin-bottom: 20%;
}

.charm_list li {
  width: 32%;
  max-width: 300px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.charm_list li > *:last-child {
  margin-top: auto;
}

.charm_list p {
  color: #fff;
  font-size: 16px;
  letter-spacing: 0.01em;
  line-height: 2.02;
  margin-top: 30px;
}

.cpContent_inner {
  max-width: 960px;
  margin: 0 auto 140px;
  padding: 0 20px;
}

.cpContent_header2 {
  text-align: center;
  font-size: 30px;
  margin-top: 80px;
  margin-bottom: 50px;
  font-family: "YuMincho", "Yu Mincho", "Hiragino Mincho ProN", serif;
  font-weight: bold;
}

.cpContent_header3 {
  text-align: center;
  font-size: 24px;
  margin-bottom: 30px;
}

.cpContent_2col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  margin-bottom: 60px;
}

.cpContent_2col > div {
  max-width: 432px;
  width: 47%;
}

.cpContent_text {
  font-size: 16px;
  margin-bottom: 20px;
}

.cpContent_img {
  text-align: center;
}

.cpContent_img + .cpContent_img {
  margin-top: 20px;
}

.cpContent_img img {
  margin: 0 auto;
}

.cpContent_list {
  margin-top: 10px;
}

.cpContent_list li {
  font-size: 16px;
  padding-left: 1em;
  position: relative;
}

.cpContent_list li span {
  color: #c0954c;
}

.cpContent_list li::before {
  position: absolute;
  content: '・';
  left: 0;
}

.cpContent_notes {
  margin-bottom: 20px;
}

.cpContent_notes li {
  font-size: 16px;
  padding-left: 1em;
  position: relative;
}

.cpContent_notes li span {
  color: #c0954c;
}

.cpContent_notes li::before {
  position: absolute;
  content: '※';
  left: 0;
}

.cpContent_link {
  text-align: center;
}

.cpContent_link a {
  font-size: 16px;
  text-decoration: underline;
  color: #0a2240;
}

.cpContent_link a:hover {
  opacity: 0.8;
  text-decoration: underline;
}

.cpContent_boxlink {
  text-align: center;
}

.cpContent_boxlink a {
  display: inline-block;
  font-size: 19px;
  padding: 12px 0 12px;
  margin-top: 20px;
  color: #0a2240;
  position: relative;
}

.cpContent_boxlink a::after {
  content: '';
  width: 15px;
  height: 15px;
  position: absolute;
  right: -20px;
  top: 34%;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  border-top: 1px solid;
  border-right: 1px solid;
}

.cpContent_detaillink {
  text-align: center;
  margin-top: 25px;
  margin-bottom: 80px;
}

.cpContent_detaillink a {
  font-size: 16px;
  color: #0a2240;
  position: relative;
}

.cpContent_detaillink a:hover {
  opacity: 0.8;
}

.cpContent_detaillink a::after {
  position: absolute;
  content: '';
  height: 2px;
  width: 110%;
  background-color: #0a2240;
  bottom: -2px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.cpContent_cpbunner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

.cpContent_cpbunner > div {
  width: 32%;
}

.original {
  background-color: #fff;
  margin-top: 45px;
  padding-bottom: 40px;
  border-bottom: 50px solid #0a2240;
  position: relative;
}

.original::after {
  position: absolute;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 23px 16.5px 0 16.5px;
  border-color: #ffffff transparent transparent transparent;
  bottom: -23px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.original .cpContent_inner {
  margin-bottom: 0;
}

.original .cpContent_link {
  margin-top: 40px;
}

.original .cpContent_link a {
  font-size: 16px;
}

.tab_content_wrap {
  margin: 0 auto;
  overflow-x: hidden;
  padding: 55px 30px 0;
  border: 1px solid white;
}

.tab_switch {
  max-width: 480px;
  width: 49%;
  border: 1px solid white;
  border-bottom: none;
  text-align: center;
  padding: 20px 0;
  font-size: 26px;
  position: relative;
}

.tab_switch.tab_active {
  background-color: white;
  color: #1c3b62;
}

.tab_switch.tab_active::after {
  position: absolute;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 23px 16.5px 0 16.5px;
  border-color: #ffffff transparent transparent transparent;
  bottom: -23px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.tab_switcher {
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.tab_header {
  font-size: 20px;
  margin-bottom: 50px;
  text-align: center;
}

.tab_header span {
  color: #e2c68d;
}

.tab_img {
  text-align: center;
  margin-bottom: 50px;
}

.tab_img img {
  display: inline-block;
}

.tab_img_saitan img {
  max-width: 230px;
}

.tab_img_normal img {
  max-width: 120px;
}

.tab_inner {
  max-width: 460px;
  margin: 0 auto;
  color: #fff;
  display: none;
}

.tab_inner.tab_active {
  display: block;
}

.tab_slide_inner {
  background-color: #fff;
  padding: 58px 48px 28px;
  position: relative;
}

.tab_slide_header {
  font-size: 18px;
  font-weight: bold;
  color: #0a2240;
  margin-bottom: 10px;
  text-align: center;
}

.tab_slide_text {
  font-size: 14px;
  color: #0a2240;
}

.tab_slide_step {
  position: absolute;
  left: 0;
  top: 0;
}

.tab_slide_bubble {
  position: absolute;
  left: 50%;
  top: 20px;
  width: 134px;
  display: block;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.tab_text {
  font-size: 14px;
  margin-bottom: 40px;
}
