@charset "utf-8";

@font-face {
  font-display: swap;
  font-family: DIN Alternate;
  font-style: normal;
  font-weight: 600;
  src: url(/function/application/assets/fonts/DINAlternate-Bold.eot);
  src:
    local("DIN Alternate Bold"),
    local("DINAlternate-Bold"),
    url(/function/application/assets/fonts/DINAlternate-Bold.eot?#iefix)
      format("embedded-opentype"),
    url(/function/application/assets/fonts/DINAlternate-Bold.woff2)
      format("woff2"),
    url(/function/application/assets/fonts/DINAlternate-Bold.woff)
      format("woff"),
    url(/function/application/assets/fonts/DINAlternate-Bold.svg#DINAlternate-Bold)
      format("svg");
}

@font-face {
  src: url("/campaign/common/font/DIN-2014_Narrow-Bold.otf") format("opentype");
  font-family: "DIN-2014 Narrow-Bold";
  font-weight: bold;
}

@font-face {
  src: url("/campaign/common/font/DIN-2014_Narrow.otf") format("opentype");
  font-family: "DIN-2014 Narrow";
  font-weight: normal;
}

:root {
  --c-pink: #ff4688;
  --c-blue: #003D84;
  --c-sky-blue: #dbfaff;
  --c-beige: #fff4de;
  --c-orange: #ff7200;
  --gold-dark: #a78103;
  --gold: #a68001;
  --black: #333;
  --white: #fff;
}

body {
  background: #ffffff;
  font-family:
    "Hiragino Kaku Gothic ProN",
    Noto Sans JP,
    Meiryo,
    sans-serif;
  color: #333;
  -webkit-text-size-adjust: 100%;
  overflow: hidden;
}

sup {
  font-size: 10px;
  vertical-align: top;
}

img {
  height: auto;
}

picture img {
  height: auto;
  vertical-align: bottom;
}

.list[data-type="bracket-number"] {
  counter-reset: number;
}

.list[data-type="bracket-number"] > li {
  position: relative;
  padding-left: 2.5em;
  font-size: 14px;
  line-height: 1.6;
}

.list[data-type="bracket-number"] > li::before {
  position: absolute;
  left: 0;
  content: "（" counter(number) "）";
  counter-increment: number;
}

.lp-accordion__body .list[data-type="bracket-number"] > li,
.lp-accordion__body .lp-list[data-type="dot"] > li {
  font-size: 16px;
}

.lp-list[data-type="dot"] li > .list[data-type="bracket-number"] > li {
  text-indent: 0;
  margin-left: -10px;
}

.box .lp-text__container {
  margin-top: 12px;
}

.box .lp-text {
  font-size: 20px;
}

.box .c-list[data-type="kome"] > li {
  font-size: 12px;
}

.lp-text[data-size="large"] {
  letter-spacing: 1px;
  font-size: 26px;
  color: #513B00;
}

.l-headerSimple__logo {
  width: 280px;
  display: block;
  flex-shrink: 0;
}

@media (max-width: 640px) {
  .l-headerSimple__logo {
    max-width: 266px;
  }
}

.c-list[data-type="asterisk-number-half_colon"]>li[value="3"]::before {
  counter-reset: number 2;
}

.c-list[data-type="asterisk-number-half_colon"]>li[value="4"]::before,
.c-list[data-type="asterisk-number-full"]>li[value="4"]::before {
  counter-reset: number 3;
}

.c-list[data-type="asterisk-number-half_colon"]>li[value="5"]::before {
  counter-reset: number 4;
}

/*-------------------------------------------

pc / sp

-------------------------------------------*/

.display_none{
	display: none;
}
@media print,screen and (min-width:641px){
	.sp_only{display: none!important;}
}
@media screen and (max-width:640px){
	.pc_only{display: none!important;}
}

/*--container--*/

.section-inner {
  width: 100%;
  max-width: 990px;
  margin: auto;
  padding: 0 15px;
  box-sizing: border-box;
}

.flow {
  margin-top: 120px;
}

/*section + section {
  margin-top: 120px;
}*/

@media (min-width: 641px) {
  .list[data-type="bracket-number"] > li {
    font-size: 14px;
  }
}

@media (max-width: 640px) {
  .section-inner {
    padding: 0 calc(10 / 375 * 100vw);
  }

  section + section {
    margin-top: calc(50 / 375 * 100vw);
  }

  .lp-text[data-size="large"] {
    font-size: calc(15 / 375 * 100vw);
  }

  .box .lp-list[data-type="kome"] li {
    font-size: calc(11 / 375 * 100vw);
  }

  .box .c-list[data-type="kome"] > li {
    font-size: calc(12 / 375 * 100vw);
  }

  .lp-text {
    font-size: calc(14 / 375 * 100vw);
  }

  .c-list[data-type="asterisk-number-full_colon"] > li {
    padding-left: 2.5em;
    font-size: calc(12 / 375 * 100vw);
  }

  .c-list[data-type="kome"] > li {
    font-size: calc(12 / 375 * 100vw);
  }
}

.lp-button_03 {
  display: block;
  width: 100%;
  max-width: 339px;
  margin: auto;
}

/*--box--*/
.box_head {
  position: absolute;
  top: -37px;
  left: 50%;
  transform: translateX(-50%);
  width: 489px;
}

.box {
  box-sizing: border-box;
  text-align: center;
  position: relative;
  background-color: #ffffff;
  padding: 72px 70px 18px;
  max-width: 820px;
  margin: auto;
  border-radius: 10px;
  border-top:none;
}

.box_line {
  position: relative;
  height: 40px;
  margin-left: -70px;
  margin-right: -70px;
  overflow: hidden;
}

.box_line::before,
.box_line::after {
  content: "";
  position: absolute;
  top: 40px;
  width: 52%;
  height: 1px;
  background: #d8c9a2;
}

.box_line::before {
  left: -1%;
  transform: rotate(5deg);
  transform-origin: right center;
}

.box_line::after {
  right: -1%;
  transform: rotate(-5deg);
  transform-origin: left center;
}

.box_subHead h3 {
  width: 472px;
  margin: auto;
}

.box_wrap {
  background-position: top -67px center;
  padding: 50px 64px;
  border-radius: 0 0 10px 10px;
}

.box_target {
  display: flex;
  align-items: center;
  padding: 20px 20px 0;
}

.box_target img {
  width: 140px;
}

.lp-text[data-size="large"] sup {
  font-weight: bold;
  font-size: 14px;
}

.term_head {
  background-color: #A16301;
  width: 288px;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  padding: 14px 0;
  margin: 18px auto 15px;
  color: #fff;
}

.term_text {
  text-align: center;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.4;
}
.term_text--s {
  text-align: center;
  font-size: 17.5px;
  line-height: 1.4;
}
.schedule {
  margin-top: 35px;
}

.box .font-num {
  font-size: 38px;
  line-height: 1;
  padding-right: 3px;
}

@media (max-width: 870px) and (min-width: 640px) {
  .box--flow {
    padding: calc(40 / 870 * 100vw) 0;
  }

  .box_line {
    width: 100%;
    margin: calc(0 / 375 * 100vw) 0 calc(20 / 375 * 100vw);
    position: relative;
  }
}

@media (max-width: 640px) {
  .lp-text sup {
    font-size: calc(10 / 375 * 100vw);
  }

  .box {
    padding: calc(40 / 375 * 100vw) calc(22 / 375 * 100vw)
      calc(20 / 375 * 100vw);
    width: 100%;
    border-radius: calc(6 / 375 * 100vw);
  }

  .box_head {
    position: absolute;
    top: calc(-23 / 375 * 100vw);
    left: 50%;
    transform: translateX(-50%);
    width: calc(300 / 375 * 100vw);
  }

  .box_subHead h3 {
    width: calc(310 / 375 * 100vw);
  }

  .box_wrap {
    background-position: top calc(-107 / 375 * 100vw) center;
    padding: calc(10 / 375 * 100vw) calc(20 / 375 * 100vw)
      calc(24 / 375 * 100vw);
    border-radius: 0 0 calc(10 / 375 * 100vw) calc(10 / 375 * 100vw);
    background-size: calc(805 / 375 * 100vw);
  }

  .box_target {
    display: block;
  }

  .lp-button_03 {
    width: 85%;
    max-width: 417px;
    margin: calc(14 / 375 * 100vw) auto 0;
  }

  .box_line {
    width: 100%;
    margin: calc(0 / 375 * 100vw) 0 calc(20 / 375 * 100vw);
    position: relative;
  }

  .box_line.top {
    width: calc(100% + (44 / 375 * 100vw));
    margin-left: calc(-22 / 375 * 100vw);
  }

  .box .font-num {
    font-size: calc(30 / 375 * 100vw);
    line-height: 1;
    padding-right: calc(3 / 375 * 100vw);
  }

  .term_text {
    text-align: center;
    font-size: calc(17.5 / 375 * 100vw);
    font-weight: bold;
    line-height: 1.5;
  }
  .term_text--s {
    text-align: center;
    font-size: calc(13.8 / 375 * 100vw);
    line-height: 1.4;
  }

  .schedule {
    margin-top: 35px;
    overflow-x: scroll;
  }

  .schedule img {
    width: 250%;
    max-width: none;
  }

  .term_head {
    width: calc(184 / 375 * 100vw);
    text-align: center;
    font-size: calc(15 / 375 * 100vw);
    font-weight: bold;
    padding: calc(7 / 375 * 100vw) 0;
    margin: calc(20 / 375 * 100vw) auto calc(9 / 375 * 100vw);
  }
}

/*--information--*/
.information {
  position: relative;
  padding-top: 65px;
}

.information .box_head {
  top: -38px;
}

.lp-hdg03::before {
  content: "";
  width: 14px;
  height: 14px;
  margin-top: -7px;
  background-size: 100%;
  background-color: #EB5505;
  border-radius: 50%;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  left: 0;
}

.lp-hdg03 {
  padding-left: 15px;
  position: relative;
  font-weight: bold;
  line-height: 1.6;
  margin-top: 40px;
  font-size: 16px;
  margin-bottom: 5px;
}

.campaign-number {
  margin-top: 0;
  color: #333333;
  margin-bottom: 25px;
  margin-top: 15px;
}

.cv .l-section__inner {
  max-width: 970px;
}

.c-text.c-text--sizeL {
  font-size: 26px;
  font-weight: bold;
}

@media (max-width: 640px) {
  .information .box_head {
    top: calc(-22 / 375 * 100vw);
  }

  .lp-hdg03 {
    margin-top: calc(25 / 375 * 100vw);
    font-size: calc(14 / 375 * 100vw);
    padding-left: calc(15 / 375 * 100vw);
  }

  .lp-hdg03::before {
    content: "";
    width: calc(14 / 375 * 100vw);
    height: calc(14 / 375 * 100vw);
    margin-top: calc(-7 / 375 * 100vw);
    top: 50%;
    left: 0;
  }

  .information {
    position: relative;
    padding-top: calc(32 / 375 * 100vw);
  }

  .lp-list > li {
    font-size: calc(12 / 375 * 100vw);
  }

  .lp-accordion__body .list[data-type="bracket-number"] > li,
  .lp-accordion__body .lp-list[data-type="dot"] > li {
    font-size: calc(12 / 375 * 100vw);
  }

  .lp-accordion__body {
    padding: calc(20 / 375 * 100vw) calc(10 / 375 * 100vw);
  }

  .c-text,
  .c-text.c-text--sizeL {
    font-size: calc(13 / 375 * 100vw);
  }

  .cv {
    margin-top: calc(20 / 375 * 100vw);
    padding: calc(19 / 375 * 100vw) 0 calc(17 / 375 * 100vw);
  }

  .cv .lp-text {
    font-size: calc(14 / 375 * 100vw);
    margin-top: calc(22 / 375 * 100vw);
  }

  .cv .lp-button__container {
    margin-top: calc(9 / 375 * 100vw);
  }

  .l-footerSimple {
    margin-top: 0;
    padding-top: calc(20 / 375 * 100vw);
    padding-bottom: calc(20 / 375 * 100vw);
    font-size: calc(14 / 375 * 100vw);
  }
}

/*--goldcard--*/
.goldcard {
  position: relative;
  padding-top: 65px;
  padding-bottom: 65px;
}

.goldcard-head {
    width: 630px;
    margin: auto;
    margin-bottom: 50px;
}

.goldcard .box_head {
  top: -38px;
}

.goldcard-box {
  background-color: #fff;
  border-radius: 15px;
  max-width: 650px;
  margin:0 auto;
  padding: 0 50px;
}

.goldcard-box_lead {
  background-color: var(--c-blue);
  color: #fff;
  text-align: center;
  font-size: 20px;
  padding: 15px;
  margin-right: -50px;
  margin-left: -50px;
  border-radius: 15px 15px 0 0;
  margin-bottom: 40px;
}

.goldcard p {
  font-size: 20px;
  color: #513B00;
}

.goldcard a{
  -webkit-tap-highlight-color: transparent;
}

@media (max-width: 640px) {
  .goldcard {
    padding-top: calc(32 / 375 * 100vw);
    padding-bottom: calc(32 / 375 * 100vw);
  }

  .goldcard-head {
    width: calc(350 / 375 * 100vw);
  }

  .goldcard-box_lead {
    font-size: calc(14 / 375 * 100vw);
    margin: 0;
  }

  .goldcard-box {
    padding: 0;
  }

  .goldcard-box img {
    max-width: 100%;
    height: auto;
    box-sizing: border-box;
  }

  .goldcard p {
    font-size: calc(14 / 375 * 100vw);
  }
}

.l-section__inner {
  width: 100%;
  padding: 0 10px;
  box-sizing: border-box;
}

picture {
  display: block;
  margin: auto;
}

picture[data-image="01"] {
  max-width: 551px;
}

picture[data-image="02"] {
  max-width: 483px;
  margin-top: 7px;
}

.lp-accordion__head {
    font-size: 17px;
}

.information .lp-accordion .lp-accordion__head {
  border-radius: 8px;
  background-color: #f1ebda;
  color: #43425a;
  padding: 20px 50px;
  border: 2px solid #43425a;
}

.information .lp-accordion .lp-accordion__head.is-open {
  border-radius: 8px 8px 0 0;
}

.information .lp-accordion__head::before,
.information .lp-accordion__head::after {
  background-color: #43425a;
}

.information .lp-accordion__body {
  border: 2px solid #cccccc;
  border-top: none;
}

.l-requirement {
  max-width: 100%;
  background-color: #fff;
}

.l-requirement__step {
  margin: 36px auto 0;
}

.l-requirement__step li {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  width: 50%;
  min-height: 263px;
  padding: 24px 28px 27px;
}

.l-requirement__step .num,
.img-step {
  font-family:
    "DIN-2014 Narrow-Bold",
    DIN Alternate,
    sans-serif;
  font-size: 33px;
  font-weight: bold;
}

.l-requirement__step .num span,
.img-step span {
  padding-left: 10px;
  font-size: 46px;
  font-weight: bold;
}

.l-requirement__step .text {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
}

.l-requirement__step .text span {
  display: block;
  margin-top: 7px;
  font-size: 16px;
  line-height: 1.4;
}

.c-accordion[data-type="blue"] {
  width: 100%;
  max-width: 820px;
  margin: 0 auto;
}

.c-accordion[data-type="blue"] .c-accordion__head,
.c-accordion[data-type="blue"] .c-accordion__body {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.c-accordion[data-type="blue"] .c-accordion__head {
  padding: 15px 20px;
  border-radius: 50px;
  background: var(--c-blue);
  color: #fff;
  font-size: 26px;
  font-weight: bold;
  text-align: center;
}

.c-accordion[data-type="blue"] .c-accordion__head.is-open {
  border-right: 2px solid var(--c-blue);
  border-left: 2px solid var(--c-blue);
  border-radius: 50px 50px 0 0;
}

.c-accordion[data-type="blue"] .c-accordion__head::before,
.c-accordion[data-type="blue"] .c-accordion__head::after {
  width: 20px;
  right: 30px;
  height: 3px;
  background-color: #fff;
}

.c-accordion[data-type="blue"] .c-accordion__body {
  max-width: 820px;
  margin: 0 auto;
  padding: 20px 20px 53px;
  background-color: #ebebeb;
  box-sizing: border-box;
  border-radius: 0 0 50px 50px;
}

.c-accordion[data-type="blue"] .c-accordion__body .l-requirement__step {
  margin: 0px 0 30px;
}

.c-accordion[data-type="blue"] .c-accordion__body .l-requirement__step .lead {
  margin-bottom: 15px;
  color: var(--c-blue);
  font-size: 41px;
  font-weight: bold;
  line-height: 1.3;
}

.c-accordion[data-type="blue"] .c-accordion__body .l-requirement__step .num,
.box .img-step {
  font-size: 41px;
  line-height: 1;
  text-align: center;
  color: var(--c-blue);
  letter-spacing: 5px;
}

.c-accordion[data-type="blue"]
  .c-accordion__body
  .l-requirement__step
  .num
  span,
.box .img-step span {
  padding-left: 5px;
  font-size: 112px;
}

.c-accordion[data-type="blue"] .c-accordion__body .l-requirement__step li {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  position: relative;
  width: 100%;
  min-height: 100%;
  padding: 34px 35px 50px;
  text-align: center;
}

.c-accordion[data-type="blue"]
  .c-accordion__body
  .l-requirement__step
  li:nth-child(n + 2) {
  padding-top: 65px;
}

.c-accordion[data-type="blue"]
  .c-accordion__body
  .l-requirement__step
  li::before {
  -webkit-transform: rotate(9deg);
  -ms-transform: rotate(9deg);
  position: absolute;
  bottom: -12px;
  left: -5px;
  width: min(400px, calc(400 / 840 * 100vw));
  height: 20px;
  transform: rotate(9deg);
  background-color: #ebebeb;
  content: "";
}

.c-accordion[data-type="blue"]
  .c-accordion__body
  .l-requirement__step
  li::after {
  -webkit-transform: rotate(-9deg);
  -ms-transform: rotate(-9deg);
  z-index: 0;
  position: absolute;
  right: -5px;
  bottom: -12px;
  width: min(400px, calc(400 / 840 * 100vw));
  height: 20px;
  transform: rotate(-9deg);
  background: none;
  background-color: #ebebeb;
  content: "";
}

.c-accordion[data-type="blue"]
  .c-accordion__body
  .l-requirement__step
  li:last-child {
  padding-bottom: 80px;
}

.c-accordion[data-type="blue"]
  .c-accordion__body
  .l-requirement__step
  li:last-child::before,
.c-accordion[data-type="blue"]
  .c-accordion__body
  .l-requirement__step
  li:last-child::after {
  height: 65px;
  bottom: -30px;
}

.c-accordion[data-type="blue"]
  .c-accordion__body
  .l-requirement__step
  li:last-child::before {
  left: -10px;
}

.c-accordion[data-type="blue"]
  .c-accordion__body
  .l-requirement__step
  li:last-child::after {
  right: -10px;
}

.c-accordion[data-type="blue"] .c-accordion__body .l-requirement__step .text {
  font-size: 30px;
}

.c-accordion[data-type="blue"]
  .c-accordion__body
  .l-requirement__step
  .text
  span.em {
  display: inline;
  color: #da3503;
  font-size: 30px;
  font-weight: bold;
}

.c-accordion[data-type="blue"]
  .c-accordion__body
  .l-requirement__step
  .text
  span.sub {
  font-size: 30px;
}

.c-accordion[data-type="blue"]
  .c-accordion__body
  .l-requirement__step
  .c-image__container {
  margin-top: 37px;
}

.c-button[data-size="m"][data-color="pink"] {
  margin-bottom: 0;
  padding: 22px 0;
  background-color: var(--c-blue);
  font-size: 26px;
  border-radius: 40px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.44);
  max-width: 512px;
  color: white;
}

.c-button[data-icon="arrow"][data-color="pink"]::before {
  content: "";
  top: 50%;
  right: 24px;
  width: 11px;
  height: 11px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  background: none;
  position: absolute;
}

.c-frame__container {
  padding: 0 10px;
}

@media (max-width: 640px) {
  .point-list {
    margin-top: 0;
  }

  .point-list > li {
    position: relative;
    border: 1px solid #43425a;
    border-radius: calc(10 / 375 * 100vw);
    padding: calc(10 / 375 * 100vw);
  }

  .point-num {
    position: absolute;
    top: calc(-11 / 375 * 100vw);
    left: calc(17 / 375 * 100vw);
    width: calc(33 / 375 * 100vw);
  }

  .point-list li + li {
    margin-top: calc(22 / 375 * 100vw);
    padding: calc(17 / 375 * 100vw) calc(17 / 375 * 100vw);
  }

  .point-list li .c-list[data-type="kome"] > li {
    font-size: calc(11 / 375 * 100vw);
  }

  .lp-button_04 {
    width: 100%;
    max-width: calc(256 / 375 * 100vw);
  }

  picture[data-image="03"] img {
    width: 100%;
    margin-top: calc(-4 / 375 * 100vw);
    max-width: calc(619 / 375 * 100vw);
  }

  picture[data-image="04"] {
    width: 100%;
    max-width: calc(337 / 375 * 100vw);
  }

  picture[data-image="05"] {
    width: 100%;
    max-width: calc(332 / 375 * 100vw);
  }

  .qa .lp-accordion__body .c-list {
    padding-left: calc(25 / 375 * 100vw);
  }

  .list[data-type="bracket-number"] > li {
    font-size: calc(12 / 375 * 100vw);
  }

  .information .lp-accordion .lp-accordion__head {
    border-radius: calc(4 / 375 * 100vw);
    padding: calc(15 / 375 * 100vw) calc(50 / 375 * 100vw);
    border: 1px solid #43425a;
    font-size: calc(14 / 375 * 100vw);
  }

  .information .lp-accordion__body {
    border: 1px solid #cccccc;
    border-top: none;
  }

  .cv .lp-button_03 {
    width: 100%;
    max-width: calc(267 / 375 * 100vw);
    margin: calc(0 / 375 * 100vw) auto 0;
  }

  .lp-button[data-color="orange"],
  .lp-button[data-line="orange"] {
    max-width: calc(300 / 375 * 100vw);
  }

  .c-button[data-size="m"] {
    max-width: calc(308 / 375 * 100vw);
  }

  .c-button[data-size="m"][data-color="pink"] {
    padding-top: calc(10 / 375 * 100vw);
    padding-bottom: calc(10 / 375 * 100vw);
    font-size: calc(17 / 375 * 100vw);
  }

  .bnr-contents .lp-button_01 {
    width: calc(300 / 375 * 100vw);
    max-width: 100%;
    margin-top: 0;
  }

  .cv .lp-button_01 {
    max-width: calc(407 / 375 * 100vw);
  }

  .l-requirement {
    max-width: calc(740 / 375 * 100vw);
    border-bottom: none;
  }

  .l-requirement__step {
    display: block;
    margin: calc(16 / 375 * 100vw) auto calc(54 / 375 * 100vw);
  }

  .l-requirement__step .num {
    font-size: calc(33 / 375 * 100vw);
    text-align: center;
  }

  .l-requirement__step .num span {
    padding-left: calc(13 / 375 * 100vw);
    font-size: calc(35 / 375 * 100vw);
  }

  .l-requirement__step li {
    display: block;
    position: relative;
    width: 100%;
    min-height: 100%;
    padding: calc(32 / 375 * 100vw) calc(35 / 375 * 100vw)
      calc(27 / 375 * 100vw);
  }

  .l-requirement__step li::before {
    -webkit-transform: rotate(5deg);
    -ms-transform: rotate(5deg);
    position: absolute;
    bottom: calc(-12 / 375 * 100vw);
    left: calc(-1 / 375 * 100vw);
    width: calc(170 / 375 * 100vw);
    height: calc(1 / 375 * 100vw);
    transform: rotate(5deg);
    background-color: #ccc;
    content: "";
  }

  .l-requirement__step .text {
    margin-top: calc(2 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
  }

  .l-requirement__step .text span {
    display: block;
    margin-top: calc(7 / 375 * 100vw);
    font-size: calc(15 / 375 * 100vw);
    line-height: 1.4;
  }

  .c-accordion[data-type="blue"] .c-accordion__head {
    max-width: calc(740 / 375 * 100vw);
    font-size: calc(17 / 375 * 100vw);
    padding: calc(13 / 375 * 100vw) calc(20 / 375 * 100vw);
  }

  .c-accordion[data-type="blue"] .c-accordion__head::before,
  .c-accordion[data-type="blue"] .c-accordion__head::after {
    right: 20px;
  }

  .c-accordion[data-type="blue"] .c-accordion__body .l-requirement__step {
    max-width: calc(740 / 375 * 100vw);
    margin: calc(0 / 375 * 100vw) auto calc(10 / 375 * 100vw);
  }

  .c-accordion[data-type="blue"] .c-accordion__body .l-requirement__step .num,
  .box .img-step {
    font-size: calc(20 / 375 * 100vw);
    line-height: 1.1;
  }

  .c-accordion[data-type="blue"]
    .c-accordion__body
    .l-requirement__step
    .num
    span,
  .box .img-step span {
    padding-left: calc(5 / 375 * 100vw);
    font-size: calc(51 / 375 * 100vw);
  }

  .c-accordion[data-type="blue"] .c-accordion__body .l-requirement__step .lead {
    font-size: calc(21 / 375 * 100vw);
    margin-bottom: calc(4 / 375 * 100vw);
  }

  .c-accordion[data-type="blue"] .c-accordion__body .l-requirement__step li {
    padding: calc(18 / 375 * 100vw);
  }

  .c-accordion[data-type="blue"]
    .c-accordion__body
    .l-requirement__step
    li::before {
    -webkit-transform: rotate(10deg);
    -ms-transform: rotate(10deg);
    bottom: calc(-12 / 375 * 100vw);
    left: calc(-5 / 375 * 100vw);
    width: calc(165 / 375 * 100vw);
    height: calc(10 / 375 * 100vw);
    transform: rotate(10deg);
  }

  .c-accordion[data-type="blue"]
    .c-accordion__body
    .l-requirement__step
    li::after {
    -webkit-transform: rotate(-10deg);
    -ms-transform: rotate(-10deg);
    right: calc(-5 / 375 * 100vw);
    bottom: calc(-12 / 375 * 100vw);
    width: calc(165 / 375 * 100vw);
    height: calc(10 / 375 * 100vw);
    transform: rotate(-10deg);
  }

  .c-accordion[data-type="blue"]
    .c-accordion__body
    .l-requirement__step
    li:last-child {
    padding-bottom: calc(20 / 375 * 100vw);
  }

  .c-accordion[data-type="blue"]
    .c-accordion__body
    .l-requirement__step
    li:last-child::before {
    height: calc(30 / 375 * 100vw);
    bottom: calc(-15 / 375 * 100vw);
    left: calc(-6 / 375 * 100vw);
    width: calc(179 / 375 * 100vw);
  }

  .c-accordion[data-type="blue"]
    .c-accordion__body
    .l-requirement__step
    li:last-child::after {
    height: calc(30 / 375 * 100vw);
    right: calc(-6 / 375 * 100vw);
    bottom: calc(-15 / 375 * 100vw);
    width: calc(179 / 375 * 100vw);
  }

  .c-accordion[data-type="blue"] .c-accordion__body .l-requirement__step .text {
    margin-top: 0;
    font-size: calc(15 / 375 * 100vw);
  }

  .c-accordion[data-type="blue"]
    .c-accordion__body
    .l-requirement__step
    .text
    span {
    margin-top: calc(7 / 375 * 100vw);
    font-size: calc(15 / 375 * 100vw);
    line-height: 1.4;
  }

  .c-accordion[data-type="blue"]
    .c-accordion__body
    .l-requirement__step
    .text
    span.em {
    font-size: calc(16 / 375 * 100vw);
  }

  .c-accordion[data-type="blue"]
    .c-accordion__body
    .l-requirement__step
    .text
    span.sub {
    font-size: calc(14 / 375 * 100vw);
    line-height: 1.5;
  }

  .c-accordion[data-type="blue"]
    .c-accordion__body
    .l-requirement__step
    .c-image__container {
    margin-top: calc(17 / 375 * 100vw);
  }

  .c-accordion[data-type="blue"] .c-accordion__body {
    max-width: 100%;
    padding: calc(17 / 375 * 100vw) calc(20 / 375 * 100vw)
      calc(23 / 375 * 100vw);
    border-radius: 0 0 calc(35 / 375 * 100vw) calc(35 / 375 * 100vw);
  }

  .c-button[data-icon="arrow"][data-color="pink"]::before {
    right: calc(19 / 375 * 100vw);
    width: calc(7 / 375 * 100vw);
    height: calc(7 / 375 * 100vw);
    border-top: calc(2 / 375 * 100vw) solid #fff;
    border-right: calc(2 / 375 * 100vw) solid #fff;
  }

  .section-head {
    padding: 0;
    background-color: transparent;
    margin-bottom: calc(33 / 375 * 100vw);
  }

  .section-head::after {
    border: none;
  }

  .section-head__sub {
    width: 100%;
    max-width: 250px;
    margin: 30px auto 0;
  }

  .ballon__content {
    margin-top: 25px;
  }

  .ballon {
    padding: 10px 15px;
  }

  .ballon > span {
    font-size: 14px;
  }

  .no-button {
    height: 50px;
  }
}

@media (min-width: 641px) {
  .c-image[data-sizing-sm="0.66"] {
    width: 66%;
    height: auto;
  }

  .c-image[data-sizing-sm="0.82"] {
    width: 82%;
    height: auto;
  }

  .c-text__container.fix {
    margin-top: 40px;
  }

  .l-footerSimple {
    margin-top: 0;
  }

  .c-button:hover {
    opacity: 0.8;
  }

  .flow .box {
    padding-top: 45px;
  }
}

/*--2025_new--*/

.mv {
  background: #ffffff;
}

.mv-head {
  display: flex;
  align-items: center;
  justify-content: center;
}

.mv-head img {
  width: 1920px;
  max-width: none;
}

.l-section__inner {
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
  padding: 0 10px;
  text-align: center;
}

.l-bg__container {
  background-color: #F8F3DD;
  position: relative;
  padding-top: 20px;
}

#first-cv .c-list li {
  font-size: 14px;
  display: inline-block;
}

.entry {
  padding-top: 1px;
}

.c-accordion[data-type="blue"] .c-accordion__body + .c-list__container .c-list {
  margin-top: 23px;
}

.c-list[data-type="kome"] > li {
  position: relative;
  padding-left: 1.5em;
  color: #666;
  font-size: 12px;
}

.c-list[data-type="kome"]>li .c-link {
  font-size: 12px;
}

.c-accordion[data-type="blue"]
  .c-accordion__body
  + .c-list__container
  .c-list
  li {
  font-size: 14px;
  display: inline-block;
}

.box .img-step {
  margin-top: 34px;
  color: #A26402;
}

.flow {
  position: relative;
  z-index: 2;
}

.benefit {
  padding-top: 93px;
  position: relative;
  z-index: 2;
  padding-bottom: 50px;
}

.benefit .box_head {
  top: -45px;
  width: 476px;
}

.benefit picture[data-image="01"] {
  margin-top: 11px;
}

.benefit picture[data-image="02"] {
  max-width: none;
  width: 610px;
  margin-top: 20px;
}

@media (max-width: 784px) {
  .benefit picture[data-image="02"] {
    max-width: 100%;
  }
}

.benefit picture[data-image="03"] {
  width: 487px;
  margin-top: 33px;
  margin-bottom: 27px;
  padding-top: 21px;
}
.benefit .benefit__text--s {
  max-width: 610px;
  margin: auto 0;
  text-align: left;
  line-height: 1.5;
  color: #666666;
}

.benefit .box {
  padding: 0;
}

.box-inner {
  padding: 72px 70px 29px;
  position: relative;
  z-index: 1;
}

.qa .box_head {
  width: 448px;
}

.qa .box .lp-text {
  font-size: 16px;
}

.information-head {
  width: 487px;
  margin: auto;
}

.entry-button {
  text-align: center;
}

.entry-button .c-list__container .c-list li {
  font-size: 17px;
  color: #fff;
}

.entry-button .lp-button_01 {
  max-width: 512px;
}

#entry {
  margin-top: 53px;
}

@media screen and (min-width: 641px) and (max-width: 980px) {
  .mv-head img {
    width: calc(1920 / 980 * 100vw);
  }
}

@media screen and (min-width: 641px) and (max-width: 840px) {
  .box-inner:after {
    border: calc(410 / 840 * 100vw) solid transparent;
    border-top: calc(40 / 840 * 100vw) solid #fff;
  }
}

@media (max-width: 640px) {
  .mv-head img {
    width: 100%;
  }

  #first-cv .c-list li {
  font-size: 12px;
  display: inline-block;
}

  .entry {
    padding-top: calc(17 / 375 * 100vw);
  }

  .c-accordion[data-type="blue"] .c-accordion__head::before,
  .c-accordion[data-type="blue"] .c-accordion__head::after {
    width: calc(15 / 375 * 100vw);
    right: calc(22 / 375 * 100vw);
    height: calc(2 / 375 * 100vw);
  }

  .c-accordion[data-type="blue"] .c-accordion__head.is-open {
    border-right: calc(2 / 375 * 100vw) solid var(--c-blue);
    border-left: calc(2 / 375 * 100vw) solid var(--c-blue);
    border-radius: calc(35 / 375 * 100vw) calc(35 / 375 * 100vw) 0 0;
  }

  .c-accordion[data-type="blue"]
    .c-accordion__body
    .l-requirement__step
    li:nth-child(n + 2) {
    padding-top: calc(38 / 375 * 100vw);
  }

  .c-accordion[data-type="blue"]
    .c-accordion__body
    + .c-list__container
    .c-list {
    padding-left: calc(2 / 375 * 100vw);
    margin-top: calc(10 / 375 * 100vw);
  }
  .c-accordion[data-type="blue"]
  .c-accordion__body
  + .c-list__container
  .c-list
  li {
    font-size: 12px;
    display: inline-block;
  }

  .flow {
    margin-top: calc(66 / 375 * 100vw);
  }

  .box .img-step {
    margin-top: 0;
  }

  .box .lp-text {
    font-size: calc(12 / 375 * 100vw);
  }

  .box .lp-text[data-size="large"] {
    font-size: calc(15 / 375 * 100vw);
  }

  .back-image::after {
    width: 100%;
    height: calc(300 / 375 * 100vw);
    background: url(/campaign/2507shopping/img/img_bg_sp.png) no-repeat center
      center;
    background-size: 100%;
    transform: translateY(calc(-155 / 375 * 100vw));
  }

  .benefit {
    padding-top: calc(70 / 375 * 100vw);
  }

  .benefit .box_head {
    top: calc(-27 / 375 * 100vw);
    width: calc(307 / 375 * 100vw);
  }

  .benefit picture[data-image="01"] {
    width: 100%;
    margin-top: 0;
    max-width: 100%;
  }

  .box-inner {
    padding: calc(55 / 375 * 100vw) calc(15 / 375 * 100vw)
      calc(12 / 375 * 100vw);
  }

  .benefit picture[data-image="02"] {
    width: 97%;
    margin-top: calc(25 / 375 * 100vw);
    margin-bottom: calc(15 / 375 * 100vw);
  }

  .c-button[data-size="m"][data-color="blue"] {
    padding: calc(18 / 375 * 100vw) 0;
    font-size: calc(15 / 375 * 100vw);
    border-radius: calc(50 / 375 * 100vw);
    box-shadow: 0 calc(5 / 375 * 100vw) calc(11 / 375 * 100vw)
      rgba(51, 51, 51, 0.3);
    max-width: calc(317 / 375 * 100vw);
  }

  .c-button[data-icon="arrow"][data-color="blue"]::before {
    right: calc(20 / 375 * 100vw);
    width: calc(8 / 375 * 100vw);
    height: calc(8 / 375 * 100vw);
    border-top: calc(3 / 375 * 100vw) solid #fff;
    border-right: calc(3 / 375 * 100vw) solid #fff;
  }

  .img-line {
    background-image: radial-gradient(
      circle,
      #37c3cf calc(1 / 375 * 100vw),
      transparent calc(1 / 375 * 100vw)
    );
    background-position: left top;
    background-repeat: repeat-x;
    background-size: calc(5 / 375 * 100vw) calc(4 / 375 * 100vw);
    margin-top: calc(-11 / 375 * 100vw);
  }

  .benefit picture[data-image="03"] {
    width: 97%;
    margin-top: calc(38 / 375 * 100vw);
    margin-bottom: calc(16 / 375 * 100vw);
    padding-top: calc(26 / 375 * 100vw);
  }

  .benefit .benefit__text--s {
    margin: calc(15 / 375 * 100vw) auto 0;
    text-align: left;
    font-size: calc(11.5 / 375 * 100vw);
    line-height: 1.5;
    color: #666666;
  }

  .lp-button_04 {
    max-width: 100%;
  }

  .lp-button_05 {
    margin-top: calc(20 / 375 * 100vw);
  }

  .box-inner:after {
    border: calc(176 / 375 * 100vw) solid transparent;
    border-top: calc(22 / 375 * 100vw) solid #fff;
  }

  .qa .box_head {
    width: calc(300 / 375 * 100vw);
  }

  .qa .box .lp-text {
    font-size: calc(14 / 375 * 100vw);
  }

  .information-head {
    width: calc(298 / 375 * 100vw);
    margin: auto;
  }

  .campaign-number {
    margin-bottom: calc(60 / 375 * 100vw);
  }

  .entry-button .c-list__container .c-list li {
    font-size: calc(12 / 375 * 100vw);
  }

  .entry-button .lp-button_01 {
    max-width: calc(280 / 375 * 100vw);
  }

  #entry {
    margin-top: calc(20 / 375 * 100vw);
  }

}

