@charset "UTF-8";
.l-submain__title h1 {
  text-shadow: 1.111vw 1.111vw 2.083vw rgba(12, 12, 12, 0.1), 1.111vw -1.111vw 2.083vw rgba(12, 12, 12, 0.1), -1.111vw 1.111vw 2.083vw rgba(12, 12, 12, 0.1), -1.111vw -1.111vw 2.083vw rgba(12, 12, 12, 0.1), 1.111vw 0 2.083vw rgba(12, 12, 12, 0.1), 0 1.111vw 2.083vw rgba(12, 12, 12, 0.1), -1.111vw 0 2.083vw rgba(12, 12, 12, 0.1), 0 -1.111vw 2.083vw rgba(12, 12, 12, 0.1);
}
@media screen and (min-width: 721px) {
  .l-submain__title h1 {
    text-shadow: 0.166vw 0.166vw 1.25vw rgba(12, 12, 12, 0.07), 0.166vw -0.166vw 1.25vw rgba(12, 12, 12, 0.07), -0.166vw 0.166vw 1.25vw rgba(12, 12, 12, 0.07), -0.166vw -0.166vw 1.25vw rgba(12, 12, 12, 0.07), 0.166vw 0 1.25vw rgba(12, 12, 12, 0.07), 0 0.166vw 1.25vw rgba(12, 12, 12, 0.07), -0.166vw 0 1.25vw rgba(12, 12, 12, 0.07), 0 -0.166vw 1.25vw rgba(12, 12, 12, 0.07);
  }
}
.l-submain__title__img {
  filter: drop-shadow(1.111vw 1.111vw 2.083vw rgba(12, 12, 12, 0.4));
}
@media screen and (min-width: 721px) {
  .l-submain__title__img {
    filter: drop-shadow(0.666vw 0.666vw 1.25vw rgba(12, 12, 12, 0.4));
  }
}

