@charset "UTF-8";
/*
Theme Name: Theme name
Author: Author
Author URI:
*/
/* ============================================
   A Modern CSS Reset
   ============================================ */
*,
*::before,
*::after {
  box-sizing: border-box;
}

body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

ul[role=list],
ol[role=list] {
  list-style: none;
}

html:focus-within {
  scroll-behavior: smooth;
}

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

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

img,
picture {
  max-width: 100%;
  display: block;
}

input,
button,
textarea,
select {
  font: inherit;
}

/* ============================================
   🔧 Swiper高速回転バグの修正
   ============================================
   問題: prefers-reduced-motion設定時に
        transition-duration: 0.01msが適用され
        Swiperが超高速回転する

   対策: Swiperの要素を除外する
   ============================================ */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  /* Swiperの要素を除外 */
  *:not(.swiper-wrapper):not(.swiper-slide),
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
html {
  scroll-behavior: smooth;
  font-size: calc(100vw / 1440 * 15);
}
@media (1440px < width) {
  html {
    font-size: 15px;
  }
}
@media (width <= 768px) {
  html {
    font-size: calc(100vw / 375 * 15);
  }
}
html {
  --ark-letter_spacing: 0!important;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  color: #1e1e1e;
  line-height: 1.8666666667;
}
body.is-modal-open, body.is-menu-open {
  overflow: hidden;
}

a {
  color: #1e1e1e;
  transition: 0.3s;
}
a:hover {
  opacity: 0.9;
  filter: alpha(opacity=90);
}

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

pre {
  white-space: pre;
}

ul {
  padding-left: 1.5em;
}

/********************************************
* Layout
********************************************/
.msc-overlay {
  width: 100%;
  height: 100vh;
  position: fixed;
  left: 0;
  top: 0;
  background-color: rgba(37, 71, 121, 0.8);
  opacity: 0;
  z-index: -1;
  transition: 0.3s;
}
.is-menu-open .msc-overlay {
  opacity: 1;
  z-index: 11;
}

/* Header */
.msc-header {
  padding: 1.8666666667rem 2rem 0 3.2rem;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
}
@media (width <= 768px) {
  .msc-header {
    padding: 1.3333333333rem;
  }
}
.msc-header__inner {
  max-width: 96rem;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.msc-header__logo {
  width: 14.2666666667rem;
}
@media (width <= 768px) {
  .msc-header__logo {
    width: 8.4rem;
  }
}
.msc-header .c-sns__list.c-list {
  display: none;
}

.msc-gnav {
  overflow-y: scroll;
  position: absolute;
  right: calc(50% - 46rem);
  top: 1.8666666667rem;
  height: 5.7333333333rem;
  background-color: #fff;
  border-radius: 2.8666666667rem;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.18);
  width: 64rem;
}
@media (width <= 768px) {
  .msc-gnav {
    box-shadow: 0 0 0.6666666667rem rgba(0, 0, 0, 0.15);
    top: 1rem;
    right: 0.6666666667rem;
    height: 2.9333333333rem;
    width: 7.6666666667rem;
    border-radius: 1.4666666667rem;
    padding-left: 0.6666666667rem;
    transition: 0.3s;
  }
}
.is-menu-open .msc-gnav {
  height: auto;
  max-height: min(100vh - 3.8666666667rem, 58.6666666667rem);
  border-radius: 2rem;
  transition: 0.3s;
}
@media (width <= 768px) {
  .is-menu-open .msc-gnav {
    max-height: calc(100vh - 1.8666666667rem);
    margin-left: 0.6666666667rem;
    width: calc(100% - 1.3333333333rem);
    border-radius: 1.3333333333rem;
    padding-bottom: 4.6666666667rem;
  }
}
.msc-gnav__inner {
  transition: 0.3s;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  padding: 1rem 0rem 1rem 2.6666666667rem;
  gap: 1rem;
  width: 100%;
  height: 5.7333333333rem;
}
@media (width <= 768px) {
  .msc-gnav__inner {
    width: auto;
    padding: 1rem;
    height: 2.9333333333rem;
  }
}
.is-menu-open .msc-gnav__inner {
  padding: 1rem 3rem 2.2666666667rem 2.6666666667rem;
  width: 100%;
  height: auto;
}
@media (width <= 768px) {
  .is-menu-open .msc-gnav__inner {
    width: 100%;
    height: 100%;
    padding: 1rem 1rem 1.8666666667rem;
  }
}
.msc-gnav__logo {
  display: none;
  width: 10.9333333333rem;
  opacity: 0;
}
@media (width <= 768px) {
  .msc-gnav__logo {
    width: 8.4rem;
  }
}
.is-menu-open .msc-gnav__logo {
  display: block;
  animation: logoFadeIn 0.3s ease forwards;
}
@keyframes logoFadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.msc-gnav__cta {
  display: none;
  width: 100%;
  gap: 0.6666666667rem;
}
@media (width <= 768px) {
  .msc-gnav__cta {
    gap: 0.5333333333rem;
  }
}
.is-menu-open .msc-gnav__cta {
  display: flex;
  animation: moveDown 0.3s ease forwards;
}
.msc-gnav__cta-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.6rem 1.6rem;
  border-radius: 999px;
  border: 0.1333333333rem solid #254779;
  font-size: 0.9333333333rem;
  font-weight: 700;
  color: #254779;
  text-decoration: none;
  white-space: nowrap;
  transition: background 0.2s, color 0.2s;
}
.msc-gnav__cta-btn:hover {
  background: #254779;
  color: #fff;
}
@media (width <= 768px) {
  .msc-gnav__cta-btn {
    font-size: 0.8666666667rem;
    padding: 0.5333333333rem 0.5333333333rem;
  }
}
.msc-gnav__text {
  color: #254779;
  font-size: 0.8rem;
  line-height: 1;
  display: none;
}
@media (width <= 768px) {
  .msc-gnav__text {
    display: block;
    position: fixed;
    right: 4.1333333333rem;
    top: 2.2rem;
  }
}
.msc-gnav__list.c-list {
  display: flex;
  align-items: center;
  gap: 2rem;
  margin-right: 4.1333333333rem;
}
@media (width <= 768px) {
  .msc-gnav__list.c-list {
    display: none;
  }
}
.is-menu-open .msc-gnav__list.c-list {
  display: none;
}
.msc-gnav__item--apply .msc-gnav__link {
  background-color: #face42;
  width: 13.3333333333rem;
  height: 3.7333333333rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 999px;
  margin-left: -1rem;
  padding-right: 0.6666666667rem;
  background-image: url(./images/common/arrow-black.svg);
  background-repeat: no-repeat;
  background-position: right 1.3333333333rem center;
}
.msc-gnav__link {
  text-decoration: none;
  display: block;
  font-weight: 600;
}
.msc-gnav__bottom-list {
  display: none;
  width: 34rem;
}
@media (width <= 768px) {
  .msc-gnav__bottom-list {
    width: 100%;
  }
}
.is-menu-open .msc-gnav__bottom-list {
  display: flex;
  gap: 2.8666666667rem;
  animation: moveDown 0.3s ease forwards;
}
@media (width <= 768px) {
  .is-menu-open .msc-gnav__bottom-list {
    flex-wrap: wrap;
    gap: 0.6666666667rem;
  }
}
@media (width <= 768px) {
  .msc-gnav__bottom-list-item {
    width: 100%;
  }
}
.msc-gnav__bottom-list-link {
  text-decoration: none;
  font-size: 0.8666666667rem;
}
@media (width <= 768px) {
  .msc-gnav__bottom-list-link {
    font-size: 0.8rem;
  }
}
.msc-gnav .c-sns__list {
  display: none;
  width: 11.6666666667rem;
}
@media (width <= 768px) {
  .msc-gnav .c-sns__list {
    width: 100%;
  }
}
.is-menu-open .msc-gnav .c-sns__list {
  display: flex;
  gap: 1.3333333333rem;
  margin-bottom: 0;
  animation: moveDown 0.3s ease forwards;
}
@media (width <= 768px) {
  .is-menu-open .msc-gnav .c-sns__list {
    justify-content: start;
  }
}
@media (width <= 768px) {
  .msc-gnav .c-sns__img {
    width: 1.6rem;
  }
}
@keyframes moveDown {
  0% {
    opacity: 0;
    transform: translateY(-40rem);
  }
  100% {
    opacity: 1;
    transform: translateY(0rem);
  }
}

.msc-gnav-hidden {
  display: none;
  width: 100%;
}
.is-menu-open .msc-gnav-hidden {
  display: flex;
  gap: 2rem;
  align-items: flex-start;
  animation: fadeInDown 0.3s ease forwards;
}
@media (width <= 768px) {
  .is-menu-open .msc-gnav-hidden {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    margin-bottom: 1.3333333333rem;
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-0.6666666667rem);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.msc-gnav-hidden__col {
  flex: 1;
  min-width: 0;
}
.msc-gnav-hidden__list.c-list {
  margin: 0;
  display: flex;
  flex-direction: column;
}
.msc-gnav-hidden__item {
  width: 100%;
  border-top: 1px solid #d9d9d9;
  background-image: url(../images/common/arrow-blue.svg);
  background-repeat: no-repeat;
  background-position: right 1rem;
  background-size: 1.1333333333rem;
}
@media (width <= 768px) {
  .msc-gnav-hidden__item {
    background-position: right 1.3333333333rem;
  }
}
.msc-gnav-hidden__item:last-of-type {
  border-bottom: 1px solid #d9d9d9;
}
.msc-gnav-hidden__item--has-sub {
  background-image: none;
}
.msc-gnav-hidden__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.msc-gnav-hidden__acc-toggle {
  background: none;
  border: none;
  cursor: pointer;
  padding: 0.5333333333rem 0.2666666667rem;
  flex-shrink: 0;
  width: 2.1333333333rem;
  height: 2.1333333333rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.msc-gnav-hidden__acc-icon {
  display: block;
  width: 0.9333333333rem;
  height: 0.9333333333rem;
  position: relative;
  pointer-events: none;
}
.msc-gnav-hidden__acc-icon::before, .msc-gnav-hidden__acc-icon::after {
  content: "";
  display: block;
  background: #254779;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.msc-gnav-hidden__acc-icon::before {
  width: 0.9333333333rem;
  height: 0.1333333333rem;
}
.msc-gnav-hidden__acc-icon::after {
  width: 0.1333333333rem;
  height: 0.9333333333rem;
  transition: opacity 0.2s;
}
.msc-gnav-hidden__acc-toggle.is-open .msc-gnav-hidden__acc-icon::after {
  opacity: 0;
}
.msc-gnav-hidden__link {
  font-size: 1rem;
  font-weight: 700;
  color: #254779;
  text-decoration: none;
  display: block;
  padding: 0.6666666667rem 2.8rem 0.6666666667rem 0;
}
.msc-gnav-hidden__sub-list.c-list[hidden] {
  display: none !important;
}
.msc-gnav-hidden__sub-list.c-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4666666667rem 0;
  padding: 1rem 0;
  margin-bottom: 1rem;
  border-top: 1px solid #d9d9d9;
}
@media (width <= 768px) {
  .msc-gnav-hidden__sub-list.c-list {
    padding-bottom: 0rem;
  }
}
.msc-gnav-hidden__sub-list--2.c-list {
  margin-bottom: 0;
}
@media (width <= 768px) {
  .msc-gnav-hidden__sub-list--2.c-list {
    margin-bottom: 1rem;
  }
}
.msc-gnav-hidden__sub-item {
  width: 50%;
}
@media (width <= 768px) {
  .msc-gnav-hidden__sub-item {
    width: 100%;
  }
}
.msc-gnav-hidden__sub-link {
  font-size: 0.8666666667rem;
  text-decoration: none;
  padding-left: 1rem;
}

.msc-menu-trigger {
  width: 3.2rem;
  height: 3.2rem;
  cursor: pointer;
  position: relative;
  border: 0.1333333333rem solid #254779;
  border-radius: 999px;
  background-color: #fff;
  position: fixed;
  top: 3.2rem;
  right: calc(50% - 44rem);
}
@media (width <= 768px) {
  .msc-menu-trigger {
    width: 2.3333333333rem;
    height: 2.3333333333rem;
    border: 1px solid #254779;
    right: 1rem;
    top: 1.2666666667rem;
  }
}
.msc-menu-trigger__bar {
  display: block;
  transition: all 0.3s;
  width: 1.8666666667rem;
  height: 0.1333333333rem;
  position: absolute;
  left: calc(50% - 0.9333333333rem);
  top: calc(50% - 0.0666666667rem);
  display: inline-block;
  background: #254779;
}
@media (width <= 768px) {
  .msc-menu-trigger__bar {
    width: 1.3333333333rem;
    height: 1px;
    left: calc(50% - 0.6666666667rem);
  }
}
.msc-menu-trigger__bar:nth-of-type(1) {
  transform: translateY(-0.3333333333rem);
}
.is-menu-open .msc-menu-trigger__bar:nth-of-type(1) {
  transform: translateY(0rem) rotate(40deg);
}
.msc-menu-trigger__bar:nth-of-type(2) {
  transform: translateY(0.3333333333rem);
}
.is-menu-open .msc-menu-trigger__bar:nth-of-type(2) {
  transform: translateY(0rem) rotate(-40deg);
}

.msc-article {
  min-height: 20rem;
}

/* l-content offset（トップページ以外: msc-header の position:fixed 分を補完） */
body:not(.p-home) #content.l-content {
  padding-top: 7.6rem;
}
@media (width <= 768px) {
  body:not(.p-home) #content.l-content {
    padding-top: 4.2666666667rem;
  }
}

/* Footer */
.msc-footer {
  padding: 1rem 0 4rem;
}
@media (width <= 768px) {
  .msc-footer {
    padding: 1.3333333333rem 0 4.3333333333rem;
  }
}
.p-home .msc-footer {
  padding: 6rem 0 2rem;
}
.msc-footer__inner {
  margin: 0 auto;
  max-width: 83.3333333333rem;
  min-height: 250px;
  text-align: center;
}
.msc-footer__logo {
  width: 14.2666666667rem;
  margin: 0 auto 0.8666666667rem;
}
.msc-footer__sponsor {
  background: #f7f8fa;
  border-radius: 0.5333333333rem;
  max-width: 83.3333333333rem;
  margin: 0 auto 2rem;
  padding: 1.8666666667rem 2rem;
}
@media (width <= 768px) {
  .msc-footer__sponsor {
    padding: 1.3333333333rem 1.0666666667rem;
    border-radius: 0.4rem;
  }
}
.msc-footer__sponsor-heading {
  font-family: "Josefin Sans", sans-serif;
  font-size: 0.8666666667rem;
  font-weight: 600;
  color: #254779;
  text-align: center;
  letter-spacing: 0.1em;
  margin-bottom: 1.0666666667rem;
}
.msc-footer__sponsor-official {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.3333333333rem;
  margin-bottom: 2rem;
}
@media (width <= 768px) {
  .msc-footer__sponsor-official {
    gap: 0.8rem;
  }
}
.msc-footer__sponsor-item {
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}
.msc-footer__sponsor-img {
  height: 4rem;
  width: auto;
  object-fit: contain;
}
@media (width <= 768px) {
  .msc-footer__sponsor-img {
    height: 2.9333333333rem;
  }
}
.msc-footer__sponsor-name {
  font-size: 0.9333333333rem;
  font-weight: 600;
  color: #254779;
}
.msc-footer__sponsor-personal {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5333333333rem 1.8666666667rem;
  margin-bottom: 0.6666666667rem;
}
@media (width <= 768px) {
  .msc-footer__sponsor-personal {
    gap: 0.4rem 1.3333333333rem;
  }
}
.msc-footer__sponsor-personal-name {
  font-size: 1rem;
  color: #444;
  border: 1px solid #ddd;
  border-radius: 0.2666666667rem;
  padding: 0.2666666667rem 0.9333333333rem;
}
@media (width <= 768px) {
  .msc-footer__sponsor-personal-name {
    font-size: 0.9333333333rem;
    padding: 0.2rem 0.6666666667rem;
  }
}
.msc-footer__copyrights {
  font-size: 0.7333333333rem;
  margin-bottom: 1.4666666667rem;
}

.msc-fnav__cols {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  text-align: left;
  border-bottom: 1px solid #d9d9d9;
  padding: 0rem 1.3333333333rem 4rem;
  margin-bottom: 1.5333333333rem;
}
@media (width <= 768px) {
  .msc-fnav__cols {
    display: none;
  }
}
.msc-fnav__col {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.6666666667rem;
}
.msc-fnav__col--grid {
  flex: none;
  display: grid;
  grid-template-columns: auto auto;
  column-gap: 3.3333333333rem;
  row-gap: 0.6666666667rem;
}
.msc-fnav__link {
  font-weight: 700;
  color: #254779;
  text-decoration: none;
}
.msc-fnav__sub-list.c-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6666666667rem 0;
  margin-top: 0.6rem;
}
.msc-fnav__sub-item {
  width: 50%;
}
.msc-fnav__sub-link {
  text-decoration: none;
  font-size: 0.9333333333rem;
  line-height: 2;
}
.msc-fnav__bottom-list.c-list {
  display: flex;
  justify-content: center;
  gap: 2.8666666667rem;
  margin-bottom: 2.2rem;
}
@media (width <= 768px) {
  .msc-fnav__bottom-list.c-list {
    border-top: 1px solid #d9d9d9;
    padding: 1.3333333333rem 0 0 3.3333333333rem;
    gap: 1rem;
    text-align: left;
    flex-wrap: wrap;
    justify-content: start;
    margin-bottom: 3.6666666667rem;
  }
}
@media (width <= 768px) {
  .msc-fnav__bottom-item {
    width: 100%;
  }
}
.msc-fnav__bottom-link {
  font-size: 0.8666666667rem;
  text-decoration: none;
}

.msc-breadcrumb {
  width: 100%;
  max-width: 83.3333333333rem;
  margin: 0 auto 3rem;
  padding-left: 5.3333333333rem;
}
@media (width <= 768px) {
  .msc-breadcrumb {
    padding-left: 1.3333333333rem;
  }
}
.msc-breadcrumb ul {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  gap: 0 1.3333333333rem;
  flex-wrap: wrap;
}
/* Sidebar */
/* Admin bar 対応
   WPログイン時に表示される管理バーの高さ分、fixed要素を下にずらす
   PC(>782px): 32px / SP(≤782px): 46px
*/
body.admin-bar .msc-header {
  top: 32px;
}
body.admin-bar .msc-menu-trigger {
  top: calc(3.2rem + 32px);
}
@media screen and (max-width: 782px) {
  body.admin-bar .msc-header {
    top: 46px;
  }
  body.admin-bar .msc-menu-trigger {
    top: calc(1.2666666667rem + 46px);
  }
  body.admin-bar .msc-gnav__text {
    top: calc(2.2rem + 46px);
  }
}
body.admin-bar:not(.p-home) #content.l-content {
  padding-top: calc(7.6rem + 32px);
}
@media screen and (max-width: 782px) {
  body.admin-bar:not(.p-home) #content.l-content {
    padding-top: calc(4.2666666667rem + 46px);
  }
}

/********************************************
* Form
********************************************/
input[type=email],
input[type=text] {
  width: 500px;
  max-width: 100%;
  padding: 5px;
  height: 35px;
}

textarea {
  width: 500px;
  max-width: 100%;
  height: 250px;
}

input[type=submit] {
  width: 300px;
  height: 35px;
  max-width: 100%;
  border: 1px solid #ccc;
}

/**
 * Gutenberg カラムブロック：768px以下で縦積みに強制
 * WP core のデフォルトは599px以下のみ縦積みのため上書き
 */
@media (width <= 768px) {
  .wp-block-columns:not(.is-not-stacked-on-mobile) {
    flex-wrap: wrap !important;
  }
  .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: 100% !important;
    min-width: 100% !important;
  }
}
/********************************************
* Wordpress
********************************************/
/* カラム内の画像・キャプションを中央揃え */
.wp-block-column > .wp-block-image {
  margin-inline: auto;
  text-align: center;
}
.wp-block-column > .wp-block-image img {
  margin-inline: auto;
}

/* Media */
.size-auto,
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
  max-width: 100%;
  height: auto;
}

.aligncenter {
  display: block;
  margin: 0 auto;
}

.alignright {
  float: right;
}

.alignleft {
  float: left;
}