@media screen and (min-width: 410px) and (max-width: 640px) {
  .c-accordion[data-type="blue"]
    .c-accordion__body
    .l-requirement__step
    li::before,
  .c-accordion[data-type="blue"]
    .c-accordion__body
    .l-requirement__step
    li::after {
    width: calc(169 / 375 * 100vw);
  }
}

/*--floating banner--*/
.bnr-contents {
  display: none;
  position: relative;
  width: 100%;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.5);
  box-sizing: border-box;
  background-color: rgba(255, 240, 191, 0.5);
  padding: 15px 40px;
  text-align: center;
}

.bnr-contents__button {
  width: 100%;
}

.bnr-countdown-contents {
  display: none;
  position: relative;
}

.bnr-countdown-contents__wrap {
  display: block;
  position: relative;
}

.bnr-contents .lp-button {
  max-width: 427px;
  padding: 0;
}

.bnr-contents .lp-button::after {
  display: none;
}

.fixed_top {
  display: block;
  position: fixed;
  z-index: 1000;
  bottom: 0;
}

.bnr-countdown-contents>a::after {
  display: none;
}

.bnr-countdown-contents>a::after {
  display: none;
}

.c-button[data-size="m"][data-color="blue"] {
  margin-bottom: 0;
  padding: 22px 0;
  background-color: var(--c-blue);
  font-size: 26px;
  border-radius: 50px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.44);
  max-width: 512px;
  color: white;
}

