@charset "UTF-8";
:root {
  --color-primary: #F0813B;
  --color-secondary: #F8F2EE;
  --color-text: #333;
  --color-text2: #fff;
  --color-text3: #F0813B;
  --color-available:#f0813b;
  --color-limited:#86B051;
  --color-full:#E4795C;
  --color-white: #fff;
  --ff-main: "Zen Maru Gothic", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  --ff-eg: "Montserrat", sans-serif;
  --inner-s: 34.375rem;
  --inner-l: 50rem;
  --inner-xl: 67.5rem;
  --padding-s: 1.25rem;
  --padding: 1.25rem;
  --header-pc: 6.625rem;
  --header-sp: 6rem;
  --ease-time: 0.3s;
  --ease-type: ease;
  --break-xxl: 1399.98px;
  --break-xl: 1079.98px;
  --break-l: 991.98px;
  --break-m: 767.98px;
  --break-s: 575.98px;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: var(--header-pc);
}

body {
  color: var(--color-text);
  font-family: var(--ff-main);
}
body:has(.add-active) {
  overflow: hidden;
}

summary {
  list-style-type: none;
}

summary::-webkit-details-marker {
  display: none;
}

/*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  -webkit-box-sizing: border-box;
  border-style: solid;
  border-width: 0;
          box-sizing: border-box;
  min-width: 0;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -webkit-tap-highlight-color: transparent; /* 3*/
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
  border-top-width: 1px;
          box-sizing: content-box; /* 1 */
  clear: both;
  color: inherit;
  height: 0; /* 1 */
  margin: 0;
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  color: inherit;
  text-decoration: none;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

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

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none; /* 1 */
  -moz-appearance: none;
       appearance: none;
  background: transparent;
  border-radius: 0;
  color: inherit;
  font: inherit;
  margin: 0;
  padding: 0;
  text-align: inherit;
  text-transform: inherit; /* 2 */
  vertical-align: middle;
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  margin: 0;
  min-width: 0;
  padding: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/**
 * Fix appearance for Firefox
 */
[type=number] {
  -moz-appearance: textfield;
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
  border-collapse: collapse;
  border-color: inherit; /* 1 */
}

caption {
  text-align: left;
}

td,
th {
  padding: 0;
  vertical-align: top;
}

th {
  font-weight: bold;
  text-align: left;
}

.l-inner {
  margin-inline: auto;
  padding-inline: var(--padding);
  position: relative;
  width: min(100%, var(--inner-xl) + var(--padding) * 2);
}

.l-inner--l {
  margin-inline: auto;
  padding-inline: var(--padding);
  position: relative;
  width: min(100%, var(--inner-l) + var(--padding) * 2);
}

.l-inner--s {
  margin-inline: auto;
  padding-inline: var(--padding);
  position: relative;
  width: min(100%, var(--inner-s) + var(--padding) * 2);
}

.l-main {
  overflow: hidden;
}

.c-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  border-radius: 3.125rem;
  font-size: 1rem;
  font-weight: 700;
          justify-content: center;
  padding: 1.375rem 2.5rem;
  text-align: center;
  -webkit-transition: background-color var(--ease-time) var(--ease-type) 0s, color var(--ease-time) var(--ease-type) 0s;
  border: 2px solid var(--color-primary);
  transition: background-color var(--ease-time) var(--ease-type) 0s, color var(--ease-time) var(--ease-type) 0s;
}

.c-btn--main {
  background-color: var(--color-primary);
  color: var(--color-text2);
}

.c-btn--white {
  background-color: #fff;
  color: var(--color-text3);
}

.c-btn--mail {
  background-color: var(--color-primary);
  color: var(--color-text2);
}

.c-btn--submit {
  background-color: var(--color-primary);
  color: var(--color-text2);
  text-align: left;
}

.c-lowerHead {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  left: var(--padding);
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 2rem;
}

.c-lowerHead--main {
  font-size: clamp(2rem, 1.2021276596rem + 3.4042553191vw, 3.5rem);
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1;
}

.c-lowerHead--sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: var(--color-primary);
  font-family: var(--ff-eg);
  font-size: clamp(1rem, 0.4680851064rem + 2.2695035461vw, 2rem);
  font-weight: 600;
  gap: 1rem;
  letter-spacing: 0.08em;
}
.c-lowerHead--sub img {
  aspect-ratio: 1;
}

.c-title {
  display: grid;
  gap: 2rem;
  place-items: center;
  text-align: center;
}

.c-title__main {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
  font-size: 2.25rem;
  font-weight: 700;
  letter-spacing: 0.08em;
          order: 2;
}
[data-title-color=white] .c-title__main {
  color: var(--color-text2);
}

.c-title__sub {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
  color: var(--color-primary);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: var(--ff-eg);
  font-weight: 600;
  letter-spacing: 0.08em;
          order: 1;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  text-transform: uppercase;
}
[data-title-color=white] .c-title__sub {
  color: var(--color-text2);
}

.p-breadcrumb {
  bottom: 2.5rem;
  color: var(--black, #354245);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: 700;
  letter-spacing: 0.0625em;
  position: absolute;
  right: var(--padding);
  z-index: 1;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  gap: 0.75rem;
          justify-content: center;
  letter-spacing: 0.08em;
}

.p-contact {
  margin-top: 10.625rem;
}

.p-contact__deco--top {
  height: 7.6vw;
  position: relative;
  width: 100%;
}
.p-contact__deco--top::before {
  background: transparent url(../images/common/deco-cta-top.webp) no-repeat center center/cover;
  content: "";
  height: inherit;
  left: 50%;
  position: absolute;
  top: 0;
  translate: -50%;
  width: inherit;
}

.p-contact__deco--bottom {
  height: 7.6vw;
  position: relative;
  width: 100%;
}
.p-contact__deco--bottom::before {
  background: transparent url(../images/common/deco-cta-bottom.webp) no-repeat center center/cover;
  content: "";
  height: inherit;
  left: 50%;
  position: absolute;
  top: 0;
  translate: -50%;
  width: inherit;
}

.p-contact__main {
  background-color: var(--color-primary);
  padding-block: 6.25rem;
}

.p-contact__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  gap: 1.8rem;
          justify-content: center;
}

.p-contact__title {
  margin-inline: auto;
}
.p-contact__title[data-title-position=left] {
  place-items: start;
  text-align: left;
}

.p-contact__title--main {
  line-height: 1.8;
}

.p-contact__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 4rem;
}

.p-contact__text {
  color: var(--color-text2);
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 2;
}

.p-contact__link {
  gap: 2rem;
  max-width: 18.5rem;
  padding: 1.3rem;
  width: 100%;
}

.p-footer__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-inline: auto;
  padding-block: 5rem;
  width: min(100%, 41.5625rem);
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-footer__contact {
  font-size: 1.125rem;
  gap: 1rem;
  letter-spacing: 0.08em;
  line-height: 1.7777777778;
  margin-top: 2rem;
  padding: 0.84375rem 2.15625rem;
}