/* Contact Form */
.wpcf7 .wpcf7-not-valid-tip {
  display: none;
}
.wpcf7 .wpcf7-not-valid {
  background: pink;
}
.wpcf7 .wpcf7-response-output {
  margin: 10px 0 0;
  padding: 8px 35px 8px 14px;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
.wpcf7 .wpcf7-validation-errors {
  color: #b94a48;
  background-color: #f2dede;
  border: 1px solid #eed3d7;
}
.wpcf7 .wpcf7-mail-sent-ok {
  color: #3a87ad;
  background-color: #d9edf7;
  border: 1px solid #bce8f1;
}

/********************************************
* Component
********************************************/
.c-btn {
  background-color: #254779;
  color: #fff;
  display: inline-block;
  text-decoration: none;
  line-height: 1;
  padding: 1.3333333333rem 4.2666666667rem 1.3333333333rem 2rem;
  border-radius: 999px;
  background-image: url(../images/common/arrow-white.svg);
  background-repeat: no-repeat;
  background-position: right 2rem center;
  background-size: 1.6rem;
  font-size: 1rem;
  font-weight: 700;
}
.c-btn--accent {
  background-color: #face42;
  color: #1e1e1e;
  background-image: url(../images/common/arrow-blue.svg);
  background-repeat: no-repeat;
  background-position: right 2rem center;
  background-size: 1.6rem;
}
.c-btn--white {
  background-color: #fff;
  color: #254779;
  border: 0.1333333333rem solid #254779;
  background-image: url(../images/common/arrow-blue.svg);
  background-repeat: no-repeat;
  background-position: right 2rem center;
  background-size: 1.6rem;
  padding: 1.0666666667rem 4.2666666667rem 1.0666666667rem 2rem;
}
.c-btn--no-arrow {
  background-image: none;
  padding: 1.0666666667rem 2rem;
  line-height: 1.4666666667;
}

.c-btns {
  display: flex;
  gap: 2.1333333333rem;
}
@media (width <= 768px) {
  .c-btns {
    flex-wrap: wrap;
    justify-content: center;
    gap: 1.3333333333rem;
  }
}
@media (width <= 768px) {
  .c-btns .c-btn {
    width: 85%;
  }
}

.c-fixed-btn {
  background-color: #face42;
  text-decoration: none;
  border: 0.2rem solid #1e1e1e;
  border-radius: 0.6666666667rem 0 0 0.6666666667rem;
  position: fixed;
  right: 0;
  top: 36rem;
  width: 5.2rem;
  z-index: 10;
  writing-mode: vertical-rl;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.1333333333rem;
  font-weight: 700;
  padding-bottom: 1.3333333333rem;
  right: -6.6666666667rem;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media (max-height: 740px) and (min-width: 769px) {
  .c-fixed-btn {
    top: auto;
    bottom: 1.3333333333rem;
  }
}
@media (width <= 768px) {
  .c-fixed-btn {
    font-size: 1rem;
    width: 17.1333333333rem;
    right: -20rem;
    top: inherit;
    bottom: 1.3333333333rem;
    padding: 0.1333333333rem 0 0.1333333333rem 1.3333333333rem;
    writing-mode: inherit;
    flex-direction: row-reverse;
    gap: 0rem;
    border-radius: 0.6666666667rem;
  }
}
.is-scrolled .c-fixed-btn {
  right: 0;
  transition: right 0.5s ease-in-out;
}
@media (width <= 768px) {
  .is-scrolled .c-fixed-btn {
    right: 0.2666666667rem;
  }
}
.c-fixed-btn__img {
  margin: -2.6666666667rem -0.2666666667rem 0.4666666667rem -0.2666666667rem;
  width: 6rem;
  max-width: inherit;
}
@media (width <= 768px) {
  .c-fixed-btn__img {
    width: 4.8rem;
  }
}

.c-home__eng {
  font-size: 6.4rem;
  font-weight: 600;
  text-align: center;
  color: rgba(0, 179, 209, 0.3);
  line-height: 1;
}
@media (width <= 768px) {
  .c-home__eng {
    font-size: 4rem;
  }
}
.c-home__h2 {
  font-size: 2.8666666667rem;
  font-weight: 800;
  color: #254779;
  text-align: center;
  margin-top: -4.6666666667rem;
  letter-spacing: 0.1em;
  margin-bottom: 0.6666666667rem;
}
@media (width <= 768px) {
  .c-home__h2 {
    font-size: 2rem;
    margin-top: -2.6666666667rem;
  }
}

.c-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.c-list--upper-alphabet {
  list-style: upper-alpha;
}
.c-list--lower-alphabet {
  list-style: lower-alpha;
}
.c-list--upper-roman {
  list-style: upper-roman;
}
.c-list--lower-roman {
  list-style: lower-roman;
}
.c-list--none {
  list-style: none;
}
.c-list--circle {
  list-style: circle;
}
.c-list--square {
  list-style: square;
}
.c-list--decimal {
  list-style: decimal;
}
.c-list--decimal-leading-zero {
  list-style: decimal-leading-zero;
}

.c-pagenation {
  margin: 50px 0 0 0;
  text-align: center;
}
.c-pagenation:after, .c-pagenation__navul:after {
  clear: both;
  content: ".";
  display: block;
  height: 0;
  visibility: hidden;
}
.c-pagenation__nav {
  margin: 0;
}
.c-pagenation__item {
  float: left;
  list-style: none outside none;
  margin-left: 3px;
  margin-bottom: 3px;
}
.c-pagenation__item:first-child {
  margin-left: 0;
}
.c-pagenation__item--active {
  background-color: #333;
  border-radius: 3px;
  color: #ffffff;
  cursor: not-allowed;
  padding: 10px 20px;
}
.c-pagenation__link {
  background: none repeat scroll 0 0 #cccccc;
  border-radius: 3px;
  color: #ffffff;
  display: block;
  padding: 10px 20px;
  text-decoration: none;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
}
.c-pagenation__link:hover {
  background-color: #333;
  color: #ffffff;
  opacity: 0.8;
  transition-duration: 500ms;
  transition-property: all;
  transition-timing-function: ease;
}

.c-scroll {
  overflow-x: auto;
}
.c-scroll table {
  min-width: 640px;
  margin: 0 0 40px 0;
}

.c-scroll-bar {
  overflow-y: scroll;
}
.c-scroll-bar::-webkit-scrollbar {
  width: 0.1666666667rem;
}
.c-scroll-bar::-webkit-scrollbar-thumb {
  background-color: #254779;
  border-radius: 999px;
}
.c-scroll-bar::-webkit-scrollbar-track {
  background-color: #999;
  border-radius: 0.1666666667rem;
}

.c-section {
  padding: 8rem 0;
}
@media (width <= 768px) {
  .c-section {
    padding: 4rem 0;
  }
}
.c-section--blue {
  background-color: #dbfaff;
  background-image: url(../images/common/section-bg01.svg), url(../images/common/section-bg02.svg), url(../images/common/section-bg03.svg);
  background-repeat: no-repeat, no-repeat, no-repeat;
  background-position: -3.3333333333rem top, calc(100% + 6.6666666667rem) -3.3333333333rem, calc(100% + 1.3333333333rem) bottom;
  background-size: 15.3333333333rem, 13.7333333333rem, 18.2rem;
}

.c-sns__list.c-list {
  display: flex;
  justify-content: center;
  gap: 1.3333333333rem;
  margin-bottom: 4rem;
}
.c-sns__img {
  width: 1.2666666667rem;
}
@media (width <= 768px) {
  .c-sns__img {
    width: 1.3333333333rem;
  }
}

.c-swiper__button {
  background-image: url(../images/page/slider-arrow.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: 2.4rem;
  height: 2.4rem;
}
.c-swiper__button::after {
  display: none;
}
@media (width <= 768px) {
  .c-swiper__button {
    width: 1.6666666667rem;
    height: 1.6666666667rem;
  }
}
.c-swiper__button--prev {
  transform: rotate(180deg);
}
@media (width <= 768px) {
  .c-swiper__button--prev {
    left: 0.3333333333rem;
  }
}
@media (width <= 768px) {
  .c-swiper__button--next {
    right: 0.3333333333rem;
  }
}
.c-swiper__pagination .swiper-pagination-bullet-active {
  background-color: #00b3d1;
}

.c-youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.c-youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.msc-bnr {
  background-color: #254779;
  color: #fff;
  overflow: hidden;
  border-radius: 1.3333333333rem;
  position: relative;
  padding: 0 8.6666666667rem 0 34.6666666667rem;
  width: 76rem;
  margin: 0 auto;
  display: flex;
  align-items: center;
  height: 21.4rem;
}
@media (width <= 768px) {
  .msc-bnr {
    width: 100%;
    padding: 17.3333333333rem 1.3333333333rem 1.3333333333rem;
    height: auto;
  }
}
.msc-bnr__thumb {
  width: 27.3333333333rem;
  height: 27.3333333333rem;
  border-radius: 100vw;
  position: absolute;
  top: -2.3333333333rem;
  left: 4.2rem;
  overflow: hidden;
}
@media (width <= 768px) {
  .msc-bnr__thumb {
    width: 20rem;
    left: 1.1666666667rem;
    top: -3.3333333333rem;
    height: 20rem;
  }
}
.msc-bnr__title {
  font-size: 2.6666666667rem;
  font-weight: 700;
  margin-bottom: 1.3333333333rem;
}
@media (width <= 768px) {
  .msc-bnr__title {
    font-size: 1.6rem;
    margin-bottom: 0.6666666667rem;
    text-align: center;
  }
}
.msc-bnr--facility {
  background-color: #00b3d1;
  text-align: left;
  padding-right: 6.6666666667rem;
}
@media (width <= 768px) {
  .msc-bnr--facility {
    padding-right: 1.3333333333rem;
  }
}
.msc-bnr--facility .msc-bnr__p {
  margin-bottom: 2rem;
}

.msc-box {
  padding: 3.3333333333rem;
  background-color: #fff;
  box-shadow: 0 0 0.6666666667rem rgba(0, 0, 0, 0.1);
  border-radius: 0.6666666667rem;
}

.msc-page__header {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 20rem;
  position: relative;
  margin-top: 9.4666666667rem;
}
@media (width <= 768px) {
  .msc-page__header {
    margin-top: 5rem;
    height: 12rem;
  }
}
.msc-page__header:after {
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
  background: rgba(37, 71, 121, 0.5);
}
.msc-page__header-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
.msc-page__header-inner {
  font-weight: 800;
  text-align: center;
  color: #fff;
  position: relative;
  z-index: 1;
  line-height: 1.4;
}
.msc-page__header-eng {
  font-size: 1.8666666667rem;
  letter-spacing: 0.1em;
}
@media (width <= 768px) {
  .msc-page__header-eng {
    font-size: 1.1333333333rem;
  }
}
.msc-page__header-title {
  font-size: 2.8666666667rem;
  letter-spacing: 0.1em;
}
@media (width <= 768px) {
  .msc-page__header-title {
    font-size: 1.6rem;
  }
}
.msc-page__header-fuki {
  background-color: #00b3d1;
  color: #fff;
  font-weight: 700;
  font-size: 1.1333333333rem;
  line-height: 1.4705882353;
  border-radius: 0.6666666667rem;
  padding: 0.6666666667rem 1.3333333333rem;
  position: relative;
  margin-bottom: 2rem;
}
@media (width <= 768px) {
  .msc-page__header-fuki {
    font-size: 1rem;
    line-height: 1.4666666667;
  }
}
.msc-page__header-fuki:after {
  content: "";
  position: absolute;
  width: 1.6rem;
  height: 1.6rem;
  background-color: #00b3d1;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  left: 2.3333333333rem;
  bottom: -1.3333333333rem;
}
.msc-page__header--plain {
  background: radial-gradient(ellipse 80% 100% at 78% -5%, rgb(10.1, 219.8468899522, 255) 0%, transparent 58%), radial-gradient(ellipse 80% 70% at 15% 110%, rgb(0, 157.1602870813, 183.5) 0%, transparent 55%), #00b3d1;
}
.msc-page__header--plain:after {
  background: transparent;
}
.msc-page__header--facility {
  justify-content: end;
  height: auto;
  margin: 0 auto 3rem;
  gap: 6.2rem;
}
@media (width <= 768px) {
  .msc-page__header--facility {
    margin-top: 5rem;
    flex-wrap: wrap;
    gap: 1.8rem;
  }
}
.msc-page__header--facility:after {
  content: inherit;
}
.msc-page__header--facility .msc-page__header-inner {
  color: #1e1e1e;
  width: 29.3333333333rem;
  text-align: left;
  font-weight: 500;
  margin-top: 6.6666666667rem;
}
@media (width <= 768px) {
  .msc-page__header--facility .msc-page__header-inner {
    width: 100%;
    order: 2;
    margin-top: 0;
    padding: 0 1.3333333333rem;
  }
}
.msc-page__header--facility .msc-page__header-thumb {
  width: calc(100% - 44.1333333333rem);
  height: 33.2666666667rem;
  border-radius: 0 0 0 8rem;
  overflow: hidden;
}
@media (width <= 768px) {
  .msc-page__header--facility .msc-page__header-thumb {
    width: calc(100% - 1rem);
    order: 1;
    height: 15.4rem;
    margin-left: 1rem;
    border-radius: 0 0 0 5rem;
  }
}
.msc-page__header--facility .msc-page__header-title {
  font-size: 2.8666666667rem;
  color: #254779;
  margin-bottom: 1.3333333333rem;
}
@media (width <= 768px) {
  .msc-page__header--facility .msc-page__header-title {
    font-size: 1.6666666667rem;
  }
}
@media (width <= 768px) {
  .msc-page__header--facility .msc-page__header-p {
    line-height: 1.8666666667;
  }
}
.msc-page__header--course {
  height: 30rem;
}
@media (width <= 768px) {
  .msc-page__header--course {
    padding: 1.3333333333rem 1.3333333333rem 10rem;
    height: auto;
    min-height: 20rem;
  }
}
.msc-page__header--course:after {
  width: 63.4rem;
  height: 100%;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  margin: 0 auto;
  background: linear-gradient(to right, transparent 0, #00b3d1 19%, #00b3d1 81%, transparent 100%);
}
@media (width <= 768px) {
  .msc-page__header--course:after {
    width: 100%;
    background: linear-gradient(to bottom, transparent 0, transparent 4.3333333333rem, #00b3d1 4.3333333333rem, #00b3d1 81%, transparent 100%);
  }
}
.msc-page__header--course .msc-page__header-inner {
  width: 40.6666666667rem;
  color: #254779;
  background-color: #fff;
  border-radius: 1.3333333333rem;
  box-shadow: 0 0 0.6666666667rem rgba(0, 0, 0, 0.1);
  padding: 2rem 2rem 3.3333333333rem;
}
@media (width <= 768px) {
  .msc-page__header--course .msc-page__header-inner {
    width: 100%;
    padding: 1.3333333333rem;
  }
}
.msc-page__header--course .msc-page__header-fuki {
  text-align: center;
  display: inline-block;
  margin-bottom: 1.3333333333rem;
}
.msc-page__header--course .msc-page__header-fuki:after {
  left: calc(50% - 0.8rem);
}
.msc-page__header--course .msc-page__header-title {
  font-size: 3.3333333333rem;
  margin-bottom: 1.3333333333rem;
}
@media (width <= 768px) {
  .msc-page__header--course .msc-page__header-title {
    font-size: 2.1333333333rem;
  }
}
.msc-page__header--course .msc-page__header-thumb {
  position: absolute;
  top: 0;
  width: 40%;
  height: 100%;
}
@media (width <= 768px) {
  .msc-page__header--course .msc-page__header-thumb {
    top: inherit;
    bottom: 0;
    height: 10rem;
    width: 50%;
  }
}
.msc-page__header--course .msc-page__header-thumb--left {
  left: 0;
}
.msc-page__header--course .msc-page__header-thumb--left:after {
  content: "";
  position: absolute;
  width: 3.3333333333rem;
  height: 100%;
  right: 0;
  top: 0;
  background: linear-gradient(to right, transparent 0, #fff 100%);
}
@media (width <= 768px) {
  .msc-page__header--course .msc-page__header-thumb--left:after {
    content: inherit;
  }
}
.msc-page__header--course .msc-page__header-thumb--right {
  right: 0;
}
.msc-page__header--course .msc-page__header-thumb--right:after {
  content: "";
  position: absolute;
  width: 3.3333333333rem;
  height: 100%;
  left: 0;
  top: 0;
  background: linear-gradient(to left, transparent 0, #fff 100%);
}
@media (width <= 768px) {
  .msc-page__header--course .msc-page__header-thumb--right:after {
    content: inherit;
  }
}
.msc-page__header--course .msc-page__header-p {
  font-weight: 500;
}
@media (width <= 768px) {
  .msc-page__header--course .msc-page__header-p {
    font-size: 0.8666666667rem;
    text-align: left;
  }
}
.msc-page__intro {
  max-width: 65.3333333333rem;
  margin: 4.2666666667rem auto 5.8666666667rem;
  line-height: 2.4;
}
@media (width <= 768px) {
  .msc-page__intro {
    padding: 0 1.3333333333rem;
    margin: 2rem 0;
    line-height: 2;
  }
}
.msc-page__h2 {
  font-size: 2.8666666667rem;
  font-weight: 800;
  color: #254779;
  position: relative;
  margin-bottom: 4.2rem;
  padding-bottom: 1.6666666667rem;
  line-height: 1.4418604651;
}
@media (width <= 768px) {
  .msc-page__h2 {
    font-size: 1.8666666667rem;
    line-height: 1.4;
    padding-bottom: 1.3333333333rem;
    margin-bottom: 2.6666666667rem;
  }
}
.msc-page__h2:after {
  content: "";
  position: absolute;
  width: 4.9333333333rem;
  height: 0.4rem;
  background-color: #face42;
  bottom: 0;
  left: calc(50% - 2.4666666667rem);
}
@media (width <= 768px) {
  .msc-page__h2:after {
    width: 4rem;
    height: 0.2666666667rem;
  }
}
.msc-page__nav {
  text-align: center;
  padding: 1.3333333333rem 0rem;
}
@media (width <= 768px) {
  .msc-page__nav {
    padding: 1.3333333333rem 0.8rem;
  }
}
.msc-page__nav-list {
  display: flex;
  justify-content: center;
  gap: 1.1333333333rem;
  margin-bottom: 0.6666666667rem;
}
@media (width <= 768px) {
  .msc-page__nav-list {
    justify-content: start;
    flex-wrap: wrap;
  }
}
.msc-page__nav-item {
  background-color: #fff;
  border-radius: 100vw;
  border: 0.1333333333rem solid #254779;
  width: 11.0666666667rem;
}
.msc-page__nav-link {
  display: block;
  padding: 0.6666666667rem 0rem 0.6666666667rem 1.3333333333rem;
  text-decoration: none;
  color: #254779;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: start;
}
@media (width <= 768px) {
  .msc-page__nav-link {
    padding: 0.4666666667rem 0 0.4666666667rem 1.3333333333rem;
  }
}
.msc-page__nav-icon {
  display: inline;
  vertical-align: middle;
  margin-right: 0.5333333333rem;
}
.msc-page__nav-p {
  font-size: 0.8666666667rem;
}
@media (width <= 768px) {
  .msc-page__nav-p {
    text-align: left;
    line-height: 1.4615384615;
  }
}

.msc-inner {
  max-width: 80rem;
  margin: 0 auto;
  padding: 0 2.6666666667rem;
}
@media (width <= 768px) {
  .msc-inner {
    padding: 0 1.3333333333rem;
  }
}

.msc-section {
  padding: 5.3333333333rem 0;
}
@media (width <= 768px) {
  .msc-section {
    padding: 4rem 0;
  }
}
.msc-section--blue {
  background: #dbfaff;
}
.msc-section--wave {
  background: url(../images/page/sec-top.png), url(../images/page/sec-bot.png), linear-gradient(to bottom, transparent 0%, transparent 11.2666666667rem, #dbfaff 11.2666666667rem, #dbfaff calc(100% - 11.2666666667rem), transparent calc(100% - 11.2666666667rem), transparent 100%);
  background-size: 100% 11.2666666667rem, 100% 11.2666666667rem, 100% 100%;
  background-repeat: no-repeat;
  background-position: top center, bottom center, center center;
  padding: 11.8rem 0 11.2666666667rem;
}
@media (width <= 768px) {
  .msc-section--wave {
    background-size: 180% 11.2666666667rem, 180% 11.2666666667rem, 100% 100%;
    padding: 5.3333333333rem 0 6.6666666667rem;
  }
}
.msc-section--gray {
  background-color: #f5f5f5;
}

.msc-swiper__controller {
  position: relative;
}
.msc-swiper__controller .swiper-pagination-bullet {
  width: 0.8rem;
  height: 0.8rem;
  margin: 0 !important;
}
.msc-swiper__controller .swiper-pagination-bullet-active {
  background-color: #00b3d1;
}
.msc-swiper__button {
  width: 2.4rem;
  height: 2.4rem;
  background-image: url(../images/page/slider-arrow.svg);
  background-repeat: no-repeat;
  background-size: 100%;
}
.msc-swiper__button .msc-swiper__button {
  top: 50%;
}
@media (width <= 768px) {
  .msc-swiper__button {
    top: 8rem;
  }
}
.msc-swiper__button--prev {
  left: 0;
  transform: rotate(180deg);
}
@media (width <= 768px) {
  .msc-swiper__button--prev {
    left: 0.6666666667rem;
  }
}
.msc-swiper__button--next {
  right: 0;
}
@media (width <= 768px) {
  .msc-swiper__button--next {
    right: 0.6666666667rem;
  }
}
.msc-swiper__pagination {
  display: flex;
  justify-content: center;
  margin-top: 1.3333333333rem;
  gap: 0.8666666667rem;
}

.msc-promise__list {
  justify-content: center;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 4rem;
}
.msc-promise__item {
  width: 16rem;
}
@media (768px < width) {
  .msc-promise__item:nth-last-child(4):first-child, .msc-promise__item:nth-last-child(4):first-child ~ .msc-promise__item {
    width: calc((100% - 4rem * 3) / 4);
  }
  .msc-promise__item:nth-last-child(5):first-child, .msc-promise__item:nth-last-child(5):first-child ~ .msc-promise__item, .msc-promise__item:nth-last-child(6):first-child, .msc-promise__item:nth-last-child(6):first-child ~ .msc-promise__item {
    width: calc((100% - 4rem * 2) / 3);
  }
}
@media (width <= 768px) {
  .msc-promise__item {
    width: 90%;
  }
}
.msc-promise__thumb {
  width: 10.7333333333rem;
  height: 10.7333333333rem;
  margin: 0 auto 0.3333333333rem;
  background-color: #face42;
  border-radius: 100vw;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
@media (width <= 768px) {
  .msc-promise__thumb {
    margin-bottom: 0.6666666667rem;
  }
}
.msc-promise__thumb:after {
  content: "";
  width: 100%;
  height: 100%;
  border: 0.1333333333rem solid #254779;
  border-radius: 999px;
  position: absolute;
  top: -0.5rem;
  left: -0.5rem;
}
.msc-promise__icon {
  font-size: 4.8rem;
  color: #254779;
  line-height: 1;
  transform: translate(-0.2166666667rem, -0.2166666667rem);
}
.msc-promise__title {
  color: #1e1e1e;
  font-size: 1.3333333333rem;
  text-align: center;
  margin-bottom: 0.3333333333rem;
}

.msc-table {
  width: 100%;
  border-collapse: collapse;
  border-top: 0.1333333333rem solid #cdeaee;
  border-spacing: 0;
}
.msc-table th {
  text-align: center;
  background: #dbfaff;
  border-bottom: 0.1333333333rem solid #cdeaee;
  color: #254779;
  padding: 0.6666666667rem 1rem;
  line-height: 1.4;
}
@media (width <= 768px) {
  .msc-table th {
    width: 100%;
    display: block;
  }
}
.msc-table td {
  padding: 0.6666666667rem 1rem;
  line-height: 1.4;
  text-align: left;
  border-bottom: 0.1333333333rem solid #cdeaee;
}
@media (width <= 768px) {
  .msc-table td {
    width: 100%;
    display: block;
  }
}
.msc-table td:not(:last-child) {
  border-right: 0.1333333333rem solid #cdeaee;
}
.msc-table--fixed {
  overflow-x: scroll;
}
@media (width <= 768px) {
  .msc-table--fixed {
    width: auto;
    min-width: 40rem;
  }
}
@media (width <= 768px) {
  .msc-table--fixed th,
  .msc-table--fixed td {
    width: auto;
    display: table-cell;
  }
}

.js-scrollhint {
  overflow-x: scroll;
}

/* Sponsor page shortcode */
.msc-sponsor-page__heading {
  font-size: 1.3333333333rem;
  font-weight: 700;
  margin-bottom: 1.6rem;
  padding-bottom: 0.6666666667rem;
  border-bottom: 2px solid #254779;
}
.msc-sponsor-page__official {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.6rem 2.1333333333rem;
  margin-bottom: 3.2rem;
}
@media (width <= 768px) {
  .msc-sponsor-page__official {
    gap: 1.0666666667rem 1.3333333333rem;
  }
}
.msc-sponsor-page__item {
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: opacity 0.2s;
}
.msc-sponsor-page__item:hover {
  opacity: 0.7;
}
.msc-sponsor-page__img {
  height: 5.3333333333rem;
  width: auto;
  object-fit: contain;
}
@media (width <= 768px) {
  .msc-sponsor-page__img {
    height: 3.7333333333rem;
  }
}
.msc-sponsor-page__name {
  font-size: 1.0666666667rem;
  font-weight: 600;
  color: #254779;
}
.msc-sponsor-page__personal {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.8rem 1.3333333333rem;
  margin-bottom: 3.2rem;
}
@media (width <= 768px) {
  .msc-sponsor-page__personal {
    gap: 0.6666666667rem 0.9333333333rem;
  }
}
.msc-sponsor-page__personal-name {
  font-size: 1.2rem;
  color: #333;
  background: #f5f6f8;
  border: 1px solid #e0e0e0;
  border-radius: 0.4rem;
  padding: 0.6666666667rem 1.6rem;
}
@media (width <= 768px) {
  .msc-sponsor-page__personal-name {
    font-size: 1.0666666667rem;
    padding: 0.5333333333rem 1.2rem;
  }
}

/********************************************
* Project
********************************************/
.p-home__mv {
  overflow: hidden;
  height: 122.3333333333rem;
  width: 100%;
  position: relative;
}
@media (width <= 768px) {
  .p-home__mv {
    background-image: url(../images/home/mv-bg-sp.jpg);
    background-size: cover;
    background-position: center top;
    height: 90.6666666667rem;
  }
}
.p-home__mv--no-banner {
  height: 95.6666666667rem;
}
@media (width <= 768px) {
  .p-home__mv--no-banner {
    height: 66.6666666667rem;
  }
}
.p-home__mv-top {
  position: relative;
  height: 47.7333333333rem;
}
@media (width <= 768px) {
  .p-home__mv-top {
    height: 20.6666666667rem;
  }
}
.p-home__mv-img {
  position: absolute;
}
.p-home__mv-img--01 {
  width: 38.4666666667rem;
  top: 1.4rem;
  left: calc(50% + 15.8666666667rem);
}
@media (width <= 768px) {
  .p-home__mv-img--01 {
    width: 10.4rem;
    top: 4.7333333333rem;
    left: calc(50% + 4.2rem);
  }
}
.p-home__mv-img--02 {
  width: 32.0666666667rem;
  top: 5.0666666667rem;
  left: calc(50% - 23.3333333333rem);
}
@media (width <= 768px) {
  .p-home__mv-img--02 {
    width: 8.6666666667rem;
    top: 7rem;
    left: calc(50% - 6.3333333333rem);
  }
}
.p-home__mv-img--03 {
  width: 22.6666666667rem;
  top: 24.2666666667rem;
  left: calc(50% - 50.6666666667rem);
}
@media (width <= 768px) {
  .p-home__mv-img--03 {
    width: 6.1333333333rem;
    top: 12.8666666667rem;
    left: -1.3333333333rem;
  }
}
.p-home__mv-img--04 {
  width: 14.6666666667rem;
  top: 31.5333333333rem;
  left: calc(50% + 4.3333333333rem);
}
@media (width <= 768px) {
  .p-home__mv-img--04 {
    width: 5.8rem;
    top: 14rem;
    left: calc(50% + 0.6666666667rem);
  }
}
.p-home__mv-img--05 {
  width: 11.7333333333rem;
  top: 36rem;
  left: calc(50% - 27.0666666667rem);
}
@media (width <= 768px) {
  .p-home__mv-img--05 {
    width: 4.6rem;
    top: 15.8666666667rem;
    left: calc(50% - 6.6666666667rem);
  }
}
.p-home__mv-bg {
  position: absolute;
  top: 0;
  left: calc(50% - 48rem);
  max-width: 96rem;
  margin: 0 auto;
  height: 122.3333333333rem;
  width: 100%;
}
@media (width <= 768px) {
  .p-home__mv-bg {
    height: 63.1333333333rem;
    left: 0;
    max-width: 100%;
  }
}
.p-home__mv-bg--01 {
  position: absolute !important;
  width: 96rem;
  top: 15.4rem;
  left: calc(50% - 48rem);
  max-width: inherit;
}
@media (width <= 768px) {
  .p-home__mv-bg--01 {
    width: 100%;
    top: 8.8rem;
    left: 0;
  }
}
.p-home__mv-bg--02 {
  position: absolute !important;
  width: 96rem;
  top: 35rem;
  left: calc(50% - 48rem);
  max-width: inherit;
}
@media (width <= 768px) {
  .p-home__mv-bg--02 {
    width: 100%;
    top: 15.4666666667rem;
    left: 0;
  }
}
.p-home__mv-bg--03 {
  position: absolute;
  width: 96rem;
  top: 10.4666666667rem;
  left: 9.7333333333rem;
  max-width: 96rem;
}
@media (width <= 768px) {
  .p-home__mv-bg--03 {
    display: none;
  }
}
.p-home__mv-bg-img02 {
  max-width: inherit;
}
@media (width <= 768px) {
  .p-home__mv-bg-img02 {
    width: 100vw;
    max-width: none;
  }
}
.p-home__mv-slider {
  max-width: 68rem;
  margin: 0 auto;
  padding-bottom: 3.3333333333rem;
}
.p-home__mv-slider-wrapper {
  position: relative;
  max-width: 81rem;
  margin: 0 auto;
}
@media (width <= 768px) {
  .p-home__mv-slider-wrapper {
    background-color: #fff;
    padding: 4rem 0 6.6666666667rem;
  }
}
.p-home__mv-slider-wrapper .swiper-pagination-bullet {
  width: 0.8rem;
  height: 0.8rem;
  margin: 0 0.5333333333rem !important;
}
.p-home__mv-slider-item {
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.15);
}
.p-home__mv .c-swiper__pagination {
  bottom: 0;
}
.p-home__about {
  position: relative;
  max-width: 74.6666666667rem;
  margin: 1.0666666667rem auto 8.1333333333rem;
}
@media (width <= 768px) {
  .p-home__about {
    margin-bottom: 4rem;
  }
}
.p-home__about-title {
  font-size: 5rem;
  font-weight: 700;
  color: #254779;
  font-style: italic;
  text-align: center;
  line-height: 1.1;
  margin-bottom: 3.3333333333rem;
  letter-spacing: 0.08em;
}
@media (width <= 768px) {
  .p-home__about-title {
    font-size: 1.4866666667rem;
    margin-bottom: 1.7333333333rem;
  }
}
.p-home__about-title span:not([class]) {
  color: #00b3d1;
}
.p-home__about-inner {
  display: flex;
  justify-content: space-between;
  gap: 1.6rem;
}
@media (width <= 768px) {
  .p-home__about-inner {
    flex-wrap: wrap;
    padding: 0 1.3333333333rem;
    gap: 0.3333333333rem;
  }
}
.p-home__about-text {
  width: 34.4666666667rem;
}
@media (width <= 768px) {
  .p-home__about-text {
    order: 2;
    width: 100%;
    padding-left: 0.6666666667rem;
  }
}
.p-home__about-p {
  margin-bottom: 1.6666666667rem;
  font-size: 1.1333333333rem;
  line-height: 2.5882352941;
}
@media (width <= 768px) {
  .p-home__about-p {
    font-size: 1rem;
    line-height: 2;
  }
}
.p-home__about-thumb {
  width: 38.4666666667rem;
  background-image: radial-gradient(circle, #06b6d4 0.1333333333rem, transparent 0.1333333333rem);
  background-position: 0 0;
  background-size: 0.6666666667rem 0.6666666667rem;
  padding: 1rem 1.6666666667rem;
  border-radius: 1.3333333333rem;
}
@media (width <= 768px) {
  .p-home__about-thumb {
    order: 1;
    width: 100%;
  }
}
.p-home__about-img {
  border-radius: 0.6666666667rem;
}
.p-home__course {
  text-align: center;
}
@media (width <= 768px) {
  .p-home__course-inner {
    padding: 0 1.3333333333rem;
  }
}
.p-home__course-list.c-list {
  display: flex;
  flex-wrap: wrap;
  gap: 2.6666666667rem 2.1333333333rem;
  justify-content: center;
  max-width: 73.3333333333rem;
  margin: 0 auto 3.7333333333rem;
}
@media (width <= 768px) {
  .p-home__course-list.c-list {
    gap: 1.3333333333rem 1.5333333333rem;
    text-align: left;
  }
}
.p-home__course-p {
  margin-bottom: 2rem;
}
@media (width <= 768px) {
  .p-home__course-p {
    text-align: left;
    font-size: 0.8666666667rem;
    line-height: 2.1538461538;
  }
}
.p-home__course-item {
  width: 16.6666666667rem;
}
@media (width <= 768px) {
  .p-home__course-item {
    text-align: center;
    width: 10.3333333333rem;
  }
}
.p-home__course-link {
  text-decoration: none;
}
.p-home__course-thumb {
  width: 12.3333333333rem;
  aspect-ratio: 1;
  border: 0.1333333333rem dashed #00b3d1;
  padding: 0.3333333333rem;
  border-radius: 999px;
  overflow: hidden;
  margin: 0 auto;
  display: inline-flex;
}
@media (width <= 768px) {
  .p-home__course-thumb {
    width: 8.8rem;
    padding: 0.2666666667rem;
  }
}
.p-home__course-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 999px;
}
.p-home__course-text {
  background-color: #fff;
  padding: 6.6666666667rem 1rem 1rem;
  border-radius: 0.6666666667rem;
  margin-top: -6.2rem;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.15);
  height: calc(100% - 6rem);
}
@media (width <= 768px) {
  .p-home__course-text {
    margin-top: -4.6666666667rem;
    padding: 5rem 0.7333333333rem 1rem;
    height: auto;
  }
}
.p-home__course-title {
  font-size: 1.3333333333rem;
  line-height: 1.2;
  letter-spacing: 0.1em;
}
@media (width <= 768px) {
  .p-home__course-title {
    font-size: 0.9533333333rem;
    line-height: 1.2019566737;
  }
}
.p-home__feature {
  text-align: center;
}
@media (width <= 768px) {
  .p-home__feature-inner {
    padding: 0 1.3333333333rem;
  }
}
.p-home__feature .c-home__h2 {
  margin-bottom: 7.3333333333rem;
}
@media (width <= 768px) {
  .p-home__feature .c-home__h2 {
    margin-bottom: 3.0666666667rem;
  }
}
.p-home__feature-list.c-list {
  text-align: left;
  display: flex;
  flex-wrap: wrap;
  gap: 4.6666666667rem;
  max-width: 69.3333333333rem;
  margin: 0 auto 7.4666666667rem;
}
@media (width <= 768px) {
  .p-home__feature-list.c-list {
    margin-bottom: 3.8rem;
  }
}
.p-home__feature-item {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (width <= 768px) {
  .p-home__feature-item {
    flex-wrap: wrap;
  }
}
.p-home__feature-item:nth-of-type(2n + 1) {
  flex-direction: row-reverse;
}
@media (width <= 768px) {
  .p-home__feature-item:nth-of-type(2n + 1) {
    flex-direction: row;
  }
}
.p-home__feature-thumb {
  width: 30.6666666667rem;
  border-radius: 0.6666666667rem;
  overflow: hidden;
}
@media (width <= 768px) {
  .p-home__feature-thumb {
    width: 100%;
    order: 1;
    margin-bottom: 1.3333333333rem;
  }
}
.p-home__feature-text {
  width: 34rem;
}
@media (width <= 768px) {
  .p-home__feature-text {
    width: 100%;
    order: 2;
  }
}
.p-home__feature-title {
  font-size: 1.6666666667rem;
  position: relative;
  padding-left: 3.3333333333rem;
  line-height: 1.12;
  margin-bottom: 2.6666666667rem;
}
@media (width <= 768px) {
  .p-home__feature-title {
    font-size: 1.2rem;
    line-height: 1.5555555556;
    margin-bottom: 1rem;
  }
}
.p-home__feature-num {
  background-color: #00b3d1;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  width: 2.7333333333rem;
  height: 2.7333333333rem;
  border-radius: 999px;
  display: inline-block;
  padding-top: 0.6666666667rem;
  vertical-align: middle;
  margin-right: 0.6666666667rem;
  position: absolute;
  left: 0;
  top: calc(50% - 1.3666666667rem);
}
.p-home__staff-inner {
  display: flex;
  gap: 5.5333333333rem;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
}
@media (width <= 768px) {
  .p-home__staff-inner {
    gap: 0rem;
    flex-direction: column;
  }
}
.p-home__staff-header {
  width: 29.4rem;
}
@media (width <= 768px) {
  .p-home__staff-header {
    text-align: center;
    display: contents;
  }
}
@media (width <= 768px) {
  .p-home__staff .c-home__eng {
    order: 1;
  }
}
@media (width <= 768px) {
  .p-home__staff .c-home__h2 {
    order: 2;
  }
}
.p-home__staff-p {
  margin-bottom: 1.3333333333rem;
}
@media (width <= 768px) {
  .p-home__staff-p {
    padding: 0 1.3333333333rem;
    text-align: left;
    font-size: 0.8666666667rem;
    line-height: 2.1538461538;
    order: 3;
  }
}
.p-home__staff-list {
  margin: 0;
  width: calc(100% - 11.4rem - 29.4rem - 5.5333333333rem);
  padding: 1.3333333333rem 0;
}
@media (width <= 768px) {
  .p-home__staff-list {
    width: 100%;
    order: 3;
  }
}
.p-home__staff-list .swiper-wrapper {
  transition-timing-function: linear;
}
.p-home__staff-item {
  background-color: #fff;
  border-radius: 0.6666666667rem;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.15);
  padding: 1.2rem 1.8666666667rem;
}
.p-home__staff-link {
  text-decoration: none;
}
.p-home__staff-thumb {
  margin-bottom: 1.2rem;
  height: 14.8666666667rem;
  border-radius: 0.6666666667rem;
  overflow: hidden;
}
@media (width <= 768px) {
  .p-home__staff-thumb {
    height: 17.3333333333rem;
  }
}
.p-home__staff-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.p-home__staff-titile {
  font-size: 1.3333333333rem;
  font-weight: 700;
  margin-bottom: 0.8rem;
}
.p-home__staff-item-p {
  font-size: 0.8666666667rem;
}
@media (width <= 768px) {
  .p-home__staff .c-btn {
    order: 4;
  }
}
.p-home__facility {
  text-align: center;
}
.p-home__facility .c-home__h2 {
  margin-bottom: 3.3333333333rem;
}
.p-home__facility-slider-wrapper {
  text-align: left;
  position: relative;
  max-width: 81rem;
  margin: 0 auto 2rem;
}
.p-home__facility-slider-wrapper .swiper-pagination-bullet {
  width: 0.8rem;
  height: 0.8rem;
  margin: 0 0.5333333333rem !important;
}
.p-home__facility-slider {
  max-width: 68.3333333333rem;
  margin: 0 auto;
  padding-bottom: 4rem;
}
.p-home__facility-slider-link {
  text-decoration: none;
}
.p-home__facility-slider-item {
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.15);
  padding: 0 1.3333333333rem 1.6666666667rem;
  border-radius: 0.6666666667rem;
}
.p-home__facility-slider-thumb {
  height: 12rem;
  width: calc(100% + 2.6666666667rem);
  margin-left: -1.3333333333rem;
  margin-bottom: 1.5333333333rem;
  clip-path: url(#clipshape);
}
.p-home__facility-slider-thumb img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}
.p-home__facility-slider-title {
  color: #254779;
  font-size: 1.2rem;
  margin-bottom: 1rem;
  text-align: center;
}
.p-home__facility-slider-title:after {
  content: "";
  display: inline-block;
  width: 1.3333333333rem;
  height: 1.3333333333rem;
  background-image: url(../images/common/arrow-blue.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.3333333333rem;
  vertical-align: middle;
  margin-left: 0.6666666667rem;
}
.p-home__facility-slider-p {
  font-size: 0.8666666667rem;
  margin-bottom: 1rem;
  line-height: calcx(19/13);
}
.p-home__facility-slider-address {
  color: #6e6e6e;
  font-size: 0.8666666667rem;
}
.p-home__facility .c-swiper__pagination {
  bottom: 0;
}
.p-home__try {
  background-color: #00b3d1;
  padding: 3rem 0;
  text-align: center;
}
.p-home__try-dots {
  width: 70.2666666667rem;
  margin: 0 auto;
  border-radius: 1.3333333333rem;
  background-image: radial-gradient(circle, rgba(255, 255, 255, 0.4) 0.1333333333rem, transparent 0.1333333333rem);
  background-position: 0 0;
  background-size: 0.6666666667rem 0.6666666667rem;
  padding: 2.1333333333rem 1.8666666667rem;
}
@media (width <= 768px) {
  .p-home__try-dots {
    width: 100%;
    padding: 1rem;
  }
}
.p-home__try-inner {
  position: relative;
  background-color: #fff;
  border-radius: 0.6666666667rem;
  width: 100%;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.15);
  padding: 3.7333333333rem 13.3333333333rem 4.7333333333rem 11.2rem;
}
@media (width <= 768px) {
  .p-home__try-inner {
    padding: 2.6666666667rem 1.3333333333rem;
  }
}
.p-home__try-title {
  color: #00b3d1;
  font-size: 2.6666666667rem;
  font-weight: 800;
  background-image: url(../images/home/fuki.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 42.8rem;
  margin-bottom: 0.6666666667rem;
}
@media (width <= 768px) {
  .p-home__try-title {
    margin-left: -1.3333333333rem;
    width: calc(100% + 2.6666666667rem);
    background-image: url(../images/home/fuki-sp.svg);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 21.6666666667rem;
    font-size: 1.4666666667rem;
  }
}
.p-home__try-p {
  margin-bottom: 2.6666666667rem;
}
@media (width <= 768px) {
  .p-home__try-p {
    text-align: left;
  }
}
.p-home__try-charactor {
  position: absolute;
  bottom: -5.3333333333rem;
  right: -2.6666666667rem;
  width: 14rem;
}
@media (width <= 768px) {
  .p-home__try-charactor {
    right: -0.2666666667rem;
    width: 6.2rem;
  }
}
.p-home__try-btns {
  display: flex;
  gap: 2.1333333333rem;
  justify-content: center;
}
@media (width <= 768px) {
  .p-home__try-btns {
    flex-wrap: wrap;
    gap: 1.3333333333rem;
  }
}
.p-home__try-btns .c-btn {
  width: 19.3333333333rem;
  font-weight: 700;
}

/* ========================================
   Archive / Category / Tag
======================================== */
.p-archive__tabs-wrap {
  max-width: calc(var(--ark-width--container) + var(--ark-padding--container) * 2);
  margin: 0 auto;
  padding: 1.6rem var(--ark-padding--container) 0;
  box-sizing: border-box;
  position: relative;
}
@media (width <= 768px) {
  .p-archive__tabs-wrap {
    padding-top: 1.0666666667rem;
  }
  .p-archive__tabs-wrap:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 2.6666666667rem;
    height: 100%;
    background: linear-gradient(to right, transparent, #fff);
    pointer-events: none;
  }
}
.p-archive__tabs {
  display: flex;
  gap: 0.5333333333rem;
  flex-wrap: wrap;
}
@media (width <= 768px) {
  .p-archive__tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    gap: 0.4rem;
    padding-bottom: 0.2666666667rem;
    padding-right: 2.6666666667rem;
    scrollbar-width: none;
  }
  .p-archive__tabs::-webkit-scrollbar {
    display: none;
  }
}
.p-archive__tab {
  flex-shrink: 0;
  white-space: nowrap;
  padding: 0.6rem 1.4666666667rem;
  border-radius: 999px;
  border: 0.1333333333rem solid #254779;
  background: #fff;
  font-size: 0.9333333333rem;
  font-weight: 700;
  color: #254779;
  text-decoration: none;
  transition: background 0.2s, color 0.2s;
}
@media (width <= 768px) {
  .p-archive__tab {
    font-size: 0.8666666667rem;
    padding: 0.5333333333rem 1.2rem;
  }
}
.p-archive__tab.is-active, .p-archive__tab:hover {
  background: #254779;
  color: #fff;
}
.p-archive__title-wrap {
  padding: 1.3333333333rem 0 0;
}
.p-archive__page-title {
  font-size: 1.6rem;
  font-weight: 700;
  color: #1e1e1e;
  padding-bottom: 1.0666666667rem;
  border-bottom: 2px solid #254779;
}
@media (width <= 768px) {
  .p-archive__page-title {
    font-size: 1.3333333333rem;
  }
}
.p-archive__body {
  max-width: 83.3333333333rem;
  margin: 0 auto;
  padding: 3.3333333333rem 5.3333333333rem 6.6666666667rem;
}
@media (width <= 768px) {
  .p-archive__body {
    padding: 2.6666666667rem 1.3333333333rem 4rem;
  }
}
.p-archive__desc {
  margin-bottom: 2.6666666667rem;
  color: #555;
}
.p-archive__list.c-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3.3333333333rem 2rem;
}
@media (width <= 768px) {
  .p-archive__list.c-list {
    grid-template-columns: 1fr;
    gap: 2.6666666667rem;
  }
}
.p-archive__link {
  display: block;
  text-decoration: none;
  color: inherit;
}
.p-archive__link:hover .p-archive__title {
  color: #254779;
}
.p-archive__link:hover .p-archive__thumb img {
  transform: scale(1.04);
}
.p-archive__thumb {
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 0.6666666667rem;
  overflow: hidden;
  background: #00b3d1;
  margin-bottom: 1.0666666667rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-archive__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.p-archive__noimg {
  width: 50%;
  height: auto;
  object-fit: contain;
  opacity: 0.4;
}
.p-archive__title {
  font-size: 1.0666666667rem;
  font-weight: 700;
  color: #1e1e1e;
  margin-bottom: 0.5333333333rem;
  line-height: 1.5;
  transition: color 0.2s;
}
.p-archive__excerpt {
  font-size: 0.8666666667rem;
  color: #555;
  line-height: 1.7;
  margin-bottom: 0.6666666667rem;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.p-archive__meta {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  font-size: 0.8rem;
  color: #888;
}
.p-archive__cat {
  background: #00b3d1;
  color: #fff;
  font-size: 0.7333333333rem;
  padding: 0.1333333333rem 0.5333333333rem;
  border-radius: 0.2rem;
}
.p-archive__pagination {
  margin-top: 4rem;
}
.p-archive__pagination .nav-links {
  display: flex;
  justify-content: center;
  gap: 0.5333333333rem;
}
.p-archive__pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.6666666667rem;
  height: 2.6666666667rem;
  border-radius: 50%;
  font-size: 0.9333333333rem;
  text-decoration: none;
  color: #254779;
  border: 1px solid #254779;
  transition: background 0.2s, color 0.2s;
}
.p-archive__pagination .page-numbers.current, .p-archive__pagination .page-numbers:hover {
  background: #254779;
  color: #fff;
}
.p-archive__pagination .page-numbers.dots {
  border: none;
  background: transparent;
  color: #888;
}
.p-archive__empty {
  text-align: center;
  color: #888;
  padding: 4rem 0;
}

#content.l-content > .msc-page__header {
  margin-top: 0;
}
@media (width <= 768px) {
  #content.l-content > .msc-page__header {
    margin-top: 0;
  }
}

.l-main__body .p-archive__body {
  max-width: none;
  margin: 0;
  padding: 2.6666666667rem 0 5.3333333333rem;
}
@media (width <= 768px) {
  .l-main__body .p-archive__body {
    padding: 2rem 0 4rem;
  }
}
.l-main__body .p-archive__list.c-list {
  grid-template-columns: repeat(2, 1fr);
}
@media (width <= 768px) {
  .l-main__body .p-archive__list.c-list {
    grid-template-columns: 1fr;
  }
}

.p-about__vision {
  padding-top: 7.3333333333rem;
}
@media (width <= 768px) {
  .p-about__vision {
    padding-top: 5.3333333333rem;
  }
}
.p-about__vision-list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.6666666667rem;
  max-width: 52.6rem;
  margin: 0 auto;
}
.p-about__vision-item {
  background-color: #fff;
  padding: 1.0666666667rem 2.8666666667rem;
  border-radius: 0.6666666667rem;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.15);
  width: 100%;
  display: flex;
  gap: 1.3333333333rem;
  align-items: center;
}
@media (width <= 768px) {
  .p-about__vision-item {
    flex-wrap: wrap;
    padding: 1.0666666667rem 1.3333333333rem;
    gap: 0rem;
    align-items: end;
    justify-content: space-between;
  }
}
.p-about__vision-num {
  color: #face42;
  font-size: 4rem;
  font-weight: 600;
}
@media (width <= 768px) {
  .p-about__vision-num {
    font-size: 2.6666666667rem;
    width: 3.3333333333rem;
    line-height: 1;
  }
}
@media (width <= 768px) {
  .p-about__vision-text {
    display: contents;
  }
}
.p-about__vision-title {
  color: #254779;
  font-size: 1.6666666667rem;
  font-weight: 700;
}
@media (width <= 768px) {
  .p-about__vision-title {
    font-size: 1.3333333333rem;
    width: calc(100% - 4rem);
    line-height: 1.2;
  }
}
@media (width <= 768px) {
  .p-about__vision-p {
    margin-top: 0.6666666667rem;
  }
}
@media (width <= 768px) {
  .p-about__philosopy {
    padding-top: 2.6666666667rem;
  }
}
.p-about__philosopy-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 72.4rem;
  margin: 0 auto;
}
@media (width <= 768px) {
  .p-about__philosopy-inner {
    flex-wrap: wrap;
  }
}
.p-about__philosopy-thumb {
  width: 30.3333333333rem;
  height: 33.0666666667rem;
}
@media (width <= 768px) {
  .p-about__philosopy-thumb {
    width: 100%;
    height: 20rem;
    margin-bottom: 0.6666666667rem;
  }
}
.p-about__philosopy-text {
  width: 36.6666666667rem;
}
@media (width <= 768px) {
  .p-about__philosopy-text {
    width: 100%;
  }
}
.p-about__philosopy-title {
  color: #254779;
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 1.3333333333rem;
}
@media (width <= 768px) {
  .p-about__philosopy-title {
    font-size: 1.6rem;
  }
}
.p-about__feature-list {
  display: flex;
  gap: 4.6666666667rem;
  justify-content: center;
  flex-wrap: wrap;
  max-width: 69.6rem;
  margin: 0 auto;
}
@media (width <= 768px) {
  .p-about__feature-list {
    gap: 2.6666666667rem;
  }
}
.p-about__feature-item {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (width <= 768px) {
  .p-about__feature-item {
    flex-wrap: wrap;
  }
}
.p-about__feature-item:nth-of-type(2n) {
  flex-direction: row-reverse;
}
.p-about__feature-thumb {
  width: 30.6rem;
  height: 18.4666666667rem;
  border-radius: 0.6666666667rem;
  overflow: hidden;
}
@media (width <= 768px) {
  .p-about__feature-thumb {
    width: 100%;
    margin-bottom: 1.3333333333rem;
    height: 13.4666666667rem;
  }
}
.p-about__feature-text {
  width: 33.9333333333rem;
}
@media (width <= 768px) {
  .p-about__feature-text {
    width: 100%;
  }
}
.p-about__feature-title {
  font-size: 1.6666666667rem;
  font-weight: 700;
  color: #000;
  margin-bottom: 2.2666666667rem;
  display: flex;
  align-items: center;
  gap: 0.6666666667rem;
  line-height: 1.4;
}
@media (width <= 768px) {
  .p-about__feature-title {
    font-size: 1.2rem;
    margin-bottom: 0.6666666667rem;
  }
}
.p-about__feature-num {
  font-size: 1.6rem;
  font-weight: 600;
  width: 2.7333333333rem;
  height: 2.7333333333rem;
  line-height: 1;
  background-color: #00b3d1;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  color: #fff;
  padding-top: 0.3333333333rem;
}
.p-about__message {
  padding-top: 8rem;
}
.p-about__message-inner {
  display: flex;
  justify-content: space-between;
  max-width: 71.4rem;
  margin: 0 auto;
}
@media (width <= 768px) {
  .p-about__message-inner {
    flex-wrap: wrap;
  }
}
.p-about__message-thumb {
  width: 26.0666666667rem;
  height: 34.2666666667rem;
  border-radius: 0.6666666667rem;
  overflow: hidden;
}
@media (width <= 768px) {
  .p-about__message-thumb {
    width: 100%;
    height: 29.1333333333rem;
    margin-bottom: 2rem;
  }
}
.p-about__message-text {
  width: 40.7333333333rem;
}
@media (width <= 768px) {
  .p-about__message-text {
    width: 100%;
  }
}
.p-about__message-eng {
  color: #00b3d1;
  font-size: 4.4rem;
  font-weight: 600;
  line-height: 1;
  margin-left: -0.6666666667rem;
}
@media (width <= 768px) {
  .p-about__message-eng {
    font-size: 2.6666666667rem;
  }
}
.p-about__message-title {
  font-size: 2.3333333333rem;
  font-weight: 700;
  color: #000;
  margin-top: -2rem;
  margin-bottom: 0.9333333333rem;
  line-height: 1;
}
@media (width <= 768px) {
  .p-about__message-title {
    font-size: 1.8666666667rem;
    margin-top: -1.3333333333rem;
  }
}
.p-about__message-note {
  font-weight: 500;
  margin-bottom: 0.7333333333rem;
  line-height: 1.4;
}
.p-about__message-title2 {
  font-size: 2rem;
  font-weight: 700;
  color: #254779;
  margin-bottom: 1.6666666667rem;
  display: inline-block;
}
@media (width <= 768px) {
  .p-about__message-title2 {
    font-size: 1.6rem;
  }
}
@media (width <= 768px) {
  .p-about__voice {
    padding-top: 2.6666666667rem;
  }
}
.p-about__voice-p {
  font-size: 1.3333333333rem;
  text-align: center;
  margin-bottom: 7.3333333333rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-about__voice-p:before {
  content: "〜";
  display: inline-block;
  margin-right: 0.6666666667rem;
}
@media (width <= 768px) {
  .p-about__voice-p:before {
    margin-right: 1.3333333333rem;
  }
}
.p-about__voice-p:after {
  content: "〜";
  display: inline-block;
  margin-left: 0.6666666667rem;
}
@media (width <= 768px) {
  .p-about__voice-p:after {
    margin-left: 1.3333333333rem;
  }
}
.p-about__voice-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 75.3333333333rem;
  margin: 0 auto;
}
@media (width <= 768px) {
  .p-about__voice-list {
    gap: 4rem;
  }
}
.p-about__voice-item {
  position: relative;
  background-color: #dbfaff;
  border-radius: 1.3333333333rem;
  border: 0.1333333333rem solid #00b3d1;
  padding: 6rem 2rem 2.6666666667rem;
  display: flex;
  gap: 1.6666666667rem 2.3333333333rem;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 35.4rem;
}
@media (width <= 768px) {
  .p-about__voice-item {
    gap: 1.3333333333rem;
    padding: 5.3333333333rem 1.3333333333rem 2rem;
  }
}
.p-about__voice-item ul {
  font-size: 0.8rem;
  list-style: disc;
}
.p-about__voice-item li {
  line-height: 1.4166666667;
}
.p-about__voice-fuki {
  width: 25rem;
  position: absolute;
  top: -2.6666666667rem;
  left: calc(50% - 12.5rem);
  color: #fff;
  font-size: 1.6666666667rem;
  text-align: center;
  background-color: #00b3d1;
  border-radius: 1.3333333333rem;
  padding: 1rem 0;
  line-height: 1.4;
}
@media (width <= 768px) {
  .p-about__voice-fuki {
    width: 18.6666666667rem;
    left: calc(50% - 9.3333333333rem);
    font-size: 1.3333333333rem;
  }
}
.p-about__voice-fuki:after {
  content: "";
  position: absolute;
  width: 1.8rem;
  height: 1.8rem;
  background-color: #00b3d1;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  bottom: -1.4666666667rem;
  left: calc(50% - 0.9rem);
}
.p-about__voice-thumb {
  width: 13.3333333333rem;
  height: 12.2666666667rem;
  border-radius: 0.6666666667rem;
  overflow: hidden;
}
@media (width <= 768px) {
  .p-about__voice-thumb {
    width: 100%;
    height: 17.7333333333rem;
  }
}
.p-about__voice-text {
  width: 15.3333333333rem;
}
@media (width <= 768px) {
  .p-about__voice-text {
    width: 100%;
  }
}
.p-about__voice-title {
  font-size: 1.6666666667rem;
  font-weight: 700;
  margin-bottom: 0.6666666667rem;
}
.p-about__voice .c-btn {
  width: 11.6rem;
  cursor: pointer;
}
@media (width <= 768px) {
  .p-about__voice .c-btn {
    width: 14.6666666667rem;
  }
}
.p-about__modal {
  position: fixed;
  width: 100%;
  height: 100vh;
  background-color: rgba(37, 71, 121, 0.8);
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 6.6666666667rem;
  opacity: 0;
  z-index: -1;
}
@media (width <= 768px) {
  .p-about__modal {
    padding: 2rem 1.3333333333rem;
  }
}
.is-modal-open .p-about__modal {
  animation: fadeIn 0.3s ease forwards;
  z-index: 500;
}
.p-about__modal-inner {
  background-color: #fff;
  border-radius: 2rem;
  padding: 4.6666666667rem 6rem;
  max-width: 65.9333333333rem;
  margin: 0 auto;
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  position: relative;
  z-index: 500;
}
@media (width <= 768px) {
  .p-about__modal-inner {
    border-radius: 1.3333333333rem;
    padding: 2rem 1.3333333333rem;
  }
}
.p-about__modal-switch {
  position: fixed;
  z-index: 1001;
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 100vw;
  border: 0.1333333333rem solid #254779;
  transform: rotate(45deg);
  right: calc(50% - 31.3333333333rem);
  top: 8rem;
  cursor: pointer;
  background-color: #fff;
}
@media (width <= 768px) {
  .p-about__modal-switch {
    width: 2.3333333333rem;
    height: 2.3333333333rem;
    right: 2rem;
    top: 2.6666666667rem;
  }
}
.p-about__modal-switch:before {
  content: "";
  position: absolute;
  width: 1.6rem;
  height: 0.1333333333rem;
  background-color: #254779;
  top: calc(50% - 0.0666666667rem);
  left: calc(50% - 0.8rem);
}
@media (width <= 768px) {
  .p-about__modal-switch:before {
    width: 1.3333333333rem;
    left: calc(50% - 0.6666666667rem);
  }
}
.p-about__modal-switch:after {
  content: "";
  position: absolute;
  width: 1.6rem;
  height: 0.1333333333rem;
  background-color: #254779;
  top: calc(50% - 0.0666666667rem);
  left: calc(50% - 0.8rem);
  transform: rotate(90deg);
}
@media (width <= 768px) {
  .p-about__modal-switch:after {
    width: 1.3333333333rem;
    left: calc(50% - 0.6666666667rem);
  }
}
.p-about__modal-item {
  opacity: 0;
  display: none;
}
.p-about__modal-item--active {
  display: block;
  animation: fadeIn 0.3s ease forwards;
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.p-about__modal-header {
  display: flex;
  background-color: #dbfaff;
  border-radius: 0.6666666667rem;
  padding: 2.1333333333rem;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 2.3333333333rem;
  flex-wrap: wrap;
}
@media (width <= 768px) {
  .p-about__modal-header {
    padding: 1.3333333333rem;
    margin-bottom: 1.3333333333rem;
  }
}
.p-about__modal-header-left {
  width: 13.4rem;
}
@media (width <= 768px) {
  .p-about__modal-header-left {
    width: 100%;
  }
}
.p-about__modal-thumb {
  width: 13.4rem;
  height: 12.2666666667rem;
  border-radius: 0.6666666667rem;
  overflow: hidden;
  margin-bottom: 0.6666666667rem;
}
@media (width <= 768px) {
  .p-about__modal-thumb {
    width: 100%;
    height: 15.3333333333rem;
    margin-bottom: 0.6666666667rem;
  }
}
.p-about__modal-img {
  margin-bottom: 1rem;
  border-radius: 0.6666666667rem;
}
.p-about__modal-text {
  width: 34.4rem;
}
@media (width <= 768px) {
  .p-about__modal-text {
    width: 100%;
  }
}
.p-about__modal-text ul {
  list-style-type: disc;
  font-size: 0.8rem;
}
.p-about__modal-text li {
  line-height: 1.4166666667;
}
.p-about__modal-sns-list {
  display: flex;
  justify-content: center;
  gap: 0.6666666667rem;
}
@media (width <= 768px) {
  .p-about__modal-sns-list {
    margin-bottom: 0.6666666667rem;
  }
}
.p-about__modal-sns-item {
  width: 2rem;
}
.p-about__modal-title {
  font-size: 1.6666666667rem;
  font-weight: 700;
  line-height: 1;
}
.p-about__modal-name {
  font-size: 0.8666666667rem;
  font-weight: 700;
  margin-bottom: 0.6666666667rem;
  color: #00b3d1;
}
.p-about__modal-p {
  line-height: 1.4666666667;
}
.p-about__modal-h3 {
  font-size: 1.4666666667rem;
  font-weight: 700;
  border-bottom: 0.1333333333rem solid #00b3d1;
  margin-bottom: 1rem;
}
@media (width <= 768px) {
  .p-about__modal-h3 {
    font-size: 1.3333333333rem;
    line-height: 1.4;
    padding-bottom: 0.5333333333rem;
  }
}
.p-about__modal-h4 {
  font-size: 1.2rem;
  font-weight: 700;
  border-left: 0.2rem solid #00b3d1;
  padding-left: 0.6666666667rem;
  line-height: 1.4;
  margin-bottom: 1rem;
  margin-top: 1.3333333333rem;
}
@media (width <= 768px) {
  .p-about__modal-h4 {
    font-size: 1.2rem;
  }
}
.p-about__modal-header-bottom {
  margin-top: 1.8666666667rem;
  padding: 1.3333333333rem 1.6666666667rem;
  width: 100%;
  background-color: #fff;
}
@media (width <= 768px) {
  .p-about__modal-header-bottom {
    font-size: 0.8666666667rem;
    padding: 1.3333333333rem;
  }
}
.p-about__modal-content h3 {
  font-size: 1.4666666667rem;
  font-weight: 700;
  border-bottom: 0.1333333333rem solid #00b3d1;
  margin-bottom: 1rem;
}
@media (width <= 768px) {
  .p-about__modal-content h3 {
    font-size: 1.3333333333rem;
    line-height: 1.4;
    padding-bottom: 0.5333333333rem;
  }
}
.p-about__modal-content h4 {
  font-size: 1.2rem;
  font-weight: 700;
  border-left: 0.2rem solid #00b3d1;
  padding-left: 0.6666666667rem;
  line-height: 1.4;
  margin-bottom: 1rem;
  margin-top: 1.3333333333rem;
}
.p-about__modal-content p {
  line-height: 1.4666666667;
  margin-bottom: 1rem;
}
.p-about__modal-content p:last-child {
  margin-bottom: 0;
}

.p-trial .msc-page__intro {
  max-width: 49.6rem;
  margin: 2.6666666667rem auto 0rem;
  line-height: 1.8666666667;
}
.p-trial__trial {
  padding-top: 2.6666666667rem;
}
.p-trial__trial-inner {
  display: flex;
  max-width: 79.5333333333rem;
  margin: 0 auto 4.5333333333rem;
  justify-content: space-between;
}
@media (width <= 768px) {
  .p-trial__trial-inner {
    flex-wrap: wrap;
    padding: 0 1.3333333333rem;
  }
}
.p-trial__trial-text {
  width: 45.8666666667rem;
}
@media (width <= 768px) {
  .p-trial__trial-text {
    width: 100%;
  }
}
.p-trial__trial-box {
  display: flex;
  align-items: start;
  justify-content: space-between;
  padding: 1.3333333333rem 2.6666666667rem;
  border: 0.2rem solid #254779;
  border-radius: 1.3333333333rem;
  margin-bottom: 1.4666666667rem;
}
@media (width <= 768px) {
  .p-trial__trial-box {
    flex-wrap: wrap;
    padding: 1.3333333333rem;
  }
}
.p-trial__trial-box:last-of-type {
  margin-bottom: 0;
}
@media (width <= 768px) {
  .p-trial__trial-box:last-of-type {
    margin-bottom: 2.6666666667rem;
  }
}
.p-trial__trial-box-icon {
  background-color: #254779;
  width: 5.7333333333rem;
  height: 5.7333333333rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100vw;
  flex-shrink: 0;
}
@media (width <= 768px) {
  .p-trial__trial-box-icon {
    flex-wrap: wrap;
    margin: 0 auto 0.6666666667rem;
  }
}
.p-trial__trial-box-icon > i {
  font-size: 2.5333333333rem;
  color: #fff;
}
.p-trial__trial-box-img {
  width: 3.6rem;
}
.p-trial__trial-box-text {
  width: 32.8rem;
}
@media (width <= 768px) {
  .p-trial__trial-box-text {
    width: 100%;
    text-align: center;
  }
}
.p-trial__trial-box-title {
  font-size: 1.6rem;
  font-weight: 700;
  color: #254779;
  margin-bottom: 0.3333333333rem;
}
@media (width <= 768px) {
  .p-trial__trial-box-title {
    text-align: center;
    font-size: 1.2rem;
  }
}
.p-trial__trial-box-p {
  line-height: 1.4666666667;
}
@media (width <= 768px) {
  .p-trial__trial-box-p {
    text-align: left;
  }
}
.p-trial__trial-box-price {
  font-size: 1.6rem;
  font-weight: 700;
  color: #254779;
  background: linear-gradient(to bottom, transparent 0%, transparent 70%, #face42 70%, #face42 90%, transparent 90%, transparent 100%);
  display: inline-block;
}
.p-trial__trial-box-price .u-text--big {
  font-size: 2.2666666667rem;
}
.p-trial__trial-thumb {
  width: 30.6rem;
  height: 29.6rem;
  border-radius: 0.6666666667rem;
  overflow: hidden;
}
@media (width <= 768px) {
  .p-trial__trial-thumb {
    height: 23.2rem;
  }
}
.p-trial__trial-notice {
  background-color: #f2f2f2;
  border-radius: 1.3333333333rem;
  width: 68.1333333333rem;
  margin: 0 auto;
  padding: 1.3333333333rem 2.6666666667rem;
  font-size: 0.8666666667rem;
  line-height: 2.1538461538;
}
@media (width <= 768px) {
  .p-trial__trial-notice {
    width: auto;
    margin-inline: 1.3333333333rem;
    padding: 1.3333333333rem;
  }
}
.p-trial__trial-notice-title {
  text-align: center;
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 1.3333333333rem;
  color: #254779;
}
@media (width <= 768px) {
  .p-trial__trial-notice-title {
    font-size: 1.3333333333rem;
  }
}
.p-trial__cloth {
  padding-top: 5.3333333333rem;
}
.p-trial__cloth-list {
  max-width: 43.5333333333rem;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
@media (width <= 768px) {
  .p-trial__cloth-list {
    flex-wrap: wrap;
    gap: 1.3333333333rem;
  }
}
.p-trial__cloth-item {
  width: 20.6666666667rem;
  background-color: #fff;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.15);
  border-radius: 0.6666666667rem;
  padding: 1.3333333333rem 1.0666666667rem 2rem;
}
@media (width <= 768px) {
  .p-trial__cloth-item {
    width: 100%;
  }
}
.p-trial__cloth-item ul {
  list-style: disc;
}
.p-trial__cloth-title {
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 1.3333333333rem;
  color: #254779;
}
.p-trial__cloth-extra {
  margin-top: 1.0666666667rem;
  padding: 0.8rem 0.9333333333rem;
  background-color: #f0f6fb;
  border-radius: 0.5333333333rem;
  border-left: 0.2rem solid #254779;
}
.p-trial__cloth-extra ul {
  list-style: disc;
  margin-top: 0.2666666667rem;
}
.p-trial__cloth-extra-label {
  display: inline-block;
  font-size: 0.8rem;
  font-weight: 700;
  color: #fff;
  background-color: #254779;
  padding: 0.1333333333rem 0.6666666667rem;
  border-radius: 0.2666666667rem;
  line-height: 1.6;
}
.p-trial__flow {
  padding-top: 2.6666666667rem;
}
.p-trial__flow-list {
  max-width: 78.6666666667rem;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  gap: 2.4rem;
  margin-bottom: 10rem;
}
@media (width <= 768px) {
  .p-trial__flow-list {
    flex-wrap: wrap;
    gap: 4.6666666667rem;
    margin-bottom: 4rem;
  }
}
.p-trial__flow-item {
  width: 17.8666666667rem;
  position: relative;
}
@media (width <= 768px) {
  .p-trial__flow-item {
    width: 100%;
  }
}
.p-trial__flow-item:after {
  display: block;
  content: "";
  position: absolute;
  width: 2rem;
  height: 3.2rem;
  background-color: #00b3d1;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  right: -2.4rem;
  top: 9.2rem;
}
@media (width <= 768px) {
  .p-trial__flow-item:after {
    transform: rotate(90deg);
    left: calc(50% - 1.3333333333rem);
    top: inherit;
    bottom: -3.3333333333rem;
    width: 1.6666666667rem;
    height: 2.6666666667rem;
  }
}
.p-trial__flow-item:last-of-type:after {
  display: none;
}
.p-trial__flow-thumb {
  width: 15.8rem;
  height: 23.6rem;
  margin: 0 auto 0.6666666667rem;
  border-radius: 0.6666666667rem;
  overflow: hidden;
}
@media (width <= 768px) {
  .p-trial__flow-thumb {
    margin-bottom: 1.3333333333rem;
  }
}
.p-trial__flow-bnr {
  background-color: #254779;
  color: #fff;
  overflow: hidden;
  border-radius: 1.3333333333rem;
  position: relative;
  padding: 4.9333333333rem 8.6666666667rem 5.3333333333rem 34.6666666667rem;
  width: 76rem;
  margin: 0 auto;
}
@media (width <= 768px) {
  .p-trial__flow-bnr {
    width: 100%;
    padding: 17.3333333333rem 1.3333333333rem 1.3333333333rem;
  }
}
.p-trial__flow-bnr-thumb {
  width: 27.3333333333rem;
  height: 27.3333333333rem;
  border-radius: 100vw;
  position: absolute;
  top: -2.3333333333rem;
  left: 4.2rem;
  overflow: hidden;
}
@media (width <= 768px) {
  .p-trial__flow-bnr-thumb {
    width: 20rem;
    left: 1.1666666667rem;
    top: -3.3333333333rem;
    height: 20rem;
  }
}
.p-trial__flow-bnr-title {
  font-size: 2.6666666667rem;
  font-weight: 700;
  margin-bottom: 1.3333333333rem;
}
@media (width <= 768px) {
  .p-trial__flow-bnr-title {
    font-size: 1.6rem;
    margin-bottom: 0.6666666667rem;
    text-align: center;
  }
}

.p-staff__list {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 3.3333333333rem 1.3333333333rem;
  margin: 7.3333333333rem auto;
}
@media (width <= 768px) {
  .p-staff__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.6rem 0.9333333333rem;
    margin: 4rem auto;
  }
}
.p-staff__item {
  background-color: #fff;
  border-radius: 0.6666666667rem;
  padding: 1rem 1.3333333333rem;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.15);
  cursor: pointer;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
@media (width <= 768px) {
  .p-staff__item {
    padding: 0.8rem 0.4666666667rem;
  }
}
.p-staff__item:hover {
  transform: translateY(-0.2666666667rem);
  box-shadow: 0 0.4rem 1.3333333333rem rgba(0, 0, 0, 0.2);
}
.p-staff__item:hover .p-staff__thumb-overlay {
  opacity: 1;
}
.p-staff__thumb {
  background-color: #ccc;
  border-radius: 0.6666666667rem;
  overflow: hidden;
  height: 10rem;
  margin-bottom: 0.6666666667rem;
  position: relative;
}
@media (width <= 768px) {
  .p-staff__thumb {
    height: 10rem;
    width: 100%;
    margin: 0 auto 0.6666666667rem;
  }
}
.p-staff__thumb-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(37, 71, 121, 0.6);
  color: #fff;
  font-size: 0.8666666667rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  border-radius: 0.6666666667rem;
  opacity: 0;
  transition: opacity 0.25s ease;
}
@media (width <= 768px) {
  .p-staff__thumb-overlay {
    inset: auto 0 0 0;
    height: 1.7333333333rem;
    border-radius: 0 0 0.6666666667rem 0.6666666667rem;
    background-color: rgba(37, 71, 121, 0.7);
    font-size: 0.7333333333rem;
    opacity: 1;
  }
}
.p-staff__title {
  font-size: 1.3333333333rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 0.6666666667rem;
}
.p-staff__p {
  font-size: 0.8666666667rem;
  line-height: 1.4615384615;
}

.p-facility__access-inner {
  display: flex;
  justify-content: space-between;
  max-width: 75.8rem;
  margin: 0 auto;
}
@media (width <= 768px) {
  .p-facility__access-inner {
    flex-wrap: wrap;
  }
}
.p-facility__access-table {
  width: 40rem;
  margin-top: 1.3333333333rem;
}
@media (width <= 768px) {
  .p-facility__access-table {
    width: 100%;
    margin: 0 0 1.3333333333rem;
  }
}
.p-facility__access-table th,
.p-facility__access-table td {
  vertical-align: middle;
  padding: 0.9333333333rem 1.3333333333rem;
  font-size: 1rem;
}
.p-facility__access-table th {
  width: 8.9333333333rem;
}
@media (width <= 768px) {
  .p-facility__access-table th {
    width: 100%;
  }
}
.p-facility__access-map {
  width: 30.8666666667rem;
  height: 23.3333333333rem;
}
@media (width <= 768px) {
  .p-facility__access-map {
    width: 100%;
  }
}
.p-facility__access-map iframe {
  width: 100%;
  height: 100%;
}
.p-facility__feature {
  padding-top: 8rem;
}
@media (width <= 768px) {
  .p-facility__feature {
    padding-top: 5.3333333333rem;
  }
}
.p-facility__feature-inner {
  display: flex;
  justify-content: space-between;
  max-width: 78.0666666667rem;
  margin: 0 auto;
  align-items: center;
}
@media (width <= 768px) {
  .p-facility__feature-inner {
    flex-wrap: wrap;
  }
}
.p-facility__feature-slider {
  width: 32.4rem;
  position: relative;
}
@media (width <= 768px) {
  .p-facility__feature-slider {
    width: 100%;
    margin-bottom: 1.3333333333rem;
  }
}
.p-facility__feature-slider-button {
  width: 2.4rem;
  height: 2.4rem;
  background-image: url(../images/page/slider-arrow.svg);
  background-repeat: no-repeat;
  background-size: 100%;
}
@media (width <= 768px) {
  .p-facility__feature-slider-button {
    top: 8rem;
  }
}
.p-facility__feature-slider-button--prev {
  left: 1rem;
  transform: rotate(180deg);
}
@media (width <= 768px) {
  .p-facility__feature-slider-button--prev {
    left: 0.6666666667rem;
  }
}
.p-facility__feature-slider-button--next {
  right: 1rem;
}
@media (width <= 768px) {
  .p-facility__feature-slider-button--next {
    right: 0.6666666667rem;
  }
}
.p-facility__feature-slider-main {
  margin-bottom: 0.6666666667rem;
  width: 26rem;
  margin: 0 auto 0.6666666667rem;
  position: relative;
}
@media (width <= 768px) {
  .p-facility__feature-slider-main {
    width: 100%;
  }
}
.p-facility__feature-slider-main-item {
  border-radius: 0.6666666667rem;
  overflow: hidden;
  height: 14.6rem;
}
.p-facility__feature-slider-thumb {
  width: 26rem;
  margin: 0 auto;
}
@media (width <= 768px) {
  .p-facility__feature-slider-thumb {
    width: 100%;
  }
}
.p-facility__feature-slider-thumb-item {
  border-radius: 0.3333333333rem;
  overflow: hidden;
  height: 3.2rem;
  opacity: 0.5;
  cursor: pointer;
}
.p-facility__feature-slider-thumb-item.swiper-slide-thumb-active {
  opacity: 1;
}
.p-facility__feature-text {
  width: 44.4666666667rem;
}
@media (width <= 768px) {
  .p-facility__feature-text {
    width: 100%;
  }
}
.p-facility__feature-title {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 1.3333333333rem;
}
@media (width <= 768px) {
  .p-facility__feature-title {
    font-size: 1.3333333333rem;
  }
}
.p-facility__feature-p:not(:last-child) {
  margin-bottom: 1.5em;
}
.p-facility__course {
  text-align: center;
}
@media (width <= 768px) {
  .p-facility__course {
    padding-top: 2.6666666667rem;
  }
}
.p-facility__course-ui {
  max-width: 57.3333333333rem;
  margin: 2.4rem auto 2.6666666667rem;
  text-align: left;
}
@media (width <= 768px) {
  .p-facility__course-ui {
    margin-top: 1.6rem;
  }
}
.p-facility__course-header {
  padding: 1.3333333333rem 1.3333333333rem 1.0666666667rem;
  text-align: left;
}
.p-facility__course-header-title {
  font-size: 1.0666666667rem;
  font-weight: 700;
  color: #254779;
  margin-bottom: 0.2666666667rem;
}
.p-facility__course-header-desc {
  font-size: 0.8666666667rem;
  color: #666;
}
.p-facility__course-tabs {
  display: flex;
  overflow-x: auto;
  gap: 0.4rem;
  scrollbar-width: none;
}
.p-facility__course-tabs::-webkit-scrollbar {
  display: none;
}
.p-facility__course-tab {
  flex-shrink: 0;
  line-height: 1;
  cursor: pointer;
  padding: 0 1.3333333333rem;
  height: 3.0666666667rem;
  background-color: #b8d4ff;
  color: #254779;
  font-size: 0.9333333333rem;
  font-weight: 700;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 0.6666666667rem 0.6666666667rem 0 0;
  border: none;
  white-space: nowrap;
  transition: 0.3s;
  font-family: inherit;
}
.p-facility__course-tab.is-active {
  background-color: #254779;
  border: 0.2rem solid #face42;
  color: #fff;
}
@media (width <= 768px) {
  .p-facility__course-tab {
    font-size: 0.8rem;
    height: 2.6666666667rem;
    padding: 0 0.9333333333rem;
  }
}
.p-facility__course-content {
  background: #fff;
  box-shadow: 0 0 0.6666666667rem rgba(0, 0, 0, 0.1);
  border-radius: 0 0 0.6666666667rem 0.6666666667rem;
  border: none;
  padding: 1.3333333333rem 1.3333333333rem 0.2666666667rem;
  min-height: 5.3333333333rem;
  animation: mscFadeSlideUp 0.25s ease;
}
.p-facility__course-category {
  margin-bottom: 1.8666666667rem;
}
.p-facility__course-category-header {
  display: flex;
  align-items: center;
  gap: 0.5333333333rem;
  padding-bottom: 0.6666666667rem;
  border-bottom: 0.1333333333rem solid #254779;
  margin-bottom: 0.8rem;
}
.p-facility__course-category-icon {
  font-size: 1.2rem;
  line-height: 1;
}
.p-facility__course-category-name {
  font-size: 1rem;
  font-weight: 700;
  color: #254779;
}
.p-facility__course-category-count {
  font-size: 0.7333333333rem;
  color: #999;
  margin-left: auto;
}
.p-facility__course-group {
  margin-bottom: 1.0666666667rem;
}
.p-facility__course-group-label {
  font-size: 0.7333333333rem;
  font-weight: 600;
  color: #999;
  letter-spacing: 0.06em;
  padding: 0 0.2666666667rem 0.4rem;
}
.p-facility__course-table-card {
  border: 1px solid #e6eaf0;
  border-radius: 0.6666666667rem;
  overflow: hidden;
}
.p-facility__course-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.8rem 1.0666666667rem;
  gap: 0.8rem;
  border-bottom: 1px solid #f0f4f8;
}
.p-facility__course-row:last-child {
  border-bottom: none;
}
.p-facility__course-row-name {
  font-size: 0.9333333333rem;
  font-weight: 500;
}
.p-facility__course-row-age {
  font-size: 0.7333333333rem;
  color: #555;
  background: #edf4ff;
  padding: 0.2rem 0.6666666667rem;
  border-radius: 100px;
  white-space: nowrap;
  flex-shrink: 0;
}
.p-facility__course-btn {
  margin: 0.5333333333rem 0 6.6666666667rem;
}
@media (width <= 768px) {
  .p-facility__course-btn {
    margin-bottom: 2.6666666667rem;
  }
}
@keyframes mscFadeSlideUp {
  from {
    opacity: 0;
    transform: translateY(0.4rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.p-facility__price {
  padding-top: 5.3333333333rem;
  text-align: center;
}
.p-facility__price-inner {
  max-width: 59.6rem;
  margin: 0 auto 2.6666666667rem;
}
@media (width <= 768px) {
  .p-facility__price-inner {
    padding: 1.3333333333rem;
  }
}
.p-facility__price-table {
  text-align: left;
  margin-bottom: 1.3333333333rem;
}
.p-facility__price-table th,
.p-facility__price-table td {
  padding: 1.3333333333rem 1rem;
}
.p-facility__price-title {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 1.3333333333rem;
  color: #254779;
}
@media (width <= 768px) {
  .p-facility__price-title {
    font-size: 1.3333333333rem;
  }
}
.p-facility__price-offer-list {
  display: flex;
  justify-content: center;
  gap: 3.3333333333rem;
  margin: 5.3333333333rem auto 2.6666666667rem;
}
@media (width <= 768px) {
  .p-facility__price-offer-list {
    flex-wrap: wrap;
    gap: 4.6666666667rem;
  }
}
.p-facility__price-offer-item {
  width: 20.6666666667rem;
  padding: 2.1333333333rem 1.6666666667rem 1.6rem;
  text-align: center;
}
@media (width <= 768px) {
  .p-facility__price-offer-item {
    width: 100%;
  }
}
.p-facility__price-offer-icon {
  width: 5.8666666667rem;
  height: 5.8666666667rem;
  border-radius: 50%;
  background: #daeaf5;
  border: 0.2rem solid #face42;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 1.3333333333rem;
}
.p-facility__price-offer-icon i {
  font-size: 2.6666666667rem;
  color: #254779;
}
.p-facility__price-offer-title {
  font-size: 1.3333333333rem;
  font-weight: 700;
  margin-bottom: 0.6666666667rem;
  color: #254779;
}
.p-facility__price-offer-p {
  text-align: left;
  margin-bottom: 1.3333333333rem;
}
.p-facility__price-offer-link {
  text-decoration: none;
}
.p-facility__price-offer-link span {
  text-decoration: underline;
}
.p-facility__price-p {
  font-size: 0.8666666667rem;
}
@media (width <= 768px) {
  .p-facility__price-p {
    text-align: left;
  }
}
.p-facility__schedule {
  text-align: center;
}
@media (width <= 768px) {
  .p-facility__schedule {
    padding-top: 2.6666666667rem;
  }
}
.p-facility__schedule-inner {
  display: flex;
  justify-content: space-between;
  max-width: 63.6rem;
  margin: 0 auto;
}
@media (width <= 768px) {
  .p-facility__schedule-inner {
    flex-wrap: wrap;
    gap: 2.6666666667rem;
  }
}
.p-facility__schedule-wave {
  font-size: 1.6rem;
  font-weight: 700;
  color: #254779;
  margin-bottom: 2rem;
}
@media (width <= 768px) {
  .p-facility__schedule-wave {
    font-size: 1.3333333333rem;
  }
}
.p-facility__schedule-p {
  margin-bottom: 2.6666666667rem;
}
@media (width <= 768px) {
  .p-facility__schedule-p {
    text-align: left;
    margin-bottom: 1.3333333333rem;
  }
}
.p-facility__schedule-item {
  width: 30.6666666667rem;
  text-align: center;
}
@media (width <= 768px) {
  .p-facility__schedule-item {
    width: 100%;
  }
}
.p-facility__schedule .msc-box {
  padding: 1.3333333333rem;
  margin-bottom: 2.6666666667rem;
}
@media (width <= 768px) {
  .p-facility__schedule .msc-box {
    margin-bottom: 1.3333333333rem;
  }
}
.p-facility__schedule-embed-box {
  padding: 0 !important;
  overflow: hidden;
  margin-bottom: 1.3333333333rem;
}
.p-facility__schedule-embed {
  display: block;
  width: 100%;
  height: 28rem;
  border: none;
}
@media (width <= 768px) {
  .p-facility__schedule-embed {
    height: 14.6666666667rem;
  }
}
.p-facility__schedule-embed-fallback {
  padding: 1.3333333333rem;
  text-align: center;
  font-size: 0.8666666667rem;
  color: #666;
  line-height: 1.8;
}
.p-facility__list {
  padding-top: 5.3333333333rem;
}
.p-facility__list .msc-inner {
  max-width: 93.3333333333rem;
  margin: 0 auto;
  padding: 0 4rem;
}
@media (width <= 768px) {
  .p-facility__list .msc-inner {
    padding: 0 1.3333333333rem;
  }
}
@media (width <= 768px) {
  .p-facility__list {
    padding-top: 2.6666666667rem;
  }
}
.p-facility__tabs {
  display: flex;
  gap: 0.5333333333rem;
  margin: 2rem 0 1.3333333333rem;
}
.p-facility__tab {
  flex: 1;
  max-width: 13.3333333333rem;
  padding: 0.8rem 1.3333333333rem;
  border-radius: 999px;
  border: 1px solid #cfe3ff;
  background: #f7fbff;
  font-size: 1rem;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s;
}
.p-facility__tab.is-active {
  background: #e7f1ff;
  border-color: #254779;
  color: #254779;
}
@media (width <= 768px) {
  .p-facility__tab {
    font-size: 0.9333333333rem;
    padding: 0.6666666667rem 1.0666666667rem;
  }
}
.p-facility__map {
  width: 100%;
  height: 32rem;
  border-radius: 1.0666666667rem;
  overflow: hidden;
  margin-bottom: 1.6rem;
}
@media (width <= 768px) {
  .p-facility__map {
    height: 60vw;
    min-height: 16rem;
  }
}
.p-facility__cards {
  display: flex;
  gap: 1.0666666667rem;
  overflow-x: auto;
  padding: 0.5333333333rem 0.2666666667rem 1.0666666667rem;
  scroll-snap-type: x mandatory;
}
@media (width <= 768px) {
  .p-facility__cards {
    gap: 0.8rem;
  }
}
.p-facility__card {
  min-width: 16rem;
  scroll-snap-align: start;
  border: 1px solid #e6eaf0;
  border-radius: 1.0666666667rem;
  overflow: hidden;
  background: #fff;
  display: flex;
  flex-direction: column;
  cursor: pointer;
  transition: box-shadow 0.2s;
}
.p-facility__card:hover, .p-facility__card.is-active {
  box-shadow: 0 0 0 2px #254779;
}
@media (width <= 768px) {
  .p-facility__card {
    min-width: 75vw;
  }
}
.p-facility__card-img {
  width: 100%;
  height: 9.3333333333rem;
  overflow: hidden;
  flex-shrink: 0;
}
.p-facility__card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-facility__card-body {
  flex: 1;
  padding: 0.9333333333rem 1.0666666667rem 0.9333333333rem;
  display: flex;
  flex-direction: column;
}
.p-facility__card-header {
  display: flex;
  align-items: flex-start;
  gap: 0.6666666667rem;
  margin-bottom: 0.5333333333rem;
}
.p-facility__card-num {
  width: 1.8666666667rem;
  height: 1.8666666667rem;
  border-radius: 100vw;
  background: #254779;
  color: #fff;
  font-weight: 700;
  font-size: 0.8666666667rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 0.1333333333rem;
}
.p-facility__card-title {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
}
.p-facility__card-addr {
  font-size: 0.8rem;
  color: #666;
  margin-bottom: 0.8rem;
  flex: 1;
}
.p-facility__card-btn {
  font-size: 0.8666666667rem;
  padding: 0.5333333333rem 1.3333333333rem;
  white-space: nowrap;
  align-self: flex-start;
  background-image: none;
}

.p-course__menu {
  padding-top: 5.3333333333rem;
}
.p-course__menu-p {
  max-width: 57.0666666667rem;
  margin: 0 auto 2.6666666667rem;
}
.p-course__menu-inner {
  max-width: 75rem;
  margin: 0 auto;
  position: relative;
  padding: 0 3.3333333333rem;
}
@media (width <= 768px) {
  .p-course__menu-inner {
    width: calc(100% + 2.6666666667rem);
    margin-left: -1.3333333333rem;
    padding: 0;
  }
}
@media (768px < width) {
  .p-course__menu-inner--few .msc-swiper__button,
  .p-course__menu-inner--few .msc-swiper__controller {
    display: none;
  }
  .p-course__menu-inner--few .swiper-wrapper {
    justify-content: center;
    transform: none !important;
  }
}
.p-course__menu-list {
  display: flex;
  justify-content: center;
  margin: 0 auto 2.6666666667rem;
}
@media (width <= 768px) {
  .p-course__menu-list {
    flex-wrap: wrap;
    gap: 4.6666666667rem;
  }
}
.p-course__menu-item {
  padding: 0rem 1.6666666667rem 1.3333333333rem;
  position: relative;
}
@media (width <= 768px) {
  .p-course__menu-item {
    width: 100%;
  }
}
.p-course__menu-thumb {
  height: 12rem;
  width: calc(100% + 3.3333333333rem);
  margin-left: -1.6666666667rem;
  margin-bottom: 1.3333333333rem;
  clip-path: url(#clipshape);
}
.p-course__menu-title {
  font-size: 1.2rem;
  font-weight: 700;
  margin-bottom: 0.6666666667rem;
  color: #254779;
}
@media (width <= 768px) {
  .p-course__menu-title {
    font-size: 1rem;
    line-height: 1.4666666667;
  }
}
.p-course__menu-item-p {
  text-align: left;
  font-size: 0.8666666667rem;
  line-height: 1.4615384615;
}
.p-course__menu-link {
  text-decoration: none;
}
.p-course__menu-link span {
  text-decoration: underline;
}
@media (width <= 768px) {
  .p-course__menu .msc-swiper__button {
    top: calc(50% - 1.3333333333rem);
  }
}
.p-course__feature .p-about__feature-list {
  margin-bottom: 5rem;
}
@media (width <= 768px) {
  .p-course__feature .p-about__feature-list {
    margin-bottom: 2.6666666667rem;
  }
}
.p-course__class {
  padding-top: 5.3333333333rem;
}
.p-course__class-p {
  text-align: center;
  margin-bottom: 3.3333333333rem;
}
@media (width <= 768px) {
  .p-course__class-p {
    text-align: left;
  }
}
.p-course__class-inner {
  max-width: 76rem;
  margin: 0 auto;
}
.p-course__class-tabs-wrapper {
  position: relative;
  overflow-x: auto;
  scrollbar-width: none;
}
.p-course__class-tabs-wrapper::-webkit-scrollbar {
  display: none;
}
.p-course__class-tabs {
  display: flex;
  gap: 0.4rem;
}
.p-course__class-tabs--multi {
  justify-content: flex-start;
}
.p-course__class-tabs-item {
  flex-shrink: 0;
  line-height: 1;
  cursor: pointer;
  padding: 0 1.3333333333rem;
  height: 3.0666666667rem;
  background-color: #b8d4ff;
  color: #254779;
  font-size: 0.9333333333rem;
  font-weight: 700;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 0.6666666667rem 0.6666666667rem 0 0;
  white-space: nowrap;
  transition: 0.3s;
}
@media (width <= 768px) {
  .p-course__class-tabs-item {
    font-size: 0.8rem;
    height: 2.6666666667rem;
    padding: 0 0.9333333333rem;
  }
}
.p-course__class-tabs-item--active {
  background-color: #254779;
  border: 0.2rem solid #face42;
  color: #fff;
}
.p-course__class-contents {
  background-color: #fff;
  display: flex;
  justify-content: space-between;
}
.p-course__class-contents-item {
  display: none;
  width: 100%;
  justify-content: space-between;
}
@media (width <= 768px) {
  .p-course__class-contents-item {
    padding: 1.3333333333rem;
    flex-wrap: wrap;
  }
}
.p-course__class-contents-item--active {
  display: flex;
  animation: fadeIn 0.5s ease forwards;
}
.p-course__class-contents-thumb {
  width: 21.9333333333rem;
  height: 14.3333333333rem;
  border-radius: 1.3333333333rem;
  overflow: hidden;
}
@media (width <= 768px) {
  .p-course__class-contents-thumb {
    width: 100%;
    margin-bottom: 1.3333333333rem;
  }
}
.p-course__class-contents-text {
  width: 44.6666666667rem;
}
@media (width <= 768px) {
  .p-course__class-contents-text {
    width: 100%;
  }
}
.p-course__class-contents-title {
  font-size: 1.6666666667rem;
  font-weight: 700;
  color: #000;
  margin-bottom: 0.6666666667rem;
}
@media (width <= 768px) {
  .p-course__class-contents-title {
    font-size: 1.2rem;
    line-height: 1.3888888889;
  }
}
.p-course__class-contents-cat {
  background-color: #face42;
  font-size: 1.2rem;
  color: #000;
  line-height: 1;
  padding: 0.3333333333rem 2rem;
  display: inline-block;
  border-radius: 100vw;
  font-weight: 700;
  margin-bottom: 1rem;
}
@media (width <= 768px) {
  .p-course__class-contents-cat {
    font-size: 0.8666666667rem;
    margin-bottom: 0.6666666667rem;
  }
}
.p-course__class-contents-p {
  margin-bottom: 0.9333333333rem;
}
.p-course__class-contents-memo {
  font-size: 0.8rem;
  line-height: 2.3333333333;
}
.p-course__class-contents-facilities {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5333333333rem;
  margin-top: 1.0666666667rem;
}
.p-course__class-contents-facility {
  border: 0.0666666667rem solid #254779;
  border-radius: 100vw;
  padding: 0.2666666667rem 0.9333333333rem;
  font-size: 0.8666666667rem;
  font-weight: 600;
  color: #254779;
  background: #fff;
  line-height: 1.6;
}
.p-course__voice-inner {
  max-width: 63.4rem;
  margin: 0 auto;
}
.p-course__voice-list {
  display: flex;
  flex-wrap: wrap;
  gap: 3.7333333333rem;
}
.p-course__voice-item {
  display: flex;
  justify-content: space-between;
  width: 100%;
  align-items: center;
}
@media (width <= 768px) {
  .p-course__voice-item {
    flex-wrap: wrap;
    justify-content: center;
  }
}
.p-course__voice-left {
  text-align: center;
  width: 9.6666666667rem;
  line-height: 1.4666666667;
}
@media (width <= 768px) {
  .p-course__voice-left {
    margin-bottom: 2.6666666667rem;
  }
}
.p-course__voice-thumb {
  width: 9.6666666667rem;
  height: 9.6666666667rem;
  overflow: hidden;
  margin-bottom: 0.3333333333rem;
  border-radius: 100vw;
}
.p-course__voice-text {
  width: 50.6666666667rem;
  background-color: #dbfaff;
  border: 0.2rem solid #00b3d1;
  border-radius: 4rem;
  padding: 1.3333333333rem 3rem;
  position: relative;
}
@media (width <= 768px) {
  .p-course__voice-text {
    width: 100%;
    border-radius: 2rem;
    padding: 1.3333333333rem;
  }
}
.p-course__voice-text:before {
  content: "";
  width: 2rem;
  height: 2rem;
  background-color: #00b3d1;
  clip-path: polygon(0 50%, 100% 0, 100% 100%);
  position: absolute;
  left: -2rem;
  top: calc(50% - 1rem);
}
@media (width <= 768px) {
  .p-course__voice-text:before {
    width: 1.8rem;
    left: calc(50% - 1rem);
    top: -1.9333333333rem;
    transform: rotate(90deg);
  }
}
.p-course__voice-text:after {
  content: "";
  width: 2rem;
  height: 2rem;
  background-color: #dbfaff;
  clip-path: polygon(0 50%, 100% 0, 100% 100%);
  position: absolute;
  left: -1.5333333333rem;
  top: calc(50% - 1rem);
}
@media (width <= 768px) {
  .p-course__voice-text:after {
    width: 1.8rem;
    left: calc(50% - 1rem);
    top: -1.4666666667rem;
    transform: rotate(90deg);
  }
}
.p-course__voice-title {
  font-size: 1.6666666667rem;
  font-weight: 700;
  margin-bottom: 0.6666666667rem;
}
@media (width <= 768px) {
  .p-course__voice-title {
    font-size: 1.2rem;
    line-height: 1.5555555556;
  }
}
.p-course__voice-item--hidden {
  display: none;
}
.p-course__voice-more {
  text-align: center;
  margin-top: 2.6666666667rem;
}
.p-course__faq {
  padding-top: 1.3333333333rem;
}
.p-course__faq-inner {
  max-width: 50.9333333333rem;
  margin: 0 auto;
}
.p-course__faq-list {
  display: flex;
  flex-wrap: wrap;
  gap: 3.6666666667rem;
}
@media (width <= 768px) {
  .p-course__faq-list {
    gap: 1.3333333333rem;
  }
}
.p-course__faq-item {
  padding: 2rem 3.3333333333rem;
}
@media (width <= 768px) {
  .p-course__faq-item {
    padding: 1.3333333333rem;
  }
}
.p-course__faq-title {
  font-size: 1.1333333333rem;
  padding-left: 4rem;
  position: relative;
  padding-bottom: 2rem;
  border-bottom: 0.1333333333rem solid #9ed6e9;
  margin-bottom: 0.6666666667rem;
}
@media (width <= 768px) {
  .p-course__faq-title {
    font-size: 1rem;
    line-height: 1.4666666667;
    padding-left: 3rem;
  }
}
.p-course__faq-title:before {
  position: absolute;
  left: 0;
  top: calc(50% - 2.3333333333rem);
  font-family: "Josefin Sans", sans-serif;
  font-weight: 500;
  content: "Q";
  padding-top: 0.3333333333rem;
  width: 2.7333333333rem;
  height: 2.7333333333rem;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  font-size: 1.6rem;
  background-color: #00b3d1;
  color: #fff;
  border-radius: 100vw;
}
@media (width <= 768px) {
  .p-course__faq-title:before {
    width: 2rem;
    height: 2rem;
    font-size: 1.2rem;
  }
}
.p-course__faq-p {
  margin-bottom: 1.5em;
}
.p-course__faq-p:last-of-type {
  margin-bottom: 0;
}
.p-course__faq-inner {
  max-width: 54.6666666667rem;
  margin: 0 auto;
}
.p-course__faq-more {
  margin-top: 2.1333333333rem;
  text-align: center;
}
@media (width <= 768px) {
  .p-course__faq-more {
    margin-top: 1.6rem;
  }
}

/* コース一覧ページ */
.p-course-archive {
  padding-top: initial;
}
.p-course-archive__list.c-list {
  margin-top: 4rem;
}
@media (width <= 768px) {
  .p-course-archive__list.c-list {
    margin-top: 2.6666666667rem;
  }
}
.p-course-archive__item {
  padding: 4rem 0;
  border-top: 1px solid #e5e5e5;
}
.p-course-archive__item:last-child {
  border-bottom: 1px solid #e5e5e5;
}
@media (width <= 768px) {
  .p-course-archive__item {
    padding: 2.4rem 0;
  }
}
.p-course-archive__inner {
  display: flex;
  align-items: center;
  gap: 4rem;
}
@media (width <= 768px) {
  .p-course-archive__inner {
    flex-direction: column;
    gap: 1.3333333333rem;
  }
}
.p-course-archive__thumb {
  flex-shrink: 0;
  width: 48%;
  aspect-ratio: 4/3;
  border-radius: 0.8rem;
  overflow: hidden;
  display: block;
}
@media (width <= 768px) {
  .p-course-archive__thumb {
    width: 100%;
    aspect-ratio: 16/9;
  }
}
.p-course-archive__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s;
}
.p-course-archive__thumb:hover .p-course-archive__img {
  transform: scale(1.05);
}
.p-course-archive__text {
  flex: 1;
}
.p-course-archive__title {
  font-size: 2.4rem;
  font-weight: 800;
  color: #254779;
  margin-bottom: 1.3333333333rem;
  line-height: 1.3;
}
@media (width <= 768px) {
  .p-course-archive__title {
    font-size: 1.4666666667rem;
    margin-bottom: 0.9333333333rem;
  }
}
.p-course-archive__desc {
  line-height: 1.9;
  margin-bottom: 2.1333333333rem;
}
@media (width <= 768px) {
  .p-course-archive__desc {
    font-size: 0.9333333333rem;
    margin-bottom: 1.3333333333rem;
  }
}
@media (width <= 768px) {
  .p-course-archive__btn {
    font-size: 0.9333333333rem;
  }
}

.p-faq__tabs-wrap {
  position: relative;
  max-width: 54.6666666667rem;
  margin: 0 auto 3.2rem;
}
@media (width <= 768px) {
  .p-faq__tabs-wrap {
    margin-bottom: 2.1333333333rem;
  }
  .p-faq__tabs-wrap:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 2.6666666667rem;
    height: 100%;
    background: linear-gradient(to right, transparent, #f5f7fb);
    pointer-events: none;
  }
}
.p-faq__tabs {
  display: flex;
  gap: 0.5333333333rem;
  justify-content: flex-start;
  flex-wrap: wrap;
}
@media (width <= 768px) {
  .p-faq__tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    gap: 0.4rem;
    padding-bottom: 0.2666666667rem;
    padding-right: 2.6666666667rem;
    scrollbar-width: none;
  }
  .p-faq__tabs::-webkit-scrollbar {
    display: none;
  }
}
.p-faq__tab {
  flex-shrink: 0;
  white-space: nowrap;
  padding: 0.6rem 1.4666666667rem;
  border-radius: 999px;
  border: 0.1333333333rem solid #254779;
  background: #fff;
  font-size: 0.9333333333rem;
  font-weight: 700;
  color: #254779;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}
@media (width <= 768px) {
  .p-faq__tab {
    font-size: 0.8666666667rem;
    padding: 0.5333333333rem 1.2rem;
  }
}
.p-faq__tab.is-active {
  background: #254779;
  color: #fff;
}
.p-faq__body {
  max-width: 54.6666666667rem;
  margin: 0 auto;
}
.p-faq__section + .p-faq__section {
  margin-top: 4rem;
}
@media (width <= 768px) {
  .p-faq__section + .p-faq__section {
    margin-top: 2.9333333333rem;
  }
}
.p-faq__section-title {
  font-size: 1.2666666667rem;
  font-weight: 700;
  color: #254779;
  border-left: 0.2666666667rem solid #00b3d1;
  padding-left: 0.9333333333rem;
  margin-bottom: 1.3333333333rem;
  line-height: 1.4;
}
@media (width <= 768px) {
  .p-faq__section-title {
    font-size: 1.0666666667rem;
    padding-left: 0.8rem;
    margin-bottom: 1.0666666667rem;
  }
}
.p-faq__list {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
.p-faq__item {
  background: #fff;
  border-radius: 0.8rem;
  box-shadow: 0 0.1333333333rem 0.8rem rgba(0, 0, 0, 0.08);
  overflow: hidden;
  transition: box-shadow 0.2s;
}
.p-faq__item.is-open {
  box-shadow: 0 0.2666666667rem 1.3333333333rem rgba(37, 71, 121, 0.15);
}
.p-faq__q {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 1.0666666667rem;
  padding: 1.4666666667rem 1.8666666667rem;
  text-align: left;
  background: none;
  border: none;
  cursor: pointer;
}
@media (width <= 768px) {
  .p-faq__q {
    padding: 1.0666666667rem 1.2rem;
    gap: 0.8rem;
  }
}
.p-faq__q:hover .p-faq__q-icon {
  background: #254779;
}
.p-faq__q:hover .p-faq__q-icon:before, .p-faq__q:hover .p-faq__q-icon:after {
  background: #fff;
}
.p-faq__q-badge {
  flex-shrink: 0;
  width: 2.6666666667rem;
  height: 2.6666666667rem;
  border-radius: 100vw;
  background: #00b3d1;
  color: #fff;
  font-size: 1.4666666667rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 0.2rem;
  line-height: 1;
}
@media (width <= 768px) {
  .p-faq__q-badge {
    width: 2.1333333333rem;
    height: 2.1333333333rem;
    font-size: 1.1333333333rem;
  }
}
.p-faq__q-text {
  flex: 1;
  font-size: 1.0666666667rem;
  font-weight: 700;
  line-height: 1.55;
}
@media (width <= 768px) {
  .p-faq__q-text {
    font-size: 0.9333333333rem;
  }
}
.p-faq__q-icon {
  flex-shrink: 0;
  width: 1.8666666667rem;
  height: 1.8666666667rem;
  border-radius: 100vw;
  border: 0.1333333333rem solid #254779;
  position: relative;
  transition: background 0.25s;
}
@media (width <= 768px) {
  .p-faq__q-icon {
    width: 1.6rem;
    height: 1.6rem;
  }
}
.p-faq__q-icon:before {
  content: "";
  position: absolute;
  width: 0.9333333333rem;
  height: 0.1333333333rem;
  background: #254779;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: background 0.25s;
}
@media (width <= 768px) {
  .p-faq__q-icon:before {
    width: 0.8rem;
  }
}
.p-faq__q-icon:after {
  content: "";
  position: absolute;
  width: 0.1333333333rem;
  height: 0.9333333333rem;
  background: #254779;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: background 0.25s, transform 0.3s, opacity 0.3s;
}
@media (width <= 768px) {
  .p-faq__q-icon:after {
    height: 0.8rem;
  }
}
.p-faq__item.is-open .p-faq__q-icon {
  background: #254779;
}
.p-faq__item.is-open .p-faq__q-icon:before, .p-faq__item.is-open .p-faq__q-icon:after {
  background: #fff;
}
.p-faq__item.is-open .p-faq__q-icon:after {
  transform: translate(-50%, -50%) rotate(90deg);
  opacity: 0;
}
.p-faq__a {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s ease;
}
.p-faq__a-inner {
  display: flex;
  gap: 1.0666666667rem;
  padding: 1.3333333333rem 1.8666666667rem 1.8666666667rem;
  border-top: 0.0666666667rem solid #d4eef5;
}
@media (width <= 768px) {
  .p-faq__a-inner {
    padding: 1.0666666667rem 1.2rem 1.4666666667rem;
    gap: 0.8rem;
  }
}
.p-faq__a-badge {
  flex-shrink: 0;
  width: 2.6666666667rem;
  height: 2.6666666667rem;
  border-radius: 100vw;
  background: #254779;
  color: #fff;
  font-size: 1.4666666667rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 0.2rem;
  line-height: 1;
}
@media (width <= 768px) {
  .p-faq__a-badge {
    width: 2.1333333333rem;
    height: 2.1333333333rem;
    font-size: 1.1333333333rem;
  }
}
.p-faq__a-text {
  flex: 1;
  min-width: 0;
  overflow-wrap: break-word;
  word-break: break-word;
  font-size: 1rem;
  line-height: 1.7333333333;
  padding-top: 0.5333333333rem;
}
@media (width <= 768px) {
  .p-faq__a-text {
    font-size: 0.9333333333rem;
    padding-top: 0.2666666667rem;
  }
}
.p-faq__a-text p {
  margin-bottom: 0.6666666667rem;
}
.p-faq__a-text p:last-child {
  margin-bottom: 0;
}
.p-faq__a-text a {
  color: #254779;
  text-decoration: underline;
  word-break: break-all;
}

.c-btn--line {
  background-color: #06c755;
  color: #fff;
  background-image: none;
}
.c-btn--line:hover {
  background-color: #049a41;
  color: #fff;
}

.p-guidance__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.6666666667rem 2.1333333333rem;
}
@media (width <= 768px) {
  .p-guidance__list {
    grid-template-columns: 1fr;
    gap: 2.1333333333rem;
  }
}
.p-guidance__item::marker {
  display: none;
}
.p-guidance__card {
  display: block;
  text-decoration: none;
  color: inherit;
  transition: opacity 0.2s ease;
}
.p-guidance__card:hover {
  opacity: 0.8;
}
.p-guidance__card-thumb {
  width: 100%;
  aspect-ratio: 16/10;
  overflow: hidden;
  border-radius: 0.5333333333rem;
  background: #e0e0e0;
  margin-bottom: 1.3333333333rem;
}
.p-guidance__card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.p-guidance__card-placeholder {
  width: 100%;
  height: 100%;
  background: #e0e0e0;
}
.p-guidance__card-body {
  text-align: center;
}
.p-guidance__card-title {
  font-size: 1.3333333333rem;
  font-weight: 700;
  color: #254779;
  margin-bottom: 0.6666666667rem;
  line-height: 1.4;
}
.p-guidance__card-desc {
  font-size: 0.9333333333rem;
  color: #555;
  line-height: 1.7;
}

.page-template-one-column-slim .l-content__body {
  margin-top: initial;
}
.page-template-one-column-slim .l-content {
  background: #f7f7f7;
}
.page-template-one-column-slim .l-article {
  background: #fff;
  padding: 2.6666666667rem 2.3333333333rem;
  border-radius: 0.6666666667rem;
}
@media (width <= 768px) {
  .page-template-one-column-slim .l-article {
    padding: 2rem 1rem;
  }
}
.page-template-one-column-slim .p-page__title {
  display: block;
}
.page-template-one-column-slim .c-pageTitle__main {
  text-align: center;
  font-size: 1.8666666667rem;
}
@media (width <= 768px) {
  .page-template-one-column-slim .c-pageTitle__main {
    font-size: 1.4666666667rem;
  }
}

/* ============================================================
   Thanks Page（お問い合わせ完了）
   ============================================================ */
.p-thanks__body {
  padding-top: 4rem;
  padding-bottom: 5.3333333333rem;
}
@media (width <= 768px) {
  .p-thanks__body {
    padding-top: 2.6666666667rem;
    padding-bottom: 3.7333333333rem;
  }
}
.p-thanks__inner {
  max-width: 42.6666666667rem;
  margin: 0 auto;
  text-align: center;
}
.p-thanks__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 5.3333333333rem;
  height: 5.3333333333rem;
  margin: 0 auto 2.1333333333rem;
  background: #254779;
  border-radius: 50%;
}
.p-thanks__icon svg {
  width: 2.6666666667rem;
  height: 2.6666666667rem;
  color: #fff;
  stroke-width: 2.5;
}
@media (width <= 768px) {
  .p-thanks__icon {
    width: 4.2666666667rem;
    height: 4.2666666667rem;
  }
  .p-thanks__icon svg {
    width: 2.1333333333rem;
    height: 2.1333333333rem;
  }
}
.p-thanks__title {
  font-size: 1.7333333333rem;
  font-weight: 700;
  color: #254779;
  line-height: 1.5;
  margin-bottom: 1.8666666667rem;
}
@media (width <= 768px) {
  .p-thanks__title {
    font-size: 1.3333333333rem;
    margin-bottom: 1.3333333333rem;
  }
}
.p-thanks__text {
  font-size: 1rem;
  line-height: 2;
  color: #333;
  margin-bottom: 1.3333333333rem;
}
@media (width <= 768px) {
  .p-thanks__text {
    font-size: 0.9333333333rem;
    text-align: left;
  }
}
.p-thanks__note {
  font-size: 0.8666666667rem;
  line-height: 1.9;
  color: #666;
  margin-bottom: 2.6666666667rem;
}
@media (width <= 768px) {
  .p-thanks__note {
    text-align: left;
    margin-bottom: 2.1333333333rem;
  }
}
.p-thanks__btns {
  display: flex;
  justify-content: center;
  gap: 1.0666666667rem;
  flex-wrap: wrap;
}

/* ============================================================
   Contact Page
   ============================================================ */
.p-contact .msc-page__intro {
  margin-bottom: 1.6rem;
}
@media (width <= 768px) {
  .p-contact .msc-page__intro {
    margin-bottom: 1.0666666667rem;
  }
}
.p-contact__form {
  padding-top: 2.4rem;
  padding-bottom: 4.8rem;
}
@media (width <= 768px) {
  .p-contact__form {
    padding-top: 1.6rem;
    padding-bottom: 3.2rem;
  }
}
.p-contact__form-wrap {
  max-width: 53.3333333333rem;
  margin: 0 auto;
}
.p-contact__note {
  background: #eef4fc;
  border-left: 0.2666666667rem solid #254779;
  border-radius: 0.4rem;
  padding: 1.2rem 1.4666666667rem;
  margin-bottom: 2.4rem;
}
.p-contact__note ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.p-contact__note li {
  font-size: 0.8666666667rem;
  line-height: 1.7;
  padding-left: 1.3333333333rem;
  position: relative;
  color: #444;
}
.p-contact__note li::before {
  content: "※";
  position: absolute;
  left: 0;
  top: 0;
  color: #254779;
  font-weight: 700;
}
.p-contact__line {
  max-width: 53.3333333333rem;
  margin: 0 auto 2.4rem;
  background: #f0faf2;
  border: 0.1333333333rem solid #06c755;
  border-radius: 0.8rem;
  padding: 1.3333333333rem 1.8666666667rem;
}
@media (width <= 768px) {
  .p-contact__line {
    padding: 1.0666666667rem 1.2rem;
  }
}
.p-contact__line-body {
  display: flex;
  align-items: center;
  gap: 1.0666666667rem;
}
@media (width <= 768px) {
  .p-contact__line-body {
    flex-wrap: wrap;
    gap: 0.8rem;
  }
}
.p-contact__line-icon {
  font-size: 2.9333333333rem;
  color: #06c755;
  line-height: 1;
  flex-shrink: 0;
}
@media (width <= 768px) {
  .p-contact__line-icon {
    font-size: 2.4rem;
  }
}
.p-contact__line-text {
  flex: 1;
  min-width: 0;
}
.p-contact__line-title {
  font-size: 1.0666666667rem;
  font-weight: 700;
  color: #1a1a1a;
  margin-bottom: 0.1333333333rem;
}
.p-contact__line-desc {
  font-size: 0.8666666667rem;
  color: #555;
  line-height: 1.6;
}
.p-contact__line-btn {
  flex-shrink: 0;
  background-image: url(../images/common/arrow-white.svg);
}
@media (width <= 768px) {
  .p-contact__line-btn {
    width: 100%;
    text-align: center;
  }
}
.p-contact__form-wrap [data-class=wpcf7cf_group] p + p {
  margin-top: 0.8rem;
}
.p-contact__form-wrap table.inquiry {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 2.1333333333rem;
}
.p-contact__form-wrap table.inquiry tr {
  border-bottom: 1px solid #dde4ef;
}
.p-contact__form-wrap table.inquiry tr:first-child {
  border-top: 1px solid #dde4ef;
}
.p-contact__form-wrap table.inquiry th {
  width: 13.3333333333rem;
  min-width: 10.6666666667rem;
  background: #f4f7fb;
  font-weight: 700;
  font-size: 0.9333333333rem;
  color: #254779;
  vertical-align: top;
  padding: 1.2rem 1.3333333333rem;
  text-align: left;
  white-space: nowrap;
}
@media (width <= 768px) {
  .p-contact__form-wrap table.inquiry th {
    display: block;
    width: 100%;
    padding: 0.8rem 0.9333333333rem 0.5333333333rem;
    white-space: normal;
    vertical-align: middle;
  }
}
.p-contact__form-wrap table.inquiry td {
  padding: 0.9333333333rem 1.3333333333rem;
  vertical-align: middle;
  font-size: 0.9333333333rem;
  line-height: 1.6;
}
@media (width <= 768px) {
  .p-contact__form-wrap table.inquiry td {
    display: block;
    width: 100%;
    padding: 0.5333333333rem 0.9333333333rem 1.0666666667rem;
  }
}
@media (width <= 768px) {
  .p-contact__form-wrap table.inquiry {
    display: block;
  }
  .p-contact__form-wrap table.inquiry tbody {
    display: block;
  }
  .p-contact__form-wrap table.inquiry tr {
    display: block;
  }
}
.p-contact__form-wrap .haveto {
  display: inline-block;
  background: #e05252;
  color: #fff;
  font-size: 0.7333333333rem;
  font-weight: 700;
  line-height: 1;
  padding: 0.2rem 0.4666666667rem;
  border-radius: 1.3333333333rem;
  margin-right: 0.4rem;
  vertical-align: middle;
  white-space: nowrap;
}
.p-contact__form-wrap .any {
  display: inline-block;
  background: #b0bec5;
  color: #fff;
  font-size: 0.7333333333rem;
  font-weight: 700;
  line-height: 1;
  padding: 0.2rem 0.4666666667rem;
  border-radius: 1.3333333333rem;
  margin-right: 0.4rem;
  vertical-align: middle;
  white-space: nowrap;
}
.p-contact__form-wrap input[type=text],
.p-contact__form-wrap input[type=email],
.p-contact__form-wrap input[type=tel] {
  height: 3.0666666667rem;
  width: 100%;
  border: 1px solid #c8d0dc;
  border-radius: 0.4rem;
  padding: 0 0.9333333333rem;
  font-size: 0.9333333333rem;
  background: #fff;
  box-sizing: border-box;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.p-contact__form-wrap input[type=text]:focus,
.p-contact__form-wrap input[type=email]:focus,
.p-contact__form-wrap input[type=tel]:focus {
  outline: none;
  border-color: #254779;
  box-shadow: 0 0 0 0.2rem rgba(0, 36, 107, 0.1);
}
.p-contact__form-wrap textarea {
  width: 100%;
  height: 9.3333333333rem;
  border: 1px solid #c8d0dc;
  border-radius: 0.4rem;
  padding: 0.6666666667rem 0.9333333333rem;
  font-size: 0.9333333333rem;
  background: #fff;
  resize: vertical;
  box-sizing: border-box;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.p-contact__form-wrap textarea:focus {
  outline: none;
  border-color: #254779;
  box-shadow: 0 0 0 0.2rem rgba(0, 36, 107, 0.1);
}
.p-contact__form-wrap select {
  height: 3.0666666667rem;
  border: 1px solid #c8d0dc;
  border-radius: 0.4rem;
  padding: 0 2.4rem 0 0.8rem;
  font-size: 0.9333333333rem;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 16 16'%3E%3Cpath fill='%2300246b' d='M4 6l4 4 4-4'/%3E%3C/svg%3E") no-repeat right 0.6666666667rem center/0.9333333333rem;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  box-sizing: border-box;
  transition: border-color 0.2s;
}
.p-contact__form-wrap select:focus {
  outline: none;
  border-color: #254779;
}
.p-contact__form-wrap .verticallist {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.6666666667rem 0.8rem;
  margin: 0.5333333333rem 0 0.2666666667rem;
  padding: 0;
}
@media (width <= 768px) {
  .p-contact__form-wrap .verticallist {
    grid-template-columns: repeat(2, 1fr);
    gap: 0.5333333333rem 0.6666666667rem;
  }
}
.p-contact__form-wrap .verticallist .wpcf7-list-item {
  margin: 0;
}
.p-contact__form-wrap .verticallist .wpcf7-list-item label {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.9333333333rem;
  line-height: 1.4;
  cursor: pointer;
  user-select: none;
}
.p-contact__form-wrap .verticallist .wpcf7-list-item input[type=checkbox] {
  flex-shrink: 0;
  width: 1.0666666667rem;
  height: 1.0666666667rem;
  margin: 0;
  accent-color: #254779;
  cursor: pointer;
}
.p-contact__form-wrap .spam {
  display: flex;
  align-items: center;
  gap: 0.5333333333rem;
  flex-wrap: wrap;
}
.p-contact__form-wrap .spam .wpcf7-form-control-wrap,
.p-contact__form-wrap .spam .wpcf7-acceptance {
  display: inline-flex !important;
  align-items: center;
}
.p-contact__form-wrap .spam label {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  cursor: pointer;
  margin: 0;
}
.p-contact__form-wrap .spam label input[type=checkbox] {
  flex-shrink: 0;
  width: 1.0666666667rem;
  height: 1.0666666667rem;
  margin: 0;
  accent-color: #254779;
  cursor: pointer;
}
.p-contact__form-wrap .spam .spam-text {
  font-size: 0.9333333333rem;
}
.p-contact__form-wrap .spam .spam-text a {
  color: #254779;
  text-decoration: underline;
}
.p-contact__form-wrap .spam .spam-text a:hover {
  opacity: 0.75;
}
.p-contact__form-wrap input#formbtn {
  display: block;
  margin: 2.4rem auto 0;
  height: 3.7333333333rem;
  min-width: 16rem;
  padding: 0 3.7333333333rem;
  background: #254779;
  color: #fff;
  font-size: 1.0666666667rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  border: none;
  border-radius: 3.7333333333rem;
  cursor: pointer;
  transition: opacity 0.2s, transform 0.15s, background 0.2s;
}
.p-contact__form-wrap input#formbtn:hover:not(:disabled) {
  opacity: 0.82;
  transform: translateY(-1px);
}
.p-contact__form-wrap input#formbtn:disabled {
  background: #b0bec5;
  cursor: not-allowed;
  opacity: 1;
}
.p-contact__form-wrap .wpcf7-not-valid-tip {
  display: block !important;
  color: #e05252;
  font-size: 0.8rem;
  margin-top: 0.2666666667rem;
}
.p-contact__form-wrap .wpcf7-response-output {
  margin: 1.6rem 0 0;
  padding: 1.0666666667rem 1.3333333333rem;
  border-radius: 0.5333333333rem;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.6;
  border: none !important;
}
.p-contact__form-wrap .wpcf7-response-output::before {
  flex-shrink: 0;
  font-size: 1.3333333333rem;
  line-height: 1;
  margin-top: 0.0666666667rem;
}
.p-contact__form-wrap .wpcf7-form.sent .wpcf7-response-output,
.p-contact__form-wrap .wpcf7-response-output.wpcf7-mail-sent-ok {
  display: flex !important;
  align-items: flex-start;
  gap: 0.8rem;
  background: #e8f5e9;
  color: #2e7d32;
  border-left: 0.2666666667rem solid #43a047 !important;
}
.p-contact__form-wrap .wpcf7-form.sent .wpcf7-response-output::before,
.p-contact__form-wrap .wpcf7-response-output.wpcf7-mail-sent-ok::before {
  content: "✓";
}
.p-contact__form-wrap .wpcf7-form.invalid .wpcf7-response-output,
.p-contact__form-wrap .wpcf7-form.unaccepted .wpcf7-response-output,
.p-contact__form-wrap .wpcf7-response-output.wpcf7-validation-errors {
  display: flex !important;
  align-items: flex-start;
  gap: 0.8rem;
  background: #fff8e1;
  color: #e65100;
  border-left: 0.2666666667rem solid #ffa726 !important;
}
.p-contact__form-wrap .wpcf7-form.invalid .wpcf7-response-output::before,
.p-contact__form-wrap .wpcf7-form.unaccepted .wpcf7-response-output::before,
.p-contact__form-wrap .wpcf7-response-output.wpcf7-validation-errors::before {
  content: "⚠";
  font-weight: 900;
}
.p-contact__form-wrap .wpcf7-form.failed .wpcf7-response-output,
.p-contact__form-wrap .wpcf7-form.spam .wpcf7-response-output,
.p-contact__form-wrap .wpcf7-response-output.wpcf7-mail-sent-ng,
.p-contact__form-wrap .wpcf7-response-output.wpcf7-spam-blocked {
  display: flex !important;
  align-items: flex-start;
  gap: 0.8rem;
  background: #fdecea;
  color: #c62828;
  border-left: 0.2666666667rem solid #e53935 !important;
}
.p-contact__form-wrap .wpcf7-form.failed .wpcf7-response-output::before,
.p-contact__form-wrap .wpcf7-form.spam .wpcf7-response-output::before,
.p-contact__form-wrap .wpcf7-response-output.wpcf7-mail-sent-ng::before,
.p-contact__form-wrap .wpcf7-response-output.wpcf7-spam-blocked::before {
  content: "✕";
}

.p-schedule-list__lead {
  text-align: center;
  font-size: 1rem;
  color: #555;
  margin-bottom: 2.6666666667rem;
}
.p-schedule-list__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.0666666667rem;
  max-width: 60rem;
  margin: 0 auto;
}
@media (width <= 768px) {
  .p-schedule-list__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 0.8rem;
  }
}
.p-schedule-list__card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5333333333rem;
  padding: 1.0666666667rem 1.3333333333rem;
  background: #fff;
  border: 0.1333333333rem solid #254779;
  border-radius: 0.6666666667rem;
  text-decoration: none;
  color: #254779;
  font-size: 0.9333333333rem;
  font-weight: 700;
  line-height: 1.5;
  transition: background 0.2s, color 0.2s;
}
.p-schedule-list__card:hover {
  background: #254779;
  color: #fff;
}
@media (width <= 768px) {
  .p-schedule-list__card {
    font-size: 0.8666666667rem;
    padding: 0.9333333333rem 0.9333333333rem;
  }
}
.p-schedule-list__card-name {
  flex: 1;
}
.p-schedule-list__card-arrow {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}