@media (max-width: 640px) {
.c-list.flex-column {
    max-height: calc(350 / 375 * 100vw) !important;
  }
}

/*-------------------------------------------

ru2510_web引用部分

-------------------------------------------*/

/* =========================
   common
========================= */

.bg_gray {
  background-color: #F4F4F4;
}

.content {
  width: 100%;
  padding: 120px 0 90px;
}

.service,
.utility,
.charge,
.plan {
  padding-bottom: 100px;
}

picture {
  text-align: center;
}

.em {
  color: #EB5505;
  font-weight: bold;
}

.text {
  margin-top: 10px;
  line-height: 1.6;
}

.text.s-text {
  color: #666;
  font-size: 12px;
}


/* =========================
   merit
========================= */

.merit {
  padding-bottom: 115px;
}

.merit__wrap {
  display: flex;
  justify-content: center;
  align-items: flex-end;
}

.merit__wrap .merit__head {
  margin: 0 15px;
  font-size: 42px;
  font-weight: bold;
  line-height: 1.3;
  text-align: center;
}

.merit__wrap .merit__head > span,
.merit__wrap .merit__head > span.merit__colorGold {
  font-size: 42px;
}

.merit__wrap > img {
  width: 18px;
}

.merit__colorGold {
  color: var(--gold-dark);
}