.p-footerCopyright {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-block: 1.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  background-color: var(--color-primary);
          justify-content: center;
}

.p-footerCopyright__text {
  color: var(--color-text2);
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.08em;
}

.p-footerLogo {
  width: 15rem;
}

.p-footerNav {
  margin-top: 4rem;
  width: 100%;
}

.p-footerNav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  gap: 2.5rem;
          justify-content: center;
}

.p-footerNav__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
  border-bottom-style: solid;
  border-bottom-width: 1px;
          justify-content: space-between;
  width: calc(100% - 1.6666666667rem);
}
.p-footerNav__item[data-footer=flow] {
  border-bottom-color: #E4795C;
}
.p-footerNav__item[data-footer=class] {
  border-bottom-color: #2D98CE;
}
.p-footerNav__item[data-footer=faq] {
  border-bottom-color: #86B051;
}

.p-footerNav__link {
  font-weight: 700;
  letter-spacing: 0.08em;
  padding-block: 1rem;
  -webkit-transition: opacity var(--ease-time) var(--ease-type) 0s;
  font-size: 0.875rem;
  transition: opacity var(--ease-time) var(--ease-type) 0s;
}

.p-header {
  background-color: transparent;
  height: var(--header-pc);
  left: 0;
  padding-block: 1.5rem;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 1000;
}

.p-header__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-inline: auto;
  padding-inline: 3.125rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.p-header__contents {
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
  border-radius: 3.125rem;
          justify-content: space-between;
  padding: 1rem 3.125rem;
  width: calc(100% - 11rem - 2rem);
}

.p-header__btn {
  line-height: 1.625;
  padding: 0.875rem 2.5rem;
}

.p-headerBurger {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  aspect-ratio: 1;
  background-color: transparent;
  background-color: var(--color-primary);
  border: none;
  border-radius: 50px;
  cursor: pointer;
  display: none;
  outline: none;
  padding: 0;
  position: relative;
  width: 3rem;
  z-index: 1001;
}

.p-headerBurger__line {
  position: absolute;
}

.p-headerBurger__btn {
  position: absolute;
}

.p-headerLogo {
  aspect-ratio: 100/26;
  width: 6.25rem;
}

.p-headerLogo__link {
  -webkit-transition: opacity var(--ease-time) var(--ease-type) 0s;
  display: block;
  transition: opacity var(--ease-time) var(--ease-type) 0s;
}

.p-headerNav__logo {
  aspect-ratio: 160/42;
  display: none;
  width: 10rem;
}
.p-headerNav__logo img {
  height: 100%;
  width: 100%;
}
.add-active .p-headerNav__logo {
  display: block;
}

.p-headerNav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 40px;
     -moz-column-gap: 40px;
          column-gap: 40px;
}

.p-headerNav__link {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.1428571429;
  -webkit-transition: opacity var(--ease-time) var(--ease-type) 0s;
  transition: opacity var(--ease-time) var(--ease-type) 0s;
}

.p-headerNav__contact {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  gap: 1rem;
          justify-content: center;
  padding-inline: 0;
  width: 100%;
}

.p-lowerFv {
  aspect-ratio: 1440/560;
  background-color: transparent;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  max-height: 35rem;
  position: relative;
  width: 100%;
}
.p-lowerFv[data-fv=flow] {
  background-image: url(../images/flow/bg-flow.webp);
}
.p-lowerFv[data-fv=school] {
  background-image: url(../images/school/bg-school.webp);
}
.p-lowerFv[data-fv=faq] {
  background-image: url(../images/faq/bg-faq.webp);
}
.p-lowerFv[data-fv=contact] {
  background-image: url(../images/contact/bg-contact.webp);
}
.p-lowerFv[data-fv=privacy] {
  background-image: url(../images/privacy/bg-privacy.webp);
}
.p-lowerFv::after {
  aspect-ratio: 1440/180;
  background: transparent url(../images/common/deco-lower-fv.webp) no-repeat center center/cover;
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  width: 100%;
}

.p-lowerFv__inner {
  height: 100%;
  position: relative;
}

.p-school {
  background-color: var(--color-secondary);
  border-radius: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1rem;
  padding: 1rem;
}

.p-school__img {
  aspect-ratio: 300/200;
  border-radius: 10px;
  overflow: hidden;
  width: 100%;
}
.p-school__img img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-school__title {
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.4;
}

.p-school__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.75rem;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  font-weight: 500;
}

.p-school__post {
  line-height: 1.4;
}

.p-school__access {
  line-height: 1.4;
}

.p-school__business {
  font-size: 0.875rem;
  line-height: 1;
}

.p-school__link {
  font-size: 0.875rem;
  gap: 1rem;
  letter-spacing: 0.08em;
  padding: 0.81rem;
  width: 100%;
}

.co-form {
  margin-block: 7.5rem 5rem;
  position: relative;
}
.co-form::before, .co-form::after {
  content: "";
  position: absolute;
  z-index: -1;
}
.co-form::before {
  aspect-ratio: 400/404;
  background: transparent url(../images/common/deco-lower1.webp) no-repeat center center/contain;
  left: -7.75rem;
  top: -6.75rem;
  width: min(37.037037037%, 25rem);
}
.co-form::after {
  aspect-ratio: 1;
  background: transparent url(../images/common/deco-lower3.webp) no-repeat center center/contain;
  content: "";
  position: absolute;
  right: -6rem;
  top: 30%;
  width: min(29.6296296296%, 20rem);
}

.co-form__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-inline: auto;
  width: min(47.5rem, 100%);
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}

.co-form__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.co-form__item[data-input=textarea] {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.co-form__label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
  font-weight: 700;
  gap: 1rem;
          justify-content: flex-start;
  letter-spacing: 0.08em;
  white-space: nowrap;
}

.co-form__require {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  background-color: var(--color-primary);
  border-radius: 50px;
  color: var(--color-text2);
  font-size: 0.875rem;
  font-weight: 700;
          justify-content: center;
  letter-spacing: 0.08em;
  padding: 0.5rem 1rem;
}

.co-form__input {
  width: 31.125rem;
}
[data-input=textarea] .co-form__input {
  height: 20rem;
}

.co-form__submit {
  margin-inline: auto;
  margin-top: 2rem;
  max-width: 12rem;
  position: relative;
}
.co-form__submit svg {
  position: absolute;
  right: 2.5rem;
  top: 50%;
  translate: 0 -50%;
}
.co-form__submit:has(.c-btn--submit:enabled:hover) svg circle {
  fill: var(--color-primary);
}

.co-form__btn {
  gap: 2rem;
  margin-inline: auto;
  padding-block: 1.3rem;
}

