@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@100..900&family=Noto+Sans+JP:wght@100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");

@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New&display=swap');

/* リセットCSS
===================================== */
:root{
  --site-max-width:100%;
  --site-main-width:100%;
  --site-division:393;
  --site-horizontal-ratio:calc(100vw / var(--site-division));
}
@media (min-width: 768px){
  :root{
    --site-division:1200;
  }
}

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

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

li, dd {
  list-style-type: none;
}

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

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

q, blockquote {
  quotes: none;
}

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

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

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

img {
  border: none;
  vertical-align: bottom;
}

/* 基本設定
===================================== */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

:root{
  --site-font-family-Zen-Kaku-Gothic-New:"Zen Kaku Gothic New", sans-serif;
  --site-division:393;
  --site-horizontal-ratio:calc(100vw / var(--site-division));
}


body {
  color: #333333;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
}

a {
  cursor: pointer;
  text-decoration: none;
}

.note-show {
  display: none;
}
@media (max-width: 1279px) {
  .note-show {
    display: block;
  }
}

.note-hide {
  display: block;
}
@media (max-width: 1279px) {
  .note-hide {
    display: none;
  }
}

.tab-show {
  display: none;
}
@media (max-width: 1024px) {
  .tab-show {
    display: block;
  }
}

.tab-hide {
  display: block;
}
@media (max-width: 1024px) {
  .tab-hide {
    display: none;
  }
}

.sp-show {
  display: none;
}
@media (max-width: 767px) {
  .sp-show {
    display: block;
  }
}

.sp-hide {
  display: block;
}
@media (max-width: 767px) {
  .sp-hide {
    display: none;
  }
}

main {
  margin-top: 85px;
}
@media (max-width: 767px) {
  main {
    margin-top: 50px;
  }
}

.fv {
  height: 46.6603221083vw;
  background-image: url(../img/fv.webp);
  background-size: cover;
  background-position: center;
}
@media (max-width: 767px) {
  .fv {
    height: 155.1333333333vw;
    background-image: url(../img/fv.webp);
    background-size: 296%;
  }
}
.fv .section-inner {
  padding-top: 1.3426061493vw;
  padding-left: 13.3235724744vw;
}
@media (max-width: 1279px) {
  .fv .section-inner {
    padding-left: 7.3206442167vw;
  }
}
@media (max-width: 767px) {
  .fv .section-inner {
    padding-left: 2.6666666667vw;
  }
}
.fv .section-inner .logo {
  margin-bottom: 1.7086383602vw;
}
.fv .section-inner .logo img {
  height: 3.6603221083vw;
  width: auto;
}
@media (max-width: 767px) {
  .fv .section-inner .logo img {
    height: 8vw;
  }
}
@media (max-width: 767px) {
  .fv .section-inner .logo {  
    margin-bottom: 17vw;
  }
}
.fv .section-inner .flex {
  margin-bottom: 1vw;
}
.fv .section-inner .flex img {
  width: 16.0322108346vw;
  height: 100%;
}
.fv .section-inner .flex img:first-child {
  margin-right: 2.9282576867vw;
}
@media (max-width: 767px) {
  .fv .section-inner .flex img {
    width: 45.3333333333vw;
  }
  .fv .section-inner .flex img:first-child {
    margin-right: 2.6666666667vw;
  }
}
@media (max-width: 767px) {
  .fv .section-inner .flex {
    margin-bottom: 2.6666666667vw;
  }
}
.fv .section-inner h1 {
  letter-spacing: 0.13em;
  line-height: 1.4em;
  font-weight: 500;
  color: #333;
  font-size: 3.6603221083vw;
  margin-bottom: 1vw;
}
@media (max-width: 767px) {
  .fv .section-inner h1 {
    font-size: 5.8666666667vw;
    font-size: 6.8666666667vw;
    margin-bottom: 5.3333333333vw;
    font-weight: bold;
  }
}
.fv .section-inner h1 span {
  color: #5fb0cb;
}
.fv .section-inner .txt {
  font-size: 1.1713030747vw;
  letter-spacing: 0.05em;
  color: #333;
  line-height: 2.1em;
  margin-bottom: 1vw;
}
.fv .section-inner .txt span {
  color: #F1A900;
  font-weight: 700;
  padding-left: 1.5px;
  padding-right: 1.5px;
}
.fv .section-inner .txt span .big {
  padding-left: 0;
  padding-right: 0;
  font-size: 1.5em;
}
@media (max-width: 767px) {
  .fv .section-inner .txt span {
    color: white;
    font-size: 1.2em;
  }
}
@media (max-width: 767px) {
  .fv .section-inner .txt {
    font-size: 2.9333333333vw;
    margin-bottom: 1.3333333333vw;
    padding-right: 1.3333333333vw;
    padding-left: 1.3333333333vw;
    line-height: 2.2em;
    font-weight: bold;
    white-space: nowrap;
    background-color: #fa8089;
    display: inline-block;
    color: white;
  }
  .fv .section-inner .txt.sp-hide {
    display: none;
  }
  .fv .section-inner .txt.last-txt {
    margin-bottom: 8vw;
  }
}
@media (max-width: 767px) {
  .fv .section-inner .btn-wrapper {
    padding-right: 5.3333333333vw;
  }
}
.fv .section-inner .btn-wrapper .btn {
  display: flex;
  width: 40.2635431918vw;
  height: 6.588579795vw;
  background-color: #fa8089;
  border-radius: 99px;
  align-items: center;
  box-shadow: 0.3660322108vw 0.3660322108vw 0 0 #a22828;
  margin-bottom: 1.5vw;
  top: 0;
  position: relative;
  transition: all 0.4s;
  overflow: hidden;
  cursor: pointer;
}
.fv .section-inner .btn-wrapper .btn span {
  color: white;
  font-size: 1.756954612vw;
  letter-spacing: 0.05em;
  font-weight: bold;
  padding-left: 6.588579795vw;
  margin-right: 1.4641288433vw;
  position: relative;
  top: 0.3660322108vw;
}
@media (max-width: 767px) {
  .fv .section-inner .btn-wrapper .btn span {
    position: relative;
    top: 5px;
  }
}
.fv .section-inner .btn-wrapper .btn .span2 {
  font-size: 1.0248901903vw;
  top: 1.4641288433vw;
  padding-right: 0vw;
  margin-left: 1.8301610542vw;
}
@media (max-width: 767px) {
  .fv .section-inner .btn-wrapper .btn .span2 {
    font-size: 10px;
    top: 13px;
    padding-right: 15px;
  }
}
.fv .section-inner .btn-wrapper .btn img {
  width: 3.6603221083vw;
  height: auto;
  transition: all 0.4s;
}
@media (max-width: 767px) {
  .fv .section-inner .btn-wrapper .btn {
    width: 100%;
    height: 16vw;
    justify-content: center;
    box-shadow: 1.3333333333vw 1.3333333333vw 0 0 #a22828;
    margin-bottom: 5.3333333333vw;
  }
  .fv .section-inner .btn-wrapper .btn span {
    font-size: 4.8vw;
  }
  .fv .section-inner .btn-wrapper .btn img {
    width: 6.6666666667vw;
  }
}
@media (min-width: 768px) {
  .fv .section-inner .btn-wrapper .btn:hover {
    top: -0.2928257687vw;
    box-shadow: 0.3660322108vw 0.7320644217vw 0 0 #a22828;
  }
  .fv .section-inner .btn-wrapper .btn:hover img {
    transform: rotate(360deg);
  }
  .fv .section-inner .btn-wrapper .btn:active {
    top: 0.3660322108vw;
    box-shadow: 0vw 0vw 0 0 #a22828;
  }
}
.fv .section-inner .btn-wrapper .btn::before {
  position: absolute;
  top: 0;
  left: -75%;
  z-index: 2;
  display: block;
  content: "";
  width: 50%;
  height: 100%;
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  -webkit-transform: skewX(-25deg);
  transform: skewX(-25deg);
  animation: shine 2.5s linear infinite;
}
@-webkit-keyframes shine {
  80% {
    left: -75%;
  }
  100% {
    left: 125%;
  }
}
@keyframes shine {
  80% {
    left: -75%;
  }
  100% {
    left: 125%;
  }
}
@media (max-width: 767px) {
  .fv .section-inner .notice {
    padding-right: 5.3333333333vw;
    margin-bottom: 5.5vw;
  }
}
.fv .section-inner .notice p {
  font-size: 0.878477306vw;
  letter-spacing: 0.05em;
  color: #333;
  line-height: 1.5em;
}
@media (max-width: 1279px) {
  .fv .section-inner .notice p {
    font-size: 10px;
  }
}
@media (max-width: 767px) {
  .fv .section-inner .notice p span {
    padding-left: 7.4666666667vw;
  }
}

.desc {
  background: rgb(95, 176, 203);
  background: linear-gradient(267deg, rgb(95, 176, 203) 0%, rgb(122, 224, 216) 100%);
  padding-top: 3.5871156662vw;
  padding-bottom: 2.9282576867vw;
  padding-left: 20px;
  padding-right: 20px;
}
.desc h2 {
  text-align: center;
  color: white;
  font-weight: bold;
  font-size: 2.3426061493vw;
  line-height: 1.4em;
}
.desc h2 span {
  color: #fffcb4;
}
@media (max-width: 767px) {
  .desc h2 {
    font-size: 5.3333333333vw;
  }
}

