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

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

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

caption, th, td {
  font-weight: normal;
  text-align: left;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}

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

a img {
  border: none;
}

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

:root {
  --font-gothic: "Noto Sans JP", sans-serif;
  --color-beige:#f6f1d4;
  --color-blue:#00408a;
  --color-light-blue:#00a0e9;
  --color-pale-blue:#c7d2e0;
  --color-red:#d40f1a;
  --color-karashi:#b68b06;
  --color-yellow:#ffdd00;
  --color-orange:#f08300;
  --width: 1280;
  --transition-btn:.3s ease;
  --transition-txtlink:.3s ease;
  --px-vw: calc( 100vw / var( --width ) );
  --anim1:1s;
  --span1:.3s;
}

@media screen and (max-width: 1000px) {
  :root {
    --width:1000;
  }
}
@media screen and (max-width: 768px) {
  :root {
    --width:375;
  }
}
.fadein {
  opacity: 0;
  transition-duration: 1s;
  transition-property: opacity, transform, filter;
  transform: translate(0, 0);
}
.fadein.fadein-down {
  transform: translate(0, -30px);
}
.fadein.fadein-up {
  transform: translate(0, 30px);
}
.fadein.on {
  opacity: 1 !important;
  transform: translate(0, 0) !important;
}

.anim-load {
  opacity: 0;
  transition: opacity 0.6s ease;
}
.loaded .anim-load {
  opacity: 1;
}

@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.anim-cycle {
  transform-origin: 50% 50%;
  animation: cycle 4.5s infinite;
}

@keyframes cycle {
  0% {
    opacity: 0;
    transform: rotate(-10deg);
  }
  5% {
    opacity: 1;
    transform: rotate(0deg);
  }
  40% {
    opacity: 1;
    transform: rotate(0deg);
  }
  45% {
    opacity: 0;
    transform: rotate(10deg);
  }
  50% {
    opacity: 0;
    transform: rotate(170deg);
  }
  55% {
    opacity: 1;
    transform: rotate(180deg);
  }
  95% {
    opacity: 1;
    transform: rotate(180deg);
  }
  100% {
    opacity: 0;
    transform: rotate(190deg);
  }
}
.anim-seibun {
  animation: seibun 4.5s infinite;
}

@keyframes seibun {
  0% {
    transform: translate(-4px, 5px);
    opacity: 0;
  }
  17% {
    transform: translate(0, 0);
    opacity: 1;
  }
  61% {
    transform: translate(0, 0);
    opacity: 1;
  }
  78% {
    transform: translate(0, 0);
    opacity: 0;
  }
  100% {
    transform: translate(0, 0);
    opacity: 0;
  }
}
.anim-oxi-arrow {
  animation: oxi-arrow 4.5s infinite;
}

@keyframes oxi-arrow {
  0% {
    margin-left: 0;
    opacity: 0;
  }
  17% {
    margin-left: 5px;
    opacity: 1;
  }
  61% {
    margin-left: 5px;
    opacity: 1;
  }
  78% {
    margin-left: 5px;
    opacity: 0;
  }
  100% {
    margin-left: 5px;
    opacity: 0;
  }
}
.anim-oxi-maru {
  animation: oxi-maru 4.5s infinite;
  transform-origin: 50% 50%;
}

@keyframes oxi-maru {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  13% {
    transform: scale(1.2);
    opacity: 1;
  }
  17% {
    transform: scale(1);
    opacity: 1;
  }
  61% {
    transform: scale(1);
    opacity: 1;
  }
  78% {
    transform: scale(1);
    opacity: 0;
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}
.anim-trs {
  animation: trs 4.5s infinite;
}

@keyframes trs {
  0% {
    transform: translate(0%, -2%);
    opacity: 0;
  }
  17% {
    transform: translate(0, 0);
    opacity: 1;
  }
  61% {
    transform: translate(0, 0);
    opacity: 1;
  }
  78% {
    transform: translate(0, 0);
    opacity: 0;
  }
  100% {
    transform: translate(0, 0);
    opacity: 0;
  }
}
.anim-qua {
  animation: qua 4.5s infinite;
}

@keyframes qua {
  0% {
    height: 0;
    opacity: 0;
  }
  17% {
    height: 36.77419%;
    opacity: 1;
  }
  61% {
    height: 36.77419%;
    opacity: 1;
  }
  78% {
    height: 36.77419%;
    opacity: 0;
  }
  100% {
    height: 36.77419%;
    opacity: 0;
  }
}
.anim-ftg {
  animation: ftg 4.5s infinite;
}

@keyframes ftg {
  0% {
    transform: translate(0, -10%);
    opacity: 0;
  }
  17% {
    transform: translate(0, 0);
    opacity: 1;
  }
  61% {
    transform: translate(0, 0);
    opacity: 1;
  }
  78% {
    transform: translate(0, 0);
    opacity: 0;
  }
  100% {
    transform: translate(0, 0);
    opacity: 0;
  }
}
@media screen and (max-width: 768px) {
  @keyframes oxi-arrow {
    0% {
      margin-top: 0;
      opacity: 0;
    }
    17% {
      margin-top: calc(6 * var(--px-vw));
      opacity: 1;
    }
    61% {
      margin-top: calc(6 * var(--px-vw));
      opacity: 1;
    }
    78% {
      margin-top: calc(6 * var(--px-vw));
      opacity: 0;
    }
    100% {
      margin-top: calc(6 * var(--px-vw));
      opacity: 0;
    }
  }
}
html {
  font-size: 62.5%;
}

body {
  overflow-x: hidden;
  font-family: var(--font-gothic);
  font-style: normal;
  font-weight: 400;
  font-feature-settings: "palt";
  font-optical-sizing: auto;
  line-height: 1.6;
}

img {
  vertical-align: middle;
  max-width: 100%;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-gothic);
  font-weight: 500;
}

h3 {
  font-size: 40px;
  letter-spacing: 0.04em;
}

p {
  font-family: var(--font-gothic);
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: unset;
  text-align: justify;
  letter-spacing: 0.08em;
}
p b {
  font-weight: 700;
}

i {
  font-style: italic;
}

a {
  font-family: var(--font-gothic);
  color: inherit;
  text-decoration: underline;
  letter-spacing: 0.1em;
}

span {
  font-family: inherit;
}

dl {
  font-family: var(--font-gothic);
  letter-spacing: 0.1em;
}

table {
  font-family: var(--font-gothic);
}
table tbody th, table tbody td {
  letter-spacing: 0.1em;
}
.en table tbody th, .en table tbody td {
  letter-spacing: 0;
}

button {
  font-family: var(--font-gothic);
}

@media screen and (max-width: 768px) {
  p {
    font-size: calc(14 * var(--px-vw));
  }
  img {
    width: 100%;
  }
}
.footer {
  position: relative;
  min-height: 70px;
}
.footer .contact {
  padding: 36px 0 17px;
  text-align: center;
  font-size: 21px;
  font-weight: 400;
  letter-spacing: 0.12em;
}
.footer .contact span {
  font-size: 16px;
  letter-spacing: 0.05em;
  margin-left: 1em;
}
.footer .flex-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 32px;
  font-size: 1.5rem;
  letter-spacing: 0.04em;
}
.footer .flex {
  gap: 32px;
}
.footer a {
  color: #00809f;
}
.footer a, .footer p {
  font-size: inherit;
  letter-spacing: inherit;
}

@media screen and (max-width: 1000px) {
  .footer {
    min-height: calc(100 * var(--px-vw));
    padding-bottom: calc(20 * var(--px-vw));
  }
  .footer .contact {
    padding: calc(30 * var(--px-vw)) 0 calc(14 * var(--px-vw));
    font-size: calc(15 * var(--px-vw));
  }
  .footer .contact span {
    font-size: calc(13 * var(--px-vw));
  }
  .footer .flex-wrap {
    font-size: calc(12 * var(--px-vw));
  }
}
@media screen and (width <= 768px) {
  .footer {
    min-height: calc(133 * var(--px-vw));
    height: auto;
    font-size: unset;
    padding: 0;
  }
  .footer .contact {
    font-size: calc(14 * var(--px-vw));
    padding: calc(20 * var(--px-vw)) 0 calc(15 * var(--px-vw));
    line-height: 1.5;
  }
  .footer .contact span {
    font-size: calc(12 * var(--px-vw));
  }
  .footer .flex-wrap {
    flex-direction: column;
    gap: calc(7 * var(--px-vw)) calc(10 * var(--px-vw));
  }
  .footer .flex {
    display: flex;
    gap: calc(23 * var(--px-vw));
  }
  .footer a {
    font-size: calc(11 * var(--px-vw));
  }
  .footer p {
    font-size: calc(11 * var(--px-vw));
    width: 100%;
    text-align: center;
    line-height: 1;
  }
}
* {
  box-sizing: border-box;
}

main {
  position: relative;
}

img {
  max-width: 100%;
}

.sp {
  display: none;
}

.bracket {
  margin-left: 0.5em;
  display: inline-block;
}

.dash {
  --dash-w:4px;
  --dash-span:calc(var(--dash-w)*2);
  --color-dash:#8f8f8f;
  background-image: repeating-linear-gradient(0deg, var(--color-dash), var(--color-dash) var(--dash-w), transparent var(--dash-w), transparent var(--dash-span), var(--color-dash) var(--dash-span)), repeating-linear-gradient(90deg, var(--color-dash), var(--color-dash) var(--dash-w), transparent var(--dash-w), transparent var(--dash-span), var(--color-dash) var(--dash-span)), repeating-linear-gradient(180deg, var(--color-dash), var(--color-dash) var(--dash-w), transparent var(--dash-w), transparent var(--dash-span), var(--color-dash) var(--dash-span)), repeating-linear-gradient(270deg, var(--color-dash), var(--color-dash) var(--dash-w), transparent var(--dash-w), transparent var(--dash-span), var(--color-dash) var(--dash-span));
  background-size: 1px 100%, 100% 1px, 1px 100%, 100% 1px;
  background-position: 0 0, 0 0, 100% 0, 0 100%;
  background-repeat: no-repeat;
}

.marker {
  line-height: 1.2;
  display: inline-block;
  background: linear-gradient(transparent 75%, var(--color-light-blue) 0%);
}

.sup {
  font-size: 50%;
  font-weight: 400;
  vertical-align: top;
  letter-spacing: -0.1em;
}

.flex {
  display: flex;
}

.brown {
  color: var(--color-brown);
}

.red {
  color: var(--color-red);
}

.blue {
  color: var(--color-blue);
}

.orange {
  color: var(--color-orange);
}

.pos-rel {
  position: relative;
}