.co-form__deco {
  aspect-ratio: 360/264;
  background: transparent url(../images/common/deco-lower2.webp) no-repeat center center/contain;
  bottom: -5rem;
  left: -4.0625rem;
  position: absolute;
  width: 22.5rem;
  z-index: -1;
}

.co-formPrivacy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-inline: auto;
  margin-top: 3.125rem;
  width: min(47.5rem, 100%);
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem;
}

.co-formPrivacy__text {
  font-weight: 500;
  line-height: 1.6;
}

.co-formPrivacy__link {
  color: var(--logo-blue, var(--black, #2D98CE));
  font-weight: 500;
  -webkit-transition: opacity var(--ease-time) var(--ease-type) 0s;
  text-decoration: underline;
  transition: opacity var(--ease-time) var(--ease-type) 0s;
  transition: opacity var(--ease-time) var(--ease-type) 0s;
}

.co-formPrivacy__box {
  font-weight: 500;
}

.fa-contents {
  margin-top: 7.5rem;
  position: relative;
}
.fa-contents::before, .fa-contents::after {
  content: "";
  position: absolute;
  z-index: -1;
}
.fa-contents::before {
  aspect-ratio: 495/404;
  background: transparent url(../images/common/deco-lower1.webp) no-repeat center center/contain;
  left: -13.375rem;
  top: -5.625rem;
  width: 30.9375rem;
  width: min(38.8888888889%, 26.25rem);
}
.fa-contents::after {
  aspect-ratio: 1;
  background: transparent url(../images/common/deco-lower3.webp) no-repeat center center/contain;
  content: "";
  position: fixed;
  right: -3.25rem;
  top: 60%;
  width: min(37.037037037%, 25rem);
}

.fa-contents__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-inline: auto;
  width: min(48.75rem, 100%);
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.25rem;
}

.fa-contents__details {
  border-radius: 20px;
  overflow: hidden;
}

.fa-contents__summary {
  background: var(--color-secondary);
  cursor: pointer;
  display: block;
}
.fa-contents__summary::-webkit-details-marker {
  /* Safariで表示されるデフォルトの三角形アイコンを消します */
  display: none;
}

.fa-contents__q {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
  gap: 2rem;
          justify-content: flex-start;
  width: calc(100% - 2.5rem);
}

.fa-contents__qInner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 1rem 2rem;
}

.fa-contents__symbol {
  aspect-ratio: 1;
  background-color: var(--color-primary);
  border-radius: 100px;
  color: var(--color-text2);
  display: grid;
  font-family: var(--ff-eg);
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  place-items: center;
  width: 3.5rem;
}

.fa-contents__question {
  color: var(--color-text3);
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.6;
  width: calc(100% - 2rem - 3.5rem);
}

.fa-contents__icon {
  position: relative;
  width: 2.5rem;
}
.fa-contents__icon::before, .fa-contents__icon::after {
  background-color: var(--color-primary);
  border-radius: 5px;
  content: "";
  display: block;
  height: 0.1875rem;
  left: 50%;
  position: absolute;
  top: 0;
  translate: -50%;
  width: 1.4375rem;
}
.fa-contents__icon::after {
  rotate: 90deg;
  -webkit-transform-origin: center center;
          transform-origin: center center;
  -webkit-transition: rotate var(--ease-time) var(--ease-type) 0s;
  transition: rotate var(--ease-time) var(--ease-type) 0s;
}
.is-opened .fa-contents__icon::after {
  rotate: 0deg;
}

.fa-contents__content {
  overflow: hidden;
}

.fa-contents__aInner {
  background: var(--white, #FFF);
  border: 4px solid var(--light-orange, #F8F2EE);
  border-radius: 0px 0px 20px 20px;
  padding: 2rem 2.5rem;
}

.fa-contents__a {
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 2;
}

.fa-contents__deco {
  aspect-ratio: 360/264;
  background: transparent url(../images/common/deco-lower2.webp) no-repeat center center/contain;
  bottom: -10rem;
  left: 0;
  position: fixed;
  width: 22.5rem;
  z-index: -1;
}

.fl-contents {
  margin-top: 7.5rem;
  position: relative;
}
.fl-contents::before, .fl-contents::after {
  content: "";
  position: absolute;
}
.fl-contents::before {
  aspect-ratio: 495/404;
  background: transparent url(../images/flow/deco-flow1.webp) no-repeat center center/contain;
  left: -13.375rem;
  top: -5.625rem;
  width: 30.9375rem;
  width: min(45.8333333333%, 30.9375rem);
}
.fl-contents::after {
  aspect-ratio: 1;
  background: transparent url(../images/flow/deco-flow3.webp) no-repeat center center/contain;
  content: "";
  position: absolute;
  right: -3.25rem;
  top: 50%;
  translate: 0 -50%;
  width: min(37.037037037%, 25rem);
}

.fl-contents__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4.875rem;
  width: min(49rem + var(--padding) * 2, 100%);
}

.fl-contents__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  gap: 4rem;
          justify-content: center;
}
.fl-contents__item:not(.fl-contents__item:last-child) {
  position: relative;
}
.fl-contents__item:not(.fl-contents__item:last-child):after {
  aspect-ratio: 112/30;
  background: transparent url("../images/flow/deco-reader.webp") no-repeat center center/contain;
  bottom: -3.375rem;
  content: "";
  left: 0;
  position: absolute;
  width: 7rem;
}

.fl-contents__left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 7rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}

.fl-contents__step {
  color: var(--color-primary);
  font-family: var(--ff-eg);
  font-size: 1.125rem;
  font-weight: 600;
}

.fl-contents__img {
  aspect-ratio: 1;
  background-color: var(--color-primary);
  border-radius: 50%;
  display: grid;
  place-items: center;
  width: 100%;
}

.fl-contents__right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: calc(100% - 7rem - 4rem);
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1rem;
}

.fl-contents__head {
  color: var(--color-primary);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.6;
}

.fl-contents__line {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.fl-contents__text {
  font-weight: 500;
  line-height: 1.6;
}

.fl-contents__deco {
  aspect-ratio: 360/264;
  background: transparent url(../images/flow/deco-flow2.webp) no-repeat center center/contain;
  bottom: -16.5rem;
  left: -4.0625rem;
  position: absolute;
  width: 22.5rem;
  z-index: -1;
}

.fr-about {
  margin-top: 2.3125rem;
  padding-block: 7.5rem;
  position: relative;
}
.fr-about:before {
  aspect-ratio: 1;
  background: transparent url(../images/front/deco-about1.webp) no-repeat center center/contain;
  content: "";
  left: 4rem;
  position: absolute;
  top: 3rem;
  width: 15rem;
  z-index: -1;
}

.fr-about__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  gap: 2.5rem;
          justify-content: center;
}

.fr-about__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 4rem;
  width: calc(53.7037% - 2.5rem);
}

.fr-about__title {
  place-items: start;
  text-align: left;
}