/* =========================
   nav
========================= */

.nav__list {
  display: flex;
  justify-content: center;
}

.nav.nav--merit {
  width: 100%;
  margin: 40px 0 0;
}

.nav.nav--merit .nav__list {
  flex-wrap: wrap;
  justify-content: space-between;
}

.nav.nav--merit .nav__item {
  width: 48.5074626866%;
  margin: 0;
}

.nav.nav--merit .nav__item:nth-child(n + 3) {
  margin-top: 15px;
}


/* =========================
   navButton
========================= */

.navButton {
  position: relative;
  display: block;
  height: 100%;
  padding: 30px 0 32px;
  overflow: hidden;
  background-color: var(--white);
  border: 1px solid var(--gold);
  border-bottom: 7px solid var(--gold);
  border-radius: 25px 0 5px 5px;
}

.navButton::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 7px;
  left: 0;
  display: block;
  width: 13px;
  height: 7px;
  margin: 0 auto;
  background: url(/function/promotion/goldlp/img/2209/icon_arrow_bottom_gold-pc.png) no-repeat top / cover;
  transition: transform 0.3s cubic-bezier(0.21, 0.67, 0.35, 1);
}

.navButton__img {
  width: 60px;
  margin-right: 15px;
}

.navButton__label {
  position: relative;
  display: block;
  width: 100%;
  color: var(--black);
  font-size: min(16px, 1.7777777778vw);
  font-weight: bold;
  text-align: center;
}

