@charset "UTF-8";
/*
Theme Name: DC1パーソナルジム
Theme URI:
Author:
Description: DC1パーソナルジム 公式サイト（WordPress クラシックテーマ / Figma + FLOCSS）
Version: 1.0.0
Text Domain: dc1-theme
*/
html {
  font-size: min(0.6944444444vw, 10px);
  scroll-behavior: auto !important;
}
@media (max-width: 768px) {
  html {
    font-size: 2.66666667vw;
  }
}

img {
  width: auto;
  height: auto;
  max-width: 100%;
}

body {
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  color: #2E3754;
  font-family: "Noto Sans JP", sans-serif;
  font-feature-settings: "palt";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  word-wrap: break-word;
  overflow-wrap: break-word;
  background-color: #fff;
  opacity: 0;
  animation: fadeIn 0.5s ease 0.1s 1 forwards;
}

a {
  color: inherit;
  text-decoration: none;
  transition: opacity 0.25s ease-in-out;
}
a:hover {
  opacity: 0.65;
}

a:focus,
button:focus,
input:focus,
textarea:focus,
select:focus {
  outline: none;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
  font-size: inherit;
  font-weight: normal;
  line-height: 1.4;
}

li {
  list-style: none;
}

main {
  display: block;
  overflow: hidden;
}

section {
  position: relative;
}

* {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.l-inner01 {
  width: 100%;
  max-width: 120rem;
  margin-inline: auto;
  padding-inline: 2.4rem;
}

.l-inner02 {
  width: 100%;
  max-width: 114rem;
  margin-inline: auto;
  padding-inline: 2.4rem;
}

.l-inner03 {
  width: 100%;
  max-width: 108rem;
  margin-inline: auto;
  padding-inline: 2.4rem;
}

.l-inner04 {
  width: 100%;
  max-width: 104rem;
  margin-inline: auto;
  padding-inline: 2.4rem;
}

.l-inner05 {
  width: 100%;
  max-width: 70rem;
  margin-inline: auto;
  padding-inline: 2.4rem;
}

.l-inner06 {
  width: 100%;
  max-width: 84rem;
  margin-inline: auto;
  padding-inline: 2.4rem;
}

.l-inner07 {
  width: 100%;
  max-width: 136rem;
  margin-inline: auto;
  padding-inline: 2.4rem;
}
@media (max-width: 768px) {
  .l-inner07 {
    padding-inline: 1.2rem;
  }
}

.l-inner08 {
  width: 100%;
  max-width: 116.8rem;
  margin-inline: auto;
  padding-inline: 2.4rem;
}
@media (max-width: 768px) {
  .l-inner08 {
    padding-inline: 1.25rem;
  }
}

.l-inner09 {
  width: 100%;
  max-width: 102.4rem;
  margin-inline: auto;
  padding-inline: 1.6rem;
}

.l-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 50;
  padding: 1.6rem 4rem;
  transition: background-color 0.3s ease;
}
.js-header-scrolled .l-header {
  background-color: rgba(255, 255, 255, 0.9);
}
@media (max-width: 768px) {
  .l-header {
    padding: 0 1.3rem 0 2.2rem;
    background-color: rgba(255, 255, 255, 0.75);
  }
  .js-header-scrolled .l-header {
    background-color: rgba(255, 255, 255, 0.75);
  }
}
.l-header__inner {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 7.4rem;
}
@media (max-width: 768px) {
  .l-header__inner {
    height: 6.2rem;
  }
}
.l-header__logo {
  flex-shrink: 0;
  width: 20.2rem;
  line-height: 0;
}
@media (max-width: 768px) {
  .l-header__logo {
    width: 12.1rem;
    margin-top: 0.5rem;
  }
}
.l-header__logo a {
  display: block;
}
.l-header__logo img {
  display: block;
  width: 100%;
  height: auto;
}
@media (max-width: 768px) {
  .l-header__nav {
    display: none;
  }
}
.l-header__cta {
  display: flex;
  gap: 0.8rem;
}
@media (max-width: 768px) {
  .l-header__cta {
    display: none;
  }
}
.l-header__sp {
  display: none;
}
@media (max-width: 768px) {
  .l-header__sp {
    display: flex;
    align-items: center;
    gap: 2.4rem;
  }
}
.l-header__sp-icon {
  display: block;
  line-height: 0;
}
.l-header__sp-icon img {
  display: block;
  width: 3.2rem;
  height: 3rem;
}
.l-header__sp-icon + .l-header__sp-icon img {
  width: 3rem;
}

@media (max-width: 768px) {
  .l-global-nav {
    display: none;
  }
}
.l-global-nav__list {
  display: flex;
  gap: 3.2rem;
}
.l-global-nav__link {
  display: block;
  padding: 0.4rem 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
  color: #2E3754;
  transition: color 0.3s ease, opacity 0.25s ease-in-out;
}
.l-header--light .l-global-nav__link {
  color: #fff;
}
.js-header-scrolled .l-global-nav__link {
  color: #2E3754;
}

.l-drawer {
  display: none;
}
@media (max-width: 768px) {
  .l-drawer {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    height: 100dvh;
    z-index: 0;
    padding: 8.2rem 0 4rem;
    background: #fff;
    overflow-y: auto;
    overscroll-behavior: contain;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
  }
  .js-drawer-open .l-drawer {
    opacity: 1;
    visibility: visible;
  }
}
.l-drawer__nav {
  padding: 0 3.2rem;
}
.l-drawer__group + .l-drawer__group {
  margin-top: 2rem;
}
.l-drawer__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.4rem;
  font-weight: 900;
  line-height: 1.45;
  letter-spacing: 0;
  color: #2E3754;
}
.l-drawer__item {
  margin-top: 1.4rem;
}
.l-drawer__link {
  display: flex;
  width: fit-content;
  align-items: center;
  gap: 0.8rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
  color: #2E3754;
}
.l-drawer__chevron {
  flex-shrink: 0;
  width: 1.5rem;
  height: 0.8rem;
  margin-inline: -0.35rem;
  transform: rotate(90deg);
}
.l-drawer__cta {
  margin-top: 2rem;
}
.l-drawer__cta .c-btn-cta {
  display: flex;
  width: 25rem;
  height: 6.1rem;
  margin-inline: auto;
}
.l-drawer__cta .c-btn-cta + .c-btn-cta {
  margin-top: 2rem;
}
.l-drawer__cta .c-btn-cta--tel {
  height: 6rem;
  font-size: 2rem;
}
.l-drawer__copy {
  margin-top: 2rem;
}
.l-drawer__banners {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  margin-top: 2.8rem;
}
.l-drawer__banner {
  display: block;
  line-height: 0;
}
.l-drawer__banner img {
  display: block;
  width: 16.5rem;
  height: 4.7rem;
  object-fit: cover;
}
.l-drawer__fc {
  flex-shrink: 0;
  width: 16.5rem;
  height: 4.7rem;
}
.l-drawer__fc .c-banner-fc__logo {
  top: 6.3%;
  left: 3.9%;
  height: 89.7%;
}
.l-drawer__fc .c-banner-fc__label {
  left: 57.8%;
  gap: 0.85rem;
}
.l-drawer__fc .c-banner-fc__text {
  font-size: 0.9rem;
}
.l-drawer__fc .c-banner-fc__arrow {
  width: 1.1rem;
  height: 1.1rem;
}
.l-drawer__sns {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  margin-top: 2.8rem;
}
.l-drawer__sns-link {
  display: block;
  line-height: 0;
}
.l-drawer__sns-link img {
  display: block;
  width: 3.2rem;
  height: auto;
}
.l-drawer__sns li:last-child img {
  width: 3.6rem;
}
.l-drawer__copyright {
  margin-top: 2rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
  text-align: center;
  color: #2E3754;
}

@media (max-width: 768px) {
  body.js-drawer-open {
    overflow: hidden;
  }
}

.l-footer {
  padding: 4rem 0 6rem;
  background: #fff;
  color: #2E3754;
}
@media (max-width: 768px) {
  .l-footer {
    padding: 6rem 0;
  }
}
.l-footer__partner {
  margin-top: 6rem;
  text-align: center;
}
@media (max-width: 768px) {
  .l-footer__partner {
    margin-top: 4rem;
  }
}
.l-footer__partner-title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
}
@media (max-width: 768px) {
  .l-footer__partner-title {
    font-size: 1.6rem;
  }
}
.l-footer__partner-link {
  display: block;
  width: 35rem;
  margin: 1.6rem auto 0;
  line-height: 0;
}
.l-footer__partner-link img {
  display: block;
  width: 100%;
  height: 10.1rem;
  object-fit: cover;
}
.l-footer__inner {
  margin-top: 6rem;
}
@media (max-width: 768px) {
  .l-footer__inner {
    margin-top: 4rem;
  }
}
.l-footer__main {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
@media (max-width: 768px) {
  .l-footer__main {
    display: block;
  }
}
.l-footer__info {
  width: 28.8rem;
}
@media (max-width: 768px) {
  .l-footer__info {
    width: auto;
    text-align: center;
  }
}
.l-footer__fc {
  width: 28.8rem;
  height: 10rem;
}
@media (max-width: 768px) {
  .l-footer__fc {
    width: 35.1rem;
    max-width: 100%;
    margin-inline: auto;
  }
  .l-footer__fc .c-banner-fc__logo {
    top: 1.4%;
    left: 3%;
    height: 97%;
  }
}
.l-footer__name {
  margin-top: 1.6rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
}
@media (max-width: 768px) {
  .l-footer__name {
    font-size: 3rem;
    line-height: 1.45;
  }
}
.l-footer__hours {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
}
@media (max-width: 768px) {
  .l-footer__hours {
    font-size: 1.6rem;
    line-height: 1.45;
  }
}
.l-footer__sns {
  display: flex;
  align-items: center;
  gap: 2rem;
  margin-top: 1.6rem;
}
@media (max-width: 768px) {
  .l-footer__sns {
    justify-content: center;
  }
}
.l-footer__sns-link {
  display: block;
  line-height: 0;
}
.l-footer__sns-link img {
  display: block;
  width: 3.2rem;
  height: auto;
}
.l-footer__sns li:last-child img {
  width: 3.6rem;
}
.l-footer__nav {
  display: flex;
  gap: 4rem;
}
@media (max-width: 768px) {
  .l-footer__nav {
    display: block;
    margin-top: 4rem;
    padding-left: 0.7rem;
  }
}
.l-footer__group:nth-child(1) {
  width: 21.4rem;
}
.l-footer__group:nth-child(2) {
  width: 14.3rem;
}
.l-footer__group:nth-child(3) {
  width: 19.6rem;
}
@media (max-width: 768px) {
  .l-footer__group:nth-child(n) {
    width: auto;
  }
  .l-footer__group + .l-footer__group {
    margin-top: 2rem;
  }
}
.l-footer__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0;
}
@media (max-width: 768px) {
  .l-footer__title {
    font-size: 1.4rem;
    line-height: 1.45;
  }
}
@media (max-width: 768px) {
  .l-footer__list {
    display: flex;
    flex-wrap: wrap;
  }
}
.l-footer__item {
  margin-top: 2rem;
}
@media (max-width: 768px) {
  .l-footer__item {
    flex-basis: 16rem;
    margin-top: 0.8rem;
  }
}
.l-footer__link {
  display: flex;
  width: fit-content;
  align-items: center;
  gap: 0.8rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .l-footer__link {
    font-size: 1.6rem;
    line-height: 1.45;
  }
}
.l-footer__chevron {
  flex-shrink: 0;
  width: 1.5rem;
  height: 0.8rem;
  margin-inline: -0.35rem;
  transform: rotate(90deg);
}
.l-footer__cta {
  width: 24.4rem;
}
@media (max-width: 768px) {
  .l-footer__cta {
    width: auto;
    margin-top: 4rem;
  }
}
.l-footer__cta .c-btn-cta {
  display: flex;
  width: 100%;
  height: 6.1rem;
}
@media (max-width: 768px) {
  .l-footer__cta .c-btn-cta {
    width: 25rem;
    margin-inline: auto;
  }
}
.l-footer__cta .c-btn-cta + .c-btn-cta {
  margin-top: 1rem;
}
@media (max-width: 768px) {
  .l-footer__cta .c-btn-cta + .c-btn-cta {
    margin-top: 2rem;
  }
}
.l-footer__cta .c-btn-cta--tel {
  height: 6rem;
  font-size: 2rem;
}
.l-footer__copyright {
  margin-top: 6rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
  text-align: center;
}
@media (max-width: 768px) {
  .l-footer__copyright {
    margin-top: 4rem;
    font-size: 1.4rem;
  }
}

.c-btn-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  height: 6rem;
  padding: 0 1.4rem 0 1.2rem;
  border-radius: 5rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
  color: #fff;
  white-space: nowrap;
}
.c-btn-cta--line {
  background: #06C755;
  box-shadow: 0.4rem 0.4rem 0 #46643b;
}
.c-btn-cta--tel {
  background: #EA5C2E;
  box-shadow: 0.4rem 0.4rem 0 #b73814;
}
.c-btn-cta--navy {
  background: #2E3754;
  box-shadow: 0.4rem 0.4rem 0 #06090c;
}
.c-btn-cta--navy .c-btn-cta__icon {
  border-radius: 0.4rem;
}
.c-btn-cta--web {
  background: linear-gradient(103deg, #EA5C2E 4.7%, #EFA613 98.5%);
  box-shadow: 0.4rem 0.4rem 0 #EA5C2E;
}
.c-btn-cta__icon {
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
}
.c-btn-cta--line .c-btn-cta__icon {
  width: 2.1rem;
}
.c-btn-cta--web .c-btn-cta__icon {
  width: 1.8rem;
  height: 1.8rem;
}
.c-btn-cta__arrow {
  flex-shrink: 0;
  width: 1.4rem;
  height: 1.1rem;
  margin-left: 0.4rem;
}
.c-btn-cta--lg {
  height: 6rem;
  padding: 0 2rem;
  gap: 1rem;
  font-size: 2rem;
}
@media (max-width: 768px) {
  .c-btn-cta--lg {
    font-size: 1.8rem;
  }
}
.c-btn-cta--lg .c-btn-cta__icon {
  width: 3rem;
  height: 2.8rem;
}
.c-btn-cta--lg.c-btn-cta--navy .c-btn-cta__icon {
  height: 3rem;
}
.c-btn-cta--lg .c-btn-cta__icon--logo {
  width: 3rem;
  height: 3rem;
  border-radius: 0.4rem;
}
.c-btn-cta--lg .c-btn-cta__icon.c-btn-cta__icon--sm {
  width: 1.8rem;
  height: 1.8rem;
}
.c-btn-cta--lg .c-btn-cta__arrow {
  width: 2.1rem;
  height: 1.7rem;
  margin-left: 0;
}
.c-btn-cta--sm {
  width: 17rem;
  height: 5.8rem;
  padding: 0 0.8rem;
  font-size: 1.8rem;
  gap: 0.4rem;
}
.c-btn-cta--sm.c-btn-cta--tel {
  gap: 0.8rem;
}
.c-btn-cta--sm.c-btn-cta--tel .c-btn-cta__icon {
  width: 1.8rem;
  height: 1.8rem;
}

.c-banner-fc {
  position: relative;
  display: block;
  background: #fff;
  overflow: hidden;
}
.c-banner-fc__frame {
  position: absolute;
  top: 0;
  left: 0;
  width: 54.2%;
  height: 100%;
  max-width: none;
  transform: rotate(180deg);
}
.c-banner-fc__bg {
  position: absolute;
  top: 0;
  right: 0;
  width: 56.6%;
  height: 100%;
  max-width: none;
}
.c-banner-fc__logo {
  position: absolute;
  top: 6%;
  left: 1%;
  width: auto;
  height: 88%;
  max-width: none;
}
.c-banner-fc__label {
  position: absolute;
  top: 50%;
  left: 57%;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  transform: translateY(-50%);
}
.c-banner-fc__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.1em;
  text-align: center;
  color: #fff;
  white-space: nowrap;
}
.c-banner-fc__em {
  display: block;
  font-size: 1.25em;
  letter-spacing: 0.25em;
}
.c-banner-fc__arrow {
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
}

.c-cta-line__card {
  position: relative;
  max-width: 112rem;
  height: 34rem;
  margin-inline: auto;
  border-radius: 0.4rem;
  overflow: hidden;
}
@media (max-width: 768px) {
  .c-cta-line__card {
    width: 35rem;
    height: 36.2rem;
    border-radius: 1rem;
  }
}
.c-cta-line__card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
}
@media (max-width: 768px) {
  .c-cta-line__card::after {
    background: rgba(0, 0, 0, 0.75);
  }
}
.c-cta-line--full .c-cta-line__card {
  max-width: none;
  border-radius: 0;
}
@media (max-width: 768px) {
  .c-cta-line--full .c-cta-line__card {
    width: 100%;
    height: 43.8rem;
    border-radius: 0;
  }
  .c-cta-line--full .c-cta-line__card::after {
    background: rgba(0, 0, 0, 0.6);
  }
}
.c-cta-line--full .c-cta-line__title {
  font-size: 4rem;
}
@media (max-width: 768px) {
  .c-cta-line--full .c-cta-line__title {
    font-size: 2.8rem;
  }
}
@media (max-width: 768px) {
  .c-cta-line--full .c-cta-line__text {
    font-size: 1.8rem;
  }
}
@media (max-width: 768px) {
  .c-cta-line--full .c-cta-line__body {
    padding-top: 6rem;
  }
}
.c-cta-line--article .c-cta-line__card {
  max-width: none;
  height: 33rem;
  border-radius: 1rem;
}
@media (max-width: 768px) {
  .c-cta-line--article .c-cta-line__card {
    width: auto;
    height: 43.8rem;
  }
}
.c-cta-line--article .c-cta-line__card::after {
  background: rgba(0, 0, 0, 0.75);
}
.c-cta-line--article .c-cta-line__title {
  font-size: 4rem;
  line-height: 1.45;
}
@media (max-width: 768px) {
  .c-cta-line--article .c-cta-line__title {
    font-size: 2.8rem;
  }
}
.c-cta-line--article .c-cta-line__body {
  padding-top: 4rem;
}
@media (max-width: 768px) {
  .c-cta-line--article .c-cta-line__body {
    padding: 4rem 1rem 0;
  }
}
.c-cta-line--article .c-cta-note {
  color: #FFF9DA;
}
.c-cta-line__bg {
  position: absolute;
  inset: 0;
}
.c-cta-line__bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-cta-line__body {
  position: relative;
  z-index: 1;
  padding-top: 4.5rem;
  text-align: center;
  color: #fff;
}
@media (max-width: 768px) {
  .c-cta-line__body {
    padding-top: 3.8rem;
  }
}
.c-cta-line__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 3.7rem;
  font-weight: 900;
  line-height: 5.8rem;
  letter-spacing: 0.03em;
}
@media (max-width: 768px) {
  .c-cta-line__title {
    font-size: 2.8rem;
    line-height: 4rem;
  }
}
.c-cta-line__accent {
  color: #EFA613;
}
.c-cta-line__text {
  margin-top: 0.8rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
}
@media (max-width: 768px) {
  .c-cta-line__text {
    margin-top: 1rem;
    font-size: 1.6rem;
  }
}
.c-cta-line__text--sp {
  display: none;
}
@media (max-width: 768px) {
  .c-cta-line__text--pc {
    display: none;
  }
  .c-cta-line__text--sp {
    display: block;
  }
}
.c-cta-line__action {
  margin-top: 1.2rem;
}
@media (max-width: 768px) {
  .c-cta-line__action {
    margin-top: 2.4rem;
  }
}
.c-cta-line--recruit {
  margin-top: 4rem;
}
@media (max-width: 768px) {
  .c-cta-line--recruit {
    margin-top: 3rem;
  }
}
.c-cta-line--recruit .c-cta-line__card {
  height: 31.4rem;
}
@media (max-width: 768px) {
  .c-cta-line--recruit .c-cta-line__card {
    height: 30rem;
    border-radius: 0;
  }
}
.c-cta-line--recruit .c-cta-line__body {
  padding-top: 2rem;
}
@media (max-width: 768px) {
  .c-cta-line--recruit .c-cta-line__body {
    padding-top: 3rem;
  }
}
.c-cta-line--recruit .c-cta-line__title {
  font-size: 4rem;
  line-height: 1.5;
}
@media (max-width: 768px) {
  .c-cta-line--recruit .c-cta-line__title {
    font-size: 2.6rem;
    line-height: 1.45;
  }
}
.c-cta-line--recruit .c-cta-line__action .c-btn-cta {
  width: 25rem;
}
.c-cta-line--fc .c-cta-line__card {
  height: 34.1rem;
}
.c-cta-line--fc .c-cta-line__card::after {
  background: rgba(0, 0, 0, 0.7);
}
@media (max-width: 768px) {
  .c-cta-line--fc .c-cta-line__card {
    height: 45.2rem;
  }
  .c-cta-line--fc .c-cta-line__card::after {
    background: rgba(0, 0, 0, 0.7);
  }
}
@media (max-width: 768px) {
  .c-cta-line--fc .c-cta-line__bg img {
    object-fit: fill;
  }
}
.c-cta-line--fc .c-cta-line__body {
  padding-top: 2.6rem;
}
@media (max-width: 768px) {
  .c-cta-line--fc .c-cta-line__body {
    padding: 1.5rem 1.25rem 0;
  }
}
.c-cta-line--fc .c-cta-line__title {
  line-height: 1.5;
}
@media (max-width: 768px) {
  .c-cta-line--fc .c-cta-line__title {
    line-height: 4rem;
  }
}
.c-cta-line--fc .c-cta-line__text {
  line-height: normal;
}
@media (max-width: 768px) {
  .c-cta-line--fc .c-cta-line__text {
    font-size: 1.8rem;
  }
}
.c-cta-line--fc .c-cta-line__action {
  margin-top: 2.4rem;
}
.c-cta-line--fc .c-cta-line__action .c-btn-cta {
  width: 30rem;
}
@media (max-width: 768px) {
  .c-cta-line--fc .c-cta-line__action .c-btn-cta {
    width: 28.7rem;
  }
}

.c-cta-note {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.8rem;
  height: 4.1rem;
}
.c-cta-note__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
  white-space: nowrap;
}
.c-cta-note__slash {
  flex-shrink: 0;
  width: 1.54rem;
  height: 1.61rem;
}
.c-cta-note__slash--l {
  transform: rotate(-176.85deg) scaleY(-1);
}
.c-cta-note__slash--r {
  transform: rotate(-3.15deg);
}

.c-dream-copy {
  display: flex;
  justify-content: center;
  overflow: clip;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 15rem;
  font-weight: 700;
  line-height: 0.9;
  letter-spacing: 0;
  text-align: center;
  white-space: nowrap;
  color: #2E3754;
}
@media (max-width: 768px) {
  .c-dream-copy {
    display: block;
    font-size: 6rem;
    line-height: 1;
  }
}
.c-dream-copy--orange {
  color: #EFA613;
}

.c-cta-pair {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 4rem;
  color: #2E3754;
}
@media (max-width: 768px) {
  .c-cta-pair {
    display: block;
  }
}
.c-cta-pair--white {
  color: #fff;
}
.c-cta-pair__item {
  width: 33.1rem;
  text-align: center;
}
@media (max-width: 768px) {
  .c-cta-pair__item {
    margin-inline: auto;
  }
  .c-cta-pair__item + .c-cta-pair__item {
    margin-top: 2rem;
  }
}
.c-cta-pair__item + .c-cta-pair__item {
  width: 32.3rem;
}
.c-cta-pair__item .c-btn-cta--navy, .c-cta-pair__item .c-btn-cta--web {
  width: 29.7rem;
}