.fr-about__title--main {
  line-height: 1.8;
}

.fr-about__text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 2;
}

.fr-about__picture {
  position: relative;
  width: min(46.2963%, 31.25rem);
  width: 34.72222vw;
}
.fr-about__picture::after {
  aspect-ratio: 400/294;
  background: transparent url(../images/front/deco-about2.webp) no-repeat center center/contain;
  content: "";
  position: absolute;
  right: -8rem;
  right: -6vw;
  top: -5.1875rem;
  top: -5.1875vw;
  width: min(25rem, 27.77778vw);
  width: 27.77778vw;
  z-index: -1;
}

.fr-cta {
  aspect-ratio: 1440/480;
  background: transparent url(../images/front/bg-cta.webp) no-repeat center center/cover;
  margin-top: 7.5rem;
  max-height: 30rem;
  position: relative;
  width: 100%;
}
.fr-cta::before {
  aspect-ratio: 245/231;
  background: transparent url(../images/front/deco-cta.webp) no-repeat center center/contain;
  content: "";
  position: absolute;
  right: 0;
  top: -4.5rem;
  width: 15.3125rem;
  z-index: -1;
}
.fr-cta:after {
  aspect-ratio: 1440/120;
  background: transparent url(../images/front/deco-bg-cta.webp) no-repeat center center/cover;
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  width: 100%;
}

.fr-cta__inner {
  height: 100%;
}

.fr-cta__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
  height: 100%;
          justify-content: space-between;
  position: relative;
  top: 5rem;
  z-index: 1;
}

.fr-cta__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
  background: var(--color-secondary);
  border-radius: 20px;
          flex-direction: column;
  gap: 4rem;
  padding: 3.125rem;
  width: min(48.1481481481%, 32.5rem);
}

.fr-school__title {
  gap: 1rem;
}

.fr-cta__link {
  width: min(13.25rem, 100%);
  -ms-flex-item-align: end;
      align-self: flex-end;
  gap: 1rem;
  padding: 0.8rem;
}

.fr-fv {
  aspect-ratio: 1440/700;
  background: transparent url(../images/front/mv-front.webp) no-repeat center center/cover;
  max-height: 43.75rem;
  position: relative;
  width: 100%;
}

.fr-fv__lead {
  bottom: 4.4444444444%;
  color: var(--color-text3);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: clamp(2rem, 0.9361702128rem + 4.5390070922vw, 4rem);
  font-weight: 700;
  left: 12.5%;
  position: absolute;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.5rem;
  letter-spacing: 0.06em;
}

.fr-fv__text {
  background-color: var(--color-secondary);
  border-radius: 10px;
  padding: 1.25rem 2.5rem;
}

.fr-fv__text--small {
  font-size: clamp(1.5rem, 0.7021276596rem + 3.4042553191vw, 3rem);
  letter-spacing: 0.06em;
}

.fr-fv__text--black {
  color: var(--color-text);
  font-size: clamp(1.5rem, 0.7021276596rem + 3.4042553191vw, 3rem);
  letter-spacing: 0.06em;
}

.fr-school {
  margin-top: 7.5rem;
}

.fr-school__inner {
  max-width: 100%;
  padding-inline: 0;
  width: 100%;
}

.fr-school__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-left: 180px;
  padding-right: var(--padding);
  width: calc(100% - 360px);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.fr-school__title {
  place-items: start;
  text-align: left;
}

.fr-school__link {
  gap: 2rem;
  letter-spacing: 0.08em;
  line-height: 1;
}
.fr-school__link img {
  vertical-align: baseline;
}

.fr-school__contents {
  margin-top: 4rem;
}

.fr-schoolSlide {
  margin-left: auto;
  width: calc(100% - 180px);
}

.fr-schoolSlide__track {
  position: relative;
}

.fr-schoolSlide__img {
  aspect-ratio: 320/200;
}

.fr-schoolSlide__arrows {
  background-color: #fff;
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1rem 1.5rem;
  position: absolute;
  right: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  border-radius: 30px 10px 10px 10px;
  gap: 1rem;
          justify-content: center;
}

.fr-schoolSlide__arrow {
  aspect-ratio: 1;
  width: 3rem;
}

.fr-schoolSlide__arrow--prev {
  background: transparent url(../images/front/icon-arrow-prev.webp) no-repeat center center/cover;
}
.fr-schoolSlide__arrow--prev:disabled {
  background-image: url(../images/front/icon-arrow-prev-ng.webp);
}

.fr-schoolSlide__arrow--next {
  aspect-ratio: 1;
  background: transparent url(../images/front/icon-arrow-next.webp) no-repeat center center/cover;
  width: 3rem;
}
.fr-schoolSlide__arrow--next:disabled {
  background-image: url(../images/front/icon-arrow-next-ng.webp);
}

.fr-service {
  margin-top: 7.5rem;
  position: relative;
}
.fr-service:after {
  aspect-ratio: 1;
  background: transparent url(../images/front/deco-service.svg) no-repeat center center/cover;
  bottom: -8.75rem;
  content: "";
  left: -8.75rem;
  position: absolute;
  width: 305px;
  z-index: -1;
}

.fr-service__deco--top {
  height: 8vw;
  position: relative;
  width: 100%;
}
.fr-service__deco--top::before {
  background: transparent url(../images/front/deco-service-top.webp) no-repeat center center/cover;
  content: "";
  height: inherit;
  left: 50%;
  position: absolute;
  top: 0;
  translate: -50%;
  width: inherit;
}

.fr-service__deco--bottom {
  height: 9.33333vw;
  position: relative;
  width: 100%;
}
.fr-service__deco--bottom::before {
  background: transparent url(../images/front/deco-service-bottom.webp) no-repeat center center/cover;
  content: "";
  height: inherit;
  left: 50%;
  position: absolute;
  top: -1px;
  translate: -50%;
  width: inherit;
}

.fr-service__main {
  background-color: var(--color-secondary);
  padding-block: 6.25rem;
}

.fr-service__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 5rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6.25rem;
}

.fr-service__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  gap: 4rem;
          justify-content: center;
}
.fr-service__item:nth-child(2n) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.fr-service__imgWrap {
  position: relative;
  width: 42.5925925926%;
}

.fr-service__label {
  background-color: #fff;
  border: 2px solid var(--color-primary);
  border-radius: 100px;
  color: var(--color-text3);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: var(--ff-eg);
  font-weight: 600;
  left: -2.5rem;
  left: max(-2.5rem, -3.25vw);
  letter-spacing: 0.08em;
  line-height: 1;
  padding: 1.125rem 2rem;
  position: absolute;
  top: 2.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  gap: 1rem;
          justify-content: center;
}
.fr-service__item:nth-child(2n) .fr-service__label {
  left: initial;
  right: max(-2.5rem, -3.25vw);
}