.p-facility__schedule-cta-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
}
@media (width <= 768px) {
  .p-facility__schedule-cta-inner {
    flex-direction: column;
    text-align: center;
  }
}
.p-facility__schedule-cta-title {
  display: flex;
  align-items: center;
  gap: 0.6666666667rem;
  font-size: 1.4666666667rem;
  font-weight: 700;
  color: #254779;
  margin-bottom: 0.5333333333rem;
}
@media (width <= 768px) {
  .p-facility__schedule-cta-title {
    justify-content: center;
    font-size: 1.2666666667rem;
  }
}
.p-facility__schedule-cta-icon {
  width: 1.8666666667rem;
  height: 1.8666666667rem;
}
.p-facility__schedule-cta-desc {
  font-size: 0.9333333333rem;
  color: #444;
  line-height: 1.7;
}
.p-facility__schedule-cta-btn {
  flex-shrink: 0;
}
@media (width <= 768px) {
  .p-facility__schedule-cta-btn {
    width: 100%;
    text-align: center;
  }
}

.p-schedule__weekly-img-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: 0.5333333333rem;
  max-width: 50.6666666667rem;
  margin: 0 auto;
}
.p-schedule__weekly-img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
@media (width <= 768px) {
  .p-schedule__weekly-img {
    min-width: 40rem;
  }
}
.p-schedule__annual {
  background: #f8f9fb;
}
.p-schedule__annual-year {
  margin-bottom: 2.6666666667rem;
}
.p-schedule__annual-year:last-child {
  margin-bottom: 0;
}
.p-schedule__annual-year-title {
  font-size: 1.2rem;
  font-weight: 700;
  color: #254779;
  margin-bottom: 1.0666666667rem;
  padding-bottom: 0.5333333333rem;
  border-bottom: 0.1333333333rem solid #254779;
}
.p-schedule__annual-pdfs {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
.p-schedule__annual-tab-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.2666666667rem 0.1333333333rem;
  margin-bottom: 0;
  border-bottom: 0.1333333333rem solid #254779;
}
.p-schedule__annual-tab-btn {
  padding: 0.5333333333rem 1.3333333333rem;
  font-size: 0.9333333333rem;
  font-weight: 600;
  color: #666;
  background: #eef2f7;
  border: 0.0666666667rem solid #c8d4e4;
  border-bottom: none;
  border-radius: 0.4rem 0.4rem 0 0;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
  line-height: 1.4;
}
.p-schedule__annual-tab-btn:hover {
  background: #dde8f5;
  color: #254779;
}
.p-schedule__annual-tab-btn.is-active {
  background: #fff;
  color: #254779;
  border-color: #254779;
  border-bottom-color: #fff;
  margin-bottom: -0.1333333333rem;
  padding-bottom: 0.6666666667rem;
  position: relative;
  z-index: 1;
}
.p-schedule__annual-tab-panels {
  border: 0.0666666667rem solid #254779;
  border-top: none;
  border-radius: 0 0 0.6666666667rem 0.6666666667rem;
  overflow: hidden;
}
.p-schedule__annual-tab-panel[hidden] {
  display: none;
}
.p-schedule__annual-pdf-block {
  background: #fff;
  border-radius: 0.6666666667rem;
  overflow: hidden;
  box-shadow: 0 2px 0.5333333333rem rgba(0, 0, 0, 0.06);
}
.p-schedule__annual-pdf-label {
  font-size: 0.9333333333rem;
  font-weight: 700;
  color: #254779;
  padding: 0.8rem 1.3333333333rem;
  background: #eef4fc;
  border-bottom: 0.0666666667rem solid #d8e4f0;
}
.p-schedule__annual-pdf-embed iframe {
  display: block;
  width: 100%;
  height: 54.6666666667rem;
  border: none;
}
@media (width <= 768px) {
  .p-schedule__annual-pdf-embed iframe {
    height: 32rem;
  }
}
.p-schedule__annual-pdf-dl {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.8rem 1.3333333333rem;
  font-size: 0.8666666667rem;
  color: #254779;
  text-decoration: none;
  font-weight: 600;
  border-top: 1px solid #e8eef5;
  transition: background 0.2s;
}
.p-schedule__annual-pdf-dl:hover {
  background: #eef4fc;
}
.p-schedule__facility-link-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
  background: #f8f9fb;
  border-radius: 0.8rem;
  padding: 1.6rem 2.1333333333rem;
}
@media (width <= 768px) {
  .p-schedule__facility-link-inner {
    flex-direction: column;
    padding: 1.3333333333rem 1.3333333333rem;
    text-align: center;
  }
}
.p-schedule__facility-link-text {
  font-size: 0.9333333333rem;
  color: #555;
  line-height: 1.7;
}
.p-schedule__others .p-schedule-list__grid {
  grid-template-columns: repeat(4, 1fr);
}
@media (width <= 768px) {
  .p-schedule__others .p-schedule-list__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Utilities */
.u-mt0 {
  margin-top: 0px;
}

.u-mb0 {
  margin-bottom: 0px;
}

.u-mt10 {
  margin-top: 10px;
}

.u-mb10 {
  margin-bottom: 10px;
}

.u-mt20 {
  margin-top: 20px;
}

.u-mb20 {
  margin-bottom: 20px;
}

.u-mt30 {
  margin-top: 30px;
}

.u-mb30 {
  margin-bottom: 30px;
}

.u-mt40 {
  margin-top: 40px;
}

.u-mb40 {
  margin-bottom: 40px;
}

.u-mt50 {
  margin-top: 50px;
}

.u-mb50 {
  margin-bottom: 50px;
}

.u-mt60 {
  margin-top: 60px;
}

.u-mb60 {
  margin-bottom: 60px;
}

.u-mt70 {
  margin-top: 70px;
}

.u-mb70 {
  margin-bottom: 70px;
}

.u-mt80 {
  margin-top: 80px;
}

.u-mb80 {
  margin-bottom: 80px;
}

.u-mt90 {
  margin-top: 90px;
}

.u-mb90 {
  margin-bottom: 90px;
}

.u-mt100 {
  margin-top: 100px;
}

.u-mb100 {
  margin-bottom: 100px;
}

.u-pc {
  display: block;
}
@media (width <= 768px) {
  .u-pc {
    display: none;
  }
}
.u-pc--inline {
  display: inline;
}
@media (width <= 768px) {
  .u-pc--inline {
    display: none;
  }
}
.u-pc--iblock {
  display: inline-block;
}
@media (width <= 768px) {
  .u-pc--iblock {
    display: none;
  }
}
.u-pc--table {
  display: table;
}
@media (width <= 768px) {
  .u-pc--table {
    display: none;
  }
}

.u-sp {
  display: none;
}
@media (width <= 768px) {
  .u-sp {
    display: block;
  }
}
.u-sp--inline {
  display: none;
}
@media (width <= 768px) {
  .u-sp--inline {
    display: inline;
  }
}
.u-sp--iblock {
  display: none;
}
@media (width <= 768px) {
  .u-sp--iblock {
    display: inline-block;
  }
}
.u-sp--table {
  display: none;
}
@media (width <= 768px) {
  .u-sp--table {
    display: table;
  }
}

.u-left-to-right {
  position: relative;
  overflow: hidden;
}
.u-left-to-right:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  background: linear-gradient(to right, #fff 0, transparent 20%);
}
@media (width <= 768px) {
  .u-left-to-right:after {
    background: none;
  }
}

.u-not-link {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
}

.u-ofit img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.u-pos--absolute {
  position: absolute;
}
.u-pos--fixed {
  position: fixed;
}
.u-pos--relative {
  position: relative;
}

.u-text--default {
  font-family: "Noto Sans JP", sans-serif;
}
.u-text--josefin {
  font-family: "Josefin Sans", sans-serif;
}
.u-text--center {
  text-align: center;
}
.u-text--left {
  text-align: left;
}
.u-text--right {
  text-align: right;
}
.u-text--thin {
  font-weight: 100;
}
.u-text--extra-light {
  font-weight: 200;
}
.u-text--light {
  font-weight: 300;
}
.u-text--regular {
  font-weight: 400;
}
.u-text--medium {
  font-weight: 500;
}
.u-text--semi-bold {
  font-weight: 600;
}
.u-text--bold {
  font-weight: 700;
}
.u-text--extra-bold {
  font-weight: 800;
}
.u-text--black {
  font-weight: 900;
}
.u-text--big {
  font-size: 1.4em;
}
.u-text--regular {
  font-size: 1em;
}
.u-text--small {
  font-size: 0.8em;
}
.u-text--wave {
  text-decoration: underline wavy #254779 0.1333333333rem;
  text-underline-offset: 0.5333333333rem;
}

.u-ellipsis {
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
}
.u-ellipsis--2 {
  -webkit-line-clamp: 2;
  line-clamp: 2;
}
.u-ellipsis--3 {
  -webkit-line-clamp: 3;
  line-clamp: 3;
}
.u-ellipsis--4 {
  -webkit-line-clamp: 4;
  line-clamp: 4;
}
.u-ellipsis--5 {
  -webkit-line-clamp: 5;
  line-clamp: 5;
}

.u-fade-in {
  opacity: 0;
  transform: translateY(2rem);
  transition: 0.8s;
}
@media (width <= 768px) {
  .u-fade-in {
    transform: translateY(2rem);
  }
}
.u-fade-in.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/********************************************
* Entry : 投稿・記事コンテンツスタイル
*
* Arkhe デフォルトスタイルの上書き。
* サイトのトンマナ（ネイビー / イエロー / シアン）に合わせた
* 記事フォーマット。今後の投稿すべてに適用される。
*
* カラー変数:
*   $color_main   : #254779 (ネイビー)
*   $color_accent : #face42 (イエロー)
*   $color_01     : #00b3d1 (シアン)
*   $color_light_blue : #dbfaff
********************************************/
.c-postContent {
  font-size: 1rem;
  line-height: 2.1333333333;
  color: #1e1e1e;
}
.c-postContent h1,
.c-postContent h2,
.c-postContent h3,
.c-postContent h4,
.c-postContent h5,
.c-postContent h6 {
  font-weight: 700;
  line-height: 1.45;
  color: #254779;
  margin-top: 2.5333333333rem;
  margin-bottom: 1rem;
}
.c-postContent h2 {
  font-size: 1.4rem;
  padding-bottom: 0.6666666667rem;
  border-bottom: 0.1333333333rem solid rgba(37, 71, 121, 0.2);
  position: relative;
}
@media (width <= 768px) {
  .c-postContent h2 {
    font-size: 1.2rem;
  }
}
.c-postContent h2::after {
  content: "";
  position: absolute;
  bottom: -0.1333333333rem;
  left: 0;
  width: 3.7333333333rem;
  height: 0.1333333333rem;
  background-color: #face42;
}
.c-postContent h3 {
  font-size: 1.2rem;
  padding-left: 0.9333333333rem;
  border-left: 0.2666666667rem solid #00b3d1;
}
@media (width <= 768px) {
  .c-postContent h3 {
    font-size: 1.0666666667rem;
  }
}
.c-postContent h4 {
  font-size: 1.0666666667rem;
  padding-left: 0.8rem;
  border-left: 0.2rem solid #face42;
}
@media (width <= 768px) {
  .c-postContent h4 {
    font-size: 1rem;
  }
}
.c-postContent h5 {
  font-size: 1rem;
  padding-bottom: 0.2rem;
  border-bottom: 0.0666666667rem dashed rgba(37, 71, 121, 0.3);
}
@media (width <= 768px) {
  .c-postContent h5 {
    font-size: 0.9333333333rem;
  }
}
.c-postContent h6 {
  font-size: 0.9333333333rem;
  color: rgba(37, 71, 121, 0.65);
}
@media (width <= 768px) {
  .c-postContent h6 {
    font-size: 0.8666666667rem;
  }
}
.c-postContent ul {
  padding-left: 0.6666666667rem;
}
.c-postContent .wp-block-quote,
.c-postContent blockquote {
  background-color: #f4f5f7;
  border-left: 0.2666666667rem solid rgba(37, 71, 121, 0.3);
  border-radius: 0 0.5333333333rem 0.5333333333rem 0;
  padding: 1.3333333333rem 1.6rem;
  margin: 1.8666666667rem 0;
  color: #1e1e1e;
  font-style: normal;
}
.c-postContent .wp-block-quote p,
.c-postContent blockquote p {
  margin-bottom: 0.5333333333rem;
}
.c-postContent .wp-block-quote p:last-child,
.c-postContent blockquote p:last-child {
  margin-bottom: 0;
}
.c-postContent .wp-block-quote cite,
.c-postContent blockquote cite {
  display: block;
  margin-top: 0.6666666667rem;
  font-size: 0.8666666667rem;
  color: rgba(37, 71, 121, 0.55);
}
.c-postContent .wp-block-quote cite::before,
.c-postContent blockquote cite::before {
  content: "— ";
}
.c-postContent .wp-block-table {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.c-postContent .wp-block-table table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9333333333rem;
  min-width: 18.6666666667rem;
}
.c-postContent .wp-block-table table thead tr {
  background-color: #254779 !important;
}
.c-postContent .wp-block-table table thead tr th {
  color: #fff !important;
  font-weight: 700;
  padding: 0.7333333333rem 1.0666666667rem;
  border: none !important;
  border-right: 0.0666666667rem solid rgba(255, 255, 255, 0.15) !important;
  background-color: transparent !important;
}
.c-postContent .wp-block-table table thead tr th:last-child {
  border-right: none !important;
}
.c-postContent .wp-block-table table tbody th {
  background-color: rgba(37, 71, 121, 0.06);
  color: #254779;
  font-weight: 700;
  padding: 0.6666666667rem 1.0666666667rem;
  border: 0.0666666667rem solid rgba(37, 71, 121, 0.14);
}
.c-postContent .wp-block-table table tbody td {
  padding: 0.6666666667rem 1.0666666667rem;
  border: 0.0666666667rem solid rgba(37, 71, 121, 0.14);
  vertical-align: middle;
}
.c-postContent ul.wp-block-list,
.c-postContent ul:not([class]) {
  list-style: none;
}
.c-postContent ul.wp-block-list > li,
.c-postContent ul:not([class]) > li {
  position: relative;
  padding-left: 1.4rem;
  margin-bottom: 0.3333333333rem;
}
.c-postContent ul.wp-block-list > li::before,
.c-postContent ul:not([class]) > li::before {
  content: "";
  position: absolute;
  left: 0.1333333333rem;
  top: 0.8rem;
  width: 0.5333333333rem;
  height: 0.5333333333rem;
  background-color: #00b3d1;
  border-radius: 50%;
}
.c-postContent ul.wp-block-list > li > ul,
.c-postContent ul:not([class]) > li > ul {
  margin-top: 0.2666666667rem;
}
.c-postContent ul.wp-block-list > li > ul > li::before,
.c-postContent ul:not([class]) > li > ul > li::before {
  background-color: transparent;
  border: 0.1333333333rem solid #00b3d1;
  width: 0.5333333333rem;
  height: 0.5333333333rem;
}
.c-postContent ul.wp-block-list > li > ul > li > ul > li::before,
.c-postContent ul:not([class]) > li > ul > li > ul > li::before {
  background-color: rgba(0, 179, 209, 0.45);
  width: 0.4rem;
  height: 0.4rem;
  border: none;
}
.c-postContent ol.wp-block-list,
.c-postContent ol:not([class]) {
  list-style: none;
  padding-left: 0;
  counter-reset: entry-ol-1;
}
.c-postContent ol.wp-block-list > li,
.c-postContent ol:not([class]) > li {
  position: relative;
  padding-left: 2.1333333333rem;
  margin-bottom: 0.3333333333rem;
  counter-increment: entry-ol-1;
}
.c-postContent ol.wp-block-list > li::before,
.c-postContent ol:not([class]) > li::before {
  content: counter(entry-ol-1);
  position: absolute;
  left: 0;
  top: 0.1333333333rem;
  width: 1.4666666667rem;
  height: 1.4666666667rem;
  background-color: #254779;
  color: #fff;
  font-size: 0.7333333333rem;
  font-weight: 700;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}
.c-postContent ol.wp-block-list > li > ol,
.c-postContent ol:not([class]) > li > ol {
  margin-top: 0.2666666667rem;
  counter-reset: entry-ol-2;
}
.c-postContent ol.wp-block-list > li > ol > li,
.c-postContent ol:not([class]) > li > ol > li {
  counter-increment: entry-ol-2;
}
.c-postContent ol.wp-block-list > li > ol > li::before,
.c-postContent ol:not([class]) > li > ol > li::before {
  content: counter(entry-ol-2);
  background-color: #00b3d1;
}
.c-postContent ol.wp-block-list > li > ol > li > ol,
.c-postContent ol:not([class]) > li > ol > li > ol {
  margin-top: 0.2666666667rem;
  counter-reset: entry-ol-3;
}
.c-postContent ol.wp-block-list > li > ol > li > ol > li,
.c-postContent ol:not([class]) > li > ol > li > ol > li {
  counter-increment: entry-ol-3;
}
.c-postContent ol.wp-block-list > li > ol > li > ol > li::before,
.c-postContent ol:not([class]) > li > ol > li > ol > li::before {
  content: counter(entry-ol-3);
  background-color: rgba(37, 71, 121, 0.4);
}
.c-postContent code {
  background-color: rgba(37, 71, 121, 0.07);
  color: #254779;
  font-size: 0.8666666667rem;
  padding: 0.1333333333rem 0.4rem;
  border-radius: 0.2666666667rem;
  border: 0.0666666667rem solid rgba(37, 71, 121, 0.15);
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
  word-break: break-word;
}
.c-postContent pre,
.c-postContent .wp-block-preformatted {
  background-color: #19253f;
  color: #c8deff;
  padding: 1.3333333333rem 1.6rem;
  border-radius: 0.5333333333rem;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  font-size: 0.8666666667rem;
  line-height: 1.75;
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
  margin: 1.8666666667rem 0;
  white-space: pre;
}
.c-postContent pre code,
.c-postContent .wp-block-preformatted code {
  background: none;
  border: none;
  padding: 0;
  color: inherit;
  font-size: inherit;
  border-radius: 0;
}
.c-postContent figcaption,
.c-postContent .wp-element-caption {
  font-size: 0.8666666667rem;
  color: rgba(30, 30, 30, 0.55);
  text-align: center;
  margin-top: 0.5333333333rem;
  line-height: 1.6;
  font-style: normal;
}
.c-postContent strong,
.c-postContent b {
  font-weight: 700;
}
.c-postContent a:not(.wp-block-button__link):not(.ark-block-button__link) {
  color: #00b3d1;
  text-decoration: underline;
  text-decoration-color: rgba(0, 179, 209, 0.4);
  text-underline-offset: 0.2rem;
}
.c-postContent a:not(.wp-block-button__link):not(.ark-block-button__link):hover {
  color: #254779;
  text-decoration-color: rgba(37, 71, 121, 0.5);
  opacity: 1;
}
.c-postContent hr,
.c-postContent .wp-block-separator {
  border: none;
  border-top: 0.0666666667rem solid rgba(37, 71, 121, 0.15);
  margin: 2.6666666667rem 0;
}
.c-postContent .wp-block-image {
  margin: 1.6rem 0;
}

.p-entry .c-pageTitle__main {
  font-size: 1.6rem;
  line-height: 1.4;
}
@media (width <= 768px) {
  .p-entry .c-pageTitle__main {
    font-size: 1.2666666667rem;
  }
}
.p-entry .c-postTerms__link {
  color: #254779;
  font-size: 0.8rem;
  font-weight: 700;
  background-color: rgba(37, 71, 121, 0.07);
  border-radius: 1.3333333333rem;
  padding: 0.2rem 0.6666666667rem;
  text-decoration: none;
  transition: background-color 0.2s, color 0.2s;
}
.p-entry .c-postTerms__link:hover {
  background-color: #254779;
  color: #fff;
  opacity: 1;
}

.p-entry__foot .c-pnNav {
  gap: 0.8rem;
  margin: 3.2rem 0 2.1333333333rem;
}
.p-entry__foot .c-pnNav__item {
  border: 0.0666666667rem solid rgba(37, 71, 121, 0.15);
  border-radius: 0.5333333333rem;
  overflow: hidden;
  transition: background-color 0.25s, border-color 0.25s;
}
.p-entry__foot .c-pnNav__item.-prev::before {
  content: "PREV";
  display: block;
  background-color: #00b3d1;
  color: #fff;
  font-size: 0.6666666667rem;
  font-weight: 700;
  padding: 0.3333333333rem 0.8rem;
  letter-spacing: 0.1333333333rem;
}
.p-entry__foot .c-pnNav__item.-next::before {
  content: "NEXT";
  display: block;
  background-color: #254779;
  color: #fff;
  font-size: 0.6666666667rem;
  font-weight: 700;
  padding: 0.3333333333rem 0.8rem;
  letter-spacing: 0.1333333333rem;
  text-align: right;
}
.p-entry__foot .c-pnNav__item:hover {
  background-color: #254779;
  border-color: #254779;
}
.p-entry__foot .c-pnNav__item:hover.-prev::before {
  background-color: rgb(0, 157.1602870813, 183.5);
}
.p-entry__foot .c-pnNav__item:hover.-next::before {
  background-color: rgba(0, 179, 209, 0.85);
}
.p-entry__foot .c-pnNav__item:hover .c-pnNav__link {
  color: #fff;
}
.p-entry__foot .c-pnNav__item:hover .c-pnNav__svg {
  color: #fff;
}
.p-entry__foot .c-pnNav__link {
  padding: 0.9333333333rem 1.3333333333rem;
  color: #1e1e1e;
}
.p-entry__foot .c-pnNav__link:hover {
  opacity: 1;
}
.p-entry__foot .c-pnNav__title {
  font-size: 0.8666666667rem;
  line-height: 1.5;
}
.p-entry__foot .c-pnNav__svg {
  color: #254779;
  transition: color 0.25s;
}
.p-entry__foot .c-bottomSection {
  margin-top: 3.2rem;
  padding-top: 2.6666666667rem;
  border-top: 0.1333333333rem solid rgba(37, 71, 121, 0.1);
}
.p-entry__foot .c-bottomSection__title {
  font-size: 1.2rem !important;
  color: #254779 !important;
  padding-bottom: 0.6666666667rem;
  border-bottom: 0.1333333333rem solid rgba(37, 71, 121, 0.2);
  position: relative;
}
.p-entry__foot .c-bottomSection__title::after {
  content: "";
  position: absolute;
  bottom: -0.1333333333rem;
  left: 0;
  width: 3.2rem;
  height: 0.1333333333rem;
  background-color: #face42;
}
.p-entry__foot .p-postList.-type-card {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin-left: 0;
  margin-right: 0;
  gap: 1.0666666667rem;
  padding-left: initial;
}
@media (width <= 768px) {
  .p-entry__foot .p-postList.-type-card {
    grid-template-columns: 1fr;
  }
}
.p-entry__foot .p-postList.-type-card .p-postList__item {
  width: 100%;
  padding: 0;
  margin-bottom: 0;
  border-radius: 0.5333333333rem;
  overflow: hidden;
  box-shadow: 0 0.1333333333rem 0.8rem rgba(37, 71, 121, 0.08);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  background-color: #fff;
}
.p-entry__foot .p-postList.-type-card .p-postList__item:hover {
  transform: translateY(-0.2666666667rem);
  box-shadow: 0 0.5333333333rem 1.6rem rgba(37, 71, 121, 0.15);
}
.p-entry__foot .p-postList.-type-card .p-postList__item:hover .c-postThumb__img {
  transform: scale(1.05);
}
.p-entry__foot .p-postList.-type-card .p-postList__body {
  padding: 0.9333333333rem 1.0666666667rem;
}
.p-entry__foot .p-postList.-type-card .p-postList__title {
  font-size: 0.8666666667rem;
  font-weight: 700;
  color: #254779;
  line-height: 1.55;
}
.p-entry__foot .p-postList.-type-card .p-postList__times {
  font-size: 0.7333333333rem;
  color: rgba(30, 30, 30, 0.5);
  margin-top: 0.4rem;
}

.l-sidebar {
  font-size: 0.8666666667rem;
}
.l-sidebar .c-widget {
  background-color: rgba(37, 71, 121, 0.03);
  border-radius: 0.6666666667rem;
  padding: 1.3333333333rem 1.3333333333rem;
}
.l-sidebar .c-widget + .c-widget {
  margin-top: 1.0666666667rem !important;
}
.l-sidebar .c-widget > .wp-block-group > .wp-block-group__inner-container > h2,
.l-sidebar .c-widget .c-widget__title,
.l-sidebar .c-widget h2.widgettitle {
  font-size: 0.8666666667rem !important;
  font-weight: 700 !important;
  color: #254779 !important;
  padding-left: 0.6666666667rem !important;
  padding-bottom: 0 !important;
  border-left: 0.2rem solid #face42;
  border-bottom: none;
  margin-bottom: 0.9333333333rem !important;
}
.l-sidebar .c-widget > .wp-block-group > .wp-block-group__inner-container > h2::before, .l-sidebar .c-widget > .wp-block-group > .wp-block-group__inner-container > h2::after,
.l-sidebar .c-widget .c-widget__title::before,
.l-sidebar .c-widget .c-widget__title::after,
.l-sidebar .c-widget h2.widgettitle::before,
.l-sidebar .c-widget h2.widgettitle::after {
  display: none !important;
}
.l-sidebar .c-widget .wp-block-latest-posts,
.l-sidebar .c-widget .wp-block-archives-list,
.l-sidebar .c-widget .wp-block-categories-list {
  border-top: none !important;
  border-bottom: none !important;
}
.l-sidebar .c-widget .wp-block-latest-posts li,
.l-sidebar .c-widget .wp-block-archives-list li,
.l-sidebar .c-widget .wp-block-categories-list li {
  border-top: none !important;
  border-bottom: 0.0666666667rem solid rgba(37, 71, 121, 0.08) !important;
  padding: 0.5333333333rem 0 !important;
  margin: 0 !important;
}
.l-sidebar .c-widget .wp-block-latest-posts li:last-child,
.l-sidebar .c-widget .wp-block-archives-list li:last-child,
.l-sidebar .c-widget .wp-block-categories-list li:last-child {
  border-bottom: none !important;
  padding-bottom: 0 !important;
}
.l-sidebar .c-widget .wp-block-latest-posts li a,
.l-sidebar .c-widget .wp-block-archives-list li a,
.l-sidebar .c-widget .wp-block-categories-list li a {
  color: #1e1e1e;
  text-decoration: none;
  font-size: 0.8666666667rem;
  padding: 0 !important;
  display: block;
  line-height: 1.5;
  transition: color 0.2s;
}
.l-sidebar .c-widget .wp-block-latest-posts li a:hover,
.l-sidebar .c-widget .wp-block-archives-list li a:hover,
.l-sidebar .c-widget .wp-block-categories-list li a:hover {
  color: #00b3d1;
  opacity: 1;
}
.l-sidebar .c-widget .wp-block-latest-comments {
  border-top: none !important;
  border-bottom: none !important;
}
.l-sidebar .c-widget .wp-block-latest-comments .wp-block-latest-comments__comment {
  border-bottom: 0.0666666667rem solid rgba(37, 71, 121, 0.08) !important;
  padding: 0.5333333333rem 0 !important;
  font-size: 0.8rem;
  line-height: 1.5;
}
.l-sidebar .c-widget .wp-block-latest-comments .wp-block-latest-comments__comment:last-child {
  border-bottom: none !important;
}
.l-sidebar .c-widget .wp-block-latest-comments .wp-block-latest-comments__comment a {
  color: #00b3d1;
  text-decoration: none;
}
.l-sidebar .c-widget .wp-block-latest-comments .wp-block-latest-comments__comment a:hover {
  color: #254779;
  opacity: 1;
}
.l-sidebar .widget_search .wp-block-search__inside-wrapper {
  display: flex;
  gap: 0.5333333333rem;
}
.l-sidebar .widget_search .wp-block-search__input {
  flex: 1;
  border: 0.0666666667rem solid rgba(37, 71, 121, 0.2);
  border-radius: 0.4rem;
  padding: 0.4666666667rem 0.6666666667rem;
  font-size: 0.8666666667rem;
  color: #1e1e1e;
  background-color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.l-sidebar .widget_search .wp-block-search__input:focus {
  outline: none;
  border-color: #00b3d1;
  box-shadow: 0 0 0 0.2rem rgba(0, 179, 209, 0.15);
}
.l-sidebar .widget_search .wp-block-search__button, .l-sidebar .widget_search .wp-block-search__button.wp-element-button {
  background-color: #254779;
  color: #fff;
  border: none;
  border-radius: 0.4rem;
  padding: 0.4666666667rem 0.9333333333rem;
  font-size: 0.8666666667rem;
  font-weight: 700;
  cursor: pointer;
  font-family: "Noto Sans JP", sans-serif;
  transition: background-color 0.2s;
}
.l-sidebar .widget_search .wp-block-search__button:hover, .l-sidebar .widget_search .wp-block-search__button.wp-element-button:hover {
  background-color: #00b3d1;
}

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