@charset "UTF-8";
.--sans {
  font-family: "Noto Sans JP", sans-serif;
}

.--serif {
  font-family: "Zen Old Mincho", serif;
}

.--en {
  font-family: "Roboto", sans-serif;
}

br {
  display: block;
}

* {
  border: 0;
  outline: none;
  vertical-align: baseline;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  list-style: none;
  text-decoration: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  font-feature-settings: "palt" on;
  letter-spacing: 0.04em;
}

html {
  height: 100%;
  -webkit-overflow-scrolling: touch;
}

body {
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(calc(16 / 1080 * 100vw), 16px);
  height: 100%;
  -webkit-overflow-scrolling: touch;
  overflow-x: hidden;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  body {
    font-size: calc(30 / 750 * 100vw);
  }
}

h1,
h2 {
  position: relative;
  font-weight: 700;
}

*:focus {
  outline: none;
}

p a {
  word-break: break-all;
  text-decoration: underline;
}

html, body, main, section, article, aside, nav, header, footer,
h1, h2, h3, h4, h5, h6, hgroup,
div, p, blockquote, pre, address,
ul, ol, li, dl, dt, dd,
table, thead, tbody, tfoot, tr, th, td, caption, colgroup,
form, fieldset, legend,
figure, figcaption, details, summary,
hr, canvas, noscript, search, dialog, menu {
  line-height: 1.8;
}

a, abbr, acronym, b, bdi, bdo, big, br, button, cite, code, dfn, em, i, img, input, kbd, label, map, mark, meter, noscript, object, output, progress, q, ruby, s, samp, script, select, small, span, strong, sub, sup, textarea, time, tt, u, var, wbr,
audio, video, embed, iframe, source, track,
del, ins,
area, base, col, hr, link, meta, param,
datalist, keygen, optgroup, option {
  line-height: inherit;
}

sup {
  vertical-align: top;
  font-size: 50%;
}

sub {
  vertical-align: baseline;
  font-size: 50%;
}

em,
b,
strong,
th {
  font-weight: 700;
}

a {
  color: rgb(51, 51, 51);
  cursor: pointer;
  transition: opacity 0.3s;
}

figcaption,
small {
  font-size: min(calc(12 / 1080 * 100vw), 12px);
}
@media screen and (max-width: 767px) {
  figcaption,
  small {
    font-size: calc(20 / 750 * 100vw);
  }
}

img {
  display: block;
  height: auto;
}

input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

@media screen and (min-width: 768px) {
  .adlp-outer {
    overflow-x: hidden;
    display: flex;
    justify-content: center;
    align-items: flex-start;
  }
}
@media screen and (max-width: 767px) {
  .adlp-outer {
    overflow: hidden;
  }
}

