/* !custom properties */
:root {
  --fluid-min-width: 0;
  --fluid-cnt-width: 375;
  --fluid-max-width: 743;
}
@media (min-width: 744px) {
  :root {
    --fluid-min-width: 744;
    --fluid-cnt-width: calc(1216 + 16 * 2);
    --fluid-max-width: var(--fluid-cnt-width);
  }
}
:root {
  --fluid-1vw: 1vw;
  --fluid-100vw: 100vw;
}

/* !reset */
*, *::before, *::after {
  box-sizing: border-box;
}

* {
  margin: 0;
}

:where(html) {
  text-size-adjust: 100%;
  scrollbar-gutter: stable;
}

:where(body) {
  min-height: 100svh;
  overflow-wrap: anywhere;
  word-break: normal;
  line-break: strict;
  text-rendering: optimizeSpeed;
}

:where(button, input, label) {
  line-height: 1.2;
}

:where(h1, h2, h3, h4, h5, h6) {
  font-weight: normal;
}

:where(a) {
  color: inherit;
  text-decoration: none;
}

:where(a[class]) {
  text-decoration: none;
}

:where(a:not([class])) {
  text-decoration-skip-ink: auto;
}

:where(a:not([href])) {
  text-decoration: none;
  cursor: default;
}

:where(a[href^="tel:"]) {
  text-decoration: none;
}
@media (min-width: 744px) {
  :where(a[href^="tel:"]) {
    pointer-events: none;
  }
}

:where(ul, ol) {
  list-style: "";
  padding: 0;
}

:where(img, picture, figure, video) {
  display: block;
  width: 100%;
  max-width: fit-content;
  height: auto;
}

:where(textarea, :where(input[type=text])) {
  display: block;
  width: 100%;
  max-width: 100%;
}

:where(video[controls]) {
  cursor: pointer;
}

:where(video:focus) {
  outline: none;
}

:where(table) {
  border: none;
  border-collapse: collapse;
  border-spacing: 0;
}

:where(address) {
  font-style: normal;
}

:where(button, input, select, textarea, optgroup) {
  font: inherit;
}

@media (min-width: 320px) and (max-width: 743px) {
  :where(input, select, textarea) {
    font-size: 16px;
  }
}

:where(button, input) {
  overflow: visible;
}

:where(button, select) {
  text-transform: none;
}

:where(button, [type=button], [type=reset], [type=submit]),
::file-selector-button {
  cursor: pointer;
  appearance: button;
  touch-action: manipulation;
}

:where(textarea) {
  resize: vertical;
  field-sizing: content;
}

:where(textarea:not([rows])) {
  min-height: 10em;
}

:where(summary) {
  display: block;
  cursor: pointer;
}
:where(summary)::-webkit-details-marker {
  display: none;
}

/* !common */
:root {
  --color-back: #f8f6ef;
  --color-back01: #fef8d7;
  --color-blue: #2192d2;
  --color-green: #def3e2;
  --color-mizuiro: #5ebfdb;
  --color-orange: #f1a868;
  --color-pink: #e14062;
  --color-text: #333;
  --color-white: #fff;
  --color-yellow: #f3d422;
  --font-body: "Noto Sans JP", sans-serif;
  --font-en: "Rubik Bubbles", cursive;
  --font-heading: "Zen Maru Gothic", sans-serif;
}

@media (min-width: 744px) {
  :root {
    --header-height: 0;
  }
  html {
    scroll-padding-top: var(--header-height);
  }
  .header {
    width: min(100%, 1440px);
    opacity: 0;
    position: fixed;
    z-index: 10;
    transform: translateY(-100%);
    padding-inline-end: calc(100vw - var(--100vw));
    background-color: var(--color-white);
    transition: transform 0.4s ease, opacity 0.4s ease;
  }
  .header.is-visible {
    opacity: 0.9;
    transform: translateY(0);
  }
  .main {
    padding-block-start: var(--header-height);
  }
}
html {
  padding-block-end: env(safe-area-inset-bottom);
  font-size: clamp(var(--fluid-min-width) / var(--fluid-cnt-width) * 1rem, 16 / var(--fluid-cnt-width) * var(--fluid-100vw), var(--fluid-max-width) / var(--fluid-cnt-width) * 1rem);
  scroll-behavior: smooth;
}