.w960 {
  width: 960px;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.center {
  text-align: center;
}

.anchor {
  margin-top: -120px;
  padding-top: 120px;
}

.mt20 {
  margin-top: 20px;
}

.mb20 {
  margin-bottom: 20px;
}

.bold {
  font-weight: 600;
}

@media screen and (max-width: 768px) {
  .dash {
    --dash-w:2px;
  }
  .sp {
    display: block;
  }
  .flex {
    display: block;
  }
  .anchor {
    margin-top: calc(-80 * var(--px-vw));
    padding-top: calc(80 * var(--px-vw));
  }
  .pc {
    display: none;
  }
}
.fv {
  position: relative;
  width: 100%;
  background-size: cover;
}
.fv .cnt .logo {
  position: absolute;
  top: calc(39 * var(--px-vw));
  left: calc(90 * var(--px-vw));
  z-index: 1;
  display: block;
}
.fv .cnt .logo img {
  width: calc(181 * var(--px-vw));
}
.fv .cnt .wrap {
  position: relative;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: row-reverse;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  height: 100%;
  padding: calc(40 * var(--px-vw)) 0 0;
}
.fv .cnt .wrap__pkg {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  position: relative;
  right: calc(42 * var(--px-vw));
}
.fv .cnt .wrap__pkg .pkg1 {
  margin-bottom: calc(-26 * var(--px-vw));
}
.fv .cnt .wrap__pkg .pkg1 img {
  width: calc(610 * var(--px-vw));
}
.fv .cnt .wrap__pkg .pkg2 {
  position: relative;
  right: calc(5 * var(--px-vw));
}
.fv .cnt .wrap__pkg .pkg2 img {
  width: calc(622 * var(--px-vw));
}
.fv .cnt .copy0, .fv .cnt .copy3 {
  display: none;
}
.fv .cnt .copy1, .fv .cnt .copy2 {
  margin-top: auto;
}
.fv .cnt .copy1 {
  margin-bottom: calc(103 * var(--px-vw));
  position: relative;
  right: calc(13 * var(--px-vw));
}
.fv .cnt .copy1 img {
  width: calc(135 * var(--px-vw));
}
.fv .cnt .copy2 {
  margin-bottom: calc(46 * var(--px-vw));
  position: relative;
  left: calc(3 * var(--px-vw));
}
.fv .cnt .copy2 img {
  width: calc(255 * var(--px-vw));
}

.fv0 .bg {
  width: 100%;
}
.fv0 .txt {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.fv0 .txt img {
  width: 100%;
}

.intro {
  background-color: var(--color-blue);
  width: 100%;
  padding-top: 50px;
  padding-bottom: 77px;
  position: relative;
}
.intro:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  background: url(../img/intro/bg-intro.svg) bottom center no-repeat;
  background-size: 100% auto;
  pointer-events: none;
}
.intro .ann {
  font-size: 12px;
  color: white;
  padding: 13px 20px;
  border: 1px solid white;
  width: 880px;
  max-width: 100%;
  margin: 0 auto 58px;
  line-height: 1.75;
  letter-spacing: 0.1em;
}
.intro .total {
  position: relative;
  z-index: 2;
  text-align: center;
}
.intro .total img {
  margin-bottom: 2px;
}
.intro .total .ann-total {
  font-size: 12px;
  text-align: center;
  letter-spacing: 0.1em;
}

.cv-cnt {
  --width-parent: 880;
  width: 880px;
  max-width: 100%;
  margin: 0 auto 70px;
  border-radius: 10px;
  background-color: var(--color-beige);
  padding: 49px 0;
  box-shadow: 0 0 23px rgba(0, 0, 0, 0.3);
  position: relative;
  z-index: 2;
}
.cv-cnt .ttl {
  color: var(--color-red);
  font-size: 46px;
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.08em;
  display: flex;
  justify-content: center;
  margin-bottom: 28px;
}
.cv-cnt .ttl:before, .cv-cnt .ttl:after {
  content: "";
  display: inline-block;
  width: 3px;
  height: 64px;
  background-color: var(--color-red);
  border-radius: 999px;
  transform: rotate(27deg);
  position: relative;
  top: 10px;
  left: 33px;
}
.cv-cnt .ttl:before {
  transform: rotate(-27deg);
  left: auto;
  right: 33px;
}
.cv-cnt .sub-ttl {
  background-color: black;
  border-radius: 999px;
  color: var(--color-karashi);
  display: block;
  width: fit-content;
  text-align: center;
  margin: 0 auto 32px;
  font-size: 28px;
  font-weight: 400;
  padding: 0 45px;
  line-height: 1.8;
  letter-spacing: 0;
}
.cv-cnt .item-wrap {
  display: flex;
  justify-content: center;
  margin-left: 1px;
  margin-bottom: 25px;
}
.cv-cnt .item-wrap .item {
  padding: 0 14px 20px;
}
.cv-cnt .item-wrap .item img {
  width: 400px;
}
.cv-cnt .item-wrap .item .txt {
  padding-left: 29px;
}
.cv-cnt .item-wrap .item p {
  text-align: center;
}
.cv-cnt .item-wrap .item p.item-ttl {
  font-size: 32px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.065em;
  margin-top: 2px;
  text-align: center;
  margin-bottom: 19px;
}
.cv-cnt .item-wrap .item p.vol {
  padding: 0 14px;
  background-color: var(--color-yellow);
  border-radius: 999px;
  display: block;
  width: fit-content;
  margin: 0 auto;
  font-size: 18px;
  text-align: center;
}
.cv-cnt .item-wrap .item.pst {
  position: relative;
  background-image: repeating-linear-gradient(180deg, #808080, #808080 5px, transparent 5px, transparent 10px);
  background-position: right top;
  background-repeat: repeat-y;
  background-size: 1px 100%;
}
.cv-cnt .item-wrap .item.cap .txt {
  padding: 0 29px 0 0;
}
.cv-cnt .price {
  text-align: center;
  max-width: 100%;
  margin-bottom: 26px;
}
.cv-cnt .cv-btn {
  font-size: 46px;
  font-weight: 700;
  color: white;
  background: #E40012;
  background: linear-gradient(180deg, rgb(228, 0, 18) 0%, rgb(182, 28, 34) 100%);
  text-decoration: none;
  border-radius: 999px;
  display: block;
  width: calc(756 / var(--width-parent) * 100%);
  max-width: 100%;
  margin: 0 auto 32px;
  text-align: center;
  letter-spacing: 0;
  line-height: 104px;
  padding-right: 48px;
  position: relative;
  opacity: 1;
  transition: 0.3s ease;
}
.cv-cnt .cv-btn:after {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(-50%, -50%);
  content: "";
  display: inline-block;
  width: 50px;
  height: 50px;
  background: url(../img/intro/cv-btn-arrow.svg) 0 0 no-repeat;
  background-size: 100% 100%;
}
.cv-cnt .cv-btn:hover {
  opacity: 0.6;
  transform: translateY(-5px);
}
.cv-cnt .course-ttl {
  text-align: center;
  font-size: 26px;
  font-weight: 600;
  margin-bottom: 16px;
}
.cv-cnt .course-ann {
  max-width: 765px;
  margin: 0 auto 29px;
  font-size: 12px;
  line-height: 1.7;
  letter-spacing: 0.08em;
}
.cv-cnt .value {
  display: flex;
  gap: 10px;
  width: 770px;
  max-width: 100%;
  margin: 0 auto;
}
.cv-cnt .value .box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 250px;
  height: 180px;
  background: white;
  border: 3px solid var(--color-red);
  border-radius: 15px;
  text-align: center;
  font-size: 21px;
  font-weight: 600;
  line-height: 1.35;
  padding-top: 6px;
}
.cv-cnt .value .box > span {
  display: block;
  font-size: 38px;
  color: var(--color-red);
}
.cv-cnt .value .box.box1 > span {
  line-height: 1.2;
}
.cv-cnt .value .box.box2 {
  line-height: 1.55;
  padding-top: 0;
}
.cv-cnt .value .box.box2 > span {
  font-size: 21px;
  line-height: 1.2;
}
.cv-cnt .value .box.box2 > span > span {
  font-size: 32px;
  letter-spacing: 0.08em;
  line-height: 1.15;
}
.cv-cnt .value .box.box2 > span > span > span {
  font-size: 38px;
}
.cv-cnt .value .box.box3 > span {
  font-size: 24px;
}
.cv-cnt .value .box.box3 > span > span {
  font-size: 38px;
}

.secret {
  background-color: var(--color-blue);
  padding: 113px 0 110px;
}
.secret .head-ttl {
  color: white;
  text-align: center;
  font-size: 54px;
  font-weight: 500;
  letter-spacing: 0.05em;
  padding: 0 8px 28px;
  width: fit-content;
  margin: 0 auto 45px;
  background: url(../img/secret/ttl-fukidashi.svg) bottom center no-repeat;
}
.secret .cnt {
  width: 960px;
  max-width: 100%;
  margin: 0 auto 79px;
}
.secret .cnt .flex {
  background-color: white;
}
.secret .cnt .ttl {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  text-align: right;
  position: relative;
  color: var(--color-yellow);
  font-size: 32px;
  font-weight: 500;
  letter-spacing: 0.07em;
  font-weight: 500;
  padding: 0 13px 4px;
  border-bottom: 2px solid var(--color-yellow);
  width: fit-content;
  margin: 0 auto 32px;
}
.secret .cnt .ttl img {
  width: 123px;
  height: 110px;
}
.secret .cnt .ttl .sup {
  color: white;
  font-size: 38%;
  position: relative;
  top: 0.5em;
  margin-right: 0.1em;
}
.secret .cnt .txt {
  color: white;
  font-size: 16px;
}
.secret .cnt .txt .ann {
  font-size: 12px;
  position: relative;
}
.secret .cnt .img-ttl {
  background-color: var(--color-yellow);
  font-size: 18px;
  font-weight: 600;
  margin-top: 38px;
  height: 50px;
  padding: 0 20px;
  display: flex;
  align-items: center;
  letter-spacing: 0.08em;
}
.secret .cnt .img-ttl .basis {
  display: flex;
  align-items: center;
  width: fit-content;
  gap: 6px;
  background-color: var(--color-blue);
  color: white;
  height: 30px;
  line-height: 1;
  letter-spacing: 0.04em;
  padding: 0 7px 0 17px;
  border-radius: 999px;
  margin-right: 12px;
}
.secret .cnt .img-ttl .basis span {
  background-color: white;
  border-radius: 999px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 20px;
  height: 20px;
  color: var(--color-blue);
  line-height: 1;
  position: relative;
  padding: 0 0 0.2em 0.1em;
}
.secret .cnt .img-wrap {
  position: relative;
  background-color: white;
  padding: 45px 0 40px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.secret .cnt .img-wrap .img {
  position: relative;
  left: 90px;
  width: fit-content;
  position: relative;
}
.secret .cnt .img-wrap .num {
  position: absolute;
  bottom: 85px;
  left: 109px;
}
.secret .cnt .graph-ttl {
  background-color: var(--color-blue);
  border-radius: 999px;
  color: white;
  height: 40px;
  font-size: 18px;
  font-weight: 600;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 0.04em;
  margin-bottom: 10px;
}
.secret .cnt .bg-wt {
  background-color: white;
}
.secret .cnt.seibun .ttl {
  margin: 0 auto 26px auto;
  padding: 0;
  border: none;
  gap: 18px;
  letter-spacing: 0em;
  align-items: flex-end;
}
.secret .cnt.seibun .ttl-txt {
  position: relative;
  bottom: 6px;
  padding: 0 8px 6px;
  border-bottom: 2px solid var(--color-yellow);
}
.secret .cnt.seibun .ttl-txt span {
  font-size: 28px;
}
.secret .cnt.oxi .flex {
  background-color: white;
  padding: 41px 0 28px;
  justify-content: center;
}
.secret .cnt.oxi .flex .ilst {
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: flex-start;
  gap: 100px;
}
.secret .cnt.oxi .flex .ilst .img {
  position: relative;
}
.secret .cnt.oxi .flex .ilst .img.arrow {
  position: absolute;
  top: 41.5%;
  left: 47.3%;
  z-index: 2;
  transform: translate(-50%, -50%);
}
.secret .cnt.oxi .flex .ilst .img .maru {
  position: absolute;
  top: 15.8%;
  right: 13.5%;
}
.secret .cnt.oxi .flex .ilst .img .ann {
  font-size: 12px;
  text-align: end;
  margin: 8px -7px 0 -80px;
  letter-spacing: 0.06em;
}
.secret .cnt.trs .flex, .secret .cnt.qua .flex, .secret .cnt.ftg .flex {
  justify-content: center;
  background-color: white;
  padding: 43px 50px 37px;
}
.secret .cnt.trs .left .anim-wrap, .secret .cnt.qua .left .anim-wrap, .secret .cnt.ftg .left .anim-wrap {
  display: flex;
  justify-content: center;
  gap: 82px;
  margin-bottom: 17px;
}
.secret .cnt.trs .left .anim-block, .secret .cnt.qua .left .anim-block, .secret .cnt.ftg .left .anim-block {
  width: 305px;
  max-width: 100%;
  position: relative;
}
.secret .cnt.trs .left .anim-block .img, .secret .cnt.qua .left .anim-block .img, .secret .cnt.ftg .left .anim-block .img {
  position: relative;
}
.secret .cnt.trs .left .anim-block .copy, .secret .cnt.qua .left .anim-block .copy, .secret .cnt.ftg .left .anim-block .copy {
  position: absolute;
  top: 0;
  left: 0;
}
.secret .cnt.trs .left .graph-wrap-ttl, .secret .cnt.qua .left .graph-wrap-ttl, .secret .cnt.ftg .left .graph-wrap-ttl {
  text-align: center;
  font-size: 28px;
  font-weight: 600;
  color: var(--color-blue);
}
.secret .cnt.trs .left .graph-wrap-ann, .secret .cnt.qua .left .graph-wrap-ann, .secret .cnt.ftg .left .graph-wrap-ann {
  text-align: center;
  margin-bottom: 17px;
}
.secret .cnt.trs .left .graph-wrap-ann .gray, .secret .cnt.qua .left .graph-wrap-ann .gray, .secret .cnt.ftg .left .graph-wrap-ann .gray {
  color: #9b9c9c;
}
.secret .cnt.trs .left .graph-wrap-ann .blue, .secret .cnt.qua .left .graph-wrap-ann .blue, .secret .cnt.ftg .left .graph-wrap-ann .blue {
  color: var(--color-blue);
}
.secret .cnt.trs .left .ann, .secret .cnt.qua .left .ann, .secret .cnt.ftg .left .ann {
  font-size: 12px;
  line-height: 1.65;
  letter-spacing: 0.1em;
  width: 100%;
}
.secret .cnt.trs .img-ttl, .secret .cnt.qua .img-ttl, .secret .cnt.ftg .img-ttl {
  padding-left: 10px;
}
.secret .cnt.qua .left .anim-wrap, .secret .cnt.ftg .left .anim-wrap {
  display: block;
  margin-bottom: 19px;
}
.secret .cnt.qua .left .anim-wrap .graph-ttl, .secret .cnt.ftg .left .anim-wrap .graph-ttl {
  width: fit-content;
  margin: 0 auto 20px;
  padding: 0 40px;
}
.secret .cnt.qua .left .anim-wrap .anim-block, .secret .cnt.ftg .left .anim-wrap .anim-block {
  width: 700px;
  max-width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.secret .cnt.qua .left .anim-wrap .anim-block .graph-bg, .secret .cnt.ftg .left .anim-wrap .anim-block .graph-bg {
  position: relative;
  z-index: 2;
}
.secret .cnt.qua .left .anim-wrap .anim-block .up, .secret .cnt.ftg .left .anim-wrap .anim-block .up {
  position: absolute;
  bottom: 37%;
  left: 1.6%;
  z-index: 1;
}
.secret .cnt.ftg {
  margin-bottom: 0;
}
.secret .cnt.ftg .ftg-arrow {
  position: absolute;
  top: 0;
  right: 0;
}
.secret .cnt.ftg .graph-wrap-ann {
  padding-left: 50px;
  letter-spacing: 0.04em;
}
.secret .cnt.ftg .graph-wrap-ann img {
  width: 22px;
  height: 9.7px;
  margin-right: 5px;
}

.benefit {
  padding: 106px 0 139px;
  background: #00408A;
  background: linear-gradient(180deg, rgb(0, 64, 138) 0%, rgb(229, 232, 237) 33%, rgb(0, 64, 138) 74%);
  overflow-x: hidden;
}
.benefit .head {
  margin-bottom: 48px;
}
.benefit .head .ttl {
  position: relative;
  text-align: center;
  padding: 20px 83px 0;
  width: fit-content;
  margin: 0 auto;
  letter-spacing: 0.05em;
}
.benefit .head .ttl:before, .benefit .head .ttl:after {
  content: "";
  display: block;
  width: 71px;
  height: 143px;
  background: url(../img/benefit/orn-l.svg) 0 0 no-repeat;
  background-size: 100% auto;
  position: absolute;
  top: 0;
  left: 0;
}
.benefit .head .ttl:after {
  left: auto;
  right: 0;
  background: url(../img/benefit/orn-r.svg) 0 0 no-repeat;
}
.benefit .head .ttl .l1 {
  display: block;
  color: white;
  font-size: 26px;
  line-height: 1;
  margin-bottom: -5px;
}
.benefit .head .ttl .l2 {
  position: relative;
  left: 8px;
  display: block;
  text-align: center;
  background: #E9D241;
  background: linear-gradient(90deg, rgb(233, 210, 65) 0%, rgb(199, 164, 0) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 64px;
  font-weight: 700;
  line-height: 100px;
  letter-spacing: 0.04em;
}
.benefit .head .ttl .l2 .num {
  display: inline-block;
  font-size: 100px;
  font-weight: 700;
  line-height: inherit;
  vertical-align: -11px;
  margin: 0 0.1em;
}
.benefit .cnt .bnf-list {
  width: 880px;
  max-width: 100%;
  margin: 0 auto;
}
.benefit .cnt .bnf-list .bg-wt {
  background-color: white;
  padding: 8px;
  margin-bottom: 8px;
}
.benefit .cnt .bnf-list .bg-wt .inner {
  border: 1px solid var(--color-karashi);
  display: flex;
}
.benefit .cnt .bnf-list .bg-wt .label {
  background-color: var(--color-karashi);
  color: white;
  padding: 20px;
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.benefit .cnt .bnf-list .bg-wt .label img {
  width: 80px;
  height: 80px;
}
.benefit .cnt .bnf-list .bg-wt .txt-wrap {
  width: 100%;
  display: flex;
  align-items: center;
  padding: 26px 36px;
  position: relative;
}
.benefit .cnt .bnf-list .bg-wt .txt-wrap:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  display: block;
  width: 0;
  height: 0;
  border: 10px solid var(--color-karashi);
  border-top-color: transparent;
  border-left-color: transparent;
}
.benefit .cnt .bnf-list .bg-wt .txt-wrap .txt {
  font-size: 28px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.02em;
  margin-top: -0.15em;
}
.benefit .cnt .bnf-list .bg-wt .txt-wrap .txt .ann {
  font-size: 12px;
  font-weight: 400;
  line-height: 2;
}
.benefit .cnt .bnf-list .bg-wt .txt-wrap .yellow {
  color: var(--color-karashi);
  font-size: 50px;
  vertical-align: -9px;
  letter-spacing: 0.04em;
  margin-left: 3px;
}
.benefit .cnt .bnf-list .bg-wt .txt-wrap .yellow .num {
  font-size: 72px;
  vertical-align: -6px;
}
.benefit .cnt .bnf-list .bg-wt.li3 .txt-wrap .txt .yellow {
  font-size: 54px;
}
.benefit .cnt .bnf-list .bg-wt.li4 .txt-wrap .txt {
  line-height: 1.4;
  margin-top: 0;
}
.benefit .cnt .bnf-list .bg-wt.li4 .txt-wrap .txt span {
  display: block;
  margin: 0;
}
.benefit .cnt .bnf-list .bg-wt.li4 .txt-wrap .txt .yellow {
  font-size: 46px;
  margin-top: -0.08em;
  letter-spacing: 0.02em;
}
.benefit .cnt .bnf-list .bg-wt.li4 .txt-wrap .txt .ann {
  text-align: left;
  margin-top: 0.3em;
  color: inherit;
}
.benefit .cnt .bnf-list .bg-wt.li5 .txt-wrap .txt {
  padding-top: 5px;
  letter-spacing: 0.01em;
  line-height: 1.4;
}
.benefit .cnt .bnf-list .bg-wt.li5 .txt-wrap .txt .yellow {
  font-size: 38px;
  margin: 0;
  letter-spacing: inherit;
  vertical-align: -3px;
}
.benefit .cnt .copy {
  font-size: 61.1px;
  font-weight: 700;
  font-style: italic;
  color: var(--color-yellow);
  text-align: center;
  line-height: 0.922;
  letter-spacing: 0;
  margin: 56px 0 0;
  position: relative;
  z-index: 1;
  width: 100%;
}
.benefit .cnt .copy:before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  display: block;
  width: 108.20312%;
  max-width: 1385px;
  height: calc(678 * var(--px-vw));
  max-height: 678px;
  aspect-ratio: 1385/678;
  background: url("../img/benefit/bg-bnf@2x.webp") 50% 0% no-repeat;
  background-size: 100% auto;
  transform: translate(-50%, -11.9%);
}
.benefit .cnt .copy span {
  line-height: inherit;
}
.benefit .cnt .copy .marker {
  background: none;
  position: relative;
}
.benefit .cnt .copy .marker:before {
  content: "";
  display: block;
  position: absolute;
  bottom: -0.1em;
  left: -1%;
  z-index: -1;
  width: 102%;
  height: 15px;
  background-color: var(--color-light-blue);
  transform: skewX(-15deg);
  pointer-events: none;
}
.benefit .cnt .copy .num {
  font-size: 192%;
}
.benefit .cnt .copy .sup {
  font-size: 20%;
  color: white;
  vertical-align: 3.4em;
  margin-left: 1em;
  margin-right: -0.2em;
}
.benefit .cnt .copy .l1 {
  padding-left: 0.4em;
  letter-spacing: 0.02em;
}
.benefit .cnt .copy .l2 .num {
  margin-right: 0.04em;
}
.benefit .cnt .copy .l2 .sup {
  margin-right: -6px;
}
.benefit .cnt .copy .l3 {
  position: relative;
  top: 0.5em;
  vertical-align: 0.5em;
}
.benefit .cnt .ann {
  position: relative;
  z-index: 1;
  text-align: center;
  color: white;
  font-size: 12px;
  margin-top: 54px;
  margin-bottom: 21px;
  line-height: 1.6;
}
.benefit .cnt .end-txt {
  position: relative;
  z-index: 1;
  text-align: center;
  color: white;
  line-height: 2.3;
  font-size: 18px;
}

.voice {
  background-color: var(--color-pale-blue);
  padding: 44px 0 60px;
}
.voice .head .ttl {
  width: fit-content;
  margin: 0 auto 43px;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: 20px;
  font-size: 36px;
  line-height: 1.3;
}
.voice .head .ttl img {
  width: 109px;
  height: 104px;
  margin-left: -129px;
}
.voice .head .ttl .big {
  font-size: 54px;
  letter-spacing: 0.08em;
}
.voice .cnt {
  position: relative;
  width: 1305px;
  max-width: 100%;
  margin: 0 auto 36px;
  box-sizing: border-box;
}
.voice .cnt .slick {
  width: 100%;
}
.voice .cnt .slick-card {
  background: white;
  width: 380px;
  height: 444px;
  margin: 0 27.5px;
  border-radius: 20px;
}
.voice .cnt .slick-card .txt-wrap {
  padding: 16px 40px;
}
.voice .cnt .slick-card .card-ttl {
  font-size: 26px;
  font-weight: 500;
  color: var(--color-blue);
  text-align: center;
  letter-spacing: 0;
  margin-bottom: 4px;
}
.voice .cnt .slick-card .card-ttl.woman {
  color: var(--color-orange);
}
.voice .cnt .slick-card .txt {
  line-height: 1.95;
}
.voice .cnt .arrow_box {
  position: absolute;
  bottom: 34.3%;
  left: 0;
  display: flex;
  justify-content: center;
  gap: 410px;
  width: 100%;
  height: auto;
}
.voice .cnt .arrow_box .slick-arrow {
  display: block;
  width: 28px;
  height: 40px;
  background: url("../img/voice/slick-arrow-l.svg") 0 0 no-repeat;
  background-size: contain;
  cursor: pointer;
}
.voice .cnt .arrow_box .slick-arrow.next-arrow {
  background: url("../img/voice/slick-arrow-r.svg") 0 0 no-repeat;
  background-size: contain;
}
.voice .ann {
  font-size: 12px;
  text-align: center;
  line-height: 1.7;
  letter-spacing: 0.1em;
}

.which {
  background: var(--color-blue);
  padding: 121px 0 113px;
}
.which .head .ttl {
  color: var(--color-yellow);
  text-align: center;
  font-size: 54px;
  font-weight: 500;
  letter-spacing: 0.08em;
  padding: 0 20px 28px;
  width: fit-content;
  margin: 0 auto 38px;
  background: url(../img/which/ttl-fukidashi-yellow.svg) bottom center no-repeat;
}
.which .cnt {
  width: 960px;
  max-width: 100%;
  margin: 0 auto;
  background-color: white;
  border-radius: 20px;
  padding: 77px 0 57px;
}
.which .cnt .col-wrap {
  display: flex;
  justify-content: center;
  margin: 0 auto 50px;
}
.which .cnt .col {
  width: 50%;
  background-image: repeating-linear-gradient(180deg, #808080, #808080 5px, transparent 5px, transparent 10px);
  background-position: right top;
  background-repeat: repeat-y;
  background-size: 1px 100%;
  padding: 28px 40px 32px;
}
.which .cnt .col-box {
  text-align: center;
  margin: 0 0 23px;
}
.which .cnt .col-box img {
  margin-bottom: 3px;
}
.which .cnt .col-box p {
  text-align: center;
  font-size: 18px;
  letter-spacing: 0.04em;
  line-height: 1.8;
}
.which .cnt .col.cp {
  background: none;
}
.which .cnt .col.cp .txt-wrap {
  padding: 0 15px 0 0;
}
.which .cnt .col.cp .txt-wrap .price {
  padding: 0 0 0 9px;
}
.which .cnt .col .pkg {
  margin: 47px 0 0;
}
.which .cnt .ttl {
  width: 300px;
  max-width: 100%;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto 22px;
  font-size: 32px;
  letter-spacing: 0.04em;
  background: var(--color-blue);
  border-radius: 999px;
  color: white;
  text-align: center;
}
.which .cnt .ttl-txt {
  text-align: center;
  color: var(--color-blue);
  font-size: 23px;
  font-weight: 600;
  letter-spacing: 0em;
  margin: 0 0 26px;
}
.which .cnt .txt-wrap {
  padding-left: 15px;
}
.which .cnt .txt-wrap .sub-ttl {
  font-size: 32px;
  text-align: center;
  letter-spacing: 0.04em;
  margin: 0 auto 8px;
}
.which .cnt .txt-wrap .vol {
  background: var(--color-yellow);
  border-radius: 999px;
  text-align: center;
  width: fit-content;
  padding: 0 16px;
  margin: 0 auto 9px;
  font-size: 18px;
  letter-spacing: 0.04em;
}
.which .cnt .txt-wrap .original-price {
  font-size: 21px;
  letter-spacing: 0;
  text-align: center;
  position: relative;
  width: fit-content;
  margin: 0 auto 8px;
  padding: 0 0 5px;
}
.which .cnt .txt-wrap .original-price:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 246px;
  height: 15px;
  background: url("../img/which/fkd-line.svg") 0 0 no-repeat;
  background-size: contain;
}
.which .cnt .txt-wrap .original-price .num {
  font-size: 35.2px;
  position: relative;
}
.which .cnt .txt-wrap .original-price .num:after {
  content: "";
  position: absolute;
  bottom: 0.3em;
  left: 5px;
  display: block;
  width: 116%;
  height: 2px;
  background: var(--color-red);
  transform: rotate(-12.5deg);
  transform-origin: left bottom;
}
.which .cnt .txt-wrap .original-price .tax {
  font-size: 14px;
}
.which .cnt .txt-wrap .sale {
  background: var(--color-red);
  color: white;
  font-size: 21px;
  letter-spacing: 0;
  line-height: 1.8;
  text-align: center;
  width: fit-content;
  margin: 0 auto;
  padding: 0 10px;
}
.which .cnt .txt-wrap .price {
  font-size: 72px;
  letter-spacing: -0.02em;
  line-height: 1;
  color: var(--color-red);
  display: flex;
  justify-content: center;
  align-items: flex-end;
  padding: 0 9px 0 0;
  margin: 0 0 24px;
}
.which .cnt .txt-wrap .price .yen {
  font-size: 40px;
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  padding-bottom: 7px;
  line-height: 0.95;
  margin-left: 4px;
}
.which .cnt .txt-wrap .price .yen .tax {
  font-size: 12px;
  color: black;
  letter-spacing: -0.04em;
}
.which .cnt .txt-wrap .btn {
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--color-blue);
  border-radius: 999px;
  font-size: 27px;
  font-weight: 700;
  letter-spacing: 0em;
  text-align: center;
  color: white;
  text-decoration: none;
  width: 334px;
  max-width: 100%;
  height: 62.5px;
  margin: 0 auto 0;
  padding: 0 30px 0 0;
  position: relative;
  opacity: 1;
  transition: 0.3s ease;
}
.which .cnt .txt-wrap .btn:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translate(0, -50%);
  display: block;
  width: 30px;
  height: 30px;
  background: url("../img/which/btn-icon.svg") 0 0 no-repeat;
  background-size: contain;
}
.which .cnt .txt-wrap .btn:hover {
  opacity: 0.6;
}
.which .cnt .end-txt {
  text-align: center;
  font-size: 21px;
  font-weight: 700;
  margin: 0 auto 28px;
}
.which .cnt > .ann {
  width: 810px;
  max-width: 100%;
  margin: 0 auto;
  font-size: 12px;
  line-height: 1.75;
}

.quality {
  background: var(--color-beige);
  padding: 83px 0;
}
.quality .cnt {
  width: 960px;
  max-width: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  gap: 40px;
}
.quality .cnt .ttl {
  font-size: 24px;
  border-bottom: 1px solid black;
  letter-spacing: 0.13em;
  padding-top: 2px;
  margin: 0 0 37px;
}
.quality .cnt .txt {
  line-height: 2.5;
  letter-spacing: 0.12em;
}
.quality .cnt img {
  border-radius: 20px;
  overflow: hidden;
}

.qa {
  background: var(--color-pale-blue);
  padding: 60px 0;
  position: relative;
  z-index: 1;
}
.qa:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  display: block;
  width: 100%;
  height: 107.125vw;
  background: url("../img/qa/bg-naname-wt.svg") 0 0 no-repeat;
  background-size: cover;
}
.qa .head .ttl {
  color: var(--color-blue);
  text-align: center;
  font-size: 32px;
  letter-spacing: 0.14em;
  padding-right: 6px;
  margin: 0 auto 10px;
}
.qa .head .ttl span {
  font-size: 64px;
  margin-right: 15px;
  letter-spacing: 0.04em;
}
.qa .head .ttl img {
  width: 86px;
  padding-bottom: 37px;
  margin-left: 14px;
}
.qa .cnt {
  width: 960px;
  max-width: 100%;
  margin: 0 auto 101px;
  background: white;
  border-radius: 20px;
  padding: 51px 49px 38px;
}
.qa .icon {
  font-size: 24px;
  font-weight: 600;
  background: var(--color-blue);
  color: white;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 15px 0 0;
  padding-bottom: 4px;
  flex-shrink: 0;
}
.qa__item {
  margin-bottom: 32px;
}
.qa__item:last-of-type {
  margin-bottom: 0;
}
.qa__question {
  width: 100%;
  text-align: left;
  background: #e8e3e1;
  padding: 8px 13px;
  border: none;
  font-size: 18px;
  font-weight: 700;
  cursor: pointer;
  display: flex;
  align-items: center;
  color: black;
}
.qa__answer {
  overflow: hidden;
  transition: max-height 0.35s ease, padding 0.35s ease;
  padding: 24px 24px 24px 13px;
  box-sizing: content-box;
  display: flex;
}
.qa__answer .txt {
  line-height: 1.65;
  letter-spacing: 0.08em;
}
.qa__answer .icon {
  margin-top: 10px;
  background: #e8e3e1;
  color: var(--color-blue);
}
.qa__answer .ann {
  font-size: 12px;
  margin-top: 7px;
  letter-spacing: 0.08em;
}
.qa .cv-cnt {
  margin-bottom: 51px;
}