.fr-service__img {
  aspect-ratio: 460/320;
  border-radius: 32px;
  overflow: hidden;
}

.fr-service__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 47.7777777778%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}

.fr-service__lead {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
  font-size: 1.5rem;
  font-weight: 700;
          justify-content: flex-start;
  letter-spacing: 0.08em;
  line-height: 1.8;
}

.fr-service__text {
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 2;
}

.fr-serviceIcon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.fr-serviceIcon__item {
  aspect-ratio: 1;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 31%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  border-radius: 50%;
  gap: 0.75rem;
          justify-content: center;
}

.fr-serviceIcon__img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  aspect-ratio: 1;
          justify-content: center;
  width: 40%;
}

.fr-serviceIcon__text {
  font-size: clamp(0.625rem, 0.4920212766rem + 0.5673758865vw, 0.875rem);
  font-weight: 700;
  line-height: 1.2;
}

.ho-contents {
  margin-top: 7.5rem;
}

.ho-contents__wrapper {
  display: grid;
  gap: 40px;
  grid-template-columns: repeat(auto-fill, minmax(20.75rem, 1fr));
}

.pr-contents {
  margin-top: 7.5rem;
}

.p-contents__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.5rem;
}

.pr-contents__text {
  line-height: 1.6;
}

.pr-contents__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.75rem;
}

.pr-contents__head {
  font-size: 1.5rem;
  font-weight: 700;
}

.pr-contents__list {
  line-height: 1.6;
  padding-left: 1rem;
}

.pr-contents__listItem {
  list-style-type: disc;
}

.si-available {
  margin-top: 7.5rem;
}

.si-available__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.5rem;
}

.si-available__text {
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 2;
  text-align: center;
}

.si-available__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  margin-inline: auto;
  width: min(100%, 57.25rem);
}

.si-available__table {
  overflow-x: auto;
  /* スクロールバー全体のスタイル */
  /* スクロールバーのトラック（背景）のスタイル */
  /* スクロールバーのハンドル（つまみ）のスタイル */
}
.si-available__table::-webkit-scrollbar {
  height: 0.9375rem;
}
.si-available__table::-webkit-scrollbar-track {
  background: #FAFAFA;
  -webkit-box-shadow: 0px 1px 0px 0px #E8E8E8 inset, 0px -1px 0px 0px #F0F0F0 inset;
          box-shadow: 0px 1px 0px 0px #E8E8E8 inset, 0px -1px 0px 0px #F0F0F0 inset;
}
.si-available__table::-webkit-scrollbar-thumb {
  background-clip: content-box;
  background-color: #C1C1C1;
  border: 4px solid transparent;
  border-left: 0;
  border-radius: 7px;
  border-right: 0;
}

.si-available__status {
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: right;
}

.si-available__status--mark[data-status=available] {
  color: var(--color-available);
}
.si-available__status--mark[data-status=limited] {
  color: var(--color-limited);
}
.si-available__status--mark[data-status=full] {
  color: var(--color-full);
}

.si-available__business {
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.6;
  padding-left: 0.375rem;
}

.si-available__btn {
  margin-inline: auto;
  width: min(100%, 15.25rem);
}

.si-available__link {
  gap: 2rem;
  padding: 1.3rem;
}

.si-availableTable {
  border-collapse: separate;
  border-spacing: 6px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.6;
  table-layout: fixed;
  width: 100%;
}
.si-availableTable__head {
  background-color: #EAF3D7;
  border-radius: 10px;
  padding: 1rem;
  text-align: center;
  width: 5rem;
}
.si-availableTable__head[data-position="1st"], .si-availableTable__head[data-position="2nd"] {
  background-color: var(--color-primary);
  color: var(--color-text2);
  width: 9.25rem;
}

.si-availableTable__data {
  background: var(--color-secondary);
  border-radius: 10px;
  padding: 0.5rem;
  text-align: center;
  vertical-align: middle;
}

.si-info {
  margin-top: 7.5rem;
  position: relative;
}
.si-info::before, .si-info::after {
  content: "";
  position: absolute;
  z-index: -1;
}
.si-info::before {
  aspect-ratio: 518/410;
  background: transparent url(../images/school/deco-info.webp) no-repeat center center/contain;
  left: -13.75rem;
  top: max(-21.875rem, -32.40741vw);
  width: min(47.962962963%, 30.9375rem);
}
.si-info::after {
  aspect-ratio: 562/510;
  background: transparent url(../images/school/deco-info2.webp) no-repeat center center/contain;
  bottom: -17.5rem;
  right: -0.25rem;
  width: min(33.3333333333%, 22.5rem);
}

.si-info__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 4rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.si-info__map {
  aspect-ratio: 500/410;
  border-radius: 32px;
  overflow: hidden;
  width: 46.2962962963%;
}
.si-info__map iframe {
  height: 100%;
  width: 100%;
}

.si-info__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 47.7777777778%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}

.si-info__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
  border-bottom: 1px solid #CCD7DC;
          flex-direction: column;
  gap: 0.75rem;
  letter-spacing: 0.08em;
  padding-bottom: 1.25rem;
}

.si-info__term {
  color: var(--color-primary);
  font-weight: 700;
}

.si-info__data {
  font-weight: 500;
  line-height: 1.6;
}

.si-info__links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 7.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  gap: 4rem;
          justify-content: center;
}

.si-info__btn {
  max-width: 15.25rem;
  width: 100%;
}

.si-info__link {
  gap: 2rem;
  padding: 1.3rem;
}

.si-message {
  margin-top: 120px;
}

.si-message--top {
  height: 8.33333vw;
  position: relative;
  width: 100%;
}
.si-message--top::before {
  background: transparent url(../images/school/deco-message-top.webp) no-repeat center center/cover;
  content: "";
  height: inherit;
  left: 50%;
  position: absolute;
  top: 0;
  translate: -50%;
  width: inherit;
}

.si-message--bottom {
  height: 8.33333vw;
  position: relative;
  width: 100%;
}
.si-message--bottom::before {
  background: transparent url(../images/school/deco-message-bottom.webp) no-repeat center center/cover;
  content: "";
  height: inherit;
  left: 50%;
  position: absolute;
  top: 0;
  translate: -50%;
  width: inherit;
}

.si-message--main {
  background-color: var(--color-secondary);
  padding-block: 6.25rem;
}

.si-message__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 5rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5rem;
}

.si-message__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.si-message__img {
  border-radius: 32px;
  overflow: hidden;
  width: 46.2962962963%;
}

.si-message__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 47.7777777778%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 2rem;
}

.si-message__title {
  color: var(--color-primary);
  font-size: clamp(1.25rem, 1.1170212766rem + 0.5673758865vw, 1.5rem);
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.8;
}

.si-message__text {
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 2;
}

.si-messageFeature {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  gap: 1.5rem;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.si-messageFeature__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 10rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem;
}