body {
  overflow-x: hidden;
  background-color: var(--color-white);
  color: var(--color-text, #333);
  font-family: var(--font-body);
  font-size: 1em;
  line-height: 1.5;
}

small {
  font-size: max(10px, 0.625rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}

a[target=_blank] {
  display: flex;
  align-items: center;
}
a[target=_blank]::after {
  content: "";
  display: inline-block;
  width: 1rem;
  height: 1rem;
  background-image: url(../img/common/icon-newwindow.svg);
  background-size: cover;
}

@media (min-width: 744px) {
  small {
    font-size: max(10px, 12px);
  }
  a[target=_blank]::after {
    width: 16px;
    height: 16px;
  }
}
.dsp-ib {
  display: inline-block;
  font: inherit;
}

@media (min-width: 320px) and (max-width: 743px) {
  .dsp-pc {
    display: none !important;
  }
}

@media (min-width: 744px) {
  .dsp-sp {
    display: none !important;
  }
}

/* !style-sp */
body.is-locked {
  overflow: hidden;
}
body.is-locked .header__logo {
  width: 100%;
  height: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 30;
  padding: 0.75rem 1.5rem;
  background-color: var(--color-white);
}
body.is-locked .header__logo img {
  width: 13.75rem;
}

.header .header__inner {
  display: flex;
  height: 3.9375rem;
  justify-content: space-between;
  align-items: center;
  padding: 0.75rem 1.5rem;
}
.header .header__logo {
  width: 13.75rem;
  height: 2.4375rem;
}
.header .nav {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  inset: 0;
  z-index: 20;
  transform: translateY(0.5rem);
  padding-inline: 1.5rem;
  padding-block-start: 7rem;
  padding-block-end: 2rem;
  background: var(--color-white);
  pointer-events: none;
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
}
.header .nav.is-open {
  height: 100%;
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
  overflow-y: scroll;
  pointer-events: auto;
}
.header .nav .nav__list .nav__item {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  padding-block: 1rem;
  border-block-end: 1px dashed var(--color-orange, #f1a868);
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: max(10px, 1.125rem);
  line-height: 1.6;
  letter-spacing: 0.04em;
}
.header .nav .nav__list .nav__item::before {
  content: "";
  width: 2rem;
  aspect-ratio: 1;
  background-size: 100%;
}
.header .nav .nav__list .nav__item::after {
  content: "";
  width: 1.5rem;
  aspect-ratio: 1;
  margin-inline-start: auto;
  background-image: url(../img/common/icon-link-arrow-blue.svg);
  background-size: 100%;
}
.header .nav .nav__list .nav__item--about::before {
  background-image: url(../img/common/nav-icon-about.svg);
}
.header .nav .nav__list .nav__item--life::before {
  background-image: url(../img/common/nav-icon-life.svg);
}
.header .nav .nav__list .nav__item--admission::before {
  background-image: url(../img/common/nav-icon-admission.svg);
}
.header .nav .nav__list .nav__item--recruit::before {
  background-image: url(../img/common/nav-icon-recruit.svg);
}
.header .nav .nav__list .nav__item--enrolled::before {
  background-image: url(../img/common/nav-icon-enrolled.svg);
}
.header .menu-toggle {
  display: flex;
  width: 3rem;
  aspect-ratio: 1;
  flex-direction: column;
  justify-content: center;
  gap: 0.5rem;
  align-items: center;
  position: fixed;
  top: 0.5rem;
  right: 1.5rem;
  z-index: 30;
  border: 1px solid #fff;
  border-radius: 50%;
  background-color: var(--color-blue, #2192d2);
}
.header .menu-toggle.is-open .menu-toggle__line {
  position: absolute;
}
.header .menu-toggle.is-open .menu-toggle__line:nth-child(1) {
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
}
.header .menu-toggle.is-open .menu-toggle__line:nth-child(2) {
  opacity: 0;
}
.header .menu-toggle.is-open .menu-toggle__line:nth-child(3) {
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
}
.header .menu-toggle .menu-toggle__line {
  width: 1.5rem;
  height: 0.125rem;
  border-radius: 10px;
  background: #fff;
  transition: transform 0.3s ease, opacity 0.25s ease, top 0.3s ease;
}

.page-heading {
  display: grid;
  place-content: center;
  row-gap: 1rem;
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: max(10px, 1.75rem);
  line-height: 1.6;
  letter-spacing: 0.04em;
  text-align: center;
}
.page-heading::before {
  content: "";
  width: 4.375rem;
  height: 2.8125rem;
  margin-inline: auto;
  background-image: url(../img/common/pahe-heading.svg);
  background-size: 100%;
  background-repeat: no-repeat;
}

.main.main-top .content-block::before, .main.main-top .content-block::after {
  content: "";
  width: auto;
  position: absolute;
  right: 0;
  left: 0;
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
  pointer-events: none;
}

.main:not(.main-top) .fv-section .container {
  padding-block-start: 3rem;
  padding-block-end: 2rem;
}
.main:not(.main-top) .fv-section .fv__body {
  display: grid;
  row-gap: 4.5rem;
}
.main:not(.main-top) .fv-section .fv-image {
  position: relative;
}
.main:not(.main-top) .fv-section .fv-image::before {
  content: "";
  width: 10.6875rem;
  height: 3.625rem;
  position: absolute;
  top: -2rem;
  right: 0;
  background-image: url(../img/common/fv-image-befor.svg);
  background-size: 100%;
  background-repeat: no-repeat;
}
.main:not(.main-top) .fv-section .fv-image::after {
  content: "";
  width: 7.25rem;
  height: 3.0625rem;
  position: absolute;
  bottom: -2rem;
  left: 0;
  background-image: url(../img/common/fv-image-after.svg);
  background-size: 100%;
  background-repeat: no-repeat;
}

.content-block {
  padding-inline: 0.9375rem;
}
.content-block .block-heading {
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: max(10px, 1.625rem);
  line-height: 1.6;
  letter-spacing: 0.04em;
}
.content-block .block-heading::after {
  content: "";
  display: block;
  width: 3.125rem;
  height: 0.375rem;
  margin-block-start: 1rem;
  background-image: url(../img/common/block-heading-bar.svg);
  background-size: 100%;
  background-repeat: no-repeat;
}
.content-block .block-title {
  display: flex;
  column-gap: 1rem;
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: max(10px, 1.375rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.content-block .block-title::before {
  content: "";
  width: 2rem;
  height: 2rem;
  flex-shrink: 0;
  position: relative;
  top: 0.5lh;
  translate: 0 -50%;
  background-image: url(../img/common/block-title-icon.svg);
  background-size: 100%;
  background-repeat: no-repeat;
}
.content-block .block-body {
  margin-block-start: 3.5rem;
}

.link-more {
  display: flex;
  width: fit-content;
  gap: 0.5rem;
  align-items: center;
  position: relative;
  border-block-end: 1px solid currentColor;
  font-size: max(10px, 1rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.link-more::after {
  content: "";
  display: inline-block;
  width: 1rem;
  aspect-ratio: 1;
  background-size: 100%;
}
.link-more.link-more--white::after {
  background-image: url(../img/common/icon-link-arrow-white.svg);
}
.link-more.link-more--blue::after {
  background-image: url(../img/common/icon-link-arrow-blue.svg);
}

.link-btn {
  display: grid;
  height: 4rem;
  place-content: center;
  position: relative;
  border-radius: 1rem;
  background-color: var(--color-blue, #2192d2);
  color: var(--color-white, #fff);
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: max(10px, 1rem);
  line-height: 1.3;
  letter-spacing: 0.04em;
  text-align: center;
}
.link-btn.link-btn--pdf::after {
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  position: absolute;
  top: 50%;
  right: 1rem;
  translate: 0 -50%;
  background-image: url(../img/common/icon-file-pdf.svg);
  background-size: cover;
}
.link-btn.link-btn--arrow::after {
  content: "";
  width: 1.5rem;
  aspect-ratio: 1;
  position: absolute;
  top: 50%;
  right: 1rem;
  translate: 0 -50%;
  background-image: url(../img/common/icon-link-arrow-white.svg);
  background-size: cover;
}
.link-btn.link-btn--nolink {
  background-color: #666;
  pointer-events: none;
}

.definition {
  width: 100%;
}
.definition .definition__list {
  margin-block: 1.5rem;
  border-bottom: 1px solid var(--color-text, #333);
}
.definition .definition__item {
  display: grid;
  gap: 0.5rem;
  padding-block: 0.5rem;
  border-block-start: 1px solid var(--color-line, #dedede);
}
.definition .definition__term {
  display: grid;
  place-content: center;
  padding: 0.5rem;
  border-radius: 0.5rem;
  background: var(--color-green, #def3e2);
  color: var(--color-green2, #1c745e);
  text-align: center;
}
.definition .definition__desc {
  padding-inline: 0.5rem;
  padding-block: 0.25rem;
}
.definition .definition__sublist {
  font-size: max(10px, 0.875rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.definition .definition__sublist:has(.definition__subitem:not(:only-child)) {
  display: grid;
  gap: 0.5rem;
}
.definition .definition__sub-definition {
  display: grid;
  row-gap: 0.5rem;
  font-size: max(10px, 0.875rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.definition .definition__sub-definition .definition__sub-row {
  display: grid;
  row-gap: 0.25rem;
}
.definition .definition__sub-definition .definition__sub-term {
  display: flex;
  column-gap: 0.5rem;
  align-items: center;
}
.definition .definition__sub-definition .definition__sub-term::before {
  content: "";
  display: block;
  width: 0.875rem;
  aspect-ratio: 1;
  border-radius: 0.25rem;
  background: #e38294;
}
.main.main-top {
  padding-block-start: 0;
}
.main.main-top .fv-section {
  position: relative;
  padding-inline: 1.5rem 0;
}
.main.main-top .fv-section .container {
  position: relative;
  margin-block-start: 3.5rem;
}
.main.main-top .fv-section .container::before {
  content: "";
  width: 15.3125rem;
  height: 4.4375rem;
  position: absolute;
  top: -2.875rem;
  left: 6.25rem;
  z-index: 1;
  background-image: url(../img/top/fv-top.webp);
  background-size: cover;
}
.main.main-top .fv-section .container::after {
  content: "";
  width: 5.1875rem;
  height: 3.3125rem;
  position: absolute;
  bottom: 0.75rem;
  left: 0;
  z-index: 1;
  background-image: url(../img/top/fv-bottom.webp);
  background-size: cover;
}
.main.main-top .fv-section .fv__logo {
  display: none;
}
.main.main-top .fv-section .fv__body {
  overflow: hidden;
}
.main.main-top .fv-section .fv__nav .fv__nav-list {
  display: none;
}
.main.main-top .fv-section .fv__slide {
  width: 100%;
  list-style: none;
  position: relative;
  margin: 0;
  padding: 0;
}
.main.main-top .fv-section .fv__slide .fv__slide-item {
  width: 25.875rem;
  height: 25.875rem;
}
.main.main-top .fv-section .fv__slide .fv__slide-item picture, .main.main-top .fv-section .fv__slide .fv__slide-item img {
  display: block;
  width: 100%;
  height: 100%;
}
.main.main-top .fv-section .fv__slide .fv__slide-item img {
  object-fit: cover;
}
.main.main-top .fv-section .fv__slide .slick-list {
  overflow: visible;
}
.main.main-top .fv-section .fv__slide .slick-track {
  display: flex;
}
.main.main-top .fv-section .fv__slide .slick-slide {
  height: auto;
  margin-right: 2rem;
}
.main.main-top .fv-section .fv__dots {
  position: absolute;
  right: 0.375rem;
  bottom: -7.25rem;
  z-index: 1;
}
.main.main-top .fv-section .fv__dots .slick-dots {
  display: flex;
  gap: 1.5rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.main.main-top .fv-section .fv__dots .slick-dots li {
  margin: 0;
}
.main.main-top .fv-section .fv__dots .slick-dots button {
  width: 0.625rem;
  height: 0.625rem;
  padding: 0;
  border: none;
  border: 1px solid #fff;
  border-radius: 50%;
  background: transparent;
  font-size: 0;
  cursor: pointer;
}
.main.main-top .fv-section .fv__dots .slick-dots .slick-active button {
  background: #fff;
}
.main.main-top .news-section {
  position: relative;
  margin-block-start: 11.25rem;
  margin-block-end: 7.375rem;
  background-color: var(--color-blue, #2192d2);
}
.main.main-top .news-section::before {
  height: calc(9.8125rem + 2px);
  top: calc(-9.8125rem - 1px);
  background-image: url(../img/top/section-divider-news-top.webp);
}
.main.main-top .news-section::after {
  height: calc(7.375rem + 2px);
  bottom: calc(-7.375rem - 1px);
  background-image: url(../img/top/section-divider-news-bottom.webp);
}
.main.main-top .news-section .container {
  padding-block: 2.5rem;
  color: var(--color-white, #fff);
}
.main.main-top .news-section .news__banners {
  display: grid;
  gap: 1.5rem;
}
.main.main-top .news-section .news__banners .news__banner-wrap {
  width: 100%;
  position: relative;
  padding: 0.25rem;
  border-radius: 1.5rem;
  background-color: var(--color-back, #f8f6ef);
}
.main.main-top .news-section .news__banners .news__banner-wrap::before {
  content: "";
  width: 0.6875rem;
  height: 1.3125rem;
  position: absolute;
  top: -0.375rem;
  left: 50%;
  translate: -50% 0;
  background-image: url(../img/common/icon-pin-red.svg);
  background-size: cover;
  background-repeat: no-repeat;
}
.main.main-top .news-section .news__banners .news__banner-wrap::after {
  content: "";
  width: 1.5rem;
  aspect-ratio: 1;
  position: absolute;
  top: 50%;
  right: 1rem;
  translate: 0 -50%;
  background-image: url(../img/common/icon-link-arrow-blue.svg);
  background-size: 100%;
}
.main.main-top .news-section .news__banners .news__banner-wrap .news__banner {
  display: block;
  position: relative;
  padding: 0.75rem;
  border: 1px dashed var(--color-orange, #f1a868);
  border-radius: 1.25rem;
  text-align: center;
}
.main.main-top .news-section .news__banners .news__banner-wrap .news__banner::before {
  content: "";
  width: 2.5rem;
  height: 2.5rem;
  position: absolute;
  top: -0.625rem;
  left: 0;
  background-image: url(../img/top/news-banner-sun.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
.main.main-top .news-section .news__banners .news__banner-wrap .news__banner::after {
  content: "";
  width: 2.9375rem;
  height: 2.0625rem;
  position: absolute;
  right: 1rem;
  bottom: -1rem;
  background-image: url(../img/top/news-banner-cloud.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
.main.main-top .news-section .news__banners .news__banner-wrap .news__banner-sub,
.main.main-top .news-section .news__banners .news__banner-wrap .news__banner-main {
  position: relative;
  z-index: 1;
  color: #7b5b42;
  font-family: var(--font-heading);
  font-weight: 500;
  line-height: 1.8;
  text-align: center;
}
.main.main-top .news-section .news__banners .news__banner-wrap .news__banner-sub {
  font-size: max(10px, 1rem);
  letter-spacing: 0.04em;
}
.main.main-top .news-section .news__banners .news__banner-wrap .news__banner-main {
  font-size: max(10px, 1.125rem);
  letter-spacing: 0.04em;
}
.main.main-top .news-section .news__body {
  margin-block-start: 3rem;
}
.main.main-top .news-section .block-body {
  margin-block-start: 2rem;
}
.main.main-top .news-section .news__list {
  display: grid;
  row-gap: 1rem;
}
.main.main-top .news-section .news__list li {
  display: grid;
  row-gap: 0.5rem;
  font-size: max(10px, 0.875rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-top .news-section .link-more {
  margin-block-start: 2rem;
}
.main.main-top .greeting-section .container {
  padding-block: 5rem;
  background-color: var(--color-white, #fff);
}
.main.main-top .greeting-section .greeting__text p {
  font-size: max(10px, 0.875rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-top .greeting-section .greeting__text p + p {
  margin-block-start: 1.5rem;
}
.main.main-top .greeting-section .greeting__signature {
  margin-block-start: 1rem;
  font-size: 0.875rem;
  line-height: 1.8;
  letter-spacing: 0.04em;
  text-align: right;
}
.main.main-top .greeting-section .greeting__president {
  margin-block-start: 0.5rem;
}
.main.main-top .greeting-section .greeting__president-name {
  font-family: var(--font-heading);
  font-size: max(10px, 1.375rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-top .guide-section {
  position: relative;
  margin-block-start: 3.875rem;
  margin-block-end: 5.75rem;
  background-color: var(--color-back01, #fef8d7);
}
.main.main-top .guide-section::before {
  height: calc(3.875rem + 2px);
  top: calc(-3.875rem - 1px);
  background-image: url(../img/top/section-divider-guide-top.webp);
}
.main.main-top .guide-section::after {
  height: calc(5.75rem + 2px);
  bottom: calc(-5.75rem - 1px);
  background-image: url(../img/top/section-divider-guide-bottom.webp);
}
.main.main-top .guide-section .container {
  padding-block: 4rem;
}
.main.main-top .guide-section .guide__body {
  margin-block-start: 3.5rem;
}
.main.main-top .guide-section .guide__list {
  display: grid;
  gap: 2rem;
}
.main.main-top .guide-section .guide__link {
  display: flex;
  aspect-ratio: 1/1;
  justify-content: center;
  align-items: flex-end;
  clip-path: url(#guideClip);
  background-position: center top;
  background-size: 100%;
  background-repeat: no-repeat;
}
.main.main-top .guide-section .guide__link.guide__link--about {
  background-image: url(../img/top/guide-link-about.webp);
}
.main.main-top .guide-section .guide__link.guide__link--about .guide__text::after {
  background-image: url(../img/top/guide-icon-about.svg);
}
.main.main-top .guide-section .guide__link.guide__link--life {
  background-image: url(../img/top/guide-link-life.webp);
}
.main.main-top .guide-section .guide__link.guide__link--life .guide__text::after {
  background-image: url(../img/top/guide-icon-life.svg);
}
.main.main-top .guide-section .guide__link.guide__link--enter {
  background-image: url(../img/top/guide-link-enter.webp);
}
.main.main-top .guide-section .guide__link.guide__link--enter .guide__text::after {
  background-image: url(../img/top/guide-icon-enter.svg);
}
.main.main-top .guide-section .guide__text {
  display: grid;
  width: 100%;
  height: 7rem;
  place-content: center;
  position: relative;
  background-color: #fff;
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: max(10px, 1.125rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
  text-align: center;
}
.main.main-top .guide-section .guide__text::before {
  content: "";
  width: 5.8125rem;
  aspect-ratio: 1;
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50% -50%;
  border-radius: 50%;
  background-color: #fff;
}
.main.main-top .guide-section .guide__text::after {
  content: "";
  width: 3.625rem;
  aspect-ratio: 1;
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50% -50%;
  background-size: cover;
}
.main.main-top .documents-section .container {
  padding-block: 4.625rem;
  background-color: var(--color-white, #fff);
}
.main.main-top .documents-section .documents__link-btn-list {
  display: grid;
  gap: 1rem;
}
.main.main-top .documents-section .documents__link-btn-list li {
  width: 100%;
}
.main.main-top .recruit-section {
  position: relative;
  margin-block-start: 5.5rem;
  margin-block-end: 6.875rem;
  background-color: var(--color-green, #def3e2);
}
.main.main-top .recruit-section::before {
  height: calc(5.5rem + 2px);
  top: calc(-5.5rem - 1px);
  background-image: url(../img/top/section-divider-recruit-top.webp);
}
.main.main-top .recruit-section::after {
  height: calc(6.875rem + 2px);
  bottom: calc(-6.875rem - 1px);
  background-image: url(../img/top/section-divider-recruit-bottom.webp);
}
.main.main-top .recruit-section .container {
  padding-block-start: 4.5rem;
  padding-block-end: 4rem;
}
.main.main-top .recruit-section .recruit {
  display: grid;
  height: 28.75rem;
  place-content: center;
  position: relative;
  border-radius: 5rem;
  background-color: var(--color-back01, #fef8d7);
  color: var(--color-blue, #2192d2);
}
.main.main-top .recruit-section .recruit::before {
  content: "";
  width: 6.25rem;
  height: 5.9375rem;
  position: absolute;
  top: -2.0625rem;
  left: 1.5625rem;
  background-image: url(../img/top/recruit-bg-top-left.webp);
  background-size: cover;
  background-repeat: no-repeat;
}
.main.main-top .recruit-section .recruit::after {
  content: "";
  width: 10.8125rem;
  height: 5.5rem;
  position: absolute;
  bottom: 0;
  left: 0;
  background-image: url(../img/top/recruit-bg-bottom-left.webp);
  background-size: cover;
  background-repeat: no-repeat;
}
.main.main-top .recruit-section .recruit .recruit__block::before {
  content: "";
  width: 9.625rem;
  height: 5.9375rem;
  position: absolute;
  top: 1rem;
  right: -0.0625rem;
  background-image: url(../img/top/recruit-bg-top-right.webp);
  background-size: cover;
  background-repeat: no-repeat;
}
.main.main-top .recruit-section .recruit .recruit__block::after {
  content: "";
  width: 6.25rem;
  height: 5.9375rem;
  position: absolute;
  right: 1.5rem;
  bottom: -1.0625rem;
  background-image: url(../img/top/recruit-bg-bottom-right.webp);
  background-size: cover;
  background-repeat: no-repeat;
}
.main.main-top .recruit-section .recruit .recruit__heading {
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: max(10px, 1.75rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
  text-align: center;
}
.main.main-top .recruit-section .recruit .recruit__heading::after {
  content: "Recruit";
  display: block;
  font-family: var(--font-en);
  font-size: max(10px, 3.75rem);
  line-height: 1;
  letter-spacing: 0.04em;
  text-align: center;
}
.main.main-top .recruit-section .recruit .recruit__text {
  font-size: max(10px, 0.875rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
  text-align: center;
}
.main.main-top .recruit-section .recruit .link-more {
  margin-inline: auto;
  margin-block-start: 1rem;
}
.main.main-top .banner-section {
  background-color: var(--color-white, #fff);
}
.main.main-top .banner-section .container {
  padding-block: 3.5rem;
}
.main.main-top .banner-section .banner__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
}
.main.main-about p {
  font-size: max(10px, 0.875rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-about .fv-section .fv__body {
  row-gap: 2rem;
}
.main.main-about .philosophy-section {
  position: relative;
  margin-block-start: 3.625rem;
  margin-block-end: 7.125rem;
  background: var(--color-blue, #2192d2);
  color: #fff;
}
.main.main-about .philosophy-section::before, .main.main-about .philosophy-section::after {
  content: "";
  width: auto;
  position: absolute;
  right: 0;
  left: 0;
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
  pointer-events: none;
}
.main.main-about .philosophy-section::before {
  height: calc(7.625rem + 2px);
  top: calc(-7.625rem - 1px);
  background-image: url(../img/about/philosophy-top.webp);
}
.main.main-about .philosophy-section::after {
  height: calc(7.125rem + 2px);
  bottom: calc(-7.125rem - 1px);
  background-image: url(../img/about/philosophy-bottom.webp);
}
.main.main-about .philosophy-section .container {
  display: grid;
  row-gap: 2rem;
  padding-block-end: 2.5rem;
}
.main.main-about .philosophy-section .container::after {
  content: "";
  height: 21.375rem;
  background-image: url(../img/about/philosophy-image.webp);
  background-size: contain;
  background-repeat: no-repeat;
}
.main.main-about .philosophy-section .philosophy__glid-wrap {
  display: grid;
  row-gap: 3.5rem;
}
.main.main-about .philosophy-section .philosophy__list {
  display: grid;
  row-gap: 2rem;
}
.main.main-about .philosophy-section .philosophy__item {
  display: grid;
  row-gap: 1.5rem;
}
.main.main-about .philosophy-section .philosophy__text {
  font-size: max(10px, 1rem);
}
.main.main-about .feature-section .container {
  display: grid;
  row-gap: 3.5rem;
  padding-block: 5rem;
}
.main.main-about .feature-section .feature__list {
  display: grid;
  row-gap: 3.5rem;
}
.main.main-about .feature-section .feature__article {
  display: grid;
  row-gap: 1.5rem;
}
.main.main-about .feature-section .feature__note {
  display: flex;
  column-gap: 0.5rem;
  align-items: center;
  margin-block-end: 0.5rem;
  font-size: max(10px, 0.875rem);
  line-height: 1.6;
  letter-spacing: 0.04em;
}
.main.main-about .feature-section .feature__note::before {
  content: "";
  width: 0.875rem;
  height: 0.875rem;
  flex-shrink: 0;
  border-radius: 0.25rem;
  background: #e38294;
}
.main.main-about .lunch-section {
  position: relative;
  margin-block-start: 4.0625rem;
  margin-block-end: 5.875rem;
  background: var(--color-back01, #fef8d7);
}
.main.main-about .lunch-section::before, .main.main-about .lunch-section::after {
  content: "";
  width: auto;
  position: absolute;
  right: 0;
  left: 0;
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
  pointer-events: none;
}
.main.main-about .lunch-section::before {
  height: calc(4.0625rem + 2px);
  top: calc(-4.0625rem - 1px);
  background-image: url(../img/about/lunch-top.webp);
}
.main.main-about .lunch-section::after {
  height: calc(5.875rem + 2px);
  bottom: calc(-5.875rem - 1px);
  background-image: url(../img/about/lunch-bottom.webp);
}
.main.main-about .lunch-section .container {
  display: grid;
  row-gap: 3.5rem;
  padding-block: 2.5rem;
}
.main.main-about .lunch-section .lunch__list {
  display: grid;
  gap: 2rem;
}
.main.main-about .lunch-section .block-title {
  margin-block-start: 2rem;
}
.main.main-about .lunch-section .lunch__text {
  margin-block-start: 1.5rem;
}
.main.main-about .lunch-section .lunch__note {
  margin-block-start: 0.5rem;
  font-size: max(10px, 0.625rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-about .capacity-section .container {
  display: grid;
  row-gap: 3.5rem;
  padding-block-start: 5rem;
}
.main.main-about .capacity-section .capacity__table {
  width: 100%;
  line-height: 1.8;
  letter-spacing: 0.04em;
  text-align: center;
}
.main.main-about .capacity-section .capacity__table tr {
  border-block-end: 1px solid var(--color-line, #dedede);
}
.main.main-about .capacity-section .capacity__table td {
  font-size: max(10px, 0.875rem);
}
.main.main-about .capacity-section .capacity__table thead tr {
  border-block-end: none;
}
.main.main-about .capacity-section .capacity__table thead th {
  padding-block-end: 0.5rem;
  font-size: max(10px, 0.625rem);
}
.main.main-about .capacity-section .capacity__table thead th:first-child {
  width: 4.125rem;
}
.main.main-about .capacity-section .capacity__table tfoot tr {
  border-block-end: 1px solid #333;
}
.main.main-about .capacity-section .capacity__table tfoot td {
  color: var(--color-pink, #e14062);
}
.main.main-about .capacity-section .capacity__table [scope=row] {
  display: grid;
  width: 4.125rem;
  height: 2.5625rem;
  place-content: center;
  margin-block: 0.5rem;
  border-radius: 0.5rem;
  color: var(--color-white, #fff);
  font-weight: normal;
  font-size: max(10px, 0.875rem);
}
.main.main-about .capacity-section .capacity__table [scope=row].age-0 {
  background: var(--color-yellow, #f3d422);
}
.main.main-about .capacity-section .capacity__table [scope=row].age-1 {
  background: var(--color-orange, #f1a868);
}
.main.main-about .capacity-section .capacity__table [scope=row].age-2 {
  background: var(--color-mizuiro, #5ebfdb);
}
.main.main-about .capacity-section .capacity__table [scope=row].age-3 {
  background: var(--color-mizuiro, #5ebfdb);
}
.main.main-about .capacity-section .capacity__table [scope=row].age-4 {
  background: #68a9aa;
}
.main.main-about .capacity-section .capacity__table [scope=row].age-5 {
  background: var(--color-purple, #9180bf);
}
.main.main-about .capacity-section .capacity__table [scope=row].total {
  background: var(--color-pink, #e14062);
}
.main.main-about .capacity-section .capacity__table .capacity__total {
  color: var(--color-pink, #e14062);
}
.main.main-about .support-section .container {
  display: grid;
  row-gap: 3.5rem;
  padding-block-start: 4.5rem;
}
.main.main-about .support-section .support__item {
  font-size: max(10px, 0.875rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-about .support-section .link-more {
  margin-block-start: 1.5rem;
}
.main.main-about .support-section .link-more--blue {
  color: var(--color-blue, #2192d2);
  font-size: max(10px, 0.875rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-about .facility-section .container {
  display: grid;
  row-gap: 3.5rem;
  padding-block-start: 4.5rem;
  padding-block-end: 5rem;
}
.main.main-about .map-section {
  position: relative;
  margin-block-start: 5rem;
  margin-block-end: 7.125rem;
  background: var(--color-green, #def3e2);
}
.main.main-about .map-section::before, .main.main-about .map-section::after {
  content: "";
  width: auto;
  position: absolute;
  right: 0;
  left: 0;
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
  pointer-events: none;
}
.main.main-about .map-section::before {
  height: calc(5rem + 2px);
  top: calc(-5rem - 1px);
  background-image: url(../img/about/map-top.webp);
}
.main.main-about .map-section::after {
  height: calc(7.125rem + 2px);
  bottom: calc(-7.125rem - 1px);
  background-image: url(../img/about/map-bottom.webp);
}
.main.main-about .map-section .container {
  display: grid;
  row-gap: 3.5rem;
  padding-block: 2.5rem;
}
.main.main-about .map-section .map__grid {
  display: grid;
  grid-template-areas: "image-1 image-1" "image-2 image-2" "image-3 image-4" "image-5 image-6" "image-7 image-8";
  gap: 1.5rem;
}
.main.main-about .map-section .map__item--01 {
  grid-area: image-1;
}
.main.main-about .map-section .map__item--02 {
  grid-area: image-2;
}
.main.main-about .map-section .map__item--03 {
  grid-area: image-3;
}
.main.main-about .map-section .map__item--04 {
  grid-area: image-4;
}
.main.main-about .map-section .map__item--05 {
  grid-area: image-5;
}
.main.main-about .map-section .map__item--06 {
  grid-area: image-6;
}
.main.main-about .map-section .map__item--07 {
  grid-area: image-7;
}
.main.main-about .map-section .map__item--08 {
  grid-area: image-8;
}
.main.main-about .program-section .container {
  display: grid;
  row-gap: 3.5rem;
  padding-block: 5rem;
}
.main.main-about .program-section .program__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
}
.main.main-about .program-section .program__figure figcaption {
  margin-block-start: 1rem;
  font-size: max(10px, 0.625rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
  text-align: center;
}
.main.main-life .life-section .container {
  display: grid;
  row-gap: 3.5rem;
  padding-block: 5rem;
}
.main.main-life .schedule .schedule__tabs {
  display: flex;
  gap: 0.5rem;
}
.main.main-life .schedule .schedule__tab-button {
  display: grid;
  width: 100%;
  justify-content: center;
  position: relative;
  padding: 1rem;
  border: 0;
  border-radius: 1.5rem 1.5rem 0 0;
  color: var(--color-text, #333);
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: 1.375rem;
  line-height: 1.4;
  letter-spacing: 0.04em;
  text-align: center;
  cursor: pointer;
}
.main.main-life .schedule .schedule__tab-button::before {
  content: "";
  width: 3.125rem;
  height: 3.125rem;
  margin-inline: auto;
  background-image: url(../img/life/icon-tab-first.svg);
  background-size: cover;
}
.main.main-life .schedule .schedule__tab-button:first-child {
  background: var(--color-yellow, #f3d422);
}
.main.main-life .schedule .schedule__tab-button:first-child::before {
  background-image: url(../img/life/icon-tab-first.svg);
}
.main.main-life .schedule .schedule__tab-button:last-child {
  background: var(--color-green, #def3e2);
}
.main.main-life .schedule .schedule__tab-button:last-child::before {
  background-image: url(../img/life/icon-tab-second.svg);
}
.main.main-life .schedule .schedule__body {
  display: grid;
  position: relative;
}
.main.main-life .schedule .schedule__body::before {
  content: "";
  width: 0.125rem;
  position: absolute;
  top: 4.125rem;
  bottom: 3.375rem;
  left: 2.8125rem;
  z-index: 2;
  background: #333;
}
.main.main-life .schedule .schedule__row {
  position: relative;
}
.main.main-life .schedule .schedule__row:first-of-type .schedule__cell {
  padding-block-start: 1.5rem;
}
.main.main-life .schedule .schedule__row:first-of-type::before {
  top: 2.5rem;
}
.main.main-life .schedule .schedule__row:last-of-type .schedule__cell {
  border-radius: 0 0 1.5rem 1.5rem;
}
.main.main-life .schedule .schedule__row .schedule__cell {
  display: none;
  gap: 1rem;
  align-content: start;
}
.main.main-life .schedule .schedule__row .schedule__cell.is-active {
  display: grid;
}
.main.main-life .schedule .schedule__row .schedule__cell--left, .main.main-life .schedule .schedule__row .schedule__cell--right {
  padding-inline: 5.125rem 1rem;
  padding-block-end: 1rem;
}
.main.main-life .schedule .schedule__row .schedule__cell--left {
  background: var(--color-yellow, #f3d422);
}
.main.main-life .schedule .schedule__row .schedule__cell--right {
  background: var(--color-green, #def3e2);
}
.main.main-life .schedule .schedule__row .schedule-card {
  display: grid;
  grid-template-columns: 3.125rem auto;
  column-gap: 0.5rem;
  align-items: center;
  position: relative;
  margin-inline-start: 1rem;
  padding: 0.8125rem 1rem;
  border-radius: 0.5rem;
  background: var(--color-white, #fff);
}
.main.main-life .schedule .schedule__row .schedule-card::before {
  content: "";
  width: 1rem;
  height: 1.25rem;
  position: absolute;
  top: 50%;
  left: -1rem;
  translate: 0 -50%;
  background-image: url(../img/life/schedule-card-tail.svg);
  background-size: cover;
}
.main.main-life .schedule .schedule__row .schedule-card::after {
  content: "";
  width: 3.625rem;
  height: 3.625rem;
  position: absolute;
  top: 50%;
  left: -3.3125rem;
  z-index: 2;
  translate: -50% -50%;
  background-size: cover;
  background-repeat: no-repeat;
}
.main.main-life .schedule .schedule__row .schedule-card .schedule-card__time {
  font-family: Roboto;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.8;
  letter-spacing: 0.045em;
}
.main.main-life .schedule .schedule__row .schedule-card .schedule-card__text {
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: 1.8rem;
  font-size: 1rem;
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-life .schedule .schedule__row[data-time="0730"] .schedule-card::after {
  background-image: url("../img/life/time-0730.svg");
}
.main.main-life .schedule .schedule__row[data-time="0900"] .schedule-card::after {
  background-image: url("../img/life/time-0900.svg");
}
.main.main-life .schedule .schedule__row[data-time="0930"] .schedule-card::after {
  background-image: url("../img/life/time-0930.svg");
}
.main.main-life .schedule .schedule__row[data-time="1000"] .schedule-card::after {
  background-image: url("../img/life/time-1000.svg");
}
.main.main-life .schedule .schedule__row[data-time="1130"] .schedule-card::after {
  background-image: url("../img/life/time-1130.svg");
}
.main.main-life .schedule .schedule__row[data-time="1230"] .schedule-card::after {
  background-image: url("../img/life/time-1230.svg");
}
.main.main-life .schedule .schedule__row[data-time="1430"] .schedule-card::after {
  background-image: url("../img/life/time-1430.svg");
}
.main.main-life .schedule .schedule__row[data-time="1500"] .schedule-card::after {
  background-image: url("../img/life/time-1500.svg");
}
.main.main-life .schedule .schedule__row[data-time="1530"] .schedule-card::after {
  background-image: url("../img/life/time-1530.svg");
}
.main.main-life .schedule .schedule__row[data-time="1600"] .schedule-card::after {
  background-image: url("../img/life/time-1600.svg");
}
.main.main-life .schedule .schedule__row[data-time="1900"] .schedule-card::after {
  background-image: url("../img/life/time-1900.svg");
}
.main.main-life .schedule .schedule__row .schedule-note {
  display: grid;
  min-height: 3.625rem;
  align-items: center;
  font-size: 0.875rem;
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-life .event-section {
  position: relative;
  margin-block-start: 4.3125rem;
  margin-block-end: 5.875rem;
  background: var(--color-back01, #fef8d7);
}
.main.main-life .event-section::before, .main.main-life .event-section::after {
  content: "";
  width: auto;
  position: absolute;
  right: 0;
  left: 0;
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
  pointer-events: none;
}
.main.main-life .event-section::before {
  height: calc(4.3125rem + 2px);
  top: calc(-4.3125rem - 1px);
  background-image: url(../img/life/event-section-top.webp);
}
.main.main-life .event-section::after {
  height: calc(5.875rem + 2px);
  bottom: calc(-5.875rem - 1px);
  background-image: url(../img/life/event-section-bottom.webp);
}
.main.main-life .event-section .container {
  padding-block: 2.5rem;
}
.main.main-life .event-section .event__list {
  display: grid;
  gap: 2rem;
  margin-block-start: 3.5rem;
}
.main.main-life .event-section .event__item {
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
}
.main.main-life .event-section .event__item .event__image {
  position: relative;
}
.main.main-life .event-section .event__item .event__image .event__season {
  height: auto;
  position: absolute;
  filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.25));
}
.main.main-life .event-section .event__item .event__image .event__season:has(img[src*=spring]) {
  width: 4.375rem;
  top: 0.375rem;
  left: 1.25rem;
}
.main.main-life .event-section .event__item .event__image .event__season:has(img[src*=summer]) {
  width: 4.6875rem;
  top: 0rem;
  left: 0.75rem;
}
.main.main-life .event-section .event__item .event__image .event__season:has(img[src*=fall]) {
  width: 4.6875rem;
  top: 0.125rem;
  left: 0.75rem;
}
.main.main-life .event-section .event__item .event__image .event__season:has(img[src*=winter]) {
  width: 4.3125rem;
  top: 0.5rem;
  left: 1rem;
}
.main.main-life .event-section .event__item .event__events {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 1.5rem;
  row-gap: 0.5rem;
}
.main.main-life .event-section .event__item .event__text {
  display: flex;
  column-gap: 0.5rem;
  align-items: center;
  font-size: max(10px, 0.875rem);
  line-height: 1.6;
  letter-spacing: 0.04em;
}
.main.main-life .event-section .event__item .event__text::before {
  content: "";
  width: 0.875rem;
  height: 0.875rem;
  flex-shrink: 0;
  border-radius: 0.25rem;
}
.main.main-life .event-section .event__item:has(img[src*=spring]) .event__text::before {
  background: #e38294;
}
.main.main-life .event-section .event__item:has(img[src*=summer]) .event__text::before {
  background: var(--color-yellow, #f3d422);
}
.main.main-life .event-section .event__item:has(img[src*=fall]) .event__text::before {
  background: var(--color-orange, #f1a868);
}
.main.main-life .event-section .event__item:has(img[src*=winter]) .event__text::before {
  background: var(---mizuiro, #5ebfdb);
}
.main.main-life .life-image-block {
  width: 100%;
  height: 21.125rem;
  margin-block-start: -5.875rem;
  background-image: url(../img/life/life-image-block.webp);
  background-size: cover;
}
.main.main-enter .enter-section .container {
  display: grid;
  row-gap: 3.5rem;
  padding-block: 5rem;
}
.main.main-enter .enter-section .block-title {
  color: var(--color-pink, #e14062);
}
.main.main-enter .enter-section .block-title + small {
  display: block;
  margin-block-start: 0.75rem;
}
.main.main-enter .uniform-section {
  position: relative;
  margin-block-start: 4.375rem;
  margin-block-end: 7.125rem;
  background: var(--color-green, #def3e2);
}
.main.main-enter .uniform-section::before, .main.main-enter .uniform-section::after {
  content: "";
  width: auto;
  position: absolute;
  right: 0;
  left: 0;
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
  pointer-events: none;
}
.main.main-enter .uniform-section::before {
  height: calc(4.375rem + 2px);
  top: calc(-4.375rem - 1px);
  background-image: url(../img/enter/uniform-top.png);
}
.main.main-enter .uniform-section::after {
  height: calc(7.125rem + 2px);
  bottom: calc(-7.125rem - 1px);
  background-image: url(../img/enter/uniform-bottom.png);
}
.main.main-enter .uniform-section .container {
  display: grid;
  row-gap: 3.5rem;
  padding-block: 2.5rem;
}
.main.main-enter .uniform-section .uniform .uniform__block {
  display: grid;
  row-gap: 2rem;
  padding-inline: 1.5rem;
  padding-block: 2.5rem;
  border-radius: 5rem;
  background-color: var(--color-back01, #fef8d7);
  color: var(--color-blue, #2192d2);
}
.main.main-enter .uniform-section .uniform .uniform__heading-wrap::before {
  content: "";
  display: block;
  width: 4.25rem;
  height: 2.6875rem;
  margin-inline: auto;
  margin-block-end: 1rem;
  background-image: url(../img/enter/uniform-cap.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}
.main.main-enter .uniform-section .uniform .uniform__heading {
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: max(10px, 1.375rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
  text-align: center;
}
.main.main-enter .uniform-section .uniform .uniform__heading::before {
  content: "Uniform";
  display: block;
  margin-block-end: 1.125rem;
  font-family: var(--font-en);
  font-size: max(10px, 3.625rem);
  line-height: 1;
  letter-spacing: 0.04em;
  text-align: center;
}
.main.main-enter .uniform-section .uniform .uniform__note {
  display: block;
  margin-block-start: 0.5rem;
}
.main.main-enter .uniform-section .other-info__list {
  display: grid;
  gap: 2rem;
}
.main.main-enter .uniform-section .other-info__text {
  margin-block-start: 1.5rem;
  font-size: max(10px, 1rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-enter .faq-section .container {
  display: grid;
  row-gap: 3.5rem;
  padding-block: 5rem;
}
.main.main-enter .faq-section .faq {
  display: grid;
  row-gap: 2rem;
}
.main.main-enter .faq-section .faq .faq__item {
  display: grid;
  row-gap: 0.5rem;
}
.main.main-enter .faq-section .faq .faq__question {
  display: flex;
  column-gap: 1rem;
  align-items: center;
  color: var(--color-text, #333);
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: max(10px, 1rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-enter .faq-section .faq .faq__question::before {
  content: "";
  width: 2.625rem;
  aspect-ratio: 1;
  flex-shrink: 0;
  background-image: url(../img/enter/icon-q.svg);
  background-size: cover;
}
.main.main-enter .faq-section .faq .faq__answer {
  display: flex;
  column-gap: 1rem;
  align-items: center;
}
.main.main-enter .faq-section .faq .faq__answer::before {
  content: "";
  width: 2.625rem;
  aspect-ratio: 1;
  flex-shrink: 0;
  background-image: url(../img/enter/icon-a.svg);
  background-size: cover;
}
.main.main-enter .faq-section .faq .faq__answer .faq__answer-body {
  width: 100%;
  padding: 1rem;
  border-radius: 1rem;
  background: var(--color-back01, #fef8d7);
  font-size: max(10px, 0.875rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-enter .faq-section .faq a {
  color: var(--color-blue, #2192d2);
  text-decoration: underline;
}
.main.main-recruit {
  font-weight: 500;
  font-size: max(10px, 0.875rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-recruit .fv-section .container:not(:root) {
  padding-block-end: 0;
}
.main.main-recruit .fv-section .fv-image:not(:root)::after {
  content: none;
}
.main.main-recruit .recruit-lead {
  position: relative;
  margin-block-start: 5.75rem;
  margin-block-end: 7.125rem;
  background: var(--color-back02, #ffebeb);
}
.main.main-recruit .recruit-lead::before, .main.main-recruit .recruit-lead::after {
  content: "";
  width: auto;
  position: absolute;
  right: 0;
  left: 0;
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
  pointer-events: none;
}
.main.main-recruit .recruit-lead::before {
  height: calc(7rem + 2px);
  top: calc(-7rem - 1px);
  background-image: url(../img/recruit/recruit-lead-top.webp);
}
.main.main-recruit .recruit-lead::after {
  height: calc(7.125rem + 2px);
  bottom: calc(-7.125rem - 1px);
  background-image: url(../img/recruit/recruit-lead-bottom.webp);
}
.main.main-recruit .recruit-lead .container {
  display: grid;
  row-gap: 3rem;
  padding-block-end: 2.5rem;
}
.main.main-recruit .recruit-lead .recruit-lead__heading {
  color: var(--color-pink, #e14062);
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: max(10px, 2.375rem);
  line-height: 1.6;
  letter-spacing: 0.04em;
}
.main.main-recruit .recruit-lead .recruit-lead__text {
  margin-block-start: 1.5rem;
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: max(10px, 1rem);
  line-height: 2.6;
  letter-spacing: 0.04em;
}
.main.main-recruit .recruit-lead .recruit-lead__info {
  position: relative;
  padding: 1.5rem;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
  background: var(--locor-back_, #f8f6ef);
}
.main.main-recruit .recruit-lead .recruit-lead__info::before {
  content: "";
  width: 1.6875rem;
  height: 3.375rem;
  position: absolute;
  top: -1.5rem;
  left: 50%;
  translate: -50% 0;
  background-image: url(../img/common/icon-pin-yellow.svg);
  background-size: cover;
  background-repeat: no-repeat;
}
.main.main-recruit .recruit-lead .recruit-lead__info .recruit-lead__item {
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: max(10px, 1rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-recruit .recruit-lead .recruit-lead__info .recruit-lead__term {
  display: flex;
  column-gap: 0.5rem;
  align-items: center;
}
.main.main-recruit .recruit-lead .recruit-lead__info .recruit-lead__term::before {
  content: "";
  display: block;
  width: 0.875rem;
  aspect-ratio: 1;
  border-radius: 0.25rem;
  background: #e38294;
}
.main.main-recruit .recruit-lead .recruit-lead__info .recruit-lead__desc {
  margin-block-start: 0.5rem;
}
.main.main-recruit .recruit-lead .recruit-lead__info .recruit-lead__access {
  display: flex;
  column-gap: 0.5rem;
  align-items: center;
  margin-block-start: 1.5rem;
  color: var(--color-pink, #e14062);
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: max(10px, 1.5rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-recruit .recruit-lead .recruit-lead__info .recruit-lead__access::before {
  content: "";
  width: 2.1875rem;
  aspect-ratio: 1;
  background-image: url(../img/recruit/icon-access.svg);
  background-size: cover;
}
.main.main-recruit .recruit-section .container {
  padding-block: 5rem;
}
.main.main-recruit .recruit-section .recruit__block {
  margin-block: 3.5rem;
}
.main.main-recruit .recruit-section .recruit__text {
  margin-block-start: 1.5rem;
}
.main.main-recruit .recruit-section .recruit__signature {
  text-align: right;
}
.main.main-recruit .recruit-section .link-btn-wrap {
  margin-block-start: 3.5rem;
}
.main.main-news .news-section .container {
  padding-block: 5rem;
}
.main.main-news .news__list {
  display: grid;
  gap: 2rem;
  position: relative;
  padding-inline: 1.5rem;
  padding-block: 3.5rem;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
  background: var(--color-back, #f8f6ef);
}
.main.main-news .news__list::before {
  content: "";
  width: 1.6875rem;
  height: 3.375rem;
  position: absolute;
  top: -1rem;
  left: 50%;
  translate: -50% 0;
  background-image: url(../img/common/icon-pin-orange.svg);
  background-size: cover;
  background-repeat: no-repeat;
}
.main.main-news .news__list li {
  display: grid;
  row-gap: 0.5rem;
  position: relative;
  padding-inline-end: 2.5rem;
  font-size: max(10px, 0.875rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-news .news__list li::before {
  content: "";
  width: 100%;
  position: absolute;
  right: 0;
  bottom: -1rem;
  left: 0;
  border-block-end: 2px dashed var(--coler-blue, #2192d2);
}
.main.main-news .news__list li::after {
  content: "";
  width: 1.5rem;
  aspect-ratio: 1;
  position: absolute;
  top: 50%;
  right: 0;
  translate: 0 -50%;
  background-image: url(../img/common/icon-link-arrow-blue.svg);
  background-size: 100%;
}
.main.main-news .news__list li:last-of-type {
  margin-block-end: 1rem;
}
.main.main-news .news__list a {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.main.main-news .pagination {
  margin-block-start: 3.5rem;
}
.main.main-news .pagination .pagination__list {
  display: flex;
  justify-content: center;
  gap: 1rem;
  align-items: center;
}
.main.main-news .pagination .pagination__item {
  color: var(--color-blue, #2192d2);
}
.main.main-news .pagination .pagination__item.is-current .pagination__link {
  background-color: var(--color-blue, #2192d2);
  color: #fff;
  pointer-events: none;
}
.main.main-news .pagination .pagination__item--prev img, .main.main-news .pagination .pagination__item--next img {
  width: 0.8125rem;
  aspect-ratio: 1;
}
.main.main-news .pagination .pagination__item--prev img {
  transform: rotate(180deg);
}
.main.main-news .pagination .pagination__link {
  display: grid;
  width: 2.0625rem;
  aspect-ratio: 1;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 0.625rem;
  font-size: max(10px, 1rem);
  line-height: 1.7%;
  letter-spacing: 0.04em;
}
.main.main-article .article-section .container {
  padding-block: 5rem;
}
.main.main-article .article {
  display: grid;
  gap: 3.5rem;
  position: relative;
  padding-inline: 1.5rem;
  padding-block: 2.5rem;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
  background: var(--color-back, #f8f6ef);
}
.main.main-article .article::before {
  content: "";
  width: 1.6875rem;
  height: 3.375rem;
  position: absolute;
  top: -1rem;
  left: 50%;
  translate: -50% 0;
  background-image: url(../img/common/icon-pin-orange.svg);
  background-size: cover;
  background-repeat: no-repeat;
}
.main.main-article .article .article__body {
  display: grid;
  row-gap: 1.5rem;
}
.main.main-article .article .article__title {
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: max(10px, 1.125rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-article .article .article__text {
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-article .article .article__image {
  width: 100%;
}
.main.main-article .article-pagination .article-pagination__list {
  display: flex;
  justify-content: space-between;
  padding-block: 2rem;
}
.main.main-article .article-pagination .article-pagination__item {
  color: var(--color-text, #333);
  font-size: max(10px, 0.875rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.main.main-article .article-pagination .article-pagination__item .article-pagination__arrow {
  display: block;
  width: 2.875rem;
  aspect-ratio: 1;
  position: relative;
  border-radius: 0.875rem;
  background: var(--color-blue, #2192d2);
}
.main.main-article .article-pagination .article-pagination__item .article-pagination__arrow::after {
  content: "";
  width: 1.5rem;
  aspect-ratio: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  background-image: url(../img/common/icon-link-arrow-white.svg);
  background-size: cover;
}
.main.main-article .article-pagination .article-pagination__item--prev .article-pagination__arrow::after {
  transform: rotate(180deg);
}
.main.main-article .article-pagination .article-pagination__link {
  display: flex;
  column-gap: 1rem;
  align-items: center;
}
.main.main-article .article-pagination .article-pagination__back {
  display: grid;
  width: 21.5625rem;
  height: 4rem;
  place-content: center;
  position: relative;
  border: 1px solid var(--color-text, #333);
  border-radius: 1rem;
  background: var(--color-white, #fff);
  color: var(--color-text, #333);
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: max(10px, 1rem);
  line-height: 1.3;
  letter-spacing: 0.04em;
}
.main.main-article .article-pagination .article-pagination__back::after {
  content: "";
  width: 1.5rem;
  aspect-ratio: 1;
  position: absolute;
  top: 50%;
  right: 1rem;
  translate: 0 -50%;
  background-image: url(../img/common/icon-link-arrow-black.svg);
  background-size: 100%;
  background-repeat: no-repeat;
}

.footer {
  border-block-start: 1px solid var(--color-line, #dedede);
}
.footer .container {
  display: grid;
  row-gap: 4.5rem;
  padding-block-start: 2.5rem;
  padding-block-end: 1rem;
}
.footer .footer__map {
  width: 100%;
  height: 0;
  position: relative;
  padding-top: 113.3333333333%;
  overflow: clip;
  border-radius: 2.5rem;
}
.footer .footer__map iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.footer .footer__body {
  display: grid;
  row-gap: 1.5rem;
}
.footer .footer__logo {
  width: 16.4375rem;
}
.footer .footer__address {
  width: fit-content;
  font-size: max(10px, 0.875rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.footer .footer__instagram {
  width: 2.5rem;
  height: 2.5rem;
}
.footer .footer__instagram a::after {
  content: none;
}
.footer .footer__copyright {
  font-size: max(10px, 0.625rem);
  line-height: 1.8;
  letter-spacing: 0.04em;
  text-align: center;
}

.back-to-top {
  display: grid;
  width: 2.625rem;
  height: 2.625rem;
  place-content: center;
  opacity: 0;
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  transform: rotate(-90deg);
  border-radius: 1rem;
  background: var(--color-blue, #2192d2);
  pointer-events: none;
  transition: opacity 0.4s ease;
}
.back-to-top.is-visible {
  opacity: 1;
  pointer-events: auto;
}
.back-to-top::after {
  content: "";
  width: 1.0625rem;
  height: 1.0625rem;
  background-image: url(../img/common/icon-link-arrow-white.svg);
  background-size: cover;
}

/* !style-pc */
@keyframes fvNavBounce {
  0% {
    transform: translateY(0);
  }
  25% {
    transform: translateY(-10px);
  }
  50% {
    transform: translateY(0);
  }
  70% {
    transform: translateY(-5px);
  }
  85% {
    transform: translateY(0);
  }
  95% {
    transform: translateY(-2px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes navDotFall {
  0% {
    opacity: 0;
    transform: translateX(-50%) translateY(-12px);
  }
  60% {
    opacity: 1;
    transform: translateX(-50%) translateY(2px);
  }
  100% {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
  }
}
@media (min-width: 744px) {
  body {
    width: min(100%, 1440px);
    margin-inline: auto;
  }
  .header .header__inner {
    height: auto;
    column-gap: 16px;
    padding: 4px 1.5rem;
  }
  .header .menu-toggle {
    display: none;
  }
  .header .header__logo {
    width: 220px;
    height: auto;
    flex-shrink: 0;
    visibility: visible;
  }
  .header .nav {
    visibility: visible;
    opacity: 1;
    position: static;
    inset: auto;
    z-index: auto;
    transform: none;
    padding: 0;
    background: transparent;
    pointer-events: auto;
  }
  .header .nav .nav__list {
    display: flex;
    gap: 1rem;
  }
  .header .nav .nav__list .nav__item {
    gap: 0.5rem;
    position: relative;
    padding-block: 16px;
    border-block-end: none;
    font-size: max(10px, 15px);
  }
}
@media (min-width: 744px) and (max-width: 1110px) {
  .header .nav .nav__list .nav__item {
    flex-direction: column;
  }
}
@media (min-width: 744px) and (max-width: 900px) {
  .header .nav .nav__list .nav__item {
    padding-block: 1rem;
    font-size: max(10px, 0.9375rem);
  }
}
@media (min-width: 744px) {
  .header .nav .nav__list .nav__item::before {
    width: 32px;
    flex-shrink: 0;
  }
  .header .nav .nav__list .nav__item::after {
    content: none;
  }
}
@media (min-width: 744px) and (hover: hover) {
  .header .nav .nav__list .nav__item:hover {
    animation: fvNavBounce 0.6s cubic-bezier(0.33, 1, 0.68, 1);
  }
  .header .nav .nav__list .nav__item:hover::after {
    content: "";
    width: 0.375rem;
    height: 0.375rem;
    position: absolute;
    bottom: 0.375rem;
    left: 50%;
    transform: translateX(-50%);
    border-radius: 50%;
    background: var(--color-orange, #f1a868);
    animation: navDotFall 0.3s cubic-bezier(0.33, 1, 0.68, 1) 0.6s both;
  }
}
@media (min-width: 744px) {
  .header .nav .nav__list .nav__item.is-active {
    cursor: default;
    pointer-events: none;
  }
  .header .nav .nav__list .nav__item.is-active::after {
    content: "";
    width: 0.375rem;
    height: 0.375rem;
    position: absolute;
    bottom: 0.375rem;
    left: 50%;
    transform: translateX(-50%);
    border-radius: 50%;
    background: var(--color-orange, #f1a868);
  }
  .page-heading {
    row-gap: 16px;
    font-size: 32px;
  }
  .page-heading::before {
    width: 100px;
    height: 64px;
  }
  .main:not(.main-top) .fv-section .container {
    padding-block-start: 48px;
    padding-block-end: 0;
  }
  .main:not(.main-top) .fv-section .fv__body {
    grid-template-columns: 280px minmax(0, 1fr);
    justify-content: space-between;
    column-gap: 16px;
  }
  .main:not(.main-top) .fv-section .fv-image {
    width: 100%;
    min-width: 0;
    max-width: 50rem;
    height: 350px;
    justify-self: end;
  }
  .main:not(.main-top) .fv-section .fv-image::before {
    width: 244px;
    height: 82px;
    top: -46px;
  }
  .main:not(.main-top) .fv-section .fv-image::after {
    width: 166px;
    height: 70px;
    bottom: 44px;
    left: -104px;
  }
  .main:not(.main-top) .fv-section .fv-image .fv-image__media {
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 116px;
  }
  .main:not(.main-top) .fv-section .fv-image .fv-image__media picture, .main:not(.main-top) .fv-section .fv-image .fv-image__media img {
    height: 100%;
  }
  .main:not(.main-top) .fv-section .fv-image .fv-image__media img {
    object-fit: cover;
    object-position: center;
  }
  .content-block {
    padding-inline: 1rem;
  }
  .content-block .container {
    width: min(100%, 76rem);
    margin-inline: auto;
  }
  .content-block .block-heading {
    font-size: max(10px, 32px);
  }
  .content-block .block-heading::after {
    width: 72px;
    height: 8px;
    margin-block-start: 16px;
  }
  .content-block .block-title {
    column-gap: 16px;
    font-size: max(10px, 24px);
  }
  .content-block .block-title::before {
    width: 32px;
    height: 32px;
  }
  .content-block .block-body {
    margin-block-start: 56px;
  }
  .link-more {
    gap: 8px;
    font-size: max(10px, 16px);
    transition: opacity 0.3s;
  }
  .link-more::after {
    width: 16px;
  }
  .link-more:hover {
    opacity: 0.75;
  }
  .link-btn {
    height: 64px;
    padding-inline: 40px;
    overflow: hidden;
    font-size: max(10px, 18px);
  }
  .link-btn::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    transform: translateX(-100%);
    background-color: #f1a868;
    transition: transform 0.3s ease;
  }
  .link-btn .link-btn__text {
    position: relative;
    z-index: 1;
  }
  .link-btn:hover::before {
    transform: translateX(0);
  }
  .link-btn.link-btn--pdf::after {
    width: 24px;
    height: 24px;
    right: 16px;
  }
  .definition .definition__list {
    margin-block: 24px;
  }
  .definition .definition__item {
    grid-template-columns: 280px auto;
    gap: 8px;
    padding-block: 8px;
  }
  .definition .definition__term, .definition .definition__desc {
    font-size: max(10px, 16px);
  }
  .definition .definition__term {
    padding: 8px;
    border-radius: 8px;
  }
  .definition .definition__desc {
    padding-inline: 8px;
    padding-block: 4px;
  }
  .definition .definition__sublist {
    grid-template-columns: 0.8fr 1fr;
    gap: 8px;
    font-size: max(10px, 16px);
  }
  .definition .definition__sublist:has(.definition__subitem:not(:only-child)) {
    gap: 1.5rem;
  }
  .definition .definition__sub-definition {
    font-size: max(10px, 16px);
  }
  .definition .definition__sub-definition .definition__sub-term {
    column-gap: 8px;
  }
  .definition .definition__sub-definition .definition__sub-term::before {
    width: 14px;
    border-radius: 4px;
  }
  .main.main-top .fv-section {
    padding-inline-end: 0;
    padding-block-start: 60px;
  }
  .main.main-top .fv-section .container {
    width: min(100%, 85rem);
    margin-inline-end: 0;
    margin-block-start: 0;
    overflow: hidden;
  }
  .main.main-top .fv-section .container::before {
    width: 488px;
    height: 112px;
    top: -6px;
    left: 760px;
    background-image: url(../img/top/fv-top-pc.webp);
  }
  .main.main-top .fv-section .container::after {
    content: none;
  }
  .main.main-top .fv-section .fv__logo {
    display: block;
    width: 521px;
  }
  .main.main-top .fv-section .fv__body {
    display: flex;
    column-gap: 5rem;
    margin-block-start: 48px;
  }
  .main.main-top .fv-section .fv__nav {
    width: 265px;
    flex-shrink: 0;
  }
  .main.main-top .fv-section .fv__nav .fv__nav-list {
    display: flex;
    flex-direction: column;
    row-gap: 8px;
  }
  .main.main-top .fv-section .fv__nav .fv__nav-list .fv__nav-item {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    padding-block: 12px;
    border-block-end: none;
    font-family: var(--font-heading);
    font-weight: 500;
    font-size: max(10px, 18px);
    line-height: 1.6;
    letter-spacing: 0.04em;
  }
  .main.main-top .fv-section .fv__nav .fv__nav-list .fv__nav-item::before {
    content: "";
    width: 32px;
    aspect-ratio: 1;
    flex-shrink: 0;
    background-size: 100%;
  }
  .main.main-top .fv-section .fv__nav .fv__nav-list .fv__nav-item--about::before {
    background-image: url(../img/common/nav-icon-about.svg);
  }
  .main.main-top .fv-section .fv__nav .fv__nav-list .fv__nav-item--life::before {
    background-image: url(../img/common/nav-icon-life.svg);
  }
  .main.main-top .fv-section .fv__nav .fv__nav-list .fv__nav-item--admission::before {
    background-image: url(../img/common/nav-icon-admission.svg);
  }
  .main.main-top .fv-section .fv__nav .fv__nav-list .fv__nav-item--recruit::before {
    background-image: url(../img/common/nav-icon-recruit.svg);
  }
  .main.main-top .fv-section .fv__nav .fv__nav-list .fv__nav-item--enrolled::before {
    background-image: url(../img/common/nav-icon-enrolled.svg);
  }
}
@media (min-width: 744px) and (hover: hover) {
  .main.main-top .fv-section .fv__nav .fv__nav-list .fv__nav-item:hover {
    animation: fvNavBounce 0.6s cubic-bezier(0.33, 1, 0.68, 1);
  }
}
@media (min-width: 744px) {
  .main.main-top .fv-section .fv__slide {
    overflow: hidden;
  }
  .main.main-top .fv-section .fv__slide .fv__slide-item {
    width: 592px;
    height: 480px;
  }
  .main.main-top .fv-section .fv__dots {
    position: absolute;
    right: 112px;
    bottom: -2.8125rem;
    z-index: 1;
  }
  .main.main-top .fv-section .fv__dots .slick-dots {
    display: flex;
    gap: 24px;
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .main.main-top .fv-section .fv__dots .slick-dots li {
    margin: 0;
  }
  .main.main-top .fv-section .fv__dots .slick-dots button {
    width: 10px;
    height: 10px;
    padding: 0;
    border: none;
    border: 1px solid #fff;
    border-radius: 50%;
    background: transparent;
    font-size: 0;
    cursor: pointer;
  }
  .main.main-top .fv-section .fv__dots .slick-dots .slick-active button {
    background: #fff;
  }
  .main.main-top .news-section {
    margin-block-start: 8rem;
    margin-block-end: 10.1875rem;
  }
  .main.main-top .news-section::before {
    height: calc(18.625rem + 2px);
    top: calc(-18.625rem - 1px);
    background-image: url(../img/top/section-divider-news-top-pc.webp);
  }
  .main.main-top .news-section::after {
    height: calc(10.1875rem + 2px);
    bottom: calc(-10.1875rem - 1px);
    background-image: url(../img/top/section-divider-news-bottom-pc.webp);
  }
  .main.main-top .news-section .container {
    padding-block: 40px;
  }
  .main.main-top .news-section .news__banners {
    grid-template-columns: repeat(auto-fit, minmax(300px, 24rem));
    justify-content: center;
    gap: 2rem;
  }
  .main.main-top .news-section .news__banners .news__banner-wrap {
    padding: 6px;
    border-radius: 24px;
    transition: opacity 0.3s;
  }
  .main.main-top .news-section .news__banners .news__banner-wrap::before {
    width: 20px;
    height: 35px;
    top: -6px;
  }
  .main.main-top .news-section .news__banners .news__banner-wrap::after {
    width: 24px;
    right: 16px;
  }
  .main.main-top .news-section .news__banners .news__banner-wrap:hover {
    opacity: 0.8;
  }
  .main.main-top .news-section .news__banners .news__banner-wrap .news__banner {
    padding: 14px;
    border-radius: 20px;
  }
  .main.main-top .news-section .news__banners .news__banner-wrap .news__banner::before {
    width: 48px;
    height: 48px;
    top: -12px;
    left: 6px;
  }
  .main.main-top .news-section .news__banners .news__banner-wrap .news__banner::after {
    width: 47px;
    height: 33px;
    right: 10px;
    bottom: -12px;
  }
  .main.main-top .news-section .news__banners .news__banner-wrap .news__banner-sub {
    font-size: max(10px, 18px);
  }
  .main.main-top .news-section .news__banners .news__banner-wrap .news__banner-main {
    font-size: max(10px, 20px);
  }
  .main.main-top .news-section .news__body {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-areas: "heading body" "link body";
    margin-block-start: 64px;
  }
  .main.main-top .news-section .block-heading {
    grid-area: heading;
  }
  .main.main-top .news-section .block-body {
    width: 56.5rem;
    grid-area: body;
    margin-inline-start: auto;
    margin-block-start: 0;
  }
  .main.main-top .news-section .news__list {
    row-gap: 12px;
  }
  .main.main-top .news-section .news__list li {
    grid-template-columns: auto 1fr;
    column-gap: 32px;
    font-size: max(10px, 16px);
  }
  .main.main-top .news-section .news__list a {
    transition: color 0.3s;
  }
  .main.main-top .news-section .news__list a:hover {
    color: var(---yellow, #f3d422);
  }
  .main.main-top .news-section .link-more-wrap {
    grid-area: link;
  }
  .main.main-top .news-section .link-more {
    margin-block-start: auto;
    margin-block-end: 10px;
  }
  .main.main-top .greeting-section .container {
    padding-block: 80px;
  }
  .main.main-top .greeting-section .greeting__text p {
    font-size: max(10px, 16px);
  }
  .main.main-top .greeting-section .greeting__text p + p {
    margin-block-start: 32px;
  }
  .main.main-top .greeting-section .greeting__signature {
    margin-block-start: 16px;
    font-size: max(10px, 16px);
  }
  .main.main-top .greeting-section .greeting__president {
    font-size: max(10px, 16px);
  }
  .main.main-top .greeting-section .greeting__president-name {
    font-size: max(10px, 24px);
  }
  .main.main-top .guide-section {
    margin-block-start: 5.8125rem;
    margin-block-end: 8.4375rem;
  }
  .main.main-top .guide-section::before {
    height: calc(5.8125rem + 2px);
    top: calc(-5.8125rem - 1px);
    background-image: url(../img/top/section-divider-guide-top-pc.webp);
  }
  .main.main-top .guide-section::after {
    height: calc(8.4375rem + 2px);
    bottom: calc(-8.4375rem - 1px);
    background-image: url(../img/top/section-divider-guide-bottom-pc.webp);
  }
  .main.main-top .guide-section .container {
    padding-block: 56px;
  }
  .main.main-top .guide-section .guide__body {
    margin-block-start: 4.5rem;
  }
  .main.main-top .guide-section .guide__list {
    grid-template-columns: repeat(3, 1fr);
  }
  .main.main-top .guide-section .guide__link {
    transition: background-size 0.4s ease;
  }
}
@media (min-width: 744px) and (hover: hover) {
  .main.main-top .guide-section .guide__link:hover {
    background-size: 105%;
  }
}
@media (min-width: 744px) {
  .main.main-top .guide-section .guide__text {
    height: 7.75rem;
    padding-block-start: 1.875rem;
    font-size: max(10px, 1.25rem);
  }
  .main.main-top .guide-section .guide__text::before {
    width: 8.0625rem;
  }
  .main.main-top .guide-section .guide__text::after {
    width: 4.75rem;
  }
  .main.main-top .documents-section .container {
    padding-block-start: 80px;
    padding-block-end: 144px;
  }
  .main.main-top .documents-section .documents__link-btn-list {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 2rem;
  }
  .main.main-top .recruit-section {
    margin-block-start: 6.25rem;
    margin-block-end: 8.25rem;
  }
  .main.main-top .recruit-section::before {
    height: calc(6.25rem + 2px);
    top: calc(-6.25rem - 1px);
    background-image: url(../img/top/section-divider-recruit-top-pc.webp);
  }
  .main.main-top .recruit-section::after {
    height: calc(8.25rem + 2px);
    bottom: calc(-8.25rem - 1px);
    background-image: url(../img/top/section-divider-recruit-bottom-pc.webp);
  }
  .main.main-top .recruit-section .container {
    padding-block: 64px;
  }
  .main.main-top .recruit-section .recruit {
    height: 294px;
  }
  .main.main-top .recruit-section .recruit::before {
    width: 10rem;
    height: 9.4375rem;
    top: -1.5rem;
    left: 18.5%;
    background-image: url(../img/top/recruit-bg-top-left-pc.webp);
  }
  .main.main-top .recruit-section .recruit::after {
    width: 19.3125rem;
    height: 9.875rem;
    bottom: -0.1875rem;
    left: 1.6%;
    background-image: url(../img/top/recruit-bg-bottom-left-pc.webp);
  }
  .main.main-top .recruit-section .recruit .recruit__block::before {
    width: 15.0625rem;
    height: 9.3125rem;
    top: -0.875rem;
    right: 8.5%;
    background-image: url(../img/top/recruit-bg-top-right-pc.webp);
  }
  .main.main-top .recruit-section .recruit .recruit__block::after {
    content: "";
    width: 10rem;
    height: 9.4375rem;
    right: 8.6%;
    bottom: -1.5rem;
    background-image: url(../img/top/recruit-bg-bottom-right-pc.webp);
  }
  .main.main-top .recruit-section .recruit .recruit__heading {
    font-size: max(10px, 32px);
    line-height: 1.6;
  }
  .main.main-top .recruit-section .recruit .recruit__heading::after {
    font-size: max(10px, 60px);
  }
  .main.main-top .recruit-section .recruit .recruit__text {
    margin-block-start: 20px;
    font-size: max(10px, 16px);
  }
  .main.main-top .recruit-section .recruit .link-more {
    margin-block-start: 24px;
  }
  .main.main-top .banner-section .banner__list {
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
  }
  .main.main-top .banner-section .banner__list li a {
    transition: opacity 0.3s;
  }
  .main.main-top .banner-section .banner__list li a:hover {
    opacity: 0.8;
  }
  .main.main-about p {
    font-size: max(10px, 16px);
  }
  .main.main-about .fv-section .fv__body {
    row-gap: 2rem;
  }
  .main.main-about .philosophy-section {
    margin-block-start: 8rem;
    margin-block-end: 10.1875rem;
  }
  .main.main-about .philosophy-section::before {
    height: calc(9.625rem + 2px);
    top: calc(-9.625rem - 1px);
    background-image: url(../img/about/philosophy-top-pc.webp);
  }
  .main.main-about .philosophy-section::after {
    height: calc(10.1875rem + 2px);
    bottom: calc(-10.1875rem - 1px);
    background-image: url(../img/about/philosophy-bottom-pc.webp);
  }
  .main.main-about .philosophy-section .container {
    grid-template-columns: 1fr 30.625rem;
    justify-content: space-between;
    padding-block-end: 70px;
  }
  .main.main-about .philosophy-section .container::after {
    height: 36.75rem;
    order: -1;
  }
  .main.main-about .philosophy-section .philosophy__list {
    row-gap: 2rem;
  }
  .main.main-about .philosophy-section .philosophy__item {
    row-gap: 1.5rem;
  }
  .main.main-about .philosophy-section .philosophy__text {
    font-size: max(10px, 18px);
  }
  .main.main-about .feature-section .container {
    row-gap: 56px;
    padding-block: 80px;
  }
  .main.main-about .feature-section .feature__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 2rem;
    row-gap: 4.5rem;
  }
  .main.main-about .feature-section .feature__article {
    row-gap: 24px;
  }
  .main.main-about .feature-section .feature__note {
    column-gap: 8px;
    margin-block-end: 8px;
    font-size: max(10px, 16px);
  }
  .main.main-about .feature-section .feature__note::before {
    content: "";
    width: 14px;
    height: 14px;
    border-radius: 4px;
  }
  .main.main-about .lunch-section {
    margin-block-start: 5.8125rem;
    margin-block-end: 8.4375rem;
  }
  .main.main-about .lunch-section::before {
    height: calc(5.8125rem + 2px);
    top: calc(-5.8125rem - 1px);
    background-image: url(../img/about/lunch-top-pc.webp);
  }
  .main.main-about .lunch-section::after {
    height: calc(8.4375rem + 2px);
    bottom: calc(-8.4375rem - 1px);
    background-image: url(../img/about/lunch-bottom-pc.webp);
  }
  .main.main-about .lunch-section .container {
    row-gap: 56px;
    padding-block: 40px;
  }
  .main.main-about .lunch-section .lunch__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
  }
  .main.main-about .lunch-section .block-title {
    margin-block-start: 32px;
  }
  .main.main-about .lunch-section .lunch__text {
    margin-block-start: 24px;
  }
  .main.main-about .lunch-section .lunch__note {
    margin-block-start: 8px;
    font-size: max(10px, 12px);
  }
  .main.main-about .capacity-section .container {
    row-gap: 56px;
    padding-block-start: 80px;
  }
  .main.main-about .capacity-section .capacity__table {
    width: 593px;
  }
  .main.main-about .capacity-section .capacity__table td {
    font-size: max(10px, 20px);
  }
  .main.main-about .capacity-section .capacity__table thead th {
    padding-block-end: 8px;
    font-size: max(10px, 18px);
  }
  .main.main-about .capacity-section .capacity__table thead th:first-child {
    width: 8rem;
  }
  .main.main-about .capacity-section .capacity__table [scope=row] {
    width: 128px;
    height: 52px;
    margin-block: 8px;
    border-radius: 8px;
    font-size: max(10px, 20px);
  }
  .main.main-about .support-section .container {
    row-gap: 56px;
    padding-block-start: 72px;
  }
  .main.main-about .support-section .support__item {
    font-size: max(10px, 16px);
  }
  .main.main-about .support-section .link-more {
    margin-block-start: 24px;
  }
  .main.main-about .support-section .link-more--blue {
    font-size: max(10px, 16px);
  }
  .main.main-about .facility-section .container {
    row-gap: 56px;
    padding-block-start: 72px;
    padding-block-end: 80px;
  }
  .main.main-about .map-section {
    margin-block-start: 6.25rem;
    margin-block-end: 8.25rem;
  }
  .main.main-about .map-section::before {
    height: calc(6.25rem + 2px);
    top: calc(-6.25rem - 1px);
    background-image: url(../img/about/map-top-pc.webp);
  }
  .main.main-about .map-section::after {
    height: calc(8.25rem + 2px);
    bottom: calc(-8.25rem - 1px);
    background-image: url(../img/about/map-bottom-pc.webp);
  }
  .main.main-about .map-section .container {
    row-gap: 0;
    position: relative;
    padding-block: 40px;
  }
  .main.main-about .map-section .block-heading {
    position: absolute;
    top: 40px;
  }
  .main.main-about .map-section .map__grid {
    display: grid;
    grid-template-columns: 37rem 1fr 1fr 1fr;
    grid-template-areas: "image-1 image-2 image-2 image-2" "image-1 image-3 image-4 image-5" "image-1 image-6 image-7 image-8";
    justify-content: space-between;
    gap: 2rem;
  }
  .main.main-about .map-section .map__item--01 {
    display: flex;
    align-items: flex-end;
  }
  .main.main-about .map-section .map__item--01 .map__image {
    margin-block-start: 76px;
  }
  .main.main-about .program-section .container {
    row-gap: 56px;
    padding-block: 80px;
  }
  .main.main-about .program-section .program__list {
    grid-template-columns: repeat(4, 1fr);
    gap: 2rem;
  }
  .main.main-about .program-section .program__figure figcaption {
    margin-block-start: 16px;
    font-size: max(10px, 14px);
  }
  .main.main-life .life-section .container {
    display: grid;
    row-gap: 3.5rem;
    padding-block: 5rem;
  }
  .main.main-life .schedule .schedule__tabs {
    gap: 3rem;
  }
  .main.main-life .schedule .schedule__tab-button {
    padding-inline: 2.5rem;
    padding-block-start: 40px;
    padding-block-end: 16px;
    border-radius: 24px 24px 0 0;
    font-size: 24px;
    pointer-events: none;
  }
  .main.main-life .schedule .schedule__tab-button::before {
    width: 77px;
    height: 77px;
    margin-block-end: 16px;
  }
  .main.main-life .schedule .schedule__body::before {
    width: 2px;
    top: 52px;
    bottom: 76px;
    left: 50%;
    transform: translateX(-50%);
  }
  .main.main-life .schedule .schedule__row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    align-items: stretch;
  }
  .main.main-life .schedule .schedule__row:first-of-type .schedule__cell {
    padding-block-start: 16px;
  }
  .main.main-life .schedule .schedule__row:first-of-type::before {
    top: 16px;
  }
  .main.main-life .schedule .schedule__row:last-of-type .schedule__cell {
    padding-block-end: 40px;
    border-radius: 0 0 24px 24px;
  }
  .main.main-life .schedule .schedule__row .schedule__cell {
    display: grid;
    gap: 16px;
  }
  .main.main-life .schedule .schedule__row .schedule__cell--left, .main.main-life .schedule .schedule__row .schedule__cell--right {
    padding-inline: 2.5rem;
    padding-block-end: 16px;
  }
  .main.main-life .schedule .schedule__row .schedule__cell--left .schedule-card {
    margin-inline-start: 0;
    margin-inline-end: 16px;
  }
  .main.main-life .schedule .schedule__row .schedule__cell--left .schedule-card::before {
    content: "";
    right: -16px;
    left: auto;
    transform: rotate(180deg);
    translate: 0 -50%;
  }
  .main.main-life .schedule .schedule__row .schedule__cell--left .schedule-card::after {
    content: none;
  }
  .main.main-life .schedule .schedule__row .schedule-card {
    grid-template-columns: 64px auto;
    gap: 8px;
    margin-inline-start: 16px;
    padding: 16px;
  }
  .main.main-life .schedule .schedule__row .schedule-card::before {
    width: 16px;
    height: 20px;
    left: -16px;
  }
  .main.main-life .schedule .schedule__row .schedule-card::after {
    width: 72px;
    height: 72px;
    left: calc(-16px - 2.5rem - 1.5rem);
  }
  .main.main-life .schedule .schedule__row .schedule-card .schedule-card__time {
    font-size: max(10px, 22px);
  }
  .main.main-life .schedule .schedule__row .schedule-card .schedule-card__text {
    font-size: max(10px, 18px);
  }
  .main.main-life .schedule .schedule__row .schedule-note {
    height: auto;
    min-height: 72px;
    font-size: max(10px, 16px);
  }
  .main.main-life .event-section {
    margin-block-start: 5.8125rem;
    margin-block-end: 8.4375rem;
  }
  .main.main-life .event-section::before {
    height: calc(5.8125rem + 2px);
    top: calc(-5.8125rem - 1px);
    background-image: url(../img/life/event-section-top-pc.webp);
  }
  .main.main-life .event-section::after {
    height: calc(8.4375rem + 2px);
    bottom: calc(-8.4375rem - 1px);
    background-image: url(../img/life/event-section-bottom-pc.webp);
  }
  .main.main-life .event-section .container {
    padding-block: 40px;
  }
  .main.main-life .event-section .event__list {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 2rem;
    row-gap: 42px;
    margin-block-start: 56px;
  }
  .main.main-life .event-section .event__item {
    row-gap: 16px;
  }
  .main.main-life .event-section .event__item .event__image .event__season:has(img[src*=spring]) {
    width: 7.75rem;
    top: 0.625rem;
    left: 2.0625rem;
  }
  .main.main-life .event-section .event__item .event__image .event__season:has(img[src*=summer]) {
    width: 9rem;
    top: 0.125rem;
    left: 1.375rem;
  }
  .main.main-life .event-section .event__item .event__image .event__season:has(img[src*=fall]) {
    width: 9.25rem;
    top: 0rem;
    left: 1.375rem;
  }
  .main.main-life .event-section .event__item .event__image .event__season:has(img[src*=winter]) {
    width: 8.75rem;
    top: 0.25rem;
    left: 1.9375rem;
  }
  .main.main-life .event-section .event__item .event__events {
    column-gap: 2rem;
    row-gap: 12px;
  }
  .main.main-life .event-section .event__item .event__text {
    column-gap: 8px;
    font-size: max(10px, 16px);
  }
  .main.main-life .event-section .event__item .event__text::before {
    content: "";
    width: 14px;
    height: 14px;
    border-radius: 4px;
  }
  .main.main-life .life-image-block {
    width: 100%;
    height: 31.4375rem;
    margin-block-start: -5.875rem;
    background-image: url(../img/life/life-image-block-pc.webp);
    background-position: center;
    background-size: cover;
  }
  .main.main-enter .enter-section .container {
    display: grid;
    row-gap: 56px;
    padding-block-start: 128px;
    padding-block-end: 80px;
  }
  .main.main-enter .enter-section .block-title + small {
    margin-block-start: 6px;
  }
  .main.main-enter .uniform-section {
    margin-block-start: 101px;
    margin-block-end: 132px;
  }
  .main.main-enter .uniform-section::before {
    height: calc(6.3125rem + 2px);
    top: calc(-6.3125rem - 1px);
    background-image: url(../img/enter/uniform-top-pc.png);
  }
  .main.main-enter .uniform-section::after {
    height: calc(8.25rem + 2px);
    bottom: calc(-8.25rem - 1px);
    background-image: url(../img/enter/uniform-bottom-pc.png);
  }
  .main.main-enter .uniform-section .container {
    row-gap: 56px;
    padding-block: 40px;
  }
  .main.main-enter .uniform-section .uniform {
    margin-block-start: 30px;
  }
  .main.main-enter .uniform-section .uniform .uniform__block {
    grid-template-columns: 19.625rem minmax(0, 48.25rem);
    column-gap: 1rem;
    align-items: center;
    padding-inline: 3rem;
    padding-block: 0;
    border-radius: 5rem;
  }
  .main.main-enter .uniform-section .uniform .uniform__heading {
    font-size: max(10px, 1.5rem);
  }
  .main.main-enter .uniform-section .uniform .uniform__heading::before {
    font-size: max(10px, 3.875rem);
  }
  .main.main-enter .uniform-section .uniform .uniform__image {
    margin-block-start: -2rem;
    margin-block-end: 3rem;
  }
  .main.main-enter .uniform-section .uniform .uniform__note {
    margin-block-start: 8px;
  }
  .main.main-enter .uniform-section .other-info__list {
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
  }
  .main.main-enter .uniform-section .other-info__text {
    margin-block-start: 24px;
    font-size: max(10px, 16px);
  }
  .main.main-enter .faq-section .container {
    row-gap: 56px;
    padding-block: 80px;
  }
  .main.main-enter .faq-section .faq {
    row-gap: 32px;
  }
  .main.main-enter .faq-section .faq .faq__item {
    row-gap: 0;
  }
  .main.main-enter .faq-section .faq .faq__question {
    column-gap: 16px;
    font-size: max(10px, 18px);
  }
  .main.main-enter .faq-section .faq .faq__question::before {
    width: 60px;
  }
  .main.main-enter .faq-section .faq .faq__answer {
    column-gap: 16px;
    margin-inline-start: 75px;
    margin-block-start: 8px;
  }
  .main.main-enter .faq-section .faq .faq__answer::before {
    width: 60px;
  }
  .main.main-enter .faq-section .faq .faq__answer .faq__answer-body {
    padding: 16px;
    border-radius: 16px;
    font-size: max(10px, 16px);
  }
  .main.main-enter .faq-section .faq a:hover {
    opacity: 0.75;
  }
  .main.main-recruit {
    font-size: max(10px, 16px);
  }
  .main.main-recruit .fv-section .fv-image:not(:root)::after {
    content: "";
  }
  .main.main-recruit .recruit-lead {
    margin-block-start: 7.875rem;
    margin-block-end: 10.1875rem;
  }
  .main.main-recruit .recruit-lead::before {
    height: calc(9.625rem + 2px);
    top: calc(-9.625rem - 1px);
    background-image: url(../img/recruit/recruit-lead-top-pc.webp);
  }
  .main.main-recruit .recruit-lead::after {
    height: calc(10.1875rem + 2px);
    bottom: calc(-10.1875rem - 1px);
    background-image: url(../img/recruit/recruit-lead-bottom-pc.webp);
  }
  .main.main-recruit .recruit-lead .container {
    grid-template-columns: auto minmax(360px, 30.4375rem);
    padding-block-start: 8px;
    padding-block-end: 0;
  }
}
@media (min-width: 744px) and (max-width: 950px) {
  .main.main-recruit .recruit-lead .container {
    grid-template-columns: auto;
    justify-content: center;
    row-gap: 48px;
  }
  .main.main-recruit .recruit-lead .container .recruit-lead__info {
    width: 487px;
    margin-inline: auto;
  }
}
@media (min-width: 744px) {
  .main.main-recruit .recruit-lead .recruit-lead__heading {
    font-size: max(10px, 40px);
  }
  .main.main-recruit .recruit-lead .recruit-lead__text {
    margin-block-start: 24px;
    font-size: max(10px, 18px);
  }
  .main.main-recruit .recruit-lead .recruit-lead__info {
    height: 220px;
    margin-block: 12px;
    padding-inline: 2.5rem;
    padding-block: 40px;
  }
  .main.main-recruit .recruit-lead .recruit-lead__info::before {
    content: "";
    width: 27px;
    height: 54px;
    top: -22px;
  }
  .main.main-recruit .recruit-lead .recruit-lead__info .recruit-lead__item {
    font-size: max(10px, 18px);
  }
  .main.main-recruit .recruit-lead .recruit-lead__info .recruit-lead__term {
    column-gap: 8px;
  }
  .main.main-recruit .recruit-lead .recruit-lead__info .recruit-lead__term::before {
    width: 14px;
    border-radius: 4px;
  }
  .main.main-recruit .recruit-lead .recruit-lead__info .recruit-lead__desc {
    margin-block-start: 8px;
  }
  .main.main-recruit .recruit-lead .recruit-lead__info .recruit-lead__access {
    column-gap: 8px;
    margin-block-start: 24px;
    font-size: max(10px, 24px);
  }
  .main.main-recruit .recruit-lead .recruit-lead__info .recruit-lead__access::before {
    width: 35px;
  }
  .main.main-recruit .recruit-section .container {
    padding-block: 80px;
  }
  .main.main-recruit .recruit-section .recruit__block {
    margin-block: 56px;
  }
  .main.main-recruit .recruit-section .recruit__text {
    margin-block-start: 24px;
  }
  .main.main-recruit .recruit-section .link-btn-wrap {
    width: 280px;
    margin-inline: auto;
    margin-block-start: 56px;
  }
  .main.main-news .news-section .container {
    padding-block: 102px;
  }
  .main.main-news .news__list {
    row-gap: 32px;
    padding-inline: 2.5rem;
    padding-block: 56px;
  }
  .main.main-news .news__list::before {
    width: 27px;
    height: 54px;
    top: -20px;
  }
  .main.main-news .news__list li {
    grid-template-columns: 104px auto;
    column-gap: 16px;
    padding-inline-end: 40px;
    font-size: max(10px, 16px);
  }
  .main.main-news .news__list li::before {
    bottom: -16px;
    translate: 0 50%;
  }
  .main.main-news .news__list li::after {
    width: 24px;
  }
  .main.main-news .news__list li:last-of-type {
    margin-block-end: 16px;
  }
  .main.main-news .news__list a {
    white-space: nowrap;
    transition: 0.3s color;
    text-overflow: ellipsis;
  }
  .main.main-news .news__list a:hover {
    color: var(--coler-blue, #2192d2);
  }
  .main.main-news .pagination {
    margin-block-start: 56px;
  }
  .main.main-news .pagination .pagination__list {
    gap: 16px;
  }
  .main.main-news .pagination .pagination__item--prev img, .main.main-news .pagination .pagination__item--next img {
    width: 13px;
  }
  .main.main-news .pagination .pagination__link {
    width: 33px;
    border-radius: 10px;
    font-size: max(10px, 16px);
  }
  .main.main-article .article-section .container {
    padding-block: 80px;
  }
  .main.main-article .article {
    gap: 56px;
    padding-inline: 40px;
    padding-block: 56px;
  }
  .main.main-article .article::before {
    width: 27px;
    height: 54px;
    top: -20px;
  }
  .main.main-article .article .article__body {
    row-gap: 24px;
  }
  .main.main-article .article .article__title {
    font-size: max(10px, 20px);
  }
  .main.main-article .article .article__text {
    font-size: max(10px, 16px);
  }
  .main.main-article .article .article__image {
    width: min(100%, 592px);
    margin-inline: auto;
  }
  .main.main-article .article-pagination .article-pagination__list {
    padding-block: 32px;
  }
  .main.main-article .article-pagination .article-pagination__item {
    font-size: max(10px, 16px);
  }
  .main.main-article .article-pagination .article-pagination__item .article-pagination__arrow {
    width: 46px;
    border-radius: 14px;
  }
  .main.main-article .article-pagination .article-pagination__item .article-pagination__arrow::after {
    width: 24px;
  }
  .main.main-article .article-pagination .article-pagination__link {
    column-gap: 16px;
  }
  .main.main-article .article-pagination .article-pagination__back {
    width: 280px;
    height: 64px;
    margin-inline: auto;
    border-radius: 16px;
    font-size: max(10px, 18px);
  }
  .main.main-article .article-pagination .article-pagination__back::after {
    width: 24px;
    right: 16px;
  }
  .footer .container {
    row-gap: 72px;
    padding-block-start: 40px;
    padding-block-end: 16px;
  }
  .footer .footer__map {
    padding-top: 486px;
  }
  .footer .footer__body {
    grid-template-columns: repeat(3, max-content);
    column-gap: clamp(2rem, (140 - 32) * (var(--fluid-100vw) - 744px) / (1216 - 744) + 32px, 8.75rem);
    align-items: center;
  }
}
@media (min-width: 744px) and (max-width: 890px) {
  .footer .footer__body {
    grid-template-columns: none;
    row-gap: 24px;
  }
}
@media (min-width: 744px) {
  .footer .footer__logo {
    width: 380px;
  }
  .footer .footer__address {
    font-size: max(10px, 16px);
  }
  .footer .footer__instagram {
    width: 40px;
    height: 40px;
  }
  .footer .footer__copyright {
    font-size: max(10px, 12px);
  }
  .back-to-top {
    width: 42px;
    height: 42px;
    right: 16px;
    bottom: 16px;
    border-radius: 16px;
  }
  .back-to-top::after {
    width: 17px;
    height: 17px;
  }
}/*# sourceMappingURL=style.css.map */