.notes {
  padding-bottom: 120px;
}
.notes span {
  line-height: 1.6;
}
.notes .url {
  letter-spacing: 0em;
}
.notes .mglr {
  margin-left: 0.5em;
  margin-right: 0.5em;
}
.notes .freedial {
  display: block;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
}
.notes .freedial a {
  display: inline-block;
  align-items: center;
  margin-left: 10px;
  text-decoration: none;
}
.notes .freedial a img {
  margin-right: 5px;
}
.notes .freedial .big150 {
  font-size: 24px;
  line-height: 1;
  line-height: 1;
  text-decoration: none;
  margin-top: -0.8em;
}
.notes .freedial .big150 span {
  font-size: 30px;
  line-height: 1;
}
.notes .inner {
  width: 790px;
  max-width: 100%;
  padding: 94px 0 0;
  margin: 0 auto;
}
.notes .inner ul {
  line-height: 1.55;
  margin-bottom: 1.1em;
}
.notes .inner ul.yoko-list {
  display: flex;
}
.notes .inner ul li {
  font-size: 16px;
  line-height: 1.55;
}
.notes .inner ul li span {
  display: inline-block;
}
.notes .inner ul li span.ttl, .notes .inner ul li.ttl {
  position: relative;
  padding-left: 1em;
}
.notes .inner ul li span.ttl:before, .notes .inner ul li.ttl:before {
  margin-top: 0.25em;
  position: absolute;
  top: 0;
  left: 0;
  content: "●";
  color: #8b8b8b;
  font-size: 80%;
}
.notes .inner ul li.num {
  padding-left: 1em;
  text-indent: -1em;
}
.notes .inner ul li.num:before {
  content: none;
}
.notes .inner ul.list {
  margin-bottom: 20px;
}
.notes .inner ul.list li {
  border-bottom: 1px solid #bdbdbd;
  display: flex;
  padding: 9px 0 9px;
}
.notes .inner ul.list li .ttl {
  width: 30%;
}
.notes .inner ul.list li .ttl:before {
  content: "●";
  color: #8b8b8b;
}
.notes .inner ul.list li .content {
  width: 80%;
}
.notes .inner ul.recipt li {
  margin-bottom: 0.7em;
}
.notes .inner ul.recipt li:last-of-type {
  margin-bottom: 0;
}
.notes .inner .p-ttl {
  text-align: center;
  background-color: var(--color-blue);
  color: white;
  font-size: 20px;
  font-weight: 600;
  min-height: 44px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 40px;
  margin-bottom: 15px;
}
.notes .inner .p-ttl.gray {
  background-color: #a5a3a2;
  margin-bottom: 28px;
}
.notes .inner .p-ttl.cp {
  margin-top: 57px;
}
.notes .inner p {
  font-size: 16px;
  text-align: justify;
  letter-spacing: -0.02em;
  line-height: 1.55;
  margin-bottom: 0.75em;
}
.notes .inner .card-brand {
  margin: 14px 0 23px;
}
.notes .inner .no-mg {
  margin: 0;
}
.notes .inner .block {
  margin-bottom: 46px;
}
.notes .inner .block p img {
  vertical-align: text-top;
}
.notes .inner .yoko-list li {
  margin-right: 19px;
}
.notes .inner .yoko-list li:before {
  content: "●";
  color: #8b8b8b;
  font-size: 80%;
}