.navButton__label_fontDin,
.navButton__label_percent {
  font-family: "DIN-2014 Narrow-Bold", sans-serif;
  line-height: 1;
}

.navButton__sublabel {
  display: block;
  font-size: 16px;
  font-weight: bold;
  transform: translateX(30px);
}


/* merit variant */

.navButton.navButton--merit {
  display: flex;
  align-items: center;
  min-height: 101px;
  padding: 5px 30px 5px 15px;
  border: 2px solid var(--gold);
  border-bottom: 4px solid var(--gold);
  border-radius: 4px;
}

.navButton.navButton--merit::after {
  top: 50%;
  right: 15px;
  bottom: auto;
  left: auto;
  width: 9px;
  height: 9px;
  margin-top: -8px;
  background: none;
  border-right: 2px solid var(--black);
  border-bottom: 2px solid var(--black);
  transform: rotate(45deg);
  transition: none;
}

.navButton.navButton--merit .navButton__label {
    font-size: calc(14 / 375 * 100vw);
    letter-spacing: -0.1px;
}

.navButton.navButton--merit .navButton__label {
  font-size: 14px;
  line-height: 1.4;
  letter-spacing: 1px;
  text-align: left;
}

.navButton.navButton--merit .navButton__label_colorGold {
  color: var(--gold);
  font-size: 20px;
  font-weight: bold;
}