.adlp-wrapper {
  color: rgb(51, 51, 51);
}
@media screen and (min-width: 768px) {
  .adlp-wrapper {
    min-width: min(calc(1920 / 1080 * 100vw), 1920px);
    max-width: 1920px;
    margin: 0 auto;
  }
}
.adlp-wrapper .relative {
  position: relative;
}
.adlp-wrapper .w100 {
  width: 100% !important;
  display: block;
}
.adlp-wrapper .center {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .adlp-wrapper .sp {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .pc {
    display: none !important;
  }
}
.adlp-wrapper .text__txt {
  color: rgb(51, 51, 51) !important;
}
.adlp-wrapper .text__white {
  color: #fff !important;
}
.adlp-wrapper .text__silver {
  color: #f1f1f1 !important;
}
.adlp-wrapper .text__accent {
  color: #E75B18 !important;
}
.adlp-wrapper .bg__txt {
  background: rgb(51, 51, 51) !important;
}
.adlp-wrapper .bg__white {
  background: #fff !important;
}
.adlp-wrapper .bg__silver {
  background: #f1f1f1 !important;
}
.adlp-wrapper .bg__accent {
  background: #E75B18 !important;
}
.adlp-wrapper .line__top__txt {
  border-top: 1px solid rgb(51, 51, 51);
}
.adlp-wrapper .line__top.--w2 {
  border-width: min(calc(2 / 1080 * 100vw), 2px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line__top.--w2 {
    border-width: calc(2 / 750 * 100vw);
  }
}
.adlp-wrapper .line__top.--w3 {
  border-width: min(calc(3 / 1080 * 100vw), 3px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line__top.--w3 {
    border-width: calc(3 / 750 * 100vw);
  }
}
.adlp-wrapper .line__top.--w4 {
  border-width: min(calc(4 / 1080 * 100vw), 4px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line__top.--w4 {
    border-width: calc(4 / 750 * 100vw);
  }
}
.adlp-wrapper .line__top__white {
  border-top: 1px solid #fff;
}
.adlp-wrapper .line__top.--w2 {
  border-width: min(calc(2 / 1080 * 100vw), 2px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line__top.--w2 {
    border-width: calc(2 / 750 * 100vw);
  }
}
.adlp-wrapper .line__top.--w3 {
  border-width: min(calc(3 / 1080 * 100vw), 3px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line__top.--w3 {
    border-width: calc(3 / 750 * 100vw);
  }
}
.adlp-wrapper .line__top.--w4 {
  border-width: min(calc(4 / 1080 * 100vw), 4px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line__top.--w4 {
    border-width: calc(4 / 750 * 100vw);
  }
}
.adlp-wrapper .line__top__silver {
  border-top: 1px solid #f1f1f1;
}
.adlp-wrapper .line__top.--w2 {
  border-width: min(calc(2 / 1080 * 100vw), 2px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line__top.--w2 {
    border-width: calc(2 / 750 * 100vw);
  }
}
.adlp-wrapper .line__top.--w3 {
  border-width: min(calc(3 / 1080 * 100vw), 3px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line__top.--w3 {
    border-width: calc(3 / 750 * 100vw);
  }
}
.adlp-wrapper .line__top.--w4 {
  border-width: min(calc(4 / 1080 * 100vw), 4px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line__top.--w4 {
    border-width: calc(4 / 750 * 100vw);
  }
}
.adlp-wrapper .line__top__accent {
  border-top: 1px solid #E75B18;
}
.adlp-wrapper .line__top.--w2 {
  border-width: min(calc(2 / 1080 * 100vw), 2px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line__top.--w2 {
    border-width: calc(2 / 750 * 100vw);
  }
}
.adlp-wrapper .line__top.--w3 {
  border-width: min(calc(3 / 1080 * 100vw), 3px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line__top.--w3 {
    border-width: calc(3 / 750 * 100vw);
  }
}
.adlp-wrapper .line__top.--w4 {
  border-width: min(calc(4 / 1080 * 100vw), 4px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line__top.--w4 {
    border-width: calc(4 / 750 * 100vw);
  }
}
.adlp-wrapper .marker__txt {
  background: linear-gradient(transparent 60%, rgb(51, 51, 51) 60%);
}
.adlp-wrapper .marker__white {
  background: linear-gradient(transparent 60%, #fff 60%);
}
.adlp-wrapper .marker__silver {
  background: linear-gradient(transparent 60%, #f1f1f1 60%);
}
.adlp-wrapper .marker__accent {
  background: linear-gradient(transparent 60%, #E75B18 60%);
}
.adlp-wrapper .line__txt {
  border-bottom: 1px solid rgb(51, 51, 51);
}
.adlp-wrapper .line.--w2 {
  border-width: min(calc(2 / 1080 * 100vw), 2px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line.--w2 {
    border-width: calc(2 / 750 * 100vw);
  }
}
.adlp-wrapper .line.--w3 {
  border-width: min(calc(3 / 1080 * 100vw), 3px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line.--w3 {
    border-width: calc(3 / 750 * 100vw);
  }
}
.adlp-wrapper .line.--w4 {
  border-width: min(calc(4 / 1080 * 100vw), 4px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line.--w4 {
    border-width: calc(4 / 750 * 100vw);
  }
}
.adlp-wrapper .line__white {
  border-bottom: 1px solid #fff;
}
.adlp-wrapper .line.--w2 {
  border-width: min(calc(2 / 1080 * 100vw), 2px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line.--w2 {
    border-width: calc(2 / 750 * 100vw);
  }
}
.adlp-wrapper .line.--w3 {
  border-width: min(calc(3 / 1080 * 100vw), 3px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line.--w3 {
    border-width: calc(3 / 750 * 100vw);
  }
}
.adlp-wrapper .line.--w4 {
  border-width: min(calc(4 / 1080 * 100vw), 4px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line.--w4 {
    border-width: calc(4 / 750 * 100vw);
  }
}
.adlp-wrapper .line__silver {
  border-bottom: 1px solid #f1f1f1;
}
.adlp-wrapper .line.--w2 {
  border-width: min(calc(2 / 1080 * 100vw), 2px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line.--w2 {
    border-width: calc(2 / 750 * 100vw);
  }
}
.adlp-wrapper .line.--w3 {
  border-width: min(calc(3 / 1080 * 100vw), 3px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line.--w3 {
    border-width: calc(3 / 750 * 100vw);
  }
}
.adlp-wrapper .line.--w4 {
  border-width: min(calc(4 / 1080 * 100vw), 4px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line.--w4 {
    border-width: calc(4 / 750 * 100vw);
  }
}
.adlp-wrapper .line__accent {
  border-bottom: 1px solid #E75B18;
}
.adlp-wrapper .line.--w2 {
  border-width: min(calc(2 / 1080 * 100vw), 2px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line.--w2 {
    border-width: calc(2 / 750 * 100vw);
  }
}
.adlp-wrapper .line.--w3 {
  border-width: min(calc(3 / 1080 * 100vw), 3px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line.--w3 {
    border-width: calc(3 / 750 * 100vw);
  }
}
.adlp-wrapper .line.--w4 {
  border-width: min(calc(4 / 1080 * 100vw), 4px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .line.--w4 {
    border-width: calc(4 / 750 * 100vw);
  }
}
.adlp-wrapper .pad10 {
  padding: min(calc(10 / 1080 * 100vw), 10px) 0;
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .pad10 {
    padding-top: calc(10 / 750 * 100vw) !important;
    padding-bottom: calc(10 / 750 * 100vw) !important;
  }
}
.adlp-wrapper .pad20 {
  padding: min(calc(20 / 1080 * 100vw), 20px) 0;
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .pad20 {
    padding-top: calc(20 / 750 * 100vw) !important;
    padding-bottom: calc(20 / 750 * 100vw) !important;
  }
}
.adlp-wrapper .pad30 {
  padding: min(calc(30 / 1080 * 100vw), 30px) 0;
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .pad30 {
    padding-top: calc(30 / 750 * 100vw) !important;
    padding-bottom: calc(30 / 750 * 100vw) !important;
  }
}
.adlp-wrapper .pad40 {
  padding: min(calc(40 / 1080 * 100vw), 40px) 0;
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .pad40 {
    padding-top: calc(40 / 750 * 100vw) !important;
    padding-bottom: calc(40 / 750 * 100vw) !important;
  }
}
.adlp-wrapper .pad50 {
  padding: min(calc(50 / 1080 * 100vw), 50px) 0;
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .pad50 {
    padding-top: calc(50 / 750 * 100vw) !important;
    padding-bottom: calc(50 / 750 * 100vw) !important;
  }
}
.adlp-wrapper .pad60 {
  padding: min(calc(60 / 1080 * 100vw), 60px) 0;
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .pad60 {
    padding-top: calc(60 / 750 * 100vw) !important;
    padding-bottom: calc(60 / 750 * 100vw) !important;
  }
}
.adlp-wrapper .mt10 {
  margin-top: min(calc(10 / 1080 * 100vw), 10px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .mt10 {
    margin-top: calc(10 / 750 * 100vw);
  }
}
.adlp-wrapper .mt20 {
  margin-top: min(calc(20 / 1080 * 100vw), 20px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .mt20 {
    margin-top: calc(20 / 750 * 100vw);
  }
}
.adlp-wrapper .mt30 {
  margin-top: min(calc(30 / 1080 * 100vw), 30px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .mt30 {
    margin-top: calc(30 / 750 * 100vw);
  }
}
.adlp-wrapper .mt40 {
  margin-top: min(calc(40 / 1080 * 100vw), 40px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .mt40 {
    margin-top: calc(40 / 750 * 100vw);
  }
}
.adlp-wrapper .mt50 {
  margin-top: min(calc(50 / 1080 * 100vw), 50px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .mt50 {
    margin-top: calc(50 / 750 * 100vw);
  }
}
.adlp-wrapper .mt60 {
  margin-top: min(calc(60 / 1080 * 100vw), 60px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .mt60 {
    margin-top: calc(60 / 750 * 100vw);
  }
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .sp-mt10 {
    margin-top: calc(10 / 750 * 100vw) !important;
  }
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .sp-mt20 {
    margin-top: calc(20 / 750 * 100vw) !important;
  }
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .sp-mt30 {
    margin-top: calc(30 / 750 * 100vw) !important;
  }
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .sp-mt40 {
    margin-top: calc(40 / 750 * 100vw) !important;
  }
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .sp-mt50 {
    margin-top: calc(50 / 750 * 100vw) !important;
  }
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .sp-mt60 {
    margin-top: calc(60 / 750 * 100vw) !important;
  }
}
.adlp-wrapper .wrap500 {
  margin: auto;
  width: min(calc(500 / 1080 * 100vw), 500px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .wrap500 {
    width: 100%;
    padding: 0 calc(30 / 750 * 100vw);
  }
}
.adlp-wrapper .wrap600 {
  margin: auto;
  width: min(calc(600 / 1080 * 100vw), 600px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .wrap600 {
    width: 100%;
    padding: 0 calc(30 / 750 * 100vw);
  }
}
.adlp-wrapper .wrap700 {
  margin: auto;
  width: min(calc(700 / 1080 * 100vw), 700px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .wrap700 {
    width: 100%;
    padding: 0 calc(30 / 750 * 100vw);
  }
}
.adlp-wrapper .wrap800 {
  margin: auto;
  width: min(calc(800 / 1080 * 100vw), 800px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .wrap800 {
    width: 100%;
    padding: 0 calc(30 / 750 * 100vw);
  }
}
.adlp-wrapper .wrap900 {
  margin: auto;
  width: min(calc(900 / 1080 * 100vw), 900px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .wrap900 {
    width: 100%;
    padding: 0 calc(30 / 750 * 100vw);
  }
}
.adlp-wrapper .wrap920 {
  margin: auto;
  width: min(calc(920 / 1080 * 100vw), 920px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .wrap920 {
    width: 100%;
    padding: 0 calc(30 / 750 * 100vw);
  }
}
.adlp-wrapper .wrap1000 {
  margin: auto;
  width: min(calc(1000 / 1080 * 100vw), 1000px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .wrap1000 {
    width: 100%;
    padding: 0 calc(30 / 750 * 100vw);
  }
}
.adlp-wrapper .wrap1080 {
  margin: auto;
  width: min(calc(1080 / 1080 * 100vw), 1080px);
}
@media screen and (max-width: 767px) {
  .adlp-wrapper .wrap1080 {
    width: 100%;
    padding: 0 calc(30 / 750 * 100vw);
  }
}

.adlp-floating {
  visibility: hidden;
  opacity: 0;
  transition: 0.3s;
  background: #fff;
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(calc(1920 / 1080 * 100vw), 1920px);
  padding: min(calc(12 / 1080 * 100vw), 12px) 0;
  z-index: 90;
}
.adlp-floating.--show {
  visibility: visible;
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .adlp-floating {
    width: 100%;
    padding: calc(12 / 750 * 100vw) 0;
  }
}
.adlp-floating .adlp-btn__wrapper {
  display: flex;
  justify-content: center;
  gap: min(calc(16 / 1080 * 100vw), 16px);
  margin: auto;
}
@media screen and (max-width: 767px) {
  .adlp-floating .adlp-btn__wrapper {
    flex-direction: row;
    gap: calc(16 / 750 * 100vw);
  }
}
.adlp-floating .adlp-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  text-decoration: none;
  transition: all 0.3s;
}
.adlp-floating .adlp-btn[href^="tel:"] {
  background: rgb(218, 18, 8);
  border-radius: min(calc(4 / 1080 * 100vw), 4px);
  width: min(calc(262 / 1080 * 100vw), 262px);
  height: min(calc(54 / 1080 * 100vw), 54px);
  color: #FFFFFF;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .adlp-floating .adlp-btn[href^="tel:"] {
    background: linear-gradient(137deg, rgb(218, 18, 8) 0%, rgb(180, 17, 8) 100%);
    border-radius: calc(72 / 750 * 100vw);
    width: calc(340 / 750 * 100vw);
    height: calc(78 / 750 * 100vw);
    box-shadow: 0px calc(6 / 750 * 100vw) calc(6.3 / 750 * 100vw) 0px rgba(0, 0, 0, 0.25);
    pointer-events: auto;
  }
}
.adlp-floating .adlp-btn[href^="tel:"]::before {
  content: "";
  position: absolute;
  left: min(calc(38 / 1080 * 100vw), 38px);
  top: min(calc(10 / 1080 * 100vw), 10px);
  width: min(calc(22 / 1080 * 100vw), 22px);
  height: min(calc(32 / 1080 * 100vw), 32px);
  background: url(../img/common/icon_tel.svg) no-repeat center;
  background-size: 100%;
}
@media screen and (max-width: 767px) {
  .adlp-floating .adlp-btn[href^="tel:"]::before {
    left: calc(76 / 750 * 100vw);
    top: calc(23 / 750 * 100vw);
    width: calc(22 / 750 * 100vw);
    height: calc(32 / 750 * 100vw);
  }
}
.adlp-floating .adlp-btn[href^="tel:"] p {
  text-align: center;
  display: flex;
  flex-direction: column;
  padding-left: min(calc(30 / 1080 * 100vw), 30px);
}
@media screen and (max-width: 767px) {
  .adlp-floating .adlp-btn[href^="tel:"] p {
    padding-left: calc(30 / 750 * 100vw);
  }
}
.adlp-floating .adlp-btn[href^="tel:"] p span.--sans {
  font-size: min(calc(14 / 1080 * 100vw), 14px);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .adlp-floating .adlp-btn[href^="tel:"] p span.--sans {
    font-size: calc(22 / 750 * 100vw);
    line-height: 1.8;
    letter-spacing: 0.08em;
  }
}
.adlp-floating .adlp-btn[href^="tel:"] p .adlp-btn__tel-number {
  font-size: min(calc(20 / 1080 * 100vw), 20px);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .adlp-floating .adlp-btn[href^="tel:"] p .adlp-btn__tel-number {
    display: none;
  }
}
.adlp-floating .adlp-btn:not([href^="tel:"]) {
  background: linear-gradient(137deg, #5998D7 0%, #3585D5 100%);
  border-radius: min(calc(72 / 1080 * 100vw), 72px);
  width: min(calc(236 / 1080 * 100vw), 236px);
  height: min(calc(54 / 1080 * 100vw), 54px);
  color: #FFFFFF;
  box-shadow: 0px min(calc(2 / 1080 * 100vw), 2px) min(calc(2 / 1080 * 100vw), 2px) 0px rgba(0, 0, 0, 0.25);
}
@media screen and (max-width: 767px) {
  .adlp-floating .adlp-btn:not([href^="tel:"]) {
    border-radius: calc(72 / 750 * 100vw);
    width: calc(340 / 750 * 100vw);
    height: calc(78 / 750 * 100vw);
    box-shadow: 0px calc(6 / 750 * 100vw) calc(6.3 / 750 * 100vw) 0px rgba(0, 0, 0, 0.25);
  }
}
@media screen and (min-width: 768px) {
  .adlp-floating .adlp-btn:not([href^="tel:"]) {
    will-change: filter;
  }
  .adlp-floating .adlp-btn:not([href^="tel:"]):hover {
    filter: brightness(115%);
  }
}
.adlp-floating .adlp-btn:not([href^="tel:"]) p {
  text-align: center;
}
.adlp-floating .adlp-btn:not([href^="tel:"]) p span.--sans {
  font-size: min(calc(14 / 1080 * 100vw), 14px);
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .adlp-floating .adlp-btn:not([href^="tel:"]) p span.--sans {
    font-size: calc(22 / 750 * 100vw);
    line-height: 1.8;
    letter-spacing: 0.08em;
  }
}

.adlp-btn {
  border-radius: 200px;
  height: min(calc(80 / 1080 * 100vw), 80px);
  width: min(calc(420 / 1080 * 100vw), 420px);
  transition: all 0.3s;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
.adlp-btn__wrapper {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: min(calc(30 / 1080 * 100vw), 30px);
}
@media screen and (max-width: 767px) {
  .adlp-btn__wrapper {
    flex-direction: column;
    align-items: center;
    gap: calc(30 / 750 * 100vw);
  }
}
.adlp-btn__text {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .adlp-btn {
    height: calc(98 / 750 * 100vw);
    width: calc(630 / 750 * 100vw);
  }
}
.adlp-btn p {
  text-align: center;
  z-index: 1;
  line-height: 120%;
}
.adlp-btn p span {
  line-height: 120%;
}
.adlp-btn p span.text01 {
  font-size: min(calc(24 / 1080 * 100vw), 24px);
}
@media screen and (max-width: 767px) {
  .adlp-btn p span.text01 {
    font-size: calc(20 / 750 * 100vw);
  }
}
.adlp-btn p span.text02 {
  font-size: min(calc(20 / 1080 * 100vw), 20px);
}
@media screen and (max-width: 767px) {
  .adlp-btn p span.text02 {
    font-size: calc(28 / 750 * 100vw);
  }
}
.adlp-btn.--free {
  padding-left: min(calc(9 / 1080 * 100vw), 9px);
}
.adlp-btn.--free::before {
  content: "無料";
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  background: #fff;
  color: #1883EC;
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 700;
  width: min(calc(70 / 1080 * 100vw), 70px);
  height: min(calc(70 / 1080 * 100vw), 70px);
  top: min(calc(5 / 1080 * 100vw), 5px);
  left: min(calc(5 / 1080 * 100vw), 5px);
}
@media screen and (max-width: 767px) {
  .adlp-btn.--free::before {
    width: calc(82 / 750 * 100vw);
    height: calc(82 / 750 * 100vw);
    font-size: calc(28 / 750 * 100vw);
    top: calc(8 / 750 * 100vw);
    left: calc(8 / 750 * 100vw);
  }
}
.adlp-btn.--btn01 {
  background: #1883EC;
  color: #fff;
}
.adlp-btn.--btn01::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s;
  background-image: url("data:image/svg+xml,%3Csvg width='13' height='18' viewBox='0 0 13 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.5 12.5L6.5 16.5L1.5 12.5' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M6.5 9.5L6.5 1.5' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
  background-size: 100% 100%;
  width: min(calc(13 / 1080 * 100vw), 13px);
  height: min(calc(18 / 1080 * 100vw), 18px);
  right: min(calc(33 / 1080 * 100vw), 33px);
}
@media screen and (max-width: 767px) {
  .adlp-btn.--btn01::after {
    width: calc(13 / 750 * 100vw);
    height: calc(18 / 750 * 100vw);
    right: calc(33 / 750 * 100vw);
  }
}
@media screen and (min-width: 768px) {
  .adlp-btn.--btn01:hover {
    background: #5AB0FF;
  }
}
@media screen and (max-width: 767px) {
  .adlp-btn.--btn01:active {
    background: #5AB0FF;
  }
}
.adlp-btn.--btn02-a {
  background: #fff;
  border: min(calc(4 / 1080 * 100vw), 4px) solid #f69809;
  color: #f69809;
}
@media screen and (max-width: 767px) {
  .adlp-btn.--btn02-a {
    border-width: calc(4 / 750 * 100vw);
  }
}
.adlp-btn.--btn02-a::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s;
  background-image: url("data:image/svg+xml,%3Csvg width='10' height='18' viewBox='0 0 10 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L9 9L1 17' stroke='%23F79809' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
  background-size: 100% 100%;
  width: min(calc(13 / 1080 * 100vw), 13px);
  height: min(calc(18 / 1080 * 100vw), 18px);
  right: min(calc(33 / 1080 * 100vw), 33px);
}
@media screen and (max-width: 767px) {
  .adlp-btn.--btn02-a::after {
    width: calc(13 / 750 * 100vw);
    height: calc(18 / 750 * 100vw);
    right: calc(33 / 750 * 100vw);
  }
}
@media screen and (min-width: 768px) {
  .adlp-btn.--btn02-a:hover {
    background: #f69809;
    color: #fff;
  }
  .adlp-btn.--btn02-a:hover::after {
    background-image: url("data:image/svg+xml,%3Csvg width='10' height='18' viewBox='0 0 10 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L9 9L1 17' stroke='%23FFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
  }
}
@media screen and (max-width: 767px) {
  .adlp-btn.--btn02-a:active {
    background: #f69809;
    color: #fff;
  }
  .adlp-btn.--btn02-a:active::after {
    background-image: url("data:image/svg+xml,%3Csvg width='10' height='18' viewBox='0 0 10 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L9 9L1 17' stroke='%23FFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
  }
}
.adlp-btn.--btn02-b {
  color: #fff;
  overflow: hidden;
  border: 1px solid transparent;
}
.adlp-btn.--btn02-b::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: linear-gradient(90deg, #FF98AC 0%, #FF6683 100%);
  opacity: 1;
  transition: all 0.3s;
}
.adlp-btn.--btn02-b::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s;
  background-image: url("data:image/svg+xml,%3Csvg width='8' height='16' viewBox='0 0 8 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 16L-6.99382e-07 0L8 7.99999L0 16Z' fill='white'/%3E%3C/svg%3E%0A");
  background-size: 100% 100%;
  width: min(calc(8 / 1080 * 100vw), 8px);
  height: min(calc(16 / 1080 * 100vw), 16px);
  right: min(calc(33 / 1080 * 100vw), 33px);
}
@media screen and (max-width: 767px) {
  .adlp-btn.--btn02-b::after {
    width: calc(8 / 750 * 100vw);
    height: calc(16 / 750 * 100vw);
    right: calc(33 / 750 * 100vw);
  }
}
@media screen and (min-width: 768px) {
  .adlp-btn.--btn02-b:hover {
    color: #ff6683;
    border-color: #ff6683;
    background-color: #fff;
  }
  .adlp-btn.--btn02-b:hover::before {
    opacity: 0;
  }
  .adlp-btn.--btn02-b:hover::after {
    background-image: url("data:image/svg+xml,%3Csvg width='8' height='16' viewBox='0 0 8 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 16L-6.99382e-07 0L8 7.99999L0 16Z' fill='%23FF6683'/%3E%3C/svg%3E%0A");
  }
}
@media screen and (max-width: 767px) {
  .adlp-btn.--btn02-b:active {
    color: #ff6683;
    border-color: #ff6683;
    background-color: #fff;
  }
  .adlp-btn.--btn02-b:active::before {
    opacity: 0;
  }
  .adlp-btn.--btn02-b:active::after {
    background-image: url("data:image/svg+xml,%3Csvg width='8' height='16' viewBox='0 0 8 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 16L-6.99382e-07 0L8 7.99999L0 16Z' fill='%23FF6683'/%3E%3C/svg%3E%0A");
  }
}
.adlp-btn.--btn03 {
  color: #C80012;
  background: #fff;
  box-shadow: min(calc(4 / 1080 * 100vw), 4px) min(calc(6 / 1080 * 100vw), 6px) 0 0 rgba(0, 0, 0, 0.3);
}
@media screen and (max-width: 767px) {
  .adlp-btn.--btn03 {
    box-shadow: calc(4 / 750 * 100vw) calc(6 / 750 * 100vw) 0 0 rgba(0, 0, 0, 0.3);
  }
}
.adlp-btn.--btn03::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s;
  background-image: url("data:image/svg+xml,%3Csvg width='9' height='15' viewBox='0 0 9 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 1.07324e-07L9 7.50412L1.78873e-07 15L2.47836 7.44633L0 1.07324e-07Z' fill='%23C80012'/%3E%3C/svg%3E%0A");
  background-size: 100% 100%;
  width: min(calc(8 / 1080 * 100vw), 8px);
  height: min(calc(16 / 1080 * 100vw), 16px);
  right: min(calc(33 / 1080 * 100vw), 33px);
}
@media screen and (max-width: 767px) {
  .adlp-btn.--btn03::after {
    width: calc(8 / 750 * 100vw);
    height: calc(16 / 750 * 100vw);
    right: calc(33 / 750 * 100vw);
  }
}
@media screen and (min-width: 768px) {
  .adlp-btn.--btn03:hover {
    transform: translateY(min(calc(4 / 1080 * 100vw), 4px));
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.3);
  }
}
@media screen and (min-width: 768px) and (max-width: 767px) {
  .adlp-btn.--btn03:hover {
    transform: translateY(calc(4 / 750 * 100vw));
  }
}
@media screen and (max-width: 767px) {
  .adlp-btn.--btn03:active {
    transform: translateY(min(calc(4 / 1080 * 100vw), 4px));
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.3);
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .adlp-btn.--btn03:active {
    transform: translateY(calc(4 / 750 * 100vw));
  }
}
.adlp-btn.--btn04 {
  color: #fff;
  background: #FFA800;
  box-shadow: 0 min(calc(14 / 1080 * 100vw), 14px) min(calc(24 / 1080 * 100vw), 24px) 0 rgba(0, 0, 0, 0.4);
}
@media screen and (max-width: 767px) {
  .adlp-btn.--btn04 {
    box-shadow: 0 calc(14 / 750 * 100vw) calc(24 / 750 * 100vw) 0 rgba(0, 0, 0, 0.4);
  }
}
.adlp-btn.--btn04::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s;
  background-image: url("data:image/svg+xml,%3Csvg width='9' height='15' viewBox='0 0 9 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.16602L7 7.16602L1 13.166' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
  background-size: 100% 100%;
  width: min(calc(8 / 1080 * 100vw), 8px);
  height: min(calc(16 / 1080 * 100vw), 16px);
  right: min(calc(33 / 1080 * 100vw), 33px);
}
@media screen and (max-width: 767px) {
  .adlp-btn.--btn04::after {
    width: calc(8 / 750 * 100vw);
    height: calc(16 / 750 * 100vw);
    right: calc(33 / 750 * 100vw);
  }
}
@media screen and (min-width: 768px) {
  .adlp-btn.--btn04:hover {
    background: #F48400;
  }
  .adlp-btn.--btn04:hover::after {
    transform: translate(min(calc(10 / 1080 * 100vw), 10px), -50%);
  }
}
@media screen and (max-width: 767px) {
  .adlp-btn.--btn04:active {
    background: #F48400;
  }
  .adlp-btn.--btn04:active::after {
    transform: translate(min(calc(10 / 1080 * 100vw), 10px), -50%);
  }
}

.cv01 {
  position: relative;
  background: url(../img/pc/cv01.webp) 50% 0/100% no-repeat;
  padding: min(calc(80 / 1080 * 100vw), 80px) 0;
}
@media screen and (max-width: 767px) {
  .cv01 {
    background: url(../img/sp/cv01.webp) 50% 0/100% no-repeat;
    padding: calc(120 / 750 * 100vw) 0;
  }
}
.cv01-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(12 / 1080 * 100vw), 12px);
  width: min(calc(1000 / 1080 * 100vw), 1000px);
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .cv01-content {
    gap: calc(24 / 750 * 100vw);
    width: calc(630 / 750 * 100vw);
  }
}
.cv01-header {
  display: flex;
  align-items: center;
  gap: min(calc(12 / 1080 * 100vw), 12px);
}
@media screen and (max-width: 767px) {
  .cv01-header {
    flex-direction: row;
    align-items: center;
    gap: calc(24 / 750 * 100vw);
  }
}
.cv01-header__text {
  font-size: min(calc(22 / 1080 * 100vw), 22px);
  font-weight: 900;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .cv01-header__text {
    width: calc(370 / 750 * 100vw);
    font-size: calc(34 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.6;
  }
}
.cv01-header__logo {
  width: min(calc(174 / 1080 * 100vw), 174px);
}
@media screen and (max-width: 767px) {
  .cv01-header__logo {
    width: calc(232 / 750 * 100vw);
  }
}
.cv01-main-wrapper {
  position: relative;
  width: 100%;
}
.cv01-main-wrapper::before {
  content: "";
  width: 100%;
  height: 1px;
  background: rgb(30, 58, 95);
  display: block;
}
.cv01-main-wrapper::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(calc(22 / 1080 * 100vw), 22px);
  height: min(calc(16 / 1080 * 100vw), 16px);
  background: rgb(30, 58, 95);
  clip-path: polygon(50% 100%, 0 0, 100% 0);
}
@media screen and (max-width: 767px) {
  .cv01-main-wrapper::after {
    width: calc(32 / 750 * 100vw);
    height: calc(24 / 750 * 100vw);
  }
}
.cv01-main {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min(calc(2 / 1080 * 100vw), 2px);
  margin-top: min(calc(12 / 1080 * 100vw), 12px);
}
@media screen and (max-width: 767px) {
  .cv01-main {
    justify-content: space-between;
    gap: 0;
    margin-top: calc(24 / 750 * 100vw);
  }
}
.cv01-main__left {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .cv01-main__left {
    flex-direction: column;
    align-items: flex-start;
  }
}
.cv01-main__text1 {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .cv01-main__text1 {
    font-size: calc(56 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.4;
  }
}
.cv01-main__text2 {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  font-weight: 700;
  color: rgb(218, 18, 8);
  letter-spacing: 0.08em;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .cv01-main__text2 {
    font-size: calc(56 / 750 * 100vw);
    letter-spacing: 0.02em;
  }
}
.cv01-main__badge {
  position: relative;
  width: min(calc(140 / 1080 * 100vw), 140px);
  height: min(calc(140 / 1080 * 100vw), 140px);
  background: url(../img/pc/cv_badge.webp) 50% 50%/100% no-repeat;
}
@media screen and (max-width: 767px) {
  .cv01-main__badge {
    width: calc(206 / 750 * 100vw);
    height: calc(206 / 750 * 100vw);
    background: url(../img/sp/cv_badge.webp) 50% 50%/100% no-repeat;
  }
}
.cv01-badge-inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding-bottom: 10%;
}
.cv01-badge__text1 {
  font-size: min(calc(16 / 1080 * 100vw), 16px);
  font-weight: 700;
  color: rgb(218, 18, 8);
  letter-spacing: 0.08em;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .cv01-badge__text1 {
    font-size: calc(26 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.8;
  }
}
.cv01-badge__number {
  display: flex;
  align-items: flex-end;
  gap: min(calc(2 / 1080 * 100vw), 2px);
}
@media screen and (max-width: 767px) {
  .cv01-badge__number {
    gap: calc(4 / 750 * 100vw);
  }
}
.cv01-badge__num {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  font-weight: 700;
  color: rgb(218, 18, 8);
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .cv01-badge__num {
    font-size: calc(48 / 750 * 100vw);
  }
}
.cv01-badge__unit {
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 700;
  color: rgb(218, 18, 8);
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .cv01-badge__unit {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.6;
  }
}
.cv01-note {
  font-size: min(calc(12 / 1080 * 100vw), 12px);
  font-weight: 400;
  color: rgb(102, 102, 102);
  letter-spacing: 0.04em;
  line-height: 1.5;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .cv01-note {
    margin-top: calc(12 / 750 * 100vw);
    font-size: calc(20 / 750 * 100vw);
    letter-spacing: 0.04em;
    line-height: 1.5;
  }
}
.cv01-cta {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(26 / 1080 * 100vw), 26px);
  width: min(calc(1080 / 1080 * 100vw), 1080px);
  margin: min(calc(52 / 1080 * 100vw), 52px) auto 0;
  padding: 0 min(calc(80 / 1080 * 100vw), 80px) min(calc(50 / 1080 * 100vw), 50px);
  background: linear-gradient(90deg, #B41108 4.333%, #DA1208 100%);
  border-radius: min(calc(64 / 1080 * 100vw), 64px);
}
@media screen and (max-width: 767px) {
  .cv01-cta {
    gap: calc(14 / 750 * 100vw);
    width: calc(750 / 750 * 100vw);
    margin-top: calc(72 / 750 * 100vw);
    padding: 0 calc(60 / 750 * 100vw) calc(80 / 750 * 100vw);
    border-radius: calc(80 / 750 * 100vw);
  }
}
.cv01-cta__label {
  font-size: min(calc(80 / 1080 * 100vw), 80px);
  font-weight: 600;
  font-style: italic;
  line-height: 0.8;
  color: rgba(255, 255, 255, 0.15);
}
@media screen and (max-width: 767px) {
  .cv01-cta__label {
    font-size: calc(100 / 750 * 100vw);
  }
}
.cv01-cta__main {
  display: flex;
  align-items: center;
  gap: min(calc(36 / 1080 * 100vw), 36px);
}
@media screen and (max-width: 767px) {
  .cv01-cta__main {
    flex-direction: column;
    gap: calc(32 / 750 * 100vw);
    width: 100%;
  }
}
.cv01-cta__content {
  display: flex;
}
.cv01-cta__content.--a {
  flex-direction: column;
  align-items: center;
  gap: min(calc(12 / 1080 * 100vw), 12px);
}
@media screen and (max-width: 767px) {
  .cv01-cta__content.--a {
    gap: calc(16 / 750 * 100vw);
  }
}
.cv01-cta__header {
  display: flex;
  flex-direction: column;
  gap: min(calc(8 / 1080 * 100vw), 8px);
}
@media screen and (max-width: 767px) {
  .cv01-cta__header {
    gap: calc(16 / 750 * 100vw);
    width: 100%;
  }
}
.cv01-cta__title {
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 700;
  color: rgb(255, 255, 255);
  letter-spacing: 0.08em;
  line-height: 1.8;
  text-align: center;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .cv01-cta__title {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.8;
  }
}
.cv01-cta__title .--note {
  font-size: min(calc(12 / 1080 * 100vw), 12px);
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .cv01-cta__title .--note {
    font-size: calc(20 / 750 * 100vw);
  }
}
.cv01-cta__options {
  display: flex;
  align-items: center;
  gap: min(calc(8 / 1080 * 100vw), 8px);
}
@media screen and (max-width: 767px) {
  .cv01-cta__options {
    gap: calc(8 / 750 * 100vw);
  }
}
.cv01-option {
  padding: min(calc(4 / 1080 * 100vw), 4px) min(calc(20 / 1080 * 100vw), 20px);
  border-radius: 0;
  font-size: min(calc(16 / 1080 * 100vw), 16px);
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.6;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .cv01-option {
    padding: calc(4 / 750 * 100vw) calc(20 / 750 * 100vw);
    font-size: calc(26 / 750 * 100vw);
    letter-spacing: 0.04em;
    line-height: 1.6;
  }
}
.cv01-option--online {
  background: rgb(255, 255, 255);
  color: rgb(218, 18, 8);
}
.cv01-option--face {
  background: transparent;
  border: 1px solid rgb(255, 255, 255);
  color: rgb(255, 255, 255);
  width: min(calc(123 / 1080 * 100vw), 123px);
}
@media screen and (max-width: 767px) {
  .cv01-option--face {
    width: calc(195 / 750 * 100vw);
  }
}
.cv01-option__or {
  font-size: min(calc(16 / 1080 * 100vw), 16px);
  font-weight: 700;
  color: rgb(255, 255, 255);
  letter-spacing: 0.04em;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .cv01-option__or {
    font-size: calc(26 / 750 * 100vw);
    letter-spacing: 0.04em;
    line-height: 1.6;
  }
}
.cv01 .adlp-btn.--btn04 {
  background: rgb(30, 58, 95);
  border: min(calc(3 / 1080 * 100vw), 3px) solid #fff;
  box-shadow: 0 min(calc(4 / 1080 * 100vw), 4px) min(calc(4 / 1080 * 100vw), 4px) 0 rgba(0, 0, 0, 0.25);
  width: min(calc(452 / 1080 * 100vw), 452px);
  height: min(calc(98 / 1080 * 100vw), 98px);
}
@media screen and (max-width: 767px) {
  .cv01 .adlp-btn.--btn04 {
    border-width: calc(6 / 750 * 100vw);
    box-shadow: 0 calc(4 / 750 * 100vw) calc(4 / 750 * 100vw) 0 rgba(0, 0, 0, 0.25);
    width: calc(610 / 750 * 100vw);
    height: calc(132 / 750 * 100vw);
  }
}
.cv01 .adlp-btn.--btn04::after {
  background: url("../img/pc/cv_arrow1.svg") 0 0/100% no-repeat;
  width: min(calc(26 / 1080 * 100vw), 26px);
  height: min(calc(10 / 1080 * 100vw), 10px);
  right: min(calc(20 / 1080 * 100vw), 20px);
}
@media screen and (max-width: 767px) {
  .cv01 .adlp-btn.--btn04::after {
    background-image: url("../img/sp/cv_arrow1.svg");
    width: calc(39 / 750 * 100vw);
    height: calc(16 / 750 * 100vw);
    right: calc(27 / 750 * 100vw);
  }
}
.cv01-btn__label {
  padding-left: min(calc(43 / 1080 * 100vw), 43px);
  font-size: min(calc(22 / 1080 * 100vw), 22px);
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .cv01-btn__label {
    padding-left: calc(52 / 750 * 100vw);
    font-size: calc(30 / 750 * 100vw);
  }
}
.cv01-btn__free {
  position: absolute;
  top: min(calc(7 / 1080 * 100vw), 7px);
  left: min(calc(7 / 1080 * 100vw), 7px);
  width: min(calc(78 / 1080 * 100vw), 78px);
  height: min(calc(78 / 1080 * 100vw), 78px);
  background: rgb(255, 255, 255);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: min(calc(20 / 1080 * 100vw), 20px);
  font-weight: 700;
  color: rgb(30, 58, 95);
  letter-spacing: 0.08em;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .cv01-btn__free {
    top: calc(9 / 750 * 100vw);
    left: calc(9 / 750 * 100vw);
    width: calc(101 / 750 * 100vw);
    height: calc(101 / 750 * 100vw);
    font-size: calc(32 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.6;
  }
}
.cv01-cta__notice {
  display: flex;
  align-items: center;
  gap: min(calc(4 / 1080 * 100vw), 4px);
  justify-content: center;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .cv01-cta__notice {
    gap: calc(8 / 750 * 100vw);
    margin-top: calc(16 / 750 * 100vw);
  }
}
.cv01-notice__badge {
  width: min(calc(109 / 1080 * 100vw), 109px);
  height: min(calc(38 / 1080 * 100vw), 38px);
  background: url(../img/pc/cv_style1.webp) 50% 50%/100% no-repeat;
}
@media screen and (max-width: 767px) {
  .cv01-notice__badge {
    width: calc(171 / 750 * 100vw);
    height: calc(58 / 750 * 100vw);
    background: url(../img/sp/cv_style1.webp) 50% 50%/100% no-repeat;
  }
}
.cv01-notice__date {
  padding-right: 8%;
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 700;
  color: rgb(255, 255, 255);
  letter-spacing: 0.08em;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .cv01-notice__date {
    margin-top: calc(2 / 750 * 100vw);
    font-size: calc(28 / 750 * 100vw);
  }
}
.cv01-notice__date .--small {
  font-size: min(calc(12 / 1080 * 100vw), 12px);
}
@media screen and (max-width: 767px) {
  .cv01-notice__date .--small {
    font-size: calc(20 / 750 * 100vw);
  }
}
.cv01-notice__text {
  font-size: min(calc(12 / 1080 * 100vw), 12px);
  font-weight: 400;
  color: rgb(255, 255, 255);
  letter-spacing: 0.04em;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .cv01-notice__text {
    font-size: calc(20 / 750 * 100vw);
    letter-spacing: 0.02em;
    line-height: 1.5;
  }
}
.cv01-cta__contact {
  background: rgb(255, 255, 255);
  border-radius: min(calc(24 / 1080 * 100vw), 24px);
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  padding: min(calc(20 / 1080 * 100vw), 20px);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(8 / 1080 * 100vw), 8px);
  width: min(calc(432 / 1080 * 100vw), 432px);
}
@media screen and (max-width: 767px) {
  .cv01-cta__contact {
    border-radius: calc(40 / 750 * 100vw);
    padding: calc(40 / 750 * 100vw) calc(30 / 750 * 100vw);
    gap: calc(8 / 750 * 100vw);
    width: 100%;
  }
}
.cv01-contact__title {
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .cv01-contact__title {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.8;
  }
}
.cv01-contact__number {
  font-size: min(calc(48 / 1080 * 100vw), 48px);
  font-weight: 700;
  color: rgb(30, 58, 95);
  letter-spacing: 0.08em;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .cv01-contact__number {
    font-size: calc(64 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.4;
  }
}
.cv01-contact__number a {
  text-decoration: none;
}
@media screen and (min-width: 768px) {
  .cv01-contact__number a {
    pointer-events: none;
  }
}
.cv01-contact__ruby {
  ruby-align: center;
}
.cv01-contact__ruby rt {
  margin-bottom: max(calc(-10 / 1080 * 100vw), -10px);
  font-size: min(calc(12 / 1080 * 100vw), 12px);
  font-weight: 400;
  color: rgb(30, 58, 95);
  letter-spacing: 0.04em;
}
@media screen and (max-width: 767px) {
  .cv01-contact__ruby rt {
    margin-bottom: calc(-10 / 750 * 100vw);
    font-size: calc(20 / 750 * 100vw);
    letter-spacing: 0.04em;
  }
}
.cv01-contact__hours {
  font-size: min(calc(14 / 1080 * 100vw), 14px);
  font-weight: 400;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .cv01-contact__hours {
    font-size: calc(22 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.8;
  }
}
.cv02 {
  position: relative;
  padding: min(calc(50 / 1080 * 100vw), 50px) 0 min(calc(80 / 1080 * 100vw), 80px);
}
@media screen and (max-width: 767px) {
  .cv02 {
    padding: calc(50 / 750 * 100vw) 0 calc(120 / 750 * 100vw);
  }
}
.cv02-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(10 / 1080 * 100vw), 10px);
  margin-bottom: min(calc(48 / 1080 * 100vw), 48px);
}
@media screen and (max-width: 767px) {
  .cv02-header {
    gap: calc(28 / 750 * 100vw);
    margin-bottom: calc(58 / 750 * 100vw);
  }
}
.cv02-header__label {
  font-size: min(calc(50 / 1080 * 100vw), 50px);
  font-weight: 600;
  font-style: italic;
  line-height: 1.1;
  background: linear-gradient(90deg, #B41108 4.333%, #DA1208 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-align: center;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .cv02-header__label {
    font-size: calc(60 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.cv02-title__text {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .cv02-title__text {
    font-size: calc(56 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.4;
  }
}
.cv02-campaign {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(10 / 1080 * 100vw), 10px);
}
@media screen and (max-width: 767px) {
  .cv02-campaign {
    gap: calc(24 / 750 * 100vw);
  }
}
.cv02-campaign__badge {
  background: rgb(218, 18, 8);
  padding: min(calc(4 / 1080 * 100vw), 4px) min(calc(16 / 1080 * 100vw), 16px);
  border-radius: 0;
}
@media screen and (max-width: 767px) {
  .cv02-campaign__badge {
    padding: calc(4 / 750 * 100vw) calc(16 / 750 * 100vw);
  }
}
.cv02-campaign__text {
  font-size: min(calc(24 / 1080 * 100vw), 24px);
  font-weight: 700;
  color: rgb(255, 255, 255);
  letter-spacing: 0.08em;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .cv02-campaign__text {
    font-size: calc(38 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.4;
  }
}
.cv02-campaign__main {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(16 / 1080 * 100vw), 16px);
}
@media screen and (max-width: 767px) {
  .cv02-campaign__main {
    gap: calc(32 / 750 * 100vw);
  }
}
.cv02-campaign__offer {
  font-size: min(calc(48 / 1080 * 100vw), 48px);
  font-weight: 700;
  color: rgb(180, 17, 8);
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-align: center;
  border-bottom: 1px solid rgb(180, 17, 8);
  padding-bottom: min(calc(4 / 1080 * 100vw), 4px);
}
@media screen and (max-width: 767px) {
  .cv02-campaign__offer {
    font-size: calc(64 / 750 * 100vw);
    padding-bottom: calc(4 / 750 * 100vw);
  }
}
.cv02-cta {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(26 / 1080 * 100vw), 26px);
  width: min(calc(1080 / 1080 * 100vw), 1080px);
  margin: min(calc(40 / 1080 * 100vw), 40px) auto 0;
  padding: 0 min(calc(80 / 1080 * 100vw), 80px) min(calc(50 / 1080 * 100vw), 50px);
  background: linear-gradient(90deg, #B41108 4.333%, #DA1208 100%);
  border-radius: min(calc(64 / 1080 * 100vw), 64px);
}
@media screen and (max-width: 767px) {
  .cv02-cta {
    gap: calc(14 / 750 * 100vw);
    width: calc(750 / 750 * 100vw);
    margin-top: calc(60 / 750 * 100vw);
    padding: 0 calc(60 / 750 * 100vw) calc(80 / 750 * 100vw);
    border-radius: calc(80 / 750 * 100vw);
  }
}
.cv02-cta__label {
  font-size: min(calc(80 / 1080 * 100vw), 80px);
  font-weight: 600;
  font-style: italic;
  line-height: 0.8;
  color: rgba(255, 255, 255, 0.15);
}
@media screen and (max-width: 767px) {
  .cv02-cta__label {
    font-size: calc(100 / 750 * 100vw);
  }
}
.cv02-cta__main {
  display: flex;
  align-items: center;
  gap: min(calc(36 / 1080 * 100vw), 36px);
}
@media screen and (max-width: 767px) {
  .cv02-cta__main {
    flex-direction: column;
    gap: calc(32 / 750 * 100vw);
    width: 100%;
  }
}
.cv02-cta__content {
  display: flex;
}
.cv02-cta__content.--a {
  flex-direction: column;
  align-items: center;
  gap: min(calc(12 / 1080 * 100vw), 12px);
}
@media screen and (max-width: 767px) {
  .cv02-cta__content.--a {
    gap: calc(16 / 750 * 100vw);
  }
}
.cv02-cta__options {
  display: flex;
  align-items: center;
  gap: min(calc(8 / 1080 * 100vw), 8px);
}
@media screen and (max-width: 767px) {
  .cv02-cta__options {
    gap: calc(8 / 750 * 100vw);
  }
}
.cv02-option {
  padding: min(calc(4 / 1080 * 100vw), 4px) min(calc(20 / 1080 * 100vw), 20px);
  border-radius: 0;
  font-size: min(calc(16 / 1080 * 100vw), 16px);
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.6;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .cv02-option {
    padding: calc(4 / 750 * 100vw) calc(20 / 750 * 100vw);
    font-size: calc(26 / 750 * 100vw);
    letter-spacing: 0.04em;
    line-height: 1.6;
  }
}
.cv02-option--online {
  background: rgb(255, 255, 255);
  color: rgb(218, 18, 8);
}
.cv02-option--face {
  background: transparent;
  border: 1px solid rgb(255, 255, 255);
  color: rgb(255, 255, 255);
  width: min(calc(123 / 1080 * 100vw), 123px);
}
@media screen and (max-width: 767px) {
  .cv02-option--face {
    width: calc(195 / 750 * 100vw);
  }
}
.cv02-option__or {
  font-size: min(calc(16 / 1080 * 100vw), 16px);
  font-weight: 700;
  color: rgb(255, 255, 255);
  letter-spacing: 0.04em;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .cv02-option__or {
    font-size: calc(26 / 750 * 100vw);
    letter-spacing: 0.04em;
    line-height: 1.6;
  }
}
.cv02 .adlp-btn.--btn04 {
  background: rgb(30, 58, 95);
  border: min(calc(3 / 1080 * 100vw), 3px) solid #fff;
  box-shadow: 0 min(calc(4 / 1080 * 100vw), 4px) min(calc(4 / 1080 * 100vw), 4px) 0 rgba(0, 0, 0, 0.25);
  width: min(calc(452 / 1080 * 100vw), 452px);
  height: min(calc(98 / 1080 * 100vw), 98px);
}
@media screen and (max-width: 767px) {
  .cv02 .adlp-btn.--btn04 {
    border-width: calc(6 / 750 * 100vw);
    box-shadow: 0 calc(4 / 750 * 100vw) calc(4 / 750 * 100vw) 0 rgba(0, 0, 0, 0.25);
    width: calc(610 / 750 * 100vw);
    height: calc(132 / 750 * 100vw);
  }
}
.cv02 .adlp-btn.--btn04::after {
  background: url("../img/pc/cv_arrow1.svg") 0 0/100% no-repeat;
  width: min(calc(26 / 1080 * 100vw), 26px);
  height: min(calc(10 / 1080 * 100vw), 10px);
  right: min(calc(20 / 1080 * 100vw), 20px);
}
@media screen and (max-width: 767px) {
  .cv02 .adlp-btn.--btn04::after {
    background-image: url("../img/sp/cv_arrow1.svg");
    width: calc(39 / 750 * 100vw);
    height: calc(16 / 750 * 100vw);
    right: calc(27 / 750 * 100vw);
  }
}
.cv02-btn__label {
  padding-left: min(calc(43 / 1080 * 100vw), 43px);
  font-size: min(calc(22 / 1080 * 100vw), 22px);
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .cv02-btn__label {
    padding-left: calc(52 / 750 * 100vw);
    font-size: calc(30 / 750 * 100vw);
  }
}
.cv02-btn__free {
  position: absolute;
  top: min(calc(7 / 1080 * 100vw), 7px);
  left: min(calc(7 / 1080 * 100vw), 7px);
  width: min(calc(78 / 1080 * 100vw), 78px);
  height: min(calc(78 / 1080 * 100vw), 78px);
  background: rgb(255, 255, 255);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: min(calc(20 / 1080 * 100vw), 20px);
  font-weight: 700;
  color: rgb(30, 58, 95);
  letter-spacing: 0.08em;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .cv02-btn__free {
    top: calc(9 / 750 * 100vw);
    left: calc(9 / 750 * 100vw);
    width: calc(101 / 750 * 100vw);
    height: calc(101 / 750 * 100vw);
    font-size: calc(32 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.6;
  }
}
.cv02-cta__contact {
  background: rgb(255, 255, 255);
  border-radius: min(calc(24 / 1080 * 100vw), 24px);
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  padding: min(calc(20 / 1080 * 100vw), 20px);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(8 / 1080 * 100vw), 8px);
  width: min(calc(432 / 1080 * 100vw), 432px);
}
@media screen and (max-width: 767px) {
  .cv02-cta__contact {
    border-radius: calc(40 / 750 * 100vw);
    padding: calc(40 / 750 * 100vw) calc(30 / 750 * 100vw);
    gap: calc(8 / 750 * 100vw);
    width: 100%;
  }
}
.cv02-contact__title {
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .cv02-contact__title {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.8;
  }
}
.cv02-contact__number {
  font-size: min(calc(48 / 1080 * 100vw), 48px);
  font-weight: 700;
  color: rgb(30, 58, 95);
  letter-spacing: 0.08em;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .cv02-contact__number {
    font-size: calc(64 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.4;
  }
}
.cv02-contact__number a {
  text-decoration: none;
}
@media screen and (min-width: 768px) {
  .cv02-contact__number a {
    pointer-events: none;
  }
}
.cv02-contact__ruby {
  ruby-align: center;
}
.cv02-contact__ruby rt {
  margin-bottom: max(calc(-10 / 1080 * 100vw), -10px);
  font-size: min(calc(12 / 1080 * 100vw), 12px);
  font-weight: 400;
  color: rgb(30, 58, 95);
  letter-spacing: 0.04em;
}
@media screen and (max-width: 767px) {
  .cv02-contact__ruby rt {
    margin-bottom: calc(-10 / 750 * 100vw);
    font-size: calc(20 / 750 * 100vw);
    letter-spacing: 0.04em;
  }
}
.cv02-contact__hours {
  font-size: min(calc(14 / 1080 * 100vw), 14px);
  font-weight: 400;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .cv02-contact__hours {
    font-size: calc(22 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.8;
  }
}

.fv {
  position: relative;
  background: url(../img/pc/fva.webp) 50% 0/100% no-repeat;
  height: min(calc(700 / 1080 * 100vw), 700px);
  padding-top: min(calc(64 / 1080 * 100vw), 64px);
}
@media screen and (max-width: 767px) {
  .fv {
    background: url(../img/sp/fva.webp) 50% 0/100% no-repeat;
    height: calc(1434 / 750 * 100vw);
    padding-top: calc(227 / 750 * 100vw);
  }
}
.fv__content {
  width: min(calc(920 / 1080 * 100vw), 920px);
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .fv__content {
    width: 100%;
  }
}
.fv__subtitle {
  font-size: min(calc(24 / 1080 * 100vw), 24px);
  font-weight: 900;
  color: #000000;
  line-height: 1.6;
  letter-spacing: 0.08em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .fv__subtitle {
    font-size: calc(36 / 750 * 100vw);
  }
}
.fv__title {
  display: block;
  font-size: min(calc(46 / 1080 * 100vw), 46px);
  font-weight: 900;
  color: #ffffff;
  letter-spacing: 0.08em;
  line-height: 1.5;
  text-align: center;
  margin-top: min(calc(60 / 1080 * 100vw), 60px);
}
@media screen and (max-width: 767px) {
  .fv__title {
    font-size: calc(66 / 750 * 100vw);
    margin-top: calc(62 / 750 * 100vw);
  }
}
.fv__badges {
  display: flex;
  gap: min(calc(10 / 1080 * 100vw), 10px);
  justify-content: center;
  margin-top: min(calc(48 / 1080 * 100vw), 48px);
}
@media screen and (max-width: 767px) {
  .fv__badges {
    gap: calc(10 / 750 * 100vw);
    margin-top: calc(206 / 750 * 100vw);
  }
}
.fv__badges picture {
  width: min(calc(154 / 1080 * 100vw), 154px);
  height: min(calc(155 / 1080 * 100vw), 155px);
  filter: drop-shadow(0 min(calc(2 / 1080 * 100vw), 2px) min(calc(7 / 1080 * 100vw), 7px) rgba(68, 68, 68, 0.1));
}
@media screen and (max-width: 767px) {
  .fv__badges picture {
    width: calc(219 / 750 * 100vw);
    height: calc(220 / 750 * 100vw);
  }
}
.fv__note {
  font-size: min(calc(12 / 1080 * 100vw), 12px);
  font-weight: 400;
  color: #666666;
  letter-spacing: 0.1em;
  line-height: 1.2;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .fv__note {
    margin-top: min(calc(20 / 1080 * 100vw), 20px);
    padding-right: calc(30 / 750 * 100vw);
    font-size: calc(20 / 750 * 100vw);
  }
}
.fv__copy-text {
  font-size: min(calc(20 / 1080 * 100vw), 20px);
  font-weight: 700;
  color: #e50113;
  letter-spacing: 0.08em;
  line-height: 1.6;
  text-align: center;
  margin-top: min(calc(14 / 1080 * 100vw), 14px);
}
@media screen and (max-width: 767px) {
  .fv__copy-text {
    font-size: calc(32 / 750 * 100vw);
    margin-top: calc(42 / 750 * 100vw);
  }
}
.fv__logo {
  width: min(calc(272 / 1080 * 100vw), 272px);
  height: min(calc(29 / 1080 * 100vw), 29px);
  margin: min(calc(8 / 1080 * 100vw), 8px) auto 0;
}
@media screen and (max-width: 767px) {
  .fv__logo {
    width: calc(440 / 750 * 100vw);
    height: calc(47 / 750 * 100vw);
    margin: calc(16 / 750 * 100vw) auto 0;
  }
}
.fv__buttons {
  display: flex;
  align-items: center;
  gap: min(calc(8 / 1080 * 100vw), 8px);
  justify-content: center;
  margin-top: min(calc(30 / 1080 * 100vw), 30px);
}
@media screen and (max-width: 767px) {
  .fv__buttons {
    gap: calc(8 / 750 * 100vw);
    margin-top: calc(50 / 750 * 100vw);
  }
}
.fv__button {
  width: min(calc(133 / 1080 * 100vw), 133px);
  border-radius: 999px;
  padding: min(calc(2 / 1080 * 100vw), 2px) min(calc(20 / 1080 * 100vw), 20px);
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.6;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .fv__button {
    width: calc(195 / 750 * 100vw);
    padding: calc(4 / 750 * 100vw) calc(20 / 750 * 100vw);
    font-size: calc(30 / 750 * 100vw);
  }
}
.fv__button--primary {
  background: #da1208;
  color: #ffffff;
}
.fv__button--secondary {
  background: transparent;
  color: #da1208;
  border: min(calc(1 / 1080 * 100vw), 1px) solid #da1208;
  padding: min(calc(1 / 1080 * 100vw), 1px) min(calc(20 / 1080 * 100vw), 20px);
}
@media screen and (max-width: 767px) {
  .fv__button--secondary {
    padding: calc(3 / 750 * 100vw) calc(20 / 750 * 100vw);
    border-width: calc(2 / 750 * 100vw);
  }
}
.fv.--b {
  background: url(../img/pc/fvb.webp) 50% 0/100% no-repeat;
  padding-top: min(calc(44 / 1080 * 100vw), 44px);
}
@media screen and (max-width: 767px) {
  .fv.--b {
    background: url(../img/sp/fvb.webp) 50% 0/100% no-repeat;
    padding-top: calc(227 / 750 * 100vw);
  }
}
@media screen and (max-width: 767px) {
  .fv.--b .fv__subtitle {
    margin-bottom: 0;
    padding-bottom: calc(14 / 750 * 100vw);
  }
}
.fv.--b .fv__title-sub {
  display: block;
  font-size: min(calc(30 / 1080 * 100vw), 30px);
  font-weight: 900;
  color: #ffffff;
  letter-spacing: 0.08em;
  line-height: 1.7;
  text-align: center;
  margin-top: min(calc(49 / 1080 * 100vw), 49px);
}
@media screen and (max-width: 767px) {
  .fv.--b .fv__title-sub {
    font-size: calc(46 / 750 * 100vw);
    margin-top: calc(62 / 750 * 100vw);
  }
}
.fv.--b .fv__title {
  display: block;
  margin-top: min(calc(3 / 1080 * 100vw), 3px);
  font-size: min(calc(46 / 1080 * 100vw), 46px);
  font-weight: 900;
  color: #ffffff;
  letter-spacing: 0.08em;
  line-height: 0.9;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .fv.--b .fv__title {
    margin-top: calc(12 / 750 * 100vw);
    font-size: calc(66 / 750 * 100vw);
  }
}
.fv.--b .fv__title-and {
  display: block;
  font-size: min(calc(36 / 1080 * 100vw), 36px);
  font-weight: 900;
  color: #ffffff;
  letter-spacing: 0.08em;
  line-height: 0.8;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .fv.--b .fv__title-and {
    line-height: 1.1;
    font-size: calc(56 / 750 * 100vw);
  }
}

.sec01 {
  position: relative;
  padding: min(calc(60 / 1080 * 100vw), 60px) 0 min(calc(20 / 1080 * 100vw), 20px);
}
@media screen and (max-width: 767px) {
  .sec01 {
    padding: calc(63 / 750 * 100vw) 0 calc(45 / 750 * 100vw);
  }
}
.sec01::before {
  content: "";
  position: absolute;
  top: 0;
  right: min(calc(292 / 1080 * 100vw), 292px);
  width: min(calc(256 / 1080 * 100vw), 256px);
  height: min(calc(256 / 1080 * 100vw), 256px);
  background: linear-gradient(90deg, #fffaea 0%, #ffffff 100%);
  border-radius: 50%;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .sec01::before {
    right: calc(-179 / 750 * 100vw);
    width: calc(358 / 750 * 100vw);
    height: calc(358 / 750 * 100vw);
  }
}
.sec01::after {
  content: "";
  position: absolute;
  top: 0;
  left: min(calc(292 / 1080 * 100vw), 292px);
  width: min(calc(256 / 1080 * 100vw), 256px);
  height: min(calc(256 / 1080 * 100vw), 256px);
  background: linear-gradient(90deg, #fffaea 0%, #ffffff 100%);
  border-radius: 50%;
  transform: scaleY(-1) rotate(180deg);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .sec01::after {
    left: calc(-179 / 750 * 100vw);
    width: calc(358 / 750 * 100vw);
    height: calc(358 / 750 * 100vw);
  }
}
.sec01__title {
  text-align: center;
  margin-bottom: min(calc(70 / 1080 * 100vw), 70px);
}
@media screen and (max-width: 767px) {
  .sec01__title {
    margin-bottom: calc(110 / 750 * 100vw);
  }
}
.sec01__title-sub {
  font-size: min(calc(24 / 1080 * 100vw), 24px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  line-height: 1.4;
  letter-spacing: 0.08em;
  margin-bottom: min(calc(8 / 1080 * 100vw), 8px);
}
@media screen and (max-width: 767px) {
  .sec01__title-sub {
    font-size: calc(38 / 750 * 100vw);
    letter-spacing: 0.08em;
    margin-bottom: calc(16 / 750 * 100vw);
  }
}
.sec01__title-main {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  line-height: 1.4;
  letter-spacing: 0.08em;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: min(calc(4 / 1080 * 100vw), 4px);
}
@media screen and (max-width: 767px) {
  .sec01__title-main {
    display: block;
    font-size: calc(56 / 750 * 100vw);
    flex-direction: column;
    gap: calc(8 / 750 * 100vw);
  }
}
.sec01__title-main .--accent {
  color: rgb(218, 18, 8);
}
.sec01__content {
  position: relative;
  max-width: min(calc(1920 / 1080 * 100vw), 1920px);
  margin: 0 auto;
  padding: 0 min(calc(420 / 1080 * 100vw), 420px);
}
@media screen and (max-width: 767px) {
  .sec01__content {
    padding: 0;
  }
}
.sec01__card-group {
  position: relative;
}
@media screen and (max-width: 767px) {
  .sec01__card-group {
    display: flex;
    flex-direction: column;
    gap: calc(-340 / 750 * 100vw);
  }
}
.sec01__card {
  position: relative;
  width: min(calc(1080 / 1080 * 100vw), 1080px);
  display: flex;
  align-items: center;
  gap: min(calc(30 / 1080 * 100vw), 30px);
  padding: min(calc(62 / 1080 * 100vw), 62px) min(calc(80 / 1080 * 100vw), 80px) min(calc(176 / 1080 * 100vw), 176px);
  border-radius: min(calc(80 / 1080 * 100vw), 80px) min(calc(80 / 1080 * 100vw), 80px) 0 0;
}
@media screen and (max-width: 767px) {
  .sec01__card {
    width: calc(750 / 750 * 100vw);
    flex-direction: column;
    gap: calc(48 / 750 * 100vw);
    padding: calc(72 / 750 * 100vw) calc(96 / 750 * 100vw) calc(176 / 750 * 100vw) calc(60 / 750 * 100vw);
    border-radius: calc(80 / 750 * 100vw) calc(80 / 750 * 100vw) 0 0;
  }
}
.sec01__card.--card01 {
  background: linear-gradient(to right, #d5d5d5 0%, #e9e9e9 102.53%);
}
.sec01__card.--card02 {
  background: linear-gradient(to right, #dddddd 0%, #f0f0f0 100%);
  margin-top: max(calc(-136 / 1080 * 100vw), -136px);
}
@media screen and (max-width: 767px) {
  .sec01__card.--card02 {
    margin-top: calc(-120 / 750 * 100vw);
  }
}
.sec01__card.--card03 {
  background: linear-gradient(to right, #efefef 0%, #fcfbfb 100%);
  border-radius: min(calc(80 / 1080 * 100vw), 80px);
  margin-top: max(calc(-136 / 1080 * 100vw), -136px);
  padding-bottom: min(calc(80 / 1080 * 100vw), 80px);
}
@media screen and (max-width: 767px) {
  .sec01__card.--card03 {
    border-radius: calc(80 / 750 * 100vw);
    margin-top: calc(-120 / 750 * 100vw);
    padding-bottom: calc(120 / 750 * 100vw);
  }
}
.sec01__card.--card03::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translate(-50%);
  bottom: max(calc(-20 / 1080 * 100vw), -20px);
  width: 1px;
  height: calc(45 / 750 * 100vw);
  background: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec01__card.--card03::after {
    bottom: calc(-45 / 750 * 100vw);
    height: calc(89 / 750 * 100vw);
  }
}
.sec01__card-inner {
  flex: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: min(calc(8 / 1080 * 100vw), 8px);
}
@media screen and (max-width: 767px) {
  .sec01__card-inner {
    gap: calc(40 / 750 * 100vw);
  }
}
.sec01__card-header {
  display: flex;
  align-items: center;
  gap: min(calc(20 / 1080 * 100vw), 20px);
}
@media screen and (max-width: 767px) {
  .sec01__card-header {
    gap: calc(16 / 750 * 100vw);
  }
}
.sec01__card-number {
  font-size: min(calc(48 / 1080 * 100vw), 48px);
  font-weight: 600;
  font-style: italic;
  color: rgb(51, 51, 51);
  line-height: 1;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 767px) {
  .sec01__card-number {
    font-size: calc(64 / 750 * 100vw);
    letter-spacing: 0.04em;
  }
}
.sec01__card-title {
  font-size: min(calc(24 / 1080 * 100vw), 24px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  line-height: 1.3;
  letter-spacing: 0.08em;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .sec01__card-title {
    font-size: calc(38 / 750 * 100vw);
    line-height: 1.3;
    letter-spacing: 0.08em;
  }
}
.sec01__card-line {
  position: relative;
  width: 100%;
  height: 0;
}
.sec01__card-line::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: min(calc(1 / 1080 * 100vw), 1px);
  background: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec01__card-line::after {
    height: calc(1 / 750 * 100vw);
  }
}
.sec01__card-subtitle {
  font-size: min(calc(24 / 1080 * 100vw), 24px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  line-height: 1.4;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .sec01__card-subtitle {
    font-size: calc(38 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec01__card-content {
  flex: 1;
  display: flex;
  gap: min(calc(16 / 1080 * 100vw), 16px);
  align-items: center;
}
@media screen and (max-width: 767px) {
  .sec01__card-content {
    gap: calc(32 / 750 * 100vw);
    align-items: flex-start;
  }
}
.sec01__card-image {
  flex-shrink: 0;
  width: min(calc(158 / 1080 * 100vw), 158px);
  height: min(calc(158 / 1080 * 100vw), 158px);
}
@media screen and (max-width: 767px) {
  .sec01__card-image {
    width: calc(228 / 750 * 100vw);
    height: calc(228 / 750 * 100vw);
  }
}
.sec01__card-image img {
  border-radius: min(calc(24 / 1080 * 100vw), 24px);
}
@media screen and (max-width: 767px) {
  .sec01__card-image img {
    border-radius: calc(24 / 750 * 100vw);
  }
}
.sec01__card-desc {
  flex: 1;
  font-size: min(calc(16 / 1080 * 100vw), 16px);
  font-weight: 400;
  color: rgb(51, 51, 51);
  line-height: 1.8;
  letter-spacing: 0.08em;
  text-align: justify;
}
@media screen and (max-width: 767px) {
  .sec01__card-desc {
    font-size: calc(26 / 750 * 100vw);
  }
}
.sec01__card-label {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  font-weight: 600;
  font-style: italic;
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: rgb(255, 255, 255);
  text-align: right;
}
@media screen and (max-width: 767px) {
  .sec01__card-label {
    position: absolute;
    top: calc(72 / 750 * 100vw);
    right: 0;
    font-size: calc(56 / 750 * 100vw);
    writing-mode: vertical-rl;
  }
}
.--card03 .sec01__card-label {
  color: #d1d1d1;
}

.sec02 {
  position: relative;
  background: url(../img/pc/sec02.webp) 50% 0/100% no-repeat;
  height: min(calc(700 / 1080 * 100vw), 700px);
  padding-top: min(calc(260 / 1080 * 100vw), 260px);
}
@media screen and (max-width: 767px) {
  .sec02 {
    background: url(../img/sp/sec02.webp) 50% 0/100% no-repeat;
    height: calc(1234 / 750 * 100vw);
    padding-top: calc(90 / 750 * 100vw);
  }
}
.sec02::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  height: min(calc(40 / 1080 * 100vw), 40px);
  background: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec02::after {
    height: calc(50 / 750 * 100vw);
  }
}
.sec02__content {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min(calc(105 / 1080 * 100vw), 105px);
  width: min(calc(1080 / 1080 * 100vw), 1080px);
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .sec02__content {
    flex-direction: column;
    gap: calc(266 / 750 * 100vw);
  }
}
.sec02__text-upper {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(8 / 1080 * 100vw), 8px);
}
@media screen and (max-width: 767px) {
  .sec02__text-upper {
    gap: calc(8 / 750 * 100vw);
  }
}
.sec02__text-upper p {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec02__text-upper p {
    font-size: calc(48 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec02__inline-elements {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min(calc(8 / 1080 * 100vw), 8px);
}
@media screen and (max-width: 767px) {
  .sec02__inline-elements {
    gap: calc(16 / 750 * 100vw);
  }
}
.sec02__badge {
  background: rgb(30, 58, 95);
  padding: 0 min(calc(8 / 1080 * 100vw), 8px) min(calc(4 / 1080 * 100vw), 4px);
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .sec02__badge {
    padding: 0 calc(16 / 750 * 100vw) calc(4 / 750 * 100vw);
  }
}
.sec02__badge span {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: rgb(255, 255, 255);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec02__badge span {
    font-size: calc(48 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec02__connector {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec02__connector {
    font-size: calc(48 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec02__text-lower {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(12 / 1080 * 100vw), 12px);
  width: min(calc(570 / 1080 * 100vw), 570px);
}
@media screen and (max-width: 767px) {
  .sec02__text-lower {
    gap: calc(32 / 750 * 100vw);
    width: 100%;
  }
}
.sec02__text-lower p {
  text-align: center;
  font-weight: 700;
  color: rgb(51, 51, 51);
}
.sec02__text-lower p:first-child {
  font-size: min(calc(30 / 1080 * 100vw), 30px);
  line-height: 1.4;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .sec02__text-lower p:first-child {
    font-size: calc(42 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec02__text-lower p:nth-child(2) {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  line-height: 1.1;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .sec02__text-lower p:nth-child(2) {
    font-size: calc(48 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec02__company {
  font-size: min(calc(48 / 1080 * 100vw), 48px);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.08em;
  background: linear-gradient(137deg, rgb(218, 18, 8) 0%, rgb(180, 17, 8) 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec02__company {
    font-size: calc(48 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}

.sec03 {
  position: relative;
}
.sec03__content-upper {
  width: min(calc(920 / 1080 * 100vw), 920px);
  height: min(calc(266 / 1080 * 100vw), 266px);
  margin: 0 auto;
  background: url(../img/pc/sec03_head.webp) 50% 0/100% no-repeat;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec03__content-upper {
    background: url(../img/sp/sec03_head.webp) 50% 0/100% no-repeat;
    width: calc(690 / 750 * 100vw);
    height: calc(377 / 750 * 100vw);
  }
}
.sec03__content-upper-inner {
  width: fit-content;
  margin: 0 auto;
}
.sec03__achievements {
  font-size: min(calc(70 / 1080 * 100vw), 70px);
  font-weight: 600;
  font-style: italic;
  line-height: 0.8;
  letter-spacing: 0.08em;
  color: rgb(255, 255, 255);
  opacity: 0.25;
  margin-bottom: min(calc(14 / 1080 * 100vw), 14px);
}
@media screen and (max-width: 767px) {
  .sec03__achievements {
    font-size: calc(90 / 750 * 100vw);
    letter-spacing: 0.06em;
    margin-bottom: calc(26 / 750 * 100vw);
  }
}
.sec03__stat-line1 {
  width: fit-content;
  margin: 0 auto;
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: rgb(255, 255, 255);
}
@media screen and (max-width: 767px) {
  .sec03__stat-line1 {
    font-size: calc(48 / 750 * 100vw);
  }
}
.sec03__stat-line1 span:nth-child(2) {
  font-size: min(calc(48 / 1080 * 100vw), 48px);
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .sec03__stat-line1 span:nth-child(2) {
    font-size: calc(64 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec03__stat-line2 {
  position: relative;
  width: fit-content;
  margin: 0 auto;
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: rgb(255, 255, 255);
}
@media screen and (max-width: 767px) {
  .sec03__stat-line2 {
    font-size: calc(48 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec03__stat-line2 span:nth-child(2) {
  font-size: min(calc(48 / 1080 * 100vw), 48px);
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .sec03__stat-line2 span:nth-child(2) {
    font-size: calc(64 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec03__stat-note {
  position: absolute;
  top: min(calc(14 / 1080 * 100vw), 14px);
  right: max(calc(-14 / 1080 * 100vw), -14px);
  font-size: min(calc(12 / 1080 * 100vw), 12px);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: rgb(255, 255, 255);
}
@media screen and (max-width: 767px) {
  .sec03__stat-note {
    top: calc(14 / 750 * 100vw);
    right: calc(-14 / 750 * 100vw);
    font-size: calc(20 / 750 * 100vw);
  }
}
.sec03__stat-reference {
  margin-top: min(calc(16 / 1080 * 100vw), 16px);
  font-size: min(calc(12 / 1080 * 100vw), 12px);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: rgb(255, 255, 255);
  text-align: right;
}
@media screen and (max-width: 767px) {
  .sec03__stat-reference {
    margin-top: calc(30 / 750 * 100vw);
    font-size: calc(20 / 750 * 100vw);
  }
}
.sec03__content-lower {
  position: relative;
  text-align: center;
  margin: min(calc(50 / 1080 * 100vw), 50px) 0;
}
@media screen and (max-width: 767px) {
  .sec03__content-lower {
    margin: calc(60 / 750 * 100vw) 0 calc(74 / 750 * 100vw);
  }
}
.sec03__content-lower::after {
  content: "";
  position: absolute;
  bottom: max(calc(-90 / 1080 * 100vw), -90px);
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  height: min(calc(80 / 1080 * 100vw), 80px);
  background: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec03__content-lower::after {
    bottom: calc(-144 / 750 * 100vw);
    height: calc(120 / 750 * 100vw);
  }
}
.sec03__closing-title {
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
  margin-bottom: min(calc(12 / 1080 * 100vw), 12px);
}
@media screen and (max-width: 767px) {
  .sec03__closing-title {
    letter-spacing: 0.08em;
    margin-bottom: calc(24 / 750 * 100vw);
  }
}
.sec03__closing-title span:first-child {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
}
@media screen and (max-width: 767px) {
  .sec03__closing-title span:first-child {
    font-size: calc(48 / 750 * 100vw);
  }
}
.sec03__closing-highlight {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .sec03__closing-highlight {
    font-size: calc(56 / 750 * 100vw);
    letter-spacing: 0.09em;
  }
}
.sec03__content-middle {
  background: linear-gradient(0deg, rgb(255, 255, 255) 61.76%, rgb(255, 247, 221) 100%);
  margin: 0 auto;
  width: min(calc(1080 / 1080 * 100vw), 1080px);
  border-radius: min(calc(64 / 1080 * 100vw), 64px) min(calc(64 / 1080 * 100vw), 64px) 0 0;
  padding: min(calc(70 / 1080 * 100vw), 70px) 0 min(calc(80 / 1080 * 100vw), 80px);
}
@media screen and (max-width: 767px) {
  .sec03__content-middle {
    border-radius: calc(80 / 750 * 100vw) calc(80 / 750 * 100vw) 0 0;
    padding: calc(126 / 750 * 100vw) 0 calc(120 / 750 * 100vw);
  }
}
.sec03__middle-inner {
  width: min(calc(920 / 1080 * 100vw), 920px);
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .sec03__middle-inner {
    width: 100%;
    padding: 0 calc(60 / 750 * 100vw);
  }
}
.sec03__intro {
  text-align: center;
  margin-bottom: min(calc(40 / 1080 * 100vw), 40px);
}
@media screen and (max-width: 767px) {
  .sec03__intro {
    margin-bottom: calc(40 / 750 * 100vw);
  }
}
.sec03__intro-text {
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
  margin-bottom: min(calc(12 / 1080 * 100vw), 12px);
}
@media screen and (max-width: 767px) {
  .sec03__intro-text {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.08em;
    margin-bottom: calc(24 / 750 * 100vw);
  }
}
.sec03__intro-badge {
  display: inline-block;
  background: linear-gradient(137deg, rgb(218, 18, 8) 0%, rgb(180, 17, 8) 100%);
  padding: min(calc(2 / 1080 * 100vw), 2px) min(calc(8 / 1080 * 100vw), 8px);
  font-size: min(calc(30 / 1080 * 100vw), 30px);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: rgb(255, 255, 255);
  margin-bottom: min(calc(12 / 1080 * 100vw), 12px);
}
@media screen and (max-width: 767px) {
  .sec03__intro-badge {
    padding: calc(4 / 750 * 100vw) calc(16 / 750 * 100vw);
    font-size: calc(42 / 750 * 100vw);
    letter-spacing: 0.08em;
    margin-bottom: calc(24 / 750 * 100vw);
  }
}
.sec03__intro-title {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec03__intro-title {
    font-size: calc(48 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec03__explanation {
  position: relative;
  text-align: center;
  margin-bottom: min(calc(33 / 1080 * 100vw), 33px);
}
@media screen and (max-width: 767px) {
  .sec03__explanation {
    margin-bottom: calc(70 / 750 * 100vw);
  }
}
.sec03__explanation::before {
  content: "";
  position: absolute;
  top: max(calc(-20 / 1080 * 100vw), -20px);
  left: 0;
  right: 0;
  height: 1px;
  background: rgb(218, 18, 8);
}
@media screen and (max-width: 767px) {
  .sec03__explanation::before {
    height: 2px;
    top: calc(-20 / 750 * 100vw);
  }
}
.sec03__explanation-text {
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
  width: min(calc(630 / 1080 * 100vw), 630px);
  margin: 0 auto min(calc(16 / 1080 * 100vw), 16px);
}
@media screen and (max-width: 767px) {
  .sec03__explanation-text {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.08em;
    width: calc(630 / 750 * 100vw);
    margin: 0 auto calc(24 / 750 * 100vw);
  }
}
.sec03__training-types {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: min(calc(16 / 1080 * 100vw), 16px);
}
@media screen and (max-width: 767px) {
  .sec03__training-types {
    flex-direction: column;
    margin-bottom: calc(24 / 750 * 100vw);
  }
}
.sec03__training-type {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: min(calc(4 / 1080 * 100vw), 4px);
  margin-bottom: min(calc(4 / 1080 * 100vw), 4px);
}
@media screen and (max-width: 767px) {
  .sec03__training-type {
    gap: calc(8 / 750 * 100vw);
    margin-bottom: calc(4 / 750 * 100vw);
  }
}
.sec03__training-name {
  font-size: min(calc(24 / 1080 * 100vw), 24px);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec03__training-name {
    font-size: calc(38 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec03__training-desc {
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec03__training-desc {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec03__explanation-conclusion {
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
  width: min(calc(630 / 1080 * 100vw), 630px);
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .sec03__explanation-conclusion {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.08em;
    width: calc(630 / 750 * 100vw);
  }
}
.sec03__explanation-highlight {
  font-weight: 700;
}
.sec03__tp {
  display: flex;
  gap: min(calc(70 / 1080 * 100vw), 70px);
}
@media screen and (max-width: 767px) {
  .sec03__tp {
    flex-direction: column;
    gap: calc(70 / 750 * 100vw);
  }
}
.sec03__tp-illustration {
  display: flex;
  background: url(../img/pc/sec03_img1.webp) 50% 0/100% no-repeat;
  width: min(calc(470 / 1080 * 100vw), 470px);
  height: min(calc(482 / 1080 * 100vw), 482px);
}
@media screen and (max-width: 767px) {
  .sec03__tp-illustration {
    background: url(../img/sp/sec03_img1.webp) 50% 0/100% no-repeat;
    width: calc(750 / 750 * 100vw);
    height: calc(770 / 750 * 100vw);
  }
}
.sec03__theory-section {
  flex: 1;
  padding: min(calc(12 / 1080 * 100vw), 12px) min(calc(22 / 1080 * 100vw), 22px) 0;
}
@media screen and (max-width: 767px) {
  .sec03__theory-section {
    padding: calc(24 / 750 * 100vw) calc(30 / 750 * 100vw) 0;
  }
}
.sec03__theory-desc {
  margin-top: min(calc(240 / 1080 * 100vw), 240px);
  font-size: min(calc(14 / 1080 * 100vw), 14px);
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.06em;
  color: rgb(255, 255, 255);
  text-align: justify;
  margin-bottom: min(calc(4 / 1080 * 100vw), 4px);
}
@media screen and (max-width: 767px) {
  .sec03__theory-desc {
    margin-top: calc(390 / 750 * 100vw);
    font-size: calc(22 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec03__theory-title {
  font-size: min(calc(22 / 1080 * 100vw), 22px);
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 0.08em;
  color: rgb(255, 255, 255);
}
@media screen and (max-width: 767px) {
  .sec03__theory-title {
    font-size: calc(34 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec03__practice-section {
  flex: 1;
  padding: min(calc(12 / 1080 * 100vw), 12px) min(calc(22 / 1080 * 100vw), 22px) 0;
}
@media screen and (max-width: 767px) {
  .sec03__practice-section {
    padding: calc(24 / 750 * 100vw) calc(30 / 750 * 100vw) 0;
  }
}
.sec03__practice-desc {
  margin-top: min(calc(270 / 1080 * 100vw), 270px);
  font-size: min(calc(14 / 1080 * 100vw), 14px);
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: rgb(255, 255, 255);
  text-align: justify;
}
@media screen and (max-width: 767px) {
  .sec03__practice-desc {
    margin-top: calc(440 / 750 * 100vw);
    font-size: calc(22 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec03__practice-title {
  font-size: min(calc(22 / 1080 * 100vw), 22px);
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 0.08em;
  color: rgb(255, 255, 255);
}
@media screen and (max-width: 767px) {
  .sec03__practice-title {
    font-size: calc(34 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec03__tp-label-theory {
  font-style: italic;
  text-align: center;
}
.sec03__tp-label-practice {
  margin-top: min(calc(44 / 1080 * 100vw), 44px);
  font-style: italic;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec03__tp-label-practice {
    margin-top: calc(70 / 750 * 100vw);
  }
}
.sec03__tp-label-large {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec03__tp-label-large {
    font-size: calc(48 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec03__tp-label-small {
  font-size: min(calc(22 / 1080 * 100vw), 22px);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec03__tp-label-small {
    font-size: calc(34 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec03__progression {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: max(calc(-8 / 1080 * 100vw), -8px);
  margin: min(calc(50 / 1080 * 100vw), 50px) 0 min(calc(30 / 1080 * 100vw), 30px);
}
@media screen and (max-width: 767px) {
  .sec03__progression {
    gap: calc(-8 / 750 * 100vw);
    margin: 0 0 calc(60 / 750 * 100vw);
  }
}
.sec03__progression-item {
  position: relative;
}
.sec03__progression-item.--beginner .sec03__progression-circle {
  background: rgba(58, 139, 220, 0.15);
  border: 1px solid rgb(58, 139, 220);
}
@media screen and (max-width: 767px) {
  .sec03__progression-item.--beginner .sec03__progression-circle {
    border-width: 2px;
  }
}
.sec03__progression-item.--beginner .sec03__progression-level,
.sec03__progression-item.--beginner .sec03__progression-desc {
  color: rgb(58, 139, 220);
}
.sec03__progression-item.--advanced .sec03__progression-circle {
  background: rgba(180, 17, 8, 0.15);
  border: 1px solid rgb(180, 17, 8);
}
@media screen and (max-width: 767px) {
  .sec03__progression-item.--advanced .sec03__progression-circle {
    border-width: 1px;
  }
}
.sec03__progression-item.--advanced .sec03__progression-level,
.sec03__progression-item.--advanced .sec03__progression-desc {
  color: rgb(180, 17, 8);
}
.sec03__progression-circle {
  width: min(calc(198 / 1080 * 100vw), 198px);
  height: min(calc(198 / 1080 * 100vw), 198px);
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: min(calc(4 / 1080 * 100vw), 4px);
}
@media screen and (max-width: 767px) {
  .sec03__progression-circle {
    width: calc(269 / 750 * 100vw);
    height: calc(268 / 750 * 100vw);
    gap: calc(8 / 750 * 100vw);
  }
}
.sec03__progression-level {
  font-size: min(calc(30 / 1080 * 100vw), 30px);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .sec03__progression-level {
    font-size: calc(42 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec03__progression-desc {
  font-size: min(calc(14 / 1080 * 100vw), 14px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.08em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec03__progression-desc {
    font-size: calc(22 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec03__progression-connector {
  font-size: min(calc(16 / 1080 * 100vw), 16px);
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
  margin: 0 max(calc(-8 / 1080 * 100vw), -8px);
}
@media screen and (max-width: 767px) {
  .sec03__progression-connector {
    font-size: calc(26 / 750 * 100vw);
    letter-spacing: 0.08em;
    margin: 0 calc(-8 / 750 * 100vw);
  }
}
.sec03__efficiency {
  position: relative;
  border: 1px solid rgb(51, 51, 51);
  padding: min(calc(36 / 1080 * 100vw), 36px) 0;
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  font-weight: 700;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec03__efficiency {
    width: calc(630 / 750 * 100vw);
    margin: 0 auto;
    padding: calc(50 / 750 * 100vw) 0;
    font-size: calc(48 / 750 * 100vw);
  }
}
.sec03__efficiency > div {
  position: relative;
  z-index: 2;
  line-height: 1.4;
}
.sec03__efficiency::before, .sec03__efficiency::after {
  content: "";
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  right: 0;
  width: calc(100% + 4px);
  height: min(calc(58 / 1080 * 100vw), 58px);
}
@media screen and (max-width: 767px) {
  .sec03__efficiency::before, .sec03__efficiency::after {
    height: calc(80 / 750 * 100vw);
  }
}
.sec03__efficiency::after {
  width: min(calc(323 / 1080 * 100vw), 323px);
  height: calc(100% + 4px);
}
@media screen and (max-width: 767px) {
  .sec03__efficiency::after {
    width: calc(462 / 750 * 100vw);
    border-width: 2px 2px 0 0;
  }
}

.sec04 {
  position: relative;
  background: rgb(245, 245, 245);
}
.sec04__header {
  text-align: center;
  padding: min(calc(80 / 1080 * 100vw), 80px) 0 min(calc(70 / 1080 * 100vw), 70px);
}
@media screen and (max-width: 767px) {
  .sec04__header {
    padding: calc(120 / 750 * 100vw) 0;
  }
}
.sec04__reason {
  background: linear-gradient(137deg, rgb(218, 18, 8) 0%, rgb(180, 17, 8) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 600;
  font-style: italic;
  line-height: 0.9;
  margin-bottom: min(calc(36 / 1080 * 100vw), 36px);
  font-size: min(calc(50 / 1080 * 100vw), 50px);
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .sec04__reason {
    font-size: calc(60 / 750 * 100vw);
    letter-spacing: 0.08em;
    margin-bottom: calc(56 / 750 * 100vw);
  }
}
.sec04__header-inner {
  width: fit-content;
  margin: 0 auto;
}
.sec04__question {
  display: block;
  font-weight: 700;
  line-height: 1.6;
  color: rgb(51, 51, 51);
  margin-bottom: min(calc(8 / 1080 * 100vw), 8px);
  font-size: min(calc(22 / 1080 * 100vw), 22px);
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .sec04__question {
    font-size: calc(34 / 750 * 100vw);
    letter-spacing: 0.08em;
    margin-bottom: calc(16 / 750 * 100vw);
  }
}
.sec04__result {
  display: block;
  font-weight: 700;
  line-height: 1.4;
  color: rgb(51, 51, 51);
  text-align: center;
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .sec04__result {
    font-size: calc(56 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec04__content {
  background: rgb(255, 255, 255);
  border-radius: min(calc(60 / 1080 * 100vw), 60px);
  margin: 0 auto;
  width: min(calc(1080 / 1080 * 100vw), 1080px);
}
@media screen and (max-width: 767px) {
  .sec04__content {
    border-radius: calc(80 / 750 * 100vw);
    width: 100%;
  }
}
.sec04__content-inner {
  width: min(calc(920 / 1080 * 100vw), 920px);
  margin: 0 auto;
  padding: min(calc(60 / 1080 * 100vw), 60px) 0;
}
@media screen and (max-width: 767px) {
  .sec04__content-inner {
    width: 100%;
    padding: calc(80 / 750 * 100vw) calc(60 / 750 * 100vw);
  }
}
.sec04__chart-section {
  width: min(calc(544 / 1080 * 100vw), 544px);
  margin: 0 auto min(calc(46 / 1080 * 100vw), 46px);
}
@media screen and (max-width: 767px) {
  .sec04__chart-section {
    width: calc(630 / 750 * 100vw);
    margin: 0 auto calc(64 / 750 * 100vw);
  }
}
.sec04__explanation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: min(calc(45 / 1080 * 100vw), 45px);
  margin-bottom: min(calc(46 / 1080 * 100vw), 46px);
}
@media screen and (max-width: 767px) {
  .sec04__explanation {
    flex-direction: column;
    gap: calc(64 / 750 * 100vw);
    margin-bottom: calc(64 / 750 * 100vw);
  }
}
.sec04__explanation picture {
  display: block;
  flex: 1;
}
.sec04__explanation-text {
  position: relative;
  border: 1px solid rgb(51, 51, 51);
  padding: min(calc(30 / 1080 * 100vw), 30px) 0;
  width: min(calc(435 / 1080 * 100vw), 435px);
}
@media screen and (max-width: 767px) {
  .sec04__explanation-text {
    width: calc(630 / 750 * 100vw);
    margin: 0 auto;
    padding: calc(30 / 750 * 100vw) 0;
  }
}
.sec04__explanation-text::before, .sec04__explanation-text::after {
  content: "";
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% + 4px);
  height: min(calc(130 / 1080 * 100vw), 130px);
}
@media screen and (max-width: 767px) {
  .sec04__explanation-text::before, .sec04__explanation-text::after {
    height: calc(160 / 750 * 100vw);
  }
}
.sec04__explanation-text::after {
  width: min(calc(323 / 1080 * 100vw), 323px);
  height: calc(100% + 4px);
}
@media screen and (max-width: 767px) {
  .sec04__explanation-text::after {
    width: calc(462 / 750 * 100vw);
  }
}
.sec04__explanation-text p {
  position: relative;
  z-index: 2;
}
.sec04__explanation-text p:first-child {
  font-weight: 700;
  line-height: 1.8;
  color: rgb(51, 51, 51);
  text-align: center;
  margin-bottom: min(calc(12 / 1080 * 100vw), 12px);
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .sec04__explanation-text p:first-child {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.08em;
    margin-bottom: calc(24 / 750 * 100vw);
  }
}
.sec04__explanation-text p:last-child {
  font-weight: 700;
  line-height: 1.4;
  color: rgb(51, 51, 51);
  text-align: center;
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .sec04__explanation-text p:last-child {
    font-size: calc(48 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec04__result-section {
  position: relative;
  margin: 0 auto;
  padding: min(calc(18 / 1080 * 100vw), 18px) 0;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec04__result-section {
    padding: calc(30 / 750 * 100vw) 0;
  }
}
.sec04__result-section::after {
  content: "";
  position: absolute;
  z-index: 0;
  left: 50%;
  transform: translate(-50%);
  top: 0;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgb(255, 244, 209) 100%);
  width: min(calc(510 / 1080 * 100vw), 510px);
  height: 100%;
}
@media screen and (max-width: 767px) {
  .sec04__result-section::after {
    width: calc(630 / 750 * 100vw);
  }
}
.sec04__result-content {
  position: relative;
  z-index: 2;
}
.sec04__result-label {
  font-weight: 400;
  line-height: 1.8;
  color: rgb(51, 51, 51);
  margin-bottom: min(calc(16 / 1080 * 100vw), 16px);
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .sec04__result-label {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.08em;
    margin-bottom: calc(24 / 750 * 100vw);
  }
}
.sec04__result-main {
  font-weight: 700;
  color: rgb(51, 51, 51);
}
.sec04__result-main span:first-child {
  line-height: 1.6;
  font-size: min(calc(22 / 1080 * 100vw), 22px);
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .sec04__result-main span:first-child {
    font-size: calc(34 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec04__result-main span:last-child {
  line-height: 1.4;
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .sec04__result-main span:last-child {
    font-size: calc(48 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}

.sec05 {
  position: relative;
  background: rgb(245, 245, 245);
  padding: min(calc(80 / 1080 * 100vw), 80px) 0 min(calc(100 / 1080 * 100vw), 100px);
}
@media screen and (max-width: 767px) {
  .sec05 {
    padding: calc(110 / 750 * 100vw) 0 calc(120 / 750 * 100vw);
  }
}
.sec05__header {
  text-align: center;
  margin-bottom: min(calc(70 / 1080 * 100vw), 70px);
}
@media screen and (max-width: 767px) {
  .sec05__header {
    margin-bottom: calc(120 / 750 * 100vw);
  }
}
.sec05__title {
  background: linear-gradient(137deg, rgb(218, 18, 8) 0%, rgb(180, 17, 8) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 600;
  font-style: italic;
  line-height: 0.9;
  margin-bottom: min(calc(36 / 1080 * 100vw), 36px);
  font-size: min(calc(50 / 1080 * 100vw), 50px);
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .sec05__title {
    font-size: calc(60 / 750 * 100vw);
    letter-spacing: 0.08em;
    margin-bottom: calc(56 / 750 * 100vw);
  }
}
.sec05__subtitle-wrapper {
  width: fit-content;
  margin: 0 auto;
}
.sec05__subtitle {
  font-weight: 700;
  line-height: 1.6;
  color: rgb(51, 51, 51);
  margin-bottom: min(calc(16 / 1080 * 100vw), 16px);
  font-size: min(calc(22 / 1080 * 100vw), 22px);
  letter-spacing: 0.08em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec05__subtitle {
    font-size: calc(34 / 750 * 100vw);
    letter-spacing: 0.08em;
    margin-bottom: calc(32 / 750 * 100vw);
  }
}
.sec05__subtitle-main {
  font-weight: 700;
  line-height: 1.4;
  color: rgb(51, 51, 51);
  text-align: center;
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .sec05__subtitle-main {
    font-size: calc(56 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec05__content {
  display: flex;
  flex-direction: column;
  gap: min(calc(60 / 1080 * 100vw), 60px);
  width: min(calc(920 / 1080 * 100vw), 920px);
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .sec05__content {
    width: 100%;
    gap: calc(60 / 750 * 100vw);
  }
}
.sec05__testimonial-card {
  width: min(calc(710 / 1080 * 100vw), 710px);
}
@media screen and (max-width: 767px) {
  .sec05__testimonial-card {
    width: calc(690 / 750 * 100vw);
    margin: 0 0 0 auto;
  }
}
@media screen and (max-width: 767px) {
  .sec05__testimonial-card.--reverse .sec05__testimonial-body {
    margin-top: calc(40 / 750 * 100vw);
  }
}
.sec05__testimonial-card.--right {
  margin: 0 0 0 auto;
}
@media screen and (max-width: 767px) {
  .sec05__testimonial-card.--right {
    margin: 0 auto 0 0;
  }
}
@media screen and (max-width: 767px) {
  .sec05__testimonial-card.--right .sec05__testimonial-title {
    padding-left: calc(60 / 750 * 100vw);
  }
}
@media screen and (max-width: 767px) {
  .sec05__testimonial-card.--right .sec05__testimonial-profile {
    flex-direction: row;
    align-items: center;
    text-align: center;
    padding: 0 0 0 calc(60 / 750 * 100vw);
  }
}
.sec05__testimonial-card.--right .sec05__testimonial-text {
  border-left: none;
  border-right: 1px solid rgb(51, 51, 51);
  border-bottom-left-radius: 0;
  border-bottom-right-radius: min(calc(64 / 1080 * 100vw), 64px);
  padding: 0 min(calc(40 / 1080 * 100vw), 40px) min(calc(40 / 1080 * 100vw), 40px) 0;
}
@media screen and (max-width: 767px) {
  .sec05__testimonial-card.--right .sec05__testimonial-text {
    border-bottom-right-radius: calc(80 / 750 * 100vw);
    padding: 0 calc(60 / 750 * 100vw) calc(60 / 750 * 100vw);
  }
}
.sec05__testimonial-header {
  margin-bottom: min(calc(16 / 1080 * 100vw), 16px);
}
@media screen and (max-width: 767px) {
  .sec05__testimonial-header {
    margin-bottom: calc(32 / 750 * 100vw);
  }
}
.sec05__testimonial-title {
  font-weight: 700;
  line-height: 1.4;
  color: rgb(51, 51, 51);
  font-size: min(calc(24 / 1080 * 100vw), 24px);
  letter-spacing: 0.08em;
  text-align: justify;
}
@media screen and (max-width: 767px) {
  .sec05__testimonial-title {
    font-size: calc(38 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec05__testimonial-body {
  display: flex;
  flex-direction: column;
  gap: min(calc(16 / 1080 * 100vw), 16px);
}
@media screen and (max-width: 767px) {
  .sec05__testimonial-body {
    flex-direction: column;
    gap: calc(56 / 750 * 100vw);
  }
}
.sec05__testimonial-profile {
  display: flex;
  gap: min(calc(30 / 1080 * 100vw), 30px);
  align-items: center;
}
@media screen and (max-width: 767px) {
  .sec05__testimonial-profile {
    gap: calc(48 / 750 * 100vw);
    padding-right: calc(60 / 750 * 100vw);
  }
}
.sec05__testimonial-profile picture {
  width: min(calc(100 / 1080 * 100vw), 100px);
  height: min(calc(100 / 1080 * 100vw), 100px);
  flex-shrink: 0;
  border-radius: min(calc(24 / 1080 * 100vw), 24px);
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .sec05__testimonial-profile picture {
    width: calc(282 / 750 * 100vw);
    height: calc(282 / 750 * 100vw);
    border-radius: calc(40 / 750 * 100vw);
  }
}
.sec05__testimonial-profile.--reverse {
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .sec05__testimonial-profile.--reverse {
    flex-direction: row-reverse;
    align-items: flex-end;
  }
}
@media screen and (max-width: 767px) {
  .sec05__testimonial-profile.--reverse .sec05__profile-content {
    flex: 1;
  }
}
.sec05__profile-content {
  display: flex;
  flex-direction: column;
  gap: min(calc(8 / 1080 * 100vw), 8px);
}
@media screen and (max-width: 767px) {
  .sec05__profile-content {
    gap: calc(16 / 750 * 100vw);
  }
}
.sec05__profile-tags {
  display: flex;
  flex-wrap: wrap;
  gap: min(calc(8 / 1080 * 100vw), 8px);
}
@media screen and (max-width: 767px) {
  .sec05__profile-tags {
    gap: calc(10 / 750 * 100vw) calc(16 / 750 * 100vw);
  }
}
.sec05__tag {
  background: #b7b3b3;
  border-radius: min(calc(4 / 1080 * 100vw), 4px);
  padding: 0 min(calc(10 / 1080 * 100vw), 10px);
  position: relative;
}
@media screen and (max-width: 767px) {
  .sec05__tag {
    border-radius: calc(8 / 750 * 100vw);
    padding: 0 calc(10 / 750 * 100vw);
    line-height: 1;
  }
}
.sec05__tag span {
  font-weight: 700;
  line-height: 1.8;
  color: #fff;
  font-size: min(calc(14 / 1080 * 100vw), 14px);
  letter-spacing: 0.04em;
}
@media screen and (max-width: 767px) {
  .sec05__tag span {
    font-size: calc(22 / 750 * 100vw);
  }
}
.sec05__tag::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% + min(calc(4 / 1080 * 100vw), 4px));
  height: 1px;
  background: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec05__tag::after {
    width: calc(100% + calc(8 / 750 * 100vw));
  }
}
.sec05__arrow-badge {
  display: flex;
  align-items: center;
  gap: min(calc(16 / 1080 * 100vw), 16px);
  position: relative;
}
@media screen and (max-width: 767px) {
  .sec05__arrow-badge {
    flex-direction: column;
    align-items: flex-start;
    gap: calc(16 / 750 * 100vw);
  }
}
.sec05__profile-arrow {
  display: flex;
  align-items: center;
  gap: min(calc(10 / 1080 * 100vw), 10px);
}
@media screen and (max-width: 767px) {
  .sec05__profile-arrow {
    flex-direction: column;
    align-items: flex-start;
    gap: calc(8 / 750 * 100vw);
  }
}
.sec05__arrow-text {
  display: flex;
  align-items: center;
  background: url(../img/common/sec05_style1.svg) 50% 0/100% no-repeat;
  width: min(calc(192 / 1080 * 100vw), 192px);
  height: min(calc(30 / 1080 * 100vw), 30px);
  padding-left: min(calc(7 / 1080 * 100vw), 7px);
  font-weight: 900;
  line-height: 1.1;
  color: #fff;
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  letter-spacing: -0.04em;
}
@media screen and (max-width: 767px) {
  .sec05__arrow-text {
    width: calc(292 / 750 * 100vw);
    height: calc(46 / 750 * 100vw);
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: -0.04em;
  }
}
.sec05__arrow-target {
  background: linear-gradient(137deg, rgb(218, 18, 8) 0%, rgb(180, 17, 8) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 900;
  line-height: 1.1;
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  letter-spacing: 0.04em;
}
@media screen and (max-width: 767px) {
  .sec05__arrow-target {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.04em;
  }
}
.sec05__profile-info {
  font-weight: 400;
  line-height: 1.8;
  color: rgb(51, 51, 51);
  font-size: min(calc(14 / 1080 * 100vw), 14px);
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .sec05__profile-info {
    font-size: calc(22 / 750 * 100vw);
    letter-spacing: 0.08em;
    text-align: left;
  }
}
.sec05__profile-note {
  font-weight: 400;
  line-height: 1.5;
  color: rgb(51, 51, 51);
  font-size: min(calc(10 / 1080 * 100vw), 10px);
  letter-spacing: 0.04em;
}
@media screen and (max-width: 767px) {
  .sec05__profile-note {
    font-size: calc(18 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec05__testimonial-text {
  flex: 1;
  border: solid rgb(51, 51, 51);
  border-width: 0 0 1px 1px;
  border-bottom-left-radius: min(calc(64 / 1080 * 100vw), 64px);
  padding: 0 0 min(calc(40 / 1080 * 100vw), 40px) min(calc(40 / 1080 * 100vw), 40px);
}
@media screen and (max-width: 767px) {
  .sec05__testimonial-text {
    border-bottom-left-radius: calc(80 / 750 * 100vw);
    padding: 0 calc(60 / 750 * 100vw) calc(60 / 750 * 100vw);
  }
}
.sec05__testimonial-text p {
  font-weight: 400;
  line-height: 1.8;
  color: rgb(51, 51, 51);
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  letter-spacing: 0.08em;
  text-align: justify;
}
@media screen and (max-width: 767px) {
  .sec05__testimonial-text p {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec05__testimonial-text.--right {
  border-left: none;
  border-right: min(calc(2 / 1080 * 100vw), 2px) solid rgb(51, 51, 51);
  border-bottom-left-radius: 0;
  border-bottom-right-radius: min(calc(64 / 1080 * 100vw), 64px);
  padding: 0 min(calc(40 / 1080 * 100vw), 40px) min(calc(40 / 1080 * 100vw), 40px) 0;
}
@media screen and (max-width: 767px) {
  .sec05__testimonial-text.--right {
    border-right: calc(2 / 750 * 100vw) solid rgb(51, 51, 51);
    border-bottom-right-radius: calc(80 / 750 * 100vw);
    padding: 0 calc(60 / 750 * 100vw) calc(60 / 750 * 100vw) 0;
  }
}

.sec06 {
  background: url(../img/pc/sec06.webp) 50% 0/100% no-repeat;
  padding: min(calc(26 / 1080 * 100vw), 26px) 0 0;
}
@media screen and (max-width: 767px) {
  .sec06 {
    background: url(../img/sp/sec06.webp) 50% 0/100% no-repeat;
    padding: calc(26 / 750 * 100vw) 0 0;
  }
}
.sec06__container {
  width: min(calc(1080 / 1080 * 100vw), 1080px);
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .sec06__container {
    width: 100%;
  }
}
.sec06__header {
  text-align: center;
  margin-bottom: min(calc(78 / 1080 * 100vw), 78px);
}
@media screen and (max-width: 767px) {
  .sec06__header {
    margin-bottom: calc(100 / 750 * 100vw);
  }
}
.sec06__title {
  font-size: min(calc(50 / 1080 * 100vw), 50px);
  letter-spacing: min(calc(4 / 1080 * 100vw), 4px);
  line-height: 0.9;
  background: linear-gradient(137deg, rgb(218, 18, 8) 0%, rgb(180, 17, 8) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-weight: 600;
  font-style: italic;
  margin-bottom: min(calc(32 / 1080 * 100vw), 32px);
}
@media screen and (max-width: 767px) {
  .sec06__title {
    font-size: calc(60 / 750 * 100vw);
    letter-spacing: calc(4.8 / 750 * 100vw);
    margin-bottom: calc(32 / 750 * 100vw);
  }
}
.sec06__subtitle {
  font-size: min(calc(22 / 1080 * 100vw), 22px);
  letter-spacing: min(calc(1.76 / 1080 * 100vw), 1.76px);
  line-height: 1.6;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec06__subtitle {
    font-size: calc(34 / 750 * 100vw);
    letter-spacing: calc(2.72 / 750 * 100vw);
  }
}
.sec06__main-title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: min(calc(5 / 1080 * 100vw), 5px);
  margin-top: min(calc(20 / 1080 * 100vw), 20px);
}
@media screen and (max-width: 767px) {
  .sec06__main-title {
    flex-direction: column;
    align-items: center;
    gap: 0;
    margin-top: calc(30 / 750 * 100vw);
  }
}
.sec06__main-title-text {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  letter-spacing: min(calc(3.36 / 1080 * 100vw), 3.36px);
  line-height: 1.4;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec06__main-title-text {
    font-size: calc(56 / 750 * 100vw);
    letter-spacing: calc(4.48 / 750 * 100vw);
  }
}
.sec06__main-title-number {
  display: flex;
  align-items: end;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec06__main-title-number {
    align-items: center;
  }
}
.sec06__main-title-number-large {
  font-size: min(calc(48 / 1080 * 100vw), 48px);
  letter-spacing: min(calc(3.84 / 1080 * 100vw), 3.84px);
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .sec06__main-title-number-large {
    font-size: calc(64 / 750 * 100vw);
    letter-spacing: calc(5.12 / 750 * 100vw);
  }
}
.sec06__main-title-number-text {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  letter-spacing: min(calc(3.36 / 1080 * 100vw), 3.36px);
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .sec06__main-title-number-text {
    font-size: calc(56 / 750 * 100vw);
    letter-spacing: calc(4.48 / 750 * 100vw);
  }
}
.sec06__feature {
  background: linear-gradient(0deg, #FFF 0.11%, #FFF7DD 99.97%);
  border-radius: min(calc(60 / 1080 * 100vw), 60px);
  padding: min(calc(70 / 1080 * 100vw), 70px) min(calc(80 / 1080 * 100vw), 80px);
}
@media screen and (max-width: 767px) {
  .sec06__feature {
    border-radius: calc(80 / 750 * 100vw);
    padding: calc(70 / 750 * 100vw) calc(60 / 750 * 100vw);
  }
}
.sec06__feature-header {
  display: flex;
  align-items: center;
  gap: min(calc(4 / 1080 * 100vw), 4px);
  margin-bottom: min(calc(30 / 1080 * 100vw), 30px);
  position: relative;
}
@media screen and (max-width: 767px) {
  .sec06__feature-header {
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: calc(48 / 750 * 100vw);
  }
}
.sec06__feature-title-sub {
  font-size: min(calc(22 / 1080 * 100vw), 22px);
  font-weight: 600;
  letter-spacing: min(calc(1.76 / 1080 * 100vw), 1.76px);
  line-height: 1.4;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec06__feature-title-sub {
    font-size: calc(34 / 750 * 100vw);
    letter-spacing: calc(2.72 / 750 * 100vw);
  }
}
.sec06__feature-title {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  font-weight: 700;
  letter-spacing: min(calc(3.04 / 1080 * 100vw), 3.04px);
  line-height: 1.4;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec06__feature-title {
    font-size: calc(48 / 750 * 100vw);
    letter-spacing: calc(3.84 / 750 * 100vw);
  }
}
.sec06__feature-note {
  font-size: min(calc(20 / 1080 * 100vw), 20px);
  letter-spacing: min(calc(1.6 / 1080 * 100vw), 1.6px);
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .sec06__feature-note {
    font-size: calc(32 / 750 * 100vw);
    letter-spacing: calc(2.56 / 750 * 100vw);
  }
}
.sec06__feature-number {
  padding-right: min(calc(6 / 1080 * 100vw), 6px);
  font-size: min(calc(80 / 1080 * 100vw), 80px);
  letter-spacing: 0;
  line-height: 1;
  background: var(--main-red, linear-gradient(137deg, #DA1208 32.21%, #B41108 82.61%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 600;
  font-style: italic;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  clip-path: polygon(55% 0, 120% 0, 100% 100%, 0 100%, 0 60%);
}
@media screen and (max-width: 767px) {
  .sec06__feature-number {
    top: auto;
    transform: none;
    padding-right: calc(8 / 750 * 100vw);
    bottom: calc(-64 / 750 * 100vw);
    font-size: calc(100 / 750 * 100vw);
  }
}
.sec06__feature-content {
  display: flex;
  gap: min(calc(30 / 1080 * 100vw), 30px);
  align-items: center;
  margin-bottom: min(calc(30 / 1080 * 100vw), 30px);
}
@media screen and (max-width: 767px) {
  .sec06__feature-content {
    flex-direction: column;
    gap: calc(48 / 750 * 100vw);
    margin-bottom: calc(48 / 750 * 100vw);
  }
}
.sec06__feature-image img {
  width: min(calc(430 / 1080 * 100vw), 430px);
}
@media screen and (max-width: 767px) {
  .sec06__feature-image img {
    width: 100%;
  }
}
.sec06__feature-desc {
  flex: 1;
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  letter-spacing: min(calc(1.44 / 1080 * 100vw), 1.44px);
  line-height: 1.8;
  color: rgb(51, 51, 51);
  text-align: justify;
}
@media screen and (max-width: 767px) {
  .sec06__feature-desc {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: calc(2.24 / 750 * 100vw);
  }
}
.sec06__feature-method-title {
  font-size: min(calc(20 / 1080 * 100vw), 20px);
  font-weight: 700;
  letter-spacing: min(calc(1.6 / 1080 * 100vw), 1.6px);
  line-height: 1.8;
  color: rgb(51, 51, 51);
  text-align: center;
  margin-bottom: min(calc(16 / 1080 * 100vw), 16px);
  max-width: min(calc(920 / 1080 * 100vw), 920px);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 767px) {
  .sec06__feature-method-title {
    font-size: calc(32 / 750 * 100vw);
    letter-spacing: calc(2.56 / 750 * 100vw);
    margin-bottom: calc(16 / 750 * 100vw);
    max-width: none;
  }
}
.sec06__feature-method-name {
  display: flex;
  align-items: center;
  gap: min(calc(8 / 1080 * 100vw), 8px);
  font-size: min(calc(24 / 1080 * 100vw), 24px);
  font-weight: 700;
  letter-spacing: min(calc(1.92 / 1080 * 100vw), 1.92px);
  line-height: 1.4;
  color: rgb(51, 51, 51);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec06__feature-method-name {
    font-size: calc(38 / 750 * 100vw);
    letter-spacing: calc(3.04 / 750 * 100vw);
    margin-bottom: calc(32 / 750 * 100vw);
  }
}
.sec06__feature-method-name::before, .sec06__feature-method-name::after {
  content: "";
  flex: 1;
  height: 1px;
  background: rgb(51, 51, 51);
}
.sec06__feature-method-content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: min(calc(20 / 1080 * 100vw), 20px);
  margin-top: min(calc(16 / 1080 * 100vw), 16px);
}
@media screen and (max-width: 767px) {
  .sec06__feature-method-content {
    flex-direction: column;
    gap: calc(32 / 750 * 100vw);
    margin-top: min(calc(48 / 1080 * 100vw), 48px);
  }
}
.sec06__feature-method-content.--b {
  gap: min(calc(50 / 1080 * 100vw), 50px);
}
@media screen and (max-width: 767px) {
  .sec06__feature-method-content.--b {
    gap: calc(32 / 750 * 100vw);
  }
}
.sec06__feature-diagram img {
  width: min(calc(418 / 1080 * 100vw), 418px);
}
@media screen and (max-width: 767px) {
  .sec06__feature-diagram img {
    width: 100%;
  }
}
.sec06__feature-diagram img.--b {
  width: min(calc(439 / 1080 * 100vw), 439px);
}
@media screen and (max-width: 767px) {
  .sec06__feature-diagram img.--b {
    width: 100%;
  }
}
.sec06__feature-result {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(8 / 1080 * 100vw), 8px);
}
@media screen and (max-width: 767px) {
  .sec06__feature-result {
    gap: calc(16 / 750 * 100vw);
    width: 100%;
  }
}
.sec06__feature-result-item {
  font-size: min(calc(24 / 1080 * 100vw), 24px);
  font-weight: 700;
  letter-spacing: min(calc(1.92 / 1080 * 100vw), 1.92px);
  line-height: 1.6;
  color: rgb(51, 51, 51);
  text-align: center;
  white-space: nowrap;
  position: relative;
}
@media screen and (max-width: 767px) {
  .sec06__feature-result-item {
    font-size: calc(38 / 750 * 100vw);
    letter-spacing: calc(3.04 / 750 * 100vw);
  }
}
.sec06__feature-result-item.--underline {
  border-bottom: 1px solid rgb(218, 18, 8);
}
@media screen and (max-width: 767px) {
  .sec06__feature.--feature01 {
    padding-bottom: calc(110 / 750 * 100vw);
  }
}
@media screen and (max-width: 767px) {
  .sec06__feature.--feature02 {
    padding-bottom: calc(110 / 750 * 100vw);
  }
}
.sec06__feature.--feature02 .sec06__feature-title {
  display: flex;
  align-items: flex-end;
  line-height: 1.1;
}
@media screen and (max-width: 767px) {
  .sec06__feature.--feature02 .sec06__feature-title {
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    line-height: 1.4;
  }
}
.sec06__feature.--feature02 .sec06__feature-title .sec06__feature-title-sub {
  margin-bottom: 0;
}
.sec06__feature.--feature02 .sec06__feature-title-note {
  font-size: min(calc(20 / 1080 * 100vw), 20px);
}
@media screen and (max-width: 767px) {
  .sec06__feature.--feature02 .sec06__feature-title-note {
    font-size: calc(32 / 750 * 100vw);
  }
}
.sec06__feature.--feature02 .sec06__feature-text {
  flex: 1;
}
@media screen and (max-width: 767px) {
  .sec06__feature.--feature02 .sec06__feature-text {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .sec06__feature.--feature02 .sec06__feature-number {
    bottom: calc(-20 / 750 * 100vw);
  }
}
.sec06__feature.--feature03 {
  padding-bottom: min(calc(50 / 1080 * 100vw), 50px);
}
@media screen and (max-width: 767px) {
  .sec06__feature.--feature03 {
    padding-bottom: calc(20 / 750 * 100vw);
  }
}
.sec06__feature.--feature03 .sec06__feature-title {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .sec06__feature.--feature03 .sec06__feature-title {
    flex-direction: column;
    align-items: flex-start;
    gap: calc(8 / 750 * 100vw);
    width: 100%;
  }
}
.sec06__feature.--feature03 .sec06__feature-title .sec06__feature-title-sub {
  margin-bottom: 0;
}
.sec06__summary {
  text-align: center;
  margin-bottom: min(calc(48 / 1080 * 100vw), 48px);
  position: relative;
}
@media screen and (max-width: 767px) {
  .sec06__summary {
    margin-bottom: calc(48 / 750 * 100vw);
  }
}
.sec06__summary-text {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: min(calc(20 / 1080 * 100vw), 20px);
  font-weight: 700;
  letter-spacing: min(calc(1.6 / 1080 * 100vw), 1.6px);
  line-height: 1.6;
  color: rgb(51, 51, 51);
  text-align: center;
  margin-bottom: min(calc(32 / 1080 * 100vw), 32px);
}
@media screen and (max-width: 767px) {
  .sec06__summary-text {
    font-size: calc(32 / 750 * 100vw);
    letter-spacing: calc(2.56 / 750 * 100vw);
    margin-bottom: calc(36 / 750 * 100vw);
  }
}
.sec06__summary-text::before, .sec06__summary-text::after {
  content: "";
  margin: 0 1%;
  width: min(calc(32 / 1080 * 100vw), 32px);
  height: 1px;
  background: rgb(51, 51, 51);
  transform: rotate(110deg);
}
@media screen and (max-width: 767px) {
  .sec06__summary-text::before, .sec06__summary-text::after {
    width: calc(102 / 750 * 100vw);
  }
}
.sec06__summary-box {
  position: relative;
  z-index: 1;
}
.sec06__summary-box::before {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: max(calc(-50 / 1080 * 100vw), -50px);
  width: min(calc(514 / 1080 * 100vw), 514px);
  height: min(calc(184 / 1080 * 100vw), 184px);
  z-index: -1;
  background: linear-gradient(180deg, rgba(255, 244, 209, 0) 0%, #FFF4D1 100%);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}
@media screen and (max-width: 767px) {
  .sec06__summary-box::before {
    width: calc(630 / 750 * 100vw);
    height: calc(227 / 750 * 100vw);
  }
}
.sec06__summary-main {
  border: 1px solid rgb(218, 18, 8);
  width: min(calc(630 / 1080 * 100vw), 630px);
  padding: min(calc(12 / 1080 * 100vw), 12px);
  margin: 0 auto min(calc(16 / 1080 * 100vw), 16px);
  font-size: min(calc(20 / 1080 * 100vw), 20px);
  font-weight: 700;
  letter-spacing: min(calc(1.6 / 1080 * 100vw), 1.6px);
  line-height: 1.8;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec06__summary-main {
    width: calc(630 / 750 * 100vw);
    padding: calc(20 / 750 * 100vw) 0;
    margin-bottom: calc(16 / 750 * 100vw);
    font-size: calc(32 / 750 * 100vw);
    letter-spacing: calc(1.92 / 750 * 100vw);
  }
}
.sec06__summary-result-item {
  font-size: min(calc(24 / 1080 * 100vw), 24px);
  font-weight: 700;
  letter-spacing: min(calc(1.92 / 1080 * 100vw), 1.92px);
  line-height: 1.8;
  color: rgb(51, 51, 51);
  text-align: center;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .sec06__summary-result-item {
    font-size: calc(38 / 750 * 100vw);
    letter-spacing: calc(3.04 / 750 * 100vw);
    white-space: normal;
  }
}
.sec06__summary-result-item.--underline {
  display: inline;
  border-bottom: 1px solid rgb(218, 18, 8);
}
.sec06__hybrid {
  display: flex;
  align-items: center;
  background: rgb(245, 245, 245);
  gap: min(calc(60 / 1080 * 100vw), 60px);
  border-radius: min(calc(80 / 1080 * 100vw), 80px);
  margin-top: min(calc(40 / 1080 * 100vw), 40px);
  padding: min(calc(60 / 1080 * 100vw), 60px) min(calc(80 / 1080 * 100vw), 80px);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec06__hybrid {
    flex-direction: column;
    gap: calc(34 / 750 * 100vw);
    border-radius: calc(80 / 750 * 100vw);
    margin-top: calc(54 / 750 * 100vw);
    padding: calc(55 / 750 * 100vw);
  }
}
.sec06__hybrid img {
  width: min(calc(416 / 1080 * 100vw), 416px);
}
@media screen and (max-width: 767px) {
  .sec06__hybrid img {
    width: 100%;
  }
}
.sec06__hybrid-text {
  flex: 1;
}
.sec06__hybrid-subtitle {
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 700;
  letter-spacing: min(calc(1.44 / 1080 * 100vw), 1.44px);
  line-height: 1.8;
  color: rgb(51, 51, 51);
  margin-bottom: min(calc(12 / 1080 * 100vw), 12px);
}
@media screen and (max-width: 767px) {
  .sec06__hybrid-subtitle {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: calc(2.24 / 750 * 100vw);
    margin-bottom: calc(8 / 750 * 100vw);
  }
}
.sec06__hybrid-title {
  font-size: min(calc(24 / 1080 * 100vw), 24px);
  font-weight: 700;
  letter-spacing: min(calc(1.92 / 1080 * 100vw), 1.92px);
  line-height: 1.4;
  color: rgb(51, 51, 51);
  position: relative;
  padding-bottom: min(calc(12 / 1080 * 100vw), 12px);
  margin-bottom: min(calc(48 / 1080 * 100vw), 48px);
}
@media screen and (max-width: 767px) {
  .sec06__hybrid-title {
    font-size: calc(38 / 750 * 100vw);
    letter-spacing: calc(3.04 / 750 * 100vw);
    padding-bottom: calc(8 / 750 * 100vw);
    margin-bottom: 0;
  }
}
.sec06__hybrid-title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: rgb(51, 51, 51);
}
.sec06__hybrid-note-text {
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  letter-spacing: min(calc(1.44 / 1080 * 100vw), 1.44px);
  line-height: 1.8;
  color: rgb(51, 51, 51);
  margin-bottom: min(calc(4 / 1080 * 100vw), 4px);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec06__hybrid-note-text {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: calc(2.24 / 750 * 100vw);
    margin-bottom: calc(4 / 750 * 100vw);
  }
}
.sec06__hybrid-note-main {
  font-size: min(calc(30 / 1080 * 100vw), 30px);
  font-weight: 700;
  letter-spacing: min(calc(2.4 / 1080 * 100vw), 2.4px);
  line-height: 1.4;
  color: rgb(51, 51, 51);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec06__hybrid-note-main {
    font-size: calc(42 / 750 * 100vw);
    letter-spacing: calc(3.36 / 750 * 100vw);
  }
}
.sec06 .--bold {
  font-weight: 700;
}
.sec06 .--accent {
  color: rgb(218, 18, 8);
}

.sec07 {
  position: relative;
  background: url(../img/pc/sec07.webp) 50% 0/100% no-repeat;
  height: min(calc(508 / 1080 * 100vw), 508px);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec07 {
    background: url(../img/sp/sec07.webp) 50% 0/100% no-repeat;
    height: calc(1322 / 750 * 100vw);
  }
}
.sec07__title-group {
  position: absolute;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(2 / 1080 * 100vw), 2px);
  top: min(calc(174 / 1080 * 100vw), 174px);
  left: min(calc(460 / 1080 * 100vw), 460px);
}
@media screen and (max-width: 767px) {
  .sec07__title-group {
    gap: calc(4 / 750 * 100vw);
    top: calc(100 / 750 * 100vw);
    left: 0;
    width: 100%;
  }
}
.sec07__title-line1 {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.4;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .sec07__title-line1 {
    font-size: calc(56 / 750 * 100vw);
    color: rgb(51, 51, 51);
  }
}
.sec07__title-line2 {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.4;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .sec07__title-line2 {
    font-size: calc(56 / 750 * 100vw);
    background: linear-gradient(137deg, rgb(218, 18, 8) 0%, rgb(180, 17, 8) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
  }
}
.sec07__title-line3 {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.4;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .sec07__title-line3 {
    font-size: calc(56 / 750 * 100vw);
    background: linear-gradient(137deg, rgb(218, 18, 8) 0%, rgb(180, 17, 8) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
  }
}
.sec07__subtitle {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.4;
  color: #fff;
  margin-top: min(calc(40 / 1080 * 100vw), 40px);
}
@media screen and (max-width: 767px) {
  .sec07__subtitle {
    font-size: calc(48 / 750 * 100vw);
    margin-top: calc(758 / 750 * 100vw);
  }
}

.sec08 {
  background: rgb(245, 245, 245);
  padding: min(calc(80 / 1080 * 100vw), 80px) 0;
}
@media screen and (max-width: 767px) {
  .sec08 {
    padding: calc(110 / 750 * 100vw) 0 calc(120 / 750 * 100vw);
  }
}
.sec08__header {
  text-align: center;
  margin-bottom: min(calc(90 / 1080 * 100vw), 90px);
}
@media screen and (max-width: 767px) {
  .sec08__header {
    margin-bottom: calc(90 / 750 * 100vw);
  }
}
.sec08__title {
  font-size: min(calc(50 / 1080 * 100vw), 50px);
  font-weight: 600;
  font-style: italic;
  letter-spacing: 0.08em;
  line-height: 0.9;
  background: linear-gradient(137deg, rgb(218, 18, 8) 0%, rgb(180, 17, 8) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: min(calc(36 / 1080 * 100vw), 36px);
}
@media screen and (max-width: 767px) {
  .sec08__title {
    font-size: calc(60 / 750 * 100vw);
    margin-bottom: calc(56 / 750 * 100vw);
  }
}
.sec08__subtitle-group {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(16 / 1080 * 100vw), 16px);
}
@media screen and (max-width: 767px) {
  .sec08__subtitle-group {
    gap: calc(32 / 750 * 100vw);
  }
}
.sec08__subtitle {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.4;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec08__subtitle {
    font-size: calc(56 / 750 * 100vw);
  }
}
.sec08__description {
  font-size: min(calc(24 / 1080 * 100vw), 24px);
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.4;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec08__description {
    font-size: calc(38 / 750 * 100vw);
    text-align: center;
  }
}
.sec08__cards {
  display: flex;
  flex-wrap: wrap;
  gap: min(calc(56 / 1080 * 100vw), 56px) min(calc(46 / 1080 * 100vw), 46px);
  width: min(calc(1080 / 1080 * 100vw), 1080px);
  margin: 0 auto min(calc(56 / 1080 * 100vw), 56px);
}
@media screen and (max-width: 767px) {
  .sec08__cards {
    flex-direction: column;
    gap: calc(64 / 750 * 100vw);
    margin-bottom: calc(64 / 750 * 100vw);
  }
}
.sec08__card {
  width: min(calc(517 / 1080 * 100vw), 517px);
  background: rgb(255, 255, 255);
  border-radius: min(calc(64 / 1080 * 100vw), 64px);
  padding: min(calc(40 / 1080 * 100vw), 40px);
  position: relative;
}
@media screen and (max-width: 767px) {
  .sec08__card {
    width: 100%;
    border-radius: calc(80 / 750 * 100vw);
    padding: calc(60 / 750 * 100vw);
  }
}
.sec08__card.--featured .sec08__card-inner {
  padding-top: min(calc(58 / 1080 * 100vw), 58px);
}
@media screen and (max-width: 767px) {
  .sec08__card.--featured .sec08__card-inner {
    padding-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .sec08__card.--featured:first-child .sec08__card-inner {
    padding-top: calc(100 / 750 * 100vw);
  }
}
.sec08__card.--featured .sec08__badge {
  position: absolute;
  top: min(calc(40 / 1080 * 100vw), 40px);
  left: 50%;
  transform: translateX(-50%);
  background: linear-gradient(270deg, #DA1208 -0.16%, #B41108 102.43%);
  color: rgb(255, 255, 255);
  font-size: min(calc(24 / 1080 * 100vw), 24px);
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.4;
  padding: min(calc(2 / 1080 * 100vw), 2px) min(calc(8 / 1080 * 100vw), 8px);
}
@media screen and (max-width: 767px) {
  .sec08__card.--featured .sec08__badge {
    font-size: calc(38 / 750 * 100vw);
    padding: calc(4 / 750 * 100vw) calc(16 / 750 * 100vw);
    top: calc(60 / 750 * 100vw);
  }
}
.sec08__card-inner {
  display: flex;
  flex-direction: column;
  gap: min(calc(20 / 1080 * 100vw), 20px);
}
@media screen and (max-width: 767px) {
  .sec08__card-inner {
    gap: calc(40 / 750 * 100vw);
  }
}
.sec08__course-info {
  display: flex;
  flex-direction: column;
  gap: min(calc(24 / 1080 * 100vw), 24px);
  align-items: center;
}
@media screen and (max-width: 767px) {
  .sec08__course-info {
    gap: calc(28 / 750 * 100vw);
  }
}
.sec08__course-title {
  font-size: min(calc(30 / 1080 * 100vw), 30px);
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.4;
  color: rgb(51, 51, 51);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec08__course-title {
    font-size: calc(42 / 750 * 100vw);
  }
}
.sec08__price-main {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  text-align: center;
  width: 100%;
  border-top: 1px solid rgb(51, 51, 51);
  padding-top: min(calc(20 / 1080 * 100vw), 20px);
}
@media screen and (max-width: 767px) {
  .sec08__price-main {
    padding-top: calc(40 / 750 * 100vw);
  }
}
.sec08__price-amount {
  font-size: min(calc(54 / 1080 * 100vw), 54px);
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1;
  color: rgb(218, 18, 8);
}
@media screen and (max-width: 767px) {
  .sec08__price-amount {
    font-size: calc(74 / 750 * 100vw);
  }
}
.sec08__price-tax {
  font-size: min(calc(16 / 1080 * 100vw), 16px);
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 1.8;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec08__price-tax {
    font-size: calc(26 / 750 * 100vw);
  }
}
.sec08__course-details {
  display: flex;
  flex-direction: column;
  gap: min(calc(8 / 1080 * 100vw), 8px);
  align-items: center;
  padding-top: min(calc(20 / 1080 * 100vw), 20px);
  border-top: min(calc(1 / 1080 * 100vw), 1px) solid #DFDFDF;
}
@media screen and (max-width: 767px) {
  .sec08__course-details {
    gap: calc(16 / 750 * 100vw);
    padding-top: calc(40 / 750 * 100vw);
    border-top-width: calc(2 / 750 * 100vw);
  }
}
.sec08__conversion-text {
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 1.8;
  color: rgb(51, 51, 51);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec08__conversion-text {
    font-size: calc(28 / 750 * 100vw);
  }
}
.sec08__price-converted {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  text-align: center;
}
.sec08__converted-amount {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.4;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec08__converted-amount {
    font-size: calc(56 / 750 * 100vw);
  }
}
.sec08__converted-tax {
  font-size: min(calc(16 / 1080 * 100vw), 16px);
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 1.8;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec08__converted-tax {
    font-size: calc(26 / 750 * 100vw);
  }
}
.sec08__period-badge {
  position: absolute;
  top: max(calc(-38 / 1080 * 100vw), -38px);
  right: 0;
  width: min(calc(116 / 1080 * 100vw), 116px);
  height: min(calc(116 / 1080 * 100vw), 116px);
  background: url(../img/pc/sec08_badge1.webp) 50% 50%/100% 100% no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .sec08__period-badge {
    top: calc(-44 / 750 * 100vw);
    right: calc(10 / 750 * 100vw);
    width: calc(160 / 750 * 100vw);
    height: calc(160 / 750 * 100vw);
    background: url(../img/sp/sec08_badge1.webp) 50% 50%/100% 100% no-repeat;
  }
}
.sec08__period-badge span {
  font-weight: 700;
  color: rgb(30, 58, 95);
  text-align: center;
}
.sec08__period-badge span:first-child {
  font-size: min(calc(24 / 1080 * 100vw), 24px);
  letter-spacing: 0.08em;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .sec08__period-badge span:first-child {
    font-size: calc(38 / 750 * 100vw);
  }
}
.sec08__period-badge span:not(:first-child) {
  font-size: min(calc(20 / 1080 * 100vw), 20px);
  letter-spacing: 0.08em;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .sec08__period-badge span:not(:first-child) {
    font-size: calc(32 / 750 * 100vw);
  }
}
.sec08__note {
  width: min(calc(1000 / 1080 * 100vw), 1000px);
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .sec08__note {
    width: calc(630 / 750 * 100vw);
  }
}
.sec08__note p {
  font-size: min(calc(12 / 1080 * 100vw), 12px);
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.5;
  color: rgb(102, 102, 102);
}
@media screen and (max-width: 767px) {
  .sec08__note p {
    font-size: calc(20 / 750 * 100vw);
  }
}

.sec09 {
  padding: min(calc(60 / 1080 * 100vw), 60px) 0;
}
@media screen and (max-width: 767px) {
  .sec09 {
    padding: calc(110 / 750 * 100vw) 0 0;
  }
}
.sec09__header {
  text-align: center;
  margin-bottom: min(calc(60 / 1080 * 100vw), 60px);
}
@media screen and (max-width: 767px) {
  .sec09__header {
    margin-bottom: calc(111 / 750 * 100vw);
  }
}
.sec09__title {
  background: linear-gradient(137deg, rgb(218, 18, 8) 0%, rgb(180, 17, 8) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: min(calc(50 / 1080 * 100vw), 50px);
  font-style: italic;
  font-weight: 600;
  line-height: 0.9;
  letter-spacing: 0.08em;
  margin-bottom: min(calc(36 / 1080 * 100vw), 36px);
}
@media screen and (max-width: 767px) {
  .sec09__title {
    font-size: calc(60 / 750 * 100vw);
    letter-spacing: 0.08em;
    margin-bottom: calc(56 / 750 * 100vw);
  }
}
.sec09__subtitle {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec09__subtitle {
    font-size: calc(56 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec09__content {
  width: min(calc(920 / 1080 * 100vw), 920px);
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .sec09__content {
    width: calc(630 / 750 * 100vw);
  }
}
.sec09__section + .sec09__section {
  margin-top: min(calc(40 / 1080 * 100vw), 40px);
}
@media screen and (max-width: 767px) {
  .sec09__section + .sec09__section {
    margin-top: calc(66 / 750 * 100vw);
  }
}
.sec09__section-title {
  position: relative;
  display: flex;
  align-items: center;
  gap: min(calc(12 / 1080 * 100vw), 12px);
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
  margin-bottom: min(calc(30 / 1080 * 100vw), 30px);
}
@media screen and (max-width: 767px) {
  .sec09__section-title {
    gap: calc(24 / 750 * 100vw);
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.08em;
    margin-bottom: calc(48 / 750 * 100vw);
  }
}
.sec09__section-title::before, .sec09__section-title::after {
  content: "";
  flex: 1;
  height: 1px;
  background: rgb(51, 51, 51);
}
.sec09__description {
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
  text-align: justify;
  margin-bottom: min(calc(30 / 1080 * 100vw), 30px);
}
@media screen and (max-width: 767px) {
  .sec09__description {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.08em;
    margin-bottom: calc(48 / 750 * 100vw);
  }
}
.sec09 .adlp-btn {
  background: rgb(245, 245, 245);
  border-radius: min(calc(16 / 1080 * 100vw), 16px);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min(calc(48 / 1080 * 100vw), 48px);
  padding: min(calc(16 / 1080 * 100vw), 16px) 0;
  width: 100%;
  height: auto;
}
@media screen and (min-width: 768px) {
  .sec09 .adlp-btn {
    pointer-events: none;
  }
}
@media screen and (max-width: 767px) {
  .sec09 .adlp-btn {
    border-radius: 999px;
    gap: calc(48 / 750 * 100vw);
    padding: calc(26 / 750 * 100vw) 0;
    box-shadow: 0px calc(4 / 750 * 100vw) calc(4 / 750 * 100vw) 0px rgba(0, 0, 0, 0.25);
  }
}
.sec09__phone-label {
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec09__phone-label {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec09__phone-number {
  font-size: min(calc(24 / 1080 * 100vw), 24px);
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec09__phone-number {
    font-size: calc(38 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec09__schools-grid {
  display: flex;
  flex-wrap: wrap;
  gap: min(calc(16 / 1080 * 100vw), 16px);
  margin-bottom: min(calc(16 / 1080 * 100vw), 16px);
}
@media screen and (max-width: 767px) {
  .sec09__schools-grid {
    flex-direction: column;
    gap: calc(32 / 750 * 100vw);
    margin-bottom: calc(16 / 750 * 100vw);
  }
}
.sec09__school-card {
  background: rgb(245, 245, 245);
  border-radius: min(calc(16 / 1080 * 100vw), 16px);
  padding: min(calc(20 / 1080 * 100vw), 20px);
  display: flex;
  align-items: flex-start;
  gap: min(calc(12 / 1080 * 100vw), 12px);
  width: calc(50% - min(calc(8 / 1080 * 100vw), 8px));
}
@media screen and (max-width: 767px) {
  .sec09__school-card {
    border-radius: calc(24 / 750 * 100vw);
    padding: calc(40 / 750 * 100vw) calc(30 / 750 * 100vw) calc(40 / 750 * 100vw) calc(40 / 750 * 100vw);
    gap: calc(24 / 750 * 100vw);
    width: 100%;
  }
}
.sec09__school-name {
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.06em;
  color: rgb(51, 51, 51);
  width: min(calc(90 / 1080 * 100vw), 90px);
  text-align: justify;
}
@media screen and (max-width: 767px) {
  .sec09__school-name {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.04em;
    width: calc(138 / 750 * 100vw);
  }
}
.sec09__school-info {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: min(calc(8 / 1080 * 100vw), 8px);
}
@media screen and (max-width: 767px) {
  .sec09__school-info {
    gap: calc(16 / 750 * 100vw);
  }
}
.sec09__school-address {
  font-size: min(calc(16 / 1080 * 100vw), 16px);
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
  text-align: justify;
}
@media screen and (max-width: 767px) {
  .sec09__school-address {
    font-size: calc(26 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec09__school-contact {
  font-size: min(calc(16 / 1080 * 100vw), 16px);
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
  text-align: justify;
}
@media screen and (max-width: 767px) {
  .sec09__school-contact {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec09__school-contact span:first-child {
  font-weight: 700;
}
.sec09__school-contact a {
  color: inherit;
  text-decoration: none;
}
@media screen and (min-width: 768px) {
  .sec09__school-contact a {
    pointer-events: none;
  }
}
.sec09__other {
  font-size: min(calc(16 / 1080 * 100vw), 16px);
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: rgb(51, 51, 51);
  text-align: right;
}
@media screen and (max-width: 767px) {
  .sec09__other {
    font-size: calc(26 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}

.sec10 {
  position: relative;
  background: url(../img/pc/cv01.webp) 50% 0/100% no-repeat;
  padding: min(calc(80 / 1080 * 100vw), 80px) 0;
}
@media screen and (max-width: 767px) {
  .sec10 {
    background: url(../img/sp/cv01.webp) 50% 0/100% no-repeat;
    padding: calc(120 / 750 * 100vw) 0;
  }
}
.sec10-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(12 / 1080 * 100vw), 12px);
  width: min(calc(1000 / 1080 * 100vw), 1000px);
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .sec10-content {
    gap: calc(24 / 750 * 100vw);
    width: calc(630 / 750 * 100vw);
  }
}
.sec10-header {
  display: flex;
  align-items: center;
  gap: min(calc(12 / 1080 * 100vw), 12px);
}
@media screen and (max-width: 767px) {
  .sec10-header {
    flex-direction: row;
    align-items: flex-end;
    gap: calc(24 / 750 * 100vw);
  }
}
.sec10-header__text {
  font-size: min(calc(22 / 1080 * 100vw), 22px);
  font-weight: 900;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .sec10-header__text {
    font-size: calc(34 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.6;
  }
}
.sec10-header__logo {
  width: min(calc(174 / 1080 * 100vw), 174px);
}
@media screen and (max-width: 767px) {
  .sec10-header__logo {
    width: calc(232 / 750 * 100vw);
  }
}
.sec10-main-wrapper {
  position: relative;
  width: 100%;
}
.sec10-main-wrapper::before {
  content: "";
  width: 100%;
  height: 1px;
  background: rgb(30, 58, 95);
  display: block;
}
@media screen and (max-width: 767px) {
  .sec10-main-wrapper::before {
    height: 2px;
  }
}
.sec10-main-wrapper::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(calc(22 / 1080 * 100vw), 22px);
  height: min(calc(16 / 1080 * 100vw), 16px);
  background: rgb(30, 58, 95);
  clip-path: polygon(50% 100%, 0 0, 100% 0);
}
@media screen and (max-width: 767px) {
  .sec10-main-wrapper::after {
    width: calc(32 / 750 * 100vw);
    height: calc(24 / 750 * 100vw);
  }
}
.sec10-main {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min(calc(2 / 1080 * 100vw), 2px);
  margin-top: min(calc(12 / 1080 * 100vw), 12px);
}
@media screen and (max-width: 767px) {
  .sec10-main {
    align-items: flex-start;
    gap: calc(4 / 750 * 100vw);
    margin-top: calc(24 / 750 * 100vw);
  }
}
.sec10-main__left {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .sec10-main__left {
    flex-direction: column;
    align-items: flex-start;
  }
}
.sec10-main__text1 {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .sec10-main__text1 {
    font-size: calc(56 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.4;
  }
}
.sec10-main__text2 {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  font-weight: 700;
  color: rgb(218, 18, 8);
  letter-spacing: 0.08em;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .sec10-main__text2 {
    font-size: calc(56 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.4;
  }
}
.sec10-main__badge {
  position: relative;
  width: min(calc(140 / 1080 * 100vw), 140px);
  height: min(calc(140 / 1080 * 100vw), 140px);
  background: url(../img/pc/cv_badge.webp) 50% 50%/100% no-repeat;
}
@media screen and (max-width: 767px) {
  .sec10-main__badge {
    width: calc(206 / 750 * 100vw);
    height: calc(206 / 750 * 100vw);
    background: url(../img/sp/cv_badge.webp) 50% 50%/100% no-repeat;
  }
}
.sec10-badge-inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding-bottom: 10%;
}
.sec10-badge__text1 {
  font-size: min(calc(16 / 1080 * 100vw), 16px);
  font-weight: 700;
  color: rgb(218, 18, 8);
  letter-spacing: 0.08em;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .sec10-badge__text1 {
    font-size: calc(26 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.8;
  }
}
.sec10-badge__number {
  display: flex;
  align-items: flex-end;
  gap: min(calc(2 / 1080 * 100vw), 2px);
}
@media screen and (max-width: 767px) {
  .sec10-badge__number {
    gap: calc(4 / 750 * 100vw);
  }
}
.sec10-badge__num {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  font-weight: 700;
  color: rgb(218, 18, 8);
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .sec10-badge__num {
    font-size: calc(48 / 750 * 100vw);
  }
}
.sec10-badge__unit {
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 700;
  color: rgb(218, 18, 8);
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .sec10-badge__unit {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.6;
  }
}
.sec10-note {
  font-size: min(calc(12 / 1080 * 100vw), 12px);
  font-weight: 400;
  color: rgb(102, 102, 102);
  letter-spacing: 0.04em;
  line-height: 1.5;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .sec10-note {
    font-size: calc(20 / 750 * 100vw);
    letter-spacing: 0.04em;
    line-height: 1.5;
  }
}
.sec10-row {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(40 / 1080 * 100vw), 40px);
  width: min(calc(1000 / 1080 * 100vw), 1000px);
  margin: min(calc(40 / 1080 * 100vw), 40px) auto 0;
}
@media screen and (max-width: 767px) {
  .sec10-row {
    gap: calc(40 / 750 * 100vw);
    width: 100%;
    margin-top: calc(40 / 750 * 100vw);
  }
}
.sec10-bg-content {
  display: flex;
  align-items: center;
  gap: min(calc(20 / 1080 * 100vw), 20px);
  width: 100%;
}
@media screen and (max-width: 767px) {
  .sec10-bg-content {
    flex-direction: column;
    gap: calc(40 / 750 * 100vw);
  }
}
.sec10-bg-image {
  position: relative;
  width: min(calc(538 / 1080 * 100vw), 538px);
  height: min(calc(320 / 1080 * 100vw), 320px);
  background: url(../img/pc/sec10_bg1.webp) 50% 50%/100% no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .sec10-bg-image {
    width: calc(630 / 750 * 100vw);
    height: calc(438 / 750 * 100vw);
    background: url(../img/sp/sec10_bg1.webp) 50% 50%/100% no-repeat;
  }
}
.sec10-bg__text {
  color: rgb(255, 255, 255);
  letter-spacing: 0.08em;
  text-align: center;
  width: min(calc(326 / 1080 * 100vw), 326px);
}
@media screen and (max-width: 767px) {
  .sec10-bg__text {
    width: calc(630 / 750 * 100vw);
  }
}
.sec10-bg__text-small {
  font-size: min(calc(24 / 1080 * 100vw), 24px);
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .sec10-bg__text-small {
    font-size: calc(38 / 750 * 100vw);
    line-height: 1.4;
  }
}
.sec10-bg__text-large {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .sec10-bg__text-large {
    font-size: calc(48 / 750 * 100vw);
    line-height: 1.4;
  }
}
.sec10-kec__text {
  flex: 1;
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec10-kec__text {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.8;
  }
}
.sec10-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(8 / 1080 * 100vw), 8px);
  width: 100%;
}
@media screen and (max-width: 767px) {
  .sec10-section {
    gap: calc(8 / 750 * 100vw);
  }
}
.sec10-section__header {
  display: flex;
  align-items: center;
  gap: min(calc(16 / 1080 * 100vw), 16px);
  width: 100%;
}
@media screen and (max-width: 767px) {
  .sec10-section__header {
    gap: calc(16 / 750 * 100vw);
    width: calc(630 / 750 * 100vw);
  }
}
.sec10-section__line {
  flex: 1;
  height: 1px;
  background: rgb(51, 51, 51);
}
.sec10-section__title {
  font-size: min(calc(24 / 1080 * 100vw), 24px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .sec10-section__title {
    font-size: calc(38 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.4;
  }
}
.sec10-section__subtitle {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  font-weight: 700;
  color: rgb(218, 18, 8);
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-align: center;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .sec10-section__subtitle {
    font-size: calc(48 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.4;
  }
}
.sec10-inner {
  display: flex;
  justify-content: center;
  gap: min(calc(40 / 1080 * 100vw), 40px);
  width: min(calc(920 / 1080 * 100vw), 920px);
}
@media screen and (max-width: 767px) {
  .sec10-inner {
    position: relative;
    z-index: 1;
    flex-direction: column;
    gap: calc(40 / 750 * 100vw);
    width: calc(630 / 750 * 100vw);
  }
  .sec10-inner::after {
    content: "";
    position: absolute;
    z-index: -1;
    width: 1px;
    height: 99%;
    background: rgb(218, 18, 8);
    left: calc(393 / 750 * 100vw);
  }
}
.sec10-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: rgb(245, 245, 245);
  width: min(calc(200 / 1080 * 100vw), 200px);
}
@media screen and (max-width: 767px) {
  .sec10-item {
    flex-direction: row;
    width: 100%;
  }
}
.sec10-item__image {
  width: min(calc(200 / 1080 * 100vw), 200px);
  height: min(calc(200 / 1080 * 100vw), 200px);
}
@media screen and (max-width: 767px) {
  .sec10-item__image {
    width: calc(180 / 750 * 100vw);
    height: calc(180 / 750 * 100vw);
    flex-shrink: 0;
  }
}
.sec10-item__text {
  display: flex;
  align-items: center;
  height: min(calc(100 / 1080 * 100vw), 100px);
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec10-item__text {
    flex: 1;
    display: block;
    height: auto;
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.8;
  }
}
.sec10-conditions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(24 / 1080 * 100vw), 24px);
  width: min(calc(1000 / 1080 * 100vw), 1000px);
  margin: min(calc(40 / 1080 * 100vw), 40px) auto 0;
}
@media screen and (max-width: 767px) {
  .sec10-conditions {
    gap: calc(24 / 750 * 100vw);
    width: 100%;
    margin-top: calc(40 / 750 * 100vw);
  }
}
.sec10-conditions__header {
  width: 100%;
}
.sec10-conditions__title {
  font-size: min(calc(22 / 1080 * 100vw), 22px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.6;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec10-conditions__title {
    font-size: calc(34 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.6;
  }
}
.sec10-conditions__number {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .sec10-conditions__number {
    font-size: calc(48 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.4;
  }
}
.sec10-conditions__content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: min(calc(10 / 1080 * 100vw), 10px);
  border: 1px solid rgb(218, 18, 8);
  padding: min(calc(28 / 1080 * 100vw), 28px) min(calc(40 / 1080 * 100vw), 40px);
  width: 100%;
}
@media screen and (max-width: 767px) {
  .sec10-conditions__content {
    flex-direction: column;
    gap: calc(24 / 750 * 100vw);
    padding: calc(36 / 750 * 100vw) calc(40 / 750 * 100vw);
    width: calc(630 / 750 * 100vw);
  }
}
.sec10-conditions__note {
  font-size: min(calc(12 / 1080 * 100vw), 12px);
  font-weight: 400;
  color: rgb(102, 102, 102);
  letter-spacing: 0.04em;
  line-height: 1.5;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .sec10-conditions__note {
    font-size: calc(20 / 750 * 100vw);
    letter-spacing: 0.04em;
    line-height: 1.5;
    width: calc(630 / 750 * 100vw);
  }
}
.sec10-condition {
  display: flex;
  align-items: center;
  gap: min(calc(20 / 1080 * 100vw), 20px);
  position: relative;
}
@media screen and (max-width: 767px) {
  .sec10-condition {
    gap: calc(32 / 750 * 100vw);
    width: 100%;
  }
}
.sec10-condition:first-child::after {
  content: "";
  position: absolute;
  right: max(calc(-64 / 1080 * 100vw), -64px);
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: min(calc(55 / 1080 * 100vw), 55px);
  background: #DFDFDF;
}
@media screen and (max-width: 767px) {
  .sec10-condition:first-child::after {
    right: auto;
    top: auto;
    bottom: max(calc(-25 / 1080 * 100vw), -25px);
    left: 0;
    transform: none;
    width: 100%;
    height: 1px;
  }
}
.sec10-condition__number {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  font-weight: 600;
  font-style: italic;
  color: rgb(218, 18, 8);
  letter-spacing: 0.04em;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .sec10-condition__number {
    font-size: calc(48 / 750 * 100vw);
    letter-spacing: 0.04em;
  }
}
.sec10-condition__text {
  font-size: min(calc(14 / 1080 * 100vw), 14px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .sec10-condition__text {
    flex: 1;
    font-size: calc(22 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.8;
  }
}

.sec11__inner {
  margin: 0 auto;
  width: min(calc(1080 / 1080 * 100vw), 1080px);
  padding: min(calc(80 / 1080 * 100vw), 80px) min(calc(147 / 1080 * 100vw), 147px);
  border-radius: min(calc(60 / 1080 * 100vw), 60px);
  background: linear-gradient(0deg, #FFF 1.7%, #FFFAEA 100%);
}
@media screen and (max-width: 767px) {
  .sec11__inner {
    width: 100%;
    padding: calc(110 / 750 * 100vw) calc(60 / 750 * 100vw) 0;
    border-radius: calc(80 / 750 * 100vw);
  }
}
.sec11-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(16 / 1080 * 100vw), 16px);
  margin-bottom: min(calc(40 / 1080 * 100vw), 40px);
}
@media screen and (max-width: 767px) {
  .sec11-header {
    gap: calc(32 / 750 * 100vw);
    margin-bottom: calc(80 / 750 * 100vw);
  }
}
.sec11-header__flow {
  font-size: min(calc(50 / 1080 * 100vw), 50px);
  font-weight: 600;
  font-style: italic;
  background: linear-gradient(137deg, rgb(218, 18, 8) 0%, rgb(180, 17, 8) 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  letter-spacing: 0.08em;
  line-height: 0.9;
}
@media screen and (max-width: 767px) {
  .sec11-header__flow {
    font-size: calc(60 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec11-header__title1 {
  margin-top: min(calc(20 / 1080 * 100vw), 20px);
  font-size: min(calc(22 / 1080 * 100vw), 22px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.6;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec11-header__title1 {
    margin-top: calc(24 / 750 * 100vw);
    font-size: calc(34 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec11-header__title2 {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec11-header__title2 {
    font-size: calc(56 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec11-steps {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: min(calc(20 / 1080 * 100vw), 20px);
  width: min(calc(786 / 1080 * 100vw), 786px);
}
@media screen and (max-width: 767px) {
  .sec11-steps {
    gap: calc(40 / 750 * 100vw);
    width: calc(630 / 750 * 100vw);
  }
}
.sec11-step {
  display: flex;
  align-items: center;
  gap: min(calc(24 / 1080 * 100vw), 24px);
  width: 100%;
}
@media screen and (max-width: 767px) {
  .sec11-step {
    gap: calc(24 / 750 * 100vw);
  }
}
.sec11-step__icon {
  width: min(calc(100 / 1080 * 100vw), 100px);
  height: min(calc(100 / 1080 * 100vw), 100px);
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .sec11-step__icon {
    width: calc(140 / 750 * 100vw);
    height: calc(140 / 750 * 100vw);
  }
}
.sec11-step__content {
  display: flex;
  flex-direction: column;
  gap: min(calc(8 / 1080 * 100vw), 8px);
  flex: 1;
  position: relative;
}
@media screen and (max-width: 767px) {
  .sec11-step__content {
    gap: calc(16 / 750 * 100vw);
  }
}
.sec11-step__content::after {
  content: "";
  position: absolute;
  top: min(calc(9 / 1080 * 100vw), 9px);
  left: min(calc(82 / 1080 * 100vw), 82px);
  right: 0;
  height: 1px;
  background: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec11-step__content::after {
    top: calc(14 / 750 * 100vw);
    left: calc(112 / 750 * 100vw);
  }
}
.sec11-step__number {
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .sec11-step__number {
    font-size: calc(28 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec11-step__text {
  font-size: min(calc(20 / 1080 * 100vw), 20px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.6;
  text-align: justify;
}
@media screen and (max-width: 767px) {
  .sec11-step__text {
    font-size: calc(32 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec11-benefit1 {
  width: 100%;
  padding: min(calc(15 / 1080 * 100vw), 15px);
  background: rgba(218, 18, 8, 0.1);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec11-benefit1 {
    width: 100%;
    padding: calc(16 / 750 * 100vw);
  }
}
.sec11-benefit1__text1, .sec11-benefit1__text3 {
  font-size: min(calc(30 / 1080 * 100vw), 30px);
  font-weight: 700;
  background: linear-gradient(137deg, rgb(218, 18, 8) 0%, rgb(180, 17, 8) 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  letter-spacing: 0.08em;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .sec11-benefit1__text1, .sec11-benefit1__text3 {
    font-size: calc(42 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec11-benefit1__text2 {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  font-weight: 700;
  background: linear-gradient(137deg, rgb(218, 18, 8) 0%, rgb(180, 17, 8) 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  letter-spacing: 0.08em;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .sec11-benefit1__text2 {
    font-size: calc(56 / 750 * 100vw);
    letter-spacing: 0.08em;
  }
}
.sec11-benefit2 {
  width: 100%;
  background: rgba(218, 18, 8, 0.1);
  padding: min(calc(36 / 1080 * 100vw), 36px) 0;
}
@media screen and (max-width: 767px) {
  .sec11-benefit2 {
    padding: calc(42 / 750 * 100vw) calc(42 / 750 * 100vw);
  }
}
.sec11-benefit2__text {
  width: fit-content;
  margin: 0 auto;
  border-bottom: 1px solid rgb(218, 18, 8);
  background: linear-gradient(137deg, rgb(218, 18, 8) 0%, rgb(180, 17, 8) 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.4;
}
.sec11-benefit2__text1 {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
}
@media screen and (max-width: 767px) {
  .sec11-benefit2__text1 {
    font-size: calc(48 / 750 * 100vw);
  }
}
.sec11-benefit2__text2 {
  font-size: min(calc(22 / 1080 * 100vw), 22px);
}
@media screen and (max-width: 767px) {
  .sec11-benefit2__text2 {
    font-size: calc(32 / 750 * 100vw);
  }
}
.sec11-benefit2__text3 {
  font-size: min(calc(50 / 1080 * 100vw), 50px);
}
@media screen and (max-width: 767px) {
  .sec11-benefit2__text3 {
    font-size: calc(60 / 750 * 100vw);
  }
}
.sec11-benefit2__text4 {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
}
@media screen and (max-width: 767px) {
  .sec11-benefit2__text4 {
    font-size: calc(48 / 750 * 100vw);
  }
}
.sec11-benefit2__text5 {
  font-size: min(calc(26 / 1080 * 100vw), 26px);
}
@media screen and (max-width: 767px) {
  .sec11-benefit2__text5 {
    font-size: calc(36 / 750 * 100vw);
  }
}
.sec11-benefit2__text6 {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
}
@media screen and (max-width: 767px) {
  .sec11-benefit2__text6 {
    font-size: calc(48 / 750 * 100vw);
  }
}
.sec11-benefit2__note {
  font-size: min(calc(14 / 1080 * 100vw), 14px);
  font-weight: 400;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec11-benefit2__note {
    padding: 0 calc(20 / 750 * 100vw);
    font-size: calc(22 / 750 * 100vw);
    text-align: left;
  }
}
.sec11-notes {
  font-size: min(calc(12 / 1080 * 100vw), 12px);
  font-weight: 400;
  color: rgb(102, 102, 102);
  letter-spacing: 0.04em;
  line-height: 1.5;
  margin-top: min(calc(40 / 1080 * 100vw), 40px);
  width: min(calc(786 / 1080 * 100vw), 786px);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 767px) {
  .sec11-notes {
    font-size: calc(20 / 750 * 100vw);
    letter-spacing: 0.04em;
    margin-top: calc(56 / 750 * 100vw);
    width: calc(630 / 750 * 100vw);
  }
}

.sec12 {
  position: relative;
  background: url(../img/pc/cv01.webp) 50% 0/100% no-repeat;
  padding: min(calc(80 / 1080 * 100vw), 80px) 0;
}
@media screen and (max-width: 767px) {
  .sec12 {
    background: url(../img/sp/cv01.webp) 50% 0/100% no-repeat;
    padding: calc(120 / 750 * 100vw) 0;
  }
}
.sec12-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(calc(12 / 1080 * 100vw), 12px);
  width: min(calc(1000 / 1080 * 100vw), 1000px);
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .sec12-content {
    gap: calc(24 / 750 * 100vw);
    width: calc(630 / 750 * 100vw);
  }
}
.sec12-header {
  display: flex;
  align-items: center;
  gap: min(calc(12 / 1080 * 100vw), 12px);
}
@media screen and (max-width: 767px) {
  .sec12-header {
    flex-direction: row;
    align-items: center;
    gap: calc(24 / 750 * 100vw);
  }
}
.sec12-header__text {
  font-size: min(calc(22 / 1080 * 100vw), 22px);
  font-weight: 900;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .sec12-header__text {
    width: calc(370 / 750 * 100vw);
    font-size: calc(34 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.6;
  }
}
.sec12-header__logo {
  width: min(calc(174 / 1080 * 100vw), 174px);
}
@media screen and (max-width: 767px) {
  .sec12-header__logo {
    width: calc(232 / 750 * 100vw);
  }
}
.sec12-main-wrapper {
  position: relative;
  width: 100%;
}
.sec12-main-wrapper::before {
  content: "";
  width: 100%;
  height: 1px;
  background: rgb(30, 58, 95);
  display: block;
}
.sec12-main-wrapper::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(calc(22 / 1080 * 100vw), 22px);
  height: min(calc(16 / 1080 * 100vw), 16px);
  background: rgb(30, 58, 95);
  clip-path: polygon(50% 100%, 0 0, 100% 0);
}
@media screen and (max-width: 767px) {
  .sec12-main-wrapper::after {
    width: calc(32 / 750 * 100vw);
    height: calc(24 / 750 * 100vw);
  }
}
.sec12-main {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min(calc(2 / 1080 * 100vw), 2px);
  margin-top: min(calc(12 / 1080 * 100vw), 12px);
}
@media screen and (max-width: 767px) {
  .sec12-main {
    justify-content: space-between;
    gap: 0;
    margin-top: calc(24 / 750 * 100vw);
  }
}
.sec12-main__left {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .sec12-main__left {
    flex-direction: column;
    align-items: flex-start;
  }
}
.sec12-main__text1 {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .sec12-main__text1 {
    font-size: calc(56 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.4;
  }
}
.sec12-main__text2 {
  font-size: min(calc(42 / 1080 * 100vw), 42px);
  font-weight: 700;
  color: rgb(218, 18, 8);
  letter-spacing: 0.08em;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .sec12-main__text2 {
    font-size: calc(56 / 750 * 100vw);
    letter-spacing: 0.02em;
  }
}
.sec12-main__badge {
  position: relative;
  width: min(calc(140 / 1080 * 100vw), 140px);
  height: min(calc(140 / 1080 * 100vw), 140px);
  background: url(../img/pc/cv_badge.webp) 50% 50%/100% no-repeat;
}
@media screen and (max-width: 767px) {
  .sec12-main__badge {
    width: calc(206 / 750 * 100vw);
    height: calc(206 / 750 * 100vw);
    background: url(../img/sp/cv_badge.webp) 50% 50%/100% no-repeat;
  }
}
.sec12-badge-inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding-bottom: 10%;
}
.sec12-badge__text1 {
  font-size: min(calc(16 / 1080 * 100vw), 16px);
  font-weight: 700;
  color: rgb(218, 18, 8);
  letter-spacing: 0.08em;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .sec12-badge__text1 {
    font-size: calc(26 / 750 * 100vw);
    letter-spacing: 0.08em;
    line-height: 1.8;
  }
}
.sec12-badge__number {
  display: flex;
  align-items: flex-end;
  gap: min(calc(2 / 1080 * 100vw), 2px);
}
@media screen and (max-width: 767px) {
  .sec12-badge__number {
    gap: calc(4 / 750 * 100vw);
  }
}
.sec12-badge__num {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  font-weight: 700;
  color: rgb(218, 18, 8);
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .sec12-badge__num {
    font-size: calc(48 / 750 * 100vw);
  }
}
.sec12-badge__unit {
  font-size: min(calc(18 / 1080 * 100vw), 18px);
  font-weight: 700;
  color: rgb(218, 18, 8);
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .sec12-badge__unit {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.6;
  }
}
.sec12-note {
  font-size: min(calc(12 / 1080 * 100vw), 12px);
  font-weight: 400;
  color: rgb(102, 102, 102);
  letter-spacing: 0.04em;
  line-height: 1.5;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .sec12-note {
    margin-top: calc(12 / 750 * 100vw);
    font-size: calc(20 / 750 * 100vw);
    letter-spacing: 0.04em;
    line-height: 1.5;
  }
}

.sec13 {
  position: relative;
  background: url(../img/pc/sec13.webp) 50% 0/100% no-repeat;
  height: min(calc(427 / 1080 * 100vw), 427px);
  padding-top: min(calc(46 / 1080 * 100vw), 46px);
}
@media screen and (max-width: 767px) {
  .sec13 {
    background: url(../img/sp/sec13.webp) 50% 0/100% no-repeat;
    height: calc(1269 / 750 * 100vw);
    padding-top: calc(68 / 750 * 100vw);
  }
}
.sec13__title {
  width: fit-content;
  margin: 0 0 0 min(calc(500 / 1080 * 100vw), 500px);
  font-size: min(calc(30 / 1080 * 100vw), 30px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec13__title {
    width: 100%;
    margin: 0;
    font-size: calc(42 / 750 * 100vw);
  }
}
.sec13__title__highlight {
  font-size: min(calc(48 / 1080 * 100vw), 48px);
  color: rgb(218, 18, 8);
}
@media screen and (max-width: 767px) {
  .sec13__title__highlight {
    font-size: calc(64 / 750 * 100vw);
  }
}
.sec13__title__text {
  font-size: min(calc(38 / 1080 * 100vw), 38px);
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec13__title__text {
    font-size: calc(48 / 750 * 100vw);
  }
}
.sec13__title__main {
  font-size: min(calc(48 / 1080 * 100vw), 48px);
  line-height: 1;
  color: rgb(51, 51, 51);
}
@media screen and (max-width: 767px) {
  .sec13__title__main {
    font-size: calc(64 / 750 * 100vw);
  }
}
.sec13__message {
  margin: min(calc(84 / 1080 * 100vw), 84px) 0 0 min(calc(500 / 1080 * 100vw), 500px);
}
@media screen and (max-width: 767px) {
  .sec13__message {
    margin: calc(689 / 750 * 100vw) 0 0;
    padding: 0 calc(60 / 750 * 100vw);
  }
}
.sec13__message__title {
  font-size: min(calc(26 / 1080 * 100vw), 26px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .sec13__message__title {
    font-size: calc(42 / 750 * 100vw);
    text-align: left;
  }
}
.sec13__message__text {
  font-size: min(calc(22 / 1080 * 100vw), 22px);
  font-weight: 700;
  color: rgb(51, 51, 51);
  letter-spacing: 0.08em;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .sec13__message__text {
    font-size: calc(34 / 750 * 100vw);
  }
}
/*# sourceMappingURL=fv.css.map */