.modal {
  position: fixed;
  inset: 0;
  display: flex;
  visibility: hidden;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  pointer-events: none;
  padding: 145px;
  transition: visibility 1.2s ease;
}
.modal.is-open {
  display: flex;
  visibility: visible;
}
.modal.is-open .modal__content {
  opacity: 1;
  transform: translateY(0);
}
.modal__overlay {
  position: absolute;
  inset: 0;
  background: #00408a;
  mix-blend-mode: multiply;
  cursor: pointer;
  z-index: 900;
  opacity: 0;
  visibility: hidden;
  transition: opacity 1.2s ease, visibility 1.2s ease;
}
.modal__overlay.is-open {
  visibility: visible;
  opacity: 1;
}
.modal__content {
  position: relative;
  background: #fffbda;
  padding: 42px 20px 0;
  max-width: 620px;
  width: 90%;
  border-radius: 20px;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 1.2s ease, transform 1.2s ease;
  z-index: 2;
  pointer-events: all;
}
.modal__content .close {
  position: absolute;
  top: -79px;
  right: -112px;
  display: block;
  cursor: pointer;
  box-sizing: border-box;
  border: 2px solid white;
  width: 72px;
  height: 72px;
  border-radius: 999px;
  transition: transform 0.3s ease;
  background: transparent;
}
.modal__content .close:hover {
  transform: scale(1.1);
}
.modal__content .close:before, .modal__content .close:after {
  content: "";
  display: block;
  width: 44px;
  height: 4px;
  background: white;
  position: absolute;
  top: 32px;
  left: 12px;
  transform: rotate(45deg);
}
.modal__content .close:after {
  transform: rotate(-45deg);
}
.modal__content .ttl {
  display: block;
  margin: 0 auto 40px;
  color: var(--color-blue);
  font-size: 24px;
  font-weight: 400;
  letter-spacing: 0.08em;
  text-align: center;
}
.modal__content .ttl span {
  position: relative;
  display: inline-block;
  width: 22px;
  height: 22px;
  border: 1px solid var(--color-blue);
  vertical-align: -1px;
}
.modal__content .ttl span:after {
  content: "";
  position: absolute;
  top: -4px;
  right: -4px;
  display: block;
  width: 23px;
  height: 23px;
  background: url("../img/modal/check-mark.svg") 0 0 no-repeat;
  background-size: contain;
}
.modal__content .ttl img {
  display: block;
  width: 519px;
  height: 99px;
  margin: 0 auto -3px;
}
.modal__options {
  display: block;
  text-align: center;
  width: 349px;
  margin: 0 auto;
}
.modal__option {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  font-size: 28px;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--color-blue);
  user-select: none;
  padding: 0 0 10px 49px;
  margin-bottom: 30px;
}
.modal__option:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  background: url("../img/modal/line-nami.svg") 0 0 no-repeat;
  background-size: 100% auto;
}
.modal__option input[type=radio] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.modal__option .checkmark {
  width: 22px;
  height: 22px;
  border: 1px solid #00408a;
  display: inline-block;
  position: relative;
}
.modal__option .checkmark::after {
  content: "";
  position: absolute;
  top: -6px;
  right: -6px;
  display: block;
  width: 27px;
  height: 27px;
  background: url("../img/modal/check-mark.svg") 0 0 no-repeat;
  background-size: contain;
  border-radius: 50%;
  opacity: 0;
  transform: scale(0.5);
  transition: transform 0.3s ease;
}
.modal__option input[type=radio]:checked + .checkmark::after {
  opacity: 1;
  transform: scale(1);
}
.modal__footer {
  margin: 53px auto -34px;
}
.modal__link-button {
  width: 78%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 32px;
  font-weight: 400;
  padding: 17px 44px;
  padding-right: 20px;
  border-radius: 999px;
  background: var(--color-yellow);
  color: var(--color-blue);
  text-decoration: none;
  font-weight: 600;
  letter-spacing: 0em;
  text-align: left;
  transition: transform 0.3s ease;
}
.modal__link-button:after {
  content: "";
  position: relative;
  display: inline-block;
  width: 41px;
  height: 41px;
  background: url("../img/modal/btn-arrow.svg") 0 0 no-repeat;
  background-size: contain;
}
.modal__link-button:hover {
  transform: scale(1.05);
}
.modal__link-button.is-disabled {
  opacity: 1;
  pointer-events: none;
}