.si-messageFeature__img {
  aspect-ratio: 1;
  width: 100%;
}

.si-messageFeature__head {
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}

.u-hide {
  display: block;
}

.u-hide--flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.u-show {
  display: none;
}

.u-hide--inline {
  display: inline-block;
}

.u-show--inline {
  display: none;
}

.u-show--flex {
  display: none;
}

.u-visually-hidden {
  border: 0;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
  -webkit-clip-path: inset(100%);
          clip-path: inset(100%);
  clip: rect(0 0 0 0);
  overflow: hidden;
}

input, select, textarea {
  background-color: var(--color-secondary);
}

textarea {
  resize: none;
}

.wpcf7-form-control-wrap {
  display: block;
  height: 100%;
  width: 100%;
}

.wpcf7-form-control {
  border-radius: 10px;
  height: 100%;
  padding: 1.03125rem 1.5rem;
  width: 100%;
}
.wpcf7-form-control input::-webkit-input-placeholder, .wpcf7-form-control textarea::-webkit-input-placeholder {
  color: #656666;
}
.wpcf7-form-control input::-moz-placeholder, .wpcf7-form-control textarea::-moz-placeholder {
  color: #656666;
}
.wpcf7-form-control input:-ms-input-placeholder, .wpcf7-form-control textarea:-ms-input-placeholder {
  color: #656666;
}
.wpcf7-form-control input::-ms-input-placeholder, .wpcf7-form-control textarea::-ms-input-placeholder {
  color: #656666;
}
.wpcf7-form-control input::placeholder, .wpcf7-form-control textarea::placeholder {
  color: #656666;
}
.wpcf7-form-control select {
  color: #656666;
}

.wpcf7-submit {
  border-radius: 3.125rem;
  padding-inline: 2.5rem;
}

.wpcf7-spinner {
  display: none;
}

select {
  background-image: url(../images/contact/icon-delta.webp);
  background-position: right 1.5rem center;
  background-repeat: no-repeat;
  background-size: 1rem 1rem;
}

.wpcf7-list-item {
  margin: 0;
}
.wpcf7-list-item input[type=checkbox] {
  display: none;
}

.wpcf7-list-item-label::before {
  aspect-ratio: 1;
  background-color: #fff;
  border: 1px solid #333;
  content: "";
  display: inline-block;
  margin-right: 1rem;
  position: relative;
  top: 2px;
  width: 1rem;
}
.wpcf7-list-item-label::after {
  border-bottom: solid 2px var(--color-primary);
  border-left: solid 2px var(--color-primary);
  content: "";
  display: block;
  height: 6px;
  left: 2px;
  opacity: 0;
  position: relative;
  top: -14px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transition: var(--ease-time);
  transition: var(--ease-time);
  width: 12px;
}
input[type=checkbox]:checked + .wpcf7-list-item-label::before {
  background-color: #fff;
}
input[type=checkbox]:checked + .wpcf7-list-item-label::after {
  opacity: 1;
}

.wpcf7-response-output {
  padding: 1.25rem;
  text-align: center;
}

@media (width <= 1399.98px) {
  body {
    color: var(--color-text);
  }
}

@media (width <= 1079.98px) {
  body {
    color: var(--color-text);
  }
}