.navButton.navButton--merit .navButton__label_colorGold.navButton__label_colorGold--fontL {
  font-size: 24px;
}

.navButton.navButton--merit .navButton__label_fontDin {
  display: inline-block;
  font-size: 40px;
}

.navButton.navButton--merit .navButton__label_percent {
  font-size: 30px;
}

.navButton.navButton--merit .navButton__label_note {
  display: block;
  margin-top: 2px;
  font-size: 12px;
  letter-spacing: 0;
  transform: translateX(20px);
}

.navButton,
.navButton:hover,
.navButton:active,
.navButton:focus {
  text-decoration: none;
}


/* =========================
   section-head
========================= */

.section-head {
  position: relative;
  margin-bottom: 125px;
  padding: 0 20px;
  background-color: #FFF0BF;
}

.section-head::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 100%;
  left: 50%;
  border: 960px solid transparent;
  border-top: 70px solid #FFF0BF;
  transform: translateX(-50%);
}


/* =========================
   user
========================= */

.user .section-head img {
  margin-top: -28px;
}

#anc01 {
  margin-top: -20px;
  padding-top: 20px;
  padding-bottom: 115px;
}

.l-user__text {
  margin-top: 20px;
  font-size: 30px;
  font-weight: bold;
  text-align: center;
}

.l-user__img {
  width: 100%;
  margin: 50px auto 10px;
}

.c-accordion__container+.l-user__img {
  max-width: 100%;
  margin-top: 60px;
}


/* =========================
   accordion
========================= */

.lp-accordion__head::before,
.lp-accordion__head::after {
  height: 2px;
}

.lp-accordion[data-type="gold"] .lp-accordion__head {
  padding: 15px 50px;
  background-color: var(--white);
  border: 2px solid var(--gold-dark);
  border-radius: 8px;
  color: var(--gold-dark);
  font-size: 17px;
}

.lp-accordion[data-type="gold"] .lp-accordion__head::before,
.lp-accordion[data-type="gold"] .lp-accordion__head::after {
  background-color: var(--gold-dark);
}

.lp-accordion[data-type="gold"] .lp-accordion__head.is-open {
  border-bottom: none;
  border-radius: 8px 8px 0 0;
}

.lp-accordion[data-type="gold"] .lp-accordion__body {
  padding: 10px 30px 30px;
  background-color: var(--white);
  border-right: 2px solid var(--gold-dark);
  border-bottom: 2px solid var(--gold-dark);
  border-left: 2px solid var(--gold-dark);
}

.lp-accordion[data-type="gold"][data-radius="8"] .lp-accordion__head.is-open {
  border-bottom: 2px solid var(--gold-dark);
}

.lp-accordion[data-type="gold"][data-radius="8"] .lp-accordion__body {
  padding-top: 30px;
  border-radius: 0 0 8px 8px;
}

.lp-accordion[data-type="gray"] .lp-accordion__body {
  padding: 40px;
  border-right: 2px solid #F4F4F4;
  border-bottom: 2px solid #F4F4F4;
  border-left: 2px solid #F4F4F4;
  border-radius: 0 0 8px 8px;
}


/* =========================
   benefits
========================= */

.benefitsDetails__hdg {
  position: relative;
  margin-top: 40px;
  padding-bottom: 10px;
  border-bottom: 1px solid #e5e5e5;
  color: #a68001;
  font-size: 18px;
  font-weight: 700;
}

.benefitsDetails__hdg::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  display: block;
  width: 70px;
  height: 1px;
  background: #a68001;
}


/* =========================
   charge
========================= */

.charge {
  padding-top: 20px;
}

.charge .section-head {
  padding-top: 45px;
}

.charge .section-head img {
  width: 100%;
  max-width: 680px;
  margin-top: -67px;
}

.l-overview__text {
  margin-top: 40px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
}

.l-overview__grid {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 600px;
  margin: auto;
}

.l-overview__grid .l-overview__text {
  flex-shrink: 0;
  font-size: 18px;
}

.l-overview__grid .l-charge-box__img {
  max-width: 300px;
  padding-bottom: 0;
}

.l-charge-box__img {
  padding: 30px 0;
}

.l-overview__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px;
  margin-top: 44px;
  margin-bottom: 44px;
}

.l-overview__list li {
  display: flex;
  align-items: center;
  width: 45%;
  padding: 9px 18px;
  border: 1px solid #CCCCCC;
  border-radius: 8px;
}

.l-overview__list .number,
.l-overview__list .text {
  font-size: 16px;
  font-weight: bold;
}

.l-overview__list .text {
  flex-grow: 1;
  margin-top: 0;
  line-height: 1.4;
  text-align: center;
}

.l-overview__list .text .sm {
  font-weight: bold;
  font-size: 14px;
}

.l-overview__list .percentage {
  margin-left: auto;
  padding-left: 5px;
  color: #EB5505;
  font-family: "DIN-2014 Narrow-Bold", "DIN Alternate", sans-serif;
  font-size: 40px;
  font-weight: bold;
}

.l-overview__list .percentage span {
  font-size: 25px;
  font-weight: bold;
}


/* =========================
   service / travel
========================= */

.service .section-head,
.travel .section-head {
  padding-top: 45px;
}

.service .section-head img {
  max-width: 444px;
}

.travel .section-head img {
  max-width: 542px;
}

.l-grid[data-col="1"] .l-grid__item.l-grid__item--gold,
.l-grid[data-col="1"] .l-grid__item.l-grid__item--silver {
  width: 100%;
}

.l-grid__item.l-grid__item--gold {
  overflow: hidden;
  border: 2px solid #AE8F32;
  border-radius: 8px;
}

.l-grid__title {
  position: relative;
  padding: 15px;
  background-color: #AE8F32;
  color: var(--white);
  font-size: 25px;
  font-weight: bold;
  line-height: 1.3;
  text-align: center;
}

.service .l-grid__title,
.travel .l-grid__title {
  padding: 22px;
  font-size: 31px;
  line-height: 1.3;
}

.l-grid__box {
  padding: 40px;
}

.service .l-grid__box,
.travel .l-grid__box {
  box-sizing: content-box;
  max-width: 630px;
  margin: auto;
  padding-bottom: 70px;
  text-align: left;
}

.service .l-grid__box picture {
  max-width: 500px;
  margin: auto;
  margin-bottom: 38px;
}

.service .l-grid__box .lp-text,
.travel .l-grid__box .lp-text {
  font-size: 20px;
  line-height: 1.6;
}

.l-grid + .l-grid {
  margin-top: 30px;
}

.travel .l-grid+.l-grid {
  margin-top: 48px;
}

.travel-grid {
  display: flex;
}

.travel-grid picture img {
  max-width: 158px;
}

.travel-grid__item {
  display: flex;
  align-items: center;
  margin-right: 19px;
}

picture[data-image="04"] img {
  margin-top: 35px;
}

picture[data-image="05"] img {
  margin-top: 30px;
  margin-bottom: 40px;
}

picture[data-image="06"] img {
  margin-top: 30px;
}


/* =========================
   service-grid
========================= */

.service-grid {
  display: flex;
  justify-content: space-between;
  margin-top: 40px;
}

.service-grid__item {
  width: 48%;
}

.service-grid__head {
  margin-bottom: 15px;
  padding: 10px 17px;
  background-color: #A78102;
  border: 2px solid #A78102;
  color: var(--white);
  font-size: 20px;
}

.service-grid__item:nth-child(2) .service-grid__head {
  background-color: var(--white);
  color: #A78102;
}

.service-grid__text {
  font-size: 20px;
  line-height: 1.5;
}


/* =========================
   link
========================= */