.float-nav {
  display: block;
  width: 84px;
  height: 411px;
  position: fixed;
  top: 50%;
  right: 0;
  z-index: 100;
  opacity: 0;
  transform: translateY(-50%);
  transition: opacity 0.6s ease;
  pointer-events: none;
}
.float-nav.is-visible {
  opacity: 1;
  transform: translateY(-50%);
  pointer-events: auto;
}
.float-nav a {
  writing-mode: vertical-rl;
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  width: 100%;
  height: 100%;
  font-size: 28px;
  font-weight: 700;
  background: var(--color-yellow);
  border-radius: 30px 0 0 30px;
  border: 4px solid white;
  border-right: none;
  overflow: hidden;
  color: var(--color-blue);
  opacity: 1;
  transition: 0.3s ease;
}
.float-nav a:hover {
  opacity: 0.6;
  transform: translateY(-5px);
}
.float-nav a img {
  width: 54px;
  margin-right: -1px;
}

@media screen and (max-width: 1000px) {
  .fv .cnt {
    height: 100%;
  }
  .fv .cnt .logo {
    top: calc(30 * var(--px-vw));
    left: calc(70 * var(--px-vw));
  }
  .fv .cnt .logo img {
    width: calc(141 * var(--px-vw));
  }
  .fv .cnt .wrap {
    padding-top: calc(31 * var(--px-vw));
  }
  .fv .cnt .wrap__pkg {
    right: calc(45 * var(--px-vw));
  }
  .fv .cnt .wrap__pkg .pkg1 {
    margin-bottom: calc(-20 * var(--px-vw));
  }
  .fv .cnt .wrap__pkg .pkg1 img {
    width: calc(477 * var(--px-vw));
  }
  .fv .cnt .wrap__pkg .pkg2 img {
    width: calc(483 * var(--px-vw));
  }
  .fv .cnt .copy1 img {
    width: calc(105 * var(--px-vw));
  }
  .fv .cnt .copy2 img {
    width: calc(199 * var(--px-vw));
  }
}
@media screen and (max-width: 768px) {
  body {
    overflow-x: hidden;
  }
  .fv {
    height: calc(600 * var(--px-vw));
    background-size: cover;
  }
  .fv .cnt {
    padding-top: 90px;
  }
  .fv .cnt .logo {
    top: calc(15 * var(--px-vw));
    left: calc(15 * var(--px-vw));
  }
  .fv .cnt .logo img {
    width: calc(92 * var(--px-vw));
  }
  .fv .cnt .copy0 {
    display: block;
    width: calc(276 * var(--px-vw));
    margin: 0 auto 18px;
  }
  .fv .cnt .copy3 {
    display: block;
    width: 302px;
    margin: 32px auto 0;
    padding-right: 13px;
    box-sizing: content-box;
  }
  .fv .cnt .wrap {
    height: auto;
    padding: 0 40px 0 22px;
    justify-content: space-between;
  }
  .fv .cnt .wrap__pkg {
    right: auto;
    margin: 0 calc(-13 * var(--px-vw)) 0 0;
    align-items: flex-start;
  }
  .fv .cnt .wrap__pkg .pkg1 {
    padding: 0;
    margin: 0 0 8px;
  }
  .fv .cnt .wrap__pkg .pkg1 img {
    width: calc(210 * var(--px-vw));
  }
  .fv .cnt .wrap__pkg .pkg2 {
    right: auto;
  }
  .fv .cnt .wrap__pkg .pkg2 img {
    width: calc(180 * var(--px-vw));
  }
  .fv .cnt .copy1 {
    margin: 65px 0 0 0;
    right: 0;
    flex-shrink: 0;
  }
  .fv .cnt .copy1 img {
    width: calc(40.4 * var(--px-vw));
  }
  .fv .cnt .copy2 {
    margin: calc(48 * var(--px-vw)) 0 0 0;
    left: 0;
    flex-shrink: 0;
  }
  .fv .cnt .copy2 img {
    width: calc(76 * var(--px-vw));
  }
  .fv0 .cnt {
    padding: 0;
  }
  .intro {
    padding: calc(19 * var(--px-vw)) calc(15 * var(--px-vw));
  }
  .intro:after {
    background-image: url("../img/intro/bg-intro-sp.svg");
  }
  .intro .ann {
    padding: calc(5 * var(--px-vw)) calc(10 * var(--px-vw));
    font-size: calc(10 * var(--px-vw));
    line-height: 1.53;
    margin-bottom: calc(17 * var(--px-vw));
  }
  .intro .total img {
    width: 87%;
    margin: 0 0 calc(-2 * var(--px-vw));
  }
  .intro .total .ann-total {
    font-size: calc(10 * var(--px-vw));
    letter-spacing: 0.03em;
    line-height: 1.62;
  }
  .cv-cnt {
    border-radius: calc(5 * var(--px-vw));
    padding: calc(20 * var(--px-vw)) 0 calc(14 * var(--px-vw));
    margin-bottom: calc(10 * var(--px-vw));
  }
  .cv-cnt .ttl {
    font-size: calc(17 * var(--px-vw));
    margin-bottom: calc(11 * var(--px-vw));
  }
  .cv-cnt .ttl:before, .cv-cnt .ttl:after {
    width: calc(1 * var(--px-vw));
    height: calc(26 * var(--px-vw));
    top: calc(1 * var(--px-vw));
    left: calc(14 * var(--px-vw));
  }
  .cv-cnt .ttl:before {
    left: auto;
    right: calc(14 * var(--px-vw));
  }
  .cv-cnt .sub-ttl {
    font-size: calc(14 * var(--px-vw));
    padding: 0 calc(21 * var(--px-vw));
    margin-bottom: calc(15 * var(--px-vw));
  }
  .cv-cnt .item-wrap {
    margin: 0 0 calc(14 * var(--px-vw));
  }
  .cv-cnt .item-wrap .item {
    padding: calc(2 * var(--px-vw)) calc(3 * var(--px-vw));
  }
  .cv-cnt .item-wrap .item .txt {
    padding: 0;
  }
  .cv-cnt .item-wrap .item .txt .item-ttl {
    font-size: calc(17 * var(--px-vw));
    margin: calc(2 * var(--px-vw)) 0 calc(6 * var(--px-vw));
  }
  .cv-cnt .item-wrap .item .txt .vol {
    font-size: calc(10 * var(--px-vw));
  }
  .cv-cnt .item-wrap .item.cap .txt {
    padding: 0;
  }
  .cv-cnt .price {
    margin-bottom: calc(12 * var(--px-vw));
  }
  .cv-cnt .price img {
    width: calc(294 * var(--px-vw));
  }
  .cv-cnt .cv-btn {
    font-size: calc(17 * var(--px-vw));
    line-height: calc(44 * var(--px-vw));
    width: 90%;
    letter-spacing: 0.12em;
    padding-right: calc(18 * var(--px-vw));
    margin-bottom: calc(12 * var(--px-vw));
  }
  .cv-cnt .cv-btn:after {
    width: calc(20 * var(--px-vw));
    height: calc(20 * var(--px-vw));
  }
  .cv-cnt .course-ttl {
    font-size: calc(12 * var(--px-vw));
    letter-spacing: 0.05em;
    margin-bottom: calc(3 * var(--px-vw));
  }
  .cv-cnt .course-ann {
    font-size: calc(10 * var(--px-vw));
    padding: 0 calc(15 * var(--px-vw));
    line-height: 1.52;
    margin-bottom: calc(10 * var(--px-vw));
  }
  .cv-cnt .value {
    padding: 0 calc(15 * var(--px-vw));
    gap: calc(7 * var(--px-vw));
  }
  .cv-cnt .value .box {
    height: calc(81 * var(--px-vw));
    font-size: calc(10 * var(--px-vw));
    border-width: calc(1 * var(--px-vw));
    border-radius: calc(5 * var(--px-vw));
    padding-top: calc(2 * var(--px-vw));
  }
  .cv-cnt .value .box span {
    font-size: 170%;
  }
  .cv-cnt .value .box.box2 > span {
    font-size: calc(10 * var(--px-vw));
  }
  .cv-cnt .value .box.box2 > span > span {
    font-size: calc(15 * var(--px-vw));
  }
  .cv-cnt .value .box.box2 > span > span > span {
    font-size: calc(17 * var(--px-vw));
  }
  .cv-cnt .value .box.box3 {
    line-height: 1.5;
  }
  .cv-cnt .value .box.box3 > span {
    font-size: calc(10 * var(--px-vw));
  }
  .cv-cnt .value .box.box3 > span > span {
    line-height: 1;
    font-size: calc(18 * var(--px-vw));
  }
  .which {
    padding: calc(37 * var(--px-vw)) calc(15 * var(--px-vw)) calc(20 * var(--px-vw));
  }
  .which .head .ttl {
    font-size: calc(24 * var(--px-vw));
    padding: 0 calc(7 * var(--px-vw)) calc(9 * var(--px-vw));
    margin-bottom: calc(13 * var(--px-vw));
  }
  .which .cnt {
    border-radius: calc(5 * var(--px-vw));
    padding: calc(28 * var(--px-vw)) 0 calc(20 * var(--px-vw));
  }
  .which .cnt .ttl {
    font-size: calc(15 * var(--px-vw));
    height: calc(32 * var(--px-vw));
    margin-bottom: calc(10 * var(--px-vw));
  }
  .which .cnt .ttl-txt {
    font-size: calc(14 * var(--px-vw));
    line-height: 1.4;
    margin-bottom: calc(7 * var(--px-vw));
  }
  .which .cnt .col {
    padding: calc(4 * var(--px-vw)) calc(16 * var(--px-vw));
  }
  .which .cnt .col-wrap {
    margin-bottom: calc(14 * var(--px-vw));
  }
  .which .cnt .col-box {
    text-align: end;
    margin-bottom: calc(4 * var(--px-vw));
  }
  .which .cnt .col-box img {
    width: 96%;
    margin: 0 auto;
  }
  .which .cnt .col-box p {
    font-size: calc(10 * var(--px-vw));
  }
  .which .cnt .col-box p .sp {
    display: inline;
  }
  .which .cnt .col .pkg {
    margin-top: calc(22 * var(--px-vw));
  }
  .which .cnt .col .pkg img {
    width: 119%;
    max-width: none;
    margin-left: -10%;
  }
  .which .cnt .col.cp .txt-wrap {
    padding: 0;
  }
  .which .cnt .col.cp .txt-wrap .price {
    padding: 0;
  }
  .which .cnt .txt-wrap {
    padding: 0;
  }
  .which .cnt .txt-wrap .sub-ttl {
    font-size: calc(17 * var(--px-vw));
    margin-bottom: calc(1 * var(--px-vw));
  }
  .which .cnt .txt-wrap .vol {
    font-size: calc(10 * var(--px-vw));
    height: auto;
    line-height: 1.8;
    padding: 0 calc(11 * var(--px-vw));
    margin-bottom: calc(4 * var(--px-vw));
  }
  .which .cnt .txt-wrap .original-price {
    font-size: calc(10 * var(--px-vw));
    padding-bottom: calc(6 * var(--px-vw));
    margin-bottom: calc(3 * var(--px-vw));
  }
  .which .cnt .txt-wrap .original-price .num {
    font-size: 170%;
  }
  .which .cnt .txt-wrap .original-price .tax {
    font-size: calc(8 * var(--px-vw));
  }
  .which .cnt .txt-wrap .original-price:after {
    max-width: 100%;
    height: calc(10 * var(--px-vw));
  }
  .which .cnt .txt-wrap .sale {
    font-size: calc(10 * var(--px-vw));
    padding: 0 calc(4 * var(--px-vw));
    margin-bottom: calc(2 * var(--px-vw));
  }
  .which .cnt .txt-wrap .price {
    font-size: calc(32 * var(--px-vw));
    padding: 0 0 0 calc(9 * var(--px-vw));
    margin-bottom: calc(14 * var(--px-vw));
  }
  .which .cnt .txt-wrap .price .yen {
    font-size: calc(18 * var(--px-vw));
    margin-left: calc(0 * var(--px-vw));
    padding-bottom: calc(3 * var(--px-vw));
  }
  .which .cnt .txt-wrap .price .yen .tax {
    font-size: calc(8 * var(--px-vw));
  }
  .which .cnt .txt-wrap .btn {
    font-size: calc(13 * var(--px-vw));
    border-radius: calc(5 * var(--px-vw));
    height: calc(46 * var(--px-vw));
    padding-right: calc(21 * var(--px-vw));
    letter-spacing: 0.04em;
  }
  .which .cnt .txt-wrap .btn:after {
    width: calc(18 * var(--px-vw));
    height: calc(18 * var(--px-vw));
    right: calc(8 * var(--px-vw));
  }
  .which .cnt .end-txt {
    font-size: calc(12 * var(--px-vw));
    line-height: 1.7;
    margin-bottom: calc(13 * var(--px-vw));
  }
  .which .cnt > .ann {
    font-size: calc(10 * var(--px-vw));
    padding: 0 calc(20 * var(--px-vw));
    line-height: 1.52;
  }
  .benefit {
    padding-top: calc(44 * var(--px-vw));
    padding-bottom: calc(110 * var(--px-vw));
    background: #00408A;
    background: linear-gradient(180deg, rgb(0, 64, 138) 5%, rgb(229, 232, 237) 22%, rgb(0, 64, 138) 43%);
    overflow: hidden;
  }
  .benefit .head {
    margin-bottom: 0;
  }
  .benefit .head .ttl {
    padding: 0;
    width: 83%;
    margin: 0 auto calc(19 * var(--px-vw));
  }
  .benefit .head .ttl .l1 {
    font-size: calc(13 * var(--px-vw));
    line-height: 1.5;
    margin-top: calc(-3 * var(--px-vw));
  }
  .benefit .head .ttl .l2 {
    font-size: calc(28 * var(--px-vw));
    line-height: 1;
    left: 0;
  }
  .benefit .head .ttl .l2 .num {
    font-size: 150%;
    line-height: 1;
    vertical-align: calc(-4 * var(--px-vw));
  }
  .benefit .head .ttl:before, .benefit .head .ttl:after {
    width: calc(36 * var(--px-vw));
    height: calc(73 * var(--px-vw));
  }
  .benefit .cnt .bnf-list {
    padding: 0 calc(30 * var(--px-vw));
  }
  .benefit .cnt .bnf-list .bg-wt {
    padding: calc(4 * var(--px-vw));
    margin-bottom: calc(4 * var(--px-vw));
  }
  .benefit .cnt .bnf-list .bg-wt .txt-wrap {
    padding: calc(10 * var(--px-vw)) calc(10 * var(--px-vw)) calc(6 * var(--px-vw));
  }
  .benefit .cnt .bnf-list .bg-wt .txt-wrap:after {
    border-width: calc(5 * var(--px-vw));
  }
  .benefit .cnt .bnf-list .bg-wt .txt-wrap .txt {
    font-size: calc(13 * var(--px-vw));
    margin: 0;
    text-align: left;
  }
  .benefit .cnt .bnf-list .bg-wt .txt-wrap .yellow {
    font-size: calc(24 * var(--px-vw));
  }
  .benefit .cnt .bnf-list .bg-wt .txt-wrap .yellow .num {
    font-size: 130%;
    vertical-align: 0;
  }
  .benefit .cnt .bnf-list .bg-wt .label {
    padding: calc(5 * var(--px-vw));
  }
  .benefit .cnt .bnf-list .bg-wt .label img {
    width: calc(40 * var(--px-vw));
    height: calc(40 * var(--px-vw));
  }
  .benefit .cnt .bnf-list .bg-wt.li3 .txt-wrap {
    padding: calc(20 * var(--px-vw)) calc(10 * var(--px-vw));
  }
  .benefit .cnt .bnf-list .bg-wt.li3 .txt-wrap .txt {
    letter-spacing: 0em;
  }
  .benefit .cnt .bnf-list .bg-wt.li3 .txt-wrap .txt .yellow {
    font-size: calc(21 * var(--px-vw));
    margin: 0;
    vertical-align: calc(-2 * var(--px-vw));
  }
  .benefit .cnt .bnf-list .bg-wt.li4 .txt-wrap {
    padding: calc(6 * var(--px-vw)) calc(10 * var(--px-vw));
  }
  .benefit .cnt .bnf-list .bg-wt.li4 .txt-wrap .txt {
    line-height: 1;
  }
  .benefit .cnt .bnf-list .bg-wt.li4 .txt-wrap .txt .yellow {
    font-size: calc(17 * var(--px-vw));
    margin-top: calc(6 * var(--px-vw));
    vertical-align: 0;
  }
  .benefit .cnt .bnf-list .bg-wt.li4 .txt-wrap .txt .ann {
    font-size: calc(10 * var(--px-vw));
    line-height: 1;
    margin-top: calc(9 * var(--px-vw));
  }
  .benefit .cnt .bnf-list .bg-wt.li5 .txt-wrap {
    padding: calc(6 * var(--px-vw)) calc(10 * var(--px-vw));
  }
  .benefit .cnt .bnf-list .bg-wt.li5 .txt-wrap .txt {
    line-height: 1.4;
  }
  .benefit .cnt .bnf-list .bg-wt.li5 .txt-wrap .txt .yellow {
    font-size: calc(17 * var(--px-vw));
    vertical-align: 0;
  }
  .benefit .cnt .copy {
    font-size: calc(25 * var(--px-vw));
    margin-top: calc(35 * var(--px-vw));
  }
  .benefit .cnt .copy:before {
    width: 109.8%;
    height: auto;
    aspect-ratio: 411/152;
    background: url("../img/benefit/bg-bnf-sp@2x.webp") 35% 0 no-repeat;
    background-size: 100% auto;
    top: calc(343 * var(--px-vw));
    left: -3.5%;
    transform: translate(0, -12%);
  }
  .benefit .cnt .copy .marker:before {
    height: calc(7 * var(--px-vw));
  }
  .benefit .cnt .ann {
    font-size: calc(10 * var(--px-vw));
    margin-top: calc(30 * var(--px-vw));
    margin-bottom: calc(13 * var(--px-vw));
  }
  .benefit .cnt .end-txt {
    font-size: calc(15 * var(--px-vw));
    letter-spacing: 0.04em;
    line-height: 1.86;
  }
  .voice {
    padding-top: calc(31 * var(--px-vw));
    padding-bottom: calc(27 * var(--px-vw));
  }
  .voice .head .ttl {
    font-size: calc(18 * var(--px-vw));
    gap: calc(5 * var(--px-vw));
    margin-bottom: calc(22 * var(--px-vw));
  }
  .voice .head .ttl img {
    width: calc(44 * var(--px-vw));
    height: calc(42 * var(--px-vw));
    margin-left: calc(-49 * var(--px-vw));
  }
  .voice .head .ttl .big {
    font-size: 133%;
  }
  .voice .cnt {
    margin-bottom: calc(16 * var(--px-vw));
  }
  .voice .cnt .slick-card {
    width: calc(270 * var(--px-vw));
    height: calc(382 * var(--px-vw));
    margin: 0 calc(15 * var(--px-vw));
    border-radius: calc(15 * var(--px-vw));
  }
  .voice .cnt .slick-card .card-ttl {
    font-size: calc(18 * var(--px-vw));
    line-height: 1.4;
    margin-bottom: calc(10 * var(--px-vw));
  }
  .voice .cnt .slick-card .txt-wrap {
    padding: calc(16 * var(--px-vw)) calc(30 * var(--px-vw));
  }
  .voice .cnt .slick-card .txt {
    line-height: 1.8;
  }
  .voice .cnt .arrow_box {
    gap: calc(280 * var(--px-vw));
  }
  .voice .cnt .arrow_box .slick-arrow {
    width: calc(22 * var(--px-vw));
    height: calc(36 * var(--px-vw));
  }
  .voice .ann {
    text-align: justify;
    font-size: calc(10 * var(--px-vw));
    padding: 0 calc(50 * var(--px-vw));
    line-height: 1.52;
  }
  .secret {
    padding-top: calc(40 * var(--px-vw));
    padding-bottom: calc(28 * var(--px-vw));
  }
  .secret .head-ttl {
    font-size: calc(23 * var(--px-vw));
    padding: 0 calc(3 * var(--px-vw)) calc(10 * var(--px-vw));
    margin-bottom: calc(35 * var(--px-vw));
  }
  .secret .cnt {
    padding: 0 calc(30 * var(--px-vw));
    margin-bottom: calc(39 * var(--px-vw));
  }
  .secret .cnt .ttl {
    font-size: calc(18 * var(--px-vw));
    padding: 0 calc(5 * var(--px-vw)) calc(0 * var(--px-vw));
    border-bottom-width: calc(1 * var(--px-vw));
    letter-spacing: 0.04em;
    margin-bottom: calc(15 * var(--px-vw));
  }
  .secret .cnt .ttl img {
    width: calc(76 * var(--px-vw));
    height: calc(68 * var(--px-vw));
  }
  .secret .cnt .txt {
    font-size: calc(13 * var(--px-vw));
    line-height: 1.76;
  }
  .secret .cnt .txt .ann {
    display: inline-block;
    font-size: calc(10 * var(--px-vw));
    line-height: 1.6;
    margin-top: 0.4em;
  }
  .secret .cnt .img-ttl {
    font-size: calc(11 * var(--px-vw));
    height: calc(26 * var(--px-vw));
    margin-top: calc(14 * var(--px-vw));
    padding: 0 calc(5 * var(--px-vw));
  }
  .secret .cnt .img-wrap {
    padding: 0;
  }
  .secret .cnt .img-wrap .img {
    left: 0;
  }
  .secret .cnt .graph-ttl {
    font-size: calc(13 * var(--px-vw));
    height: calc(26 * var(--px-vw));
  }
  .secret .cnt.seibun .ttl {
    font-size: calc(17 * var(--px-vw));
    gap: 0;
    align-items: flex-start;
    margin-bottom: calc(8 * var(--px-vw));
  }
  .secret .cnt.seibun .ttl img {
    margin-left: calc(-71 * var(--px-vw));
    margin-top: calc(-4 * var(--px-vw));
    margin-right: calc(-2 * var(--px-vw));
  }
  .secret .cnt.seibun .ttl-txt {
    text-align: center;
    line-height: 1.42;
    letter-spacing: 0.12em;
    border-bottom-width: calc(1 * var(--px-vw));
    padding: 0 0 calc(4 * var(--px-vw));
  }
  .secret .cnt.seibun .ttl-txt span {
    font-size: calc(15 * var(--px-vw));
  }
  .secret .cnt.seibun .img-wrap .img {
    margin-right: calc(-15 * var(--px-vw));
  }
  .secret .cnt.seibun .img-wrap .img img {
    width: calc(330 * var(--px-vw));
  }
  .secret .cnt.seibun .img-wrap .num {
    width: calc(100% - 15 * var(--px-vw));
    height: 100%;
    bottom: 0;
    left: 0;
  }
  .secret .cnt.oxi .flex {
    padding: calc(20 * var(--px-vw)) calc(25 * var(--px-vw)) calc(15 * var(--px-vw));
  }
  .secret .cnt.oxi .flex .ilst {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: calc(17 * var(--px-vw));
  }
  .secret .cnt.oxi .flex .ilst .img {
    width: 100%;
  }
  .secret .cnt.oxi .flex .ilst .img.arrow {
    width: calc(42 * var(--px-vw));
    top: 46.9%;
    left: 50.1%;
  }
  .secret .cnt.oxi .flex .ilst .img .maru {
    width: calc(62 * var(--px-vw));
    top: 17.4%;
    right: 7.1%;
  }
  .secret .cnt.oxi .flex .ilst .img .ann {
    font-size: calc(10 * var(--px-vw));
    margin: calc(10 * var(--px-vw)) 0 0;
    text-align: left;
    line-height: 1.5;
  }
  .secret .cnt.trs .img-ttl, .secret .cnt.qua .img-ttl, .secret .cnt.ftg .img-ttl {
    padding: 0 calc(3 * var(--px-vw));
  }
  .secret .cnt.trs .img-ttl .basis, .secret .cnt.qua .img-ttl .basis, .secret .cnt.ftg .img-ttl .basis {
    height: calc(18 * var(--px-vw));
    padding: 0 calc(4 * var(--px-vw)) 0 calc(11 * var(--px-vw));
    letter-spacing: 0.04em;
    gap: calc(2 * var(--px-vw));
    margin-right: calc(5 * var(--px-vw));
  }
  .secret .cnt.trs .img-ttl .basis span, .secret .cnt.qua .img-ttl .basis span, .secret .cnt.ftg .img-ttl .basis span {
    width: calc(12 * var(--px-vw));
    height: calc(12 * var(--px-vw));
  }
  .secret .cnt.trs .left .anim-wrap, .secret .cnt.qua .left .anim-wrap, .secret .cnt.ftg .left .anim-wrap {
    flex-direction: column;
    gap: calc(20 * var(--px-vw));
    padding: 0 calc(22 * var(--px-vw));
    margin: 0 0 calc(10 * var(--px-vw));
  }
  .secret .cnt.trs .left .anim-block, .secret .cnt.qua .left .anim-block, .secret .cnt.ftg .left .anim-block {
    width: 100%;
  }
  .secret .cnt.trs .left .anim-block .copy, .secret .cnt.qua .left .anim-block .copy, .secret .cnt.ftg .left .anim-block .copy {
    width: 100%;
  }
  .secret .cnt.trs .left .graph-wrap-ttl, .secret .cnt.qua .left .graph-wrap-ttl, .secret .cnt.ftg .left .graph-wrap-ttl {
    font-size: calc(15 * var(--px-vw));
    margin-bottom: calc(5 * var(--px-vw));
  }
  .secret .cnt.trs .left .graph-wrap-ann, .secret .cnt.qua .left .graph-wrap-ann, .secret .cnt.ftg .left .graph-wrap-ann {
    font-size: calc(10 * var(--px-vw));
    text-align: left;
    width: fit-content;
    margin: 0 auto;
    line-height: 1.6;
  }
  .secret .cnt.trs .left .ann, .secret .cnt.qua .left .ann, .secret .cnt.ftg .left .ann {
    font-size: calc(10 * var(--px-vw));
    line-height: 1.6;
    margin-top: calc(17 * var(--px-vw));
  }
  .secret .cnt.trs .flex, .secret .cnt.qua .flex, .secret .cnt.ftg .flex {
    padding: calc(24 * var(--px-vw)) calc(16 * var(--px-vw)) calc(18 * var(--px-vw));
  }
  .secret .cnt.qua .flex {
    padding: calc(24 * var(--px-vw)) calc(12 * var(--px-vw)) calc(18 * var(--px-vw));
  }
  .secret .cnt.qua .flex .left .anim-wrap {
    padding: 0;
    margin-bottom: calc(14 * var(--px-vw));
  }
  .secret .cnt.qua .flex .left .anim-wrap .graph-ttl {
    width: 100%;
    padding: 0;
    margin-bottom: calc(10 * var(--px-vw));
  }
  .secret .cnt.qua .flex .left .anim-wrap .anim-block .up {
    width: calc(23 * var(--px-vw));
    bottom: 31%;
    left: 5.8%;
  }
  .secret .cnt.qua .flex .left .ann {
    padding: 0 calc(4 * var(--px-vw));
  }
  .secret .cnt.ftg .left .anim-wrap {
    padding: 0;
    margin-bottom: calc(16 * var(--px-vw));
  }
  .secret .cnt.ftg .left .anim-wrap .graph-ttl {
    padding: 0 calc(30 * var(--px-vw));
    margin-bottom: calc(10 * var(--px-vw));
  }
  .secret .cnt.ftg .left .graph-wrap-ann {
    padding: 0 0 0 calc(7 * var(--px-vw));
  }
  .secret .cnt.ftg .left .graph-wrap-ann img {
    width: calc(16 * var(--px-vw));
    height: calc(7 * var(--px-vw));
    margin-right: calc(6 * var(--px-vw));
  }
  .secret .cnt.ftg .ftg-arrow {
    width: 100%;
  }
  .quality {
    position: relative;
    z-index: 2;
    padding: calc(30 * var(--px-vw)) calc(37 * var(--px-vw)) 0;
  }
  .quality .cnt {
    flex-direction: column;
    gap: calc(28 * var(--px-vw));
  }
  .quality .cnt .ttl {
    font-size: calc(16 * var(--px-vw));
    text-align: center;
    padding-bottom: calc(5 * var(--px-vw));
    margin-bottom: calc(19 * var(--px-vw));
  }
  .quality .cnt .left .txt {
    font-size: calc(13 * var(--px-vw));
    line-height: 2;
    letter-spacing: 0.13em;
  }
  .quality .cnt img {
    display: block;
    width: 80%;
    margin: 0 auto calc(-53 * var(--px-vw));
    border-radius: calc(8 * var(--px-vw));
  }
  .qa {
    padding: calc(81 * var(--px-vw)) calc(15 * var(--px-vw)) calc(20 * var(--px-vw));
  }
  .qa:after {
    height: calc(554 * var(--px-vw));
    background: url("../img/qa/bg-naname-wt-sp.svg") 0 0 no-repeat;
  }
  .qa .head .ttl {
    padding: 0 0 0 calc(14 * var(--px-vw));
    font-size: calc(15 * var(--px-vw));
    margin: 0;
  }
  .qa .head .ttl span {
    font-size: 160%;
    margin-right: calc(5 * var(--px-vw));
  }
  .qa .head .ttl img {
    width: calc(37 * var(--px-vw));
    padding-bottom: calc(18 * var(--px-vw));
    margin-left: calc(2 * var(--px-vw));
  }
  .qa .cnt {
    border-radius: calc(5 * var(--px-vw));
    padding: calc(24 * var(--px-vw)) calc(26 * var(--px-vw));
    margin-bottom: calc(20 * var(--px-vw));
  }
  .qa .cnt .qa__item {
    margin-bottom: calc(18 * var(--px-vw));
  }
  .qa .cnt .qa__question {
    font-size: calc(13 * var(--px-vw));
    padding: calc(6 * var(--px-vw)) calc(6 * var(--px-vw));
  }
  .qa .cnt .qa__question .icon {
    margin-top: calc(-6 * var(--px-vw));
    margin-bottom: calc(-6 * var(--px-vw));
  }
  .qa .cnt .qa__answer {
    padding: calc(10 * var(--px-vw)) 0 0 calc(5 * var(--px-vw));
  }
  .qa .cnt .qa__answer .txt {
    letter-spacing: 0.08em;
    font-size: calc(13 * var(--px-vw));
    line-height: 1.75;
  }
  .qa .cnt .qa__answer .ann {
    font-size: calc(10 * var(--px-vw));
    margin-top: calc(5 * var(--px-vw));
  }
  .qa .cnt .qa__answer.is-open {
    padding: calc(10 * var(--px-vw)) 0 calc(10 * var(--px-vw)) calc(5 * var(--px-vw));
  }
  .qa .icon {
    width: calc(24 * var(--px-vw));
    height: calc(24 * var(--px-vw));
    font-size: calc(17 * var(--px-vw));
    margin-top: calc(10 * var(--px-vw));
    margin-right: calc(11 * var(--px-vw));
  }
  .qa .cv-cnt {
    margin-bottom: 0;
  }
  .notes {
    padding: 0;
  }
  .notes li, .notes p {
    font-size: calc(12 * var(--px-vw));
  }
  .notes .inner {
    padding: calc(30 * var(--px-vw));
  }
  .notes .inner .block-sonota {
    margin: 0;
  }
  .notes .inner ul.yoko-list {
    flex-wrap: wrap;
  }
  .notes .inner ul.list li {
    flex-direction: column;
    padding-left: 1em;
  }
  .notes .inner ul.list li span {
    line-height: 1.38;
  }
  .notes .inner ul.list li .ttl, .notes .inner ul.list li .content {
    font-size: calc(12 * var(--px-vw));
    width: 100%;
  }
  .notes .inner ul.list li .ttl {
    width: 100%;
    text-indent: -1em;
  }
  .notes .inner ul li {
    font-size: calc(12 * var(--px-vw));
  }
  .notes .inner .freedial {
    display: block;
  }
  .notes .inner .freedial a {
    display: inline-flex;
    margin-left: 0;
    line-height: 1.4;
  }
  .notes .inner .freedial a img {
    width: auto;
    height: calc(13 * var(--px-vw));
    vertical-align: middle;
  }
  .notes .inner .freedial .big150 {
    font-size: calc(16 * var(--px-vw));
    margin-top: -0.1em;
    font-weight: 600;
    line-height: 1.6;
  }
  .notes .inner .freedial .big150 span {
    font-size: 131.25%;
  }
  .notes .inner .p-ttl {
    font-size: calc(13 * var(--px-vw));
    min-height: 2em;
    margin-bottom: calc(8 * var(--px-vw));
  }
  .notes .inner .p-ttl.gray {
    margin: calc(35 * var(--px-vw)) 0 calc(17 * var(--px-vw));
  }
  .notes .inner .p-ttl.no-mg {
    margin: 0 0 calc(6 * var(--px-vw));
  }
  .notes .inner p {
    font-size: calc(12 * var(--px-vw));
    line-height: 1.38;
  }
  .notes .mglr {
    margin-left: 0;
  }
  .float-nav {
    background: none;
    top: auto;
    bottom: 0;
    right: auto;
    left: 0;
    translate: none;
    transform: none;
    width: 100%;
    height: auto;
    border-radius: unset;
    border: none;
  }
  .float-nav.is-visible {
    transform: none;
  }
  .float-nav .pc {
    display: none;
  }
  .float-nav .sp {
    height: 100%;
    display: flex;
    justify-content: center;
  }
  .float-nav .sp a {
    display: block;
    width: fit-content;
    writing-mode: initial;
    height: calc(71 * var(--px-vw));
    width: calc(183 * var(--px-vw));
    background: none;
    border: none;
    border-radius: 0;
    font-size: 0;
    vertical-align: baseline;
  }
  .float-nav .sp a img {
    width: 100%;
    height: auto;
    margin: 0;
  }
  .modal {
    padding: calc(30 * var(--px-vw));
    align-items: flex-start;
    padding-top: calc(160 * var(--px-vw));
  }
  .modal__content {
    width: 100%;
    padding: calc(26 * var(--px-vw)) calc(19 * var(--px-vw)) 0;
    border-radius: calc(10 * var(--px-vw));
    position: relative;
  }
  .modal__content .close {
    width: calc(50 * var(--px-vw));
    height: calc(50 * var(--px-vw));
    top: calc(-79 * var(--px-vw));
    right: calc(-7 * var(--px-vw));
  }
  .modal__content .close:before, .modal__content .close:after {
    width: calc(31 * var(--px-vw));
    height: calc(3 * var(--px-vw));
    top: calc(22 * var(--px-vw));
    left: calc(8 * var(--px-vw));
  }
  .modal__content .ttl {
    font-size: calc(15 * var(--px-vw));
    padding: 0 calc(4 * var(--px-vw));
    margin-bottom: calc(25 * var(--px-vw));
  }
  .modal__content .ttl img {
    width: 100%;
    height: auto;
    margin-bottom: calc(10 * var(--px-vw));
  }
  .modal__content .ttl span {
    width: calc(14 * var(--px-vw));
    height: calc(14 * var(--px-vw));
    aspect-ratio: 10/10;
  }
  .modal__content .ttl span:after {
    width: calc(17 * var(--px-vw));
    height: calc(17 * var(--px-vw));
  }
  .modal__options {
    width: 100%;
    padding: 0 calc(30 * var(--px-vw));
  }
  .modal__option {
    font-size: calc(18 * var(--px-vw));
    padding-left: calc(32 * var(--px-vw));
    margin-bottom: calc(23 * var(--px-vw));
  }
  .modal__option .checkmark {
    width: calc(14 * var(--px-vw));
    height: calc(14 * var(--px-vw));
  }
  .modal__option .checkmark:after {
    width: calc(17 * var(--px-vw));
    height: calc(17 * var(--px-vw));
  }
  .modal__footer {
    margin: calc(31 * var(--px-vw)) 0 calc(-31 * var(--px-vw));
  }
  .modal__link-button {
    font-size: calc(20 * var(--px-vw));
    width: 100%;
    padding: 0 calc(10 * var(--px-vw)) 0 calc(27 * var(--px-vw));
    height: calc(60 * var(--px-vw));
  }
  .modal__link-button:after {
    width: calc(25 * var(--px-vw));
    height: calc(25 * var(--px-vw));
  }
}
.wpcf7 {
  --font-size-base:2.0rem;
  width: var(--width800);
  max-width: 100%;
  margin: 0 auto;
}
.wpcf7 .contact7 {
  width: 100% !important;
}
.wpcf7 dt {
  font-size: var(--font-size-base);
}
.wpcf7 dt .must {
  font-size: 1.4rem;
}
.wpcf7 input {
  font-size: var(--font-size-base);
  background: white;
}
.wpcf7 textarea {
  font-size: var(--font-size-base);
  background: white;
}
.wpcf7 .wpcf7-list-item .wpcf7-list-item-label {
  font-size: var(--font-size-base);
}

@media screen and (width <= 768px) {
  .wpcf7 {
    --font-size-base:1.4rem;
  }
  .wpcf7 .contact7 input[type=radio], .wpcf7 .contact7 input[type=checkbox] {
    padding: 0;
  }
  .wpcf7 dt {
    font-size: var(--font-size-base);
  }
  .wpcf7 dt .must {
    display: inline-block;
    padding: 0.1em 0.4em;
    margin-top: -0.4em;
    font-size: calc(var(--font-size-base) - 0.2rem);
  }
  .wpcf7 dt .optional {
    padding: 0.1em 0.4em;
  }
  .wpcf7 input {
    font-size: calc(var(--font-size-base) + 0.2rem);
  }
  .wpcf7 textarea {
    font-size: calc(var(--font-size-base) + 0.2rem);
  }
  .wpcf7 .wpcf7-list-item .wpcf7-list-item-label {
    font-size: var(--font-size-base);
  }
}

/*# sourceMappingURL=style.css.map */