.c-contact {
  padding: 4rem 0 6rem;
  background: linear-gradient(112.6deg, #EA5C2E 0%, #EFA613 100%);
  text-align: center;
  color: #fff;
}
@media (max-width: 768px) {
  .c-contact {
    padding: 6.5rem 1.25rem 6rem;
    background: linear-gradient(93.2deg, #EA5C2E 0%, #EFA613 100%);
  }
}
.c-contact__title {
  margin-top: 2.4rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 4rem;
  font-weight: 900;
  line-height: 5.8rem;
  letter-spacing: 0.03em;
}
@media (max-width: 768px) {
  .c-contact__title {
    margin-top: 1.6rem;
    font-size: 2.8rem;
    line-height: 3.8rem;
  }
}
.c-contact__text {
  margin-top: 0.8rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
}
@media (max-width: 768px) {
  .c-contact__text {
    font-size: 1.8rem;
    font-feature-settings: normal;
  }
}
.c-contact__cards {
  display: flex;
  justify-content: space-between;
  width: 112rem;
  margin: 2.4rem auto 0;
}
@media (max-width: 768px) {
  .c-contact__cards {
    display: block;
    width: 34rem;
  }
}
.c-contact__card {
  width: 34rem;
  border-radius: 1rem;
  overflow: hidden;
}
@media (max-width: 768px) {
  .c-contact__card + .c-contact__card {
    margin-top: 2rem;
  }
}
.c-contact__head {
  height: 4.1rem;
  padding-top: 0.6rem;
  background: #2E3754;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
}
.c-contact__body {
  height: 20.3rem;
  padding-top: 1.65rem;
  background: #fff;
}
.c-contact__name {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  height: 3.7rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
  color: #2E3754;
}
.c-contact__name img {
  width: auto;
  height: 2.8rem;
}
.c-contact__card:first-child .c-contact__name img {
  height: 2rem;
}
.c-contact__info {
  margin-top: 0.8rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0;
  color: #DF5F3B;
}
.c-contact__btn {
  width: 24.4rem;
  height: 6.1rem;
  margin-top: 0.8rem;
}
.c-contact__card:first-child .c-contact__btn {
  height: 6rem;
  gap: 1rem;
}
.c-contact__tel {
  font-family: "Futura", "Noto Sans JP", sans-serif;
  font-size: 2.2rem;
  letter-spacing: 0.05em;
}

.c-tebura {
  position: relative;
  padding: 8rem 0;
  overflow: hidden;
  background: #FFF9DA;
  text-align: center;
  color: #2E3754;
}
@media (max-width: 768px) {
  .c-tebura {
    padding: 6.7rem 0 6rem;
  }
}
.c-tebura__side {
  position: absolute;
  width: 23.8rem;
  height: 38rem;
  object-fit: cover;
}
.c-tebura__side--l {
  top: 21.5rem;
  left: 0;
  border-radius: 0 1rem 1rem 0;
}
.c-tebura__side--r {
  top: 42.2rem;
  right: 0;
  width: 23.6rem;
  border-radius: 1rem 0 0 1rem;
}
@media (max-width: 768px) {
  .c-tebura__side {
    display: none;
  }
}
.c-tebura__photo {
  display: none;
}
@media (max-width: 768px) {
  .c-tebura__photo {
    display: block;
    width: 35rem;
    height: 25rem;
    margin: 3rem auto 0;
    border-radius: 1rem;
    object-fit: cover;
  }
}
.c-tebura__lead {
  margin-top: 4rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
}
@media (max-width: 768px) {
  .c-tebura__lead {
    margin-top: 2rem;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 2.2rem;
    line-height: 1.8;
    letter-spacing: 0.05em;
    font-feature-settings: normal;
  }
}
@media (max-width: 768px) {
  .c-tebura__lead-sm {
    font-size: 2rem;
  }
}
.c-tebura__dots-wrap {
  position: relative;
}
.c-tebura__dots {
  position: absolute;
  top: -0.8rem;
  left: 0.4rem;
  width: 14.9rem;
  height: 0.8rem;
}
@media (max-width: 768px) {
  .c-tebura__dots {
    top: -0.3rem;
    left: 0;
    width: 12.3rem;
    height: 0.6rem;
  }
}
.c-tebura__text {
  margin-top: 1.6rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
}
@media (max-width: 768px) {
  .c-tebura__text {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 1.8rem;
    line-height: 1.8;
    letter-spacing: 0.1em;
    font-feature-settings: normal;
  }
}
.c-tebura__label {
  position: relative;
  z-index: 1;
  width: 67.9rem;
  margin: 2rem auto 0;
  padding: 0.4rem 1rem;
  border-radius: 0.5rem;
  background: #2E3754;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
  color: #fff;
}
@media (max-width: 768px) {
  .c-tebura__label {
    width: fit-content;
    margin-top: 2.7rem;
    font-size: 1.6rem;
  }
}
.c-tebura__box {
  width: 110rem;
  margin: -2rem auto 0;
  padding: 4rem;
  border: 0.3rem solid #FFF9DA;
  border-radius: 1rem;
  background: #fff;
}
@media (max-width: 768px) {
  .c-tebura__box {
    width: 35rem;
    margin-top: -3.2rem;
    padding: 6rem 2rem 4rem;
  }
}
.c-tebura__items {
  display: flex;
  justify-content: space-between;
  width: 67.8rem;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .c-tebura__items {
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 1.6rem 2.5rem;
    width: 32.5rem;
  }
}
.c-tebura__item {
  width: 20rem;
  text-align: left;
}
@media (max-width: 768px) {
  .c-tebura__item {
    width: 15rem;
  }
}
.c-tebura__item-name {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .c-tebura__item-name {
    font-size: 2rem;
  }
}
.c-tebura__num {
  width: 3.6rem;
  height: 3.6rem;
  border-radius: 0.4rem;
  background: #EA5C2E;
  font-family: "Roboto", sans-serif;
  font-size: 2rem;
  font-style: italic;
  font-weight: 700;
  line-height: 3.6rem;
  letter-spacing: 0;
  text-align: center;
  color: #fff;
}
@media (max-width: 768px) {
  .c-tebura__num {
    width: 2.8rem;
    height: 2.8rem;
    font-size: 1.6rem;
    line-height: 2.8rem;
  }
}
.c-tebura__item-img {
  display: block;
  width: 100%;
  height: 13.3rem;
  margin-top: 0.8rem;
  border-radius: 0.4rem;
  object-fit: cover;
}
@media (max-width: 768px) {
  .c-tebura__item-img {
    height: 10rem;
  }
}
.c-tebura__info {
  display: flex;
  justify-content: center;
  gap: 1.6rem;
  margin-top: 4rem;
  text-align: left;
}
@media (max-width: 768px) {
  .c-tebura__info {
    display: block;
    margin-top: 2rem;
  }
}
@media (max-width: 768px) {
  .c-tebura__info-col + .c-tebura__info-col {
    margin-top: 2rem;
  }
}
.c-tebura__info-title {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
}
@media (max-width: 768px) {
  .c-tebura__info-title {
    font-size: 1.6rem;
  }
}
.c-tebura__info-title img {
  width: auto;
  height: 2.2rem;
}
.c-tebura__info-list {
  margin-top: 0.8rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .c-tebura__info-list {
    font-size: 1.6rem;
  }
}
.c-tebura__cta {
  margin-top: 4rem;
}
@media (max-width: 768px) {
  .c-tebura__cta {
    margin-top: 1.3rem;
  }
  .c-tebura__cta .c-btn-cta--line {
    width: 31.1rem;
  }
}
.c-tebura--white {
  background: #fff;
}
.c-tebura--white .c-tebura__box {
  background: #FFF9DA;
}

.c-trainer-intro {
  padding: 4rem 0 8rem;
  text-align: center;
}
@media (max-width: 768px) {
  .c-trainer-intro {
    padding: 6rem 0;
  }
}
.c-trainer-intro__list {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 112rem;
  margin: 4rem auto 0;
  text-align: left;
}
@media (max-width: 768px) {
  .c-trainer-intro__list {
    display: block;
    width: 35rem;
  }
}
.c-trainer-intro__card {
  width: 35rem;
  height: 41.3rem;
  border-radius: 1rem;
  background: #fff;
  color: #2E3754;
}
@media (max-width: 768px) {
  .c-trainer-intro__card + .c-trainer-intro__card {
    margin-top: 2rem;
  }
  .c-trainer-intro__card:last-child {
    height: auto;
  }
}
.c-trainer-intro__img {
  display: block;
  width: 100%;
  height: 18rem;
  border-radius: 1rem 1rem 0 0;
  object-fit: cover;
}
.c-trainer-intro__body {
  padding: 1rem 0.8rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
}
.c-trainer-intro__role {
  font-size: 1.8rem;
  color: #EA5C2E;
}
.c-trainer-intro__name {
  margin-top: 0.8rem;
  font-size: 2.2rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .c-trainer-intro__name {
    font-size: 2.5rem;
  }
}
.c-trainer-intro__label {
  margin-top: 0.8rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1;
}
.c-trainer-intro__tags {
  margin-top: 0.7rem;
}
.c-trainer-intro__tag {
  display: table;
  padding: 0.4rem 0.5rem;
  border: 0.2rem solid #2E3754;
  border-radius: 0.4rem;
  font-size: 1.6rem;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .c-trainer-intro__tag {
    font-weight: 500;
  }
}
.c-trainer-intro__tag + .c-trainer-intro__tag {
  margin-top: 0.7rem;
}
.c-trainer-intro__tag--sm {
  font-size: 1.5rem;
}
.c-trainer-intro__tag--wide {
  width: 28.6rem;
}
.c-trainer-intro__tag--fixed {
  width: 25.3rem;
  margin-top: 1rem;
  text-align: center;
}
.c-trainer-intro__more {
  margin-top: 4rem;
}
.c-trainer-intro__more .c-btn-cta {
  width: 33.1rem;
}
@media (max-width: 768px) {
  .c-trainer-intro__more .c-btn-cta {
    width: 34.5rem;
  }
}
.c-trainer-intro__quals {
  width: 112rem;
  margin: 7.3rem auto 0;
}
@media (max-width: 768px) {
  .c-trainer-intro__quals {
    width: auto;
    margin-top: 6rem;
  }
}
.c-trainer-intro__quals-title {
  position: relative;
  z-index: 1;
  width: 68.3rem;
  height: 4.8rem;
  margin: 0 auto -2.1rem;
  padding-top: 0.75rem;
  border-radius: 0.5rem;
  background: #2E3754;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
  color: #fff;
}
@media (max-width: 768px) {
  .c-trainer-intro__quals-title {
    width: auto;
    height: auto;
    margin: 0;
    padding: 0.4rem 1rem;
    border-radius: 0;
    font-size: 1.8rem;
  }
}
.c-trainer-intro__quals-box {
  padding: 4rem 8rem 2rem;
  border-radius: 1rem;
  background: #FFF9DA;
}
@media (max-width: 768px) {
  .c-trainer-intro__quals-box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0.8rem 0;
    padding: 3.2rem calc((100% - 33rem) / 2);
    border-radius: 0;
  }
}
.c-trainer-intro__qual-row {
  display: flex;
  justify-content: center;
  gap: 1rem;
}
.c-trainer-intro__qual-row + .c-trainer-intro__qual-row {
  margin-top: 1rem;
}
@media (max-width: 768px) {
  .c-trainer-intro__qual-row {
    display: contents;
  }
}
.c-trainer-intro__qual {
  padding: 0.4rem 0.8rem;
  border: 0.2rem solid #2E3754;
  border-radius: 0.4rem;
  background: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
  color: #2E3754;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .c-trainer-intro__qual {
    font-size: 1.4rem;
    text-align: center;
  }
}
@media (max-width: 768px) {
  .c-trainer-intro__qual-row:first-child .c-trainer-intro__qual:nth-child(1) {
    width: 18.9rem;
  }
  .c-trainer-intro__qual-row:first-child .c-trainer-intro__qual:nth-child(2) {
    width: 12.3rem;
  }
  .c-trainer-intro__qual-row:first-child .c-trainer-intro__qual:nth-child(3) {
    width: 33rem;
  }
  .c-trainer-intro__qual-row:last-child .c-trainer-intro__qual:nth-child(1) {
    width: 33rem;
  }
  .c-trainer-intro__qual-row:last-child .c-trainer-intro__qual:nth-child(2) {
    width: 11rem;
  }
  .c-trainer-intro__qual-row:last-child .c-trainer-intro__qual:nth-child(3) {
    width: 11rem;
  }
  .c-trainer-intro__qual-row:last-child .c-trainer-intro__qual:nth-child(4) {
    width: 8rem;
  }
}
.c-trainer-intro__cta {
  margin-top: 2.4rem;
}
@media (max-width: 768px) {
  .c-trainer-intro__cta {
    margin-top: 2rem;
  }
}

.c-insta {
  padding: 4rem 0 8rem;
  overflow-x: clip;
  background: linear-gradient(180deg, rgba(234, 92, 46, 0.8), rgba(239, 166, 19, 0.8));
  text-align: center;
}
@media (max-width: 768px) {
  .c-insta {
    padding: 6rem 0;
  }
}
.c-insta .c-heading {
  padding-top: 0;
}
.c-insta__slider {
  width: 111.8rem;
  margin: 4rem auto 0;
}
@media (max-width: 768px) {
  .c-insta__slider {
    width: 30rem;
    margin-top: 3.3rem;
  }
}
@media (max-width: 768px) {
  .c-insta__slider .splide__track {
    overflow: visible;
  }
}
.c-insta__item {
  width: 19.1rem;
  height: 30rem;
}
@media (max-width: 768px) {
  .c-insta__item {
    height: 47.1rem;
  }
}
.c-insta__link {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
}
.c-insta__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.5);
}
.c-insta__play {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 7rem;
  height: 7rem;
  transform: translate(-50%, -50%);
}
.c-insta__more {
  margin-top: 4rem;
}
.c-insta__more .c-btn-cta {
  width: 35.1rem;
}
@media (max-width: 768px) {
  .c-insta__more .c-btn-cta {
    width: 34.5rem;
  }
}
@media (max-width: 768px) {
  .c-insta--grid .c-insta__slider {
    width: 34rem;
    padding-bottom: 0;
  }
}
@media (max-width: 768px) {
  .c-insta--grid .c-insta__slider .splide__list {
    flex-wrap: wrap;
    gap: 3rem 3.4rem;
  }
}
.c-insta--grid .c-insta__slider .c-slider__arrows {
  display: none;
}
@media (max-width: 768px) {
  .c-insta--grid .c-insta__item {
    width: 15.3rem;
    height: 24rem;
  }
}
@media (max-width: 768px) {
  .c-insta--grid .c-insta__play {
    width: 4rem;
    height: 4rem;
  }
}

.c-insta-modal {
  width: 40.5rem;
  max-width: calc(100% - 3rem);
  height: 72rem;
  max-height: calc(100% - 6rem);
  margin: auto;
  padding: 0;
  overflow: visible;
  border: none;
  border-radius: 1rem;
  background: #000;
}
@media (max-width: 768px) {
  .c-insta-modal {
    width: 33.8rem;
    height: 60rem;
  }
}
.c-insta-modal::backdrop {
  background: rgba(0, 0, 0, 0.7);
}
.c-insta-modal__close {
  position: absolute;
  top: -4.8rem;
  right: 0;
  width: 4rem;
  height: 4rem;
  padding: 1.3rem 1rem;
  cursor: pointer;
}
.c-insta-modal__close img {
  display: block;
  width: 100%;
  height: 100%;
}
.c-insta-modal__video {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 1rem;
  object-fit: contain;
}

body.js-modal-open {
  overflow: hidden;
}