.l-adult__bg-1 {
  position: absolute;
  top: 0;
  left: 2.777vw;
  transform: translateX(-50%);
}
@media screen and (min-width: 721px) {
  .l-adult__bg-1 {
    left: 1.666vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult__bg-1 {
    left: 20px;
  }
}
.l-adult__bg-1 img {
  width: 13.888vw;
}
@media screen and (min-width: 721px) {
  .l-adult__bg-1 img {
    width: 8.333vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult__bg-1 img {
    width: 100px;
  }
}
.l-adult__bg-2 {
  position: absolute;
  top: 0;
  right: 2.777vw;
  transform: translateX(50%);
}
@media screen and (min-width: 721px) {
  .l-adult__bg-2 {
    right: 1.666vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult__bg-2 {
    right: 20px;
  }
}
.l-adult__bg-2 img {
  width: 13.888vw;
}
@media screen and (min-width: 721px) {
  .l-adult__bg-2 img {
    width: 8.333vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult__bg-2 img {
    width: 100px;
  }
}
.l-adult-top {
  position: relative;
  overflow: hidden;
}
.l-adult-top__title h2 {
  padding-top: 4.166vw;
  font-size: 7.222vw;
  font-weight: normal;
  text-align: center;
  line-height: 1;
}
@media screen and (min-width: 721px) {
  .l-adult-top__title h2 {
    font-size: 2.75vw;
    line-height: 1.6;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-top__title h2 {
    font-size: 33px;
  }
}
@media screen and (min-width: 721px) {
  .l-adult-top__title h2 br {
    display: none;
  }
}
.l-adult-top__title__txt {
  margin-top: 2.777vw;
  font-size: 3.75vw;
  line-height: 1.4;
  text-align: center;
}
@media screen and (min-width: 721px) {
  .l-adult-top__title__txt {
    margin-top: 1.666vw;
    padding-bottom: 3.333vw;
    font-size: 2.083vw;
    line-height: 1.2;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-top__title__txt {
    margin-top: 20px;
    padding-bottom: 40px;
    font-size: 25px;
  }
}
.l-adult-top__box {
  margin-top: 6.944vw;
  padding: 0 6.25vw 5.555vw;
}
@media screen and (min-width: 721px) {
  .l-adult-top__box {
    width: 100%;
    max-width: 83.333vw;
    margin: 0 auto;
    margin-top: 0.833vw;
    padding: 0;
    padding-bottom: 2.5vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-top__box {
    max-width: 1000px;
    margin-top: 10px;
    padding-bottom: 30px;
  }
}
.l-adult-top__box h3 {
  font-size: 5vw;
  font-weight: 500;
  color: #8fafa3;
  text-align: center;
}
@media screen and (min-width: 721px) {
  .l-adult-top__box h3 {
    font-size: 2.083vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-top__box h3 {
    font-size: 25px;
  }
}
.l-adult-top__box__txt {
  margin-top: 2.777vw;
}
@media screen and (min-width: 721px) {
  .l-adult-top__box__txt {
    margin-top: 0.833vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-top__box__txt {
    margin-top: 10px;
  }
}
.l-adult-class {
  position: relative;
  overflow: hidden;
  padding-bottom: 2.777vw;
}
@media screen and (min-width: 721px) {
  .l-adult-class {
    padding-bottom: 3.333vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-class {
    padding-bottom: 40px;
  }
}
.l-adult-class__title h2 {
  padding-top: 4.166vw;
  font-size: 7.222vw;
  font-weight: normal;
  text-align: center;
  line-height: 1;
}
@media screen and (min-width: 721px) {
  .l-adult-class__title h2 {
    padding-top: 2.5vw;
    font-size: 2.75vw;
    line-height: 1.6;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-class__title h2 {
    padding-top: 30px;
    font-size: 33px;
  }
}
.l-adult-class__title__txt-1 {
  margin-top: 8.333vw;
  padding: 0 6.25vw;
}
@media screen and (min-width: 721px) {
  .l-adult-class__title__txt-1 {
    width: 100%;
    max-width: 60.833vw;
    margin: 0 auto;
    padding: 0 3.75vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-class__title__txt-1 {
    max-width: 730px;
    padding: 0 45px;
  }
}
@media screen and (min-width: 721px) {
  .l-adult-class__title__txt-1 br {
    display: none;
  }
}
.l-adult-class__box {
  display: grid;
  grid-auto-flow: row;
  gap: 8.333vw;
  margin-top: 5.555vw;
  padding: 0 6.25vw;
}
@media screen and (min-width: 721px) {
  .l-adult-class__box {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.666vw;
    width: 100%;
    max-width: 85vw;
    margin: 0 auto;
    margin-top: 1.666vw;
    padding: 0 3.75vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-class__box {
    gap: 20px;
    max-width: 1020px;
    margin-top: 20px;
    padding: 0 45px;
  }
}
.l-adult-class__box--col {
  position: relative;
  border: 2px solid #8fafa3;
  border-radius: 5.555vw;
  padding: 2.777vw 4.166vw;
}
@media screen and (min-width: 721px) {
  .l-adult-class__box--col {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 15.583vw;
    gap: 1.666vw;
    border-radius: 1.166vw;
    padding: 2.083vw 0.416vw 1.25vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-class__box--col {
    grid-template-rows: 1fr 187px;
    gap: 20px;
    border-radius: 14px;
    padding: 25px 5px 15px;
  }
}
.l-adult-class__box--col::before {
  content: "";
  position: absolute;
  top: -7.222vw;
  left: 50%;
  transform: translateX(-50%);
  background-color: rgba(0, 86, 40, 0.7);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  width: 12.222vw;
  height: 5.833vw;
}
@media screen and (min-width: 721px) {
  .l-adult-class__box--col::before {
    top: 6.666vw;
    left: -1.666vw;
    transform: translateX(0);
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    width: 1.333vw;
    height: 3.333vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-class__box--col::before {
    top: 80px;
    left: -20px;
    width: 16px;
    height: 40px;
  }
}
.l-adult-class__box--col:first-child::before {
  display: none;
}
.l-adult-class__box__txt {
  padding: 0 1.388vw;
}
@media screen and (min-width: 721px) {
  .l-adult-class__box__txt {
    padding: 0 0.833vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-class__box__txt {
    padding: 0 10px;
  }
}
.l-adult-class__box__txt-1 {
  font-size: 4.861vw;
  line-height: 1.2;
  color: #030712;
}
@media screen and (min-width: 721px) {
  .l-adult-class__box__txt-1 {
    font-size: 1.5vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-class__box__txt-1 {
    font-size: 18px;
  }
}
.l-adult-class__box__txt-1 img.l-adult-class__box__img-1 {
  width: 27.083vw;
}
@media screen and (min-width: 721px) {
  .l-adult-class__box__txt-1 img.l-adult-class__box__img-1 {
    width: 7.666vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-class__box__txt-1 img.l-adult-class__box__img-1 {
    width: 92px;
  }
}
.l-adult-class__box__txt-1 img.l-adult-class__box__img-2 {
  width: 27.361vw;
}
@media screen and (min-width: 721px) {
  .l-adult-class__box__txt-1 img.l-adult-class__box__img-2 {
    width: 7.75vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-class__box__txt-1 img.l-adult-class__box__img-2 {
    width: 93px;
  }
}
.l-adult-class__box__txt-1 img.l-adult-class__box__img-3 {
  width: 27.083vw;
}
@media screen and (min-width: 721px) {
  .l-adult-class__box__txt-1 img.l-adult-class__box__img-3 {
    width: 7.666vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-class__box__txt-1 img.l-adult-class__box__img-3 {
    width: 92px;
  }
}
.l-adult-class__box h3 {
  margin-top: 1.388vw;
  font-size: 4.444vw;
  font-weight: 500;
  text-align: center;
}
@media screen and (min-width: 721px) {
  .l-adult-class__box h3 {
    font-size: 1.916vw;
    line-height: 1.2;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-class__box h3 {
    font-size: 23px;
  }
}
.l-adult-class__box h3 br {
  display: none;
}
@media screen and (min-width: 721px) {
  .l-adult-class__box h3 br {
    display: block;
  }
}
.l-adult-class__box h3:has(br) {
  text-align: left;
}
.l-adult-class__box__txt-2 {
  font-size: 3.611vw;
  line-height: 1.4;
}
@media screen and (min-width: 721px) {
  .l-adult-class__box__txt-2 {
    margin-top: 0.833vw;
    font-size: 1.166vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-class__box__txt-2 {
    margin-top: 10px;
    font-size: 14px;
  }
}
.l-adult-class__box__img {
  margin-top: 2.777vw;
  text-align: center;
}
@media screen and (min-width: 721px) {
  .l-adult-class__box__img {
    margin-top: 0;
  }
}
.l-adult-class__box__img img {
  width: 38.888vw;
}
@media screen and (min-width: 721px) {
  .l-adult-class__box__img img {
    width: 23.333vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-class__box__img img {
    width: 280px;
  }
}
.l-adult-price {
  position: relative;
  overflow: hidden;
  padding-bottom: 6.944vw;
}
@media screen and (min-width: 721px) {
  .l-adult-price {
    padding-bottom: 4.166vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-price {
    padding-bottom: 50px;
  }
}
.l-adult-price__title {
  position: relative;
  overflow: hidden;
  padding-bottom: 4.166vw;
}
@media screen and (min-width: 721px) {
  .l-adult-price__title {
    padding-top: 1.666vw;
    padding-bottom: 3.75vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-price__title {
    padding-top: 20px;
    padding-bottom: 45px;
  }
}
.l-adult-price__title h2 {
  padding-top: 4.166vw;
  font-size: 7.222vw;
  font-weight: normal;
  text-align: center;
  line-height: 1;
}
@media screen and (min-width: 721px) {
  .l-adult-price__title h2 {
    padding-top: 2.5vw;
    font-size: 2.75vw;
    line-height: 1.6;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-price__title h2 {
    padding-top: 30px;
    font-size: 33px;
  }
}
.l-adult-price__title h2 span {
  display: none;
}
@media screen and (min-width: 721px) {
  .l-adult-price__title h2 span {
    display: inline;
  }
}
@media screen and (min-width: 721px) {
  .l-adult-price__title h2 br {
    display: none;
  }
}
.l-adult-price__box {
  background-color: rgba(143, 175, 163, 0.2);
}
.l-adult-price__box--row {
  display: grid;
  grid-auto-flow: row;
  gap: 5.555vw;
  padding: 6.944vw 5.555vw;
}
@media screen and (min-width: 721px) {
  .l-adult-price__box--row {
    grid-template-columns: repeat(3, 1fr);
    gap: 2.083vw;
    width: 100%;
    max-width: 100vw;
    margin: 0 auto;
    padding: 2.5vw 5vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-price__box--row {
    gap: 25px;
    max-width: 1200px;
    padding: 30px 60px;
  }
}
.l-adult-price__box--col {
  background-color: #fff;
  border-radius: 5.555vw;
  padding: 4.166vw 6.944vw;
}
@media screen and (min-width: 721px) {
  .l-adult-price__box--col {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 2.916vw auto 2vw;
    border-radius: 1.666vw;
    padding: 1.666vw 2.083vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-price__box--col {
    grid-template-rows: 35px auto 24px;
    border-radius: 20px;
    padding: 20px 25px;
  }
}
.l-adult-price__box--col h3 {
  margin-bottom: 1.388vw;
  font-size: 4.166vw;
  font-weight: normal;
  color: #717071;
}
@media screen and (min-width: 721px) {
  .l-adult-price__box--col h3 {
    font-size: 1.916vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-price__box--col h3 {
    font-size: 23px;
  }
}
.l-adult-price__box__txt {
  padding: 0 1.388vw;
  line-height: 1.4;
}
@media screen and (min-width: 721px) {
  .l-adult-price__box__txt {
    padding: 0;
  }
}
.l-adult-price__box__txt th,
.l-adult-price__box__txt td {
  font-size: 3.75vw;
  font-weight: normal;
  text-align: left;
}
@media screen and (min-width: 721px) {
  .l-adult-price__box__txt th,
  .l-adult-price__box__txt td {
    font-size: 1.166vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-price__box__txt th,
  .l-adult-price__box__txt td {
    font-size: 14px;
  }
}
.l-adult-price__box__txt th {
  position: relative;
  width: 29.166vw;
}
@media screen and (min-width: 721px) {
  .l-adult-price__box__txt th {
    width: 9.166vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-price__box__txt th {
    width: 110px;
  }
}
.l-adult-price__box__txt th::after {
  content: "：";
  position: absolute;
  top: 0;
  right: 0;
}
.l-adult-price__box__txt td {
  padding-left: 2.777vw;
}
@media screen and (min-width: 721px) {
  .l-adult-price__box__txt td {
    padding-left: 0.833vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-price__box__txt td {
    padding-left: 10px;
  }
}
.l-adult-price__box__link {
  margin-top: 2.777vw;
}
@media screen and (min-width: 721px) {
  .l-adult-price__box__link {
    margin-top: 0;
  }
}
.l-adult-price__link {
  margin-top: 6.944vw;
}
@media screen and (min-width: 721px) {
  .l-adult-price__link {
    margin-top: 3.333vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-price__link {
    margin-top: 40px;
  }
}
.l-adult-faq {
  position: relative;
  overflow: hidden;
  padding-bottom: 8.333vw;
}
@media screen and (min-width: 721px) {
  .l-adult-faq {
    padding-bottom: 5vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-faq {
    padding-bottom: 60px;
  }
}
.l-adult-faq__title {
  position: relative;
  overflow: hidden;
  padding-bottom: 4.166vw;
}
@media screen and (min-width: 721px) {
  .l-adult-faq__title {
    padding-top: 1.666vw;
    padding-bottom: 3.333vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-faq__title {
    padding-top: 20px;
    padding-bottom: 40px;
  }
}
.l-adult-faq__title h2 {
  padding-top: 4.166vw;
  font-size: 7.222vw;
  font-weight: normal;
  text-align: center;
  line-height: 1;
}
@media screen and (min-width: 721px) {
  .l-adult-faq__title h2 {
    padding-top: 2.5vw;
    font-size: 2.75vw;
    line-height: 1.6;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-faq__title h2 {
    padding-top: 30px;
    font-size: 33px;
  }
}
@media screen and (min-width: 721px) {
  .l-adult-faq__title h2 br {
    display: none;
  }
}
.l-adult-faq__box {
  background-color: rgba(143, 175, 163, 0.2);
}
.l-adult-faq__box__inner {
  display: grid;
  grid-auto-flow: row;
  gap: 4.861vw;
  padding: 5.555vw;
}
@media screen and (min-width: 721px) {
  .l-adult-faq__box__inner {
    gap: 2.083vw;
    width: 100%;
    max-width: 100vw;
    margin: 0 auto;
    padding: 2.5vw 4.166vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-faq__box__inner {
    gap: 25px;
    max-width: 1200px;
    padding: 30px 50px;
  }
}
.l-adult-faq__box--row {
  background-color: #fff;
  border-radius: 5.555vw;
  padding: 4.166vw;
}
@media screen and (min-width: 721px) {
  .l-adult-faq__box--row {
    border-radius: 2.5vw;
    padding: 1.25vw 4.166vw 2.5vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-faq__box--row {
    border-radius: 30px;
    padding: 15px 50px 30px;
  }
}
.l-adult-faq__box__q {
  position: relative;
  border-bottom: 2px solid #8fafa3;
  padding: 0 0.2em 0.5em 2.2em;
  font-size: 3.888vw;
  font-weight: normal;
}
@media screen and (min-width: 721px) {
  .l-adult-faq__box__q {
    border-width: 1px;
    padding-left: 4.2em;
    font-size: 1.5vw;
    font-weight: bold;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-faq__box__q {
    font-size: 18px;
  }
}
.l-adult-faq__box__q::before {
  content: "Ｑ：";
  position: absolute;
  top: 0;
  left: 0.2em;
}
@media screen and (min-width: 721px) {
  .l-adult-faq__box__q::before {
    left: 2.2em;
  }
}
.l-adult-faq__box__a {
  padding: 1em 0.2em 0;
}
@media screen and (min-width: 721px) {
  .l-adult-faq__box__a {
    padding-left: 5.6em;
  }
}
@media screen and (min-width: 721px) {
  .l-adult-faq__box__a br.sp {
    display: none;
  }
}
.l-adult-faq__link {
  margin-top: 5.555vw;
}
@media screen and (min-width: 721px) {
  .l-adult-faq__link {
    margin-top: 1.666vw;
  }
}
@media screen and (min-width: 1201px) {
  .l-adult-faq__link {
    margin-top: 20px;
  }
}