@media (width <= 991.98px) {
  body {
    color: var(--color-text);
  }
  .p-header__inner {
    padding-inline: 0.5rem;
  }
  .fr-fv__text {
    padding: 1rem;
  }
  .fr-school__top {
    width: calc(100% - 180px);
  }
  .fr-service__inner {
    max-width: var(--inner-l);
  }
  .fr-service__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .fr-service__item:nth-child(2n) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .fr-service__imgWrap {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  .fr-service__label {
    bottom: 1rem;
    font-size: 0.875rem;
    left: 0;
    padding: 0.625rem 1.5rem;
    top: initial;
  }
  .fr-service__item:nth-child(2n) .fr-service__label {
    left: 0;
    right: initial;
  }
  .fr-service__img {
    margin-inline: auto;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  .fr-service__body {
    width: 100%;
  }
}

@media (width <= 767.98px) {
  body {
    color: var(--color-text);
  }
  .l-inner {
    max-width: var(--inner-s);
    padding-inline: var(--padding-s);
  }
  .l-inner--l {
    max-width: var(--inner-s);
    padding-inline: var(--padding-s);
  }
  .l-inner--s {
    max-width: var(--inner-s);
    padding-inline: var(--padding-s);
  }
  .c-lowerHead {
    bottom: 4.5rem;
    gap: 1rem;
    left: var(--padding-s);
    top: initial;
    translate: 0;
  }
  .c-lowerHead--sub img {
    width: 0.75rem;
  }
  .c-title {
    gap: 1rem;
  }
  .c-title__main {
    font-size: clamp(1.5rem, 1.1010638298rem + 1.7021276596vw, 2.25rem);
  }
  .p-breadcrumb {
    bottom: -1.25rem;
    font-size: 0.875rem;
    right: var(--padding-s);
  }
  .p-contact {
    margin-top: 5rem;
  }
  .p-contact__main {
    padding-block: 4rem;
  }
  .p-contact__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2rem;
  }
  .p-contact__title[data-title-position=left] {
    place-items: center;
    text-align: center;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .p-contact__title {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .p-contact__body {
    display: contents;
  }
  .p-contact__text {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
    font-size: 0.875rem;
    letter-spacing: normal;
            order: 3;
  }
  .p-contact__link {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
    max-width: 100%;
            order: 4;
    padding-inline: 0;
  }
  .p-contact__img {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .p-footer__contact {
    margin-inline: 0;
    width: 100%;
  }
  .p-footerLogo {
    width: 10rem;
  }
  .p-footerNav {
    margin-top: 2rem;
  }
  .p-footerNav__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.5rem;
    margin-inline: auto;
    max-width: 9.0625rem;
  }
  .p-footerNav__item {
    width: 100%;
  }
  .p-header {
    height: var(--header-sp);
    padding-block: 0.875rem;
  }
  .p-header__contents {
    padding: 0.5rem 1rem 0.5rem 1.5rem;
    width: 100%;
  }
  .p-headerBurger {
    display: block;
  }
  .p-headerBurger__line {
    background-color: #fff;
    border-radius: 4px;
    display: block;
    height: 4px;
    left: 50%;
    translate: -50% -50%;
    width: 20px;
    z-index: 1;
  }
  .p-headerBurger__line:nth-child(1) {
    top: calc(50% + 8px);
  }
  .p-headerBurger__line:nth-child(2) {
    top: 50%;
  }
  .p-headerBurger__line:nth-child(3) {
    top: calc(50% - 4px);
  }
  .add-active .p-headerBurger__line {
    background-color: #fff;
  }
  .add-active .p-headerBurger__line:nth-child(1) {
    top: 10px;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .add-active .p-headerBurger__line:nth-child(2) {
    left: 100%;
    opacity: 0;
  }
  .add-active .p-headerBurger__line:nth-child(3) {
    top: 10px;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .p-headerBurger__btn {
    left: 50%;
    top: 50%;
    translate: -50% -50%;
    z-index: 1;
  }
  .p-headerBurger__btn[data-menu=close] {
    display: block;
  }
  .p-headerBurger__btn[data-menu=open] {
    display: none;
  }
  .add-active .p-headerBurger__btn[data-menu=close] {
    display: none;
  }
  .add-active .p-headerBurger__btn[data-menu=open] {
    display: block;
  }
  .p-headerLogo {
    width: 5rem;
  }
  .p-headerNav {
    inset: 0;
    position: fixed;
    text-align: center;
    visibility: hidden;
    -webkit-transition: opacity var(--ease-time) var(--ease-type), visibility var(--ease-time) var(--ease-type) 0s;
    background-color: var(--color-secondary);
    height: 100vh;
    opacity: 0;
    transition: opacity var(--ease-time) var(--ease-type), visibility var(--ease-time) var(--ease-type) 0s;
    width: 100%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
            flex-direction: column;
    gap: 4rem;
    padding-inline: var(--padding-s);
  }
  .add-active .p-headerNav {
    opacity: 1;
    visibility: visible;
  }
  .p-headerNav::before, .p-headerNav::after {
    content: "";
    position: absolute;
  }
  .p-headerNav::before {
    aspect-ratio: 1;
    background: transparent url(../images/common/deco-nav1.webp) no-repeat center center/cover;
    left: -10.625rem;
    top: -6.25rem;
    width: 18.75rem;
  }
  .p-headerNav::after {
    aspect-ratio: 245/230;
    background: transparent url(../images/common/deco-nav2.webp) no-repeat center center/contain;
    bottom: -6.25rem;
    right: 0;
    width: 15.3125rem;
  }
  .p-headerNav__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
    row-gap: 1.5rem;
    width: 9.0625rem;
  }
  .p-headerNav__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
    border-bottom-style: solid;
    border-bottom-width: 1px;
            justify-content: space-between;
    width: 100%;
  }
  .p-headerNav__item[data-header=flow] {
    border-bottom-color: #E4795C;
  }
  .p-headerNav__item[data-header=school] {
    border-bottom-color: #2D98CE;
  }
  .p-headerNav__item[data-header=faq] {
    border-bottom-color: #86B051;
  }
  .p-headerNav__link {
    padding-block: 1rem;
  }
  .p-headerNav__contact {
    padding: 0.844rem;
  }
  .p-lowerFv[data-fv=flow] {
    background-image: url(../images/flow/bg-flow-sp.webp);
  }
  .p-lowerFv[data-fv=school] {
    background-image: url(../images/school/bg-school-sp.webp);
  }
  .p-lowerFv[data-fv=faq] {
    background-image: url(../images/faq/bg-faq-sp.webp);
  }
  .p-lowerFv[data-fv=contact] {
    background-image: url(../images/contact/bg-contact-sp.webp);
  }
  .p-lowerFv[data-fv=privacy] {
    background-image: url(../images/privacy/bg-privacy-sp.webp);
  }
  .p-lowerFv {
    aspect-ratio: 375/320;
  }
  .p-school__title {
    font-size: 1rem;
  }
  .p-school__address {
    font-size: 0.875rem;
  }
  .p-school__business {
    font-size: 0.75rem;
  }
  .p-school__link {
    font-size: 0.625rem;
    gap: 0.75rem;
  }
  .co-form {
    margin-block: 5rem 0;
  }
  .co-form::before, .co-form::after {
    display: none;
  }
  .co-form__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.75rem;
  }
  .co-form__label {
    width: 100%;
  }
  .co-form__input {
    width: 100%;
  }
  .co-form__submit {
    max-width: 100%;
  }
  .co-form__submit svg {
    right: 33.28358%;
  }
  .co-form__btn {
    width: 100%;
  }
  .co-form__deco {
    display: none;
  }
  .fa-contents {
    margin-top: 5rem;
  }
  .fa-contents::before, .fa-contents::after {
    display: none;
  }
  .fa-contents__q {
    gap: 0.875rem;
    width: calc(100% - 1.5rem);
  }
  .fa-contents__qInner {
    padding: 0.75rem;
  }
  .fa-contents__symbol {
    font-size: 0.875rem;
    width: 2rem;
  }
  .fa-contents__question {
    font-size: 0.875rem;
    width: calc(100% - 2rem - 0.75rem);
  }
  .fa-contents__icon {
    width: 1.5rem;
  }
  .fa-contents__icon::before, .fa-contents__icon::after {
    width: 0.8625rem;
  }
  .fa-contents__aInner {
    padding: 0.75rem 1.25rem;
  }
  .fa-contents__a {
    font-size: 0.875rem;
    letter-spacing: normal;
  }
  .fa-contents__deco {
    display: none;
  }
  .fl-contents {
    margin-top: 5rem;
  }
  .fl-contents::before {
    left: -5.375rem;
    top: -4.5rem;
    width: 53.3333333333vw;
  }
  .fl-contents::after {
    top: 45%;
    translate: 0;
    width: 40vw;
  }
  .fl-contents__inner {
    gap: 2.75rem;
  }
  .fl-contents__item:not(.fl-contents__item:last-child):after {
    aspect-ratio: 63/20;
    bottom: -2rem;
    width: 3.9375rem;
  }
  .fl-contents__item {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 1.5rem;
  }
  .fl-contents__left {
    gap: 0.25rem;
    width: 4rem;
  }
  .fl-contents__step {
    font-size: 0.625rem;
  }
  .fl-contents__img img {
    max-width: 2.25rem;
  }
  .fl-contents__right {
    gap: 0.75rem;
    width: calc(100% - 1.5rem - 4rem);
  }
  .fl-contents__head {
    font-size: 1rem;
  }
  .fl-contents__text {
    font-size: 0.875rem;
    line-height: 2;
  }
  .fl-contents__deco {
    bottom: -8rem;
    left: -3rem;
    width: 51.2vw;
  }
  .fr-about {
    margin-top: 4rem;
    padding-block: 0;
  }
  .fr-about::before {
    bottom: -12rem;
    left: -2.875rem;
    top: initial;
    width: 10rem;
  }
  .fr-about__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .fr-about__body {
    display: contents;
    width: 100%;
  }
  .fr-about__text {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .fr-about__picture {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    width: min(17.375rem, 82.98507%);
  }
  .fr-about__picture::after {
    right: -4rem;
    top: -1.5rem;
    width: min(12.1875rem, 58.20896vw);
  }
  .fr-cta {
    aspect-ratio: auto;
    background-image: url(../images/front/bg-cta-sp.webp);
    background-position: top center;
    background-size: contain;
    max-height: 100%;
    padding-top: 13.75rem;
  }
  .fr-cta::before, .fr-cta::after {
    display: none;
  }
  .fr-cta__contents {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
    top: initial;
  }
  .fr-cta__item {
    gap: 2rem;
    padding: 2rem;
    width: 100%;
  }
  .fr-cta__link {
    width: 100%;
  }
  .fr-fv {
    aspect-ratio: 375/480;
    background-image: url(../images/front/mv-front-sp.webp);
  }
  .fr-fv__lead {
    bottom: 2rem;
    left: 1.25rem;
  }
  .fr-school__inner {
    max-width: 100%;
    padding-inline: 0;
    width: 100%;
  }
  .fr-school__top {
    margin-left: 0;
    padding-inline: var(--padding-s);
  }
  .fr-school__link {
    margin-inline: auto;
    margin-top: 2rem;
    max-width: 20.9375rem;
  }
  .fr-schoolSlide {
    margin-left: auto;
    padding-inline: 0;
    width: calc(100vw - var(--padding-s));
  }
  .fr-schoolSlide__arrows {
    border-radius: 10px 4px 4px 4px;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
  }
  .fr-schoolSlide__arrow {
    width: 2rem;
  }
  .fr-service {
    margin-top: 5rem;
  }
  .fr-service::after {
    aspect-ratio: 240/205;
    background-image: url(../images/front/deco-service-sp.webp);
    bottom: -10.5rem;
    left: initial;
    right: -2.7rem;
    width: 15rem;
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
  }
  .fr-service__contents {
    gap: 4rem;
    margin-top: 2rem;
  }
  .fr-service__item {
    gap: 1rem;
  }
  .fr-service__lead {
    font-size: 1.25rem;
  }
  .fr-service__text {
    font-size: 0.875rem;
  }
  .fr-serviceIcon__item {
    width: 32.2388059701%;
  }
  .fr-serviceIcon__img {
    width: 37.037037037%;
  }
  .pr-contents {
    margin-top: 5rem;
  }
  .pr-contents__item {
    font-size: 0.875rem;
  }
  .pr-contents__head {
    font-size: 1.25rem;
  }
  .si-available__inner {
    gap: 2rem;
  }
  .si-available__text {
    font-size: 0.875rem;
    letter-spacing: normal;
    text-align: left;
  }
  .si-available__status {
    text-align: left;
  }
  .si-available__btn {
    width: 100%;
  }
  .si-info {
    margin-top: 5rem;
  }
  .si-info::before {
    background-image: url(../images/school/deco-info-sp.webp);
    left: -12.8%;
    top: max(-36.2666666667vw, -8.5rem);
    width: 45.3333333333vw;
  }
  .si-info::after {
    bottom: -10rem;
    width: 42.6666666667vw;
  }
  .si-info__contents {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
    gap: 2rem;
            justify-content: center;
  }
  .si-info__map {
    aspect-ratio: 335/220;
    border-radius: 20px;
    width: 100%;
  }
  .si-info__list {
    width: 100%;
  }
  .si-info__links {
    margin-top: 5rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
  }
  .si-info__btn {
    max-width: 100%;
  }
  .si-message--main {
    padding-block: 4rem;
  }
  .si-message__contents {
    gap: 2rem;
    margin-top: 2rem;
  }
  .si-message__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
  }
  .si-message__img {
    width: 100%;
  }
  .si-message__body {
    gap: 1rem;
    width: 100%;
  }
  .si-message__text {
    font-size: 0.875rem;
  }
  .si-messageFeature {
    gap: 1rem;
  }
  .si-messageFeature__item {
    width: 6.25rem;
  }
  .si-messageFeature__head {
    font-size: 0.75rem;
  }
  .u-hide {
    display: none;
  }
  .u-hide--flex {
    display: none;
  }
  .u-show {
    display: block;
  }
  .u-hide--inline {
    display: none;
  }
  .u-show--inline {
    display: inline-block;
  }
  .u-show--flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .wpcf7-submit {
    padding-inline: 33.28358%;
  }
}

@media (width <= 575.98px) {
  body {
    color: var(--color-text);
  }
}

@media (hover: hover) {
  .c-btn--main:-moz-any-link:hover {
    background-color: var(--color-white);
    color: var(--color-text3);
  }
  .c-btn--main:any-link:hover, .c-btn--main:enabled:hover {
    background-color: var(--color-white);
    color: var(--color-text3);
  }
  .c-btn--main:-moz-any-link:hover svg circle {
    fill: var(--color-primary);
  }
  .c-btn--main:any-link:hover svg circle, .c-btn--main:enabled:hover svg circle {
    fill: var(--color-primary);
  }
  .c-btn--white:-moz-any-link:hover {
    background-color: var(--color-primary);
    color: var(--color-text2);
  }
  .c-btn--white:any-link:hover, .c-btn--white:enabled:hover {
    background-color: var(--color-primary);
    color: var(--color-text2);
  }
  .c-btn--white:-moz-any-link:hover svg circle {
    fill: var(--color-white);
  }
  .c-btn--white:any-link:hover svg circle, .c-btn--white:enabled:hover svg circle {
    fill: var(--color-white);
  }
  .c-btn--submit:-moz-any-link:hover {
    background-color: var(--color-white);
    color: var(--color-text3);
  }
  .c-btn--submit:any-link:hover, .c-btn--submit:enabled:hover {
    background-color: var(--color-white);
    color: var(--color-text3);
  }
  .p-contact__link:-moz-any-link:hover {
    border-color: var(--color-white);
  }
  .p-contact__link:any-link:hover, .p-contact__link:enabled:hover {
    border-color: var(--color-white);
  }
  .p-footer__contact:-moz-any-link:hover svg path {
    fill: var(--color-primary);
  }
  .p-footer__contact:any-link:hover svg path, .p-footer__contact:enabled:hover svg path {
    fill: var(--color-primary);
  }
  .p-footerNav__link:-moz-any-link:hover {
    opacity: 0.7;
  }
  .p-footerNav__link:any-link:hover, .p-footerNav__link:enabled:hover {
    opacity: 0.7;
  }
  .p-headerLogo__link:-moz-any-link:hover {
    opacity: 0.7;
  }
  .p-headerLogo__link:any-link:hover, .p-headerLogo__link:enabled:hover {
    opacity: 0.7;
  }
  .p-headerNav__link:-moz-any-link:hover {
    opacity: 0.7;
  }
  .p-headerNav__link:any-link:hover, .p-headerNav__link:enabled:hover {
    opacity: 0.7;
  }
  .co-formPrivacy__link:-moz-any-link:hover {
    opacity: 0.7;
  }
  .co-formPrivacy__link:any-link:hover, .co-formPrivacy__link:enabled:hover {
    opacity: 0.7;
  }
}
/*# sourceMappingURL=style.css.map */