.problem {
  position: relative;
  padding-top: 60px;
  padding-bottom: 90px;
  background-color: #f5f5f5;
}
@media (max-width: 767px) {
  .problem {
    padding-top: 10.6666666667vw;
    padding-bottom: 26.6666666667vw;
    padding-left: 2.6666666667vw;
    padding-right: 2.6666666667vw;
  }
}
.problem .section-inner {
  position: relative;
  z-index: 2;
}
.problem .section-inner .ttl-wrapper h3, .problem .section-inner .ttl-wrapper h4 {
  text-align: center;
  font-size: 25px;
  font-weight: bold;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .problem .section-inner .ttl-wrapper h3, .problem .section-inner .ttl-wrapper h4 {
    font-size: 5.3333333333vw;
  }
}
.problem .section-inner .ttl-wrapper h3 {
  line-height: 1.44em;
}
@media (max-width: 767px) {
  .problem .section-inner .ttl-wrapper h3 {
    margin-bottom: 2.6666666667vw;
  }
}
.problem .section-inner .ttl-wrapper h4 {
  line-height: 2em;
}
.problem .section-inner .ttl-wrapper h4 > span {
  padding-left: 10px;
  padding-right: 10px;
  position: relative;
}
.problem .section-inner .ttl-wrapper h4 > span .gold {
  color: #31cec2;
  font-size: 1.36em;
}
.problem .section-inner .ttl-wrapper h4 > span::after {
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: -10px;
  background-image: url(../img/dot.svg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.problem .section-inner .flex {
  display: flex;
  justify-content: center;
  margin-top: 30px;
}
@media (max-width: 767px) {
  .problem .section-inner .flex {
    align-items: center;
  }
}
.problem .section-inner .flex img {
  height: 124px;
  width: auto;
}
@media (max-width: 767px) {
  .problem .section-inner .flex img {
    height: 26.6666666667vw;
    width: auto;
  }
}
.problem .section-inner .flex img:first-child {
  height: 114.5px;
  margin-left: 14px;
  margin-right: 14px;
}
@media (max-width: 767px) {
  .problem .section-inner .flex img:first-child {
    height: 26.6666666667vw;
    width: auto;
    margin-left: unset;
    margin-right: unset;
  }
}
@media (max-width: 767px) {
  .problem .section-inner .flex img:nth-child(2) {
    position: relative;
    margin-left: -5.3333333333vw;
    margin-right: -5.3333333333vw;
    top: 5.3333333333vw;
    left: 2.6666666667vw;
  }
}
.problem .section-inner .flex img:last-child {
  position: relative;
  right: -10px;
}
@media (max-width: 767px) {
  .problem .section-inner .flex img:last-child {
    right: -2.6666666667vw;
  }
}
.problem .section-inner .anshin-wrapper h5, .problem .section-inner .anshin-wrapper h3 {
  text-align: center;
}
.problem .section-inner .anshin-wrapper h5 {
  font-size: 26px;
  padding-top: 50px;
  font-weight: bold;
  letter-spacing: 0.05em;
}
.problem .section-inner .anshin-wrapper h5 span {
  display: inline-block;
  position: relative;
}
.problem .section-inner .anshin-wrapper h5 span::after {
  content: "";
  width: 100%;
  height: 15px;
  background-image: url(../img/fukidashi.svg);
  position: absolute;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  left: 0;
  bottom: -25px;
}
.problem .section-inner .anshin-wrapper h3 {
  font-size: 36px;
  font-weight: bold;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .problem .section-inner .anshin-wrapper h3 {
    font-size: 6.4vw;
  }
}
.problem .section-inner .anshin-wrapper .h3-1 {
  margin-top: 30px;
}
@media (max-width: 767px) {
  .problem .section-inner .anshin-wrapper .h3-1 {
    margin-top: 10.6666666667vw;
  }
}
.problem .section-inner .anshin-wrapper .h3-1 img {
  width: 145px;
  height: auto;
}
@media (max-width: 767px) {
  .problem .section-inner .anshin-wrapper .h3-1 img {
    width: 100px;
  }
}
.problem .section-inner .anshin-wrapper .h3-1 span {
  display: inline-block;
  padding-bottom: 15px;
  padding-left: 5px;
}
.problem .section-inner .anshin-wrapper .h3-2 {
  margin-top: 5px;
}
.problem .section-inner .anshin-wrapper .h3-2 .pink {
  font-size: 1.1em;
  color: #fa8089;
}
.problem .section-inner .anshin-wrapper .h3-2 .pink > span {
  color: #fa8089;
}
.problem .section-inner .anshin-wrapper .h3-2 .pink .big {
  font-size: 1.3em;
}
.problem .section-inner .anshin-wrapper .h3-2 .pink .med {
  font-size: 1.1em;
}
.problem .section-inner .sec-ttl {
  padding-top: 80px;
}
@media (max-width: 767px) {
  .problem .section-inner .sec-ttl {
    padding-top: 13.3333333333vw;
  }
}
.problem .section-inner .sec-ttl h2 {
  color: white;
  font-size: 130px;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .problem .section-inner .sec-ttl h2 {
    font-size: 21.3333333333vw;
  }
}
.problem .section-inner .sec-ttl .h6-1 {
  position: relative;
  top: -50px;
  font-size: 40px;
}
@media (max-width: 767px) {
  .problem .section-inner .sec-ttl .h6-1 {
    font-size: 6.4vw;
    top: -25px;
  }
}
.problem .section-inner .sec-ttl .h6-2 {
  position: relative;
  font-size: 46px;
  top: -36px;
}
@media (max-width: 767px) {
  .problem .section-inner .sec-ttl .h6-2 {
    font-size: 6.9333333333vw;
    top: -6.6666666667vw;
  }
}
.problem .section-inner .sec-ttl .h6-2 span {
  font-size: 1.19em;
}
.problem .section-inner .point-flex {
  display: flex;
  justify-content: space-between;
  max-width: 1000px;
  margin: auto;
  margin-top: 50px;
  padding-bottom: 80px;
}
@media (max-width: 767px) {
  .problem .section-inner .point-flex {
    flex-direction: column;
    padding-left: 20px;
    padding-right: 20px;
  }
}
.problem .section-inner .point-flex .card {
  width: 30%;
}
@media (max-width: 767px) {
  .problem .section-inner .point-flex .card {
    width: 100%;
  }
}
.problem .section-inner .point-flex .card img {
  margin-bottom: 30px;
  width: 100%;
}
.problem .section-inner .point-flex .card .card-ttl {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}
.problem .section-inner .point-flex .card .card-ttl .circle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background-color: #31cec2;
  border-radius: 50%;
  margin-right: 10px;
}
.problem .section-inner .point-flex .card .card-ttl .circle p {
  font-family: "Poppins";
  font-weight: bold;
  color: white;
  font-size: 31px;
}
@media (max-width: 767px) {
  .problem .section-inner .point-flex .card .card-ttl .circle p {
    font-size: 6.4vw;
  }
}
.problem .section-inner .point-flex .card .card-ttl h4 {
  font-size: 26px;
  line-height: 1.38em;
  font-weight: bold;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .problem .section-inner .point-flex .card .card-ttl h4 {
    font-size: 5.3333333333vw;
    width: calc(100% - 50px);
  }
}
.problem .section-inner .point-flex .card > p {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.5em;
}
@media (max-width: 767px) {
  .problem .section-inner .point-flex .card > p {
    font-size: 3.7333333333vw;
  }
}
.problem .section-inner .ttl2 {
  padding-top: 0px;
}
.problem .section-inner .ttl2 h2 {
  color: white;
  font-size: 130px;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .problem .section-inner .ttl2 h2 {
    font-size: 16vw;
  }
}
.problem .section-inner .ttl2 .h6-1 {
  position: relative;
  top: -50px;
  font-size: 28px;
}
@media (max-width: 767px) {
  .problem .section-inner .ttl2 .h6-1 {
    font-size: 5.3333333333vw;
    top: -5.3333333333vw;
  }
}
.problem .section-inner .card-flex2 {
  max-width: 1000px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  margin-bottom: 70px;
}
@media (max-width: 767px) {
  .problem .section-inner .card-flex2 {
    flex-direction: column;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 10.6666666667vw;
  }
}
.problem .section-inner .card-flex2 .card {
  width: calc(50% - 30px);
  display: flex;
  position: relative;
  padding-bottom: 30px;
}
@media (max-width: 767px) {
  .problem .section-inner .card-flex2 .card {
    width: 100%;
    padding-bottom: 10px;
    margin-bottom: 20px;
  }
}
.problem .section-inner .card-flex2 .card img {
  width: 50%;
  position: relative;
  z-index: 2;
  height: 100%;
}
.problem .section-inner .card-flex2 .card p {
  padding-top: 112px;
  padding-left: 30px;
  font-size: 18px;
  line-height: 1.6666em;
  font-weight: bold;
  letter-spacing: 0.05em;
  color: #333;
  position: relative;
  z-index: 2;
}
@media (max-width: 767px) {
  .problem .section-inner .card-flex2 .card p {
    font-size: 3.7333333333vw;
    padding-left: 10px;
    padding-top: 85px;
  }
}
.problem .section-inner .card-flex2 .card::after {
  content: "";
  opacity: 0.3;
  width: calc(100% - 70px);
  height: calc(100% - 54px);
  background: rgb(122, 224, 216);
  background: linear-gradient(180deg, rgb(122, 224, 216) 0%, rgb(95, 176, 203) 100%);
  position: absolute;
  top: 54px;
  left: 70px;
}
.problem .section-inner .anshin-txt p {
  text-align: center;
  line-height: 1.83em;
  font-size: 30px;
  letter-spacing: 0.05em;
  font-weight: bold;
}
@media (max-width: 767px) {
  .problem .section-inner .anshin-txt p {
    font-size: 4.2666666667vw;
  }
}
.problem .section-inner .anshin-txt p .pink {
  color: #fa8089;
  font-size: 1.16666em;
}
.problem .section-inner .anshin-txt p .bb {
  font-size: 1.5em;
  background: linear-gradient(transparent 60%, #fffcb4 0%);
}

.sarani {
  position: relative;
  padding-left: 20px;
  padding-right: 20px;
  background-color: #f5f5f5;
  clip-path: polygon(100% 0, 100% calc(100% - 50px), 50% 100%, 0 calc(100% - 50px), 0 0);
}
.sarani::before {
  content: "";
  width: 100%;
  left: 0;
  height: 100%;
  position: absolute;
  background: rgb(122, 224, 216);
  background: linear-gradient(90deg, rgb(122, 224, 216) 0%, rgb(95, 176, 203) 100%);
  clip-path: polygon(50% 50px, 100% 0, 100% calc(100% - 50px), 50% 100%, 0 calc(100% - 50px), 0 0);
}
.sarani .section-inner {
  display: flex;
  position: relative;
  z-index: 2;
  flex-direction: column;
  align-items: center;
  padding-bottom: 90px;
}
.sarani .section-inner .circle {
  width: 140px;
  height: 140px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  font-weight: bold;
  background-color: #fff;
  border-radius: 50%;
  box-shadow: 0 3px 8px 0 rgba(0, 0, 0, 0.16);
  margin-bottom: 46px;
}
@media (max-width: 767px) {
  .sarani .section-inner .circle {
    font-size: 5.3333333333vw;
    width: 26.6666666667vw;
    height: 26.6666666667vw;
  }
}
.sarani .section-inner .circle p {
  color: #333;
}
.sarani .section-inner p {
  color: white;
  font-weight: bold;
}
.sarani .section-inner .desc1 {
  font-size: 26px;
  letter-spacing: 0.05em;
  margin-bottom: 25px;
}
.sarani .section-inner .desc1 span {
  color: white;
  font-size: 1.34615em;
}
.sarani .section-inner .desc1 .bigbig {
  color: #FFFCB4;
  font-size: 1.5em;
}
.sarani .section-inner .desc1 .mini {
  font-size: 0.577em;
}
@media (max-width: 767px) {
  .sarani .section-inner .desc1 {
    font-size: 5.3333333333vw;
    text-align: center;
    line-height: 1.4em;
  }
}
.sarani .section-inner .desc2 {
  text-align: center;
  font-size: 35px;
  font-weight: bold;
  line-height: 1.71em;
}
@media (max-width: 767px) {
  .sarani .section-inner .desc2 {
    font-size: 5.3333333333vw;
  }
}
.sarani .section-inner .desc2 span {
  color: #fffcb4;
}
.sarani .section-inner .desc2 .dot {
  position: relative;
}
.sarani .section-inner .desc2 .dot::before {
  content: "・・・・";
  position: absolute;
  top: -30px;
  left: 0;
  font-weight: 300;
}
@media (max-width: 767px) {
  .sarani .section-inner .desc2 .dot::before {
    top: -20px;
  }
}
@media (max-width: 767px) {
  .sarani .section-inner .notice {
    font-size: 12px;
    text-align: center;
  }
}

.sec-ttl {
  position: relative;
}
.sec-ttl h2, .sec-ttl h6 {
  text-align: center;
}
.sec-ttl h2 {
  font-size: 130px;
  font-weight: bold;
  color: #f5f5f5;
  letter-spacing: 0.05em;
}
@media (max-width: 1024px) {
  .sec-ttl h2 {
    font-size: 100px;
  }
}
@media (max-width: 767px) {
  .sec-ttl h2 {
    font-size: 18.6666666667vw;
  }
}
.sec-ttl h6 {
  font-size: 28px;
  letter-spacing: 0.05em;
  position: absolute;
  width: 100%;
  bottom: 10px;
}
@media (max-width: 767px) {
  .sec-ttl h6 {
    font-size: 5.3333333333vw;
    bottom: 5.3333333333vw;
    line-height: 1.4em;
  }
}

.increase .katsuyaku {
  padding-top: 90px;
  margin: auto;
}
@media (max-width: 767px) {
  .increase .katsuyaku {
    padding-top: 60px;
  }
}
.increase .katsuyaku p {
  text-align: center;
  font-size: 26px;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.46em;
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  .increase .katsuyaku p {
    font-size: 5.3333333333vw;
  }
}
.increase .katsuyaku .buildru {
  display: flex;
  justify-content: center;
  margin-bottom: 28px;
}
.increase .katsuyaku .flex {
  display: flex;
  justify-content: space-between;
  margin: auto;
  margin-bottom: 86px;
  max-width: 743px;
}
.increase .katsuyaku .flex img {
  width: 30%;
  height: auto;
}
@media (max-width: 767px) {
  .increase .katsuyaku .flex {
    margin-bottom: 10px;
  }
  .increase .katsuyaku .flex img {
    width: 30%;
    display: block;
    margin: auto;
    margin-bottom: 20px;
  }
}
.increase .katsuyaku .btn-wrapper {
  display: flex;
  justify-content: space-around;
}
.increase .katsuyaku .btn-wrapper .btn {
  display: flex;
  justify-content: space-around;
  width: 48%;
  max-width: 450px;
  height: 90px;
  background-color: #fa8089;
  border-radius: 99px;
  align-items: center;
  box-shadow: 5px 5px 0 0 #a22828;
  margin-bottom: 100px;
  top: 0;
  position: relative;
  transition: all 0.4s;
  overflow: hidden;
  cursor: pointer;
}
.fv .section-inner .btn-wrapper .btn:is(.btn2),
.increase .katsuyaku .btn-wrapper .btn.btn2 {
  background-color: #6cc4d4;
  box-shadow: 5px 5px 0 0 #247484;
}
.increase .katsuyaku .btn-wrapper .btn span {
  color: white;
  font-size: 22px;
  letter-spacing: 0.05em;
  font-weight: bold;
  position: relative;
  top: 5px;
}
.increase .katsuyaku .btn-wrapper .btn .span2 {
  font-size: 14px;
  top: 20px;
  padding-right: 25px;
}
@media (max-width: 1279px) {
  .increase .katsuyaku .btn-wrapper .btn .span2 {
    font-size: 12px;
    padding-right: 30px;
    top: 20px;
  }
}
@media (max-width: 1024px) {
  .increase .katsuyaku .btn-wrapper .btn .span2 {
    top: 15px;
  }
}
@media (max-width: 767px) {
  .increase .katsuyaku .btn-wrapper .btn .span2 {
    font-size: 10px;
    top: 13px;
    padding-right: 10px;
  }
}
.increase .katsuyaku .btn-wrapper .btn img {
  width: 30px;
  height: auto;
  transition: all 0.4s;
  position: absolute;
  right: 15px;
}
@media (max-width: 767px) {
  .increase .katsuyaku .btn-wrapper .btn {
    width: 100%;
    height: 16vw;
    justify-content: center;
    box-shadow: 1.3333333333vw 1.3333333333vw 0 0 #a22828;
    margin-bottom: 21.3333333333vw;
  }
  .fv .section-inner .btn-wrapper .btn:is(.btn2),
  .increase .katsuyaku .btn-wrapper .btn.btn2 {
    box-shadow: 1.3333333333vw 1.3333333333vw 0 0 #247484;
  }
  .increase .katsuyaku .btn-wrapper .btn span {
    font-size: 4.8vw;
    padding-right: 10px;
  }
  .increase .katsuyaku .btn-wrapper .btn img {
    width: 6.6666666667vw;
    right: 15px;
  }
}
@media (min-width: 768px) {
  .increase .katsuyaku .btn-wrapper .btn:hover {
    top: -4px;
    box-shadow: 5px 10px 0 0 #a22828;
  }
  .increase .katsuyaku .btn-wrapper .btn:hover img {
    transform: rotate(360deg);
  }
  .increase .katsuyaku .btn-wrapper .btn:hover.btn2 {
    box-shadow: 5px 10px 0 0 #247484;
  }
  .increase .katsuyaku .btn-wrapper .btn:active {
    top: 0.3660322108vw;
    box-shadow: 0vw 0vw 0 0 #a22828;
  }
  .increase .katsuyaku .btn-wrapper .btn:active.btn2 {
    box-shadow: 0px 0px 0 0 #247484;
  }
}
.increase .katsuyaku .btn-wrapper .btn::before {
  position: absolute;
  top: 0;
  left: -75%;
  z-index: 2;
  display: block;
  content: "";
  width: 50%;
  height: 100%;
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  -webkit-transform: skewX(-25deg);
  transform: skewX(-25deg);
  animation: shine 3.5s linear infinite;
}
.increase .ttl-wrapper {
  background: rgb(219, 44, 34);
  background: linear-gradient(73deg, rgb(219, 44, 34) 0%, rgb(162, 50, 44) 100%);
  padding-top: 37px;
  padding-bottom: 37px;
  position: relative;
}
@media (max-width: 767px) {
  .increase .ttl-wrapper {
    padding-top: 5.3333333333vw;
    padding-bottom: 5.3333333333vw;
  }
}
.increase .ttl-wrapper h2 {
  text-align: center;
  font-size: 42px;
  line-height: 1.45em;
  font-weight: bold;
  letter-spacing: 0.05em;
}
@media (max-width: 1024px) {
  .increase .ttl-wrapper h2 {
    font-size: 28px;
  }
}
@media (max-width: 767px) {
  .increase .ttl-wrapper h2 {
    font-size: 5.3333333333vw;
  }
}
.increase .ttl-wrapper h2 span {
  color: white;
}
.increase .ttl-wrapper::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #fff;
  left: 0;
  top: 10px;
}
.increase .ttl-wrapper::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #fff;
  left: 0;
  bottom: 10px;
}
.increase .section-inner {
  padding-top: 64px;
  max-width: 1026px;
  margin: auto;
  padding-left: 20px;
  padding-right: 20px;
}
@media (max-width: 1024px) {
  .increase .section-inner {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media (max-width: 767px) {
  .increase .section-inner {
    padding-top: 8vw;
  }
}
.increase .section-inner .flex {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 22.4px;
}
@media (max-width: 767px) {
  .increase .section-inner .flex {
    flex-direction: column;
    margin-bottom: 5.3333333333vw;
  }
}
.increase .section-inner .flex h4 {
  font-size: 40px;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 58px;
  white-space: nowrap;
}
@media (max-width: 1024px) {
  .increase .section-inner .flex h4 {
    font-size: 28px;
  }
}
@media (max-width: 767px) {
  .increase .section-inner .flex h4 {
    font-size: 5.3333333333vw;
  }
  .increase .section-inner .flex h4 .sp-show {
    display: inline;
  }
}
@media (min-width: 768px) {
  .increase .section-inner .flex h4 .sp-hide {
    display: inline;
  }
}
.increase .section-inner .flex h4 span {
  padding-left: 13px;
  line-height: 58px;
  font-size: 1.2em;
  background: rgb(226, 166, 99);
  background: linear-gradient(90deg, rgb(226, 166, 99) 0%, rgb(217, 115, 79) 30%, rgb(188, 59, 53) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media (max-width: 767px) {
  .increase .section-inner .flex h4 span {
    line-height: 1.5em;
    padding-left: 1.3333333333vw;
    padding-right: 1.3333333333vw;
  }
}
.increase .section-inner .flex .arrow {
  padding-left: 35px;
  padding-right: 22.4px;
  padding-top: 10px;
}
@media (max-width: 767px) {
  .increase .section-inner .flex .arrow {
    padding-top: unset;
    transform: rotate(90deg);
    padding-left: unset;
    padding-right: unset;
  }
}
.increase .section-inner .img-wrapper {
  padding-left: 12px;
  padding-right: 12px;
  padding-bottom: 150px;
}
@media (max-width: 767px) {
  .increase .section-inner .img-wrapper {
    padding-bottom: 50px;
  }
}
.increase .section-inner .img-wrapper img {
  width: 100%;
}
.increase .section-inner .img-wrapper p {
  text-align: center;
  font-size: 15px;
  font-weight: bold;
  letter-spacing: 0.05em;
  padding-top: 15px;
  margin-left: -17px;
}
@media (max-width: 767px) {
  .increase .section-inner .img-wrapper p {
    font-size: 3.2vw;
    margin-left: unset;
  }
}
.increase .section-inner2 {
  max-width: 1040px;
  padding-left: 20px;
  padding-right: 20px;
  margin: auto;
  padding-bottom: 100px;
}
@media (max-width: 1024px) {
  .increase .section-inner2 {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media (max-width: 767px) {
  .increase .section-inner2 {
    padding-bottom: 30px;
  }
}
.increase .section-inner2 .sec-ttl {
  margin-bottom: 78px;
}
@media (max-width: 767px) {
  .increase .section-inner2 .sec-ttl {
    margin-bottom: 10.6666666667vw;
  }
  .increase .section-inner2 .sec-ttl h6 {
    bottom: 10.6666666667vw;
  }
}
.increase .section-inner2 .img-top {
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 2;
  margin-left: 10px;
}
.increase .section-inner2 .img-top img {
  max-width: 419px;
  height: auto;
}
@media (max-width: 1024px) {
  .increase .section-inner2 .img-top img {
    width: 300px;
  }
}
@media (max-width: 767px) {
  .increase .section-inner2 .img-top img {
    width: 80vw;
    height: 100%;
  }
}
.increase .section-inner2 .img-bottom {
  display: flex;
  justify-content: space-between;
  margin-top: -70px;
  margin-left: -10px;
}
@media (max-width: 767px) {
  .increase .section-inner2 .img-bottom {
    flex-direction: column;
    margin-top: -8vw;
    position: relative;
    z-index: 2;
  }
}
.increase .section-inner2 .img-bottom img {
  max-width: 419px;
  height: auto;
}
@media (max-width: 1024px) {
  .increase .section-inner2 .img-bottom img {
    width: 300px;
  }
}
@media (max-width: 767px) {
  .increase .section-inner2 .img-bottom img {
    width: 80vw;
  }
}
.increase .section-inner2 .img-bottom img:last-child {
  margin-left: 185px;
}
@media (max-width: 1279px) {
  .increase .section-inner2 .img-bottom img:last-child {
    margin-left: unset;
  }
}
@media (max-width: 767px) {
  .increase .section-inner2 .img-bottom img:last-child {
    margin-left: 16vw;
    margin-top: -8vw;
  }
}
@media (min-width: 768px) {
  .increase .section-inner2 .btn-flex {
    display: none;
  }
}
@media (max-width: 767px) {
  .increase .section-inner2 .btn-flex {
    padding-top: 40px;
  }
}

.campaign {
  background-image: url(../img/campaign-bg.webp);
  background-size: cover;
  background-position: center top;
  padding-top: 48px;
  padding-left: 39px;
  padding-right: 39px;
  padding-bottom: 60px;
}
@media (max-width: 767px) {
  .campaign {
    padding-top: 10.6666666667vw;
    padding-left: 4vw;
    padding-right: 4vw;
    padding-bottom: 10.6666666667vw;
  }
}
.campaign .section-inner .tokuten-area .off {
  max-width: 831px;
  margin: auto;
  background-image: url(../img/sarani-bg.svg);
  height: 287.2px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  padding-top: 40px;
}
@media (max-width: 767px) {
  .campaign .section-inner .tokuten-area .off {
    padding-top: 5.3333333333vw;
    height: 32.7706666667vw;
  }
}
.campaign .section-inner .tokuten-area .off h4, .campaign .section-inner .tokuten-area .off h3 {
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.05em;
}
.campaign .section-inner .tokuten-area .off h4 {
  font-size: 36px;
}
@media (max-width: 767px) {
  .campaign .section-inner .tokuten-area .off h4 {
    font-size: 4.2666666667vw;
  }
}
.campaign .section-inner .tokuten-area .off h4 span {
  position: relative;
}
.campaign .section-inner .tokuten-area .off h4 span::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -20px;
  width: 100%;
  height: 20px;
  background-image: url(../img/fukidashi.svg);
}
@media (max-width: 767px) {
  .campaign .section-inner .tokuten-area .off h4 span::before {
    height: 3.4666666667vw;
    bottom: -3.4666666667vw;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
  }
}
.campaign .section-inner .tokuten-area .off h3 {
  font-size: 44px;
  margin-top: 30px;
}
@media (max-width: 767px) {
  .campaign .section-inner .tokuten-area .off h3 {
    font-size: 4.2666666667vw;
    margin-top: 2.6666666667vw;
  }
}
.campaign .section-inner .tokuten-area .off h3 span {
  color: #fa8089;
}
.campaign .section-inner .tokuten-area .off h3 .big {
  font-size: 1.5em;
}
.campaign .section-inner .tokuten-area .off h3 .med {
  font-size: 1.25em;
}
.campaign .section-inner .tokuten-area .off p {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  margin-top: 20px;
}
@media (max-width: 767px) {
  .campaign .section-inner .tokuten-area .off p {
    font-size: 3.7333333333vw;
    margin-top: 2.6666666667vw;
  }
}
.campaign .section-inner .tokuten-area .sarani-circle {
  display: flex;
  justify-content: center;
  margin-top: -57px;
  margin-bottom: 24px;
}
@media (max-width: 767px) {
  .campaign .section-inner .tokuten-area .sarani-circle {
    margin-top: -5.3333333333vw;
    margin-bottom: 2.6666666667vw;
  }
  .campaign .section-inner .tokuten-area .sarani-circle img {
    width: 60px;
    height: auto;
  }
}
.campaign .section-inner .tokuten-area .camp-ttl {
  text-align: center;
}
.campaign .section-inner .tokuten-area .camp-ttl img {
  height: 80px;
  width: auto;
}
@media (max-width: 767px) {
  .campaign .section-inner .tokuten-area .camp-ttl img {
    height: auto;
    width: 100%;
    margin-bottom: 10.6666666667vw;
  }
}
.campaign .section-inner .sec-ttl {
  margin-bottom: 62px;
}
@media (max-width: 767px) {
  .campaign .section-inner .sec-ttl {
    margin-bottom: 5.3333333333vw;
  }
}
.campaign .section-inner .sec-ttl h2 {
  color: rgba(255, 255, 255, 0.3);
  line-height: 1.45em;
  font-size: 160px;
}
@media (max-width: 1024px) {
  .campaign .section-inner .sec-ttl h2 {
    font-size: 100px;
  }
}
@media (max-width: 767px) {
  .campaign .section-inner .sec-ttl h2 {
    font-size: 16vw;
  }
}
.campaign .section-inner .sec-ttl h6 {
  bottom: 35px;
  font-size: 40px;
  color: white;
}
@media (max-width: 1024px) {
  .campaign .section-inner .sec-ttl h6 {
    bottom: 0;
  }
  .campaign .section-inner .sec-ttl h6 img {
    width: 75%;
  }
}
@media (max-width: 767px) {
  .campaign .section-inner .sec-ttl h6 {
    font-size: 6.9333333333vw;
  }
  .campaign .section-inner .sec-ttl h6 img {
    width: 90%;
  }
}
.campaign .section-inner .camp-p {
  text-align: center;
  font-weight: bold;
  font-size: 48px;
  margin-top: 40px;
  text-shadow: 2px 3px 3px rgba(255, 255, 255, 0.4);
}
@media (min-width: 1025px) {
  .campaign .btn-flex {
    padding-top: 3.6603221083vw;
  }
}
@media screen and (max-width: 1260px) and (min-width: 1025px) {
  .campaign .btn-flex {
    padding-top: 0;
  }
}
@media screen and (max-width: 1260px) and (min-width: 1025px) and (max-width: 1050px) {
  .campaign .btn-flex {
    margin-top: -20px;
  }
}

.feature {
  padding-bottom: 35px;
  padding-top: 70px;
}
@media (max-width: 767px) {
  .feature {
    padding-top: 16vw;
  }
}
.feature .sec-ttl {
  margin-bottom: 142px;
}
.feature .sec-ttl h6 {
  font-size: 40px;
}
@media (max-width: 767px) {
  .feature .sec-ttl {
    margin-bottom: 13.3333333333vw;
  }
  .feature .sec-ttl h6 {
    font-size: 5.3333333333vw;
    bottom: 2.6666666667vw;
  }
}
.feature .section-inner .btn-wrapper {
  display: flex;
  justify-content: space-around;
  max-width: 1040px;
  margin: auto;
}
.feature .section-inner .btn-wrapper .btn {
  display: flex;
  justify-content: space-around;
  width: 48%;
  max-width: 450px;
  height: 90px;
  background-color: #fa8089;
  border-radius: 99px;
  align-items: center;
  box-shadow: 5px 5px 0 0 #a22828;
  margin-bottom: 100px;
  top: 0;
  position: relative;
  transition: all 0.4s;
  overflow: hidden;
  cursor: pointer;
}
.feature .section-inner .btn-wrapper .btn.btn2 {
  background-color: #6cc4d4;
  box-shadow: 5px 5px 0 0 #247484;
}
.feature .section-inner .btn-wrapper .btn span {
  color: white;
  font-size: 23px;
  letter-spacing: 0.05em;
  font-weight: bold;
  position: relative;
  top: 5px;
}
.feature .section-inner .btn-wrapper .btn .span2 {
  font-size: 14px;
  top: 20px;
  padding-right: 20px;
}
@media (max-width: 1279px) {
  .feature .section-inner .btn-wrapper .btn .span2 {
    font-size: 12px;
    padding-right: 30px;
    top: 20px;
  }
}
@media (max-width: 1024px) {
  .feature .section-inner .btn-wrapper .btn .span2 {
    top: 15px;
  }
}
@media (max-width: 767px) {
  .feature .section-inner .btn-wrapper .btn .span2 {
    font-size: 10px;
    top: 13px;
    padding-right: 10px;
  }
}
.feature .section-inner .btn-wrapper .btn img {
  width: 30px;
  height: auto;
  transition: all 0.4s;
  position: absolute;
  right: 15px;
}
@media (max-width: 767px) {
  .feature .section-inner .btn-wrapper .btn {
    width: 100%;
    height: 16vw;
    justify-content: center;
    box-shadow: 1.3333333333vw 1.3333333333vw 0 0 #a22828;
    margin-bottom: 21.3333333333vw;
  }
  .feature .section-inner .btn-wrapper .btn.btn2 {
    box-shadow: 1.3333333333vw 1.3333333333vw 0 0 #247484;
  }
  .feature .section-inner .btn-wrapper .btn span {
    font-size: 4.8vw;
    padding-right: 10px;
  }
  .feature .section-inner .btn-wrapper .btn img {
    width: 6.6666666667vw;
    right: 15px;
  }
}
@media (min-width: 768px) {
  .feature .section-inner .btn-wrapper .btn:hover {
    top: -4px;
    box-shadow: 5px 10px 0 0 #a22828;
  }
  .feature .section-inner .btn-wrapper .btn:hover img {
    transform: rotate(360deg);
  }
  .feature .section-inner .btn-wrapper .btn:hover.btn2 {
    box-shadow: 5px 10px 0 0 #247484;
  }
  .feature .section-inner .btn-wrapper .btn:active {
    top: 0.3660322108vw;
    box-shadow: 0vw 0vw 0 0 #a22828;
  }
  .feature .section-inner .btn-wrapper .btn:active.btn2 {
    box-shadow: 0px 0px 0 0 #247484;
  }
}
.feature .section-inner .btn-wrapper .btn::before {
  position: absolute;
  top: 0;
  left: -75%;
  z-index: 2;
  display: block;
  content: "";
  width: 50%;
  height: 100%;
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  -webkit-transform: skewX(-25deg);
  transform: skewX(-25deg);
  animation: shine 3.5s linear infinite;
}
.feature .section-inner ul li {
  display: flex;
  padding-bottom: 11.1273792094vw;
}
@media (max-width: 767px) {
  .feature .section-inner ul li {
    flex-direction: column-reverse;
  }
}
.feature .section-inner ul li .left-wrapper {
  padding-left: 13.3967789165vw;
  position: relative;
}
@media (max-width: 1024px) {
  .feature .section-inner ul li .left-wrapper {
    padding-left: 50px;
  }
}
@media (max-width: 767px) {
  .feature .section-inner ul li .left-wrapper {
    padding-left: 8vw;
    width: 100%;
    text-align: right;
  }
}
.feature .section-inner ul li .left-wrapper img {
  height: 21.9619326501vw;
  position: relative;
  top: -2.9282576867vw;
  box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
}
@media (max-width: 767px) {
  .feature .section-inner ul li .left-wrapper img {
    width: 80vw;
    height: auto;
    top: -5.3333333333vw;
    right: 0;
  }
}
.feature .section-inner ul li .left-wrapper::before {
  content: "";
  position: absolute;
  width: 63.9824304539vw;
  height: 25.6954612006vw;
  background-color: #f5f5f5;
  box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
  left: 0;
  top: 0.2928257687vw;
  z-index: -1;
}
@media (max-width: 767px) {
  .feature .section-inner ul li .left-wrapper::before {
    width: 80vw;
    height: 53.3333333333vw;
  }
}
.feature .section-inner ul li .right-wrapper {
  background: #5fb0cb;
  background: linear-gradient(180deg, #7ae0d8 0%, #5fb0cb 100%);
  margin-left: -10.0292825769vw;
  box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
  padding-left: 13.9824304539vw;
  padding-top: 2.7086383602vw;
}
@media (max-width: 767px) {
  .feature .section-inner ul li .right-wrapper {
    padding-top: 5.3333333333vw;
    padding-left: 2.6666666667vw;
    margin-left: unset;
  }
}
.feature .section-inner ul li .right-wrapper h3 {
  font-size: 1.9033674963vw;
  font-weight: bold;
  color: white;
  letter-spacing: 0.05em;
  display: flex;
  align-items: center;
  height: 8.1991215227vw;
}
@media (max-width: 767px) {
  .feature .section-inner ul li .right-wrapper h3 {
    height: 6.4vw;
    font-size: 4.8vw;
    margin-bottom: 5.3333333333vw;
  }
}
.feature .section-inner ul li .right-wrapper h3 .num {
  font-size: 5.8565153734vw;
  font-weight: bold;
  font-family: "Poppins";
  color: #fffcb4;
  margin-right: 1.756954612vw;
  text-shadow: 0 3px 6px rgba(0, 0, 0, 0.25);
}
@media (max-width: 767px) {
  .feature .section-inner ul li .right-wrapper h3 .num {
    height: unset;
    font-size: 8vw;
    margin-right: 2.6666666667vw;
  }
}
.feature .section-inner ul li .right-wrapper p {
  padding-right: 13.3967789165vw;
  color: white;
  font-size: 1.1713030747vw;
  line-height: 1.5em;
  letter-spacing: 0.05em;
}
@media (max-width: 1024px) {
  .feature .section-inner ul li .right-wrapper p {
    font-size: 12px;
  }
}
@media (max-width: 767px) {
  .feature .section-inner ul li .right-wrapper p {
    padding-right: 5.3333333333vw;
    font-size: 3.2vw;
    padding-bottom: 10.6666666667vw;
  }
}
.feature .section-inner ul li .right-wrapper:last-child p {
  padding-right: 11.7130307467vw;
}
@media (max-width: 1024px) {
  .feature .section-inner ul li .right-wrapper:last-child p {
    padding-right: 50px;
  }
}
@media (max-width: 767px) {
  .feature .section-inner ul li .right-wrapper:last-child p {
    padding-right: 5.3333333333vw;
  }
}
@media (min-width: 768px) {
  .feature .section-inner ul li.reverse {
    position: relative;
    flex-direction: row-reverse;
    justify-content: flex-end;
    padding-bottom: 15.3733528551vw;
  }
  .feature .section-inner ul li.reverse .left-wrapper {
    position: absolute;
    right: 0;
  }
  .feature .section-inner ul li.reverse .left-wrapper::before {
    left: unset;
    right: 0;
  }
  .feature .section-inner ul li.reverse .left-wrapper img {
    right: 13.3967789165vw;
    z-index: 3;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .feature .section-inner ul li.reverse .left-wrapper img {
    right: 50px;
  }
}
@media (min-width: 768px) {
  .feature .section-inner ul li.reverse .right-wrapper {
    margin-left: unset;
    width: 63.9824304539vw;
    padding-top: 3.4407027818vw;
    padding-left: 13.5431918009vw;
    z-index: 2;
    height: 21.9619326501vw;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .feature .section-inner ul li.reverse .right-wrapper {
    padding-left: 50px;
  }
}
@media (min-width: 768px) {
  .feature .section-inner ul li.reverse .right-wrapper h3 .num {
    margin-right: 1.0980966325vw;
  }
  .feature .section-inner ul li:nth-child(4) {
    padding-bottom: 10.980966325vw;
  }
}

.achievement {
  padding-bottom: 120px;
}
@media (max-width: 767px) {
  .achievement {
    padding-bottom: 60px;
  }
}
.achievement .section-inner .ttl {
  margin-bottom: 80px;
}
@media (max-width: 767px) {
  .achievement .section-inner .ttl {
    margin-bottom: 10.6666666667vw;
  }
}
.achievement .section-inner .ttl h6 {
  font-size: 40px;
}
@media (max-width: 767px) {
  .achievement .section-inner .ttl h6 {
    font-size: 6.4vw;
    bottom: -2.6666666667vw;
  }
}
@media (max-width: 767px) {
  .achievement .section-inner .ttl h2 {
    font-size: 11.7333333333vw;
  }
}
.achievement .section-inner .flex {
  display: flex;
  margin: auto;
  justify-content: space-between;
  max-width: 1000px;
}
@media (max-width: 767px) {
  .achievement .section-inner .flex {
    flex-direction: column;
    padding-left: 20px;
    padding-right: 20px;
  }
}
.achievement .section-inner .flex .card {
  width: calc(33.3333% - 13.333px);
}
@media (max-width: 767px) {
  .achievement .section-inner .flex .card {
    width: 100%;
    margin-bottom: 30px;
  }
}
.achievement .section-inner .flex .card img {
  width: 100%;
  margin-bottom: 15px;
}
@media (max-width: 767px) {
  .achievement .section-inner .flex .card img {
    margin-bottom: 10px;
  }
}
.achievement .section-inner .flex .card h4 {
  margin-left: 15px;
  position: relative;
  padding-left: 13px;
  font-size: 22px;
  line-height: 1.45em;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .achievement .section-inner .flex .card h4 {
    font-size: 4.8vw;
  }
}
.achievement .section-inner .flex .card h4::before {
  content: "";
  width: 7px;
  height: 100%;
  background-color: #fa8089;
  position: absolute;
  left: 0;
  top: 0;
}
.achievement .section-inner .flex .card ul {
  margin-left: 15px;
  margin-top: 6px;
}
.achievement .section-inner .flex .card ul li {
  position: relative;
  font-size: 18px;
  color: #676767;
  line-height: 1.38em;
  padding-left: 1em;
}
@media (max-width: 767px) {
  .achievement .section-inner .flex .card ul li {
    font-size: 4.2666666667vw;
  }
}
.achievement .section-inner .flex .card ul li::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}
.achievement .section-inner .notice {
  max-width: 1000px;
  margin: auto;
  padding-top: 40px;
  padding-bottom: 50px;
}
@media (max-width: 767px) {
  .achievement .section-inner .notice {
    padding-top: 10px;
    padding-bottom: 50px;
    padding-left: 20px;
    padding-right: 20px;
  }
}
.achievement .section-inner .notice p {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4em;
  columns: #333;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .achievement .section-inner .notice p {
    font-size: 10px;
  }
}
.achievement .section-inner .syokai {
  position: relative;
  padding-top: 100px;
  padding-bottom: 96px;
}
@media (max-width: 767px) {
  .achievement .section-inner .syokai {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
.achievement .section-inner .syokai::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #5fb0cb;
  background: linear-gradient(180deg, #7ae0d8 0%, #5fb0cb 100%);
  opacity: 0.2;
}
.achievement .section-inner .syokai .syokai-inner {
  position: relative;
  z-index: 2;
}
.achievement .section-inner .syokai h3 {
  text-align: center;
  font-size: 32px;
  font-weight: 500;
  margin-bottom: 40px;
}
@media (max-width: 767px) {
  .achievement .section-inner .syokai h3 {
    font-size: 6.4vw;
    margin-bottom: 5.3333333333vw;
  }
}
.achievement .section-inner .syokai h3 span {
  position: relative;
}
.achievement .section-inner .syokai h3 span::before {
  content: "";
  width: 2px;
  height: 90%;
  background-color: #333;
  transform: rotate(-30deg);
  position: absolute;
  left: -20px;
  top: 5px;
}
.achievement .section-inner .syokai h3 span::after {
  content: "";
  width: 2px;
  height: 90%;
  background-color: #333;
  transform: rotate(30deg);
  position: absolute;
  right: -20px;
  top: 5px;
}
.achievement .section-inner .syokai .swiper .swiper-slide img {
  width: 100%;
}
.achievement .section-inner .syokai .swiper-pagination {
  position: static;
  margin-top: 40px;
}
.achievement .section-inner .syokai .swiper-pagination .swiper-pagination-bullet {
  margin-left: 14px;
  margin-right: 14px;
  width: 12px;
  height: 12px;
  background-color: #fff;
  opacity: 1;
}
.achievement .section-inner .syokai .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  opacity: 1;
  background-color: #5fb0cb;
}
@media (max-width: 767px) {
  .achievement .section-inner .syokai .swiper-pagination .swiper-pagination-bullet {
    margin-left: 7px;
    margin-right: 7px;
  }
}
.achievement .section-inner .btn-wrapper {
  display: flex;
  justify-content: space-around;
  max-width: 1040px;
  margin: auto;
  margin-top: 0px;
  padding-left: 20px;
  padding-right: 20px;
}
@media (max-width: 767px) {
  .achievement .section-inner .btn-wrapper {
    margin-top: 0px;
  }
}
.achievement .section-inner .btn-wrapper .btn {
  display: flex;
  justify-content: space-around;
  width: 48%;
  max-width: 450px;
  height: 90px;
  background-color: #fa8089;
  border-radius: 99px;
  align-items: center;
  box-shadow: 5px 5px 0 0 #a22828;
  top: 0;
  position: relative;
  transition: all 0.4s;
  overflow: hidden;
  cursor: pointer;
}
.achievement .section-inner .btn-wrapper .btn.btn2 {
  background-color: #6cc4d4;
  box-shadow: 5px 5px 0 0 #247484;
}
@media (max-width: 767px) {
  .achievement .section-inner .btn-wrapper .btn.btn2 {
    margin-bottom: 0;
  }
}
.achievement .section-inner .btn-wrapper .btn span {
  color: white;
  font-size: 23px;
  letter-spacing: 0.05em;
  font-weight: bold;
  position: relative;
  top: 5px;
}
.achievement .section-inner .btn-wrapper .btn .span2 {
  font-size: 14px;
  top: 20px;
  padding-right: 20px;
}
@media (max-width: 1279px) {
  .achievement .section-inner .btn-wrapper .btn .span2 {
    font-size: 12px;
    padding-right: 30px;
    top: 20px;
  }
}
@media (max-width: 1024px) {
  .achievement .section-inner .btn-wrapper .btn .span2 {
    top: 15px;
  }
}
@media (max-width: 767px) {
  .achievement .section-inner .btn-wrapper .btn .span2 {
    font-size: 10px;
    top: 13px;
    padding-right: 10px;
  }
}
.achievement .section-inner .btn-wrapper .btn img {
  width: 30px;
  height: auto;
  transition: all 0.4s;
  position: absolute;
  right: 15px;
}
@media (max-width: 767px) {
  .achievement .section-inner .btn-wrapper .btn {
    width: 100%;
    height: 16vw;
    justify-content: center;
    box-shadow: 1.3333333333vw 1.3333333333vw 0 0 #a22828;
    margin-bottom: 21.3333333333vw;
  }
  .achievement .section-inner .btn-wrapper .btn.btn2 {
    box-shadow: 1.3333333333vw 1.3333333333vw 0 0 #247484;
  }
  .achievement .section-inner .btn-wrapper .btn span {
    font-size: 4.8vw;
    padding-right: 10px;
  }
  .achievement .section-inner .btn-wrapper .btn img {
    width: 6.6666666667vw;
    right: 15px;
  }
}
@media (min-width: 768px) {
  .achievement .section-inner .btn-wrapper .btn:hover {
    top: -4px;
    box-shadow: 5px 10px 0 0 #a22828;
  }
  .achievement .section-inner .btn-wrapper .btn:hover img {
    transform: rotate(360deg);
  }
  .achievement .section-inner .btn-wrapper .btn:hover.btn2 {
    box-shadow: 5px 10px 0 0 #247484;
  }
  .achievement .section-inner .btn-wrapper .btn:active {
    top: 0.3660322108vw;
    box-shadow: 0vw 0vw 0 0 #a22828;
  }
  .achievement .section-inner .btn-wrapper .btn:active.btn2 {
    box-shadow: 0px 0px 0 0 #247484;
  }
}
.achievement .section-inner .btn-wrapper .btn::before {
  position: absolute;
  top: 0;
  left: -75%;
  z-index: 2;
  display: block;
  content: "";
  width: 50%;
  height: 100%;
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  -webkit-transform: skewX(-25deg);
  transform: skewX(-25deg);
  animation: shine 3.5s linear infinite;
}
.achievement .section-inner .sec-ttl2 {
  margin-top: 50px;
}
.achievement .section-inner .flex-wrapper {
  padding-left: 20px;
  padding-right: 20px;
}
.achievement .section-inner .support-flex {
  max-width: 1060px;
  margin: auto;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .achievement .section-inner .support-flex {
    flex-direction: column;
    align-items: center;
  }
}
.achievement .section-inner .support-flex .card {
  width: calc(33.3333% - 26.6666px);
  background: #FFF;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  padding-top: 40px;
}
@media (max-width: 1024px) {
  .achievement .section-inner .support-flex .card {
    width: 31%;
  }
}
@media (max-width: 767px) {
  .achievement .section-inner .support-flex .card {
    width: 100%;
    margin-bottom: 30px;
    max-width: 400px;
    padding-top: 20px;
  }
}
.achievement .section-inner .support-flex .card .card-ttl {
  height: 100px;
}
@media (max-width: 1024px) {
  .achievement .section-inner .support-flex .card .card-ttl {
    height: 80px;
  }
}
@media (max-width: 767px) {
  .achievement .section-inner .support-flex .card .card-ttl {
    height: 80px;
  }
}
.achievement .section-inner .support-flex .card .card-ttl p {
  text-align: center;
  font-size: 22px;
  font-weight: bold;
}
@media (max-width: 1024px) {
  .achievement .section-inner .support-flex .card .card-ttl p {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .achievement .section-inner .support-flex .card .card-ttl p {
    font-size: 20px;
  }
}
.achievement .section-inner .support-flex .card .card-ttl p .red {
  color: #FA8089;
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
.achievement .section-inner .support-flex .card .card-ttl p .mini {
  font-size: 0.78em;
}
.achievement .section-inner .support-flex .card .card-ttl p .mini2 {
  font-size: 0.85em;
}
.achievement .section-inner .support-flex .card .card-ttl p .med {
  font-size: 1.272em;
}
.achievement .section-inner .support-flex .card .card-ttl p .big {
  font-size: 1.59em;
}
.achievement .section-inner .support-flex .card img {
  width: 100%;
  margin-bottom: 10px;
  aspect-ratio: 320/217;
  object-fit: cover;
}
.achievement .section-inner .support-flex .card .desc2 {
  line-height: 1.5em;
  color: #666;
  padding-left: 15px;
  padding-right: 15px;
  padding-bottom: 20px;
}
@media (max-width: 767px) {
  .achievement .section-inner .support-flex .card .desc2 {
    padding-bottom: 50px;
  }
}

.btn-flex {
  display: flex;
  justify-content: space-between;
  max-width: 1288.2px;
  margin: auto;
  padding-top: 50px;
}
@media (max-width: 1024px) {
  .btn-flex {
    flex-direction: column;
    align-items: center;
    padding-top: 0px;
  }
}
.btn-flex .btn {
  display: flex;
  width: calc(50% - 11.9px);
  height: 90px;
  background-color: #e83434;
  border-radius: 99px;
  align-items: center;
  box-shadow: 5px 5px 0 0 #a22828;
  margin-bottom: 2.9282576867vw;
  top: 0;
  position: relative;
  transition: all 0.4s;
  overflow: hidden;
}
@media (max-width: 1024px) {
  .btn-flex .btn {
    width: 330px;
    justify-content: center;
    height: 70px;
  }
}
.btn-flex .btn span {
  color: white;
  font-size: 30px;
  letter-spacing: 0.05em;
  font-weight: bold;
  padding-left: 134px;
  margin-right: 65px;
}
@media (max-width: 1279px) {
  .btn-flex .btn span {
    font-size: 22px;
    padding-left: 80px;
    margin-right: 40px;
  }
}
@media (max-width: 1024px) {
  .btn-flex .btn span {
    padding-left: 20px;
    font-size: 18px;
    margin-right: 20px;
  }
}
@media (max-width: 767px) {
  .btn-flex .btn span {
    padding-left: 4vw;
    margin-right: 8vw;
  }
}
.btn-flex .btn img {
  width: 50px;
  height: auto;
  transition: all 0.4s;
}
@media (max-width: 1279px) {
  .btn-flex .btn img {
    width: 30px;
  }
}
@media (max-width: 1279px) {
  .btn-flex .btn.btn2 span {
    padding-left: 40px;
    margin-right: 15px;
  }
}
@media (max-width: 1024px) {
  .btn-flex .btn.btn2 span {
    padding-left: 10px;
    font-size: 16px;
    margin-right: 5px;
  }
}
@media (max-width: 767px) {
  .btn-flex .btn {
    width: 100%;
    height: 16vw;
    justify-content: center;
    box-shadow: 1.3333333333vw 1.3333333333vw 0 0 #a22828;
    margin-bottom: 5.3333333333vw;
  }
  .btn-flex .btn span {
    font-size: 5.3333333333vw;
  }
  .btn-flex .btn img {
    width: 6.6666666667vw;
  }
}
@media (min-width: 768px) {
  .btn-flex .btn:hover {
    top: -4px;
    box-shadow: 5px 10px 0 0 #a22828;
  }
  .btn-flex .btn:hover img {
    transform: rotate(360deg);
  }
  .btn-flex .btn:active {
    top: 5px;
    box-shadow: 0 0 0 0 #a22828;
  }
}
.btn-flex .btn::before {
  position: absolute;
  top: 0;
  left: -75%;
  z-index: 2;
  display: block;
  content: "";
  width: 50%;
  height: 100%;
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  -webkit-transform: skewX(-25deg);
  transform: skewX(-25deg);
  animation: shine 3.5s linear infinite;
}
.btn-flex .btn2 {
  background-color: #fc7b04;
  box-shadow: 5px 5px 0 0 #6d3500;
}
.btn-flex .btn2 span {
  padding-left: 80px;
  margin-right: 30px;
}
@media (max-width: 767px) {
  .btn-flex .btn2 {
    box-shadow: 1.3333333333vw 1.3333333333vw 0 0 #6d3500;
  }
  .btn-flex .btn2.btn span {
    padding-left: 4vw;
    font-size: 4.5333333333vw;
    margin-right: 2.6666666667vw;
  }
}
@media (min-width: 768px) {
  .btn-flex .btn2:hover {
    box-shadow: 5px 10px 0 0 #6d3500;
  }
  .btn-flex .btn2:active {
    box-shadow: 0 0 0 0 #6d3500;
  }
}

@media (max-width: 1279px) and (min-width: 1025px) {
  .btn-flex-origin a {
    justify-content: center;
  }
  .btn-flex-origin a span {
    padding-left: 10px !important;
    margin-right: 20px !important;
  }
}

.coupon-flex {
  display: flex;
  justify-content: space-between;
  max-width: 1288.2px;
  margin: auto;
}
@media (max-width: 1024px) {
  .coupon-flex {
    flex-direction: column;
    align-items: center;
  }
}
.coupon-flex .coupon {
  width: calc(50% - 11.9px);
  position: relative;
  padding-top: 48px;
  height: 313px;
}
@media (max-width: 1024px) {
  .coupon-flex .coupon {
    padding-top: 30px;
    width: 450px;
    height: 250px;
  }
}
@media (max-width: 767px) {
  .coupon-flex .coupon {
    padding-top: 5.3333333333vw;
    width: 90.6666666667vw;
    height: 53.3333333333vw;
  }
}
.coupon-flex .coupon > img {
  position: absolute;
  width: 100%;
  height: auto;
  z-index: 1;
  top: 0;
}
@media (max-width: 1279px) {
  .coupon-flex .coupon > img {
    filter: drop-shadow(2px 2px 6px rgba(0, 0, 0, 0.6)) drop-shadow(0px 10px 3px rgba(0, 0, 0, 0.6));
  }
}
.coupon-flex .coupon::after {
  content: "";
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  width: 90%;
  height: 40px;
  box-shadow: 0 40px 15px rgba(0, 0, 0, 0.6);
  background-color: transparent;
  z-index: 0;
  border-radius: 50%;
}
@media (max-width: 1279px) {
  .coupon-flex .coupon::after {
    display: none;
  }
}
.coupon-flex .coupon .coupon-inner {
  position: relative;
  z-index: 3;
}
.coupon-flex .coupon .coupon-inner .coupon-ttl {
  display: flex;
  padding-left: 155px;
  margin-bottom: 0px;
  align-items: center;
}
@media (max-width: 1279px) {
  .coupon-flex .coupon .coupon-inner .coupon-ttl {
    padding-left: 130px;
  }
}
@media (max-width: 1024px) {
  .coupon-flex .coupon .coupon-inner .coupon-ttl {
    padding-left: 100px;
  }
}
@media (max-width: 767px) {
  .coupon-flex .coupon .coupon-inner .coupon-ttl {
    padding-left: 21.3333333333vw;
  }
}
.coupon-flex .coupon .coupon-inner .coupon-ttl h3 {
  font-size: 38px;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.05em;
  line-height: 1.5em;
}
@media screen and (max-width: 1360px) {
  .coupon-flex .coupon .coupon-inner .coupon-ttl h3 {
    font-size: 30px;
  }
}
@media (max-width: 1279px) {
  .coupon-flex .coupon .coupon-inner .coupon-ttl h3 {
    font-size: 26px;
  }
}
@media (max-width: 767px) {
  .coupon-flex .coupon .coupon-inner .coupon-ttl h3 {
    font-size: 5.3333333333vw;
  }
}
.coupon-flex .coupon .coupon-inner .coupon-ttl h4 {
  text-align: center;
  color: #fa8089;
  font-weight: bold;
  font-size: 28px;
  line-height: 59px;
  letter-spacing: 0.05em;
}
@media (max-width: 1279px) {
  .coupon-flex .coupon .coupon-inner .coupon-ttl h4 {
    font-size: 22px;
    line-height: 1.5em;
    margin-bottom: 10px;
  }
}
@media (max-width: 767px) {
  .coupon-flex .coupon .coupon-inner .coupon-ttl h4 {
    font-size: 4.2666666667vw;
    line-height: 1.5em;
  }
}
.coupon-flex .coupon .coupon-inner .coupon-ttl h4 span {
  color: #fa8089;
}
.coupon-flex .coupon .coupon-inner .coupon-ttl h4 .medium {
  font-size: 1.285em;
}
.coupon-flex .coupon .coupon-inner .coupon-ttl h4 .large {
  font-size: 1.785em;
}
.coupon-flex .coupon .coupon-inner .coupon-ttl .left {
  padding-right: 30px;
}
@media (max-width: 767px) {
  .coupon-flex .coupon .coupon-inner .coupon-ttl .left {
    padding-right: 2.6666666667vw;
  }
}
.coupon-flex .coupon .coupon-inner .coupon-ttl img {
  width: 93.4px;
  height: auto;
}
@media (max-width: 1279px) {
  .coupon-flex .coupon .coupon-inner .coupon-ttl img {
    width: 80px;
  }
}
@media (max-width: 767px) {
  .coupon-flex .coupon .coupon-inner .coupon-ttl img {
    width: 13.3333333333vw;
  }
}
.coupon-flex .coupon .coupon-inner .txt {
  padding-left: 90px;
  padding-right: 90px;
}
@media (max-width: 1279px) {
  .coupon-flex .coupon .coupon-inner .txt {
    padding-left: 75px;
    padding-right: 75px;
  }
}
@media (max-width: 767px) {
  .coupon-flex .coupon .coupon-inner .txt {
    padding-left: 8vw;
    padding-right: 8vw;
  }
}
.coupon-flex .coupon .coupon-inner .txt p {
  text-align: center;
  font-size: 21px;
  line-height: 1.42em;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1360px) {
  .coupon-flex .coupon .coupon-inner .txt p {
    font-size: 18px;
  }
}
@media (max-width: 1279px) {
  .coupon-flex .coupon .coupon-inner .txt p {
    font-size: 14px;
  }
}
@media (max-width: 1024px) {
  .coupon-flex .coupon .coupon-inner .txt p {
    font-size: 12px;
  }
}
@media (max-width: 767px) {
  .coupon-flex .coupon .coupon-inner .txt p {
    font-size: 3.2vw;
  }
}
.coupon-flex .coupon .coupon-inner .txt .notice {
  font-size: 12px;
  text-align: right;
  margin-top: 10px;
}
@media (max-width: 1024px) {
  .coupon-flex .coupon .coupon-inner .txt .notice {
    font-size: 10px;
  }
}
@media (max-width: 767px) {
  .coupon-flex .coupon .coupon-inner .txt .notice {
    font-size: 2.6666666667vw;
    margin-top: 1.3333333333vw;
  }
}
.coupon-flex .coupon.coupon2 .coupon-ttl {
  padding-left: 170px;
}
@media (max-width: 1279px) {
  .coupon-flex .coupon.coupon2 .coupon-ttl {
    padding-left: 12.4450951684vw;
  }
}
@media (max-width: 767px) {
  .coupon-flex .coupon.coupon2 .coupon-ttl {
    padding-left: 21.3333333333vw;
  }
}
.coupon-flex .coupon.coupon2 .coupon-ttl .left {
  padding-right: 10px;
}
.coupon-flex .coupon.coupon2 .coupon-ttl img {
  width: 94.3px;
}
@media (max-width: 767px) {
  .coupon-flex .coupon.coupon2 .coupon-ttl img {
    width: 13.3333333333vw;
  }
}

.course {
  padding-top: 37px;
  padding-bottom: 67px;
  background-image: url(../img/course-bg.webp);
  background-size: cover;
  background-position: center top;
}
@media (max-width: 1279px) {
  .course {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media (max-width: 767px) {
  .course {
    padding-top: 16vw;
    padding-bottom: 16vw;
  }
}
.course .btn-wrapper {
  display: flex;
  justify-content: space-around;
  max-width: 1040px;
  margin: auto;
  margin-top: 50px;
  padding-left: 0px;
  padding-right: 0px;
}
@media (max-width: 767px) {
  .course .btn-wrapper {
    margin-top: 25px;
    padding-left: 0;
    padding-right: 0;
  }
}
.course .btn-wrapper .btn {
  display: flex;
  justify-content: space-around;
  width: 48%;
  max-width: 450px;
  height: 90px;
  background-color: #fa8089;
  border-radius: 99px;
  align-items: center;
  box-shadow: 5px 5px 0 0 #a22828;
  top: 0;
  position: relative;
  transition: all 0.4s;
  overflow: hidden;
  cursor: pointer;
}
.course .btn-wrapper .btn.btn2 {
  background-color: #6cc4d4;
  box-shadow: 5px 5px 0 0 #247484;
}
@media (max-width: 767px) {
  .course .btn-wrapper .btn.btn2 {
    margin-bottom: 0;
  }
}
.course .btn-wrapper .btn span {
  color: white;
  font-size: 23px;
  letter-spacing: 0.05em;
  font-weight: bold;
  position: relative;
  top: 5px;
}
.course .btn-wrapper .btn .span2 {
  font-size: 14px;
  top: 20px;
  padding-right: 20px;
}
@media (max-width: 1279px) {
  .course .btn-wrapper .btn .span2 {
    font-size: 12px;
    padding-right: 30px;
    top: 20px;
  }
}
@media (max-width: 1024px) {
  .course .btn-wrapper .btn .span2 {
    top: 15px;
  }
}
@media (max-width: 767px) {
  .course .btn-wrapper .btn .span2 {
    font-size: 10px;
    top: 13px;
    padding-right: 10px;
  }
}
.course .btn-wrapper .btn img {
  width: 30px;
  height: auto;
  transition: all 0.4s;
  position: absolute;
  right: 15px;
}
@media (max-width: 767px) {
  .course .btn-wrapper .btn {
    width: 100%;
    height: 16vw;
    justify-content: center;
    box-shadow: 1.3333333333vw 1.3333333333vw 0 0 #a22828;
    margin-bottom: 21.3333333333vw;
  }
  .course .btn-wrapper .btn.btn2 {
    box-shadow: 1.3333333333vw 1.3333333333vw 0 0 #247484;
  }
  .course .btn-wrapper .btn span {
    font-size: 4.8vw;
    padding-right: 10px;
  }
  .course .btn-wrapper .btn img {
    width: 6.6666666667vw;
    right: 15px;
  }
}
@media (min-width: 768px) {
  .course .btn-wrapper .btn:hover {
    top: -4px;
    box-shadow: 5px 10px 0 0 #a22828;
  }
  .course .btn-wrapper .btn:hover img {
    transform: rotate(360deg);
  }
  .course .btn-wrapper .btn:hover.btn2 {
    box-shadow: 5px 10px 0 0 #247484;
  }
  .course .btn-wrapper .btn:active {
    top: 0.3660322108vw;
    box-shadow: 0vw 0vw 0 0 #a22828;
  }
  .course .btn-wrapper .btn:active.btn2 {
    box-shadow: 0px 0px 0 0 #247484;
  }
}
.course .btn-wrapper .btn::before {
  position: absolute;
  top: 0;
  left: -75%;
  z-index: 2;
  display: block;
  content: "";
  width: 50%;
  height: 100%;
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  -webkit-transform: skewX(-25deg);
  transform: skewX(-25deg);
  animation: shine 3.5s linear infinite;
}
.course .section-inner {
  max-width: 1000px;
  margin: auto;
}
.course .section-inner .ttl {
  margin-bottom: 37px;
}
.course .section-inner .ttl h2 {
  color: white;
  opacity: 0.25;
  line-height: 1.44em;
}
@media (max-width: 767px) {
  .course .section-inner .ttl h2 {
    line-height: unset;
  }
}
.course .section-inner .ttl h6 {
  color: white;
  font-size: 40px;
  bottom: 40px;
}
@media (max-width: 767px) {
  .course .section-inner .ttl h6 {
    font-size: 6.4vw;
    bottom: 2.6666666667vw;
  }
}
.course .section-inner .bg-red {
  text-align: center;
  margin-bottom: 73px;
}
.course .section-inner .bg-red span {
  padding-left: 100px;
  padding-right: 100px;
  border-radius: 99px;
  color: white;
  font-size: 34px;
  font-weight: 500;
  line-height: 71px;
  display: inline-block;
  letter-spacing: 0.05em;
  background: #5fb0cb;
  background: linear-gradient(180deg, #7ae0d8 0%, #5fb0cb 100%);
}
@media (max-width: 767px) {
  .course .section-inner .bg-red {
    margin-bottom: 8vw;
  }
  .course .section-inner .bg-red span {
    padding-left: 4vw;
    padding-right: 4vw;
    font-size: 5.3333333333vw;
    line-height: 2em;
  }
}
.course .section-inner .flex1 {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .course .section-inner .flex1 {
    flex-direction: column;
    align-items: center;
  }
}
.course .section-inner .flex1 .card {
  width: calc(33.333% - 3.333px);
  margin-bottom: 179px;
}
.course .section-inner .flex1 .card:nth-child(2) {
  position: relative;
  top: 50px;
}
@media (max-width: 767px) {
  .course .section-inner .flex1 .card {
    width: 100%;
    margin-bottom: 5.3333333333vw;
  }
  .course .section-inner .flex1 .card:nth-child(2) {
    position: static;
  }
}
.course .section-inner .flex1 .card img {
  width: 100%;
}
.course .section-inner .flex1 .card .txt {
  background-color: #fff;
  padding-top: 32px;
  padding-left: 32px;
  padding-right: 32px;
  height: 267px;
}
@media (max-width: 1024px) {
  .course .section-inner .flex1 .card .txt {
    padding-top: 20px;
    height: auto;
    padding-bottom: 13.3333333333vw;
  }
}
.course .section-inner .flex1 .card .txt h5 {
  font-weight: bold;
  color: #fa8089;
  text-align: center;
  font-size: 20px;
  line-height: 1.4em;
  letter-spacing: 0.05em;
  margin-bottom: 12px;
  min-height: 57px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (max-width: 1024px) {
  .course .section-inner .flex1 .card .txt h5 {
    font-size: 16px;
    margin-bottom: 10px;
  }
}
.course .section-inner .flex1 .card .txt p {
  font-size: 18px;
  line-height: 1.3888em;
}
@media (max-width: 1024px) {
  .course .section-inner .flex1 .card .txt p {
    font-size: 14px;
  }
}
.course .section-inner .skill {
  background-color: #fff;
  padding-top: 48px;
  padding-bottom: 59px;
}
@media (max-width: 767px) {
  .course .section-inner .skill {
    padding-top: 5.3333333333vw;
    padding-bottom: 8vw;
    padding-left: 2.6666666667vw;
    padding-right: 2.6666666667vw;
  }
}
.course .section-inner .skill .skill-inner {
  max-width: 770px;
  margin: auto;
}
.course .section-inner .skill h3 {
  font-size: 34px;
  text-align: center;
  letter-spacing: 0.05em;
  color: #31cec2;
  margin-bottom: 40px;
}
@media (max-width: 767px) {
  .course .section-inner .skill h3 {
    font-size: 6.4vw;
    margin-bottom: 5.3333333333vw;
  }
}
.course .section-inner .skill .flex {
  display: flex;
  justify-content: space-around;
  margin-bottom: 46px;
}
@media (max-width: 767px) {
  .course .section-inner .skill .flex {
    flex-direction: column;
    align-items: center;
    margin-bottom: 5.3333333333vw;
  }
}
.course .section-inner .skill .flex .card {
  display: flex;
}
@media (max-width: 767px) {
  .course .section-inner .skill .flex .card {
    width: 70%;
    margin: auto;
    justify-content: center;
    align-items: center;
    margin-bottom: 2.6666666667vw;
  }
}
.course .section-inner .skill .flex .card img {
  width: 76px;
  height: auto;
}
@media (max-width: 767px) {
  .course .section-inner .skill .flex .card img {
    width: 21.3333333333vw;
  }
}
.course .section-inner .skill .flex .card p {
  margin-left: 8px;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.444em;
}
@media (max-width: 767px) {
  .course .section-inner .skill .flex .card p {
    width: calc(100% - 23.4666666667vw);
    font-size: 4.2666666667vw;
    margin-left: 2.1333333333vw;
  }
}
.course .section-inner .skill .flex2 {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
  margin-bottom: 14px;
}
.course .section-inner .skill .flex2 .label {
  padding-left: 33px;
  padding-right: 33px;
  border-radius: 99px;
  border: 1px solid #707070;
  margin-bottom: 15px;
}
@media (max-width: 767px) {
  .course .section-inner .skill .flex2 .label {
    width: 48%;
    margin-bottom: 2.6666666667vw;
    padding-left: unset;
    padding-right: unset;
  }
}
.course .section-inner .skill .flex2 .label p {
  text-align: center;
  font-size: 18px;
  line-height: 44px;
  font-weight: bold;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .course .section-inner .skill .flex2 .label p {
    font-size: 3.2vw;
  }
}
.course .section-inner .skill .skill-txt {
  text-align: center;
  font-size: 16px;
  line-height: 1.8125em;
}
.course .section-inner .skill .skill-txt span {
  color: #fa8089;
  font-size: 1.125em;
}
@media (max-width: 767px) {
  .course .section-inner .skill .skill-txt {
    font-size: 3.7333333333vw;
  }
}

.compare {
  padding-top: 120px;
  padding-bottom: 120px;
}
@media (max-width: 1279px) {
  .compare {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media (max-width: 767px) {
  .compare {
    padding-top: 13.3333333333vw;
    padding-bottom: 13.3333333333vw;
    padding-left: 4vw;
    padding-right: 4vw;
  }
}
.compare .section-inner .ttl-wrapper {
  margin-bottom: 42px;
}
@media (max-width: 767px) {
  .compare .section-inner .ttl-wrapper {
    margin-bottom: 10.6666666667vw;
  }
}
.compare .section-inner .ttl-wrapper h3 {
  text-align: center;
  margin-bottom: 10px;
}
@media (max-width: 767px) {
  .compare .section-inner .ttl-wrapper h3 {
    margin-bottom: 2.6666666667vw;
  }
}
.compare .section-inner .ttl-wrapper h3 span {
  font-size: 32px;
  position: relative;
}
@media (max-width: 767px) {
  .compare .section-inner .ttl-wrapper h3 span {
    font-size: 5.8666666667vw;
  }
}
.compare .section-inner .ttl-wrapper h3 span::before {
  content: "";
  width: 2px;
  height: 90%;
  background-color: #333;
  position: absolute;
  left: -20px;
  bottom: 0;
  transform: rotate(-30deg);
}
.compare .section-inner .ttl-wrapper h3 span::after {
  content: "";
  width: 2px;
  height: 90%;
  background-color: #333;
  position: absolute;
  right: -20px;
  bottom: 0;
  transform: rotate(30deg);
}
.compare .section-inner .ttl-wrapper h4 {
  text-align: center;
  font-size: 32px;
  line-height: 1.8em;
}
@media (max-width: 767px) {
  .compare .section-inner .ttl-wrapper h4 {
    font-size: 5.8666666667vw;
  }
}
.compare .section-inner .ttl-wrapper h4 > span {
  font-size: 1.25em;
}
.compare .section-inner .ttl-wrapper h4 > span .red {
  color: #fa8089;
  font-weight: bold;
}
.compare .section-inner .table-wrapper {
  max-width: 1000px;
  margin: auto;
}
.compare .section-inner .table-wrapper table {
  width: 100%;
}
.compare .section-inner .table-wrapper table thead th, .compare .section-inner .table-wrapper table tr th {
  width: 276px;
}
@media (max-width: 767px) {
  .compare .section-inner .table-wrapper table thead th, .compare .section-inner .table-wrapper table tr th {
    width: 14.6666666667vw;
  }
}
.compare .section-inner .table-wrapper table thead td, .compare .section-inner .table-wrapper table tr td {
  width: 241.3333px;
}
@media (max-width: 767px) {
  .compare .section-inner .table-wrapper table thead td, .compare .section-inner .table-wrapper table tr td {
    width: 18.6666666667vw;
  }
}
.compare .section-inner .table-wrapper table thead .bg-red {
  background-color: #fa8089;
  border-left: 5px solid #fa8089;
  border-right: 5px solid #fa8089;
}
@media (max-width: 767px) {
  .compare .section-inner .table-wrapper table thead .bg-red img {
    width: 18.6666666667vw;
  }
}
.compare .section-inner .table-wrapper table thead td {
  background-color: #efefef;
  padding-top: 26px;
  padding-bottom: 26px;
  text-align: center;
  font-size: 24px;
  font-weight: 500;
}
@media (max-width: 767px) {
  .compare .section-inner .table-wrapper table thead td {
    font-size: 4.2666666667vw;
    padding-top: 2.6666666667vw;
    padding-bottom: 2.6666666667vw;
  }
}
.compare .section-inner .table-wrapper table tbody tr th, .compare .section-inner .table-wrapper table tbody tr td {
  height: 110px;
  text-align: center;
  padding-top: 10px;
}
@media (max-width: 767px) {
  .compare .section-inner .table-wrapper table tbody tr th, .compare .section-inner .table-wrapper table tbody tr td {
    font-size: 2.6666666667vw;
    padding-top: 0;
  }
}
.compare .section-inner .table-wrapper table tbody tr th {
  background-color: #f5fffe;
  font-size: 16px;
  border: 1px solid #efefef;
  font-weight: 500;
}
@media (max-width: 767px) {
  .compare .section-inner .table-wrapper table tbody tr th {
    font-size: 2.6666666667vw;
  }
}
.compare .section-inner .table-wrapper table tbody tr td.two-column {
  color: #fa8089;
  font-weight: bold;
  font-size: 16px;
  line-height: 1.4em;
  border-left: 5px solid #fa8089;
  border-right: 5px solid #fa8089;
  border-bottom: 1px solid #efefef;
}
@media (max-width: 767px) {
  .compare .section-inner .table-wrapper table tbody tr td.two-column {
    font-size: 3.2vw;
  }
}
.compare .section-inner .table-wrapper table tbody tr td.two-column span {
  color: #fa8089;
}
.compare .section-inner .table-wrapper table tbody tr td.two-column .din {
  font-family: "din-2014";
  font-size: 1.3125em;
}
.compare .section-inner .table-wrapper table tbody tr td.two-column .small {
  font-size: 0.75em;
}
.compare .section-inner .table-wrapper table tbody tr td.two-column .niju {
  font-size: 30px;
  line-height: 1.4em;
  display: inline-block;
  position: relative;
}
@media (max-width: 767px) {
  .compare .section-inner .table-wrapper table tbody tr td.two-column .niju {
    font-size: 5.3333333333vw;
  }
}
.compare .section-inner .table-wrapper table tbody tr td.two-column.last {
  border-bottom: 5px solid #fa8089;
}
.compare .section-inner .table-wrapper table tbody tr .style-col .mini {
  font-size: 14px;
  position: relative;
  top: 5px;
}
.compare .section-inner .table-wrapper table tbody tr .style-col .mini.notop {
  top: 0;
}
@media (max-width: 767px) {
  .compare .section-inner .table-wrapper table tbody tr .style-col .mini {
    font-size: 2.6666666667vw;
    top: 1.3333333333vw;
  }
}
.compare .section-inner .table-wrapper table tbody tr .style-col .top10 {
  top: 10px;
}
@media (max-width: 767px) {
  .compare .section-inner .table-wrapper table tbody tr .style-col .top10 {
    top: -1.3333333333vw;
  }
}
.compare .section-inner .table-wrapper table tbody tr.price-tr td:not(.two-column) {
  font-weight: bold;
  font-size: 16px;
  border: 1px solid #efefef;
}
@media (max-width: 767px) {
  .compare .section-inner .table-wrapper table tbody tr.price-tr td:not(.two-column) {
    font-size: 2.6666666667vw;
  }
}
.compare .section-inner .table-wrapper table tbody tr.price-tr td:not(.two-column) .din {
  font-family: "din-2014";
  font-size: 1.3125em;
}
.compare .section-inner .table-wrapper table tbody tr td:not(.two-column) {
  border: 1px solid #efefef;
  font-weight: bold;
  line-height: 1.4em;
}
.compare .section-inner .table-wrapper table tbody tr td:not(.two-column) .maru {
  font-size: 30px;
  line-height: 1.4em;
}
@media (max-width: 767px) {
  .compare .section-inner .table-wrapper table tbody tr td:not(.two-column) .maru {
    font-size: 5.3333333333vw;
  }
}

.price {
  background-image: url(../img/price-bg.webp);
  background-size: cover;
  background-position: center top;
  padding-top: 13px;
  padding-bottom: 60px;
}
@media screen and (max-width: 1360px) {
  .price {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media (max-width: 767px) {
  .price {
    padding-top: 10.6666666667vw;
    padding-bottom: 10.6666666667vw;
  }
}
.price .section-inner .ttl {
  margin-bottom: 30px;
}
.price .section-inner .ttl h2 {
  color: white;
  opacity: 0.3;
  line-height: 1.44em;
}
.price .section-inner .ttl h6 {
  color: white;
  font-size: 40px;
  bottom: 40px;
}
@media (max-width: 767px) {
  .price .section-inner .ttl h6 {
    font-size: 5.3333333333vw;
    bottom: 6.6666666667vw;
  }
}
.price .section-inner .bg-white {
  max-width: 568px;
  margin: auto;
  background-color: #fff;
  border-radius: 20px;
  padding-top: 40px;
  padding-left: 32px;
  padding-right: 32px;
  padding-bottom: 25px;
  margin-bottom: 108px;
}
@media (max-width: 767px) {
  .price .section-inner .bg-white {
    padding-top: 8vw;
    padding-left: 3.3333333333vw;
    padding-right: 3.3333333333vw;
    padding-bottom: 5.3333333333vw;
    margin-bottom: 10.6666666667vw;
  }
}
.price .section-inner .bg-white .top {
  display: flex;
  align-items: center;
}
.price .section-inner .bg-white .top .left {
  width: 93px;
  height: 93px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: #fa8089;
}
.price .section-inner .bg-white .top .left span {
  color: white;
  font-size: 24px;
  margin-bottom: 3px;
  margin-top: 3px;
}
@media (max-width: 767px) {
  .price .section-inner .bg-white .top .left {
    width: 18.6666666667vw;
    height: 18.6666666667vw;
  }
  .price .section-inner .bg-white .top .left span {
    font-size: 4.2666666667vw;
    margin-top: 0.8vw;
    margin-bottom: 0.8vw;
  }
}
.price .section-inner .bg-white .top .center {
  margin-left: 16px;
  display: flex;
  width: calc(100% - 109px);
}
@media (max-width: 767px) {
  .price .section-inner .bg-white .top .center {
    margin-left: 2.6666666667vw;
    width: calc(100% - 21.3333333333vw);
  }
}
.price .section-inner .bg-white .top .center h2 {
  font-family: "Poppins";
  font-size: 90px;
  font-weight: bold;
  line-height: 1.41em;
  color: #fa8089;
}
@media (max-width: 767px) {
  .price .section-inner .bg-white .top .center h2 {
    font-size: 16vw;
    line-height: 1em;
  }
}
.price .section-inner .bg-white .top .center .right {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding-top: 52px;
}
@media (max-width: 767px) {
  .price .section-inner .bg-white .top .center .right {
    padding-top: 4.2666666667vw;
  }
}
.price .section-inner .bg-white .top .center .right .tax {
  color: #fa8089;
  font-size: 12px;
  letter-spacing: 0.05em;
  line-height: 1.4em;
}
@media (max-width: 767px) {
  .price .section-inner .bg-white .top .center .right .tax {
    font-size: 2.6666666667vw;
  }
}
.price .section-inner .bg-white .top .center .right .kara {
  padding-left: 12px;
  font-weight: bold;
  font-family: "Poppins";
  font-size: 26px;
  color: #fa8089;
}
@media (max-width: 767px) {
  .price .section-inner .bg-white .top .center .right .kara {
    padding-left: 1.6vw;
    font-size: 5.3333333333vw;
  }
}
.price .section-inner .bg-white .notice {
  text-align: right;
  font-size: 12px;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .price .section-inner .bg-white .notice {
    font-size: 2.6666666667vw;
    margin-top: 2.6666666667vw;
  }
}
.price .section-inner .camp-p {
  text-align: center;
  font-weight: bold;
  font-size: 48px;
  margin-top: 40px;
  text-shadow: 2px 3px 3px rgba(255, 255, 255, 0.4);
}
@media (min-width: 1025px) {
  .price .btn-flex {
    padding-top: 3.6603221083vw;
  }
}
@media screen and (max-width: 1260px) and (min-width: 1025px) {
  .price .btn-flex {
    padding-top: 0;
  }
}
@media screen and (max-width: 1260px) and (min-width: 1025px) and (max-width: 1050px) {
  .price .btn-flex {
    margin-top: -20px;
  }
}

.faq {
  padding-top: 100px;
  padding-bottom: 160px;
}
@media (max-width: 1279px) {
  .faq {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media (max-width: 767px) {
  .faq {
    padding-top: 13.3333333333vw;
    padding-bottom: 13.3333333333vw;
    padding-left: 4vw;
    padding-right: 4vw;
  }
}
.faq .section-inner {
  max-width: 1000px;
  margin: auto;
}
.faq .section-inner .btn-wrapper {
  display: flex;
  justify-content: space-around;
}
.faq .section-inner .btn-wrapper .btn {
  display: flex;
  justify-content: space-around;
  width: 48%;
  height: 90px;
  background-color: #fa8089;
  border-radius: 99px;
  align-items: center;
  box-shadow: 5px 5px 0 0 #a22828;
  margin-bottom: 100px;
  top: 0;
  position: relative;
  transition: all 0.4s;
  overflow: hidden;
  cursor: pointer;
}
.faq .section-inner .btn-wrapper .btn.btn2 {
  background-color: #6cc4d4;
  box-shadow: 5px 5px 0 0 #247484;
}
.faq .section-inner .btn-wrapper .btn span {
  color: white;
  font-size: 24px;
  letter-spacing: 0.05em;
  font-weight: bold;
}
.faq .section-inner .btn-wrapper .btn img {
  width: 50px;
  height: auto;
  transition: all 0.4s;
  position: absolute;
  right: 30px;
}
@media (max-width: 767px) {
  .faq .section-inner .btn-wrapper .btn {
    width: 100%;
    height: 16vw;
    justify-content: center;
    box-shadow: 1.3333333333vw 1.3333333333vw 0 0 #a22828;
    margin-bottom: 21.3333333333vw;
  }
  .faq .section-inner .btn-wrapper .btn.btn2 {
    box-shadow: 1.3333333333vw 1.3333333333vw 0 0 #247484;
  }
  .faq .section-inner .btn-wrapper .btn span {
    font-size: 4.8vw;
    padding-right: 10px;
  }
  .faq .section-inner .btn-wrapper .btn img {
    width: 6.6666666667vw;
    right: 15px;
  }
}
@media (min-width: 768px) {
  .faq .section-inner .btn-wrapper .btn:hover {
    top: -4px;
    box-shadow: 5px 10px 0 0 #a22828;
  }
  .faq .section-inner .btn-wrapper .btn:hover img {
    transform: rotate(360deg);
  }
  .faq .section-inner .btn-wrapper .btn:hover.btn2 {
    box-shadow: 5px 10px 0 0 #247484;
  }
  .faq .section-inner .btn-wrapper .btn:active {
    top: 0.3660322108vw;
    box-shadow: 0vw 0vw 0 0 #a22828;
  }
  .faq .section-inner .btn-wrapper .btn:active.btn2 {
    box-shadow: 0px 0px 0 0 #247484;
  }
}
.faq .section-inner .btn-wrapper .btn::before {
  position: absolute;
  top: 0;
  left: -75%;
  z-index: 2;
  display: block;
  content: "";
  width: 50%;
  height: 100%;
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  -webkit-transform: skewX(-25deg);
  transform: skewX(-25deg);
  animation: shine 3.5s linear infinite;
}
.faq .section-inner .ttl {
  margin-bottom: 38px;
}
.faq .section-inner .ttl h2 {
  line-height: 1.44em;
}
.faq .section-inner .ttl h6 {
  font-size: 24px;
  bottom: 40px;
}
@media (max-width: 767px) {
  .faq .section-inner .ttl h6 {
    font-size: 5.3333333333vw;
    bottom: 5.8565153734vw;
  }
}
.faq .section-inner .flex {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.faq .section-inner .flex .card {
  width: calc(50% - 20px);
  border: 1px solid #31cec2;
  border-radius: 20px;
  padding-top: 58px;
  padding-left: 29px;
  padding-right: 31px;
  padding-bottom: 64px;
  margin-bottom: 40px;
}
@media (max-width: 767px) {
  .faq .section-inner .flex .card {
    width: 100%;
    padding-top: 8vw;
    padding-left: 4vw;
    padding-right: 4vw;
    padding-bottom: 8vw;
    margin-bottom: 8vw;
  }
}
.faq .section-inner .flex .card > div {
  display: flex;
  align-items: center;
}
.faq .section-inner .flex .card > div .circle {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  text-align: center;
  background: rgb(95, 176, 203);
  background: linear-gradient(0deg, rgb(95, 176, 203) 0%, rgb(122, 224, 216) 100%);
}
.faq .section-inner .flex .card > div .circle h5 {
  line-height: 70px;
  font-size: 40px;
  color: white;
}
@media (max-width: 767px) {
  .faq .section-inner .flex .card > div .circle {
    width: 16vw;
    height: 16vw;
  }
  .faq .section-inner .flex .card > div .circle h5 {
    font-size: 10.6666666667vw;
    line-height: 1.25em;
  }
}
.faq .section-inner .flex .card > div p {
  width: calc(100% - 80px);
  padding-left: 14px;
  font-size: 16px;
  line-height: 1.5em;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .faq .section-inner .flex .card > div p {
    width: calc(100% - 16vw);
    padding-left: 2.1333333333vw;
  }
}
.faq .section-inner .flex .card .question {
  margin-bottom: 39px;
}
@media (max-width: 767px) {
  .faq .section-inner .flex .card .question {
    margin-bottom: 5.3333333333vw;
  }
}
.faq .section-inner .flex .card .question p {
  font-size: 20px;
}
@media (max-width: 767px) {
  .faq .section-inner .flex .card .question p {
    font-size: 4.2666666667vw;
  }
}
.faq .section-inner .flex .card .answer {
  align-items: flex-start;
}
.faq .section-inner .flex .card .answer .circle {
  background: white;
  border: 1px solid #31cec2;
}
.faq .section-inner .flex .card .answer .circle h5 {
  color: #31cec2;
}
.faq .section-inner .flex .card .answer p {
  padding-top: 16px;
}
@media (max-width: 767px) {
  .faq .section-inner .flex .card .answer p {
    font-size: 3.7333333333vw;
    padding-top: 4.2666666667vw;
  }
}

footer .footer-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: #efefef;
  padding-top: 42px;
  padding-bottom: 53px;
}
@media (max-width: 767px) {
  footer .footer-inner {
    padding-top: 8vw;
    padding-bottom: 8vw;
  }
}
footer .footer-inner .logo {
  margin-bottom: 30px;
}
@media (max-width: 767px) {
  footer .footer-inner .logo {
    margin-bottom: 6.6666666667vw;
  }
}
footer .footer-inner .btn-wrapper {
  display: flex;
  justify-content: space-around;
  max-width: 1040px;
  width: 100%;
  margin: auto;
}
footer .footer-inner .btn-wrapper .btn {
  display: flex;
  justify-content: space-around;
  width: 48%;
  height: 90px;
  background-color: #fa8089;
  border-radius: 99px;
  align-items: center;
  box-shadow: 5px 5px 0 0 #a22828;
  margin-bottom: 60px;
  top: 0;
  position: relative;
  transition: all 0.4s;
  overflow: hidden;
  cursor: pointer;
}
footer .footer-inner .btn-wrapper .btn.btn2 {
  background-color: #6cc4d4;
  box-shadow: 5px 5px 0 0 #247484;
}
footer .footer-inner .btn-wrapper .btn span {
  color: white;
  font-size: 24px;
  letter-spacing: 0.05em;
  font-weight: bold;
  position: relative;
  top: 5px;
}
footer .footer-inner .btn-wrapper .btn .span2 {
  font-size: 14px;
  top: 20px;
  padding-right: 25px;
}
@media (max-width: 767px) {
  footer .footer-inner .btn-wrapper .btn .span2 {
    font-size: 10px;
    top: 13px;
    padding-right: 0px;
  }
}
footer .footer-inner .btn-wrapper .btn img {
  width: 20px;
  height: auto;
  transition: all 0.4s;
  position: absolute;
  right: 30px;
}
@media (max-width: 767px) {
  footer .footer-inner .btn-wrapper .btn {
    width: 100%;
    height: 16vw;
    justify-content: center;
    box-shadow: 1.3333333333vw 1.3333333333vw 0 0 #a22828;
    margin-bottom: 21.3333333333vw;
  }
  footer .footer-inner .btn-wrapper .btn.btn2 {
    box-shadow: 1.3333333333vw 1.3333333333vw 0 0 #247484;
  }
  footer .footer-inner .btn-wrapper .btn span {
    font-size: 4.8vw;
  }
  footer .footer-inner .btn-wrapper .btn img {
    width: 6.6666666667vw;
    right: 15px;
  }
}
@media (min-width: 768px) {
  footer .footer-inner .btn-wrapper .btn:hover {
    top: -4px;
    box-shadow: 5px 10px 0 0 #a22828;
  }
  footer .footer-inner .btn-wrapper .btn:hover.btn2 {
    box-shadow: 5px 10px 0 0 #247484;
  }
  footer .footer-inner .btn-wrapper .btn:active {
    top: 0.3660322108vw;
    box-shadow: 0vw 0vw 0 0 #a22828;
  }
  footer .footer-inner .btn-wrapper .btn:active.btn2 {
    box-shadow: 0px 0px 0 0 #247484;
  }
}
footer .footer-inner .btn-wrapper .btn::before {
  position: absolute;
  top: 0;
  left: -75%;
  z-index: 2;
  display: block;
  content: "";
  width: 50%;
  height: 100%;
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  -webkit-transform: skewX(-25deg);
  transform: skewX(-25deg);
  animation: shine 3.5s linear infinite;
}
footer .footer-inner ul {
  display: flex;
  justify-content: space-between;
  width: 511px;
}
@media (max-width: 767px) {
  footer .footer-inner ul {
    width: 100%;
    justify-content: space-around;
  }
}
@media (max-width: 767px) {
  footer .footer-inner ul li {
    margin-bottom: 1.3333333333vw;
  }
}
footer .footer-inner ul li a {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5em;
  transition: all 0.4s;
}
footer .footer-inner ul li a:hover {
  opacity: 0.7;
}
@media (max-width: 767px) {
  footer .footer-inner ul li a {
    font-size: 2.9333333333vw;
  }
}
footer .footer-inner .ul1 {
  padding-left: 38px;
  padding-right: 40px;
  margin-bottom: 11px;
}
@media (max-width: 767px) {
  footer .footer-inner .ul1 {
    padding-left: 4vw;
    padding-right: 4vw;
    flex-wrap: wrap;
  }
}
@media (max-width: 767px) {
  footer .footer-inner .ul2.sp-hide {
    display: none;
  }
}
footer .copyright {
  background-color: #5fb0cb;
  padding-top: 31px;
  padding-bottom: 28px;
}
footer .copyright p {
  text-align: center;
  color: white;
  font-size: 16px;
  letter-spacing: 0.05em;
  font-weight: bold;
  line-height: 1.5em;
}
@media (max-width: 767px) {
  footer .copyright {
    padding-top: 5.3333333333vw;
    padding-bottom: 5.3333333333vw;
  }
  footer .copyright p {
    font-size: 3.2vw;
  }
}

.slide-area {
  padding-top: 80px;
  padding-bottom: 40px;
}
.slide-area img {
  width: 100%;
}
@media (max-width: 767px) {
  .slide-area {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
.slide-area h2 {
  text-align: center;
  font-size: 30px;
  font-weight: bold;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .slide-area h2 {
    font-size: 19px;
  }
}
.slide-area .swiper {
  margin-top: 80px;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .slide-area .swiper {
    margin-top: 20px;
    margin-bottom: 10px;
  }
}
.slide-area .slide {
  display: inline-block;
  margin-right: 20px;
}
.slide-area .slide img {
  height: 60px;
}
@media (max-width: 767px) {
  .slide-area .slide img {
    height: 45px;
  }
}

main {
  overflow: hidden;
}

header {
  background-color: #2d2d2e;
  position: fixed;
  top: -85px;
  left: 0;
  width: 100%;
  z-index: 10;
  transition: all 0.4s;
  transition-delay: 0.3s;
}
header.fixed {
  top: 0;
}
@media (min-width: 768px) {
  header {
    padding-left: 13.3235724744vw;
    padding-right: 13.3235724744vw;
  }
}
@media screen and (max-width: 1280px) {
  header {
    padding-left: 15px;
    padding-right: 0px;
  }
}
header .header-inner {
  height: 85px;
  margin: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media (max-width: 1279px) {
  header .header-inner {
    max-width: unset;
    width: 100%;
  }
}
@media (max-width: 767px) {
  header .header-inner {
    height: 50px;
    padding-right: 15px;
  }
  header .header-inner .logo img {
    width: 60px;
    height: auto;
  }
  header .header-inner .burger {
    width: 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background-color: transparent;
    z-index: 99;
  }
  header .header-inner .burger span {
    display: block;
    width: 100%;
    height: 1px;
    background-color: #fff;
    transition: all 0.4s;
  }
  header .header-inner .burger .span1 {
    margin-bottom: 8px;
  }
  header .header-inner .burger .span3 {
    margin-top: 8px;
  }
  header .header-inner .burger.active .span1 {
    transform: rotate(30deg);
    margin-bottom: -1px;
  }
  header .header-inner .burger.active .span2 {
    opacity: 0;
  }
  header .header-inner .burger.active .span3 {
    transform: rotate(-30deg);
    margin-top: -1px;
  }
}
header .header-inner .right {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  height: 100%;
}
@media (max-width: 767px) {
  header .header-inner .right {
    position: fixed;
    top: 0;
    right: -100%;
    height: 100vh;
    flex-direction: column;
    width: 100%;
    align-items: center;
    justify-content: flex-start;
    background-color: rgba(45, 45, 46, 0.9);
    padding-top: 120px;
    transition: all 0.4s;
  }
  header .header-inner .right.active {
    right: 0;
  }
}
header .header-inner .right ul {
  display: flex;
}
@media (max-width: 767px) {
  header .header-inner .right ul {
    flex-direction: column;
    align-items: center;
  }
}
header .header-inner .right ul li {
  margin-right: 20px;
}
@media (max-width: 1279px) {
  header .header-inner .right ul li {
    margin-right: 15px;
  }
}
@media (max-width: 767px) {
  header .header-inner .right ul li {
    margin-right: unset;
    margin-bottom: 20px;
  }
}
header .header-inner .right ul li:last-child {
  margin-right: 30px;
}
@media (max-width: 1279px) {
  header .header-inner .right ul li:last-child {
    margin-right: 20px;
  }
}
@media (max-width: 767px) {
  header .header-inner .right ul li:last-child {
    margin-right: unset;
  }
}
header .header-inner .right ul li a {
  color: white;
  font-size: 15px;
  font-weight: bold;
  transition: all 0.4s;
}
header .header-inner .right ul li a:hover {
  opacity: 0.7;
}
@media (max-width: 1279px) {
  header .header-inner .right ul li a {
    font-size: 14px;
  }
}
@media (max-width: 767px) {
  header .header-inner .right ul li a {
    font-size: 16px;
  }
}
header .header-inner .right .cta {
  background-color: #fa8089;
  display: block;
  height: 100%;
  padding-left: 9px;
  padding-right: 10px;
  position: relative;
  overflow: hidden;
  z-index: 10;
}
@media (max-width: 767px) {
  header .header-inner .right .cta {
    height: 70px;
    padding-left: 20px;
    padding-right: 20px;
    margin-top: 20px;
  }
}
header .header-inner .right .cta .cta-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
}
header .header-inner .right .cta .cta-inner .arrow {
  width: 11.3px;
  height: 17.7px;
}
header .header-inner .right .cta .cta-inner span {
  color: white;
  font-size: 16px;
  font-weight: bold;
  margin-right: 7px;
  position: relative;
  top: 5px;
}
header .header-inner .right .cta .cta-inner .span2 {
  position: absolute;
  font-size: 10px;
  margin-right: 0;
  width: 100%;
  top: 25px;
  padding-left: 10px;
  text-align: center;
}
@media (max-width: 767px) {
  header .header-inner .right .cta .cta-inner .span2 {
    top: 18px;
    padding-left: 0;
    padding-right: 15px;
  }
}
header .header-inner .right .cta::before {
  position: absolute;
  top: 0;
  left: -75%;
  z-index: 2;
  display: block;
  content: "";
  width: 50%;
  height: 100%;
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  -webkit-transform: skewX(-25deg);
  transform: skewX(-25deg);
  animation: shine 3.5s linear infinite;
}

.bottom-cta {
  position: fixed;
  width: 100%;
  bottom: 0;
  left: 0;
  z-index: 99;
  background-color: rgba(0, 0, 0, 0.7);
  padding-top: 20px;
  padding-bottom: 10px;
  transition: all 0.4s;
  bottom: -140px;
}
.bottom-cta.fixed {
  bottom: 0;
}
@media (max-width: 767px) {
  .bottom-cta {
    padding-top: 10px;
  }
}
.bottom-cta .btn-flex {
  display: flex;
  justify-content: center;
  max-width: 1288.2px;
  margin: auto;
  padding-top: 0;
}
@media (max-width: 1024px) {
  .bottom-cta .btn-flex {
    flex-direction: row;
  }
}
@media (max-width: 767px) {
  .bottom-cta .btn-flex {
    flex-direction: row;
    width: 100%;
    justify-content: space-around;
    padding-left: 2.6666666667vw;
    padding-right: 2.6666666667vw;
  }
}
.bottom-cta .btn-flex .btn {
  display: flex;
  width: 450px;
  justify-content: center;
  height: 90px;
  background-color: #fa8089;
  border-radius: 99px;
  align-items: center;
  box-shadow: 5px 5px 0 0 #a22828;
  margin-bottom: 10px;
  top: 0;
  position: relative;
  transition: all 0.4s;
  overflow: hidden;
  cursor: pointer;
}
.bottom-cta .btn-flex .btn span {
  color: white;
  font-size: 26px;
  padding-left: unset;
  letter-spacing: 0.05em;
  font-weight: bold;
  margin-right: unset;
  position: relative;
  top: 5px;
}
.bottom-cta .btn-flex .btn .span2 {
  font-size: 14px;
  top: 20px;
  padding-right: 5px;
}
@media (max-width: 1024px) {
  .bottom-cta .btn-flex .btn .span2 {
    font-size: 12px;
    top: 15px;
  }
}
@media (max-width: 767px) {
  .bottom-cta .btn-flex .btn .span2 {
    font-size: 10px;
    padding-left: 3px;
    top: 10px;
    transform: scale(0.8);
    padding-right: 0px;
  }
}
.bottom-cta .btn-flex .btn img {
  width: 20px;
  height: auto;
  transition: all 0.4s;
  position: absolute;
  right: 20px;
}
@media (max-width: 1279px) {
  .bottom-cta .btn-flex .btn {
    width: 300px;
    height: 70px;
    justify-content: center;
  }
  .bottom-cta .btn-flex .btn span {
    font-size: 22px;
  }
}
@media (max-width: 1279px) and (max-width: 1024px) {
  .bottom-cta .btn-flex .btn span {
    font-size: 18px;
  }
}
@media (max-width: 1279px) {
  .bottom-cta .btn-flex .btn img {
    width: 10px;
    position: relative;
    top: 2px;
  }
}
@media (max-width: 767px) {
  .bottom-cta .btn-flex .btn {
    width: 48%;
    height: 16.2666666667vw;
    justify-content: center;
    box-shadow: 0.5333333333vw 0.5333333333vw 0 0 #a22828;
    margin-bottom: 0vw;
  }
  .bottom-cta .btn-flex .btn span {
    font-size: 4.5333333333vw;
    white-space: nowrap;
  }
  .bottom-cta .btn-flex .btn img {
    width: 1.6vw;
    top: 0;
  }
}
@media (min-width: 768px) {
  .bottom-cta .btn-flex .btn:hover {
    top: -4px;
    box-shadow: 5px 10px 0 0 #a22828;
  }
  .bottom-cta .btn-flex .btn:hover img {
    transform: rotate(0deg);
  }
  .bottom-cta .btn-flex .btn:active {
    top: 5px;
    box-shadow: 0 0 0 0 #a22828;
  }
}
.bottom-cta .btn-flex .btn::before {
  position: absolute;
  top: 0;
  left: -75%;
  z-index: 2;
  display: block;
  content: "";
  width: 50%;
  height: 100%;
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  -webkit-transform: skewX(-25deg);
  transform: skewX(-25deg);
  animation: shine 3.5s linear infinite;
}
.bottom-cta .btn-flex .btn2 {
  background-color: #6cc4d4;
  margin-left: 20px;
  box-shadow: 5px 5px 0 0 #247484;
}
@media (max-width: 1279px) {
  .bottom-cta .btn-flex .btn2 span {
    margin-right: 40px;
  }
}
@media (max-width: 767px) {
  .bottom-cta .btn-flex .btn2 {
    margin-left: 0;
    box-shadow: 0.5333333333vw 0.5333333333vw 0 0 #247484;
  }
  .bottom-cta .btn-flex .btn2 span {
    padding-left: 2.6666666667vw;
    margin-right: 2.6666666667vw;
  }
}
@media (min-width: 768px) {
  .bottom-cta .btn-flex .btn2:hover {
    box-shadow: 5px 10px 0 0 #247484;
  }
  .bottom-cta .btn-flex .btn2:active {
    box-shadow: 0 0 0 0 #247484;
  }
}

@media (min-width: 768px) {
  .coupon-flex {
    margin-top: 60px;
  }
}

.date-wrapper {
  padding-top: 3.6603221083vw;
}
@media screen and (max-width: 1260px) {
  .date-wrapper {
    padding-top: 1.8301610542vw;
    padding-bottom: 3.6603221083vw;
  }
}
@media screen and (max-width: 1050px) {
  .date-wrapper {
    padding-top: 0;
    margin-bottom: 20px;
  }
}
@media (max-width: 1024px) {
  .date-wrapper {
    padding-top: 20px;
    margin-bottom: 10px;
  }
}
@media (max-width: 767px) {
  .date-wrapper {
    padding-top: 1.3333333333vw;
    margin-bottom: 5.3333333333vw;
  }
}
.date-wrapper h4 {
  text-align: center;
  font-size: 1.1713030747vw;
  font-weight: 500;
}
.date-wrapper h4 span {
  font-size: 2em;
}
@media (max-width: 767px) {
  .date-wrapper h4 {
    font-size: 3.2vw;
  }
}
.date-wrapper h4, .date-wrapper span {
  color: white;
}

.henkin-wrapper {
  max-width: 600px;
  margin: auto;
  margin-top: 60px;
}

@media (max-width: 1279px) {
  .henkin-wrapper {
    margin-top: 0;
    margin-bottom: 50px;
  }
}
@media (max-width: 767px) {
  .henkin-wrapper {
    margin-top: 50px;
  }
}
.henkin-wrapper .desc {
  text-align: center;
  color: white;
  font-size: 24px;
  letter-spacing: 0.05em;
  padding-bottom: 10px;
  font-weight: bold;
}

@media (max-width: 767px) {
  .henkin-wrapper .desc {
    font-size: 18px;
  }
}
.henkin-wrapper .box {
  background: linear-gradient(73deg, rgb(219, 44, 35) 0%, rgb(164, 49, 43) 100%);
  padding-bottom: 5px;
}

.henkin-wrapper .box h5 {
  text-align: center;
  letter-spacing: 0.05em;
  font-size: 24px;
  font-weight: bold;
  color: white;
  padding-top: 15px;
  padding-bottom: 15px;
}

@media (max-width: 767px) {
  .henkin-wrapper .box h5 {
    font-size: 16px;
  }
}
.henkin-wrapper .box .flex {
  background-color: #fff;
  width: calc(100% - 10px);
  margin-left: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 20px;
  padding-bottom: 20px;
}

.henkin-wrapper .box .flex .g-circle {
  background-color: #B68D38;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100px;
  width: 100px;
}

@media (max-width: 767px) {
  .henkin-wrapper .box .flex .g-circle {
    height: 70px;
    width: 70px;
  }
}
.henkin-wrapper .box .flex .g-circle p {
  color: white;
  text-align: center;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.2em;
  letter-spacing: 0.05em;
  position: relative;
  top: -1px;
}

@media (max-width: 767px) {
  .henkin-wrapper .box .flex .g-circle p {
    font-size: 16px;
  }
}
.henkin-wrapper .box .flex .big {
  font-size: 54px;
  font-weight: bold;
  margin-left: 10px;
  letter-spacing: 0.05em;
}

@media (max-width: 767px) {
  .henkin-wrapper .box .flex .big {
    font-size: 34px;
    white-space: nowrap;
  }
}
.henkin-wrapper .notice {
  margin-top: 10px;
}

.henkin-wrapper .notice li {
  position: relative;
  padding-left: 1.4em;
  color: white;
  line-height: 1.5em;
  font-size: 12px;
}

@media (max-width: 767px) {
  .henkin-wrapper .notice li {
    font-size: 10px;
    padding-left: 1.2em;
  }
}
.henkin-wrapper .notice li::before {
  content: "※";
  left: 0;
  top: 0;
  position: absolute;
}

@media (max-width: 767px) {
  .btn-wrapper {
    flex-direction: column;
  }
  .btn-wrapper .btn:not(.btn2) {
    margin-bottom: 20px !important;
  }
  .camp-p {
    margin-top: 10px !important;
    font-size: 18px !important;
  }
  .feature .section-inner .btn-wrapper, footer .footer-inner .btn-wrapper {
    padding-left: 20px;
    padding-right: 20px;
  }
  footer .footer-inner .btn-wrapper .btn img {
    width: 10px;
  }
  .bottom-cta .btn-flex .btn span {
    font-size: 3.2vw;
  }
  .bottom-cta .btn-flex .btn {
    height: 12vw;
  }
  .bottom-cta .btn-flex .btn img {
    right: 2.6666666667vw;
    top: unset;
    position: absolute;
  }
}
@media (max-width: 767px) {
  .campaign .section-inner .sec-ttl {
    margin-bottom: 20px;
  }
}

@media (min-width: 768px) {
  .price {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.new-coupon {
  max-width: unset !important;
}
@media (min-width: 768px) {
  .new-coupon {
    margin-top: 30px;
  }
}
.new-coupon .img-wrapper {
  width: 32%;
  position: relative;
}
@media (max-width: 1024px) {
  .new-coupon .img-wrapper {
    width: 100%;
    max-width: 600px;
  }
}
.new-coupon .img-wrapper img {
  width: 100%;
  display: block;
  position: relative;
  z-index: 2;
}
.new-coupon .img-wrapper::after {
  content: "";
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  width: 90%;
  height: 40px;
  box-shadow: 0 40px 15px rgba(0, 0, 0, 0.6);
  background-color: transparent;
  z-index: 0;
  border-radius: 50%;
}

@media (max-width: 767px) {
  .campaign .section-inner .tokuten-area .camp-ttl img {
    margin-bottom: 20px;
  }
}
.new-present {
  padding-top: 80px;
  padding-bottom: 50px;
}
@media (max-width: 767px) {
  .new-present {
    padding-top: 60px;
    padding-bottom: 20px;
  }
}
.new-present .present-ttl {
  text-align: center;
  margin-bottom: 30px;
}
.new-present .present-ttl img {
  width: 100%;
  max-width: 717px;
}
@media (max-width: 767px) {
  .new-present .present-ttl {
    margin-bottom: 20px;
  }
}
.new-present .p-flex {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 1024px) {
  .new-present .p-flex {
    flex-direction: column;
    align-items: center;
  }
}
.new-present .p-flex .img-wrapper {
  width: 32%;
  position: relative;
}
@media (max-width: 1024px) {
  .new-present .p-flex .img-wrapper {
    width: 100%;
    max-width: 600px;
    margin-bottom: 20px;
  }
}
.new-present .p-flex .img-wrapper img {
  width: 100%;
  display: block;
  position: relative;
  z-index: 2;
}
.new-present .p-flex .img-wrapper::after {
  content: "";
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  width: 90%;
  height: 40px;
  box-shadow: 0 40px 15px rgba(0, 0, 0, 0.6);
  background-color: transparent;
  z-index: 0;
  border-radius: 50%;
}
.new-present .p-flex .img-wrapper2 {
  position: relative;
}
.new-present .p-flex .img-wrapper2 p {
  position: absolute;
  width: 100%;
  text-align: center;
  bottom: 25%;
  z-index: 2;
  font-size: 1.1713030747vw;
  z-index: 2;
}
@media (max-width: 767px) {
  .new-present .p-flex .img-wrapper2 p {
    bottom: 25%;
    font-size: 12px;
  }
}

.calendar-sec {
  padding-top: 50px;
  padding-bottom: 0px;
  padding-left: 20px;
  padding-right: 20px;
}
.calendar-sec h3 {
  text-align: center;
  font-size: 32px;
  font-weight: bold;
  line-height: 1.4em;
  letter-spacing: 0.04em;
  margin-left: -10px;
  margin-right: -10px;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .calendar-sec h3 {
    font-size: 14px;
  }
}
.calendar-sec h3 .pink {
  color: #FA8089;
}
.calendar-sec h3 .big {
  font-weight: 900;
  font-size: 1.4em;
  display: inline-block;
  text-shadow: 1px 1px 1px #fa8089;
  transform: rotate(10deg);
}
.calendar-sec h3 .big2 {
  transform: rotate(-10deg);
  margin-left: -3px;
}
.calendar-sec .h3-2 {
  font-size: 36px;
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  .calendar-sec .h3-2 {
    font-size: 15px;
  }
}
@media (max-width: 767px) {
  .calendar-sec {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.calendar-sec .section-inner {
  max-width: 1000px;
  margin: auto;
}
.new-fv {
  width: 100%;
  background-size: cover;
  padding-top: 20px;
  padding-left: 20px;
  padding-right: 20px;
  position: relative;
  padding-bottom: 30px;
}
@media (max-width: 767px) {
  .new-fv {
    height: 141.7874396135vw;
    background-image: url(../img/fv-sp.webp?ver2);
    padding-top: 9.6618357488vw;
    padding-left: 4.8309178744vw;
    padding-bottom: 4.8309178744vw;
  }
}
.new-fv .ab {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
}
.new-fv .ab::before {
  content: "";
  position: absolute;
  left: 0;
  z-index: 2;
  top: 0;
  height: 100%;
  width: 65%;
  clip-path: polygon(0 0, 100% 0, calc(100% - 240px) 100%, 0 100%);
  background: linear-gradient(180deg, #39B3D9 0%, #79DED8 100%);
}
.new-fv .ab img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: right center;
  position: relative;
  right: 0px;
}
@media screen and (max-width: 1600px) {
  .new-fv .ab img {
    position: relative;
    right: -60px;
  }
}
@media screen and (max-width: 1300px) {
  .new-fv .ab img {
    right: -40px;
  }
}
@media screen and (max-width: 1100px) {
  .new-fv .ab img {
    right: -10px;
  }
}
@media (max-width: 767px) {
  .new-fv .ab {
    display: none;
  }
}
.new-fv .section-inner {
  position: relative;
  z-index: 2;
  max-width: 1240px;
  margin: auto;
}
.new-fv .section-inner .logo {
  margin-bottom: 30px;
}
.new-fv .row {
  display: flex;
  align-items: center;
}
.new-fv .row .box {
  background: linear-gradient(180deg, #53FFF5 0%, #16909C 100%);
  display: flex;
  padding: 10px 15px;
  margin-right: 15px;
}
.new-fv .row .box p {
  color: white;
  text-shadow: 2px 2px 2px gray;
  font-family: "Inter";
  font-size: 24px;
  font-weight: bold;
}
@media screen and (max-width: 1400px) {
  .new-fv .row .box p {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  .new-fv .row .box {
    border-width: 0.4830917874vw;
    padding: 2.4154589372vw 3.6231884058vw;
    padding-bottom: 1.9323671498vw;
    margin-bottom: 1.4492753623vw;
  }
  .new-fv .row .box p {
    font-size: 3.8647342995vw;
  }
}
.new-fv .row h6 {
  font-size: 26px;
  font-weight: bold;
  color: white;
  text-shadow: 2px 2px 2px gray;
}
@media screen and (max-width: 1400px) {
  .new-fv .row h6 {
    font-size: 26px;
  }
}
@media (max-width: 1300px) {
  .new-fv .row h6 {
    font-size: 24px;
  }
}
@media screen and (max-width: 1100px) {
  .new-fv .row h6 {
    margin-top: 10px;
  }
}
@media (max-width: 1024px) {
  .new-fv .row h6 {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .new-fv .row h6 {
    font-size: 4.1062801932vw;
    line-height: 1.3em;
    margin-top: 0;
  }
}
.new-fv .row h2 {
  color: white;
  font-family: "Inter";
  font-size: 38px;
  font-weight: bold;
  line-height: normal;
  text-shadow: 2px 2px 2px gray;
}
@media (max-width: 1300px) {
  .new-fv .row h2 {
    font-size: 34px;
  }
}
@media (max-width: 1024px) {
  .new-fv .row h2 {
    font-size: 26px;
  }
}
.new-fv .row h2 .span1 {
  color: white;
  position: relative;
}
.new-fv .row h2 .span1 span {
  color: white;
  position: relative;
}
.new-fv .row h2 .span1 span::before {
  content: "";
  width: calc(100% + 20px);
  height: 4px;
  background-color: #fff;
  position: absolute;
  left: 0;
  bottom: -5px;
}
@media (max-width: 767px) {
  .new-fv .row h2 .span1 span::before {
    height: 2px;
    bottom: 0px;
    width: calc(100% + 0px);
  }
}
@media (max-width: 767px) {
  .new-fv .row h2 .span1 span.span3::before {
    width: calc(100% + 10px);
  }
}
.new-fv .row h2 .span2 {
  color: white;
}
@media (max-width: 767px) {
  .new-fv .row h2 .span2 {
    padding-bottom: 2px;
  }
}
@media (max-width: 767px) {
  .new-fv .row h2 {
    font-size: 6.2801932367vw;
    line-height: 1.4em;
  }
  .new-fv .row h2 span::before {
    width: calc(100% + 20px);
    height: 2px;
  }
}
.new-fv .row1 {
  margin-bottom: 10px;
}
@media screen and (max-width: 1100px) {
  .new-fv .row1 {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media (max-width: 767px) {
  .new-fv .row1 {
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 2.4154589372vw;
  }
}
@media (max-width: 767px) {
  .new-fv .row2 {
    margin-bottom: 2.4154589372vw;
  }
}
.new-fv .row3 {
  flex-direction: column;
  align-items: flex-start;
  margin-top: 10px;
}
@media (max-width: 767px) {
  .new-fv .row3 {
    flex-direction: column;
    align-items: unset;
    padding-right: 0vw;
  }
}
.new-fv .row3 .col {
  display: flex;
  align-items: center;
}
@media (max-width: 767px) {
  .new-fv .row3 .col {
    flex-direction: column;
    align-items: flex-start;
  }
}
.new-fv .row3 .col .left {
  padding-top: 10px;
}
.new-fv .row3 .col .left .big {
  position: relative;
  z-index: 2;
}
.new-fv .row3 .col .left .big::before {
  white-space: nowrap;
  content: "未経験から月収＋";
  position: absolute;
  left: 3px;
  top: 3px;
  font-size: 45px;
  color: rgba(0, 0, 0, 0.7);
  z-index: -1;
}
@media (max-width: 767px) {
  .new-fv .row3 .col .left .big::before {
    color: rgba(0, 0, 0, 0.8);
    left: 2px;
    top: 4px;
    content: "未経験から月収";
  }
}
.new-fv .row3 .col .left .big span {
  font-size: 45px;
  font-family: "Noto Sans JP";
  font-weight: 900;
  background: linear-gradient(90deg, rgba(255, 230, 0, 0.95) 0%, #D9984C 100%);
  background: linear-gradient(180deg, rgba(255, 230, 0, 0.95) 0%, #FFBF74 113.25%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media (max-width: 767px) {
  .new-fv .row3 .col .left .big span span {
    display: none;
  }
}
@media (max-width: 767px) {
  .new-fv .row3 .col .left .big::before, .new-fv .row3 .col .left .big span {
    font-size: 7.729468599vw;
  }
}
.new-fv .row3 .col .right {
  margin-left: 10px;
}
@media (max-width: 767px) {
  .new-fv .row3 .col .right {
    margin-left: 0;
  }
}
.new-fv .row3 .col .right p {
  font-family: "Noto Sans JP";
}
.new-fv .row3 .col .right p > span {
  font-weight: 900;
  display: inline-block;
}
.new-fv .row3 .col .right p > span span {
  background: linear-gradient(90deg, rgba(255, 230, 0, 0.95) 0%, #D9984C 100%);
  background: linear-gradient(180deg, rgba(255, 230, 0, 0.95) 0%, #FFBF74 113.25%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.new-fv .row3 .col .right p .big {
  font-size: 100px;
  position: relative;
  z-index: 2;
  margin-left: -10px;
}
.new-fv .row3 .col .right p .big::before {
  white-space: nowrap;
  content: "30";
  position: absolute;
  left: 3px;
  top: 3px;
  color: rgba(0, 0, 0, 0.7);
  z-index: -1;
}
@media (max-width: 767px) {
  .new-fv .row3 .col .right p .big {
    font-size: 22.7053140097vw;
    margin-left: 0;
  }
}
.new-fv .row3 .col .right p .medium {
  font-size: 50px;
  position: relative;
  z-index: 2;
}
.new-fv .row3 .col .right p .medium::before {
  white-space: nowrap;
  content: "万円";
  position: absolute;
  left: 3px;
  top: 3px;
  color: rgba(0, 0, 0, 0.7);
  z-index: -1;
}
@media (max-width: 767px) {
  .new-fv .row3 .col .right p .medium {
    font-size: 11.1111111111vw;
  }
}
.new-fv .row3 .col .right p .normal {
  font-size: 30px;
  position: relative;
  z-index: 2;
}
@media (min-width: 768px) {
  .new-fv .row3 .col .right p .normal {
    display: none;
  }
}
.new-fv .row3 .col .right p .normal::before {
  white-space: nowrap;
  content: "＋";
  position: absolute;
  left: 3px;
  top: 3px;
  color: rgba(0, 0, 0, 0.7);
  z-index: -1;
}
@media (max-width: 767px) {
  .new-fv .row3 .col .right p .normal {
    font-size: 12.5603864734vw;
    margin-right: -2.4154589372vw;
    margin-left: -2.4154589372vw;
  }
}
.new-fv .row3 .col a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: #FA8089;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25), 0px 4px 4px 0px rgba(0, 0, 0, 0.25), 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 60px;
  padding-right: 60px;
  margin-top: 20px;
  position: relative;
}
@media (max-width: 1024px) {
  .new-fv .row3 .col a {
    padding-left: 30px;
  }
}
@media (max-width: 767px) {
  .new-fv .row3 .col a {
    padding-top: 2.4154589372vw;
    padding-bottom: 1.2077294686vw;
    padding-left: 10px;
    padding-right: 7.2463768116vw;
  }
}
.new-fv .row3 .col a p {
  font-size: 14px;
  font-family: "Inter";
  font-weight: 900;
  line-height: normal;
  color: white;
}
@media (max-width: 1024px) {
  .new-fv .row3 .col a p {
    font-size: 12px;
  }
}
@media (max-width: 767px) {
  .new-fv .row3 .col a p {
    font-size: 3.1400966184vw;
    font-size: 2.5400966184vw;
  }
}
.new-fv .row3 .col a h5 {
  font-size: 20px;
  font-weight: 900;
  font-family: "Inter";
  line-height: normal;
  color: white;
}
@media (max-width: 1024px) {
  .new-fv .row3 .col a h5 {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .new-fv .row3 .col a h5 {
    font-size: 5.0724637681vw;
    font-size: 4.0724637681vw;
  }
}
.new-fv .row3 .col a span {
  position: absolute;
  font-size: 20px;
  font-weight: 900;
  font-family: "Inter";
  right: 20px;
  color: white;
}
@media (max-width: 767px) {
  .new-fv .row3 .col a span {
    font-size: 7.2463768116vw;
    right: 2.4154589372vw;
    font-size: 4.2463768116vw;
  }
}
@media (min-width: 768px) {
  .new-fv .row3 .col a {
    position: relative;
    top: 0;
    transition: all 0.3s;
  }
  .new-fv .row3 .col a:hover {
    top: -3px;
  }
}
@media (max-width: 767px) {
  .new-fv .row3 .col a {
    width: 100%;
    margin-left: 0;
  }
}
.new-fv .row3 .col2 {
  align-items: flex-end;
}
@media (max-width: 1279px) {
  .new-fv .row3 .col2 {
    flex-direction: column;
    align-items: flex-start;
  }
}
.new-fv .row3 .col2 .notice {
  color: white;
  font-weight: 400;
  font-size: 12px;
  font-family: "Inter";
  margin-left: 20px;
}
@media (max-width: 1279px) {
  .new-fv .row3 .col2 .notice {
    margin-top: 20px;
    margin-left: 0;
  }
}
@media (max-width: 767px) {
  .new-fv .row3 .col2 .notice {
    font-size: 2.6666666667vw;
    margin-top: 2.6666666667vw;
    margin-bottom: 4.8309178744vw;
  }
}
.new-fv .row4 p {
  color: white;
  margin-top: 15px;
  font-size: 16px;
}
@media (max-width: 767px) {
  .new-fv .row4 p {
    font-size: 2.8985507246vw;
    margin-top: 2.4154589372vw;
  }
}


/* -------------------------------base(mobile)↓-------------------------------------- */
/* AI-design start */
.AI-design{
  color: #222222;
  padding: calc(39 * var(--site-horizontal-ratio)) calc(25 * var(--site-horizontal-ratio));
  background: linear-gradient(to bottom,#FFFFFF,#FFE8CD);
}
.AI-design>div{
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  column-gap: calc(calc(117 - 71 - 35) * var(--site-horizontal-ratio));
  row-gap: calc(calc(95 - 34 - 57) * var(--site-horizontal-ratio));
  letter-spacing: 0;
}
.AI-design>div>span:nth-of-type(1){
  color: #FA8089;
  font-weight: 700;
  font-size: calc(38 * var(--site-horizontal-ratio));
}
.AI-design>div>span:nth-of-type(2){
  font-weight: 500;
  font-size: calc(20 * var(--site-horizontal-ratio));
}
.AI-design>div>span:nth-of-type(3){
  font-weight: 900;
  font-size: calc(29 * var(--site-horizontal-ratio));
  padding: calc(15 * var(--site-horizontal-ratio)) calc(5 * var(--site-horizontal-ratio));
  background-image: url(../img/AI-design-bk.png);
  background-repeat: no-repeat;
  background-size: contain;
}
.AI-design>div>span:nth-of-type(4){
  font-weight: 700;
  font-size: calc(20 * var(--site-horizontal-ratio));
}
.AI-design>div>span:nth-of-type(5){
  width: 100%;
  text-align: center;
  font-weight: 700;
  font-size: calc(21 * var(--site-horizontal-ratio));
}
.AI-design>p{
  margin-top: calc(calc(154 - 95 - 30) * var(--site-horizontal-ratio));
  font-weight: 500;
  font-size: calc(14 * var(--site-horizontal-ratio));
  line-height: 1.2;
}
.AI-design>ul{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: calc(15 * var(--site-horizontal-ratio));
  margin-top: calc(calc(226 - 176 - 20) * var(--site-horizontal-ratio));
  background-color: #ffffff;
  padding: calc(16 * var(--site-horizontal-ratio));
  border-radius: calc(10 * var(--site-horizontal-ratio));
}
.AI-design>ul>li{
  position: relative;
  overflow: hidden;
}
.AI-design>ul>li>img{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  width: 100%;
}
.AI-design>ul>li:nth-of-type(1){
  width: calc(42 * var(--site-horizontal-ratio));
  height: calc(42 * var(--site-horizontal-ratio));
}
.AI-design>ul>li:nth-of-type(2){
  width: calc(76 * var(--site-horizontal-ratio));
  height: calc(28 * var(--site-horizontal-ratio));
} 
.AI-design>ul>li:nth-of-type(3){
  width: calc(75 * var(--site-horizontal-ratio));
  height: calc(24 * var(--site-horizontal-ratio));
}
.AI-design>ul>li:nth-of-type(4){
  width: calc(75 * var(--site-horizontal-ratio));
  height: calc(24 * var(--site-horizontal-ratio));
}
.AI-design>ul>li:nth-of-type(4)>img{
  width: 190%;
}
.AI-design>ul>li:nth-of-type(5){
  width: calc(41 * var(--site-horizontal-ratio));
  height: calc(42 * var(--site-horizontal-ratio));
}
.AI-design>ul>li:nth-of-type(6){
  width: calc(99 * var(--site-horizontal-ratio));
  height: calc(56 * var(--site-horizontal-ratio));
}
.AI-design>ul>li:nth-of-type(7){
  width: calc(86 * var(--site-horizontal-ratio));
  height: calc(54 * var(--site-horizontal-ratio));
}
.AI-design>ul>li:nth-of-type(8){
  width: calc(89 * var(--site-horizontal-ratio));
  height: calc(51 * var(--site-horizontal-ratio));
}
.AI-design>ul>li:nth-of-type(9){
  width: calc(105 * var(--site-horizontal-ratio));
  height: calc(59 * var(--site-horizontal-ratio));
}
.AI-design>span{
  display: block;
  width: fit-content;
  padding: calc(6 * var(--site-horizontal-ratio));
  background-color: #ffffff;
  font-weight: 700;
  font-size: calc(14 * var(--site-horizontal-ratio));
}
.AI-design>span>span{
  color: #FA8089;
  font-size: calc(24 * var(--site-horizontal-ratio));
}
.AI-design>span:nth-of-type(1){
  margin-top: calc(calc(466 - 226 - 206) * var(--site-horizontal-ratio));
}
.AI-design>span:nth-of-type(2){
  margin-top: calc(calc(503 - 466 - 31) * var(--site-horizontal-ratio));
}
/* AI-design end */

/*== landscape responsive ==*/
@media screen and (max-width: 767px) and (orientation: landscape){
}
/*== landscape responsive ==*/
/* -------------------------------base(mobile)↑-------------------------------------- */

/* ---------------------------desktop(include ipad)↓--------------------------------- */
@media screen and (min-width: 768px){
  :root{
    --site-division: 1440;
  }

  /* AI-design start */
  .AI-design{
    padding: calc(71 * var(--site-horizontal-ratio)) calc(25 * var(--site-horizontal-ratio));
  }
  .AI-design>div{
    column-gap: calc(calc(639 - 423 - 200) * var(--site-horizontal-ratio));
    row-gap: 0;
  }
  .AI-design>div>span:nth-of-type(1){
    font-size: calc(64 * var(--site-horizontal-ratio));
  }
  .AI-design>div>span:nth-of-type(2){
    font-size: calc(36 * var(--site-horizontal-ratio));
  }
  .AI-design>div>span:nth-of-type(3){
    font-size: calc(48 * var(--site-horizontal-ratio));
    padding: calc(15 * var(--site-horizontal-ratio)) calc(5 * var(--site-horizontal-ratio));
    background-size: 100%;
  }
  .AI-design>div>span:nth-of-type(4){
    font-size: calc(36 * var(--site-horizontal-ratio));
  }
  .AI-design>div>span:nth-of-type(5){
    width: fit-content;
    text-align: initial;
    font-size: calc(36 * var(--site-horizontal-ratio));
  }
  .AI-design>p{
    margin-top: calc(calc(199 - 71 - 98) * var(--site-horizontal-ratio));
    font-size: calc(20 * var(--site-horizontal-ratio));
    text-align: center;
  }
  .AI-design>ul{
    width: calc(879 * var(--site-horizontal-ratio));
    justify-content: space-between;
    gap: calc(15 * var(--site-horizontal-ratio));
    margin: calc(calc(293 - 199 - 29) * var(--site-horizontal-ratio)) auto 0;
    padding: calc(16 * var(--site-horizontal-ratio)) calc(60 * var(--site-horizontal-ratio));
    border-radius: calc(20 * var(--site-horizontal-ratio));
  }
  .AI-design>ul>li:nth-of-type(1){
    width: calc(76 * var(--site-horizontal-ratio));
    height: calc(76 * var(--site-horizontal-ratio));
  }
  .AI-design>ul>li:nth-of-type(2){
    width: calc(132.7244110107422 * var(--site-horizontal-ratio));
    height: calc(49 * var(--site-horizontal-ratio));
  } 
  .AI-design>ul>li:nth-of-type(3){
    width: calc(134.243896484375 * var(--site-horizontal-ratio));
    height: calc(43 * var(--site-horizontal-ratio));
  }
  .AI-design>ul>li:nth-of-type(4){
    width: calc(134.243896484375 * var(--site-horizontal-ratio));
    height: calc(43 * var(--site-horizontal-ratio));
  }
  .AI-design>ul>li:nth-of-type(4)>img{
    width: 190%;
  }
  .AI-design>ul>li:nth-of-type(5){
    width: calc(71 * var(--site-horizontal-ratio));
    height: calc(71 * var(--site-horizontal-ratio));
  }
  .AI-design>ul>li:nth-of-type(6){
    width: calc(172.59786987304688 * var(--site-horizontal-ratio));
    height: calc(97 * var(--site-horizontal-ratio));
  }
  .AI-design>ul>li:nth-of-type(7){
    width: calc(152.35848999023438 * var(--site-horizontal-ratio));
    height: calc(95 * var(--site-horizontal-ratio));
  }
  .AI-design>ul>li:nth-of-type(8){
    width: calc(158.22222900390625 * var(--site-horizontal-ratio));
    height: calc(89 * var(--site-horizontal-ratio));
  }
  .AI-design>ul>li:nth-of-type(9){
    width: calc(186.83274841308594 * var(--site-horizontal-ratio));
    height: calc(105 * var(--site-horizontal-ratio));
  }
  .AI-design>span{
    padding: calc(10 * var(--site-horizontal-ratio));
    font-size: calc(29 * var(--site-horizontal-ratio));
  }
  .AI-design>span>span{
    font-size: calc(54 * var(--site-horizontal-ratio));
  }
  .AI-design>span:nth-of-type(1){
    margin-top: calc(calc(565 - 293 - 228) * var(--site-horizontal-ratio));
    margin-left: calc(315 * var(--site-horizontal-ratio));
  }
  .AI-design>span:nth-of-type(2){
    margin-top: calc(calc(636 - 554 - 78) * var(--site-horizontal-ratio));
    margin-left: calc(414 * var(--site-horizontal-ratio));
  }
  /* AI-design end */
}

/* user_apply start */
.user_apply{
  background-color: #FFF6F6;
  margin: calc(30 * var(--site-horizontal-ratio)) auto 0;
  padding: calc(44 * var(--site-horizontal-ratio)) calc(34 * var(--site-horizontal-ratio));
}
.user_apply>h2{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  font-weight: bold;
  line-height: calc(33.6 * var(--site-horizontal-ratio));
}
.user_apply>h2>span:nth-of-type(1){
  font-size: calc(22 * var(--site-horizontal-ratio));
}
.user_apply>h2>span:nth-of-type(2){
  font-size: calc(28 * var(--site-horizontal-ratio));
  letter-spacing: 0.18em;
}
.user_apply>img{
  display: block;
  width: 100%;
}
.user_apply>form{
  background-color: #ffffff;
  padding: 0 calc(20 * var(--site-horizontal-ratio)) calc(50 * var(--site-horizontal-ratio));
}
.user_apply>form>label{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: calc(10 * var(--site-horizontal-ratio));
  width: 100%;
  margin-top: calc(calc(423 - 330 - 70.71) * var(--site-horizontal-ratio));
}
.user_apply>form>label>span{
  font-weight: bold;
  font-size: calc(13.53 * var(--site-horizontal-ratio));
  line-height: calc(20.5 * var(--site-horizontal-ratio));
  letter-spacing: 0.04em;
  width: 100%;
  display: flex;
  align-items: center;
  gap: calc(5 * var(--site-horizontal-ratio));
}
.user_apply>form>label:has(input[required])>span::after{
  content: "必須";
  background-color: #D9768B;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(29 * var(--site-horizontal-ratio));
  height: calc(12.76 * var(--site-horizontal-ratio));
  color: #ffffff;
  font-size: calc(7.73 * var(--site-horizontal-ratio));
  line-height: calc(20.5 * var(--site-horizontal-ratio));
  letter-spacing: 0.1em;
  border-radius: calc(1.21 * var(--site-horizontal-ratio));
}
.user_apply>form>label>input,
.user_apply>form>label>select,
.user_apply>form>label>textarea{
  border: 1px solid #FFA9AB;
  border-radius: calc(3.93 * var(--site-horizontal-ratio));
  color: #4A4949;
  font-weight: bold;
  font-size: calc(14 * var(--site-horizontal-ratio));
  line-height: calc(20.6 * var(--site-horizontal-ratio));
  letter-spacing: 0.04em;
  padding: calc(calc(63.28 - 54) * var(--site-horizontal-ratio));
}
.user_apply>form>label>input,
.user_apply>form>label>select{
  height: calc(45 * var(--site-horizontal-ratio));
}
.user_apply>form>label>input[name='user_last_name'],
.user_apply>form>label>input[name='user_last_name_shiryou'],
.user_apply>form>label>input[name='user_first_name'],
.user_apply>form>label>input[name='user_first_name_shiryou'],
.user_apply>form>label>input[name='user_reserve_date'],
.user_apply>form>label>select[name='user_reserve_time']
{
  width: calc(139 * var(--site-horizontal-ratio));
}
.user_apply>form>label>input[name='user_tel'],
.user_apply>form>label>input[name='user_email'],
.user_apply>form>label>input[name='user_tel_shiryou'],
.user_apply>form>label>input[name='user_email_shiryou'],
.user_apply>form>label>select,
.user_apply>form>label>textarea
{
  width: 100%;
}
.user_apply>form>button[type=button]{
  margin: calc(calc(828 - 710 - 75) * var(--site-horizontal-ratio)) auto 0;
  width: calc(285 * var(--site-horizontal-ratio));
  height: calc(60 * var(--site-horizontal-ratio));
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  background-color: #e83434;
  color: #ffffff;
  font-weight: bold;
  font-size: calc(20 * var(--site-horizontal-ratio));
  line-height: calc(70 * var(--site-horizontal-ratio));
  letter-spacing: 0.05em;
  position: relative;
  border: none;
  box-shadow: 0 calc(3 * var(--site-horizontal-ratio)) calc(6 * var(--site-horizontal-ratio)) #a22828;
  cursor: pointer;
}
.user_apply:is(.user_apply_shiryou)>form>button[type=button]{
  background-color: #FC7B04;
  box-shadow: 0 calc(3 * var(--site-horizontal-ratio)) calc(6 * var(--site-horizontal-ratio)) rgb(192, 192, 192);

}
.user_apply>.apply-thanks{
  width: fit-content;
  text-align: center;
  margin: calc(15 * var(--site-horizontal-ratio)) auto 0;
  font-weight: 700;
  font-size: calc(14 * var(--site-horizontal-ratio));
  transform: translateY(50%);
  opacity: 0;
}
.user_apply>.apply-thanks-fadeIn{
  transform: translateY(0%);
  opacity: 1;
  transition: all 0.5s ease-in-out;
}
@media (min-width: 768px){
  .user_apply>h2>span:nth-of-type(1){
    font-size: calc(28 * var(--site-horizontal-ratio));
  }
  .user_apply>img{
    width: calc(500 * var(--site-horizontal-ratio));
    margin: calc(30 * var(--site-horizontal-ratio)) auto;
  }
  .user_apply>form{
    width: calc(500 * var(--site-horizontal-ratio));
    margin: auto;
  }
  .user_apply>form>label>input[name='user_last_name'],
  .user_apply>form>label>input[name='user_first_name'],
  .user_apply>form>label>input[name='user_last_name_shiryou'],
  .user_apply>form>label>input[name='user_first_name_shiryou'],
  .user_apply>form>label>input[name='user_reserve_date'],
  .user_apply>form>label>select[name='user_reserve_time']{
    width: calc(220 * var(--site-horizontal-ratio));
  }
}
/* user_apply end */

/* ---------------------------desktop(include ipad)↑--------------------------------- */

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