.c-shop-guide {
  position: relative;
  padding: 8rem 0;
  overflow: hidden;
  background: #fdfdfd;
  text-align: center;
}
@media (max-width: 768px) {
  .c-shop-guide {
    padding: 10.8rem 0 10.7rem;
  }
}
.c-shop-guide__bg {
  position: absolute;
  left: 0;
  width: 100%;
}
.c-shop-guide__bg--top {
  top: 0;
  height: 17.5rem;
  mask-image: linear-gradient(180deg, #000 26.8%, transparent 86.8%);
}
@media (max-width: 768px) {
  .c-shop-guide__bg--top {
    height: 10rem;
  }
}
.c-shop-guide__bg--bottom {
  top: 4.3rem;
  height: 85.8rem;
  mask-image: linear-gradient(180deg, transparent 81.6%, #000 98.9%);
}
@media (max-width: 768px) {
  .c-shop-guide__bg--bottom {
    top: auto;
    bottom: 0;
    height: 10.7rem;
    mask-image: linear-gradient(180deg, transparent 9.5%, #000 79.6%);
  }
}
.c-shop-guide__inner {
  position: relative;
}
.c-shop-guide__areas {
  width: 67.4rem;
  min-height: 50rem;
  margin: 4rem auto 0;
  text-align: left;
}
@media (max-width: 768px) {
  .c-shop-guide__areas {
    width: 35rem;
    margin-top: 3.4rem;
  }
}
.c-shop-guide__area {
  border: 0.2rem solid #2E3754;
  border-radius: 1rem;
  background: #fff;
  color: #2E3754;
}
.c-shop-guide__area + .c-shop-guide__area {
  margin-top: 1.6rem;
}
.c-shop-guide__summary {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  padding: 1.8rem 3rem;
  list-style: none;
  cursor: pointer;
}
@media (max-width: 768px) {
  .c-shop-guide__summary {
    padding: 1.4rem 1.6rem;
  }
}
.c-shop-guide__summary::-webkit-details-marker {
  display: none;
}
.c-shop-guide__logo {
  flex-shrink: 0;
  width: 3rem;
  height: 3rem;
}
.c-shop-guide__name {
  flex: 1;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.37;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .c-shop-guide__name {
    font-size: 2rem;
  }
}
.c-shop-guide__chevron {
  flex-shrink: 0;
  width: 1.9rem;
  height: 1.15rem;
  transition: transform 0.3s ease;
}
@media (max-width: 768px) {
  .c-shop-guide__chevron {
    width: 1.9rem;
    height: 1.15rem;
  }
}
.c-shop-guide__area[open] .c-shop-guide__chevron {
  transform: rotate(180deg);
}
.c-shop-guide__area--list[open] {
  border: 0;
  background: none;
}
.c-shop-guide__area--list[open] .c-shop-guide__summary {
  border: 0.2rem solid #2E3754;
  border-bottom: 0;
  border-radius: 1rem 1rem 0 0;
  background: #fff;
}
.c-shop-guide__empty {
  padding: 0 3rem 2rem 7.6rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.6;
}
@media (max-width: 768px) {
  .c-shop-guide__empty {
    padding: 0 1.6rem 1.6rem 6.2rem;
    font-size: 1.6rem;
  }
}
.c-shop-guide__more {
  margin-top: 4rem;
}
.c-shop-guide__more .c-btn-cta {
  width: 30.6rem;
}
@media (max-width: 768px) {
  .c-shop-guide__more .c-btn-cta {
    width: 34.9rem;
  }
}

.c-faq-digest {
  padding: 6rem 0 8rem;
  background: #fff;
  text-align: center;
  color: #2E3754;
}
@media (max-width: 768px) {
  .c-faq-digest {
    padding: 6rem 0;
  }
}
.c-faq-digest .c-heading {
  padding-top: 0;
}
.c-faq-digest__items {
  width: 84rem;
  margin: 4rem auto 0;
  text-align: left;
}
@media (max-width: 768px) {
  .c-faq-digest__items {
    width: 35rem;
  }
}
.c-faq-digest__items > .c-faq + .c-faq {
  margin-top: 2.4rem;
}
@media (max-width: 768px) {
  .c-faq-digest__items > .c-faq + .c-faq {
    margin-top: 2rem;
  }
}
.c-faq-digest__more {
  margin-top: 7rem;
}
@media (max-width: 768px) {
  .c-faq-digest__more {
    margin-top: 4rem;
  }
}
.c-faq-digest__more .c-btn-cta {
  width: 35.1rem;
}
.c-faq-digest--shop {
  padding-top: 8rem;
}
@media (max-width: 768px) {
  .c-faq-digest--shop {
    padding-top: 6.7rem;
  }
}
@media (max-width: 768px) {
  .c-faq-digest--sm-q .c-faq__q-text {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .c-faq-digest--recruit .c-faq__q {
    padding-block: 0.7rem;
  }
  .c-faq-digest--recruit .c-faq__a {
    padding-top: 0.6rem;
  }
  .c-faq-digest--recruit .c-faq-digest__more {
    display: none;
  }
}

.c-concept {
  padding: 8rem 0;
  text-align: center;
}
@media (max-width: 768px) {
  .c-concept {
    padding: 6rem 0;
  }
}
.c-concept__inner {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  align-items: flex-end;
  gap: 8.4rem;
  width: 111.8rem;
  margin: 4rem auto 0;
  text-align: left;
}
@media (max-width: 768px) {
  .c-concept__inner {
    display: block;
    width: 35rem;
  }
}
.c-concept__photos {
  position: relative;
  flex-shrink: 0;
  width: 45.6rem;
  height: 51.5rem;
}
@media (max-width: 768px) {
  .c-concept__photos {
    width: auto;
    height: auto;
  }
}
.c-concept__photo {
  display: block;
  border-radius: 1rem;
  overflow: hidden;
}
.c-concept__photo img {
  display: block;
  width: 100%;
  height: 100%;
}
.c-concept__photo--main {
  width: 40.4rem;
  height: 31.7rem;
  background: #d9d9d9;
}
@media (max-width: 768px) {
  .c-concept__photo--main {
    width: 35rem;
    height: 25rem;
  }
}
.c-concept__photo--sub {
  position: absolute;
  top: 26.5rem;
  left: 23rem;
  width: 22.6rem;
  height: 25rem;
  object-fit: cover;
}
@media (max-width: 768px) {
  .c-concept__photo--sub {
    display: none;
  }
}
.c-concept__body {
  width: 58rem;
}
@media (max-width: 768px) {
  .c-concept__body {
    width: auto;
    margin-top: 2rem;
  }
}
.c-concept__lead {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 3.9rem;
  letter-spacing: 0.05em;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .c-concept__lead {
    font-size: 2.4rem;
  }
}
.c-concept__lead, .c-concept__text {
  font-feature-settings: normal;
}
.c-concept__text {
  margin: 1.5rem 0 -0.7rem;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.1em;
  color: #2E3754;
}
@media (max-width: 768px) {
  .c-concept__text {
    margin: 2rem 0 0;
    font-size: 1.6rem;
    letter-spacing: 0.09em;
  }
}
.c-concept__features {
  margin-top: 2.2rem;
}
@media (max-width: 768px) {
  .c-concept__features {
    margin-top: 3rem;
  }
}
.c-concept__feature {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
  color: #2E3754;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .c-concept__feature {
    align-items: flex-start;
    font-size: 1.8rem;
    line-height: 1.4;
    letter-spacing: 0.03em;
    white-space: normal;
  }
}
.c-concept__feature + .c-concept__feature {
  margin-top: 0.8rem;
}
@media (max-width: 768px) {
  .c-concept__feature + .c-concept__feature {
    margin-top: 1.6rem;
  }
}
.c-concept__feature img {
  flex-shrink: 0;
  width: 3rem;
  height: 3rem;
}
@media (max-width: 768px) {
  .c-concept__feature img {
    width: 2.4rem;
    height: 2.4rem;
  }
}
.c-concept__more {
  margin-top: 4rem;
}
.c-concept__more .c-btn-cta {
  width: 32.6rem;
}
@media (max-width: 768px) {
  .c-concept__more .c-btn-cta {
    width: 34.5rem;
  }
}
@media (max-width: 768px) {
  .c-concept--tall .c-concept__inner {
    margin-top: 3.1rem;
  }
}
.c-concept--tall .c-concept__photos {
  width: 45rem;
  height: 46.6rem;
}
@media (max-width: 768px) {
  .c-concept--tall .c-concept__photos {
    width: auto;
    height: auto;
  }
}
.c-concept--tall .c-concept__photo--main {
  width: 30.4rem;
  height: 33.7rem;
}
@media (max-width: 768px) {
  .c-concept--tall .c-concept__photo--main {
    width: 35rem;
    height: 24.9rem;
  }
}
.c-concept--tall .c-concept__photo--sub {
  top: 20.9rem;
  left: 22.4rem;
  height: 25.7rem;
}

.c-flow__box {
  width: 131.2rem;
  margin-inline: auto;
  padding: 6rem 0;
  background: linear-gradient(180deg, rgba(234, 92, 46, 0.8), rgba(239, 166, 19, 0.8));
  text-align: center;
}
@media (max-width: 768px) {
  .c-flow__box {
    width: auto;
    padding: 6rem 0;
  }
}
.c-flow__steps {
  display: flex;
  justify-content: space-between;
  width: 112rem;
  margin: 4rem auto 0;
}
@media (max-width: 768px) {
  .c-flow__steps {
    flex-wrap: wrap;
    gap: 2.2rem 1rem;
    width: 35rem;
    margin-top: 3.2rem;
  }
}
.c-flow__step {
  position: relative;
  font-feature-settings: normal;
  width: 25rem;
  min-height: 40.4rem;
  padding: 2.4rem 1rem 1.6rem;
  border-radius: 0.4rem;
  background: #fff;
  color: #2E3754;
}
@media (max-width: 768px) {
  .c-flow__step {
    width: 17rem;
    min-height: 0;
    padding: 1.6rem 1.2rem;
  }
}
.c-flow__step:nth-child(1) {
  padding-top: 3.1rem;
}
@media (max-width: 768px) {
  .c-flow__step:nth-child(1) {
    padding-top: 1.6rem;
  }
}
.c-flow__step:nth-child(2) {
  padding-top: 2.7rem;
}
@media (max-width: 768px) {
  .c-flow__step:nth-child(2) {
    padding-top: 1.6rem;
  }
}
.c-flow__step:nth-child(3) {
  padding-top: 2.5rem;
}
@media (max-width: 768px) {
  .c-flow__step:nth-child(3) {
    padding-top: 1.6rem;
  }
}
.c-flow__step:nth-child(4) {
  padding-top: 2.2rem;
}
@media (max-width: 768px) {
  .c-flow__step:nth-child(4) {
    padding-top: 1.6rem;
  }
}
.c-flow__arrow {
  position: absolute;
  top: 50%;
  left: -3.45rem;
  width: 2.9rem;
  height: 2.5rem;
  transform: translateY(-50%) rotate(90deg);
}
@media (max-width: 768px) {
  .c-flow__arrow {
    display: none;
  }
}
.c-flow__icon {
  display: block;
  width: auto;
  height: auto;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .c-flow__icon {
    width: 4rem;
    height: 3.2rem;
    object-fit: contain;
  }
}
.c-flow__step:nth-child(2) .c-flow__icon {
  height: 3.6rem;
}
@media (max-width: 768px) {
  .c-flow__step:nth-child(2) .c-flow__icon {
    height: 3.2rem;
  }
}
.c-flow__num {
  margin-top: 2rem;
  font-family: "Roboto", sans-serif;
  font-size: 1.8rem;
  font-style: italic;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.05em;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .c-flow__num {
    margin-top: 0.6rem;
    font-size: 1.4rem;
  }
}
.c-flow__title {
  margin-top: 0.4rem;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .c-flow__title {
    margin-top: 0;
    font-size: 1.8rem;
    line-height: 1.2;
    white-space: nowrap;
  }
}
.c-flow__text {
  margin-top: 1.6rem;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.03em;
}
@media (max-width: 768px) {
  .c-flow__text {
    margin-top: 0.8rem;
    font-size: 1.6rem;
    letter-spacing: 0;
    text-align: left;
  }
}
.c-flow__info {
  margin-top: 1.6rem;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.07em;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .c-flow__info {
    margin-top: 0.8rem;
    font-size: 1.4rem;
    letter-spacing: 0;
    text-align: left;
    white-space: nowrap;
  }
}
.c-flow__cta {
  margin-top: 4rem;
}
@media (max-width: 768px) {
  .c-flow__cta .c-btn-cta--line {
    width: 31.2rem;
  }
}
.c-flow--recruit .c-flow__steps {
  flex-wrap: wrap;
  justify-content: center;
  gap: 4rem 7rem;
}
@media (max-width: 768px) {
  .c-flow--recruit .c-flow__steps {
    justify-content: flex-start;
    gap: 2rem 1rem;
  }
}
.c-flow--recruit .c-flow__step {
  width: 32rem;
  min-height: 26.5rem;
  padding: 2rem;
}
@media (max-width: 768px) {
  .c-flow--recruit .c-flow__step {
    width: 17rem;
    min-height: 0;
    padding: 1.6rem 1.2rem;
  }
}
@media (max-width: 768px) {
  .c-flow--recruit .c-flow__head {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.8rem;
  }
}
@media (max-width: 768px) {
  .c-flow--recruit .c-flow__head-text {
    text-align: left;
  }
}
.c-flow--recruit .c-flow__arrow {
  left: -4.95rem;
}
.c-flow--recruit .c-flow__step:nth-child(4) .c-flow__arrow {
  left: -4.95rem;
}
.c-flow--recruit .c-flow__icon {
  height: 3.5rem;
}
@media (max-width: 768px) {
  .c-flow--recruit .c-flow__icon {
    flex-shrink: 0;
    width: auto;
    height: 2.6rem;
    margin-inline: 0;
  }
}
.c-flow--recruit .c-flow__num {
  margin-top: 1rem;
}
@media (max-width: 768px) {
  .c-flow--recruit .c-flow__num {
    margin-top: 0;
  }
}
@media (max-width: 768px) {
  .c-flow--recruit .c-flow__text {
    line-height: 1.6;
  }
}
.c-flow--recruit .c-flow__title {
  margin-top: 0;
}
.c-flow--recruit .c-flow__cta {
  margin-top: 4rem;
}
.c-flow--recruit .c-flow__cta .c-cta-note {
  color: #2E3754;
}
.c-flow--recruit .c-flow__cta .c-btn-cta {
  width: 32.1rem;
}
.c-flow--fc {
  padding-block: 6rem;
}
@media (max-width: 768px) {
  .c-flow--fc {
    padding-block: 0;
  }
}
.c-flow--fc .c-flow__step {
  min-height: 35.1rem;
}
@media (max-width: 768px) {
  .c-flow--fc .c-flow__step {
    min-height: 0;
  }
}
.c-flow--fc .c-flow__num {
  margin-top: 2rem;
}
@media (max-width: 768px) {
  .c-flow--fc .c-flow__head {
    display: block;
  }
}
@media (max-width: 768px) {
  .c-flow--fc .c-flow__head-text {
    text-align: center;
  }
}
@media (max-width: 768px) {
  .c-flow--fc .c-flow__icon {
    width: 4rem;
    height: 3.2rem;
    margin-inline: auto;
    object-fit: contain;
  }
}
@media (max-width: 768px) {
  .c-flow--fc .c-flow__num {
    margin-top: 0.6rem;
  }
}
@media (max-width: 768px) {
  .c-flow--fc .c-flow__title {
    white-space: normal;
    letter-spacing: 0;
  }
}

.c-gallery {
  padding: 4rem 0;
  overflow: hidden;
}
.c-gallery__item {
  flex-shrink: 0;
  width: 45rem;
  height: 30rem;
  border-radius: 1rem;
  overflow: hidden;
}
@media (max-width: 768px) {
  .c-gallery__item {
    width: 30rem;
    height: 20rem;
  }
}
.c-gallery__item--narrow {
  width: 42rem;
}
@media (max-width: 768px) {
  .c-gallery__item--narrow {
    width: 30rem;
  }
}
.c-gallery__item img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.c-reason {
  padding: 0 5rem;
}
@media (max-width: 768px) {
  .c-reason {
    padding: 0;
  }
}
.c-reason__box {
  padding: 6rem 0 8rem;
  border-radius: 1rem;
  background: #FFF9DA;
  text-align: center;
}
@media (max-width: 768px) {
  .c-reason__box {
    padding: 6rem 0;
    border-radius: 0;
  }
}
.c-reason__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 4rem;
  width: 112rem;
  margin: 4rem auto 0;
}
@media (max-width: 768px) {
  .c-reason__list {
    justify-content: flex-start;
    gap: 2.4rem 1rem;
    width: 35rem;
  }
}
.c-reason__item {
  width: 25rem;
  color: #2E3754;
}
@media (max-width: 768px) {
  .c-reason__item {
    width: 17rem;
    text-align: left;
  }
}
.c-reason__img {
  display: block;
  width: 100%;
  height: 14.375rem;
  border-radius: 0.4rem;
  object-fit: cover;
}
@media (max-width: 768px) {
  .c-reason__img {
    height: 9.7rem;
  }
}
.c-reason__title {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 0.4rem;
  margin-top: 0.8rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
  text-align: left;
}
@media (max-width: 768px) {
  .c-reason__title {
    justify-content: flex-start;
    margin-top: 0.4rem;
    font-size: 1.8rem;
    font-feature-settings: normal;
  }
}
.c-reason__icon {
  flex-shrink: 0;
  width: auto;
  height: 2.9rem;
  margin-top: 0.3rem;
}
@media (max-width: 768px) {
  .c-reason__icon {
    width: 2rem;
    height: 2rem;
    object-fit: contain;
  }
}
.c-reason__text {
  margin-top: 0.8rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .c-reason__text {
    margin-top: 0.4rem;
    font-size: 1.6rem;
  }
}
.c-reason__cta {
  margin-top: 4rem;
}
.c-reason--card {
  padding: 0;
}
.c-reason--card .c-reason__box {
  padding: 6rem 0 8rem;
  background: none;
}
@media (max-width: 768px) {
  .c-reason--card .c-reason__box {
    padding: 3rem 0 6rem;
  }
}
.c-reason--card .c-reason__list {
  column-gap: 1.3333rem;
}
@media (max-width: 768px) {
  .c-reason--card .c-reason__list {
    gap: 1.6rem 1rem;
    width: 36rem;
  }
}
.c-reason--card .c-reason__item {
  width: 27rem;
  padding: 0.8rem 0.8rem 1.6rem;
  border-radius: 0.4rem;
  background: #fff;
}
.c-reason--card .c-reason__item:nth-child(n+5) {
  margin-inline: 0.7rem;
}
@media (max-width: 768px) {
  .c-reason--card .c-reason__item {
    width: 17.5rem;
    padding-bottom: 0.8rem;
  }
  .c-reason--card .c-reason__item:nth-child(n+5) {
    margin-inline: 0;
  }
}
.c-reason--card .c-reason__img {
  height: 14.6rem;
}
@media (max-width: 768px) {
  .c-reason--card .c-reason__img {
    height: 9.1rem;
  }
}
.c-reason--appeal .c-reason__box {
  padding: 6rem 0 8rem;
}
@media (max-width: 768px) {
  .c-reason--appeal .c-reason__box {
    padding: 6.3rem 0 6rem;
  }
}
.c-reason--appeal .c-heading {
  padding-top: 0;
}
.c-reason--appeal .c-reason__list {
  justify-content: space-between;
  gap: 4rem 0;
  width: 90rem;
}
@media (max-width: 768px) {
  .c-reason--appeal .c-reason__list {
    justify-content: flex-start;
    gap: 2.6rem 1.8rem;
    width: 35rem;
    margin-top: 3.3rem;
  }
}
.c-reason--appeal .c-reason__item:nth-child(n+5) {
  margin-inline: 0;
}
@media (max-width: 768px) {
  .c-reason--appeal .c-reason__item {
    width: 16.6rem;
    padding: 0;
  }
}
@media (max-width: 768px) {
  .c-reason--appeal .c-reason__img {
    height: 9.2rem;
  }
}
.c-reason--fc .c-reason__box {
  padding: 8rem 0;
}
@media (max-width: 768px) {
  .c-reason--fc .c-reason__box {
    padding: 6rem 0;
  }
}
.c-reason--fc .c-heading {
  padding-top: 0;
}
.c-reason--fc .c-reason__list {
  justify-content: space-between;
  gap: 0;
  width: 112rem;
}
@media (max-width: 768px) {
  .c-reason--fc .c-reason__list {
    justify-content: space-between;
    gap: 2.4rem 0;
    width: 35rem;
  }
}
.c-reason--fc .c-reason__item {
  width: 35.4rem;
  padding: 0;
  text-align: left;
}
.c-reason--fc .c-reason__item:nth-child(n+5) {
  margin-inline: 0;
}
@media (max-width: 768px) {
  .c-reason--fc .c-reason__item {
    width: 16.5rem;
  }
}
.c-reason--fc .c-reason__img {
  height: 20rem;
}
@media (max-width: 768px) {
  .c-reason--fc .c-reason__img {
    height: 9.3rem;
  }
}
.c-reason--fc .c-reason__title {
  justify-content: flex-start;
  gap: 0.8rem;
  margin-top: 1rem;
  padding: 0 0 0 0.8rem;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .c-reason--fc .c-reason__title {
    gap: 0.4rem;
    margin-top: 0.4rem;
    padding: 0;
    line-height: normal;
    letter-spacing: 0;
  }
}
.c-reason--fc .c-reason__icon {
  width: 2.8rem;
  height: 2.8rem;
  margin-top: 0.4rem;
}
@media (max-width: 768px) {
  .c-reason--fc .c-reason__icon {
    width: 1.8rem;
    height: 1.8rem;
  }
}
.c-reason--fc .c-reason__text {
  padding: 0 0.8rem;
  line-height: 1.5;
  text-align: justify;
}
@media (max-width: 768px) {
  .c-reason--fc .c-reason__text {
    padding: 0;
    line-height: normal;
    text-align: left;
  }
}

.c-slider {
  position: relative;
  visibility: visible;
}
@media (max-width: 768px) {
  .c-slider {
    padding-bottom: 8.7rem;
  }
}
.c-slider.splide:not(.is-active) .splide__list {
  display: flex;
  justify-content: space-between;
}
.c-slider__arrows {
  display: none;
}
@media (max-width: 768px) {
  .c-slider__arrows {
    position: absolute;
    bottom: 0;
    left: 50%;
    display: flex;
    justify-content: space-between;
    width: 25.2rem;
    transform: translateX(-50%);
  }
}
.c-slider__arrow {
  width: 4.37rem;
  height: 4.37rem;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
}
.c-slider__arrow img {
  display: block;
  width: 100%;
  height: 100%;
}
.c-slider__arrow.splide__arrow--prev img {
  transform: scaleX(-1);
}
.c-slider .splide__pagination {
  position: absolute;
  bottom: 1.6rem;
  left: 50%;
  display: flex;
  gap: 0.8rem;
  transform: translateX(-50%);
}
.c-slider .splide__pagination__page {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #d9d9d9;
}
.c-slider .splide__pagination__page.is-active {
  background: #2E3754;
}
.c-slider--always {
  padding-bottom: 8.7rem;
}
.c-slider--always .splide {
  position: static;
  visibility: visible;
}
.c-slider--always .c-slider__arrows {
  position: absolute;
  bottom: 0;
  left: 50%;
  display: flex;
  justify-content: space-between;
  width: 25.2rem;
  transform: translateX(-50%);
}
.c-slider--accent .splide__pagination__page.is-active {
  background: #EA5C2E;
}

.c-btn-more {
  display: inline-block;
  padding: 0.6rem;
  border: 0.2rem solid #2E3754;
  border-radius: 10rem;
  transition: opacity 0.2s;
}
.c-btn-more:hover {
  opacity: 0.85;
}
.c-btn-more__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 2.2rem 4.8rem;
  background: #2E3754;
  border-radius: 10rem;
  color: #fdfdfd;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1;
  letter-spacing: 0.05em;
  white-space: nowrap;
}
.c-btn-more__icon {
  display: block;
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
}
.c-btn-more--light {
  border-color: #fdfdfd;
}
.c-btn-more--light .c-btn-more__inner {
  background: #fdfdfd;
  color: #2E3754;
}

.c-heading {
  padding-top: 0.8rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
@media (max-width: 768px) {
  .c-heading {
    padding-top: 0;
  }
}
.c-heading {
  font-weight: 900;
  line-height: 1.45;
  text-align: center;
  color: #fff;
}
.c-heading--navy {
  color: #2E3754;
}
.c-heading__sub {
  display: block;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .c-heading__sub {
    font-size: 1.8rem;
  }
}
.c-heading__main {
  display: inline-flex;
  align-items: center;
  gap: 1.6rem;
  height: 4.1rem;
  margin-bottom: 1.1rem;
}
@media (max-width: 768px) {
  .c-heading__main {
    gap: 0.8rem;
    height: auto;
    min-height: 4.1rem;
  }
}
.c-heading__text {
  position: relative;
  font-size: 3.2rem;
  letter-spacing: 0.05em;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .c-heading__text {
    font-size: 2.2rem;
  }
}
.c-heading__text::after {
  content: "";
  position: absolute;
  left: -1rem;
  right: -1rem;
  bottom: -1rem;
  height: 0.3rem;
  background: currentColor;
}
@media (max-width: 768px) {
  .c-heading__text::after {
    bottom: -0.8rem;
  }
}
.c-heading__em {
  color: #EA5C2E;
}
.c-heading__slash {
  flex-shrink: 0;
  width: 3rem;
  height: 3.14rem;
}
@media (max-width: 768px) {
  .c-heading__slash {
    width: 2rem;
    height: 2.09rem;
  }
}
.c-heading__slash--l {
  transform: rotate(-176.85deg) scaleY(-1);
}
.c-heading__slash--r {
  transform: rotate(-3.15deg);
}
@media (max-width: 768px) {
  .c-heading--badge {
    position: relative;
    padding-top: 3.7rem;
  }
}
@media (max-width: 768px) {
  .c-heading--badge .c-heading__main {
    display: flex;
    justify-content: center;
    gap: 0.4rem;
  }
}
.c-heading__badge {
  flex-shrink: 0;
  padding: 0.4rem 1rem;
  border-radius: 0.4rem;
  background: #EA5C2E;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
  color: #fff;
}
@media (max-width: 768px) {
  .c-heading__badge {
    position: absolute;
    top: 0;
    left: 50%;
    padding: 0.2rem 0.8rem;
    font-size: 1.4rem;
    transform: translateX(-50%);
  }
}

.c-page-header {
  position: relative;
  height: 52.7rem;
  margin-bottom: -8rem;
  padding-top: 23.4rem;
  text-align: center;
  color: #fdfdfd;
  mask-image: radial-gradient(91.6rem 12.5rem at calc(50% - 1.6rem) 57.2rem, transparent 99.6%, #000 100%);
}
@media (max-width: 768px) {
  .c-page-header {
    height: 18rem;
    margin-top: 6.2rem;
    margin-bottom: -3.4rem;
    padding-top: 5.3rem;
    mask-image: radial-gradient(40rem 20.5rem at 50% 35.1rem, transparent 99.6%, #000 100%);
  }
}
.c-page-header__bg {
  position: absolute;
  inset: 0;
  z-index: -1;
}
.c-page-header__bg img {
  display: block;
  width: 100%;
  height: auto;
}
@media (max-width: 768px) {
  .c-page-header__bg img {
    height: 100%;
    object-fit: cover;
  }
}
.c-page-header__bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
}
.c-page-header__en {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  font-family: "Roboto", sans-serif;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 2.1rem;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .c-page-header__en {
    display: flex;
    justify-content: center;
    gap: 0.4rem;
    font-size: 1.6rem;
    line-height: 2rem;
  }
}
.c-page-header__en img {
  width: 2rem;
  height: 2rem;
}
.c-page-header__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 4.4rem;
  font-weight: 700;
  line-height: 6.4rem;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .c-page-header__title {
    font-size: 2.2rem;
    line-height: 3.2rem;
  }
}
.c-page-header--high {
  padding-top: 21.8rem;
}
@media (max-width: 768px) {
  .c-page-header--high {
    padding-top: 5.3rem;
  }
}
.c-page-header--tall {
  height: 58.6rem;
  margin-bottom: -11.8rem;
  mask-image: radial-gradient(91.6rem 26.2rem at 50% 73rem, transparent 99.6%, #000 100%);
}
@media (max-width: 768px) {
  .c-page-header--tall {
    height: 18rem;
    margin-bottom: -3.4rem;
    mask-image: radial-gradient(40rem 20.5rem at 50% 35.1rem, transparent 99.6%, #000 100%);
  }
}
.c-page-header--photo-short .c-page-header__bg img {
  height: 51.7rem;
}
@media (max-width: 768px) {
  .c-page-header--photo-short .c-page-header__bg img {
    height: 100%;
  }
}
@media (max-width: 768px) {
  .c-page-header--sp-low {
    padding-top: 5.7rem;
  }
}
@media (max-width: 768px) {
  .c-page-header--sp-2lines {
    padding-top: 3.7rem;
  }
}
.c-page-header--shop {
  height: 54.4rem;
  margin-bottom: -9.7rem;
  padding-top: 20.5rem;
}
@media (max-width: 768px) {
  .c-page-header--shop {
    height: 18rem;
    margin-bottom: -3.4rem;
    padding-top: 3.8rem;
  }
}
.c-page-header--shop .c-page-header__title {
  margin-top: 0.8rem;
  line-height: 4.4rem;
}
@media (max-width: 768px) {
  .c-page-header--shop .c-page-header__title {
    margin-top: 0;
    line-height: 3.2rem;
  }
}
.c-page-header__badge {
  display: inline-block;
  margin-left: 1.6rem;
  padding: 0.4rem 1rem;
  border-radius: 0.4rem;
  background: #EA5C2E;
  font-size: 2rem;
  line-height: 3.5rem;
  letter-spacing: 0.05em;
  vertical-align: 0.2rem;
  color: #fff;
}
@media (max-width: 768px) {
  .c-page-header__badge {
    position: absolute;
    top: 0;
    left: 0;
    margin-left: 0;
    padding: 0.2rem 0.8rem;
    border-radius: 0 0 0.4rem 0;
    font-size: 1.4rem;
    line-height: 2.3rem;
  }
}
.c-page-header__access {
  display: inline-block;
  margin-top: 0.8rem;
  padding: 1rem 1.4rem;
  border-radius: 0.4rem;
  background: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
  color: #2E3754;
}
@media (max-width: 768px) {
  .c-page-header__access {
    margin-top: 0.4rem;
    padding: 0.4rem 1rem;
    font-size: 1.4rem;
  }
}

.c-intro {
  position: relative;
  padding: 4rem 0 8rem;
  text-align: center;
}
@media (max-width: 768px) {
  .c-intro {
    padding: 2rem 1.25rem 0;
  }
}
.c-intro__logo {
  width: 40rem;
  height: 11.9rem;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .c-intro__logo {
    width: 24rem;
    height: 7.1rem;
  }
}
.c-intro__catch {
  margin-top: 2rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.6;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .c-intro__catch {
    margin-top: 0;
    font-size: 2rem;
  }
}
.c-intro__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.6;
  color: #2E3754;
}
@media (max-width: 768px) {
  .c-intro__text {
    font-size: 1.8rem;
  }
}
@media (max-width: 768px) {
  .c-intro--sp-text-sm .c-intro__text, .c-intro--sp-text-sm .c-intro__em {
    font-size: 1.6rem;
  }
}
@media (max-width: 768px) {
  .c-intro--sp-catch-sm .c-intro__catch {
    font-size: 1.6rem;
  }
}
.c-intro--compact {
  padding-bottom: 4rem;
}
@media (max-width: 768px) {
  .c-intro--compact {
    padding-bottom: 6rem;
  }
}
.c-intro--flush {
  padding-bottom: 0;
}
.c-intro--catch-sm .c-intro__catch {
  font-size: 3rem;
}
@media (max-width: 768px) {
  .c-intro--catch-sm .c-intro__catch {
    font-size: 2rem;
  }
}
.c-intro--loose .c-intro__catch {
  margin-top: 4rem;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .c-intro--loose .c-intro__catch {
    margin-top: 0;
  }
}
.c-intro__text--lead {
  margin-top: 2rem;
  letter-spacing: 0.04em;
}
@media (max-width: 768px) {
  .c-intro__text--lead {
    margin-top: 0;
    letter-spacing: 0.05em;
  }
}
.c-intro__em {
  font-size: 4rem;
  letter-spacing: 0.05em;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .c-intro__em {
    font-size: 2rem;
  }
}
.c-intro--reverse .c-intro__text {
  margin-top: 4rem;
  letter-spacing: 0.04em;
}
@media (max-width: 768px) {
  .c-intro--reverse .c-intro__text {
    margin-top: 0;
    letter-spacing: 0.05em;
  }
}
.c-intro--reverse .c-intro__catch {
  margin-top: 0;
  letter-spacing: 0.03em;
}
@media (max-width: 768px) {
  .c-intro--reverse .c-intro__catch {
    letter-spacing: 0.05em;
  }
}
.c-intro--tight .c-intro__catch, .c-intro--tight .c-intro__text {
  line-height: 1.45;
}
@media (max-width: 768px) {
  .c-intro--tight .c-intro__catch, .c-intro--tight .c-intro__text {
    line-height: 1.6;
  }
}
@media (max-width: 768px) {
  .c-intro--sp-pb-sm {
    padding-bottom: 2rem;
  }
}

.c-filter {
  width: 112rem;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .c-filter {
    width: 33rem;
    text-align: center;
  }
}
.c-filter__title {
  display: inline-block;
  border-bottom: 0.2rem solid #2E3754;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.08em;
  color: #2E3754;
}
.c-filter__chips {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 1rem;
}
@media (max-width: 768px) {
  .c-filter__chips {
    flex-wrap: wrap;
    gap: 2rem 1rem;
    margin-top: 2rem;
  }
}
.c-filter__chip {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.6rem;
  height: 5.8rem;
  padding: 0 1.6rem;
  border: 0.2rem solid #2E3754;
  border-radius: 4rem;
  background: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  font-feature-settings: "palt" 1;
  color: #2E3754;
  white-space: nowrap;
  cursor: pointer;
}
@media (max-width: 768px) {
  .c-filter__chip {
    width: 16rem;
    height: 5.2rem;
    padding: 0 0.5rem;
  }
}
.c-filter__chip.is-active {
  border-color: transparent;
  background: linear-gradient(180deg, #EA5C2E, #EFA613);
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  color: #fff;
}
@media (max-width: 768px) {
  .c-filter__chip-text {
    font-family: "Noto Sans JP", sans-serif;
    white-space: normal;
    word-break: keep-all;
    line-height: 1.2;
    text-align: center;
  }
}
.c-filter__chip-close {
  display: none;
  width: 0.8rem;
  height: 0.8rem;
}
.is-active > .c-filter__chip-close {
  display: block;
}
.c-filter__clear {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: #EA5C2E;
  white-space: nowrap;
  cursor: pointer;
}
@media (max-width: 768px) {
  .c-filter__clear {
    width: 16rem;
  }
}
.c-filter__clear--line {
  border-bottom: 0.1rem solid #EA5C2E;
}
.c-filter--fixed .c-filter__chips {
  margin-top: 0.6rem;
}
@media (max-width: 768px) {
  .c-filter--fixed .c-filter__chips {
    margin-top: 2rem;
  }
}
.c-filter--fixed .c-filter__chip {
  min-width: 12rem;
  height: 5.4rem;
  font-family: "Noto Sans JP", sans-serif;
}
@media (max-width: 768px) {
  .c-filter--fixed .c-filter__chip {
    height: 5.2rem;
  }
}
.c-filter--fixed .c-filter__chip--all {
  min-width: 0;
}
.c-filter--fixed .c-filter__chip.is-active {
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.c-pager {
  display: flex;
  justify-content: center;
  gap: 0.8rem;
  margin-top: 6rem;
}
@media (max-width: 768px) {
  .c-pager {
    margin-top: 4rem;
  }
}
.c-pager:empty {
  display: none;
}
.c-pager__page {
  display: block;
  width: 4.5rem;
  height: 4.3rem;
  border: 0.2rem solid #2E3754;
  border-radius: 5rem;
  background: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 3.9rem;
  text-align: center;
  color: #2E3754;
  cursor: pointer;
}
.c-pager__page.is-current {
  border-color: transparent;
  background: linear-gradient(180deg, #EA5C2E, #EFA613);
  color: #fff;
}
.c-pager__dots {
  align-self: flex-end;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  color: #2E3754;
}

.c-ba-card {
  width: 35rem;
  padding: 1.6rem;
  border-radius: 1rem;
  background: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
  text-align: left;
  color: #2E3754;
}
.c-ba-card--border {
  border: 0.2rem solid #2E3754;
}
.c-ba-card__head {
  display: flex;
  align-items: center;
  gap: 2rem;
}
.c-ba-card__tag {
  padding: 0.4rem 0.8rem;
  border-radius: 0.4rem;
  background: #EA5C2E;
  font-size: 1.8rem;
  color: #fff;
}
@media (max-width: 768px) {
  .c-ba-card__tag {
    font-size: 1.6rem;
  }
}
.c-ba-card__profile {
  font-size: 2.4rem;
}
@media (max-width: 768px) {
  .c-ba-card__profile {
    font-size: 2rem;
  }
}
.c-ba-card__goal {
  margin-top: 0.6rem;
  padding-bottom: 0.4rem;
  border-bottom: 1px solid #2E3754;
  font-size: 2.4rem;
}
@media (max-width: 768px) {
  .c-ba-card__goal {
    font-size: 2.2rem;
  }
}
.c-ba-card__data {
  margin-top: 0.6rem;
  padding: 0.5rem 1rem;
  border-radius: 0.4rem;
  color: #fff;
}
.c-ba-card__data dt {
  font-size: 1.8rem;
}
@media (max-width: 768px) {
  .c-ba-card__data dt {
    font-size: 1.5rem;
  }
}
.c-ba-card__data dd {
  font-size: 2.4rem;
}
@media (max-width: 768px) {
  .c-ba-card__data dd {
    font-size: 2.2rem;
  }
}
.c-ba-card__data--before {
  background: rgba(51, 51, 51, 0.6);
}
.c-ba-card__data--after {
  margin-top: 0.8rem;
  background: linear-gradient(180deg, #EA5C2E, #EFA613);
}
.c-ba-card__voice {
  margin-top: 0.6rem;
  padding-top: 0.6rem;
  border-top: 1px solid #2E3754;
}
.c-ba-card__comment {
  min-height: 8.7rem;
  font-size: 2rem;
}
@media (max-width: 768px) {
  .c-ba-card__comment {
    min-height: 7.83rem;
    font-size: 1.8rem;
  }
}

.c-faq {
  border: 0.2rem solid #2E3754;
  border-radius: 0.8rem;
  background: #fff;
  text-align: left;
  color: #2E3754;
}
.c-faq__q {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  padding: 1.6rem 3rem;
  list-style: none;
  cursor: pointer;
}
@media (max-width: 768px) {
  .c-faq__q {
    gap: 0.8rem 1.5rem;
    padding: 1rem 1.6rem;
  }
}
.c-faq__q::-webkit-details-marker {
  display: none;
}
.c-faq__badge {
  flex-shrink: 0;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background: #2E3754;
  font-family: "Roboto", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2.5rem;
  letter-spacing: 0;
  text-align: center;
  color: #fff;
}
.c-faq__badge--a {
  background: #EA5C2E;
}
.c-faq__q-text {
  flex: 1;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .c-faq__q-text {
    font-size: 1.8rem;
    line-height: 1.45;
  }
}
.c-faq__icon {
  flex-shrink: 0;
  width: 2.9rem;
  height: 2.9rem;
}
@media (max-width: 768px) {
  .c-faq__icon {
    width: 2.6rem;
    height: 2.6rem;
  }
}
.c-faq__icon--open {
  display: none;
}
.c-faq__icon--close {
  transform: scaleY(-1);
}
.c-faq[open] .c-faq__icon--open {
  display: block;
}
.c-faq[open] .c-faq__icon--close {
  display: none;
}
.c-faq__a {
  display: flex;
  align-items: flex-start;
  gap: 1.5rem;
  padding: 1.5rem 3rem 1.5rem;
}
@media (max-width: 768px) {
  .c-faq__a {
    padding: 1rem 1.6rem 2rem;
  }
}
.c-faq__a-text {
  flex: 1;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .c-faq__a-text {
    font-size: 1.6rem;
  }
}
.c-faq__gap {
  margin-top: 1.6em;
}
.c-faq__list li::before {
  content: "・";
  margin-right: 0.4rem;
}

.c-side-nav__item {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  width: 100%;
  padding: 1rem;
  border-bottom: 0.2rem solid #2E3754;
  background: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.45;
  text-align: left;
  color: #2E3754;
  cursor: pointer;
}
@media (max-width: 768px) {
  .c-side-nav__item {
    font-size: 1.6rem;
  }
}
li:first-child .c-side-nav__item {
  border-radius: 1rem 1rem 0 0;
}
.c-side-nav__item.is-active {
  color: #EA5C2E;
}
.c-side-nav__logo {
  flex-shrink: 0;
  width: 3rem;
  height: 3rem;
}
.c-side-nav__label {
  flex: 1;
}
.c-side-nav__icon {
  display: none;
  flex-shrink: 0;
  width: 2rem;
  height: 0.86rem;
}
.c-side-nav__icon--sp, .c-side-nav__icon--sp-active {
  width: 1.8rem;
  height: 1.8rem;
}
.c-side-nav__item:not(.is-active) .c-side-nav__icon--pc, .c-side-nav__item.is-active .c-side-nav__icon--pc-active {
  display: block;
}
@media (max-width: 768px) {
  .c-side-nav__item:not(.is-active) .c-side-nav__icon--pc, .c-side-nav__item.is-active .c-side-nav__icon--pc-active {
    display: none;
  }
}
@media (max-width: 768px) {
  .c-side-nav__item:not(.is-active) .c-side-nav__icon--sp, .c-side-nav__item.is-active .c-side-nav__icon--sp-active {
    display: block;
  }
}

.c-side-cta {
  margin-top: 4rem;
  padding: 4rem 1.6rem;
  border-radius: 1rem;
  background: linear-gradient(133deg, #EA5C2E 0%, #EFA613 100%);
  font-family: "Zen Kaku Gothic New", sans-serif;
  text-align: center;
  color: #fff;
}
@media (max-width: 768px) {
  .c-side-cta {
    display: none;
  }
}
.c-side-cta .c-cta-note {
  margin-top: 2.4rem;
}
.c-side-cta .c-btn-cta {
  width: 33.4rem;
}
.c-side-cta__title {
  font-size: 2.4rem;
  font-weight: 900;
  line-height: 1.4;
  letter-spacing: 0.03em;
}
.c-side-cta__text {
  margin-top: 0.8rem;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
  white-space: nowrap;
}

.c-trainer-card {
  width: 35rem;
  text-align: left;
  color: #2E3754;
}
.c-trainer-card__img {
  display: block;
  width: 100%;
  height: 18rem;
  border-radius: 1rem 1rem 0 0;
  object-fit: cover;
}
.c-trainer-card__body {
  padding: 1rem 1.6rem 1.6rem;
  border-radius: 0 0 1rem 1rem;
  background: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  letter-spacing: 0;
}
.c-trainer-card__shop {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.45;
  color: #EA5C2E;
}
.c-trainer-card__name {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .c-trainer-card__name {
    font-size: 2.5rem;
  }
}
.c-trainer-card__message {
  margin-top: 1rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .c-trainer-card__message {
    font-size: 1.6rem;
  }
}
.c-trainer-card__label {
  margin-top: 1rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1;
}
.c-trainer-card__tags {
  margin-top: 0.7rem;
}
.c-trainer-card__tag {
  display: table;
  padding: 0.4rem 0.5rem;
  border: 0.2rem solid #2E3754;
  border-radius: 0.4rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.45;
  white-space: nowrap;
}
.c-trainer-card__tag + .c-trainer-card__tag {
  margin-top: 0.7rem;
}
.c-trainer-card__tag--sm {
  font-size: 1.5rem;
}
.c-trainer-card__tags--row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem 1rem;
}
.c-trainer-card__tags--row .c-trainer-card__tag + .c-trainer-card__tag {
  margin-top: 0;
}
.c-trainer-card--simple .c-trainer-card__body {
  padding: 1rem 0.8rem;
}
.c-trainer-card--simple .c-trainer-card__message {
  margin-top: 0.8rem;
  font-size: 1.6rem;
  letter-spacing: 0;
}

.c-shop-card {
  padding: 4rem 3rem;
  border: 0.2rem solid #2E3754;
  background: #fff;
}
@media (max-width: 768px) {
  .c-shop-card {
    padding: 4rem 1.4rem;
  }
}
.c-shop-card__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}
.c-shop-card__name {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .c-shop-card__name {
    gap: 1rem;
    font-size: 2rem;
    letter-spacing: 0.1em;
  }
}
.c-shop-card__name img {
  flex-shrink: 0;
  width: 3.5rem;
  height: 3.5rem;
}
@media (max-width: 768px) {
  .c-shop-card__name img {
    width: 3rem;
    height: 3rem;
  }
}
.c-shop-card__badge {
  flex-shrink: 0;
  padding: 0.5rem 1rem;
  border-radius: 0.4rem;
  background: #EA5C2E;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
  color: #fff;
}
@media (max-width: 768px) {
  .c-shop-card__badge {
    font-size: 1.6rem;
  }
}
.c-shop-card__info {
  margin-top: 1.5rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .c-shop-card__info {
    font-size: 1.6rem;
    letter-spacing: 0.1em;
  }
}
.c-shop-card__row {
  display: flex;
  padding-bottom: 0.5rem;
  border-bottom: 0.1rem solid #2E3754;
}
@media (max-width: 768px) {
  .c-shop-card__row {
    padding-bottom: 0.6rem;
  }
}
.c-shop-card__row + .c-shop-card__row {
  margin-top: 0.6rem;
}
@media (max-width: 768px) {
  .c-shop-card__row + .c-shop-card__row {
    margin-top: 0.7rem;
  }
}
.c-shop-card__row dt {
  flex-shrink: 0;
  width: 10.9rem;
}
@media (max-width: 768px) {
  .c-shop-card__row dt {
    width: 11rem;
  }
}
.c-shop-card__row dd {
  flex: 1;
}
.c-shop-card__map {
  display: block;
  width: 100%;
  height: 29.3rem;
  margin-top: 1.5rem;
  border: 0;
  border-radius: 1rem;
  background: #d9d9d9;
}
@media (max-width: 768px) {
  .c-shop-card__map {
    height: 16.9rem;
  }
}
.c-shop-card__buttons {
  display: flex;
  justify-content: space-between;
  width: 57.4rem;
  margin: 1.5rem auto 0;
}
@media (max-width: 768px) {
  .c-shop-card__buttons {
    display: block;
    width: auto;
  }
}
.c-shop-card__buttons .c-btn-cta {
  width: 18.6rem;
  height: 3.8rem;
  padding: 0 1rem;
  font-size: 1.6rem;
}
@media (max-width: 768px) {
  .c-shop-card__buttons .c-btn-cta {
    display: flex;
    width: 100%;
    height: 5.8rem;
    margin-top: 1.6rem;
  }
}
.c-shop-card__buttons .c-btn-cta--tel {
  order: -1;
}
.c-shop-card__detail {
  display: flex;
  justify-content: space-between;
  width: 57.4rem;
  height: 5.9rem;
  margin: 1.5rem auto 0;
  padding: 0 2rem;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .c-shop-card__detail {
    width: 100%;
    height: 6rem;
    margin-top: 1.6rem;
    padding: 0 1.4rem;
    font-size: 1.7rem;
    letter-spacing: 0;
  }
}
.c-shop-card__detail .c-btn-cta__icon {
  width: 3rem;
  height: 3rem;
}

.c-shop-list {
  color: #2E3754;
}
.c-shop-list__area {
  padding: 0.5rem 3rem 0.5rem 7.15rem;
  background: #2E3754;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.45;
  color: #fffaf5;
}
@media (max-width: 768px) {
  .c-shop-list__area {
    padding-left: 1.4rem;
    font-size: 1.6rem;
  }
}
.c-shop-list .c-shop-card {
  border-bottom: 0;
  border-radius: 0;
}
.c-shop-list .c-shop-card:last-child {
  border-bottom: 0.2rem solid #2E3754;
  border-radius: 0 0 1rem 1rem;
}

.c-target {
  padding-top: 7.4rem;
  background: linear-gradient(#FFF9DA, #FFF9DA) 0 0/100% 47.3rem no-repeat, linear-gradient(180deg, rgba(234, 92, 46, 0.8), rgba(239, 166, 19, 0.8)) 0 47.3rem/100% calc(100% - 47.3rem) no-repeat;
}
@media (max-width: 768px) {
  .c-target {
    padding-top: 2.9rem;
    background: linear-gradient(#FFF9DA, #FFF9DA) 0 0/100% 54.3rem no-repeat, linear-gradient(180deg, rgba(234, 92, 46, 0.8), rgba(239, 166, 19, 0.8)) 0 54.3rem/100% calc(100% - 54.3rem) no-repeat;
  }
}
.c-target__box {
  position: relative;
  width: 112rem;
  margin-inline: auto;
  padding: 4rem 0 7rem;
}
@media (max-width: 768px) {
  .c-target__box {
    width: 35rem;
    padding: 4rem 1rem 5.7rem;
  }
}
.c-target__box-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  max-width: none;
  height: 100%;
}
.c-target__box-bg--sp {
  display: none;
}
@media (max-width: 768px) {
  .c-target__box-bg {
    display: none;
  }
  .c-target__box-bg--sp {
    display: block;
  }
}
.c-target .c-heading {
  position: relative;
}
.c-target__content {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 5.4rem;
  margin-top: 4.2rem;
}
@media (max-width: 768px) {
  .c-target__content {
    display: block;
    margin-top: 2rem;
  }
}
.c-target__content--wide {
  gap: 1.6rem;
}
.c-target__content--wide .c-target__list {
  width: 58.8rem;
}
@media (max-width: 768px) {
  .c-target__content--wide .c-target__list {
    width: auto;
  }
}
.c-target__img {
  flex-shrink: 0;
  width: 41.3rem;
  height: 27.4rem;
  border-radius: 0.4rem;
  object-fit: cover;
}
@media (max-width: 768px) {
  .c-target__img {
    width: 33rem;
    height: 17rem;
  }
}
.c-target__list {
  width: 49.3rem;
}
@media (max-width: 768px) {
  .c-target__list {
    width: auto;
    margin-top: 2rem;
  }
}
.c-target__item {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: #2E3754;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .c-target__item {
    font-size: 1.6rem;
    white-space: normal;
  }
}
.c-target__item + .c-target__item {
  margin-top: 1.6rem;
}
.c-target__item img {
  flex-shrink: 0;
  width: 3rem;
  height: 3rem;
}
.c-target--shop {
  padding-top: 4.9rem;
  background: linear-gradient(#FFF9DA, #FFF9DA) 0 0/100% 43.8rem no-repeat, linear-gradient(180deg, rgba(234, 92, 46, 0.8), rgba(239, 166, 19, 0.8)) 0 43.8rem/100% calc(100% - 43.8rem) no-repeat;
}
@media (max-width: 768px) {
  .c-target--shop {
    padding-top: 2.7rem;
  }
}
@media (max-width: 768px) {
  .c-target .c-reason--card .c-reason__box {
    padding-top: 1.6rem;
  }
}
.c-target--shop-lg {
  padding-top: 3.9rem;
}
.c-target--shop .c-reason--card .c-reason__box {
  padding-top: 4rem;
}
@media (max-width: 768px) {
  .c-target--sp-reason-tight .c-reason--card .c-reason__box {
    padding-top: 3rem;
  }
}
@media (max-width: 768px) {
  .c-target--shop .c-target__box .c-heading__main {
    gap: 1.2rem;
  }
  .c-target--shop .c-target__box .c-heading__text {
    line-height: 1.6;
  }
  .c-target--shop .c-target__box .c-heading__text::after {
    left: -5.7rem;
    right: -5.7rem;
  }
  .c-target--shop .c-target__item {
    gap: 1rem;
    letter-spacing: 0.06em;
  }
  .c-target--shop .c-target__box .c-heading__slash {
    width: 2.8rem;
    height: 2.93rem;
  }
  .c-target--pt-lg {
    padding-top: 4.2rem;
  }
  .c-target--shop-lg .c-reason--card .c-reason__box {
    margin-top: -1.1rem;
    padding-top: 0;
  }
  .c-target--shop .c-target__list--lg .c-target__item {
    gap: 0.9rem;
    font-size: 1.8rem;
    letter-spacing: 0.07em;
    text-align: center;
  }
}

.c-price {
  padding-top: 4rem;
}
.c-price__bg {
  padding: 6rem 0;
  background: linear-gradient(180deg, rgba(234, 92, 46, 0.8), rgba(239, 166, 19, 0.8));
  text-align: center;
}
@media (max-width: 768px) {
  .c-price__bg {
    padding: 4rem 0 6rem;
  }
}
.c-price__cards {
  display: flex;
  gap: 2rem;
  margin-top: 4rem;
  text-align: left;
}
@media (max-width: 768px) {
  .c-price__cards {
    display: block;
    margin-top: 3.3rem;
  }
}
.c-price__card {
  background: #fff;
  border-radius: 1rem;
  padding: 1.6rem 3rem;
}
@media (max-width: 768px) {
  .c-price__card {
    padding: 0.8rem 0;
  }
}
.c-price__card--main {
  width: 57.6rem;
  height: 20.4rem;
  padding: 4.3rem 2.4rem 0;
}
@media (max-width: 768px) {
  .c-price__card--main {
    width: auto;
    height: auto;
    padding: 1.6rem 0;
  }
}
.c-price__sub-cards {
  width: 52.4rem;
}
@media (max-width: 768px) {
  .c-price__sub-cards {
    width: auto;
    margin-top: 0.8rem;
  }
}
.c-price__sub-cards .c-price__card + .c-price__card {
  margin-top: 1rem;
}
@media (max-width: 768px) {
  .c-price__sub-cards .c-price__card + .c-price__card {
    margin-top: 0.8rem;
  }
}
.c-price__row {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  height: 6.5rem;
}
@media (max-width: 768px) {
  .c-price__row {
    gap: 1.6rem;
    height: 4.6rem;
  }
}
.c-price__tag {
  flex-shrink: 0;
  height: 4.8rem;
  padding: 0 0.8rem;
  border-radius: 0.4rem;
  background: #EA5C2E;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 4.8rem;
  letter-spacing: 0;
  color: #fff;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .c-price__tag {
    width: 7.6rem;
    height: 2.9rem;
    padding: 0;
    font-size: 1.4rem;
    line-height: 2.9rem;
    text-align: center;
  }
}
@media (max-width: 768px) {
  .c-price__card--main .c-price__tag {
    height: auto;
    padding: 0.2rem 0;
    font-size: 1.3rem;
    line-height: 1.45;
  }
}
.c-price__row--sub {
  align-items: flex-start;
  gap: 3.2rem;
  height: 6.6rem;
}
@media (max-width: 768px) {
  .c-price__row--sub {
    align-items: center;
    gap: 1.6rem;
    height: 4.6rem;
  }
}
.c-price__label {
  flex-shrink: 0;
  width: 9.6rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  letter-spacing: 0;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .c-price__label {
    width: auto;
  }
}
.c-price__en {
  display: block;
  padding: 0.4rem 0.8rem;
  border-radius: 0.4rem;
  background: #EA5C2E;
  font-size: 1.6rem;
  line-height: 2.3rem;
  color: #fff;
}
@media (max-width: 768px) {
  .c-price__en {
    display: none;
  }
}
.c-price__label .c-price__tag {
  display: block;
  height: auto;
  padding: 0;
  background: none;
  line-height: 3.5rem;
  color: #2E3754;
}
@media (max-width: 768px) {
  .c-price__label .c-price__tag {
    height: 2.9rem;
    background: #EA5C2E;
    line-height: 2.9rem;
    color: #fff;
  }
}
.c-price__row--sub .c-price__price {
  width: auto;
  font-size: 4.8rem;
  line-height: 6.5rem;
}
@media (max-width: 768px) {
  .c-price__row--sub .c-price__price {
    width: 22.1rem;
    font-size: 3.6rem;
    line-height: 1;
  }
}
.c-price__row--sub .c-price__tax {
  font-size: 2rem;
}
@media (max-width: 768px) {
  .c-price__row--sub .c-price__tax {
    font-size: 1.6rem;
  }
}
.c-price__price {
  width: 29.5rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 6.4rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0;
  color: #EA5C2E;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .c-price__price {
    width: 22.1rem;
    font-size: 3.6rem;
  }
}
.c-price__tax {
  margin-left: 0.4rem;
  font-size: 2.4rem;
}
@media (max-width: 768px) {
  .c-price__tax {
    font-size: 1.6rem;
  }
}
.c-price__detail {
  margin-top: 0.9rem;
  padding-top: 0.8rem;
  border-top: 1px solid #2E3754;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
  text-align: center;
  color: #2E3754;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .c-price__detail {
    width: 33rem;
    margin: 0.4rem auto 0;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
  }
}
.c-price__table {
  width: 100%;
  margin-top: 2rem;
  border-collapse: collapse;
  table-layout: fixed;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  letter-spacing: 0;
  text-align: left;
  color: #2E3754;
}
@media (max-width: 768px) {
  .c-price__table {
    display: none;
  }
}
.c-price__table th,
.c-price__table td {
  padding: 0 1rem;
  font-weight: 700;
  white-space: nowrap;
  vertical-align: middle;
}
.c-price__table thead th {
  height: 4.5rem;
  background: #2E3754;
  font-size: 2rem;
  color: #fff;
}
.c-price__table thead th:nth-child(1) {
  width: 24.4rem;
}
.c-price__table thead th:nth-child(2) {
  width: 8.6rem;
}
.c-price__table thead th:nth-child(3) {
  width: 28.5rem;
}
.c-price__table tbody th,
.c-price__table tbody td {
  height: 6rem;
  font-size: 2.4rem;
}
.c-price__table tbody tr:nth-child(odd) {
  background: #fff;
}
.c-price__table tbody tr:nth-child(even) {
  background: #FFF9DA;
}
.c-price__scroll {
  display: none;
}
@media (max-width: 768px) {
  .c-price__scroll {
    display: block;
    margin: 4rem -1.25rem 0 0;
    overflow-x: auto;
    text-align: left;
  }
}
.c-price__plans {
  display: flex;
  align-items: flex-end;
  gap: 1.2rem;
  width: max-content;
}
.c-price__labels {
  width: 9.7rem;
}
.c-price__plan {
  width: 20rem;
}
.c-price__plan-name {
  height: 6.2rem;
  padding-top: 1.5rem;
  border-radius: 1rem 1rem 0 0;
  background: #2E3754;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0.05em;
  text-align: center;
  color: #fff;
}
.c-price__plan-name:has(br) {
  padding-top: 0.25rem;
  line-height: 1.3;
}
.c-price__cell {
  background: #fff;
  border-bottom: 1px solid #2E3754;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
  text-align: center;
  color: #2E3754;
  white-space: nowrap;
}
.c-price__cell--time {
  height: 7rem;
  padding-top: 2.05rem;
}
.c-price__cell--fee {
  height: 7rem;
  padding-top: 0.6rem;
}
.c-price__cell--for {
  height: 10rem;
  padding-top: 2.1rem;
}
.c-price__cell--wrap {
  padding: 0.65rem 0.35rem 0;
  white-space: normal;
}
.c-price__labels .c-price__cell {
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  white-space: normal;
}
.c-price__labels .c-price__cell--time {
  padding-top: 2.35rem;
}
.c-price__labels .c-price__cell--fee {
  padding-top: 1.2rem;
}
.c-price__labels .c-price__cell--for {
  padding-top: 2.7rem;
}
.c-price__scroll-hint {
  display: none;
}
@media (max-width: 768px) {
  .c-price__scroll-hint {
    position: relative;
    display: block;
    height: 2.2rem;
    margin-top: 4rem;
    text-align: left;
    cursor: pointer;
    touch-action: none;
  }
  .c-price__scroll-hint::before {
    content: "";
    position: absolute;
    top: 1.03rem;
    left: 0;
    width: 35.7rem;
    height: 0.2rem;
    border-radius: 50rem;
    background: rgba(46, 55, 84, 0.5);
  }
  .c-price__scroll-hint img {
    position: relative;
    display: block;
    width: 5.6rem;
    height: 2.2rem;
  }
}
.c-price__more {
  margin-top: 4rem;
}
.c-price__more .c-btn-cta {
  width: 36.6rem;
}
@media (max-width: 768px) {
  .c-price__more .c-btn-cta {
    width: 35rem;
  }
}
.c-price__notes {
  margin-top: 4rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0;
  color: #2E3754;
}
@media (max-width: 768px) {
  .c-price__notes {
    font-size: 1.6rem;
    line-height: 1.6;
    letter-spacing: 0.05em;
    font-feature-settings: normal;
    text-align: left;
  }
}
.c-price--shop {
  padding: 0 0 7rem;
}
@media (max-width: 768px) {
  .c-price--shop {
    padding: 0;
  }
}
.c-price--shop .c-price__bg {
  width: 132rem;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .c-price--shop .c-price__bg {
    width: auto;
  }
}

.c-stats {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
@media (max-width: 768px) {
  .c-stats {
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.8rem 0;
    width: 35rem;
    margin-inline: auto;
  }
}
.c-stats__item {
  position: relative;
  height: 13rem;
  text-align: center;
  color: #2E3754;
}
@media (max-width: 768px) {
  .c-stats__item {
    height: 9.9rem;
  }
}
.c-stats__item--senior {
  width: 21.6rem;
}
.c-stats__item--chart {
  width: 19.5rem;
}
.c-stats__item--run {
  width: 24.4rem;
}
.c-stats__item--google {
  width: 20.8rem;
}
.c-stats__item--dumbbell {
  width: 22.3rem;
}
@media (max-width: 768px) {
  .c-stats__item--senior {
    width: 12rem;
  }
  .c-stats__item--chart {
    width: 10.3rem;
  }
  .c-stats__item--run {
    width: 12.7rem;
  }
  .c-stats__item--google {
    width: 12.7rem;
  }
  .c-stats__item--dumbbell {
    width: 13.4rem;
  }
}
.c-stats__laurel {
  position: absolute;
  bottom: 0;
  width: 3.4rem;
  height: 9rem;
}
@media (max-width: 768px) {
  .c-stats__laurel {
    width: 2.6rem;
    height: 8.45rem;
  }
}
.c-stats__laurel--l {
  left: 0;
}
.c-stats__laurel--r {
  right: 0;
}
.c-stats__icon {
  display: block;
  height: 4rem;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .c-stats__icon {
    height: 2.2rem;
  }
}
.c-stats__item--senior .c-stats__icon {
  width: 4.9rem;
  height: 4.13rem;
  transform: scaleX(-1);
}
@media (max-width: 768px) {
  .c-stats__item--senior .c-stats__icon {
    width: 3rem;
    height: 2.52rem;
  }
}
.c-stats__item--dumbbell .c-stats__icon {
  width: 6rem;
  height: 6rem;
  margin: -1rem auto;
}
@media (max-width: 768px) {
  .c-stats__item--dumbbell .c-stats__icon {
    width: 3rem;
    height: 3rem;
    margin: -0.4rem auto;
  }
}
.c-stats__num {
  margin-top: -0.3rem;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 6rem;
  font-weight: 700;
  line-height: 6rem;
  letter-spacing: 0.05em;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .c-stats__num {
    margin-top: 0;
    font-size: 4rem;
    line-height: 4.5rem;
  }
}
.c-stats__unit {
  font-size: 2.2rem;
}
@media (max-width: 768px) {
  .c-stats__unit {
    font-size: 1.3rem;
  }
}
@media (max-width: 768px) {
  .c-stats__unit--star {
    font-size: 2rem;
  }
}
.c-stats__label {
  margin-top: -0.6rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .c-stats__label {
    margin-top: 0;
    font-size: 1.3rem;
    line-height: 1.2;
  }
}

.c-form {
  width: 100rem;
  max-width: 100%;
  margin-inline: auto;
  color: #2E3754;
}
.c-form__row {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 768px) {
  .c-form__row {
    display: block;
  }
}
.c-form__row + .c-form__row {
  margin-top: 3rem;
}
@media (max-width: 768px) {
  .c-form__row + .c-form__row {
    margin-top: 2.4rem;
  }
}
.c-form__row:has(select), .c-form__row:has(textarea) {
  align-items: flex-start;
}
.c-form__label {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .c-form__label {
    font-size: 1.8rem;
  }
}
.c-form__badge {
  flex-shrink: 0;
  padding: 0.6rem 1.2rem;
  border-radius: 2rem;
  background: #D01120;
  font-size: 1.6rem;
  line-height: 1.45;
  color: #fff;
}
@media (max-width: 768px) {
  .c-form__badge {
    padding: 0.4rem 1rem;
    font-size: 1.4rem;
  }
}
.c-form__badge--optional {
  background: rgba(51, 51, 51, 0.6);
}
.c-form__field {
  position: relative;
  width: 60rem;
}
@media (max-width: 768px) {
  .c-form__field {
    width: auto;
    margin-top: 0.8rem;
  }
}
.c-form__field:has(select)::after {
  content: "";
  position: absolute;
  top: 2.45rem;
  right: 2.4rem;
  width: 2.4rem;
  height: 1.5rem;
  background: #2E3754;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  pointer-events: none;
}
@media (max-width: 768px) {
  .c-form__field:has(select)::after {
    top: 2rem;
    width: 1.6rem;
    height: 1rem;
  }
}
.c-form__field input,
.c-form__field select,
.c-form__field textarea {
  display: block;
  width: 100%;
  height: 6.4rem;
  padding: 0 2.4rem;
  border: 0;
  border-radius: 0;
  background: rgba(255, 249, 218, 0.5);
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.2rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: #2E3754;
  appearance: none;
}
@media (max-width: 768px) {
  .c-form__field input,
  .c-form__field select,
  .c-form__field textarea {
    height: 5.4rem;
    padding: 0 2.4rem;
    font-size: 1.6rem;
  }
}
.c-form__field input::placeholder,
.c-form__field select::placeholder,
.c-form__field textarea::placeholder {
  color: rgba(51, 51, 51, 0.3);
}
.c-form__field input:focus,
.c-form__field select:focus,
.c-form__field textarea:focus {
  outline: 0.2rem solid #2E3754;
  outline-offset: -0.2rem;
}
.c-form__field select {
  padding-right: 6rem;
  cursor: pointer;
}
.c-form__field select:has(option[value=""]:checked) {
  color: rgba(51, 51, 51, 0.3);
}
.c-form__field .c-form__textarea--tall {
  height: 11rem;
}
@media (max-width: 768px) {
  .c-form__field .c-form__textarea--tall {
    height: 10rem;
  }
}
.c-form__field textarea {
  height: 5.8rem;
  min-height: 5.8rem;
  padding-block: 1.4rem;
  line-height: 1.4;
  resize: vertical;
}
@media (max-width: 768px) {
  .c-form__field textarea {
    height: 5rem;
    min-height: 5rem;
    padding-block: 1.2rem;
  }
}
.c-form__note {
  margin-top: 5rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: center;
}
@media (max-width: 768px) {
  .c-form__note {
    margin-top: 4rem;
    font-size: 1.6rem;
  }
}
.c-form__agree {
  margin-top: 2.4rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: center;
}
@media (max-width: 768px) {
  .c-form__agree {
    font-size: 1.6rem;
  }
}
.c-form__agree label {
  display: inline-flex;
  align-items: center;
  gap: 1.6rem;
  cursor: pointer;
}
.c-form__agree input[type=checkbox] {
  flex-shrink: 0;
  width: 2.4rem;
  height: 2.4rem;
  border: 0.2rem solid #2E3754;
  border-radius: 0.4rem;
  background: #fff;
  appearance: none;
  cursor: pointer;
}
.c-form__agree input[type=checkbox]:checked {
  background: #2E3754 url("assets/img/common/icon-check.svg") center/1.4rem 1.1rem no-repeat;
}
.c-form__agree input[type=checkbox]:focus-visible {
  outline: 0.2rem solid #2E3754;
  outline-offset: 0.2rem;
}
.c-form__agree a {
  text-decoration: underline;
}
.c-form__submit {
  margin-top: 4rem;
  text-align: center;
}
.c-form__submit .c-btn-cta {
  width: 19.1rem;
  border: 0;
  cursor: pointer;
}
.c-form .wpcf7-form-control-wrap {
  display: block;
}
.c-form .wpcf7-not-valid-tip {
  display: block;
  margin-top: 0.6rem;
  font-size: 1.6rem;
  font-weight: 700;
  color: #D01120;
}
@media (max-width: 768px) {
  .c-form .wpcf7-not-valid-tip {
    font-size: 1.4rem;
  }
}
.c-form .wpcf7-list-item {
  margin: 0;
}
.c-form .wpcf7-spinner {
  display: none;
}
.c-form .wpcf7-response-output {
  margin-top: 3rem;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
}
@media (max-width: 768px) {
  .c-form .wpcf7-response-output {
    font-size: 1.6rem;
  }
}
.c-form .wpcf7-form.invalid .wpcf7-response-output,
.c-form .wpcf7-form.failed .wpcf7-response-output,
.c-form .wpcf7-form.unaccepted .wpcf7-response-output {
  color: #D01120;
}
.c-form .screen-reader-response {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
}
.c-form .hidden-fields-container {
  display: none;
}

.c-mvv {
  padding-bottom: 8rem;
}
@media (max-width: 768px) {
  .c-mvv {
    padding: 6rem 0;
  }
}
.c-mvv__row {
  display: flex;
  align-items: center;
  gap: 4rem;
  width: 112rem;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .c-mvv__row {
    display: block;
    width: 35rem;
  }
}
.c-mvv__row + .c-mvv__row {
  margin-top: 4rem;
}
.c-mvv__row--rev {
  flex-direction: row-reverse;
}
.c-mvv__img {
  flex-shrink: 0;
  width: 44.2rem;
  height: 32rem;
  border-radius: 1rem;
  overflow: hidden;
}
.c-mvv__img--tall {
  height: 32.2rem;
}
.c-mvv__img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 768px) {
  .c-mvv__img {
    width: 35rem;
    height: 18rem;
  }
  .c-mvv__img--tall {
    height: 18.1rem;
  }
}
.c-mvv__body {
  flex: 1;
}
@media (max-width: 768px) {
  .c-mvv__body {
    margin-top: 2rem;
  }
}
.c-mvv__block + .c-mvv__block {
  margin-top: 2.4rem;
}
@media (max-width: 768px) {
  .c-mvv__block + .c-mvv__block {
    margin-top: 2rem;
  }
}
.c-mvv__label {
  display: flex;
  align-items: center;
  gap: 1rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .c-mvv__label {
    justify-content: center;
  }
}
.c-mvv__label img {
  width: 3rem;
  height: 3rem;
}
.c-mvv__title {
  margin-top: 0.4rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .c-mvv__title {
    font-size: 2.4rem;
    text-align: center;
  }
}
.c-mvv__text {
  margin-top: 2rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.05em;
  color: #2E3754;
}
@media (max-width: 768px) {
  .c-mvv__text--sm {
    font-size: 1.6rem;
  }
}

.c-post-card {
  display: block;
  border-radius: 1rem;
  overflow: hidden;
  text-align: left;
  color: #2E3754;
}
.c-post-card__img {
  display: block;
  width: 100%;
  height: 20rem;
  object-fit: cover;
}
.c-post-card__img--none {
  background: #d9d9d9;
}
.c-post-card__body {
  height: 15.5rem;
  padding: 1rem 1.6rem;
  background: #fff;
}
.c-post-card__tags {
  display: flex;
  gap: 0.8rem;
  overflow: hidden;
}
.c-post-card__tag {
  flex-shrink: 0;
  padding: 0.3rem 0.5rem;
  border-radius: 5rem;
  background: #2E3754;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
  color: #fff;
}
.c-post-card__title {
  display: -webkit-box;
  margin-top: 0.8rem;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
}
.c-post-card__date {
  display: block;
  margin-top: 0.8rem;
  font-family: "Futura", "Noto Sans JP", sans-serif;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  color: #EA5C2E;
}

.c-breadcrumb {
  padding: 1rem 4rem;
}
@media (max-width: 768px) {
  .c-breadcrumb {
    padding: 1rem 1.6rem;
  }
}
.c-breadcrumb__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.8rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 2rem;
  color: #2E3754;
}
.c-breadcrumb__item {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.c-breadcrumb__sep {
  width: 0.9rem;
  height: 1rem;
}
.c-breadcrumb a {
  transition: opacity 0.2s;
}
.c-breadcrumb a:hover {
  opacity: 0.7;
}

.c-hamburger {
  display: none;
}
@media (max-width: 768px) {
  .c-hamburger {
    display: block;
    width: 3.6rem;
    padding: 0;
    background: none;
    border: 0;
    cursor: pointer;
    text-align: center;
  }
}
.c-hamburger__icon {
  position: relative;
  display: block;
  width: 2.4rem;
  height: 2.4rem;
  margin-inline: auto;
  border-radius: 0.4rem;
}
.js-drawer-open .c-hamburger__icon {
  background: linear-gradient(137deg, #EA5C2E 0.2%, #EFA613 97.4%);
  box-shadow: 0 0.5rem 0.5rem rgba(40, 40, 40, 0.15);
}
.c-hamburger__img {
  position: absolute;
  max-width: none;
}
.c-hamburger__img--open {
  top: -0.5rem;
  left: -1rem;
  width: 4.4rem;
  height: 4.4rem;
}
.c-hamburger__img--close {
  display: none;
  top: 0.5rem;
  right: 0.2rem;
  width: 2rem;
  height: 1.4rem;
}
.js-drawer-open .c-hamburger__img--open {
  display: none;
}
.js-drawer-open .c-hamburger__img--close {
  display: block;
}
.c-hamburger__label {
  display: block;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.1rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
  color: #2E3754;
}
.c-hamburger__label--close {
  display: none;
}
.js-drawer-open .c-hamburger__label--open {
  display: none;
}
.js-drawer-open .c-hamburger__label--close {
  display: block;
}

.p-top-fv {
  position: relative;
  overflow-x: clip;
}
@media (max-width: 768px) {
  .p-top-fv {
    padding-top: 6.2rem;
  }
}
.p-top-fv__photos {
  display: flex;
  height: 55.2rem;
}
@media (max-width: 768px) {
  .p-top-fv__photos {
    display: block;
    height: auto;
  }
}
.p-top-fv__photo {
  display: block;
  width: 50%;
}
@media (max-width: 768px) {
  .p-top-fv__photo {
    width: 100%;
    height: 22rem;
  }
  .p-top-fv__photo + .p-top-fv__photo {
    height: 24.7rem;
  }
}
.p-top-fv__photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-top-fv__arc {
  position: absolute;
  top: 44.2rem;
  left: -19.6rem;
  width: calc(100% + 39.2rem);
  max-width: none;
  height: 26.2rem;
}
@media (max-width: 768px) {
  .p-top-fv__arc {
    top: 49.8rem;
    left: -11.25rem;
    width: 60rem;
    height: 8.6rem;
  }
}
.p-top-fv__body {
  position: relative;
  margin-top: -11rem;
  padding: 4rem 0;
  text-align: center;
}
@media (max-width: 768px) {
  .p-top-fv__body {
    margin-top: -3.1rem;
    padding: 4rem 0.9rem;
  }
}
.p-top-fv__catch {
  position: relative;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 4.8rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
}
@media (max-width: 768px) {
  .p-top-fv__catch {
    font-size: 2.5rem;
  }
}
.p-top-fv__catch-text {
  display: inline-block;
  background: linear-gradient(94deg, #EA5C2E 10.9%, #EFA613 84.6%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.p-top-fv__bracket {
  position: absolute;
  width: 2.4rem;
  height: 3.05rem;
}
@media (max-width: 768px) {
  .p-top-fv__bracket {
    width: 1.18rem;
    height: 1.5rem;
  }
}
.p-top-fv__bracket--l {
  top: 0.5rem;
  left: calc(50% - 32rem);
}
@media (max-width: 768px) {
  .p-top-fv__bracket--l {
    top: 0;
    left: calc(50% - 16.15rem);
  }
}
.p-top-fv__bracket--r {
  top: 3.9rem;
  left: calc(50% + 27rem);
  transform: rotate(180deg);
}
@media (max-width: 768px) {
  .p-top-fv__bracket--r {
    top: 2.1rem;
    left: calc(50% + 15.05rem);
  }
}
.p-top-fv__lead {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.03em;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-top-fv__lead {
    margin-top: 0.8rem;
    font-size: 1.8rem;
  }
}

.p-top-medical {
  padding: 8rem 0;
}
@media (max-width: 768px) {
  .p-top-medical {
    padding: 6rem 0;
  }
  .p-top-medical .l-inner08 {
    padding-inline: 0;
  }
}
.p-top-medical__intro {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 768px) {
  .p-top-medical__intro {
    display: block;
  }
}
.p-top-medical__body {
  width: 52.3rem;
}
@media (max-width: 768px) {
  .p-top-medical__body {
    width: 100%;
    padding: 2rem;
    text-align: center;
  }
}
.p-top-medical__logo {
  line-height: 0;
}
.p-top-medical__logo img {
  width: 4.5rem;
  height: 4.5rem;
}
@media (max-width: 768px) {
  .p-top-medical__logo img {
    width: 2.2rem;
    height: 2.2rem;
  }
}
.p-top-medical__title {
  margin-top: 0.4rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
  color: #EA5C2E;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .p-top-medical__title {
    font-size: 2.5rem;
  }
}
.p-top-medical__text {
  margin-top: 2rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-top-medical__text {
    margin-top: 1rem;
    font-size: 1.8rem;
  }
}
.p-top-medical__more {
  margin-top: 4rem;
}
.p-top-medical__more .c-btn-cta {
  width: 33.1rem;
}
@media (max-width: 768px) {
  .p-top-medical__more .c-btn-cta {
    width: 34.5rem;
  }
}
.p-top-medical__photo {
  width: 54.7rem;
  height: 31.8rem;
  border-radius: 1rem;
  overflow: hidden;
  line-height: 0;
}
@media (max-width: 768px) {
  .p-top-medical__photo {
    width: 100%;
    height: 21.8rem;
    border-radius: 0;
  }
}
.p-top-medical__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-top-medical__stats {
  margin-top: 4rem;
}
@media (max-width: 768px) {
  .p-top-medical__stats {
    margin-top: 2rem;
  }
}

.p-top-manga {
  padding-bottom: 8rem;
}
@media (max-width: 768px) {
  .p-top-manga {
    padding-bottom: 6rem;
  }
}
.p-top-manga__img {
  max-width: 79.3rem;
  margin-inline: auto;
  line-height: 0;
}
.p-top-manga__img img {
  width: 100%;
  height: auto;
}

.p-top-dream {
  padding: 4rem 0;
}
.p-top-dream .c-dream-copy {
  line-height: 0.807;
}
@media (max-width: 768px) {
  .p-top-dream .c-dream-copy {
    line-height: 1;
  }
}
.p-top-dream--tight {
  padding: 0;
}
.p-top-dream--tight .c-dream-copy {
  line-height: 1.107;
}
@media (max-width: 768px) {
  .p-top-dream--tight .c-dream-copy {
    line-height: 1;
  }
}
@media (max-width: 768px) {
  .p-top-dream--tight {
    padding: 4rem 0 0;
  }
}

.p-top-worry {
  padding-top: 5rem;
  background: linear-gradient(#f5f5f5, #f5f5f5) 0 0/100% 56.7rem no-repeat, linear-gradient(180deg, rgba(234, 92, 46, 0.8), rgba(239, 166, 19, 0.8)) 0 56.3rem/100% calc(100% - 56.3rem) no-repeat;
}
@media (max-width: 768px) {
  .p-top-worry {
    padding-top: 1.7rem;
    background: linear-gradient(#f5f5f5, #f5f5f5) 0 0/100% 35.3rem no-repeat, linear-gradient(180deg, rgba(234, 92, 46, 0.8), rgba(239, 166, 19, 0.8)) 0 35.3rem/100% calc(100% - 35.3rem) no-repeat;
  }
}
.p-top-worry__box {
  position: relative;
  width: 111.9rem;
  margin-inline: auto;
  padding: 5.4rem 0 8rem;
  text-align: center;
}
@media (max-width: 768px) {
  .p-top-worry__box {
    width: 35rem;
    padding: 2rem 0.8rem 4.6rem;
    text-align: left;
  }
}
.p-top-worry__box-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  max-width: none;
  height: 100%;
}
.p-top-worry__box-bg--sp {
  display: none;
}
@media (max-width: 768px) {
  .p-top-worry__box-bg {
    display: none;
  }
  .p-top-worry__box-bg--sp {
    display: block;
  }
}
.p-top-worry__title {
  position: relative;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.8rem;
  font-weight: 900;
  line-height: 1.45;
  letter-spacing: 0.05em;
  text-align: center;
  color: #2E3754;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .p-top-worry__title {
    font-size: 2rem;
  }
}
.p-top-worry__em {
  position: relative;
  display: inline-block;
  margin: 0 0.8rem;
  font-size: 3.6rem;
}
@media (max-width: 768px) {
  .p-top-worry__em {
    margin: 0 0.4rem;
    font-size: 2.8rem;
  }
}
.p-top-worry__em::after {
  content: "";
  position: absolute;
  top: 4.4rem;
  left: -0.3rem;
  width: 11.5rem;
  height: 0.8rem;
  border-radius: 0.1rem;
  background: #EFA613;
}
@media (max-width: 768px) {
  .p-top-worry__em::after {
    top: 3.7rem;
    left: 0;
    width: 8.7rem;
  }
}
.p-top-worry__em-text {
  position: relative;
  z-index: 1;
}
.p-top-worry__dots {
  position: absolute;
  top: -0.5rem;
  left: 1.2rem;
  width: 8.8rem;
  height: 1rem;
}
@media (max-width: 768px) {
  .p-top-worry__dots {
    top: -0.3rem;
    left: 1.1rem;
    width: 6.6rem;
    height: 0.6rem;
  }
}
.p-top-worry__list {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 4rem 7.3rem;
  width: 101.9rem;
  margin: 4rem auto 0;
}
@media (max-width: 768px) {
  .p-top-worry__list {
    display: block;
    width: auto;
    margin-top: 2.4rem;
  }
}
.p-top-worry__item {
  width: 20rem;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-top-worry__item {
    width: auto;
  }
  .p-top-worry__item + .p-top-worry__item {
    margin-top: 1.6rem;
  }
}
.p-top-worry__img {
  display: block;
  width: 100%;
  height: 11.5rem;
  border-radius: 0.4rem;
  object-fit: cover;
  filter: brightness(0.65);
}
@media (max-width: 768px) {
  .p-top-worry__img {
    display: none;
  }
}
.p-top-worry__label {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 0.8rem;
  margin-top: 0.8rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
  text-align: left;
}
@media (max-width: 768px) {
  .p-top-worry__label {
    justify-content: flex-start;
    align-items: center;
    margin-top: 0;
    font-size: 1.8rem;
    white-space: nowrap;
  }
}
.p-top-worry__label span {
  width: 17.8rem;
}
@media (max-width: 768px) {
  .p-top-worry__label span {
    width: auto;
  }
}
.p-top-worry__label--single span {
  width: auto;
}
.p-top-worry__icon {
  flex-shrink: 0;
  width: auto;
  height: 2.6rem;
  margin-top: 0.5rem;
}
@media (max-width: 768px) {
  .p-top-worry__icon {
    width: 2rem;
    height: 2rem;
    margin-top: 0;
    object-fit: contain;
  }
}
.p-top-worry__icon--shoe {
  height: 1.6rem;
  transform: rotate(-90deg);
}
.p-top-worry__support {
  margin-top: 0.7rem;
  padding: 8rem 0;
}
@media (max-width: 768px) {
  .p-top-worry__support {
    margin-top: -2.9rem;
    padding: 6rem 0;
  }
}
.p-top-worry__cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 2rem 0;
  margin-top: 4rem;
}
@media (max-width: 768px) {
  .p-top-worry__cards {
    gap: 2rem 1rem;
    margin-inline: -0.5rem;
  }
}
.p-top-worry__card {
  width: 55rem;
  padding: 1.6rem;
  border-radius: 0.4rem;
  background: #fff;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-top-worry__card {
    width: 17.5rem;
    padding: 1.5rem 0.8rem;
  }
}
.p-top-worry__card--wide {
  width: 100%;
}
@media (max-width: 768px) {
  .p-top-worry__card--wide {
    padding: 1.5rem 2rem;
  }
}
.p-top-worry__card-title {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .p-top-worry__card-title {
    display: block;
    font-size: 1.8rem;
    text-align: center;
    white-space: normal;
  }
}
.p-top-worry__card-icon {
  flex-shrink: 0;
  width: 4rem;
  height: 4rem;
}
@media (max-width: 768px) {
  .p-top-worry__card-icon {
    display: block;
    width: 2.4rem;
    height: 2.4rem;
    margin: 0 auto 0.4rem;
  }
}
.p-top-worry__card-icon--chart {
  width: 3.33rem;
  height: 3.33rem;
  margin: 0.33rem;
}
@media (max-width: 768px) {
  .p-top-worry__card-icon--chart {
    width: 2rem;
    height: 2rem;
    margin: 0.2rem auto 0.6rem;
  }
}
.p-top-worry__card-text {
  margin-top: 0.8rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-top-worry__card-text {
    font-size: 1.6rem;
    line-height: 1.6;
  }
}
.p-top-worry__options {
  display: flex;
  justify-content: space-between;
  margin-top: 0.8rem;
}
@media (max-width: 768px) {
  .p-top-worry__options {
    display: block;
    margin-top: 1rem;
    text-align: center;
  }
}
.p-top-worry__options dt {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-top-worry__options dt {
    font-size: 1.6rem;
  }
}
.p-top-worry__options dd {
  margin-top: 0.4rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-top-worry__options dd {
    font-size: 1.6rem;
  }
}
.p-top-worry__option {
  width: 24rem;
  padding-right: 1rem;
  border-right: 1px solid #2E3754;
}
.p-top-worry__option:last-child {
  width: 24.5rem;
  padding-right: 0;
  border-right: 0;
}
@media (max-width: 768px) {
  .p-top-worry__option, .p-top-worry__option:last-child {
    width: auto;
    padding: 0 0 1rem;
    border-right: 0;
    border-bottom: 1px solid #2E3754;
  }
  .p-top-worry__option + .p-top-worry__option {
    margin-top: 1rem;
  }
}

.p-top-voice {
  padding: 8rem 0;
  text-align: center;
}
@media (max-width: 768px) {
  .p-top-voice {
    padding: 6rem 0;
  }
}
.p-top-voice__widget {
  width: 120.4rem;
  min-height: 16.7rem;
  margin: 4rem auto 0;
}
@media (max-width: 768px) {
  .p-top-voice__widget {
    width: 35rem;
    min-height: 16.2rem;
    margin-top: 2rem;
    overflow: hidden;
  }
}
.p-top-voice__more {
  margin-top: 4rem;
}
.p-top-voice__more .c-btn-cta {
  width: 35.1rem;
}
@media (max-width: 768px) {
  .p-top-voice__more .c-btn-cta {
    width: 34.5rem;
  }
}

.p-top-ba {
  padding-bottom: 6rem;
}
@media (max-width: 768px) {
  .p-top-ba {
    padding-bottom: 0;
  }
}
.p-top-ba__box {
  width: 131.2rem;
  margin-inline: auto;
  padding: 4rem 0 8rem;
  border-radius: 1rem;
  background: linear-gradient(180deg, rgba(234, 92, 46, 0.8), rgba(239, 166, 19, 0.8));
  text-align: center;
}
@media (max-width: 768px) {
  .p-top-ba__box {
    width: auto;
    padding: 4.3rem 0 6rem;
  }
}
.p-top-ba__slider {
  width: 112rem;
  margin: 4rem auto 0;
}
@media (max-width: 768px) {
  .p-top-ba__slider {
    width: 35rem;
    margin-top: 3rem;
  }
}
.p-top-ba__more {
  margin-top: 4rem;
}
.p-top-ba__more .c-btn-cta {
  width: 39.1rem;
}
@media (max-width: 768px) {
  .p-top-ba__more .c-btn-cta {
    width: 34.5rem;
  }
}

.p-top-column {
  padding: 8rem 0;
  background: #fff;
  text-align: center;
}
@media (max-width: 768px) {
  .p-top-column {
    padding: 6rem 0;
  }
}
.p-top-column .c-heading {
  padding-top: 0;
}
.p-top-column__list {
  display: flex;
  justify-content: space-between;
  width: 111.8rem;
  margin: 4rem auto 0;
  text-align: left;
}
@media (max-width: 768px) {
  .p-top-column__list {
    display: block;
    width: 35rem;
  }
}
.p-top-column__item {
  width: 35rem;
}
@media (max-width: 768px) {
  .p-top-column__item + .p-top-column__item {
    margin-top: 2rem;
  }
}
.p-top-column__empty {
  margin-top: 4rem;
  font-size: 1.8rem;
  color: #2E3754;
}
.p-top-column__more {
  margin-top: 4rem;
}
.p-top-column__more .c-btn-cta {
  width: 35.1rem;
}
@media (max-width: 768px) {
  .p-top-column__more .c-btn-cta {
    width: 34.5rem;
  }
}

.p-about-flow {
  padding: 6rem 0;
}
@media (max-width: 768px) {
  .p-about-flow {
    padding: 0;
  }
}

.p-trainer {
  padding: 0.2rem 0 10rem;
}
@media (max-width: 768px) {
  .p-trainer {
    padding: 6rem 0 4rem;
  }
}
.p-trainer__list {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 6rem 3.25rem;
  width: 111.5rem;
  margin: 6.2rem auto 0;
}
@media (max-width: 768px) {
  .p-trainer__list {
    display: block;
    width: 35rem;
  }
}
.p-trainer__card {
  width: 35rem;
  color: #2E3754;
}
.p-trainer__card[hidden] {
  display: none;
}
@media (max-width: 768px) {
  .p-trainer__card + .p-trainer__card {
    margin-top: 4rem;
  }
}
@media (max-width: 768px) {
  .p-trainer__card.is-first {
    margin-top: 0;
  }
}
.p-trainer__empty {
  width: 112rem;
  margin: 6rem auto 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
}
.p-trainer__empty[hidden] {
  display: none;
}
@media (max-width: 768px) {
  .p-trainer__empty {
    width: 33rem;
  }
}

.p-plan-trial {
  padding-bottom: 4rem;
}
@media (max-width: 768px) {
  .p-plan-trial {
    padding-bottom: 0;
  }
}
.p-plan-trial__box {
  width: 112rem;
  margin-inline: auto;
  padding: 4rem 12rem;
  border-radius: 1rem;
  background: linear-gradient(112deg, rgba(234, 92, 46, 0.8) 0.7%, rgba(239, 166, 19, 0.8) 100%);
}
@media (max-width: 768px) {
  .p-plan-trial__box {
    width: 35rem;
    padding: 2rem 2.5rem;
    background: linear-gradient(93deg, rgba(234, 92, 46, 0.8), rgba(239, 166, 19, 0.8));
  }
  .p-plan-trial__box .c-heading__sub {
    font-size: 1.6rem;
  }
}
.p-plan-trial__card {
  width: 72.4rem;
  margin: 2rem auto 0;
  padding: 2.4rem;
  border-radius: 1rem;
  background: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-plan-trial__card {
    width: 33rem;
    margin: 1.3rem -1.5rem 0;
    padding: 1.6rem 1rem;
  }
}
.p-plan-trial__head {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 2rem;
  height: 7.4rem;
}
@media (max-width: 768px) {
  .p-plan-trial__head {
    justify-content: flex-start;
    gap: 2.2rem;
    height: auto;
    padding-bottom: 0;
  }
}
.p-plan-trial__label {
  height: 4.8rem;
  margin-top: 0.85rem;
  padding: 0.4rem 0.8rem;
  border-radius: 0.4rem;
  background: #EA5C2E;
  font-size: 2.4rem;
  line-height: 4rem;
  color: #fff;
}
@media (max-width: 768px) {
  .p-plan-trial__label {
    width: 7.6rem;
    height: auto;
    margin-top: 0;
    padding: 0;
    background: none;
    font-size: 1.6rem;
    line-height: 1.2;
    text-align: center;
    color: #2E3754;
  }
}
.p-plan-trial__badge, .p-plan-trial__label-sp {
  display: none;
}
@media (max-width: 768px) {
  .p-plan-trial__badge, .p-plan-trial__label-sp {
    display: block;
  }
}
@media (max-width: 768px) {
  .p-plan-trial__badge {
    width: 8.6rem;
    margin-inline: -0.5rem;
    padding: 0.2rem 0;
    border-radius: 0.4rem;
    background: #EA5C2E;
    font-size: 1.3rem;
    line-height: 1.3;
    color: #fff;
  }
}
.p-plan-trial__price {
  margin-top: -1.6rem;
  font-size: 6.4rem;
  font-weight: 900;
  line-height: 1.45;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .p-plan-trial__price {
    margin-top: 0;
    font-size: 3.6rem;
  }
}
.p-plan-trial__tax {
  margin-left: 0.4rem;
  font-size: 2.4rem;
}
@media (max-width: 768px) {
  .p-plan-trial__tax {
    font-size: 1.6rem;
  }
}
.p-plan-trial__list {
  padding: 0.8rem 0 0 8.6rem;
  border-top: 0.1rem solid #2E3754;
  font-size: 2.4rem;
  line-height: 1.45;
}
@media (max-width: 768px) {
  .p-plan-trial__list {
    padding-left: 0.1rem;
    font-size: 1.4rem;
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
}
.p-plan-trial__cta {
  margin-top: 2rem;
}
@media (max-width: 768px) {
  .p-plan-trial__cta {
    margin-inline: -1.5rem;
  }
  .p-plan-trial__cta .c-cta-note__text {
    font-size: 1.6rem;
  }
  .p-plan-trial__cta .c-btn-cta--line {
    width: 31rem;
  }
  .p-plan-trial__cta .c-btn-cta--navy {
    width: 32rem;
  }
}

@media (max-width: 768px) {
  .p-plan-gallery .c-gallery {
    padding: 6rem 0 0;
  }
}

.p-plan-course {
  width: 143.9rem;
  margin-inline: auto;
  padding: 8rem 0;
  border-radius: 1rem;
  background: linear-gradient(180deg, rgba(234, 92, 46, 0.8), rgba(239, 166, 19, 0.8));
}
@media (max-width: 768px) {
  .p-plan-course {
    width: auto;
    padding: 6.4rem 0 6rem;
    border-radius: 0;
  }
}
.p-plan-course__nav {
  display: none;
}
@media (max-width: 768px) {
  .p-plan-course__nav {
    display: flex;
    flex-wrap: wrap;
    gap: 1.6rem;
    width: 35rem;
    margin: 2.9rem auto 0;
  }
}
.p-plan-course__nav li {
  width: 16.7rem;
}
.p-plan-course__nav-link {
  display: block;
  height: 6.4rem;
  padding: 2.2rem 1rem;
  border-radius: 1rem;
  background: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.45;
  text-align: center;
  color: #2E3754;
}
.p-plan-course__nav-link.is-current {
  background: #2E3754;
  color: #fff;
}
.p-plan-course__list {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 2rem;
  width: 134rem;
  margin: 6rem auto 0;
}
@media (max-width: 768px) {
  .p-plan-course__list {
    display: block;
    width: 35rem;
    margin-top: 4rem;
  }
}
.p-plan-course__card {
  position: relative;
  width: 32rem;
  min-height: 76.7rem;
  padding: 4rem 1.6rem;
  border-radius: 1rem;
  background: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-plan-course__card {
    width: auto;
    min-height: 0;
    scroll-margin-top: 8rem;
  }
  .p-plan-course__card + .p-plan-course__card {
    margin-top: 2rem;
  }
}
.p-plan-course__badge {
  position: absolute;
  top: 0;
  left: 50%;
  width: 15rem;
  padding: 0.4rem 1.6rem;
  border-radius: 0 0 0.8rem 0.8rem;
  background: #2E3754;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
  text-align: center;
  color: #fff;
  transform: translateX(-50%);
}
@media (max-width: 768px) {
  .p-plan-course__badge {
    width: 9.6rem;
    padding-inline: 0;
    font-size: 1.6rem;
  }
}
.p-plan-course__name {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.4rem;
  height: 4.1rem;
  font-size: 2.4rem;
  font-weight: 900;
  letter-spacing: 0.05em;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .p-plan-course__name {
    font-size: 2rem;
  }
}
.p-plan-course__slash {
  width: 2rem;
  height: 2.09rem;
}
.p-plan-course__slash--l {
  transform: rotate(-176.85deg) scaleY(-1);
}
.p-plan-course__slash--r {
  transform: rotate(-3.15deg);
}
.p-plan-course__target {
  height: 8.7rem;
  margin-top: 2rem;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
  text-align: center;
}
.p-plan-course__target--2line {
  padding-top: 1.45rem;
}
.p-plan-course__target--1line {
  padding-top: 2.9rem;
}
@media (max-width: 768px) {
  .p-plan-course__target {
    height: auto;
    padding-top: 0;
    font-size: 1.6rem;
  }
}
.p-plan-course__desc {
  margin-top: 2rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.45;
}
@media (max-width: 768px) {
  .p-plan-course__desc {
    font-size: 1.6rem;
    letter-spacing: 0.02em;
    text-align: center;
  }
}
.p-plan-course__prices {
  margin-top: 2rem;
}
.p-plan-course__price {
  padding: 0.4rem 1.6rem;
  border-radius: 0.4rem;
  background: #FFF9DA;
  font-weight: 700;
  line-height: 1.45;
  text-align: center;
}
.p-plan-course__price + .p-plan-course__price {
  margin-top: 0.8rem;
}
.p-plan-course__price-main {
  display: flex;
  justify-content: center;
  gap: 4rem;
  padding-bottom: 0.8rem;
  border-bottom: 0.1rem solid #2E3754;
  font-size: 3.2rem;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .p-plan-course__price-main {
    font-size: 2.4rem;
  }
}
.p-plan-course__price-per {
  font-size: 1.8rem;
  color: rgba(46, 55, 84, 0.8);
}
@media (max-width: 768px) {
  .p-plan-course__price-per {
    font-size: 1.6rem;
  }
}
.p-plan-course__note {
  margin-top: 2rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.45;
}
@media (max-width: 768px) {
  .p-plan-course__note {
    font-size: 1.6rem;
    text-align: center;
  }
}
.p-plan-course__free {
  margin-top: 2rem;
  font-weight: 700;
  line-height: 1.45;
}
.p-plan-course__free--sp {
  display: none;
}
@media (max-width: 768px) {
  .p-plan-course__free--pc {
    display: none;
  }
  .p-plan-course__free--sp {
    display: block;
    margin-inline: -0.2rem;
  }
}
.p-plan-course__free-label {
  padding: 0.2rem 1rem;
  border-radius: 0.4rem;
  background: #2E3754;
  font-size: 2rem;
  text-align: center;
  color: #fff;
}
@media (max-width: 768px) {
  .p-plan-course__free-label {
    font-size: 1.4rem;
  }
}
.p-plan-course__free-text {
  margin-top: 0.4rem;
  font-size: 2rem;
}
@media (max-width: 768px) {
  .p-plan-course__free-text {
    margin: 0 -0.2rem;
    font-size: 1.4rem;
    text-align: center;
    white-space: nowrap;
  }
}
.p-plan-course__cta {
  display: none;
}
@media (max-width: 768px) {
  .p-plan-course__cta {
    display: block;
    margin-top: 2rem;
  }
}
.p-plan-course__cta .c-btn-cta {
  display: flex;
  width: 100%;
  height: 4.5rem;
  font-size: 1.6rem;
}
.p-plan-course__cta .c-btn-cta + .c-btn-cta {
  margin-top: 1.6rem;
}
.p-plan-course__option {
  width: 84rem;
  margin: 4rem auto 0;
  padding-top: 4rem;
}
@media (max-width: 768px) {
  .p-plan-course__option {
    width: auto;
    padding: 4rem 0;
    border-radius: 0.4rem;
    background: #fff;
  }
}
.p-plan-course__option-title .c-heading__sub {
  font-size: 1.8rem;
}
@media (max-width: 768px) {
  .p-plan-course__option-title {
    color: #2E3754;
  }
}
@media (max-width: 768px) {
  .p-plan-course__option-em {
    color: #EA5C2E;
  }
}
.p-plan-course__option-slash--sp {
  display: none;
}
@media (max-width: 768px) {
  .p-plan-course__option-slash {
    display: none;
  }
  .p-plan-course__option-slash--sp {
    display: block;
  }
}
.p-plan-course__table {
  width: 100%;
  margin-top: 2rem;
  border-collapse: collapse;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  line-height: 1.45;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-plan-course__table {
    width: 35rem;
    margin-inline: auto;
  }
}
.p-plan-course__table thead th {
  padding: 0.4rem 1.6rem;
  background: #2E3754;
  font-size: 2rem;
  text-align: left;
  color: #fff;
}
@media (max-width: 768px) {
  .p-plan-course__table thead th {
    font-size: 1.6rem;
  }
}
.p-plan-course__table thead th + th {
  text-align: right;
}
.p-plan-course__table tbody tr {
  height: 5.5rem;
  background: #fff;
}
.p-plan-course__table tbody tr:nth-child(odd) {
  background: #FFF9DA;
}
@media (max-width: 768px) {
  .p-plan-course__table tbody tr {
    height: 7.2rem;
  }
}
.p-plan-course__table tbody th,
.p-plan-course__table tbody td {
  padding: 0.8rem 1.6rem;
  font-size: 2.4rem;
  vertical-align: middle;
}
.p-plan-course__table tbody th {
  text-align: left;
}
@media (max-width: 768px) {
  .p-plan-course__table tbody th {
    padding-right: 0;
    font-size: 1.6rem;
    letter-spacing: 0.02em;
  }
}
.p-plan-course__table tbody td {
  text-align: right;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .p-plan-course__table tbody td {
    padding-left: 0;
    font-size: 1.8rem;
  }
}
.p-plan-course__notes {
  margin-top: 4rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.45;
  text-align: center;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-plan-course__notes {
    width: 35rem;
    margin: 3.8rem auto 0;
    font-size: 1.6rem;
    line-height: 1.6;
    letter-spacing: 0.05em;
    text-align: left;
  }
}

.p-plan-purpose {
  padding: 8rem 0;
}
@media (max-width: 768px) {
  .p-plan-purpose {
    padding: 4.7rem 0 6rem;
  }
}
.p-plan-purpose__group {
  width: 112rem;
  margin: 4rem auto 0;
}
@media (max-width: 768px) {
  .p-plan-purpose__group {
    width: 35rem;
    margin-top: 3.4rem;
  }
}
.p-plan-purpose__label {
  padding: 0.4rem 1rem;
  border-radius: 0.4rem;
  background: linear-gradient(90deg, #EA5C2E, #EFA613);
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
  text-align: center;
  color: #fff;
}
@media (max-width: 768px) {
  .p-plan-purpose__label {
    font-size: 1.6rem;
  }
}
.p-plan-purpose__list {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 1.6rem;
}
@media (max-width: 768px) {
  .p-plan-purpose__list {
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 1.7rem 3rem;
    margin-top: 2rem;
  }
}
.p-plan-purpose__group + .p-plan-purpose__group .p-plan-purpose__list {
  margin-top: 2rem;
}
.p-plan-purpose__item {
  width: 23rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  line-height: 1.45;
  text-align: center;
}
@media (max-width: 768px) {
  .p-plan-purpose__item {
    width: 16rem;
    letter-spacing: 0;
  }
}
.p-plan-purpose__img {
  width: 100%;
  height: 13.2rem;
  border-radius: 0.4rem;
  object-fit: cover;
}
@media (max-width: 768px) {
  .p-plan-purpose__img {
    height: 9.2rem;
  }
}
.p-plan-purpose__name {
  margin-top: 0.8rem;
  font-size: 2.4rem;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .p-plan-purpose__name {
    font-size: 1.6rem;
  }
}
.p-plan-purpose__text {
  font-size: 2rem;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-plan-purpose__text {
    font-size: 1.4rem;
    line-height: 1.57;
    font-feature-settings: normal;
  }
}

.p-plan-flow {
  padding-top: 6rem;
}
@media (max-width: 768px) {
  .p-plan-flow {
    padding-top: 0;
  }
}
@media (max-width: 768px) {
  .p-plan-flow .c-flow__steps {
    gap: 2.2rem 2rem;
  }
  .p-plan-flow .c-flow__step {
    width: 16.5rem;
    padding-inline: 1rem;
  }
  .p-plan-flow .c-flow__text {
    font-size: 1.4rem;
    line-height: 1.5;
  }
}

.p-plan-notice {
  padding: 8rem 0;
}
@media (max-width: 768px) {
  .p-plan-notice {
    padding: 4rem 0 0;
  }
}
.p-plan-notice__box {
  position: relative;
  width: 112rem;
  margin: 4rem auto 0;
  padding: 4.3rem;
  border-radius: 1rem;
  background: #FFF9DA;
}
@media (max-width: 768px) {
  .p-plan-notice__box {
    width: 35rem;
    padding: 2rem 1rem 4rem;
    border-radius: 0.4rem;
  }
}
@media (max-width: 768px) {
  .p-plan-notice__photos {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
}
.p-plan-notice__photo {
  position: absolute;
  top: 3.5rem;
  left: 73.7rem;
  width: 15.5rem;
  height: 24.7rem;
  border-radius: 0.4rem;
  object-fit: cover;
}
.p-plan-notice__photo--sub {
  top: 9.9rem;
  left: 91.7rem;
  height: 25rem;
}
@media (max-width: 768px) {
  .p-plan-notice__photo {
    position: static;
    width: 15.35rem;
    height: 24.5rem;
  }
  .p-plan-notice__photo--sub {
    height: 24.75rem;
    margin-top: 2.25rem;
  }
}
.p-plan-notice__body {
  width: 67.2rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  line-height: 1.45;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-plan-notice__body {
    width: auto;
    margin-top: 1.6rem;
  }
}
.p-plan-notice__title {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  font-size: 2rem;
}
@media (max-width: 768px) {
  .p-plan-notice__title {
    font-size: 1.6rem;
  }
}
.p-plan-notice__title img {
  width: 2.4rem;
  height: 2.4rem;
}
.p-plan-notice__list {
  margin-top: 1.6rem;
  font-size: 2rem;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-plan-notice__list {
    font-size: 1.6rem;
  }
}

.p-voice-ba {
  padding-bottom: 8rem;
}
@media (max-width: 768px) {
  .p-voice-ba {
    padding: 3.9rem 0 4rem;
  }
}
.p-voice-ba__list {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 6rem 3.5rem;
  width: 112rem;
  margin: 6rem auto 0;
}
@media (max-width: 768px) {
  .p-voice-ba__list {
    display: block;
    width: 35rem;
  }
}
@media (max-width: 768px) {
  .p-voice-ba__item.c-ba-card--border {
    border: 0;
  }
}
@media (max-width: 768px) {
  .p-voice-ba__item {
    width: auto;
  }
  .p-voice-ba__item + .p-voice-ba__item {
    margin-top: 2.4rem;
  }
  .p-voice-ba__item.is-first {
    margin-top: 0;
  }
}
.p-voice-ba__empty {
  margin-top: 6rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
}

.p-voice-interview {
  padding: 7.2rem 0 8rem;
}
@media (max-width: 768px) {
  .p-voice-interview {
    padding: 6.7rem 0 6rem;
  }
}
.p-voice-interview__list {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 111.8rem;
  margin: 4rem auto 0;
}
@media (max-width: 768px) {
  .p-voice-interview__list {
    display: block;
    width: 35rem;
    margin-top: 2.3rem;
  }
}
.p-voice-interview__item {
  width: 35rem;
  padding: 2rem 1.6rem;
  border-radius: 0.4rem;
  background: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1.45;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-voice-interview__item {
    width: auto;
  }
  .p-voice-interview__item + .p-voice-interview__item {
    margin-top: 1.6rem;
  }
}
.p-voice-interview__img {
  width: 100%;
  height: 15rem;
  border-radius: 0.4rem;
  object-fit: cover;
}
.p-voice-interview__head {
  display: flex;
  align-items: center;
  gap: 2rem;
  margin-top: 0.8rem;
  font-weight: 700;
}
.p-voice-interview__tag {
  flex-shrink: 0;
  padding: 0.2rem 0.8rem;
  border-radius: 0.4rem;
  background: #EA5C2E;
  font-size: 1.6rem;
  color: #fff;
}
.p-voice-interview__profile {
  font-size: 2.2rem;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .p-voice-interview__profile {
    font-size: 2rem;
  }
}
.p-voice-interview__theme {
  margin-top: 0.8rem;
  font-size: 2.2rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .p-voice-interview__theme {
    font-size: 2rem;
  }
}
.p-voice-interview__text {
  margin-top: 0.8rem;
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-voice-interview__text {
    font-size: 1.6rem;
  }
}

.p-faq {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 128rem;
  margin-inline: auto;
  padding-bottom: 8rem;
}
@media (max-width: 768px) {
  .p-faq {
    display: block;
    width: 35rem;
    padding: 2rem 0 6rem;
  }
}
.p-faq__side {
  width: 37.5rem;
}
@media (max-width: 768px) {
  .p-faq__side {
    width: auto;
  }
}
.p-faq__shop {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  height: 9.6rem;
  margin-top: 4rem;
  border-radius: 1rem;
  overflow: hidden;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  color: #fff;
}
@media (max-width: 768px) {
  .p-faq__shop {
    display: none;
  }
}
.p-faq__shop::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(46, 55, 84, 0.85);
}
.p-faq__shop-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-faq__shop-text, .p-faq__shop-arrow {
  position: relative;
  z-index: 1;
}
.p-faq__shop-arrow {
  width: 2.1rem;
  height: 1.7rem;
}
.p-faq__main {
  width: 82rem;
}
@media (max-width: 768px) {
  .p-faq__main {
    width: auto;
    margin-top: 6rem;
  }
}
.p-faq__category + .p-faq__category {
  margin-top: 5rem;
}
@media (max-width: 768px) {
  .p-faq__category + .p-faq__category {
    margin-top: 6rem;
  }
}
.p-faq__category.is-first {
  margin-top: 0;
}
.p-faq__category-title {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  width: fit-content;
  margin-left: 1.2rem;
  padding-top: 0.7rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
  color: #2E3754;
}
.p-faq__category-title span {
  padding-bottom: 0.2rem;
  border-bottom: 0.3rem solid #2E3754;
}
@media (max-width: 768px) {
  .p-faq__category-title {
    gap: 0.4rem;
    margin-inline: auto;
    font-size: 2rem;
    letter-spacing: 0;
    white-space: nowrap;
  }
}
.p-faq__slash {
  flex-shrink: 0;
  width: 2.47rem;
  height: 2.57rem;
}
@media (max-width: 768px) {
  .p-faq__slash {
    width: 1.6rem;
    height: 1.67rem;
  }
}
.p-faq__slash--l {
  transform: rotate(-176.85deg) scaleY(-1);
}
.p-faq__slash--r {
  transform: rotate(-3.15deg);
}
.p-faq__items {
  margin-top: 1.5rem;
}
@media (max-width: 768px) {
  .p-faq__items {
    margin-top: 2rem;
  }
}
.p-faq__items > .c-faq + .c-faq {
  margin-top: 3rem;
}
@media (max-width: 768px) {
  .p-faq__items > .c-faq + .c-faq {
    margin-top: 2rem;
  }
}
.p-faq__back {
  margin-top: 5rem;
  text-align: center;
}
.p-faq__back .c-btn-cta {
  width: 27.1rem;
}

.p-blog {
  padding-bottom: 8rem;
}
@media (max-width: 768px) {
  .p-blog {
    padding: 6rem 0 4rem;
  }
}
.p-blog__list {
  display: flex;
  flex-wrap: wrap;
  gap: 6rem 3.4rem;
  width: 111.8rem;
  margin: 6rem auto 0;
}
@media (max-width: 768px) {
  .p-blog__list {
    display: block;
    width: 35rem;
  }
}
.p-blog__item {
  width: 35rem;
}
@media (max-width: 768px) {
  .p-blog__item + .p-blog__item {
    margin-top: 4rem;
  }
}
.p-blog__empty {
  margin-top: 6rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  color: #2E3754;
}
.p-blog__dream {
  line-height: 1.107;
}
@media (max-width: 768px) {
  .p-blog__dream {
    padding: 4rem 0;
    line-height: 1;
  }
}

.p-single {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 112rem;
  margin-inline: auto;
  padding: 18.6rem 0 12rem;
}
@media (max-width: 768px) {
  .p-single {
    display: block;
    width: 34.3rem;
    padding: 8.2rem 0 0;
  }
}
.p-single__main {
  width: 74rem;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-single__main {
    width: auto;
  }
}
.p-single__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.2em;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .p-single__title {
    font-size: 2.4rem;
    letter-spacing: 0.1em;
  }
}
.p-single__date {
  margin-top: 2rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.07em;
}
.p-single__thumb {
  display: block;
  width: 100%;
  height: 41.7rem;
  margin-top: 2rem;
  border-radius: 1rem 1rem 0 0;
  object-fit: cover;
}
@media (max-width: 768px) {
  .p-single__thumb {
    height: 19.3rem;
    border-radius: 1rem;
  }
}
.p-single__content {
  margin-top: 2rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-single__content {
    font-size: 1.6rem;
  }
}
.p-single__content > * + * {
  margin-top: 2rem;
}
.p-single__content h2 {
  margin-top: 6.4rem;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.45;
  letter-spacing: 0.07em;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .p-single__content h2 {
    margin-top: 6rem;
    font-size: 2rem;
  }
}
.p-single__content h3 {
  padding-bottom: 1.6rem;
  background: linear-gradient(90deg, #EA5C2E 7.14%, #f8f8f8 7.14%) left bottom/100% 0.6rem no-repeat;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.07em;
}
@media (max-width: 768px) {
  .p-single__content h3 {
    font-size: 1.8rem;
    line-height: 1.45;
  }
}
.p-single__content h3 + * {
  margin-top: 0.5rem;
}
.p-single__content a:not(.c-btn-cta, .p-single__toc a) {
  color: #EA5C2E;
  text-decoration: underline;
}
.p-single__content ul:not(.p-single__toc *) {
  padding-left: 2.7rem;
}
.p-single__content ul:not(.p-single__toc *) > li {
  list-style: disc;
}
.p-single__content ol:not(.p-single__toc *) {
  padding-left: 2.7rem;
}
.p-single__content ol:not(.p-single__toc *) > li {
  list-style: decimal;
}
.p-single__content blockquote {
  position: relative;
  padding: 1.2rem 2rem 1.2rem 3rem;
  border: 0.2rem solid #2E3754;
  border-radius: 0.4rem 0 0 0.4rem;
  letter-spacing: 0.07em;
  line-height: 1.45;
}
.p-single__content blockquote::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -0.2rem;
  width: 1rem;
  height: 5rem;
  border-radius: 0.4rem 0 0 0.4rem;
  background: #2E3754;
  transform: translateY(-50%);
}
.p-single__content blockquote p {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: clip;
}
@media (max-width: 768px) {
  .p-single__content blockquote p {
    white-space: normal;
    word-break: break-all;
  }
}
.p-single__content .is-style-summary {
  position: relative;
  height: 6.5rem;
  padding: 1.2rem 2rem 1.2rem 3rem;
  border: 0.2rem solid #EA5C2E;
  border-radius: 0.4rem 0 0 0.4rem;
  font-size: 2.8rem;
  letter-spacing: 0.28em;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-single__content .is-style-summary {
    height: auto;
    padding: 0.6rem 2rem 0.6rem 3rem;
    font-size: 2rem;
  }
}
.p-single__content .is-style-summary::before {
  content: "";
  position: absolute;
  top: -0.2rem;
  bottom: -0.2rem;
  left: -0.2rem;
  width: 1rem;
  border-radius: 0.4rem 0 0 0.4rem;
  background: #EA5C2E;
}
.p-single__content .is-style-catch {
  font-size: 2.4rem;
  line-height: 1.45;
  letter-spacing: 0.07em;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .p-single__content .is-style-catch {
    font-size: 2rem;
  }
}
.p-single__toc {
  margin-top: 6.4rem;
  padding: 4rem;
  border: 0.2rem solid #EA5C2E;
  border-radius: 1rem;
  line-height: 1.45;
}
@media (max-width: 768px) {
  .p-single__toc {
    margin-top: 4rem;
    padding: 2rem 1.6rem;
  }
}
.p-single__toc-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  list-style: none;
  cursor: pointer;
}
.p-single__toc-head::-webkit-details-marker {
  display: none;
}
.p-single__toc-title {
  font-size: 2.4rem;
  letter-spacing: 0.28em;
}
@media (max-width: 768px) {
  .p-single__toc-title {
    font-size: 2rem;
  }
}
.p-single__toc-toggle {
  padding: 0.6rem 1.4rem;
  border-radius: 0.4rem;
  background: #EA5C2E;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  line-height: 1.2;
  letter-spacing: 0.1em;
  color: #fff;
}
@media (max-width: 768px) {
  .p-single__toc-toggle {
    font-size: 1.4rem;
  }
}
.p-single__toc-open, .p-single__toc[open] .p-single__toc-close {
  display: inline;
}
.p-single__toc-close, .p-single__toc[open] .p-single__toc-open {
  display: none;
}
.p-single__toc-list {
  margin-top: 3rem;
  padding: 0;
  list-style: none;
}
.p-single__toc-item + .p-single__toc-item {
  margin-top: 1.8rem;
}
.p-single__toc-link {
  display: flex;
  align-items: center;
  gap: 1rem;
  color: inherit;
  text-decoration: none;
}
.p-single__toc-num {
  flex-shrink: 0;
  padding-right: 1rem;
  border-right: 0.1rem solid #2E3754;
  line-height: 2rem;
  letter-spacing: 0.07em;
}
.p-single__toc-sub {
  margin-top: 0.8rem;
  padding-left: 4rem;
  list-style: none;
  letter-spacing: 0.07em;
}
.p-single__toc-sub li {
  position: relative;
  padding-left: 1.5rem;
}
.p-single__toc-sub li + li {
  margin-top: 0.6rem;
}
.p-single__toc-sub li::before {
  content: "";
  position: absolute;
  top: 1rem;
  left: 0;
  width: 0.7rem;
  height: 0.7rem;
  border-radius: 50%;
  background: #2E3754;
}
.p-single__toc-sub a {
  color: inherit;
  text-decoration: none;
}
.p-single__cta {
  margin-top: 6.4rem;
}
.p-single__author {
  display: flex;
  align-items: flex-start;
  gap: 2rem;
  margin-top: 6.4rem;
  padding: 2rem;
  border-radius: 1rem;
  background: #FFF9DA;
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-single__author {
    display: block;
  }
}
.p-single__author-img {
  flex-shrink: 0;
  width: 25rem;
  height: 14rem;
  border-radius: 1rem;
  object-fit: cover;
}
@media (max-width: 768px) {
  .p-single__author-img {
    width: 100%;
    height: 15.6rem;
  }
}
.p-single__author-body {
  flex: 1;
}
@media (max-width: 768px) {
  .p-single__author-body {
    margin-top: 2rem;
  }
}
.p-single__author-head {
  display: flex;
  align-items: center;
  gap: 4rem;
  font-weight: 700;
}
.p-single__author-name {
  font-size: 2.4rem;
  line-height: 1;
  letter-spacing: 0.05em;
}
.p-single__author-role {
  font-size: 1.8rem;
  color: #EA5C2E;
}
.p-single__author-text {
  margin-top: 1.6rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-single__author-text {
    font-size: 1.6rem;
  }
}
.p-single__author-label {
  margin-top: 1.6rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1;
}
.p-single__author-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 0.7rem;
}
.p-single__author-tags li {
  padding: 0.4rem 0.8rem;
  border: 0.2rem solid #2E3754;
  border-radius: 0.4rem;
  background: #fff;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.45;
}
.p-single__back {
  margin-top: 6.4rem;
  text-align: center;
}
.p-single__back .c-btn-cta {
  width: 27.1rem;
}
.p-single__dream {
  display: none;
}
@media (max-width: 768px) {
  .p-single__dream {
    display: block;
    margin-inline: -1.6rem;
    padding: 4rem 0 0;
  }
}
@media (max-width: 768px) {
  .p-single__side-em {
    color: #EA5C2E;
  }
}
.p-single__side {
  width: 30rem;
}
@media (max-width: 768px) {
  .p-single__side {
    width: 35rem;
    margin-inline: auto;
    padding: 6rem 0;
  }
}
.p-single__side-title {
  padding-top: 0;
}
.p-single__side-title .c-heading__sub {
  font-size: 1.8rem;
}
.p-single__side-title .c-heading__text {
  font-size: 2.4rem;
}
@media (max-width: 768px) {
  .p-single__side-title .c-heading__text {
    font-size: 2.2rem;
  }
}
.p-single__side-list {
  margin-top: 4rem;
}
.p-single__side-item + .p-single__side-item {
  margin-top: 4rem;
}
.p-single__side .c-post-card {
  border-radius: 0;
}
@media (max-width: 768px) {
  .p-single__side .c-post-card {
    border-radius: 1rem;
  }
}
.p-single__side .c-post-card__img {
  height: 16.9rem;
  border-radius: 1rem 1rem 0 0;
}
@media (max-width: 768px) {
  .p-single__side .c-post-card__img {
    height: 20rem;
    border-radius: 0;
  }
}
.p-single__side .c-post-card__body {
  padding-inline: 0;
}
@media (max-width: 768px) {
  .p-single__side .c-post-card__body {
    padding-inline: 1.6rem;
  }
}
.p-single__side .c-post-card__title {
  font-size: 2rem;
}
@media (max-width: 768px) {
  .p-single__side .c-post-card__title {
    font-size: 2.2rem;
  }
}

.p-shop-archive {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 119.1rem;
  margin-inline: auto;
  padding-bottom: 8rem;
}
@media (max-width: 768px) {
  .p-shop-archive {
    display: block;
    width: 35rem;
    padding: 2.9rem 0 6rem;
  }
}
.p-shop-archive__side {
  width: 37.5rem;
}
@media (max-width: 768px) {
  .p-shop-archive__side {
    width: auto;
  }
}
.p-shop-archive__main {
  width: 72.8rem;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-shop-archive__main {
    width: auto;
    margin-top: 10rem;
  }
}
.p-shop-archive__region + .p-shop-archive__region {
  margin-top: 4rem;
}
.p-shop-archive__region-head {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  padding: 2rem 3rem;
  border: 0.2rem solid #2E3754;
  border-bottom: 0;
  border-radius: 1rem 1rem 0 0;
  background: #fff;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
  list-style: none;
  cursor: pointer;
}
@media (max-width: 768px) {
  .p-shop-archive__region-head {
    padding: 1.5rem 1.6rem;
    font-size: 1.8rem;
  }
}
.p-shop-archive__region-head::-webkit-details-marker {
  display: none;
}
.p-shop-archive__region:not([open]) .p-shop-archive__region-head {
  border-bottom: 0.2rem solid #2E3754;
  border-radius: 1rem;
}
.p-shop-archive__region-logo {
  flex-shrink: 0;
  width: 3rem;
  height: 3rem;
}
.p-shop-archive__region-name {
  flex: 1;
}
.p-shop-archive__region-icon {
  flex-shrink: 0;
  width: 1.9rem;
  height: 0.95rem;
  transform: scaleY(-1);
}
.p-shop-archive__region:not([open]) .p-shop-archive__region-icon {
  transform: none;
}

.p-shop-detail-intro {
  padding: 8rem 0;
  background: #fff;
}
@media (max-width: 768px) {
  .p-shop-detail-intro {
    padding: 4.7rem 0 9.5rem;
  }
}
.p-shop-detail-intro__body {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: center;
  margin-top: 4rem;
}
@media (max-width: 768px) {
  .p-shop-detail-intro__body {
    display: block;
    margin-top: 3.3rem;
  }
}
.p-shop-detail-intro__text-box {
  width: 58rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-shop-detail-intro__text-box {
    width: auto;
    margin-top: 2.4rem;
  }
}
.p-shop-detail-intro__title {
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 3.9rem;
  letter-spacing: 0.05em;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .p-shop-detail-intro__title {
    font-size: 2.4rem;
    text-align: center;
  }
}
.p-shop-detail-intro__text {
  margin-top: 2.2rem;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.92;
  letter-spacing: 0.1em;
}
@media (max-width: 768px) {
  .p-shop-detail-intro__text {
    margin-top: 1.1rem;
    font-size: 1.6rem;
    line-height: 1.9;
    letter-spacing: 0.09em;
    font-feature-settings: normal;
  }
}
.p-shop-detail-intro__img {
  flex-shrink: 0;
  width: 46.8rem;
  height: 30rem;
  border-radius: 1rem;
  object-fit: cover;
}
@media (max-width: 768px) {
  .p-shop-detail-intro__img {
    display: block;
    width: 100%;
    height: 25rem;
  }
}

.p-shop-detail-gallery {
  padding: 8rem 0;
  background: #fff;
  text-align: center;
}
@media (max-width: 768px) {
  .p-shop-detail-gallery {
    padding: 6.7rem 0 6rem;
  }
}
.p-shop-detail-gallery .c-heading {
  padding-top: 0;
}
.p-shop-detail-gallery__slider {
  margin-top: 4rem;
  padding-bottom: 6.7rem;
}
@media (max-width: 768px) {
  .p-shop-detail-gallery__slider {
    margin-top: 3.3rem;
  }
}
.p-shop-detail-gallery__main-img {
  display: block;
  width: 100%;
  height: 50rem;
  border-radius: 0.4rem;
  object-fit: cover;
}
@media (max-width: 768px) {
  .p-shop-detail-gallery__main-img {
    height: 15.6rem;
  }
}
.p-shop-detail-gallery__thumbs {
  margin-top: 2rem;
}
@media (max-width: 768px) {
  .p-shop-detail-gallery__thumbs {
    margin-top: 2rem;
    margin-right: -2.4rem;
  }
}
.p-shop-detail-gallery__thumbs .splide__slide {
  opacity: 0.5;
  cursor: pointer;
}
.p-shop-detail-gallery__thumbs .splide__slide.is-active {
  opacity: 1;
}
.p-shop-detail-gallery__thumb-img {
  display: block;
  width: 100%;
  height: 11.2rem;
  border-radius: 0.4rem;
  object-fit: cover;
}
@media (max-width: 768px) {
  .p-shop-detail-gallery__thumb-img {
    height: 8.4rem;
  }
}

.p-shop-detail-staff {
  overflow: hidden;
  padding: 8rem 0;
  background: #fff;
}
@media (max-width: 768px) {
  .p-shop-detail-staff {
    padding: 4.8rem 0 6rem;
  }
}
.p-shop-detail-staff .c-heading {
  padding-top: 0;
}
.p-shop-detail-staff__slider {
  margin-top: 4rem;
}
@media (max-width: 768px) {
  .p-shop-detail-staff__slider {
    margin-top: 3rem;
  }
}
.p-shop-detail-staff__slider .splide__track {
  overflow: visible;
}
@media (max-width: 768px) {
  .p-shop-detail-staff__slider .splide__track {
    overflow: hidden;
  }
}
.p-shop-detail-staff__slider .splide__slide {
  height: auto;
}
.p-shop-detail-staff__slider--center.splide:not(.is-active) .splide__list {
  justify-content: center;
  gap: 4rem;
}
.p-shop-detail-staff__more {
  display: none;
}
@media (max-width: 768px) {
  .p-shop-detail-staff__more {
    display: block;
    margin-top: 4rem;
    text-align: center;
  }
  .p-shop-detail-staff__more .c-btn-cta {
    width: 35rem;
  }
}
@media (max-width: 768px) {
  .p-shop-detail-staff--lg-text .c-trainer-card__message {
    font-size: 1.8rem;
  }
}
@media (max-width: 768px) {
  .p-shop-detail-staff--lg-text .c-trainer-card__tag {
    font-size: 1.6rem;
  }
}
.p-shop-detail-staff .c-trainer-card__img {
  background: #fffaf5;
}

.p-shop-detail-flow {
  padding: 6rem 0;
}
@media (max-width: 768px) {
  .p-shop-detail-flow {
    padding: 0;
  }
}

.p-shop-detail-info {
  padding: 8rem 0 10rem;
  background: #FFF9DA;
  text-align: center;
}
@media (max-width: 768px) {
  .p-shop-detail-info {
    padding: 7.2rem 0 6rem;
  }
}
.p-shop-detail-info .c-heading {
  padding-top: 0;
}
.p-shop-detail-info .c-shop-card {
  width: 72rem;
  margin: 4rem auto 0;
  text-align: left;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-shop-detail-info .c-shop-card {
    width: 35rem;
    margin-top: 3rem;
  }
}
.p-shop-detail-info__more {
  margin-top: 4rem;
}
.p-shop-detail-info__more .c-btn-cta {
  width: 36.6rem;
}
@media (max-width: 768px) {
  .p-shop-detail-info__more .c-btn-cta {
    width: 36.7rem;
  }
}

.p-contact-flow {
  width: 131.2rem;
  margin-inline: auto;
  padding: 4rem 0 6rem;
  background: linear-gradient(180deg, rgba(234, 92, 46, 0.8), rgba(239, 166, 19, 0.8));
}
@media (max-width: 768px) {
  .p-contact-flow {
    width: auto;
    padding: 6rem 1.25rem;
  }
}
.p-contact-flow .c-heading {
  padding-top: 0;
}
.p-contact-flow__steps {
  display: flex;
  justify-content: space-between;
  width: 112rem;
  margin: 4rem auto 0;
}
@media (max-width: 768px) {
  .p-contact-flow__steps {
    display: block;
    width: 35rem;
    margin-top: 3.3rem;
  }
}
.p-contact-flow__step {
  position: relative;
  width: 25rem;
  height: 15.6rem;
  padding: 1.6rem 0.8rem;
  border-radius: 0.4rem;
  background: #fff;
  text-align: center;
}
@media (max-width: 768px) {
  .p-contact-flow__step {
    display: flex;
    align-items: center;
    gap: 1.2rem;
    width: auto;
    height: 6rem;
    padding: 0 1.6rem;
    text-align: left;
  }
}
@media (max-width: 768px) {
  .p-contact-flow__step + .p-contact-flow__step {
    margin-top: 2.9rem;
  }
}
.p-contact-flow__arrow {
  position: absolute;
  top: 6.55rem;
  left: -3.45rem;
  width: 2.9rem;
  height: 2.5rem;
  transform: rotate(90deg);
}
@media (max-width: 768px) {
  .p-contact-flow__arrow {
    top: -2.1rem;
    left: 50%;
    width: 1.5rem;
    height: 1.3rem;
    transform: translateX(-50%) rotate(180deg);
  }
}
.p-contact-flow__icon {
  display: block;
  width: auto;
  height: 3.6rem;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .p-contact-flow__icon {
    flex-shrink: 0;
    width: 4.4rem;
    height: 4rem;
    margin: 0;
    object-fit: contain;
  }
}
.p-contact-flow__body {
  margin-top: 2rem;
  font-weight: 700;
}
@media (max-width: 768px) {
  .p-contact-flow__body {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    margin-top: 0;
  }
}
.p-contact-flow__num {
  display: block;
  font-family: "Roboto", sans-serif;
  font-size: 1.8rem;
  font-style: italic;
  line-height: 1.2;
  letter-spacing: 0.05em;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .p-contact-flow__num {
    font-size: 1.4rem;
  }
}
.p-contact-flow__title {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2.4rem;
  line-height: 1.2;
  letter-spacing: 0.05em;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-contact-flow__title {
    font-size: 1.8rem;
    white-space: nowrap;
  }
}

.p-contact-form {
  padding: 8rem 0 12rem;
  background: #fff;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-contact-form {
    padding: 6rem 0 8rem;
  }
}
.p-contact-form .c-heading {
  padding-top: 0;
}
.p-contact-form__lead {
  margin-top: 4rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: center;
}
@media (max-width: 768px) {
  .p-contact-form__lead {
    margin-top: 3rem;
    font-size: 1.6rem;
  }
}
.p-contact-form__body {
  margin-top: 4rem;
}

.p-thanks {
  position: relative;
  padding: 4rem 0 10rem;
  text-align: center;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-thanks {
    padding: 2rem 1.25rem 6rem;
  }
}
.p-thanks__logo {
  display: block;
  width: 40rem;
  height: 11.9rem;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .p-thanks__logo {
    width: 24rem;
    height: 7.1rem;
  }
}
.p-thanks__text {
  margin-top: 4rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-thanks__text {
    margin-top: 0.5rem;
    font-size: 1.6rem;
    line-height: 1.6;
    letter-spacing: -0.02em;
  }
}
.p-thanks__more {
  margin-top: 4rem;
}
@media (max-width: 768px) {
  .p-thanks__more {
    margin-top: 6rem;
  }
}
.p-thanks__more .c-btn-cta {
  width: 21rem;
}

.p-privacy {
  padding: 18.6rem 0 8rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-privacy {
    padding: 7rem 0 6rem;
  }
}
.p-privacy__head {
  text-align: center;
  color: #EA5C2E;
}
.p-privacy__en {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  font-family: "Roboto", sans-serif;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 2.1rem;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-privacy__en {
    gap: 0.4rem;
    font-size: 1.6rem;
    line-height: 2rem;
  }
}
.p-privacy__en img {
  width: 2rem;
  height: 2rem;
}
.p-privacy__title {
  font-size: 4.4rem;
  line-height: 6.4rem;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-privacy__title {
    font-size: 2.2rem;
    line-height: 3.2rem;
  }
}
.p-privacy__body {
  margin-top: 4rem;
  font-size: 1.8rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-privacy__body {
    margin-top: 5rem;
    font-size: 1.6rem;
    line-height: 1.7;
    letter-spacing: 0.03em;
  }
}
.p-privacy__body a {
  text-decoration: underline;
}
.p-privacy__block + .p-privacy__block {
  margin-top: 3.6rem;
}
@media (max-width: 768px) {
  .p-privacy__block + .p-privacy__block {
    margin-top: 3rem;
  }
}
.p-privacy__heading {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.08em;
}
@media (max-width: 768px) {
  .p-privacy__heading {
    font-size: 1.8rem;
  }
}
.p-privacy__heading + p {
  margin-top: 0.4rem;
}
.p-privacy__sub {
  margin-top: 2.9rem;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.6;
}
@media (max-width: 768px) {
  .p-privacy__sub {
    font-size: 1.6rem;
    line-height: 1.7;
  }
}
.p-privacy__sub--first {
  margin-top: 0.4rem;
}
.p-privacy__list {
  padding-left: 2.3rem;
  list-style: "・";
}
@media (max-width: 768px) {
  .p-privacy__list {
    padding-left: 2.4rem;
    list-style: "・ ";
  }
}
.p-privacy__list li {
  list-style: inherit;
}
.p-privacy__sign {
  margin-top: 1.8rem;
  line-height: 1.5;
  text-align: right;
}
.p-privacy__end {
  margin-top: 2rem;
  font-size: 1.6rem;
  text-align: right;
}

.p-recruit-about {
  padding: 8rem 0;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-recruit-about {
    padding: 4rem 0 6rem;
  }
}
@media (max-width: 768px) {
  .p-recruit-about .l-inner08 {
    display: flex;
    flex-direction: column;
    font-feature-settings: normal;
  }
}
.p-recruit-about__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
@media (max-width: 768px) {
  .p-recruit-about__title {
    font-size: 2.4rem;
    line-height: 1.6;
    letter-spacing: 0.02em;
    text-align: center;
  }
}
.p-recruit-about__em {
  color: #EA5C2E;
}
.p-recruit-about__body {
  display: flex;
  gap: 3.4rem;
  margin-top: 4rem;
}
@media (max-width: 768px) {
  .p-recruit-about__body {
    display: contents;
  }
}
.p-recruit-about__img {
  flex-shrink: 0;
  width: 24.6rem;
  height: 31.5rem;
  border-radius: 1rem;
  object-fit: cover;
}
@media (max-width: 768px) {
  .p-recruit-about__img {
    display: block;
    order: -1;
    width: 100%;
    height: 25rem;
    margin-bottom: 3.6rem;
  }
}
.p-recruit-about__content {
  position: relative;
  flex: 1;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
}
.p-recruit-about__text {
  font-size: 1.8rem;
  line-height: 1.5;
}
@media (max-width: 768px) {
  .p-recruit-about__text {
    margin-top: 2.4rem;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 1.6rem;
    line-height: 1.8;
    letter-spacing: 0.1em;
  }
}
.p-recruit-about__catch {
  margin-top: 4rem;
  font-size: 2.4rem;
  line-height: 1.6;
  letter-spacing: 0.1em;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .p-recruit-about__catch {
    margin-top: 3.4rem;
    font-size: 2rem;
    line-height: 2;
    text-align: center;
    letter-spacing: 0.06em;
  }
}
.p-recruit-about__more {
  position: absolute;
  right: 0;
  bottom: 0;
}
@media (max-width: 768px) {
  .p-recruit-about__more {
    display: none;
  }
}
.p-recruit-about__more .c-btn-cta {
  width: 32.6rem;
}

.p-recruit-stats {
  padding: 4rem 0 8rem;
  background: #FFF9DA;
  text-align: center;
}
@media (max-width: 768px) {
  .p-recruit-stats {
    padding: 6rem 0 6.6rem;
  }
}
.p-recruit-stats .c-heading {
  padding-top: 0;
}
.p-recruit-stats__list {
  margin-top: 4rem;
}
@media (max-width: 768px) {
  .p-recruit-stats__list {
    margin-top: 3rem;
  }
}

.p-recruit-job {
  padding-top: 8rem;
}
@media (max-width: 768px) {
  .p-recruit-job {
    padding-top: 0;
  }
}
.p-recruit-job__box {
  width: 132rem;
  margin-inline: auto;
  padding: 8rem 0;
  border-radius: 1rem;
  background: linear-gradient(180deg, rgba(234, 92, 46, 0.8), rgba(239, 166, 19, 0.8));
  text-align: center;
}
@media (max-width: 768px) {
  .p-recruit-job__box {
    width: auto;
    padding: 6.4rem 1.25rem 6rem;
    border-radius: 1rem 1rem 0 0;
  }
}
.p-recruit-job__box .c-heading {
  padding-top: 0;
}
.p-recruit-job__list {
  width: 96.7rem;
  margin: 8rem auto 0;
  text-align: left;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-recruit-job__list {
    width: 35rem;
    margin-top: 3rem;
  }
}
.p-recruit-job__item {
  min-height: 25.2rem;
  border-radius: 1rem;
  background: #fff;
}
@media (max-width: 768px) {
  .p-recruit-job__item {
    min-height: 0;
  }
}
.p-recruit-job__item + .p-recruit-job__item {
  margin-top: 1.5rem;
}
@media (max-width: 768px) {
  .p-recruit-job__item + .p-recruit-job__item {
    margin-top: 2.2rem;
  }
}
.p-recruit-job__head {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 3.2rem 4rem 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.25;
  list-style: none;
  pointer-events: none;
}
@media (max-width: 768px) {
  .p-recruit-job__head {
    gap: 1.1rem;
    padding: 1.3rem 1.6rem 0;
    font-size: 1.8rem;
    line-height: 1.45;
    letter-spacing: 0.08em;
    pointer-events: auto;
    cursor: pointer;
  }
}
.p-recruit-job__head::-webkit-details-marker {
  display: none;
}
.p-recruit-job__icon {
  flex-shrink: 0;
  width: 3rem;
  height: 3rem;
}
@media (max-width: 768px) {
  .p-recruit-job__icon {
    width: 1.8rem;
    height: 1.8rem;
  }
}
.p-recruit-job__name {
  flex: 1;
  padding-bottom: 0.4rem;
  border-bottom: 0.2rem solid #2E3754;
}
@media (max-width: 768px) {
  .p-recruit-job__name {
    padding-bottom: 0;
    border-bottom: 0;
  }
}
.p-recruit-job__toggle {
  display: none;
}
@media (max-width: 768px) {
  .p-recruit-job__toggle {
    display: block;
    flex-shrink: 0;
    width: 2.4rem;
    height: 2.4rem;
  }
}
.p-recruit-job__item:not([open]) .p-recruit-job__toggle {
  transform: scaleY(-1);
}
.p-recruit-job__body {
  display: flex;
  align-items: center;
  gap: 4rem;
  padding: 0 4rem 2rem;
}
@media (max-width: 768px) {
  .p-recruit-job__body {
    display: block;
    padding: 0 1.6rem 2rem;
  }
}
.p-recruit-job__info {
  flex: 1;
  margin-top: 0.7rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  line-height: 1.45;
}
@media (max-width: 768px) {
  .p-recruit-job__info {
    margin-top: 0.7rem;
    font-size: 1.6rem;
    line-height: 1.625;
    letter-spacing: 0.05em;
  }
}
.p-recruit-job__info > div {
  display: flex;
}
@media (max-width: 768px) {
  .p-recruit-job__info > div {
    display: block;
  }
}
.p-recruit-job__info > div + div {
  margin-top: 1.2rem;
}
@media (max-width: 768px) {
  .p-recruit-job__info > div + div {
    margin-top: 0.5rem;
  }
}
.p-recruit-job__info dt {
  flex-shrink: 0;
  font-weight: 700;
}
.p-recruit-job__info dd {
  font-weight: 500;
}
.p-recruit-job__btn {
  flex-shrink: 0;
  width: 23.8rem;
}
@media (max-width: 768px) {
  .p-recruit-job__btn {
    display: flex;
    width: 23.5rem;
    margin: 2.4rem auto 0;
  }
}

.p-recruit-staff {
  padding: 8rem 0;
  text-align: center;
}
@media (max-width: 768px) {
  .p-recruit-staff {
    padding: 6.7rem 0 6rem;
  }
}
.p-recruit-staff .c-heading {
  padding-top: 0;
}
.p-recruit-staff__list {
  display: flex;
  justify-content: space-between;
  margin-top: 4rem;
}
.p-recruit-staff__list .c-trainer-card {
  min-height: 41.3rem;
  border-radius: 1rem;
  background: #fff;
}
@media (max-width: 768px) {
  .p-recruit-staff__list .c-trainer-card {
    min-height: 0;
  }
}
@media (max-width: 768px) {
  .p-recruit-staff__list {
    display: block;
    width: 35rem;
    margin: 3rem auto 0;
  }
}
@media (max-width: 768px) {
  .p-recruit-staff__list .c-trainer-card + .c-trainer-card {
    margin-top: 3.6rem;
  }
}
@media (max-width: 768px) {
  .p-recruit-staff__list .c-trainer-card__name {
    margin-top: 0.7rem;
  }
}
@media (max-width: 768px) {
  .p-recruit-staff__list .c-trainer-card__message {
    margin-top: 1rem;
  }
}
.p-recruit-staff__more {
  display: none;
}
@media (max-width: 768px) {
  .p-recruit-staff__more {
    display: block;
    margin-top: 4rem;
  }
  .p-recruit-staff__more .c-btn-cta {
    width: 35rem;
  }
}

.p-recruit-entry {
  padding: 8rem 0 12rem;
  scroll-margin-top: 10.6rem;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-recruit-entry {
    padding: 6rem 0 8rem;
    scroll-margin-top: 6.2rem;
  }
}
.p-recruit-entry .c-heading {
  padding-top: 0;
}
.p-recruit-entry__lead {
  margin-top: 4rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: center;
}
@media (max-width: 768px) {
  .p-recruit-entry__lead {
    margin-top: 3rem;
    font-size: 1.6rem;
  }
}
.p-recruit-entry__body {
  margin-top: 4rem;
}

.p-notfound {
  position: relative;
  z-index: 0;
  height: 69.8rem;
  padding-top: 14.8rem;
  text-align: center;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-notfound {
    height: auto;
    margin-top: 6.2rem;
    padding: 7.5rem 1.25rem 8rem;
  }
}
.p-notfound__bg {
  position: absolute;
  inset: 0;
  z-index: -1;
}
.p-notfound__bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.8;
}
.p-notfound__bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
}
.p-notfound__box {
  width: 112rem;
  height: 45rem;
  margin-inline: auto;
  padding: 5.6rem 2rem 4rem;
  border-radius: 1rem;
  background: #fff;
}
@media (max-width: 768px) {
  .p-notfound__box {
    width: auto;
    height: auto;
    padding: 4.6rem 1.6rem 5.8rem;
  }
}
.p-notfound__code {
  height: 11.52rem;
  padding-top: 1.81rem;
}
@media (max-width: 768px) {
  .p-notfound__code {
    height: 11rem;
    padding-top: 1.38rem;
  }
}
.p-notfound__code img {
  display: block;
  width: 19.1rem;
  height: 7.9rem;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .p-notfound__code img {
    width: 19.9rem;
    height: 8.23rem;
  }
}
.p-notfound__title {
  margin-top: 3.2rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media (max-width: 768px) {
  .p-notfound__title {
    margin-top: 1.6rem;
    margin-top: 0.8rem;
    font-size: 2rem;
    line-height: 1.6;
  }
}
.p-notfound__text {
  margin-top: 2rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.7;
}
@media (max-width: 768px) {
  .p-notfound__text {
    margin-top: 1.6rem;
    font-size: 1.5rem;
    line-height: 1.75;
    letter-spacing: 0;
  }
}
.p-notfound__more {
  margin-top: 3.2rem;
}
@media (max-width: 768px) {
  .p-notfound__more {
    margin-top: 2.4rem;
  }
}
.p-notfound__more .c-btn-cta {
  width: 21rem;
}

.p-franchise-mvv {
  padding-top: 8rem;
}
@media (max-width: 768px) {
  .p-franchise-mvv {
    padding-top: 0;
  }
}

.p-franchise-about {
  padding: 8rem 0 6rem;
}
@media (max-width: 768px) {
  .p-franchise-about {
    padding: 4rem 1.25rem;
  }
}
.p-franchise-about__inner {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  width: 112rem;
  min-height: 37.2rem;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .p-franchise-about__inner {
    display: block;
    width: auto;
    min-height: 0;
  }
}
.p-franchise-about__catch {
  order: -1;
  width: 100%;
  padding-bottom: 4rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .p-franchise-about__catch {
    margin-top: 2rem;
    padding-bottom: 0;
    font-family: "Noto Sans JP", sans-serif;
    font-feature-settings: normal;
    font-size: 2.4rem;
    line-height: 3.9rem;
    letter-spacing: 0.05em;
    text-align: center;
  }
}
.p-franchise-about__img {
  flex-shrink: 0;
  width: 24.6rem;
}
.p-franchise-about__img img {
  display: block;
  width: 100%;
  height: 30rem;
  border-radius: 1rem;
  object-fit: cover;
}
@media (max-width: 768px) {
  .p-franchise-about__img {
    width: 100%;
  }
  .p-franchise-about__img img {
    height: 25rem;
  }
}
.p-franchise-about__text {
  width: 84rem;
  margin-left: 3.4rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-franchise-about__text {
    width: auto;
    margin: 2.4rem 0 0;
    font-family: "Noto Sans JP", sans-serif;
    font-feature-settings: normal;
    font-size: 1.5rem;
    line-height: 1.92;
    letter-spacing: 0.1em;
  }
}
.p-franchise-about__sub {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 22.1rem;
  height: 12.6rem;
  border-radius: 1rem;
  object-fit: cover;
}
@media (max-width: 768px) {
  .p-franchise-about__sub {
    display: none;
  }
}

.p-franchise-message {
  padding: 8rem 0 4rem;
}
@media (max-width: 768px) {
  .p-franchise-message {
    padding: 6rem 1.25rem;
  }
}
.p-franchise-message .c-heading {
  padding-top: 0;
}
.p-franchise-message__inner {
  display: flex;
  align-items: flex-start;
  gap: 4rem;
  width: 112rem;
  margin: 4rem auto 0;
}
@media (max-width: 768px) {
  .p-franchise-message__inner {
    display: block;
    width: auto;
  }
}
.p-franchise-message__img {
  flex-shrink: 0;
  width: 37.9rem;
}
.p-franchise-message__img img {
  display: block;
  width: 100%;
  height: 40rem;
  border-radius: 1rem 1rem 0 0;
  object-fit: cover;
}
@media (max-width: 768px) {
  .p-franchise-message__img {
    width: 100%;
  }
  .p-franchise-message__img img {
    height: 18rem;
  }
}
.p-franchise-message__body {
  width: 70.1rem;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-franchise-message__body {
    width: auto;
    margin-top: 4rem;
  }
}
.p-franchise-message__catch {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.1em;
  color: #EA5C2E;
}
@media (max-width: 768px) {
  .p-franchise-message__catch {
    font-family: "Noto Sans JP", sans-serif;
    font-feature-settings: normal;
    font-size: 2rem;
    letter-spacing: 0.05em;
    text-align: center;
  }
}
.p-franchise-message__text {
  margin-top: 4rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.6;
}
.p-franchise-message__text p + p {
  margin-top: 2.88rem;
}
@media (max-width: 768px) {
  .p-franchise-message__text {
    margin-top: 2.4rem;
    font-family: "Noto Sans JP", sans-serif;
    font-feature-settings: normal;
    font-size: 1.6rem;
    line-height: 1.92;
  }
  .p-franchise-message__text p + p {
    margin-top: 3.07rem;
  }
}
.p-franchise-message__sign {
  margin-top: 4rem;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.6;
  text-align: right;
}
@media (max-width: 768px) {
  .p-franchise-message__sign {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 1.6rem;
  }
}

.p-franchise-cost {
  padding: 8rem 0;
  background: #FFF9DA;
}
@media (max-width: 768px) {
  .p-franchise-cost {
    padding: 6rem 1.25rem;
  }
}
.p-franchise-cost .c-heading {
  padding-top: 0;
}
.p-franchise-cost__table {
  width: 83.4rem;
  margin: 4rem auto 0;
  border-collapse: separate;
  border-spacing: 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  text-align: center;
  color: #2E3754;
}
@media (max-width: 768px) {
  .p-franchise-cost__table {
    width: 35rem;
  }
}
.p-franchise-cost__table th,
.p-franchise-cost__table td {
  height: 6rem;
  padding: 0 1rem;
  text-align: center;
  border-bottom: 0.05rem solid #ccc;
  vertical-align: middle;
}
.p-franchise-cost__table tr:first-child th,
.p-franchise-cost__table tr:first-child td {
  border-top: 0.05rem solid #ccc;
}
.p-franchise-cost__table th {
  width: 29.4rem;
  border-left: 0.05rem solid #ccc;
  background: #2E3754;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  color: #fff;
}
@media (max-width: 768px) {
  .p-franchise-cost__table th {
    width: 12.3rem;
    font-size: 1.6rem;
  }
}
.p-franchise-cost__table td {
  border-right: 0.05rem solid #ccc;
  border-left: 0.05rem solid #ccc;
  background: #fff;
  font-size: 2.2rem;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-franchise-cost__table td {
    padding: 0 0.5rem;
    font-size: 1.6rem;
    white-space: nowrap;
  }
}
.p-franchise-cost__table tr:first-child th {
  border-top-left-radius: 1rem;
}
@media (max-width: 768px) {
  .p-franchise-cost__table tr:first-child th {
    border-top-left-radius: 0.4rem;
  }
}
.p-franchise-cost__table tr:first-child td {
  border-top-right-radius: 1rem;
}
@media (max-width: 768px) {
  .p-franchise-cost__table tr:first-child td {
    border-top-right-radius: 0.4rem;
  }
}
.p-franchise-cost__table tr:last-child th {
  border-bottom-left-radius: 1rem;
}
@media (max-width: 768px) {
  .p-franchise-cost__table tr:last-child th {
    border-bottom-left-radius: 0.4rem;
  }
}
.p-franchise-cost__table tr:last-child td {
  border-bottom-right-radius: 1rem;
}
@media (max-width: 768px) {
  .p-franchise-cost__table tr:last-child td {
    border-bottom-right-radius: 0.4rem;
  }
}
.p-franchise-cost__total {
  display: flex;
  align-items: center;
  width: 83.4rem;
  height: 7rem;
  margin: 2rem auto 0;
  border-radius: 1rem;
  background: #2E3754;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  text-align: center;
  color: #fdfdfd;
}
@media (max-width: 768px) {
  .p-franchise-cost__total {
    display: block;
    width: 35rem;
    height: auto;
    margin-top: 1.6rem;
    padding: 2rem 1rem;
  }
}
.p-franchise-cost__total dt {
  width: 29.2rem;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-franchise-cost__total dt {
    width: auto;
    font-size: 1.6rem;
    line-height: 1.4rem;
  }
}
.p-franchise-cost__total dd {
  flex: 1;
  font-size: 3.2rem;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .p-franchise-cost__total dd {
    margin-top: 1.6rem;
    font-size: 2.4rem;
  }
}

.p-academy {
  overflow-x: clip;
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: -0.04rem;
  font-feature-settings: normal;
  color: #333333;
}
.p-academy__lead {
  position: relative;
  padding-top: 9.6rem;
  padding-bottom: 4.8rem;
}
.p-academy__lead-text {
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 2rem;
}
@media (max-width: 768px) {
  .p-academy__lead-text {
    font-size: 1.6rem;
    line-height: 2.4rem;
  }
}
.p-academy__nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  margin-top: 5.6rem;
}
@media (max-width: 768px) {
  .p-academy__nav {
    display: none;
  }
}
.p-academy__nav-link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  flex-basis: calc((100% - 2.4rem) / 4);
  height: 3.2rem;
  border-radius: 0.6rem;
  background: #69727D;
  font-size: 1.4rem;
  font-weight: 700;
  color: #fff;
  transition: opacity 0.15s;
}
.p-academy__nav-link:hover {
  opacity: 0.8;
}
.p-academy__nav-link img {
  width: 1.6rem;
  height: 1.6rem;
}
.p-academy__title {
  position: relative;
  z-index: 1;
  font-size: 4.32rem;
  font-weight: 900;
  line-height: 1.5;
}
@media (max-width: 768px) {
  .p-academy__title {
    font-size: 3rem;
  }
}
.p-academy__title::before {
  content: attr(data-en);
  position: absolute;
  top: -4rem;
  left: 0;
  z-index: -1;
  font-size: 180%;
  white-space: nowrap;
  opacity: 0.1;
}
@media (max-width: 768px) {
  .p-academy__title::before {
    top: -3.2rem;
  }
}
.p-academy__title--white {
  color: #fff;
}
.p-academy__title--gallery {
  margin-top: 8rem;
}
.p-academy__sec {
  padding-top: 4.8rem;
  padding-bottom: 4.8rem;
}
.p-academy__row {
  display: flex;
  flex-direction: row-reverse;
  gap: 4.8rem;
  margin-top: 1.6rem;
}
@media (max-width: 768px) {
  .p-academy__row {
    display: block;
  }
}
.p-academy__row--reverse {
  flex-direction: row;
}
.p-academy__img {
  flex: 1 1 0;
  min-width: 0;
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 0.8rem;
  object-fit: cover;
}
.p-academy__text {
  flex: 1 1 0;
  min-width: 0;
}
@media (max-width: 768px) {
  .p-academy__text {
    margin-top: 4.8rem;
  }
}
.p-academy__catch {
  font-size: 2.4rem;
  font-weight: 900;
  line-height: 3.2rem;
}
.p-academy__body {
  margin-top: 2rem;
  font-weight: 300;
  line-height: 1.625;
  text-align: justify;
}
.p-academy__plans {
  display: flex;
  gap: 1.2rem;
  padding-bottom: 4.8rem;
}
@media (max-width: 768px) {
  .p-academy__plans {
    display: block;
  }
}
.p-academy__plan {
  flex: 1 1 0;
  min-width: 0;
  padding: 1.6rem;
  border-radius: 0.6rem;
  background: rgba(51, 51, 51, 0.05);
}
@media (max-width: 768px) {
  .p-academy__plan + .p-academy__plan {
    margin-top: 1.2rem;
  }
}
.p-academy__plan dt {
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 2rem;
}
.p-academy__plan dd {
  font-weight: 700;
}
.p-academy__plan-row + .p-academy__plan-row {
  margin-top: 1.2rem;
}
.p-academy__dark {
  position: relative;
  background-color: #200038;
  background-image: radial-gradient(circle at 7% 86%, hsl(269, 87%, 5%) 0%, transparent 100%), radial-gradient(circle at 52% 4%, hsl(249, 91%, 14%) 0%, transparent 100%), radial-gradient(circle at 64% 3%, hsl(337, 98%, 6%) 0%, transparent 100%), radial-gradient(circle at 96% 15%, hsl(243, 94%, 7%) 0%, transparent 100%), radial-gradient(circle at 68% 80%, hsl(288, 85%, 8%) 0%, transparent 100%);
}
.p-academy__dark::before, .p-academy__dark::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 12.8rem;
  background: #fff;
  transform: skewY(3deg);
}
.p-academy__dark::before {
  top: -0.2rem;
  transform-origin: top right;
}
.p-academy__dark::after {
  bottom: -0.2rem;
  transform-origin: bottom left;
}
.p-academy__dark > .l-inner09 {
  position: relative;
  z-index: 1;
  padding-top: 19.2rem;
  padding-bottom: 17.6rem;
}
.p-academy__dark--top::after {
  content: none;
}
.p-academy__dark--top > .l-inner09 {
  padding-bottom: 11.2rem;
}
.p-academy__videos {
  display: flex;
  gap: 2rem;
  margin-top: 4rem;
}
@media (max-width: 768px) {
  .p-academy__videos {
    display: block;
  }
}
.p-academy__video {
  position: relative;
  flex: 1 1 0;
  min-width: 0;
  display: block;
  width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
  background: #000;
  cursor: pointer;
}
@media (max-width: 768px) {
  .p-academy__video + .p-academy__video {
    margin-top: 2rem;
  }
}
.p-academy__video::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 9.9rem;
  background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.67), rgba(0, 0, 0, 0.54) 14%, rgba(0, 0, 0, 0.15) 54%, rgba(0, 0, 0, 0.05) 72%, transparent 94%);
  pointer-events: none;
}
.p-academy__video:hover .p-academy__video-play {
  opacity: 1;
}
.p-academy__video iframe {
  position: absolute;
  inset: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  border: 0;
}
.p-academy__video-thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-academy__video-play {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  width: 6.8rem;
  height: 4.8rem;
  opacity: 0.8;
  transform: translate(-50%, -50%);
  transition: opacity 0.15s;
}
.p-academy__gallery {
  margin-top: 4rem;
}
.p-academy__gallery .splide__list {
  flex-wrap: wrap;
  gap: 1.6rem;
}
@media (max-width: 768px) {
  .p-academy__gallery .splide__list {
    flex-wrap: nowrap;
    gap: 0;
  }
}
.p-academy__gallery.splide:not(.is-active) .splide__list {
  display: flex;
}
.p-academy__gallery .splide__slide {
  flex-basis: calc((100% - 6.4rem) / 5);
}
@media (max-width: 768px) {
  .p-academy__gallery .splide__slide {
    flex-basis: auto;
  }
}
.p-academy__gallery .splide__pagination {
  display: flex;
  justify-content: center;
  gap: 0.8rem;
  margin-top: 1.6rem;
}
.p-academy__gallery .splide__pagination__page {
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.4);
}
.p-academy__gallery .splide__pagination__page.is-active {
  background: #fff;
}
.p-academy__gallery-btn {
  display: block;
  width: 100%;
  cursor: pointer;
  transition: opacity 0.15s;
}
.p-academy__gallery-btn:hover {
  opacity: 0.8;
}
.p-academy__gallery-btn img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0.8rem;
}
.p-academy__lightbox {
  width: 80rem;
  max-width: calc(100% - 3.2rem);
  padding: 0;
  border: 0;
  background: transparent;
  overflow: visible;
}
.p-academy__lightbox::backdrop {
  background: rgba(0, 0, 0, 0.8);
}
.p-academy__lightbox-img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0.8rem;
}
.p-academy__lightbox-close {
  position: absolute;
  top: -4.8rem;
  right: 0;
  width: 4rem;
  height: 4rem;
  padding: 0.4rem;
  cursor: pointer;
}
.p-academy__lightbox-close img {
  width: 3.2rem;
  height: 3.2rem;
}
.p-academy__faq {
  margin-top: 4rem;
  padding-block: 1.2rem;
  border-radius: 0.6rem;
  background: rgba(51, 51, 51, 0.1);
}
.p-academy__faq-item + .p-academy__faq-item {
  margin-top: 0.4rem;
}
.p-academy__faq-q {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  padding: 1.2rem 1.6rem;
  cursor: pointer;
  list-style: none;
  transition: opacity 0.15s;
}
@media (max-width: 768px) {
  .p-academy__faq-q {
    padding-inline: 1.2rem;
  }
}
.p-academy__faq-q::-webkit-details-marker {
  display: none;
}
.p-academy__faq-q:hover {
  opacity: 0.8;
}
.p-academy__faq-q img {
  flex-shrink: 0;
  width: 1.6rem;
  height: 1.6rem;
  transition: transform 0.3s;
}
.p-academy__faq-item[open] .p-academy__faq-q img {
  transform: rotate(180deg);
}
.p-academy__faq-a {
  margin: 0.4rem 1.6rem 0;
  padding-bottom: 1.6rem;
  font-weight: 700;
  line-height: 1.75;
  color: #374151;
}
@media (max-width: 768px) {
  .p-academy__faq-a {
    margin-inline: 1.2rem;
  }
}
.p-academy__banner {
  display: block;
  margin-top: 6.4rem;
  transition: opacity 0.1s;
}
.p-academy__banner:hover {
  opacity: 0.8;
}
.p-academy__banner img {
  display: block;
  width: 100%;
  height: auto;
  border: 0.8rem solid #DE5013;
  border-radius: 1.2rem;
}
@media (max-width: 768px) {
  .p-academy__banner img {
    border-width: 0.4rem;
  }
}
.p-academy__shop {
  display: block;
  width: 32rem;
  margin: 4rem auto 0;
  padding-inline: 1.2rem;
  color: #fff;
  transition: opacity 0.15s;
}
@media (max-width: 768px) {
  .p-academy__shop {
    width: 100%;
  }
}
.p-academy__shop:hover {
  opacity: 0.9;
}
.p-academy__shop-img {
  display: block;
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 0.8rem;
  object-fit: cover;
}
.p-academy__shop-name {
  margin-top: 1.2rem;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 3.2rem;
  text-align: center;
}
.p-academy__shop-info {
  margin-top: 1.6rem;
}
.p-academy__shop-info dt {
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 2rem;
}
@media (max-width: 768px) {
  .p-academy__shop-info dt {
    font-size: 1.6rem;
    line-height: 2.4rem;
  }
}
.p-academy__shop-info dd {
  font-weight: 700;
}
@media (max-width: 768px) {
  .p-academy__shop-info dd {
    font-size: 1.8rem;
    line-height: 2.8rem;
  }
}
.p-academy__shop-info dd + dt {
  margin-top: 1.2rem;
}

@media (max-width: 768px) {
  .u-br-pc {
    display: none;
  }
}

.u-br-sp {
  display: none;
}
@media (max-width: 768px) {
  .u-br-sp {
    display: inline;
  }
}

@media (max-width: 768px) {
  .u-pc-only {
    display: none;
  }
}

.u-sp-only {
  display: none;
}
@media (max-width: 768px) {
  .u-sp-only {
    display: inline;
  }
}