.c-link[data-icon="arrow"]::before {
  content: "";
  position: absolute;
  top: .36em;
  left: 3px;
  width: 6px;
  height: 10px;
  background-image: url(/shared/legacy-compatible/img/icon_arrow_bold.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}

.c-link.link[data-icon="arrow"]::before {
  top: .3em;
  width: 0;
  height: 0;
  background-image: none;
  background-size: 0;
  border: 6px solid transparent;
  border-right: 0 solid transparent;
  border-left: 8px solid var(--black);
}

.link.link--underline {
    text-decoration: underline;
    display: inline-block;
}

a.link.c-link {
  color: #0070cc;
}
a.link:after {
  display: none;
}

/* =========================
   list
========================= */

.c-list.flex-column {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  max-height: 300px;
}

.c-list.flex-column li {
  width: 30%;
}

.c-list.flex-column li + li {
  margin-top: 2px;
}

/* =========================
   benefitsDetails
========================= */

.benefitsDetails {
  line-height: 1.6;
}

.benefitsDetails__lead {
  margin-top: 20px;
  font-size: 14px;
  line-height: 1.6;
}

.benefitsDetails__list {
  margin-top: 20px;
  font-size: 14px;
}

.benefitsDetails__list .benefitsDetails__listLead {
  display: table-cell;
}

.benefitsDetails__listLead a {
    font-size: 12px;
}

.benefitsDetails__list .benefitsDetails__listIcon {
  display: table-cell;
  white-space: nowrap;
}

.benefitsDetails__fontSmall li {
  color: #666;
  font-size: 12px;
}

.benefitsDetails .c-table {
  table-layout: fixed;
}

.benefitsDetails .c-table th {
  font-weight: bold;
}

.benefitsDetails .c-table th:nth-child(1) {
  width: 30%;
}

.benefitsDetails .c-table th:nth-child(2) {
  width: 15%;
}

.benefitsDetails .c-table th:nth-child(3) {
  width: 55%;
}

.lp-accordion[data-type=gray] .lp-accordion__head {
  background-color: #F4F4F4;
}


@media (hover: hover) {
  .navButton:hover {
    text-decoration: none;
  }

  .navButton:hover::after {
    transform: translateY(3px);
  }

  .navButton.navButton--merit:hover::after {
    transform: rotate(45deg);
  }
}

@media screen and (min-width: 641px) and (max-width: 890px) {
  .l-overview__list li {
    width: 43%;
  }
}

@media screen and (min-width: 641px) and (max-width: 960px) {
  .merit__wrap .merit__head, .merit__wrap .merit__head>span, .merit__wrap .merit__head>span.merit__colorGold {
      font-size: calc(42 / 960 * 100vw);
    }

  .merit__wrap>img {
      width: calc(18 / 960 * 100vw);
    }

  .nav.nav--merit .nav__item:nth-child(n+3) {
    margin-top: calc(15 / 960* 100vw);
  }

  .navButton.navButton--merit {
    padding: calc(5 / 960* 100vw) calc(28 / 960* 100vw) calc(5 / 960* 100vw) calc(15 / 960* 100vw);
    border: 2px solid var(--gold);
    border-bottom: calc(4 / 960* 100vw) solid var(--gold);
    border-radius: calc(8 / 960* 100vw);
    min-height: 0;
  }

  .navButton__img {
    width: calc(60 / 960* 100vw);
    margin-right: calc(15 / 960* 100vw);
  }

  .navButton.navButton--merit .navButton__label {
    font-size: calc(14 / 960* 100vw);
  }

  .navButton.navButton--merit .navButton__label_colorGold {
    font-size: calc(20 / 960* 100vw);
  }

  .navButton.navButton--merit .navButton__label_colorGold.navButton__label_colorGold--fontL {
    font-size: calc(24 / 960* 100vw);
  }

  .navButton.navButton--merit .navButton__label_fontDin {
    font-size: calc(40 / 960* 100vw);
  }

  .navButton.navButton--merit .navButton__label_percent {
    font-size: calc(30 / 960* 100vw);
  }

  .navButton.navButton--merit .navButton__label_note {
    font-size: calc(12 / 960* 100vw);
  }

  a:hover img {
    opacity: 0.75;
  }
}

@media screen and (max-width: 640px) {

  /* =========================
     common
  ========================= */

  .content {
    padding: calc(35 / 375 * 100vw) 0 calc(80 / 375 * 100vw);
  }

  .l-section__inner {
    padding: 0 calc(20 / 375 * 100vw);
  }

  .text {
    margin-top: 10px;
    line-height: 1.6;
  }

  .text.s-text {
    font-size: calc(12 / 375 * 100vw);
  }

  .user,
  .family,
  .service,
  .utility,
  .charge,
  .plan,
  .hikari,
  .market {
    padding-bottom: calc(64 / 375 * 100vw);
  }


  /* =========================
     merit
  ========================= */

  .merit__wrap {
    padding: 0 20px;
  }

  .merit__wrap > img {
    width: calc(20 / 375 * 100vw);
  }

  .merit__wrap .merit__head {
    margin: 0 calc(15 / 375 * 100vw);
    font-size: calc(19 / 375 * 100vw);
  }

  .merit__wrap .merit__head > span {
    font-size: calc(30 / 375 * 100vw);
  }

  .merit__wrap .merit__head > span.merit__colorGold {
    font-size: calc(18 / 375 * 100vw);
  }


  /* =========================
     nav
  ========================= */

  .nav.nav--merit {
    margin-top: calc(23 / 375 * 100vw);
  }

  .nav.nav--merit .nav__list {
    flex-direction: column;
  }

  .nav.nav--merit .nav__item {
    width: 100%;
    margin: 0;
  }

  .nav.nav--merit .nav__item:nth-child(n + 2) {
    margin-top: calc(15 / 375 * 100vw);
  }


  /* =========================
     navButton
  ========================= */

  .navButton.navButton--merit {
    min-height: 66px;
    padding:
      calc(10 / 375 * 100vw)
      calc(30 / 375 * 100vw)
      calc(10 / 375 * 100vw)
      calc(15 / 375 * 100vw);
  }

  .navButton__img {
    width: calc(58 / 375 * 100vw);
    margin-right: calc(7 / 375 * 100vw);
  }

  .navButton.navButton--merit .navButton__label {
    font-size: calc(14 / 375 * 100vw);
    letter-spacing: -0.1px;
  }

  .navButton.navButton--merit .navButton__label_colorGold {
    font-size: calc(15 / 375 * 100vw);
  }

  .navButton.navButton--merit
  .navButton__label_colorGold.navButton__label_colorGold--fontL {
    font-size: 17px;
  }

  .navButton.navButton--merit .navButton__label_fontDin {
    display: inline-block;
    font-size: calc(30 / 375 * 100vw);
    transform: translateY(calc(3 / 375 * 100vw));
  }

  .navButton.navButton--merit .navButton__label_percent {
    display: inline-block;
    padding-right: calc(5 / 375 * 100vw);
    font-size: 20px;
    transform: translateY(calc(3 / 375 * 100vw));
  }

  .navButton__sublabel {
    display: block;
    font-size: calc(14 / 375 * 100vw);
    font-weight: bold;
    transform: translateX(20px);
  }

  .navButton.navButton--merit .navButton__label_note {
    font-size: calc(10 / 375 * 100vw);
    transform: translateX(5px);
  }


  /* =========================
     section-head
  ========================= */

  .section-head {
    margin-bottom: calc(33 / 375 * 100vw);
    padding: 0;
    background-color: transparent;
  }

  .section-head::after {
    border: none;
  }

  .user .section-head img {
    margin-top: calc(-19 / 375 * 100vw);
  }

  .charge .section-head,
  .utility .section-head,
  .service .section-head,
  .market .section-head,
  .travel .section-head {
    padding-top: 0;
  }

  .charge .section-head img,
  .travel .section-head img,
  .service .section-head img {
    width: 100%;
    max-width: 100%;
  }


  /* =========================
     user
  ========================= */

  #anc01 {
    padding-bottom: calc(40 / 375 * 100vw);
  }

  .user {
    margin-bottom: calc(40 / 375 * 100vw);
  }

  .l-user__card img {
    width: calc(120 / 375 * 100vw);
    margin-top: 0;
  }

  .l-user__text {
    margin-top: calc(10 / 375 * 100vw);
    font-size: calc(17 / 375 * 100vw);
  }

  .l-user__img {
    margin:
      calc(25 / 375 * 100vw)
      auto
      calc(10 / 375 * 100vw);
  }

  .l-user__acd,
  .l-user__img + .c-accordion__container {
    margin-top: calc(20 / 375 * 100vw);
  }

  .c-accordion__container+.l-user__img {
    margin-top: calc(40 / 375 * 100vw);
  }


  /* =========================
     accordion
  ========================= */

  .lp-accordion__container {
    margin-top: 15px;
  }

  .lp-accordion__head::before,
  .lp-accordion__head::after {
    right: calc(15 / 375 * 100vw);
    width: calc(14 / 375 * 100vw);
  }

  .lp-accordion[data-type="gold"] .lp-accordion__head {
    padding:
      calc(12 / 375 * 100vw)
      calc(30 / 375 * 100vw);

    font-size: calc(14 / 375 * 100vw);
    border-radius: calc(4 / 375 * 100vw);
  }

  .lp-accordion[data-type="gold"] .lp-accordion__body {
    padding:
      calc(15 / 375 * 100vw)
      calc(20 / 375 * 100vw)
      calc(30 / 375 * 100vw);
  }

  .lp-accordion[data-type="gray"] .lp-accordion__head {
    padding:
      calc(16 / 375 * 100vw)
      calc(50 / 375 * 100vw);

    font-size: calc(14 / 375 * 100vw);
    border-radius: calc(4 / 375 * 100vw);
  }

  .lp-accordion[data-type="gray"] .lp-accordion__head.is-open {
    border-radius:
      calc(4 / 375 * 100vw)
      calc(4 / 375 * 100vw)
      0 0;
  }

  .lp-accordion[data-type="gray"] .lp-accordion__body {
    padding:
      calc(20 / 375 * 100vw)
      calc(10 / 375 * 100vw);

    border-radius:
      0 0
      calc(4 / 375 * 100vw)
      calc(4 / 375 * 100vw);
  }

  .lp-accordion__container.wide .lp-accordion__body {
    padding-right: 0;
    padding-left: 0;
  }


  /* =========================
     benefits
  ========================= */

  .benefitsDetails .c-table {
    width: 100%;
  }

  .benefitsDetails .c-table th:nth-child(1) {
    width: 35%;
  }

  .benefitsDetails .c-table th:nth-child(2) {
    width: 20%;
  }

  .benefitsDetails .c-table th:nth-child(3) {
    width: 45%;
  }

  .benefitsDetails__hdg {
    margin-top: calc(25 / 375 * 100vw);
    font-size: calc(15 / 375 * 100vw);
  }

  .benefitsDetails__lead,
  .benefitsDetails__list {
    margin-top: calc(20 / 375 * 100vw);
    font-size: calc(13 / 375 * 100vw);
  }

  .benefitsDetails__fontSmall li,
  .benefitsDetails__fontSmall .c-link[data-icon="arrow"] {
    font-size: calc(12 / 375 * 100vw);
  }

  .benefitsDetails .c-table th:nth-child(1) {
    width: 35%;
  }

  .benefitsDetails .c-table th,
  .benefitsDetails .c-table td {
    padding: calc(8 / 375 * 100vw);
    font-size: calc(13 / 375 * 100vw);
  }


  /* =========================
     table / list
  ========================= */

  .c-table td,
  .c-table th {
    font-size: calc(14 / 375 * 100vw);
  }

  .user .c-table p,
  .user .c-table .c-list[data-type="dot"] > li,
  .c-list[data-type="dot"] > li,
  .c-list[data-type="kome"] > li,
  .c-list[data-type="kome"] > li .c-link,
  .c-list[data-type="asterisk-number-half_colon"] > li {
    font-size: calc(12 / 375 * 100vw);
  }

  .c-list[data-type="dot"] > li {
    position: relative;
    padding-left: 1.25em;
  }

  .c-list__container {
    margin:
      calc(15 / 375 * 100vw)
      0;
  }

  .c-list.flex-column {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    max-height: calc(330 / 375 * 100vw);
  }

  .c-list.flex-column li {
    width: calc(120 / 375 * 100vw);
  }


  /* =========================
     overview
  ========================= */

  .l-overview__text {
    margin-top: calc(40 / 375 * 100vw);
    font-size: calc(18 / 375 * 100vw);
    font-weight: bold;
    line-height: 1.5;
  }

  .l-overview__grid {
    margin-top: calc(25 / 375 * 100vw);
  }

  .l-overview__grid .l-overview__text {
    margin-top: 0;
    font-size: calc(15 / 375 * 100vw);
  }

  .l-overview__list {
    display: block;
    margin:
      calc(25 / 375 * 100vw)
      0
      calc(20 / 375 * 100vw);
  }

  .l-overview__list li {
    align-items: center;
    width: 95%;
    height: calc(50 / 375 * 100vw);
    padding:
      calc(5 / 375 * 100vw)
      calc(7 / 375 * 100vw);

    border-radius: calc(4 / 375 * 100vw);
  }

  .l-overview__list li + li {
    margin-top: calc(7 / 375 * 100vw);
  }

  .l-overview__list .number,
  .l-overview__list .text {
    font-size: calc(14 / 375 * 100vw);
  }

  .l-overview__list .text {
    max-width: calc(250 / 375 * 100vw);
  }

  .l-overview__list .text .sm {
    font-size: calc(12 / 375 * 100vw);
  }

  .l-overview__list .percentage {
    padding:
      0
      calc(5 / 375 * 100vw);

    font-size: calc(35 / 375 * 100vw);
  }

  .l-overview__list .percentage span {
    font-size: calc(22 / 375 * 100vw);
  }


  /* =========================
     service / travel
  ========================= */

  .l-grid__item.l-grid__item--gold {
    overflow: hidden;
    border: 1px solid #AE8F32;
    border-radius: calc(4 / 375 * 100vw);
  }

  .service .l-grid__title,
  .travel .l-grid__title {
    padding: calc(10 / 375 * 100vw);
    font-size: calc(17 / 375 * 100vw);
    line-height: 1.3;
  }

  .service .l-grid__box,
  .travel .l-grid__box {
    box-sizing: content-box;
    max-width: calc(630 / 375 * 100vw);
    margin: auto;
    padding:
      calc(18 / 375 * 100vw)
      calc(19 / 375 * 100vw);

    text-align: left;
  }

  .service .l-grid__box picture {
    max-width: calc(500 / 375 * 100vw);
    margin: auto;
    margin-bottom: calc(18 / 375 * 100vw);
  }

  .service .l-grid__box .lp-text,
  .travel .l-grid__box .lp-text {
    font-size: calc(15 / 375 * 100vw);
    line-height: 1.5;
  }

  .service .l-grid__box .c-list[data-type="dot"] > li {
    padding-left: calc(13 / 375 * 100vw);
    font-size: calc(11 / 375 * 100vw);
    line-height: 1.5;
  }

  .travel-grid {
    display: block;
  }

  .travel .l-grid+.l-grid {
    margin-top: calc(30 / 375* 100vw);
  }

  .travel-grid__item {
    display: flex;
    align-items: center;
    margin-right: 0;
    justify-content: center;
  }

  .travel-grid picture img {
    max-width: calc(107 / 375* 100vw);
    margin-bottom: calc(16 / 375* 100vw);
  }

  .travel .l-grid:nth-child(2) .lp-accordion__container {
    margin-bottom: calc(20 / 375 * 100vw);
  }

  picture[data-image="04"] img {
    margin-top: calc(16 / 375 * 100vw);
  }

  picture[data-image="05"] img {
    margin-top: 0;
    margin-bottom: calc(10 / 375 * 100vw);
  }

  picture[data-image="06"] img {
    margin-top: 0px;
    width: calc(280 / 375* 100vw);
  }

  .travel-grid picture img {
    max-width: calc(107 / 375 * 100vw);
    margin-bottom: calc(16 / 375 * 100vw);
  }


  /* =========================
     service-grid
  ========================= */

  .service-grid {
    display: block;
    margin-top: calc(12 / 375 * 100vw);
  }

  .service-grid__item {
    width: 100%;
  }

  .service-grid__item + .service-grid__item {
    margin-top: calc(20 / 375 * 100vw);
  }

  .service-grid__head {
    margin-bottom: calc(6 / 375 * 100vw);
    padding:
      calc(6 / 375 * 100vw)
      calc(17 / 375 * 100vw);

    border: 1px solid #A78102;
    font-size: calc(15 / 375 * 100vw);
  }

  .service-grid__text {
    font-size: calc(15 / 375 * 100vw);
    line-height: 1.5;
  }

  .service-grid__item .c-list__container {
    margin-top: calc(10 / 375 * 100vw);
  }


  /* =========================
     link
  ========================= */

  .c-link[data-icon="arrow"] {
    padding-left: calc(16 / 375 * 100vw);
    font-size: calc(14 / 375 * 100vw);
  }


  /* =========================
     charge
  ========================= */

  .l-charge-box__img {
    max-width: calc(265 / 375 * 100vw);
    margin: auto;
    padding: calc(10 / 375 * 100vw) 0;
  }

  .charge .section-head img {
    margin-top: -20px;
  }

}

