@charset "UTF-8";
@font-face {
  font-family: "dinpro_bold";
  src: url("../fonts/dinpro_bold.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "dinpro_medium";
  src: url("../fonts/DINPro-Medium.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Koburina_Gothic_Std";
  src: url("../fonts/こぶりなゴシック Std W6.otf") format("opentype");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "sora_to_hikouki";
  src: url("../fonts/空とひこうき.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
}
/* -----------------------
  unity
----------------------- */
@media screen and (min-width: 768px) {
  .sp {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
}

html {
  scroll-behavior: smooth;
}
@media screen and (max-width: 767px) {
  html {
    scroll-padding-top: 10%;
  }
}

* {
  scroll-behavior: smooth;
}
@media screen and (min-width: 768px) {
  * {
    scroll-padding-top: 25%;
  }
}

body {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  color: #2E2E2E;
}
@media screen and (max-width: 767px) {
  body.is-active {
    overflow: hidden;
  }
}
@media screen and (max-width: 767px) {
  body.is-active-02 {
    overflow: hidden;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 400;
  line-height: 1.5;
}

img {
  width: 100%;
  object-fit: contain;
}

/* -----------------------
common
----------------------- */
.whopper {
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1;
  overflow-y: scroll;
}
@media screen and (max-width: 767px) {
  .whopper {
    display: contents;
  }
}

.pc_bg {
  position: fixed;
  width: 100%;
  height: 100vh;
  background-image: url("../img/common/pc_bg.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  pointer-events: none;
  display: flex;
}
@media screen and (max-width: 767px) {
  .pc_bg {
    display: none;
  }
}
.pc_bg--banner {
  display: block;
  pointer-events: auto;
  width: 245px;
  position: absolute;
  bottom: 15px;
  left: 30px;
}
.pc_bg--banner-b {
  display: block;
  pointer-events: auto;
  width: 245px;
  position: absolute;
  bottom: 116px;
  left: 30px;
}
.main_view--area {
  background-color: #F2F7FD;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .main_view--area {
    position: absolute;
    top: 0;
    right: 7.3206442167vw;
    width: 414px;
    z-index: 10;
  }
}
@media screen and (max-width: 767px) {
  .main_view--area {
    width: 100%;
  }
}

/* -----------------------
  header
----------------------- */
.header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  pointer-events: none;
}
.header.header__front .header--inner {
  background-color: transparent;
}
.header--inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 768px) {
  .header--inner {
    padding: 17px 23px;
  }
}
@media screen and (max-width: 767px) {
  .header--inner {
    padding: 2.4154589372vw 3.1400966184vw;
    background-color: #FFF;
  }
}
.header--logo {
  display: block;
  pointer-events: all;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 768px) {
  .header--logo {
    width: 244px;
  }
}
@media screen and (max-width: 767px) {
  .header--logo {
    width: 56.038647343vw;
  }
}
.header--logo .TL {
  display: block;
  width: 100%;
}
.header .burger {
  background-color: #B41A7A;
  border-radius: 50%;
  pointer-events: all;
  cursor: pointer;
  aspect-ratio: 1;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 768px) {
  .header .burger {
    width: 54px;
  }
}
@media screen and (max-width: 767px) {
  .header .burger {
    width: 10.6280193237vw;
  }
}
.header .burger span {
  display: block;
  width: 55%;
  background-color: #FFF;
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: all 0.3s ease;
}
@media screen and (min-width: 768px) {
  .header .burger span {
    height: 3px;
  }
}
@media screen and (max-width: 767px) {
  .header .burger span {
    height: 0.7246376812vw;
  }
}
.header .burger span:nth-child(1) {
  top: 40%;
}
.header .burger span:nth-child(2) {
  top: 60%;
}
.header--nav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../img/common/nav_bg.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 9;
  pointer-events: all;
  transform: translateY(-100%);
  opacity: 0;
  transition: transform 0.5s ease, opacity 0.3s 0.1s ease;
}
@media screen and (min-width: 768px) {
  .header--nav {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 100px 50px;
  }
}
@media screen and (max-width: 767px) {
  .header--nav {
    background-position: left 48% top;
  }
}
.header--nav::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  mix-blend-mode: multiply;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .header--nav::before {
    background-color: #D5E5EF;
  }
}
@media screen and (max-width: 767px) {
  .header--nav::before {
    background-color: #AABDC9;
  }
}
.header--nav--area {
  width: 100%;
  z-index: 2;
  position: relative;
}
@media screen and (min-width: 768px) {
  .header--nav--area {
    max-width: 890px;
  }
}
@media screen and (max-width: 767px) {
  .header--nav--area {
    max-height: 100%;
    overflow-y: scroll;
  }
}
.header--nav--area--inner {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .header--nav--area--inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
  }
}
@media screen and (max-width: 767px) {
  .header--nav--area--inner {
    padding: 24.154589372vw 4.8309178744vw 19.3236714976vw;
  }
}
@media screen and (min-width: 768px) {
  .header--nav--area--inner .nav--links {
    width: 270px;
    flex-shrink: 0;
  }
}
.header--nav--area--inner .nav--links--banner {
  width: 100%;
}
.header--nav--area--inner .nav--links--banner_flexr {
  display: flex;
  gap: 1.690821256vw;
}
.header--nav--area--inner .nav--links--banner ul {
  display: flex;
  flex-direction: column;
  gap: 2.4154589372vw;
}
.header--nav--area--inner .nav--links--banner ul li {
  width: 100%;
}
.header--nav--area--inner .nav--links--banner ul li a {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .header--nav--area--inner .nav--links--main {
    margin: 9.6618357488vw 0 14.4927536232vw;
  }
}
.header--nav--area--inner .nav--links--main ul {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .header--nav--area--inner .nav--links--main ul {
    gap: 25px;
  }
}
@media screen and (max-width: 767px) {
  .header--nav--area--inner .nav--links--main ul {
    gap: 6.038647343vw;
  }
}
.header--nav--area--inner .nav--links--main ul li a {
  display: block;
  width: 100%;
  color: #FFF;
  border-bottom: 1px solid #FFF;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  .header--nav--area--inner .nav--links--main ul li a {
    font-size: 16px;
    padding-bottom: 10px;
  }
}
@media screen and (max-width: 767px) {
  .header--nav--area--inner .nav--links--main ul li a {
    font-size: 4.347826087vw;
    padding-bottom: 2.4154589372vw;
  }
}
@media screen and (max-width: 767px) {
  .header--nav--area--inner .nav--links--ather {
    margin: 9.6618357488vw 0 0;
  }
}
.header--nav--area--inner .nav--links--ather ul {
  display: flex;
}
@media screen and (min-width: 768px) {
  .header--nav--area--inner .nav--links--ather ul {
    flex-direction: column;
    width: 116px;
    gap: 10px;
    margin-top: 58px;
  }
}
@media screen and (max-width: 767px) {
  .header--nav--area--inner .nav--links--ather ul {
    --gap: calc((27 / 414) * 100vw);
    --item: 3;
    gap: var(--gap) var(--gap);
  }
}
@media screen and (max-width: 767px) {
  .header--nav--area--inner .nav--links--ather ul li {
    width: calc((100% - var(--gap) * (var(--item) - 1)) / var(--item));
  }
}
.header--nav--area--inner .nav--links--ather ul li a {
  display: block;
  width: 100%;
  color: #FFF;
  border-bottom: 1px solid #FFF;
}
@media screen and (min-width: 768px) {
  .header--nav--area--inner .nav--links--ather ul li a {
    font-size: 14px;
    padding-bottom: 6px;
  }
}
@media screen and (max-width: 767px) {
  .header--nav--area--inner .nav--links--ather ul li a {
    font-size: 3.3816425121vw;
    padding-bottom: 0.9661835749vw;
  }
}
@media screen and (max-width: 767px) {
  .header--nav--area--inner .nav--links--sns {
    margin: 9.6618357488vw 0 0;
  }
}
.header--nav--area--inner .nav--links--sns ul {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .header--nav--area--inner .nav--links--sns ul {
    gap: 40px;
    margin-top: 30px;
  }
}
@media screen and (max-width: 767px) {
  .header--nav--area--inner .nav--links--sns ul {
    gap: 8.9371980676vw;
  }
}
@media screen and (min-width: 768px) {
  .header--nav--area--inner .nav--links--sns ul li {
    width: 32px;
  }
}
@media screen and (max-width: 767px) {
  .header--nav--area--inner .nav--links--sns ul li {
    width: 7.729468599vw;
  }
}
.header--nav--area--inner .nav--links--sns ul li a {
  display: block;
  width: 100%;
}
.header--nav--area--inner .nav--banner {
  max-width: 526px;
}
.header--nav--area--inner .nav--banner ul {
  --gap: 11px;
  --item: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 13px var(--gap);
  width: 100%;
}
.header--nav--area--inner .nav--banner ul li {
  width: calc((100% - var(--gap) * (var(--item) - 1)) / var(--item));
}
.header--nav--area--inner .nav--banner ul li:nth-last-child(-n+3) {
  --item: 3;
  width: calc((100% - var(--gap) * (var(--item) - 1)) / var(--item));
}
.header--nav--area--inner .nav--banner ul li a {
  width: 100%;
}
.header.is-active .burger span {
  top: 50%;
}
.header.is-active .burger span:nth-child(1) {
  transform: translate(-50%, -50%) rotate(200deg);
}
.header.is-active .burger span:nth-child(2) {
  transform: translate(-50%, -50%) rotate(-200deg);
}
.header.is-active .header--nav {
  transform: translateY(0%);
  opacity: 1;
}

/* -----------------------
  footer
----------------------- */
.footer {
  position: relative;
  z-index: 2;
}
.footer--document {
  background-color: #ECF3F8;
  padding: 51px 35px 52px;
}
@media screen and (max-width: 767px) {
  .footer--document {
    padding: 12.3188405797vw 8.4541062802vw 12.5603864734vw;
  }
}
.footer--document--inner {
  display: flex;
  gap: 25px;
}
@media screen and (max-width: 767px) {
  .footer--document--inner {
    gap: 6.038647343vw;
  }
}
.footer--document--inner .img--area {
  width: 161px;
}
@media screen and (max-width: 767px) {
  .footer--document--inner .img--area {
    width: 38.8888888889vw;
  }
}
.footer--document--inner .img--area img {
  filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.1));
}
.footer--document--inner .txt--area {
  margin-top: 15px;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .footer--document--inner .txt--area {
    margin-top: 3.6231884058vw;
  }
}
.footer--document--inner .txt--area .ttl .TL {
  font-family: "Gotham", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.1em;
  font-size: 13px;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .footer--document--inner .txt--area .ttl .TL {
    font-size: 3.1400966184vw;
  }
}
.footer--document--inner .txt--area .txt {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .footer--document--inner .txt--area .txt {
    margin-top: 4.8309178744vw;
  }
}
.footer--document--inner .txt--area .txt .TX {
  font-size: 28px;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .footer--document--inner .txt--area .txt .TX {
    font-size: 6.7632850242vw;
  }
}
.footer--document--inner .txt--area .btn {
  display: block;
  width: 130px;
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .footer--document--inner .txt--area .btn {
    width: 31.4009661836vw;
    margin-top: 7.2463768116vw;
  }
}
.footer .footer--area {
  padding: 50px 20px 24px;
  background-color: #FFF;
}
@media screen and (max-width: 767px) {
  .footer .footer--area {
    padding: 12.077294686vw 4.8309178744vw 5.7971014493vw;
  }
}
.footer .footer--area .footer--logo {
  width: 184px;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .footer .footer--area .footer--logo {
    width: 44.4444444444vw;
  }
}
.footer .footer--area .footer--sns {
  margin-top: 57px;
}
@media screen and (max-width: 767px) {
  .footer .footer--area .footer--sns {
    margin-top: 13.768115942vw;
  }
}
.footer .footer--area .footer--sns ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 50px;
  margin-top: 57px;
}
@media screen and (max-width: 767px) {
  .footer .footer--area .footer--sns ul {
    gap: 12.077294686vw;
  }
}
.footer .footer--area .footer--sns ul li a {
  width: 40px;
  display: block;
}
@media screen and (max-width: 767px) {
  .footer .footer--area .footer--sns ul li a {
    width: 9.6618357488vw;
  }
}
.footer .footer--address {
  margin-top: 22px;
}
@media screen and (max-width: 767px) {
  .footer .footer--address {
    margin-top: 5.3140096618vw;
  }
}
.footer .footer--address .TX {
  text-align: center;
  font-size: 12px;
}
@media screen and (max-width: 767px) {
  .footer .footer--address .TX {
    font-size: 2.8985507246vw;
  }
}
.footer .footer--address .TX a {
  color: #2E2E2E;
  text-decoration: underline;
}
.footer .footer--copyright {
  padding: 9px 20px 10px;
  background-color: #000;
}
@media screen and (max-width: 767px) {
  .footer .footer--copyright {
    padding: 2.1739130435vw 4.8309178744vw 2.4154589372vw;
  }
}
.footer .footer--copyright .TX {
  width: 115px;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .footer .footer--copyright .TX {
    width: 27.7777777778vw;
  }
}

/* -----------------------
  C_oc-ttl
----------------------- */
.C_oc-ttl {
  padding: 10px 0 11px;
  background: #B41A7A;
}
@media screen and (max-width: 767px) {
  .C_oc-ttl {
    padding: 2.4154589372vw 0 2.6570048309vw;
  }
}
.C_oc-ttl .TL {
  font-family: "Gotham", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.1em;
  font-size: 19px;
  line-height: 1;
  font-weight: 700;
  color: #FFF;
  text-align: center;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .C_oc-ttl .TL {
    font-size: 4.5893719807vw;
  }
}

/* -----------------------
  C_circle_contents-ttl
----------------------- */
.C_circle_contents-ttl {
  color: #FFF;
}
.C_circle_contents-ttl--inner {
  display: flex;
  align-items: baseline;
  gap: 10px;
  padding: 22px 40px 26px;
}
@media screen and (max-width: 767px) {
  .C_circle_contents-ttl--inner {
    gap: 2.4154589372vw;
    padding: 5.3140096618vw 9.6618357488vw 6.2801932367vw;
  }
}
.C_circle_contents-ttl--inner .TL {
  font-family: "Gotham", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.1em;
  font-size: 38px;
  line-height: 1;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .C_circle_contents-ttl--inner .TL {
    font-size: 9.1787439614vw;
  }
}
.C_circle_contents-ttl--inner .TX {
  font-size: 16px;
  line-height: 1;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .C_circle_contents-ttl--inner .TX {
    font-size: 3.8647342995vw;
  }
}

/* -----------------------
	online
----------------------- */
.oc_sticky-banner {
  opacity: 1;
  transition: opacity 0.3s ease;
}
.oc_sticky-banner.is-hidden {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

@media screen and (max-width: 767px) {
  .front_banners {
    opacity: 1;
    transition: opacity 0.3s ease;
  }
  .front_banners.is-hidden {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
  }
}

.online-slider {
  position: relative;
  padding-bottom: 32px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.online-slider__list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.online-slider .slick-list {
  overflow: hidden;
  margin: 0 auto;
}
.online-slider .slider-item {
  outline: none;
}
.online-slider .slider-item img {
  display: block;
  width: 100%;
  max-width: 354px;
  height: auto;
  margin: 0 auto;
}
.online-slider .slick-dots {
  position: static;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}
.online-slider .slick-dots li {
  margin: 0;
  width: auto;
  height: auto;
}
.online-slider .slick-dots li button {
  width: 8px;
  height: 8px;
  padding: 0;
  border-radius: 50%;
  background-color: #FFF;
  transition: background-color 0.2s ease, transform 0.2s ease;
}
.online-slider .slick-dots li button::before {
  display: none;
}
.online-slider .slick-dots li.slick-active button {
  background-color: #16a06b;
  transform: scale(1.15);
}
.online-slider .online-swipe {
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 152px;
  height: 152px;
  pointer-events: none;
  animation: online-swipe-pulse 2.8s ease-in-out infinite;
  transition: opacity 0.4s ease, visibility 0.4s ease;
}
.online-slider .online-swipe img {
  display: block;
  width: 100%;
  height: auto;
}
.online-slider .online-swipe.is-hidden {
  animation: none;
  opacity: 0;
  visibility: hidden;
}

.page_online-oc {
  background-color: #16a06b;
  position: relative;
}
.page_online-oc .online_kv .TL {
  display: block;
  width: 100%;
  margin: 0;
}
@media screen and (min-width: 768px) {
  .page_online-oc .online_kv .TL {
    height: 100vh;
    min-height: 741px;
    max-height: 850px;
    overflow: hidden;
  }
}
.page_online-oc .online_kv .TL img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.page_online-oc .online_worry {
  position: relative;
  margin-top: 56px;
}
.page_online-oc .online_worry .online-slider-bottom {
  position: absolute;
  bottom: 0;
}
.page_online-oc .online_worry .online-slider-bottom.online-slider-bottom-1 {
  background-image: url("../img//online/online-slider-bottom-1.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  left: -10px;
  width: 171px;
  height: 164px;
}
.page_online-oc .online_worry .online-slider-bottom.online-slider-bottom-2 {
  background-image: url("../img//online/online-slider-bottom-2.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  right: 0;
  width: 161px;
  height: 170px;
}
.page_online-oc .online-reassurance {
  background-color: #ffec07;
  position: relative;
  padding-bottom: 60px;
}
.page_online-oc .online-reassurance-img {
  padding-top: 67px;
}
.page_online-oc .online-reassurance::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 0;
  width: 100%;
  height: 54px;
  background: #16a06b;
  /* 緑 */
  clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 50% 100%, 0% 0%);
}
.page_online-oc .online-reassurance-TX {
  font-size: 18px;
  text-align: center;
  line-height: 2;
  letter-spacing: 0.08em;
  font-family: "Koburina_Gothic_Std", sans-serif;
  font-weight: 600;
  font-style: normal;
}
.page_online-oc .online-reassurance-slider {
  margin-top: 104px;
}
.page_online-oc .online_know {
  padding: 105px 0 110px;
}
.page_online-oc .online_know .TX-img {
  width: 296px;
  height: 106px;
  margin: 0 auto;
}
.page_online-oc .online_know--contents {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-top: 70px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.page_online-oc .online_know--item {
  align-self: stretch;
  width: 100%;
  max-width: 100%;
  text-align: center;
  box-sizing: border-box;
}
.page_online-oc .online_know--item .icon {
  width: 57px;
  height: 66px;
  margin: 0 auto;
}
.page_online-oc .online_know--item .icon.icon01 {
  background-image: url("../img//online/online-know-icon01.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_online-oc .online_know--item .icon.icon02 {
  background-image: url("../img//online/online-know-icon02.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_online-oc .online_know--item .icon.icon03 {
  background-image: url("../img//online/online-know-icon03.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_online-oc .online_know--item .TL {
  color: #FFF;
  font-size: 27px;
  font-weight: 400;
  font-family: "Koburina_Gothic_Std", sans-serif;
  font-weight: 600;
  font-style: normal;
}
.page_online-oc .online_know--item .online_know-slider {
  margin-top: 25px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.page_online-oc .online_know--item .online_know-slider .slick-dots li.slick-active button {
  background-color: #FFEC07;
}
.page_online-oc .online_know--item .online_know--item03 {
  width: 354px;
  margin: 25px auto 0;
}
.page_online-oc .online_date {
  position: relative;
  background-color: #FFEC07;
  padding: 78px 0 136px;
}
.page_online-oc .online_date--ttl {
  width: 108px;
  margin: 0 auto;
}
.page_online-oc .online_date-content {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  width: 374px;
  margin: 44px auto 0;
}
.page_online-oc .online_date-content--item {
  background-color: #FFF;
  border-radius: 18px;
  width: 182px;
  min-width: 182px;
  height: 98px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.page_online-oc .online_date-content--item img {
  height: 64px;
  width: auto;
  margin: 0 auto;
}
.page_online-oc .online_date .online-date-img {
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: -13px;
  width: 253px;
  height: 169px;
  background-image: url("../img//online/online-date-img.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_online-oc .online_join {
  background-color: #FFEC07;
  padding: 84px 0 93px;
}
.page_online-oc .online_join-ttl {
  width: 146px;
  margin: 0 auto;
}
.page_online-oc .online_join-contents {
  width: 318px;
  margin: 44px auto 0;
}
.page_online-oc .online_join-contents ul {
  display: flex;
  flex-direction: column;
  gap: 45px;
}
.page_online-oc .online_join-contents .item {
  position: relative;
  background-color: #FFF;
  border-radius: 11px;
  width: 100%;
  padding: 15px 28.5px 23px;
  color: #1B6A4C;
  font-family: "Koburina_Gothic_Std", sans-serif;
  font-weight: 600;
  font-style: normal;
  letter-spacing: 0.08em;
}
.page_online-oc .online_join-contents .item.TL-only {
  padding: 15px 28.5px 15px;
}
.page_online-oc .online_join-contents .item .TL {
  font-size: 23px;
  text-align: center;
}
.page_online-oc .online_join-contents .item .TX {
  font-size: 17px;
  line-height: 1.5;
  margin-top: 22px;
  letter-spacing: 0.08em;
}
.page_online-oc .online_join-contents .item .btn-wrap {
  display: flex;
  flex-direction: column;
  gap: 7px;
  align-items: center;
  margin-top: 30px;
  padding-bottom: 20px;
}
.page_online-oc .online_join-contents .item .btn-wrap .btn {
  background-color: #16A06B;
  width: 237px;
  height: 45px;
  border-radius: 999px;
}
.page_online-oc .online_join-contents .item .btn-wrap .btn-TX {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #FFF;
  line-height: 45px;
  text-align: center;
  font-size: 16px;
}
.page_online-oc .online_join-contents .item .btn-wrap .btn:hover {
  background-color: #FFEC07;
  transition: background-color 0.3s ease;
}
.page_online-oc .online_join-contents .item .btn-wrap .btn:hover .btn-TX {
  color: #535353;
  transition: color 0.3s ease;
}
.page_online-oc .online_join-contents .item::after {
  content: "";
  position: absolute;
  bottom: -33px;
  left: 50%;
  transform: translateX(-50%);
  width: 23px;
  height: 20px;
  background-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="23" height="20" viewBox="0 0 23 20"><path id="多角形_67" data-name="多角形 67" d="M11.5,0,23,20H0Z" transform="translate(23 20) rotate(180)" fill="%23fff"/></svg>');
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_online-oc .online_join-contents .item:last-child::after {
  display: none;
}
.page_online-oc .online_entry {
  padding: 119px 0 108px;
}
.page_online-oc .online_entry-ttl {
  width: 299px;
  margin: 0 auto;
}
.page_online-oc .online_entry-contents {
  position: relative;
  width: 334px;
  height: 256px;
  margin: 36.7px auto 0;
  background-image: url("../img//online/online-application-link.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_online-oc .online_entry-contents .entry-link {
  position: absolute;
  bottom: 21.5px;
  left: 50%;
  transform: translateX(-50%);
  width: 204px;
  height: 39px;
  background-image: url("../img//online/online-entry.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: opacity 0.3s ease;
}
.page_online-oc .online_entry-contents .entry-link:hover {
  background-image: url("../img//online/online-entry-hover.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: opacity 0.3s ease;
}
.page_online-oc .online_entry .online_contact {
  margin-top: 113px;
}
.page_online-oc .online_entry .online_contact-ttl {
  width: 218px;
  margin: 0 auto;
}
.page_online-oc .online_entry .online_contact-contents {
  border: 1px solid #FFF;
  border-radius: 23px;
  width: 315px;
  height: 148px;
  margin: 26px auto 0;
  padding-top: 25px;
}
.page_online-oc .online_entry .online_contact-contents .contact-link {
  display: block;
  width: 231px;
  margin: 0 auto;
}
.page_online-oc .online_entry .online_contact-contents .contact-mail {
  margin-top: 6px;
}
.page_online-oc .online_entry .online_contact-contents .contact-TX {
  font-family: "Koburina_Gothic_Std", sans-serif;
  font-weight: 600;
  font-style: normal;
  color: #FFF;
  font-size: 14px;
  text-align: center;
  margin-top: 16px;
  font-weight: 100;
}

@keyframes online-swipe-pulse {
  0%, 100% {
    opacity: 0.5;
  }
  30%, 70% {
    opacity: 1;
  }
}
/* -----------------------
  C_example
----------------------- */
/* -----------------------
  front
----------------------- */
@media screen and (max-width: 767px) {
  .front_banners {
    position: fixed;
    bottom: 0;
    z-index: 999;
  }
  .front_banners ul {
    display: flex;
  }
  .front_banners ul .item {
    flex: 1;
  }
  .front_banners ul .item a {
    display: block;
  }
  .front_banners ul .item a img {
    width: 100%;
    height: auto;
    display: block;
  }
}
@media screen and (min-width: 768px) {
  .front_banners img {
    display: none;
  }
}
.page_front .front_why {
  padding: 73px 0 85px;
}
@media screen and (max-width: 767px) {
  .page_front .front_why {
    padding: 17.6328502415vw 0 20.5314009662vw;
  }
}
.page_front .front_why .ttl--area .TL {
  width: 337px;
  margin-inline: auto;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .page_front .front_why .ttl--area .TL {
    width: 81.4009661836vw;
  }
}
.page_front .front_why .ttl--area .btn {
  width: 231px;
  margin: 50px auto 0;
  cursor: pointer;
  position: relative;
}
@media screen and (max-width: 767px) {
  .page_front .front_why .ttl--area .btn {
    width: 57.0048309179vw;
    margin: 12.077294686vw auto 0;
  }
}
.page_front .front_why .ttl--area .btn .btn-m {
  opacity: 1;
  transition: opacity 0.3s ease;
}
.page_front .front_why .ttl--area .btn .btn-c {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.page_front .front_why .txt--area {
  display: none;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .page_front .front_why .txt--area {
    margin-top: 9.6618357488vw;
  }
}
.page_front .front_why .txt--area .TX {
  text-align: center;
  font-size: 18px;
  line-height: 2.5;
  letter-spacing: 0.05em;
  margin-bottom: 70px;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_front .front_why .txt--area .TX {
    font-size: 4.347826087vw;
    margin-bottom: 16.9082125604vw;
  }
}
.page_front .front_why .txt--area .logo {
  width: 177px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .page_front .front_why .txt--area .logo {
    width: 42.7536231884vw;
    margin: 0 auto;
  }
}
.page_front .front_why.is-active .btn .btn-m {
  opacity: 0;
}
.page_front .front_why.is-active .btn .btn-c {
  opacity: 1;
}
.page_front .front_secret--top_txt {
  margin-bottom: 33px;
}
@media screen and (max-width: 767px) {
  .page_front .front_secret--top_txt {
    margin-bottom: 7.9710144928vw;
  }
}
.page_front .front_secret--top_txt .TX-img {
  width: 142px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .page_front .front_secret--top_txt .TX-img {
    width: 34.2995169082vw;
  }
}
.page_front .front_secret .front_secret--top_ttl {
  position: relative;
}
.page_front .front_secret .front_secret--top_ttl .txt {
  position: absolute;
  bottom: 31px;
  left: 0;
  width: 100%;
  padding-inline: 26px;
}
@media screen and (max-width: 767px) {
  .page_front .front_secret .front_secret--top_ttl .txt {
    bottom: 7.4879227053vw;
    padding-inline: 6.2801932367vw;
  }
}
.page_front .front_secret .front_secret--top_ttl .txt .TX {
  text-align: center;
  font-size: 16px;
  color: #FFF;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_front .front_secret .front_secret--top_ttl .txt .TX {
    font-size: 3.8647342995vw;
  }
}
.page_front .front_secret .front_secret--contents ul .item .headline {
  position: relative;
}
.page_front .front_secret .front_secret--contents ul .item .headline::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.page_front .front_secret .front_secret--contents ul .item .headline .ttl {
  position: absolute;
  top: 76px;
  left: 0;
  width: 100%;
  text-align: center;
  color: #FFF;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .page_front .front_secret .front_secret--contents ul .item .headline .ttl {
    top: 18.3574879227vw;
  }
}
.page_front .front_secret .front_secret--contents ul .item .headline .ttl .TX {
  font-size: 14px;
  margin-bottom: 15px;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_front .front_secret .front_secret--contents ul .item .headline .ttl .TX {
    font-size: 3.3816425121vw;
    margin-bottom: 3.6231884058vw;
  }
}
.page_front .front_secret .front_secret--contents ul .item .headline .ttl .TL {
  font-size: 32px;
  font-weight: 600;
  margin-left: 20px;
}
@media screen and (max-width: 767px) {
  .page_front .front_secret .front_secret--contents ul .item .headline .ttl .TL {
    font-size: 7.729468599vw;
    margin-left: 4.8309178744vw;
  }
}
.page_front .front_secret .front_secret--contents ul .item .headline .btn {
  position: absolute;
  bottom: 36px;
  left: 0;
  right: 0;
  margin-inline: auto;
  cursor: pointer;
  width: 231px;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .page_front .front_secret .front_secret--contents ul .item .headline .btn {
    width: 55.7971014493vw;
    bottom: 8.6956521739vw;
  }
}
.page_front .front_secret .front_secret--contents ul .item .pop-up {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  z-index: 100;
  overflow-y: scroll;
  display: none;
}
.page_front .front_secret .front_secret--contents ul .item .pop-up--inner {
  background: rgba(0, 0, 0, 0.3137254902);
  padding: 100px 20px 25px;
}
@media screen and (max-width: 767px) {
  .page_front .front_secret .front_secret--contents ul .item .pop-up--inner {
    padding: 24.154589372vw 4.8309178744vw 6.038647343vw;
  }
}
.page_front .front_secret .front_secret--contents ul .item .pop-up--inner .pop-up--contents {
  --color-type-01: #78217C;
  --color-type-02: #9FA5D9;
  --color-type-03: #454493;
  --color-type-04: #DF5695;
  --color-type-05: #B4257A;
  --color-type-06: #8E60A2;
  position: relative;
}
.page_front .front_secret .front_secret--contents ul .item .pop-up--inner .pop-up--contents .close-btn {
  width: 231px;
  margin-inline: auto;
  cursor: pointer;
  position: absolute;
  bottom: 75px;
  left: 0;
  right: 0;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .page_front .front_secret .front_secret--contents ul .item .pop-up--inner .pop-up--contents .close-btn {
    width: 55.7971014493vw;
    bottom: 18.115942029vw;
  }
}
.page_front .front_topics {
  padding: 85px 20px 94px;
}
@media screen and (max-width: 767px) {
  .page_front .front_topics {
    padding: 20.5314009662vw 4.8309178744vw 22.7053140097vw;
  }
}
.page_front .front_topics--ttl {
  margin-bottom: 21px;
}
@media screen and (max-width: 767px) {
  .page_front .front_topics--ttl {
    margin-bottom: 5.0724637681vw;
  }
}
.page_front .front_topics--ttl .TL {
  width: 51px;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .page_front .front_topics--ttl .TL {
    width: 12.3188405797vw;
  }
}
.page_front .front_topics--contents ul {
  display: flex;
  flex-direction: column;
  gap: 59px;
}
@media screen and (max-width: 767px) {
  .page_front .front_topics--contents ul {
    gap: 14.2512077295vw;
  }
}
.page_front .front_topics--contents ul .item a {
  color: #2E2E2E;
}
.page_front .front_topics--contents ul .item a .txt {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .page_front .front_topics--contents ul .item a .txt {
    margin-top: 4.8309178744vw;
  }
}
.page_front .front_topics--contents ul .item a .txt .TL {
  font-size: 18px;
  margin-bottom: 10px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .page_front .front_topics--contents ul .item a .txt .TL {
    font-size: 4.347826087vw;
    margin-bottom: 2.4154589372vw;
  }
}
.page_front .front_topics--contents ul .item a .txt .en {
  font-family: "Gotham", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.1em;
  font-size: 12px;
  line-height: 1;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_front .front_topics--contents ul .item a .txt .en {
    font-size: 2.8985507246vw;
  }
}
.page_front .front_department--ttl {
  margin-bottom: 27px;
}
@media screen and (max-width: 767px) {
  .page_front .front_department--ttl {
    margin-bottom: 6.5217391304vw;
  }
}
.page_front .front_department--ttl .TL {
  width: 95px;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .page_front .front_department--ttl .TL {
    width: 22.9468599034vw;
  }
}
.page_front .front_department--contents ul .item {
  padding: 22px 20px 54px;
}
@media screen and (max-width: 767px) {
  .page_front .front_department--contents ul .item {
    padding: 5.3140096618vw 4.8309178744vw 13.0434782609vw;
  }
}
.page_front .front_department--contents ul .item.color-type-01 {
  background-color: #FF7250;
}
.page_front .front_department--contents ul .item.color-type-02 {
  background-color: #49A0F4;
}
.page_front .front_department--contents ul .item a {
  color: #FFF;
}
.page_front .front_department--contents ul .item a .txt {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .page_front .front_department--contents ul .item a .txt {
    margin-top: 4.8309178744vw;
  }
}
.page_front .front_department--contents ul .item a .txt .TL {
  font-size: 18px;
  margin-bottom: 10px;
  line-height: 1;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_front .front_department--contents ul .item a .txt .TL {
    font-size: 4.347826087vw;
    margin-bottom: 2.4154589372vw;
  }
}
.page_front .front_department--contents ul .item a .txt .en {
  font-family: "Gotham", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.1em;
  font-size: 12px;
  line-height: 1;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_front .front_department--contents ul .item a .txt .en {
    font-size: 2.8985507246vw;
  }
}
.page_front .front_other {
  padding: 81px 20px 48px;
}
@media screen and (max-width: 767px) {
  .page_front .front_other {
    padding: 19.5652173913vw 4.8309178744vw 11.5942028986vw;
  }
}
.page_front .front_other--ttl {
  margin-bottom: 31px;
}
@media screen and (max-width: 767px) {
  .page_front .front_other--ttl {
    margin-bottom: 7.4879227053vw;
  }
}
.page_front .front_other--ttl .TL {
  width: 130px;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .page_front .front_other--ttl .TL {
    width: 31.4009661836vw;
  }
}
.page_front .front_other--contents ul {
  display: flex;
  flex-direction: column;
  gap: 35px;
}
@media screen and (max-width: 767px) {
  .page_front .front_other--contents ul {
    gap: 8.4541062802vw;
  }
}

/* -----------------------
  oc
----------------------- */
.page_oc {
  background-color: #d9e8f4;
}
.page_oc .oc_sticky-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 100;
}
@media screen and (min-width: 768px) {
  .page_oc .oc_sticky-banner {
    position: fixed;
    bottom: 0;
    right: 7.3206442167vw;
    left: auto;
    width: 414px;
    z-index: 100;
  }
}
.page_oc .oc_kv {
  position: relative;
  height: 700px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_kv {
    height: 169.0821256039vw;
  }
}
.page_oc .oc_kv .oc_kv--img--wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: max-content;
  z-index: 1;
  display: flex;
  animation: slide-loop 30s linear infinite;
}
.page_oc .oc_kv .oc_kv--img--wrap .oc_kv--img {
  width: 414px !important;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_kv .oc_kv--img--wrap .oc_kv--img {
    width: 100vw !important;
  }
}
.page_oc .oc_kv .oc_kv--img--wrap .oc_kv--img img {
  width: 100%;
  height: 700px;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_kv .oc_kv--img--wrap .oc_kv--img img {
    height: 169.0821256039vw;
  }
}
@keyframes slide-loop {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
.page_oc .oc_kv::before {
  content: "";
  display: block;
  background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.22) 100%);
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 25%;
}
.page_oc .oc_kv .TL {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 282px;
  z-index: 3;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_kv .TL {
    width: 68.115942029vw;
  }
}
.page_oc .oc_kv .txt {
  position: absolute;
  z-index: 3;
  bottom: 5px;
  left: 0;
  width: 100%;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_kv .txt {
    bottom: 1.2077294686vw;
  }
}
.page_oc .oc_txt-area {
  padding: 270px 0 228px;
  position: relative;
  background-image: url("../img/oc/oc_txt-area-bg.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_txt-area {
    padding: 65.2173913043vw 0 55.0724637681vw;
  }
}
.page_oc .oc_txt-area::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  backdrop-filter: blur(10px);
}
.page_oc .oc_txt-area .oc_txt-area--inner {
  position: relative;
  z-index: 2;
  text-align: center;
  color: #fff;
}
.page_oc .oc_txt-area .oc_txt-area--inner .ttl {
  margin-bottom: 45px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_txt-area .oc_txt-area--inner .ttl {
    margin-bottom: 10.8695652174vw;
  }
}
.page_oc .oc_txt-area .oc_txt-area--inner .ttl .TL {
  font-size: 45px;
  line-height: 1.9;
  font-weight: 600;
  text-justify: distribute-all-lines;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_txt-area .oc_txt-area--inner .ttl .TL {
    font-size: 10.8695652174vw;
  }
}
.page_oc .oc_txt-area .oc_txt-area--inner .txt .TX {
  font-size: 16px;
  line-height: 2.6;
  font-weight: 600;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_txt-area .oc_txt-area--inner .txt .TX {
    font-size: 3.8647342995vw;
  }
}
.page_oc .oc-s_c--contents {
  padding: 32px 20px 90px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc-s_c--contents {
    padding: 7.729468599vw 4.8309178744vw 21.7391304348vw;
  }
}
.page_oc .oc-s_c--contents ul {
  display: flex;
  flex-wrap: wrap;
  gap: 41px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc-s_c--contents ul {
    gap: 9.9033816425vw;
  }
}
.page_oc .oc-s_c--contents ul .item img {
  filter: drop-shadow(6px 6px 0px rgba(0, 0, 0, 0.2));
}
.page_oc .oc-s_c--contents ul .item .txt {
  padding-inline: 20px;
  margin-top: 34px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc-s_c--contents ul .item .txt {
    padding-inline: 4.8309178744vw;
    margin-top: 8.2125603865vw;
  }
}
.page_oc .oc-s_c--contents ul .item .txt .TL {
  text-align: center;
  font-size: 21px;
  line-height: 1;
  letter-spacing: 0.03em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_oc .oc-s_c--contents ul .item .txt .TL {
    font-size: 5.0724637681vw;
  }
}
.page_oc .oc-s_c--contents ul .item .txt .TL.TL-col-01 {
  color: #dd5997;
}
.page_oc .oc-s_c--contents ul .item .txt .TL.TL-col-02 {
  color: #78217c;
}
.page_oc .oc-s_c--contents ul .item .txt .TL.TL-col-03 {
  color: #5a4db2;
}
.page_oc .oc-s_c--contents ul .item .txt .TX {
  margin-top: 18px;
  font-size: 15px;
  line-height: 1.9;
  letter-spacing: 0.1em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_oc .oc-s_c--contents ul .item .txt .TX {
    margin-top: 4.347826087vw;
    font-size: 3.6231884058vw;
  }
}
.page_oc .oc_workshop--contents {
  padding: 36px 20px 99px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_workshop--contents {
    padding: 8.6956521739vw 4.8309178744vw 23.9130434783vw;
  }
}
.page_oc .oc_workshop--contents--txt {
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_workshop--contents--txt {
    margin-bottom: 19.3236714976vw;
  }
}
.page_oc .oc_workshop--contents--txt .TX {
  text-align: center;
  font-size: 20px;
  letter-spacing: 0.1em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_workshop--contents--txt .TX {
    font-size: 4.8309178744vw;
  }
}
.page_oc .oc_workshop--contents--items ul {
  display: flex;
  flex-direction: column;
  gap: 140px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_workshop--contents--items ul {
    gap: 33.8164251208vw;
  }
}
.page_oc .oc_workshop--contents--items ul .item--thumbnail {
  position: relative;
}
.page_oc .oc_workshop--contents--items ul .item--thumbnail .TL {
  width: 120px;
  margin-inline: auto;
  transform: translateY(-30%);
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_workshop--contents--items ul .item--thumbnail .TL {
    width: 32.3671497585vw;
  }
}
.page_oc .oc_workshop--contents--items ul .item--thumbnail .img {
  filter: drop-shadow(6px 6px 0px rgba(0, 0, 0, 0.2));
  position: relative;
  z-index: 1;
}
.page_oc .oc_workshop--contents--items ul .item--txt {
  margin-top: 30px;
  --color-type-01: #454493;
  --color-type-02: #dc0117;
  padding-inline: 20px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_workshop--contents--items ul .item--txt {
    margin-top: 7.2463768116vw;
    padding-inline: 4.8309178744vw;
  }
}
.page_oc .oc_workshop--contents--items ul .item--txt .TL {
  font-size: 21px;
  margin-bottom: 10px;
  text-align: center;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_workshop--contents--items ul .item--txt .TL {
    font-size: 5.0724637681vw;
    margin-bottom: 2.4154589372vw;
  }
}
.page_oc .oc_workshop--contents--items ul .item--txt .TL.color-type-01 {
  color: var(--color-type-01);
}
.page_oc .oc_workshop--contents--items ul .item--txt .TL.color-type-02 {
  color: var(--color-type-02);
}
.page_oc .oc_workshop--contents--items ul .item--txt .TX {
  font-size: 15px;
  letter-spacing: 0.1em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_workshop--contents--items ul .item--txt .TX {
    font-size: 3.6231884058vw;
  }
}
.page_oc .oc_other-contents--contents {
  padding: 40px 20px 65px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_other-contents--contents {
    padding: 9.6618357488vw 4.8309178744vw 15.7004830918vw;
  }
}
.page_oc .oc_other-contents--contents ul {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_other-contents--contents ul {
    gap: 9.6618357488vw;
  }
}
.page_oc .oc_other-contents--contents ul .item--thumbnail {
  position: relative;
}
.page_oc .oc_other-contents--contents ul .item--thumbnail img {
  filter: drop-shadow(6px 6px 0px rgba(0, 0, 0, 0.2));
  position: relative;
  z-index: 1;
}
.page_oc .oc_other-contents--contents ul .item--txt {
  margin-top: 18px;
  --color-type-01: #78217c;
  --color-type-02: #dd5997;
  padding-inline: 20px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_other-contents--contents ul .item--txt {
    margin-top: 4.347826087vw;
    padding-inline: 4.8309178744vw;
  }
}
.page_oc .oc_other-contents--contents ul .item--txt .TL {
  font-size: 21px;
  margin-bottom: 10px;
  text-align: center;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_other-contents--contents ul .item--txt .TL {
    font-size: 5.0724637681vw;
    margin-bottom: 2.4154589372vw;
  }
}
.page_oc .oc_other-contents--contents ul .item--txt .TL.color-type-01 {
  color: var(--color-type-01);
}
.page_oc .oc_other-contents--contents ul .item--txt .TL.color-type-02 {
  color: var(--color-type-02);
}
.page_oc .oc_other-contents--contents ul .item--txt .TL .TX {
  font-size: 15px;
  letter-spacing: 0.1em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_other-contents--contents ul .item--txt .TL .TX {
    font-size: 3.6231884058vw;
  }
}
.page_oc .oc_other-contents--contents ul .item--txt .TX {
  font-size: 15px;
  letter-spacing: 0.1em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_other-contents--contents ul .item--txt .TX {
    font-size: 3.6231884058vw;
  }
}
.page_oc .oc_timetable {
  background-color: #8d9cce;
}
.page_oc .oc_timetable--tabs {
  display: flex;
  gap: 0;
}
.page_oc .oc_timetable--tabs .tab-btn {
  flex: 1;
  padding: 10px 0;
  background-color: #d9e8f4;
  color: #8d9cce;
  font-size: 16px;
  font-weight: 600;
  border: none;
  cursor: pointer;
  transition: background-color 0.2s, color 0.2s;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_timetable--tabs .tab-btn {
    font-size: 3.8647342995vw;
    padding: 2.4154589372vw 0;
  }
}
.page_oc .oc_timetable--tabs .tab-btn.is-active {
  background-color: #8d9cce;
  color: #fff;
}
.page_oc .oc_timetable--contents {
  padding: 44px 20px 73px;
}
.page_oc .oc_timetable--contents .tab-content {
  display: none;
}
.page_oc .oc_timetable--contents .tab-content.is-active {
  display: block;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_timetable--contents {
    padding: 10.6280193237vw 4.8309178744vw 17.6328502415vw;
  }
}
.page_oc .oc_timetable--contents ul .item {
  padding: 23px 20px;
  border-bottom: dotted #fff;
  border-bottom-width: 1px;
  color: #fff;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_timetable--contents ul .item {
    padding: 5.5555555556vw 4.8309178744vw;
    border-bottom-width: 0.2415458937vw;
    gap: 2.4154589372vw;
  }
}
.page_oc .oc_timetable--contents ul .item:first-child {
  padding-top: 0;
}
.page_oc .oc_timetable--contents ul .item:last-child {
  padding-bottom: 0;
  border-bottom-width: 0;
}
.page_oc .oc_timetable--contents ul .item .time-wrap {
  background-color: #fff;
  border-radius: 50px;
  width: fit-content;
  padding: 4px 25px 5px 18px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_timetable--contents ul .item .time-wrap {
    border-radius: 12.077294686vw;
    padding: 0.9661835749vw 6.038647343vw 1.2077294686vw 4.347826087vw;
  }
}
.page_oc .oc_timetable--contents ul .item .time-wrap .time {
  color: #8d9cce;
  font-size: 16px;
  font-family: "Gotham", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.1em;
  font-weight: 600;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_timetable--contents ul .item .time-wrap .time {
    font-size: 3.8647342995vw;
  }
}
.page_oc .oc_timetable--contents ul .item .contents-wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_timetable--contents ul .item .contents-wrap {
    gap: 1.9323671498vw;
  }
}
.page_oc .oc_timetable--contents ul .item .contents-wrap .TL {
  font-size: 22px;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_timetable--contents ul .item .contents-wrap .TL {
    font-size: 5.3140096618vw;
  }
}
.page_oc .oc_timetable--contents ul .item .contents-wrap .txt .TX {
  font-size: 16px;
  letter-spacing: 0.09em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_timetable--contents ul .item .contents-wrap .txt .TX {
    font-size: 3.8647342995vw;
  }
}
.page_oc .oc_form {
  background-color: #dd5997;
}
.page_oc .oc_form--contents {
  padding: 45px 40px 68px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_form--contents {
    padding: 10.8695652174vw 9.6618357488vw 16.4251207729vw;
  }
}
.page_oc .oc_form--contents--schedule {
  color: #fff;
}
.page_oc .oc_form--contents--schedule .TL {
  text-align: center;
  font-size: 15px;
  letter-spacing: 0.1em;
  margin-bottom: 35px;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_form--contents--schedule .TL {
    font-size: 3.6231884058vw;
    margin-bottom: 8.4541062802vw;
  }
}
.page_oc .oc_form--contents--schedule .oc-wrap {
  margin-top: 52px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_form--contents--schedule .oc-wrap {
    margin-top: 12.5603864734vw;
  }
}
.page_oc .oc_form--contents--form input,
.page_oc .oc_form--contents--form select {
  box-sizing: border-box;
  border: 0;
  border-radius: 5px;
  height: 47px;
  color: #2e2e2e;
  padding-inline: 15px;
  outline: none;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_form--contents--form input,
  .page_oc .oc_form--contents--form select {
    height: 11.3526570048vw;
    border-radius: 1.2077294686vw;
    padding-inline: 3.6231884058vw;
  }
}
.page_oc .oc_form--contents--form input[type=radio] {
  border: unset;
  border-radius: unset;
  height: unset;
  outline: none;
  width: unset;
  transform: scale(1.5);
  margin: 0;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_form--contents--form input[type=radio] {
    border: unset;
    border-radius: unset;
    height: unset;
    outline: none;
    width: unset;
  }
}
.page_oc .oc_form--contents--form label {
  display: block;
  color: #fff;
  font-size: 15px;
  letter-spacing: 0.1em;
  margin-bottom: 8px;
  font-weight: 600;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_form--contents--form label {
    font-size: 3.6231884058vw;
    margin-bottom: 1.9323671498vw;
  }
}
.page_oc .oc_form--contents--form .wpcf7-form-control.wpcf7-radio {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-left: 5px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_form--contents--form .wpcf7-form-control.wpcf7-radio {
    gap: 1.9323671498vw;
    margin-left: 1.2077294686vw;
  }
}
.page_oc .oc_form--contents--form .wpcf7-form-control.wpcf7-radio .wpcf7-list-item {
  margin: 0;
}
.page_oc .oc_form--contents--form .wpcf7-form-control.wpcf7-radio .wpcf7-list-item label {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_form--contents--form .wpcf7-form-control.wpcf7-radio .wpcf7-list-item label {
    gap: 2.4154589372vw;
  }
}
.page_oc .oc_form--contents--form .wpcf7-form-control.wpcf7-radio .wpcf7-list-item label input {
  width: unset;
}
.page_oc .oc_form--contents--form .wpcf7-not-valid-tip {
  color: #ffffff;
  font-size: 15px;
  text-shadow: 0 0 4px #000000;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_form--contents--form .wpcf7-not-valid-tip {
    font-size: 3.6231884058vw;
  }
}
.page_oc .oc_form--contents--form .input-item-wrap {
  display: flex;
  flex-direction: column;
  gap: 23px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_form--contents--form .input-item-wrap {
    gap: 5.5555555556vw;
  }
}
.page_oc .oc_form--contents--form .input-item-wrap .input-item .input-wrap-l,
.page_oc .oc_form--contents--form .input-item-wrap .input-item .input-wrap-f {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_form--contents--form .input-item-wrap .input-item .input-wrap-l,
  .page_oc .oc_form--contents--form .input-item-wrap .input-item .input-wrap-f {
    gap: 1.9323671498vw;
  }
}
.page_oc .oc_form--contents--form .input-item-wrap .input-item .input-wrap-l input,
.page_oc .oc_form--contents--form .input-item-wrap .input-item .input-wrap-f input {
  width: 100%;
}
.page_oc .oc_form--contents--form .input-item-wrap .input-item .input-wrap-f {
  flex-direction: row;
  align-items: center;
  gap: 0;
}
.page_oc .oc_form--contents--form .input-item-wrap .input-item .input-wrap-f input {
  width: 80%;
}
.page_oc .oc_form--contents--form .input-item-wrap .input-item .select-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_form--contents--form .input-item-wrap .input-item .select-wrap {
    gap: 2.4154589372vw;
  }
}
.page_oc .oc_form--contents--form .input-item-wrap .input-item .select-wrap select {
  width: 100px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_form--contents--form .input-item-wrap .input-item .select-wrap select {
    width: 24.154589372vw;
  }
}
.page_oc .oc_form--contents--form .input-item-wrap .input-item .select-wrap .TX {
  color: #fff;
  font-size: 15px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_form--contents--form .input-item-wrap .input-item .select-wrap .TX {
    font-size: 3.6231884058vw;
  }
}
.page_oc .oc_form--contents--form .sbmit-btn-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_form--contents--form .sbmit-btn-wrap {
    gap: 2.4154589372vw;
  }
}
.page_oc .oc_form--contents--form .sbmit-btn-wrap .sbmit-btn {
  width: 231px;
  margin: 57px auto 0;
  background-color: #2e2e2e;
  color: #fff;
  text-align: center;
  padding: 13px 0 14px;
  border-radius: 50px;
  font-size: 13px;
  letter-spacing: 0.1em;
  line-height: 1;
  cursor: pointer;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_form--contents--form .sbmit-btn-wrap .sbmit-btn {
    margin-top: 13.768115942vw;
    width: 55.7971014493vw;
    padding: 3.1400966184vw 0 3.3816425121vw;
    font-size: 3.1400966184vw;
  }
}
.page_oc .oc_form--contents--form .wpcf7 form .wpcf7-response-output {
  color: #fff;
  font-size: 15px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_form--contents--form .wpcf7 form .wpcf7-response-output {
    font-size: 3.6231884058vw;
  }
}
.page_oc .oc_privilege {
  position: relative;
  height: 460px;
}
@media screen and (max-width: 767px) {
  .page_oc .oc_privilege {
    height: 111.1111111111vw;
  }
}
.page_oc .oc_privilege--contents {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.page_oc .oc_privilege--contents--img {
  width: 797px;
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
  .page_oc .oc_privilege--contents--img {
    width: 192.5120772947vw;
    bottom: 2.4154589372vw;
  }
}

/* -----------------------
  interview
----------------------- */
.page_interview {
  --main-color: #CB56A8;
}
.page_interview .interview_kv {
  background-color: var(--main-color);
  position: relative;
  height: 100vh;
  min-height: 750px;
  padding: 0 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 40px;
}
@media screen and (max-width: 767px) {
  .page_interview .interview_kv {
    min-height: 181.1594202899vw;
    gap: 9.6618357488vw;
  }
}
.page_interview .interview_kv--img {
  width: 100%;
}
.page_interview .interview_kv--txt {
  width: 100%;
}
.page_interview .interview_kv--txt .TX {
  color: #FFF;
  text-align: center;
  font-size: 15px;
  letter-spacing: 0.1em;
  line-height: 2;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_interview .interview_kv--txt .TX {
    font-size: 3.6231884058vw;
  }
}
.page_interview .interview_sec {
  background-color: var(--main-color);
}
.page_interview .interview_sec ul .item {
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .page_interview .interview_sec ul .item {
    margin-bottom: 2.4154589372vw;
  }
}
.page_interview .interview_sec ul .item:last-child {
  margin-bottom: 0;
}
.page_interview .interview_sec ul .item .headline {
  position: relative;
}
.page_interview .interview_sec ul .item .headline .contents .img {
  width: 100%;
}
.page_interview .interview_sec ul .item .headline .btn {
  width: 231px;
  position: absolute;
  bottom: 33px;
  right: 0;
  left: 0;
  margin-inline: auto;
  z-index: 2;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .page_interview .interview_sec ul .item .headline .btn {
    width: 55.7971014493vw;
    bottom: 7.9710144928vw;
  }
}
.page_interview .interview_sec ul .item .pop-up {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  z-index: 100;
  overflow-y: scroll;
  display: none;
}
.page_interview .interview_sec ul .item .pop-up .main_view--area {
  background-color: transparent !important;
}
@media screen and (max-width: 767px) {
  .page_interview .interview_sec ul .item .pop-up .main_view--area::before {
    content: "";
    display: block;
    position: fixed;
    width: 100%;
    background: rgba(255, 255, 255, 0.3137254902);
    z-index: -1;
    right: 0;
    height: 100%;
    top: 0;
  }
}
@media screen and (min-width: 768px) {
  .page_interview .interview_sec ul .item .pop-up .main_view--area::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    right: 7.3206442167vw;
    width: 414px;
    height: 100%;
    background: rgba(255, 255, 255, 0.3137254902);
    z-index: -1;
  }
}
.page_interview .interview_sec ul .item .pop-up--inner {
  padding: 100px 20px 25px;
}
@media screen and (max-width: 767px) {
  .page_interview .interview_sec ul .item .pop-up--inner {
    padding: 24.154589372vw 4.8309178744vw 6.038647343vw;
  }
}
.page_interview .interview_sec ul .item .pop-up--inner--contents .close-btn {
  width: 231px;
  position: relative;
  bottom: 90px;
  left: 0;
  right: 0;
  margin-inline: auto;
  margin-top: auto;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .page_interview .interview_sec ul .item .pop-up--inner--contents .close-btn {
    width: 55.7971014493vw;
  }
}

/* -----------------------
  obog
----------------------- */
.page_obog {
  background-color: #CEE0EF;
}
.page_obog .obog_letter {
  padding: 47px 0 0;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter {
    padding: 11.3526570048vw 0 0;
  }
}
.page_obog .obog_letter--top-txt {
  text-align: center;
  margin-bottom: 47px;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--top-txt {
    margin-bottom: 11.3526570048vw;
  }
}
.page_obog .obog_letter--top-txt .TX {
  font-size: 15px;
  line-height: 2;
  letter-spacing: 0.1em;
  color: #78217C;
  font-weight: 600;
}
.page_obog .obog_letter--contents ul {
  display: flex;
  flex-direction: column;
  gap: 85px;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul {
    gap: 20.5314009662vw;
  }
}
.page_obog .obog_letter--contents ul .item .headline {
  --color-01: #78217C;
  --color-02: #78217C;
  --color-03: #4B367F;
  --color-04: #DD5997;
  --color-05: #765CA1;
}
.page_obog .obog_letter--contents ul .item .headline .letter--area {
  padding: 14px 20px 35px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .headline .letter--area {
    padding: 3.3816425121vw 4.8309178744vw 8.4541062802vw;
  }
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--ttl {
  width: 112px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin-inline: auto;
  z-index: 2;
  transform: translateY(-60%);
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .headline .letter--area--ttl {
    width: 27.0531400966vw;
  }
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner {
  position: relative;
  z-index: 1;
  padding-block: 53px 40px;
  background-size: 100% 100% !important;
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner::before {
  content: "";
  display: block;
  position: absolute;
  top: 20px;
  right: 20px;
  width: 136px;
  aspect-ratio: 136/97;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .headline .letter--area--inner::before {
    width: 32.8502415459vw;
    top: 4.8309178744vw;
    right: 4.8309178744vw;
  }
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .headline .letter--area--inner {
    padding-block: 12.8019323671vw 9.6618357488vw;
  }
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner.color-type-01 {
  color: var(--color-01);
  background-image: url("../img/obog/obog_letter-pop-bg-01.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner.color-type-01::before {
  background-image: url("../img/obog/obog_letter-pop-bg-mark-01.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner.color-type-02 {
  color: var(--color-02);
  background-image: url("../img/obog/obog_letter-pop-bg-02.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner.color-type-02::before {
  background-image: url("../img/obog/obog_letter-pop-bg-mark-02.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner.color-type-03 {
  color: var(--color-03);
  background-image: url("../img/obog/obog_letter-pop-bg-03.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner.color-type-03::before {
  background-image: url("../img/obog/obog_letter-pop-bg-mark-03.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner.color-type-04 {
  color: var(--color-04);
  background-image: url("../img/obog/obog_letter-pop-bg-04.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner.color-type-04::before {
  background-image: url("../img/obog/obog_letter-pop-bg-mark-04.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner.color-type-05 {
  color: var(--color-05);
  background-image: url("../img/obog/obog_letter-pop-bg-05.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner.color-type-05::before {
  background-image: url("../img/obog/obog_letter-pop-bg-mark-05.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner .ttl {
  text-align: center;
  margin-bottom: 35px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .headline .letter--area--inner .ttl {
    margin-bottom: 8.4541062802vw;
  }
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner .ttl .TL {
  font-size: 26px;
  letter-spacing: 0.1em;
  font-family: "sora_to_hikouki", sans-serif;
  font-weight: 600;
  font-style: normal;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .headline .letter--area--inner .ttl .TL {
    font-size: 6.2801932367vw;
  }
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner .info {
  padding-inline: 20px;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 3px;
  margin-bottom: 30px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .headline .letter--area--inner .info {
    padding-inline: 4.8309178744vw;
    gap: 0.7246376812vw;
    margin-bottom: 7.2463768116vw;
  }
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner .info .job {
  font-size: 12px;
  letter-spacing: 0.05em;
  font-weight: 500;
  margin-bottom: 8px;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .headline .letter--area--inner .info .job {
    font-size: 2.8985507246vw;
    margin-bottom: 1.9323671498vw;
  }
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner .info .name {
  font-size: 16px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .headline .letter--area--inner .info .name {
    font-size: 3.8647342995vw;
  }
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner .info .year {
  font-size: 12px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .headline .letter--area--inner .info .year {
    font-size: 2.8985507246vw;
  }
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner .txt--wrap {
  padding-inline: 35px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .headline .letter--area--inner .txt--wrap {
    padding-inline: 8.4541062802vw;
  }
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner .txt--wrap .txt {
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .headline .letter--area--inner .txt--wrap .txt {
    margin-bottom: 4.8309178744vw;
  }
}
.page_obog .obog_letter--contents ul .item .headline .letter--area--inner .txt--wrap .txt .TX {
  font-size: 15px;
  letter-spacing: 0.1em;
  line-height: 2;
  font-family: "sora_to_hikouki", sans-serif;
  font-weight: 600;
  font-style: normal;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .headline .letter--area--inner .txt--wrap .txt .TX {
    font-size: 3.6231884058vw;
  }
}
.page_obog .obog_letter--contents ul .item .headline .open--area {
  position: relative;
}
.page_obog .obog_letter--contents ul .item .headline .open--area .btn {
  width: 231px;
  position: absolute;
  bottom: 26px;
  right: 0;
  left: 0;
  margin-inline: auto;
  z-index: 2;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .headline .open--area .btn {
    width: 55.7971014493vw;
    bottom: 6.2801932367vw;
  }
}
.page_obog .obog_letter--contents ul .item .pop-up {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  z-index: 100;
  overflow-y: scroll;
  display: none;
}
.page_obog .obog_letter--contents ul .item .pop-up--inner {
  --color-01: #C62496;
  --color-02: #AC64AF;
  --color-03: #928AC9;
  --color-04: #E87AB7;
  --color-05: #9FA5D9;
  padding: 100px 20px 25px;
  min-height: 100vh;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .pop-up--inner {
    padding: 24.154589372vw 4.8309178744vw 6.038647343vw;
  }
}
.page_obog .obog_letter--contents ul .item .pop-up--inner.contents-typoe-01 {
  background-color: var(--color-01);
}
.page_obog .obog_letter--contents ul .item .pop-up--inner.contents-typoe-01 .pop-up--inner--contents {
  color: var(--color-01);
  background-image: url("../img/obog/obog_letter-pop-bg-01.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .pop-up--inner.contents-typoe-01 .pop-up--inner--contents::before {
  background-image: url("../img/obog/obog_letter-pop-bg-mark-01.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .pop-up--inner.contents-typoe-02 {
  background-color: var(--color-02);
}
.page_obog .obog_letter--contents ul .item .pop-up--inner.contents-typoe-02 .pop-up--inner--contents {
  color: var(--color-02);
  background-image: url("../img/obog/obog_letter-pop-bg-02.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .pop-up--inner.contents-typoe-02 .pop-up--inner--contents::before {
  background-image: url("../img/obog/obog_letter-pop-bg-mark-02.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .pop-up--inner.contents-typoe-03 {
  background-color: var(--color-03);
}
.page_obog .obog_letter--contents ul .item .pop-up--inner.contents-typoe-03 .pop-up--inner--contents {
  color: var(--color-03);
  background-image: url("../img/obog/obog_letter-pop-bg-03.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .pop-up--inner.contents-typoe-03 .pop-up--inner--contents::before {
  background-image: url("../img/obog/obog_letter-pop-bg-mark-03.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .pop-up--inner.contents-typoe-04 {
  background-color: var(--color-04);
}
.page_obog .obog_letter--contents ul .item .pop-up--inner.contents-typoe-04 .pop-up--inner--contents {
  color: var(--color-04);
  background-image: url("../img/obog/obog_letter-pop-bg-04.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .pop-up--inner.contents-typoe-04 .pop-up--inner--contents::before {
  background-image: url("../img/obog/obog_letter-pop-bg-mark-04.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .pop-up--inner.contents-typoe-05 {
  background-color: var(--color-05);
}
.page_obog .obog_letter--contents ul .item .pop-up--inner.contents-typoe-05 .pop-up--inner--contents {
  color: var(--color-05);
  background-image: url("../img/obog/obog_letter-pop-bg-05.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .pop-up--inner.contents-typoe-05 .pop-up--inner--contents::before {
  background-image: url("../img/obog/obog_letter-pop-bg-mark-05.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_obog .obog_letter--contents ul .item .pop-up--inner--contents {
  padding: 49px 0 70px;
  background-size: 100% 100% !important;
  position: relative;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .pop-up--inner--contents {
    padding: 11.8357487923vw 0 16.9082125604vw;
  }
}
.page_obog .obog_letter--contents ul .item .pop-up--inner--contents::before {
  content: "";
  display: block;
  position: absolute;
  top: 20px;
  right: 20px;
  width: 136px;
  aspect-ratio: 136/97;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .pop-up--inner--contents::before {
    width: 32.8502415459vw;
    top: 4.8309178744vw;
    right: 4.8309178744vw;
  }
}
.page_obog .obog_letter--contents ul .item .pop-up--inner--contents .img {
  width: 126px;
  margin-inline: auto;
  margin-bottom: 32px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .pop-up--inner--contents .img {
    width: 30.4347826087vw;
    margin-bottom: 7.729468599vw;
  }
}
.page_obog .obog_letter--contents ul .item .pop-up--inner--contents .ttl {
  margin-bottom: 32px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .pop-up--inner--contents .ttl {
    margin-bottom: 7.729468599vw;
  }
}
.page_obog .obog_letter--contents ul .item .pop-up--inner--contents .ttl .TL {
  font-size: 28px;
  text-align: center;
  letter-spacing: 0.1em;
  font-family: "sora_to_hikouki", sans-serif;
  font-weight: 600;
  font-style: normal;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .pop-up--inner--contents .ttl .TL {
    font-size: 6.7632850242vw;
  }
}
.page_obog .obog_letter--contents ul .item .pop-up--inner--contents .txt {
  padding-inline: 34px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .pop-up--inner--contents .txt {
    padding-inline: 8.2125603865vw;
  }
}
.page_obog .obog_letter--contents ul .item .pop-up--inner--contents .txt .TX {
  font-size: 15px;
  letter-spacing: 0.1em;
  line-height: 2;
  font-family: "sora_to_hikouki", sans-serif;
  font-weight: 600;
  font-style: normal;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .pop-up--inner--contents .txt .TX {
    font-size: 3.6231884058vw;
  }
}
.page_obog .obog_letter--contents ul .item .pop-up--inner--contents .info {
  margin: 45px 0 30px;
  text-align: center;
}
.page_obog .obog_letter--contents ul .item .pop-up--inner--contents .info .job {
  font-size: 13px;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .pop-up--inner--contents .info .job {
    font-size: 3.1400966184vw;
  }
}
.page_obog .obog_letter--contents ul .item .pop-up--inner--contents .info .job .name {
  font-size: 16px;
  margin-bottom: 3px;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .pop-up--inner--contents .info .job .name {
    font-size: 3.8647342995vw;
    margin-bottom: 0.7246376812vw;
  }
}
.page_obog .obog_letter--contents ul .item .pop-up--inner--contents .close-btn {
  width: 231px;
  margin-inline: auto;
  margin-top: 51px;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .page_obog .obog_letter--contents ul .item .pop-up--inner--contents .close-btn {
    width: 55.7971014493vw;
    margin-top: 12.3188405797vw;
  }
}

/* -----------------------
  five-minute
----------------------- */
.page_five-minute {
  background-color: #9FA5D9;
}
.page_five-minute .five-minute_contents {
  padding: 0 20px 40px;
}
@media screen and (max-width: 767px) {
  .page_five-minute .five-minute_contents {
    padding: 0 4.8309178744vw 9.6618357488vw;
  }
}
.page_five-minute .five-minute_contents .lists {
  display: flex;
  flex-direction: column;
  gap: 11px;
}
@media screen and (max-width: 767px) {
  .page_five-minute .five-minute_contents .lists {
    gap: 2.6570048309vw;
  }
}
.page_five-minute .five-minute_contents .lists .item-wrap {
  display: flex;
  gap: 14px;
}
@media screen and (max-width: 767px) {
  .page_five-minute .five-minute_contents .lists .item-wrap {
    gap: 3.3816425121vw;
  }
}
.page_five-minute .five-minute_contents .lists .item-wrap .item {
  flex: 1;
}
.page_five-minute .five-minute_contents .lists .item-wrap .item .headline {
  position: relative;
}
.page_five-minute .five-minute_contents .lists .item-wrap .item .headline .btn {
  position: absolute;
  bottom: 0;
  right: 0;
  cursor: pointer;
  aspect-ratio: 65/61;
  width: 65px;
}
@media screen and (max-width: 767px) {
  .page_five-minute .five-minute_contents .lists .item-wrap .item .headline .btn {
    width: 15.7004830918vw;
  }
}
.page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  z-index: 100;
  overflow-y: scroll;
  display: none;
}
.page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner {
  padding: 100px 20px 25px;
  min-height: 100vh;
  background-color: rgba(0, 0, 0, 0.3647058824);
}
@media screen and (max-width: 767px) {
  .page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner {
    padding: 24.154589372vw 4.8309178744vw 6.038647343vw;
  }
}
.page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner--contents {
  padding: 62px 0 76px;
  background-color: #FFF;
  border-radius: 10px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner--contents {
    border-radius: 2.4154589372vw;
    padding: 14.9758454106vw 0 17.3913043478vw;
  }
}
.page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner--contents::before {
  content: "";
  display: block;
  width: 100%;
  aspect-ratio: 374/21;
  position: absolute;
  top: 0;
  left: 0;
  transform: translateY(-50%);
  background-image: url("../img/five-minute/five-minute_contentspop-bg-clip.webp");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner--contents .ttl {
  margin-bottom: 37px;
}
@media screen and (max-width: 767px) {
  .page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner--contents .ttl {
    margin-bottom: 8.9371980676vw;
  }
}
.page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner--contents .ttl .TL {
  width: 231px;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner--contents .ttl .TL {
    width: 55.7971014493vw;
  }
}
.page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner--contents .img {
  margin-bottom: 49px;
}
@media screen and (max-width: 767px) {
  .page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner--contents .img {
    margin-bottom: 11.8357487923vw;
  }
}
.page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner--contents .txt {
  padding-inline: 30px;
}
@media screen and (max-width: 767px) {
  .page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner--contents .txt {
    padding-inline: 7.2463768116vw;
  }
}
.page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner--contents .txt .TX {
  font-size: 14px;
  letter-spacing: 0.1em;
  line-height: 2;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner--contents .txt .TX {
    font-size: 3.3816425121vw;
  }
}
.page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner--contents .txt .TX-point {
  display: block;
  font-size: 13px;
  margin-top: 22px;
  color: #BABABA;
}
@media screen and (max-width: 767px) {
  .page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner--contents .txt .TX-point {
    font-size: 3.1400966184vw;
    margin-top: 5.3140096618vw;
  }
}
.page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner--contents .close-btn {
  width: 231px;
  margin-inline: auto;
  margin-top: 51px;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .page_five-minute .five-minute_contents .lists .item-wrap .item .pop-up--inner--contents .close-btn {
    width: 55.7971014493vw;
    margin-top: 12.3188405797vw;
  }
}

/* -----------------------
  faculty
----------------------- */
.page_faculty {
  background-color: var(--bg-main-col);
}
.page_faculty.nutrient_faculty-col {
  --bg-main-col: #fc7a64;
  --bg-sub-col: #dc0117;
  --marker: #f5b9af;
  --other-col: #49a0f4;
}
.page_faculty.psychology_faculty-col {
  --bg-main-col: #388ad9;
  --bg-sub-col: #0057aa;
  --marker: #c6e3ff;
  --other-col: #ff7250;
}
.page_faculty .faculty_kv {
  height: 837px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_kv {
    height: 202.1739130435vw;
  }
}
.page_faculty .faculty_kv .bg_img {
  position: absolute;
  top: 99px;
  left: 50%;
  transform: translateX(-50%);
  width: 422px;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_kv .bg_img {
    top: 23.9130434783vw;
    width: 101.9323671498vw;
  }
}
.page_faculty .faculty_kv .ttl {
  position: absolute;
  top: 503px;
  left: 50%;
  transform: translateX(-50%);
  width: 353px;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_kv .ttl {
    top: 121.4975845411vw;
    width: 85.2657004831vw;
  }
}
.page_faculty .faculty_point--ttl {
  position: relative;
  background-color: #fff;
  padding-block: 33px 29px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_point--ttl {
    padding-block: 7.9710144928vw 7.0048309179vw;
  }
}
.page_faculty .faculty_point--ttl .TL {
  color: var(--bg-sub-col);
  font-size: 26px;
  letter-spacing: 0.1em;
  text-align: center;
  line-height: 1;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_point--ttl .TL {
    font-size: 6.2801932367vw;
  }
}
.page_faculty .faculty_point--ttl .img {
  position: absolute;
  width: 192px;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_point--ttl .img {
    width: 46.3768115942vw;
  }
}
.page_faculty .faculty_point--contents {
  background-color: var(--bg-sub-col);
  padding: 72px 0 74px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_point--contents {
    padding: 17.3913043478vw 0 17.8743961353vw;
  }
}
.page_faculty .faculty_point--contents ul {
  display: flex;
  flex-direction: column;
  gap: 62px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_point--contents ul {
    gap: 14.9758454106vw;
  }
}
.page_faculty .faculty_point--contents ul .item {
  color: #fff;
}
.page_faculty .faculty_point--contents ul .item .ttl {
  padding-inline: 30px;
  display: flex;
  align-items: center;
  gap: 28px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_point--contents ul .item .ttl {
    padding-inline: 7.2463768116vw;
    gap: 6.7632850242vw;
  }
}
.page_faculty .faculty_point--contents ul .item .ttl .icon {
  width: 50px;
  height: 64px;
  background-image: url("../img/faculty/faculty_point-item-icon.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_point--contents ul .item .ttl .icon {
    width: 12.077294686vw;
    height: 15.4589371981vw;
  }
}
.page_faculty .faculty_point--contents ul .item .ttl .icon .TX {
  color: var(--bg-sub-col);
  text-align: center;
  width: 100%;
  display: block;
  position: absolute;
  top: 55%;
  left: 0;
  font-family: "Gotham", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.1em;
  font-size: 17px;
  line-height: 1;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_point--contents ul .item .ttl .icon .TX {
    font-size: 4.1062801932vw;
  }
}
.page_faculty .faculty_point--contents ul .item .ttl .TL {
  font-size: 22px;
  letter-spacing: 0.1em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_point--contents ul .item .ttl .TL {
    font-size: 5.3140096618vw;
  }
}
.page_faculty .faculty_point--contents ul .item .img {
  margin: 30px 0 26px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_point--contents ul .item .img {
    margin: 7.2463768116vw 0 6.2801932367vw;
  }
}
.page_faculty .faculty_point--contents ul .item .txt {
  padding-inline: 40px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_point--contents ul .item .txt {
    padding-inline: 9.6618357488vw;
  }
}
.page_faculty .faculty_point--contents ul .item .txt .TX {
  font-size: 15px;
  letter-spacing: 0.1em;
  line-height: 2;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_point--contents ul .item .txt .TX {
    font-size: 3.6231884058vw;
  }
}
.page_faculty .faculty_course {
  padding: 17px 0 102px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_course {
    padding: 4.1062801932vw 0 24.6376811594vw;
  }
}
.page_faculty .faculty_course--ttl {
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_course--ttl {
    margin-bottom: 7.2463768116vw;
  }
}
.page_faculty .faculty_course--contents ul .item {
  position: relative;
  z-index: 1;
}
.page_faculty .faculty_course--contents ul .item--bg {
  position: relative;
  z-index: 2;
  width: 334px;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_course--contents ul .item--bg {
    width: 80.6763285024vw;
  }
}
.page_faculty .faculty_course--contents ul .item .deco {
  position: absolute;
  top: -100px;
  z-index: 1;
  width: 164px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_course--contents ul .item .deco {
    width: 39.61352657vw;
    top: -24.154589372vw;
  }
}
.page_faculty .faculty_course--contents ul .item .deco.deco-left {
  left: 0;
}
.page_faculty .faculty_course--contents ul .item .deco.deco-right {
  right: 0;
}
.page_faculty .faculty_course--contents ul .item-inner {
  position: absolute;
  top: 50px;
  left: 0;
  width: 100%;
  z-index: 3;
  color: #fff;
  padding-inline: 40px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_course--contents ul .item-inner {
    padding-inline: 9.6618357488vw;
    top: 12.077294686vw;
  }
}
.page_faculty .faculty_course--contents ul .item-inner .ttl {
  margin-bottom: 14px;
  position: relative;
  padding-left: 60px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_course--contents ul .item-inner .ttl {
    margin-bottom: 3.3816425121vw;
    gap: 3.3816425121vw;
    padding-left: 14.4927536232vw;
  }
}
.page_faculty .faculty_course--contents ul .item-inner .ttl .TX {
  font-family: "Gotham", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.1em;
  font-size: 50px;
  line-height: 1;
  font-weight: 700;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 6%;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_course--contents ul .item-inner .ttl .TX {
    font-size: 12.077294686vw;
  }
}
.page_faculty .faculty_course--contents ul .item-inner .ttl .TL {
  font-size: 23px;
  white-space: nowrap;
  letter-spacing: 0;
  font-weight: 600;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_course--contents ul .item-inner .ttl .TL {
    font-size: 5.5555555556vw;
  }
}
.page_faculty .faculty_course--contents ul .item-inner .ttl .TL .course {
  font-size: 0.65em;
  font-weight: inherit;
}
.page_faculty .faculty_course--contents ul .item-inner .txt .TX {
  text-align: center;
  font-size: 14px;
  letter-spacing: 0.1em;
  line-height: 2;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_course--contents ul .item-inner .txt .TX {
    font-size: 3.3816425121vw;
  }
}
.page_faculty .faculty_info {
  padding: 0 20px 86px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_info {
    padding: 0 4.8309178744vw 20.7729468599vw;
  }
}
.page_faculty .faculty_info ul {
  display: flex;
  flex-direction: column;
  gap: 45px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_info ul {
    gap: 10.8695652174vw;
  }
}
.page_faculty .faculty_info ul .item {
  position: relative;
}
.page_faculty .faculty_info ul .item .item-deco {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  transform: translateY(-50%);
  margin-inline: auto;
  width: 75px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_info ul .item .item-deco {
    width: 18.115942029vw;
  }
}
.page_faculty .faculty_info ul .item .item-inner {
  background-color: #fff;
  padding: 68px 20px 37px;
  border-radius: 5px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_info ul .item .item-inner {
    padding: 16.4251207729vw 4.8309178744vw 8.9371980676vw;
    border-radius: 1.2077294686vw;
  }
}
.page_faculty .faculty_info ul .item .item-inner .ttl {
  margin-bottom: 28px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_info ul .item .item-inner .ttl {
    margin-bottom: 6.7632850242vw;
  }
}
.page_faculty .faculty_info ul .item .item-inner .ttl .TL {
  color: var(--bg-sub-col);
  font-size: 24px;
  text-align: center;
  font-weight: 600;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_info ul .item .item-inner .ttl .TL {
    font-size: 5.7971014493vw;
  }
}
.page_faculty .faculty_info ul .item .item-inner .txt .TX {
  font-size: 14px;
  line-height: 2;
  font-weight: 600;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_info ul .item .item-inner .txt .TX {
    font-size: 3.3816425121vw;
  }
}
.page_faculty .faculty_info ul .item .item-inner .txt .TX span {
  background-color: var(--marker);
  padding-inline: 0.3em;
}
.page_faculty .faculty_recommend {
  padding: 0 20px 86px;
  position: relative;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_recommend {
    padding: 0 4.8309178744vw 20.7729468599vw;
  }
}
.page_faculty .faculty_recommend .ttl {
  text-align: center;
  margin-bottom: 33px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_recommend .ttl {
    margin-bottom: 7.9710144928vw;
  }
}
.page_faculty .faculty_recommend .ttl .TL {
  font-size: 26px;
  letter-spacing: 0.1em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_recommend .ttl .TL {
    font-size: 6.2801932367vw;
  }
}
.page_faculty .faculty_recommend .txt {
  background-color: var(--bg-sub-col);
  padding: 43px 30px 32px 42px;
  border-radius: 5px;
  width: 282px;
  margin-left: auto;
  position: relative;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_recommend .txt {
    padding: 10.38647343vw 8.6956521739vw 7.729468599vw;
    border-radius: 1.2077294686vw;
    width: 68.115942029vw;
  }
}
.page_faculty .faculty_recommend .txt::before {
  content: "";
  position: absolute;
  top: 36px;
  right: calc(100% - 10px);
  width: 25px;
  aspect-ratio: 25/14;
  background-color: var(--bg-sub-col);
  clip-path: polygon(0 50%, 100% 100%, 100% 0%);
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_recommend .txt::before {
    width: 6.038647343vw;
    top: 8.6956521739vw;
    right: calc(100% - 0vw);
  }
}
.page_faculty .faculty_recommend .txt .TX {
  font-size: 17px;
  line-height: 2;
  letter-spacing: 0.1em;
  font-weight: 600;
  transform: translate(0px, -6px);
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_recommend .txt .TX {
    font-size: 4.1062801932vw;
    transform: translate(0px, -1.4492753623vw);
  }
}
.page_faculty .faculty_recommend .deco {
  position: absolute;
  width: 169px;
  top: 30px;
  left: 0;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_recommend .deco {
    width: 37.4396135266vw;
    top: 7.2463768116vw;
  }
}
.page_faculty .faculty_oc {
  padding: 0 20px 112px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_oc {
    padding: 0 4.8309178744vw 27.0531400966vw;
  }
}
.page_faculty .faculty_oc .ttl {
  margin-bottom: 15px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_oc .ttl {
    margin-bottom: 3.6231884058vw;
  }
}
.page_faculty .faculty_oc .ttl::before, .page_faculty .faculty_oc .ttl::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 3px;
  aspect-ratio: 3/30;
  background-color: #fff;
  transform: rotate(-20deg);
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_oc .ttl::before, .page_faculty .faculty_oc .ttl::after {
    width: 0.7246376812vw;
  }
}
.page_faculty .faculty_oc .ttl::after {
  left: unset;
  right: 0;
  transform: rotate(20deg);
}
.page_faculty .faculty_oc .ttl .TL {
  text-align: center;
  color: #fff;
  font-size: 18px;
  letter-spacing: 0.1em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_oc .ttl .TL {
    font-size: 4.347826087vw;
  }
}
.page_faculty .faculty_other--ttl {
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_other--ttl {
    margin-bottom: 7.2463768116vw;
  }
}
.page_faculty .faculty_other--ttl .TL {
  font-size: 24px;
  letter-spacing: 0.1em;
  text-align: center;
  color: #fff;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_other--ttl .TL {
    font-size: 5.7971014493vw;
  }
}
.page_faculty .faculty_other--contents {
  padding: 27px 20px 49px;
  background-color: var(--other-col);
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_other--contents {
    padding: 6.5217391304vw 4.8309178744vw 11.8357487923vw;
  }
}
.page_faculty .faculty_other--contents--inner {
  margin-top: 20px;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_other--contents--inner {
    margin-top: 4.8309178744vw;
  }
}
.page_faculty .faculty_other--contents--inner .TX {
  margin-bottom: 10px;
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_other--contents--inner .TX {
    margin-bottom: 2.4154589372vw;
    font-size: 4.347826087vw;
  }
}
.page_faculty .faculty_other--contents--inner .en {
  font-family: "Gotham", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.1em;
  font-size: 12px;
  letter-spacing: 0.1em;
  line-height: 1;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_faculty .faculty_other--contents--inner .en {
    font-size: 2.8985507246vw;
  }
}

/* -----------------------
  circle
----------------------- */
.page_circle {
  background-color: #F2F8FF;
}
.page_circle .circle_kv {
  position: relative;
  pointer-events: none;
  height: 100vh;
  min-height: 736px;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_kv {
    min-height: 177.7777777778vw;
  }
}
.page_circle .circle_kv--img {
  position: fixed;
  top: 0;
  min-height: 736px;
  height: 100svh;
  background-image: url("../img/circle/circle-kv-bg.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_kv--img {
    min-height: 177.7777777778vw;
  }
}
.page_circle .circle_kv .TL {
  position: absolute;
  z-index: 2;
  display: block;
  left: 0;
  right: 0;
  margin-inline: auto;
  top: 39%;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_kv .TL {
    width: 85.5072463768vw;
  }
}
.page_circle .circle_sec--wrap {
  position: relative;
  z-index: 2;
}
.page_circle .circle_txt-area {
  position: relative;
  padding: 100px 0 63px;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_txt-area {
    padding: 24.154589372vw 0 15.2173913043vw;
  }
}
.page_circle .circle_txt-area::before {
  content: "";
  display: block;
  background: #30526C;
  opacity: 0.8;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.page_circle .circle_txt-area--inner {
  position: relative;
  z-index: 2;
  color: #FFF;
}
.page_circle .circle_txt-area--inner .txt {
  margin-bottom: 35px;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_txt-area--inner .txt {
    margin-bottom: 8.4541062802vw;
  }
}
.page_circle .circle_txt-area--inner .txt .TX {
  font-size: 18px;
  letter-spacing: 0.1em;
  line-height: 2;
  text-align: center;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_txt-area--inner .txt .TX {
    font-size: 4.347826087vw;
  }
}
.page_circle .circle_txt-area--inner .btn {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_txt-area--inner .btn {
    gap: 2.4154589372vw;
  }
}
.page_circle .circle_txt-area--inner .btn a {
  display: block;
  width: 231px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_txt-area--inner .btn a {
    width: 55.7971014493vw;
  }
}
.page_circle .circle_contents#type-pe {
  background-color: #F2F8FF;
}
.page_circle .circle_contents#type-pe .C_circle_contents-ttl {
  background-color: #5A4DB2;
}
.page_circle .circle_contents#type-pe .key .key-list .key-list-item .TX {
  color: #5A4DB2;
}
.page_circle .circle_contents#type-pe .key .key-list .key-list-item .TX::before {
  background-image: url("../img/circle/circle_contents-icon-pe.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_circle .circle_contents#type-cul {
  background-color: #FFF7FF;
}
.page_circle .circle_contents#type-cul .C_circle_contents-ttl {
  background-color: #E056A2;
}
.page_circle .circle_contents#type-cul .key .key-list .key-list-item .TX {
  color: #E056A2;
}
.page_circle .circle_contents#type-cul .key .key-list .key-list-item .TX::before {
  background-image: url("../img/circle/circle_contents-icon-cul.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_circle .circle_contents#type-other {
  background-color: #EFF0FF;
}
.page_circle .circle_contents#type-other .C_circle_contents-ttl {
  background-color: #9FA5D9;
}
.page_circle .circle_contents#type-other .circle_contents--other ul li .TX::before {
  background-image: url("../img/circle/circle_contents-icon-pe.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.page_circle .circle_contents--inner .item_list .item {
  padding-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_contents--inner .item_list .item {
    padding-bottom: 19.3236714976vw;
  }
}
.page_circle .circle_contents--inner .item_list .item .txt {
  padding: 40px 40px 30px;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_contents--inner .item_list .item .txt {
    padding: 9.6618357488vw 9.6618357488vw 7.2463768116vw;
  }
}
.page_circle .circle_contents--inner .item_list .item .txt .TX {
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.1em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_contents--inner .item_list .item .txt .TX {
    font-size: 3.3816425121vw;
  }
}
.page_circle .circle_contents--inner .item_list .item .key {
  background-color: #FFF;
  padding: 20px 0 0;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_contents--inner .item_list .item .key {
    padding: 4.8309178744vw 0 0;
  }
}
.page_circle .circle_contents--inner .item_list .item .key .TL {
  font-family: "Gotham", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.1em;
  text-align: center;
  font-weight: 600;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.1em;
  margin-bottom: 15px;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_contents--inner .item_list .item .key .TL {
    font-size: 2.8985507246vw;
  }
}
.page_circle .circle_contents--inner .item_list .item .key .key-list {
  padding: 15px 10px 27px;
  overflow-x: scroll;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_contents--inner .item_list .item .key .key-list {
    padding: 3.6231884058vw 2.4154589372vw 6.5217391304vw;
  }
}
.page_circle .circle_contents--inner .item_list .item .key .key-list .key-list-item {
  display: flex;
  flex-wrap: nowrap;
  gap: 22px;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_contents--inner .item_list .item .key .key-list .key-list-item {
    gap: 5.3140096618vw;
  }
}
.page_circle .circle_contents--inner .item_list .item .key .key-list .key-list-item .TX {
  white-space: nowrap;
  font-size: 20px;
  line-height: 1;
  letter-spacing: 0.1em;
  display: flex;
  align-items: center;
  gap: 13px;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_contents--inner .item_list .item .key .key-list .key-list-item .TX {
    font-size: 4.8309178744vw;
    gap: 3.1400966184vw;
  }
}
.page_circle .circle_contents--inner .item_list .item .key .key-list .key-list-item .TX::before {
  content: "";
  display: block;
  width: 26px;
  height: 23px;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_contents--inner .item_list .item .key .key-list .key-list-item .TX::before {
    width: 6.2801932367vw;
    height: 5.5555555556vw;
  }
}
.page_circle .circle_contents--other {
  padding: 70px 20px 66px 40px;
}
.page_circle .circle_contents--other ul {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 27px;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_contents--other ul {
    gap: 6.5217391304vw 4.8309178744vw;
  }
}
.page_circle .circle_contents--other ul li .TX {
  white-space: nowrap;
  font-size: 20px;
  line-height: 1;
  letter-spacing: 0.1em;
  display: flex;
  align-items: center;
  gap: 13px;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_contents--other ul li .TX {
    font-size: 4.8309178744vw;
    gap: 3.1400966184vw;
  }
}
.page_circle .circle_contents--other ul li .TX::before {
  content: "";
  display: block;
  width: 26px;
  height: 23px;
}
@media screen and (max-width: 767px) {
  .page_circle .circle_contents--other ul li .TX::before {
    width: 6.2801932367vw;
    height: 5.5555555556vw;
  }
}
.page_circle .circle_banner {
  background-color: #F2F8FF;
}

/* -----------------------
  heart-map
----------------------- */
.page_heart-map {
  background-color: #F2F8FF;
}
.page_heart-map .heart-map_kv {
  background-image: url("../img/heart-map/heart-map_kv-bg.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}
.page_heart-map .heart-map_txt-area {
  padding: 90px 40px 0;
  background-color: #FF8C4E;
  color: #FFFFFF;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_txt-area {
    padding: 21.7391304348vw 9.6618357488vw 0;
  }
}
.page_heart-map .heart-map_txt-area .ttl {
  margin-bottom: 45px;
  margin-inline: auto;
  width: 307px;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_txt-area .ttl {
    margin-bottom: 10.8695652174vw;
    width: 74.154589372vw;
  }
}
.page_heart-map .heart-map_txt-area .txt {
  margin-bottom: 28px;
  padding-left: 13px;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_txt-area .txt {
    margin-bottom: 6.7632850242vw;
    padding-left: 3.1400966184vw;
  }
}
.page_heart-map .heart-map_txt-area .txt .TX {
  font-size: 18px;
  line-height: 2.3;
  letter-spacing: 0.09em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_txt-area .txt .TX {
    font-size: 4.347826087vw;
  }
}
.page_heart-map .heart-map_txt-area .img.heart-map {
  margin-top: auto;
  align-self: stretch;
}
.page_heart-map .heart-map_txt-area .img.heart-map img {
  width: 100%;
  display: block;
}
.page_heart-map .heart-map_contents {
  background-color: #FFFFFF;
}
.page_heart-map .heart-map_contents.type-01 {
  --bg-color: #DC0117;
}
.page_heart-map .heart-map_contents.type-01 .heart-map_contents--wrap .map-area .img {
  width: 589px;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents.type-01 .heart-map_contents--wrap .map-area .img {
    width: 142.270531401vw;
  }
}
.page_heart-map .heart-map_contents.type-02 {
  --bg-color: #FA5700;
}
.page_heart-map .heart-map_contents.type-02 .heart-map_contents--wrap .map-area .img {
  width: 718px;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents.type-02 .heart-map_contents--wrap .map-area .img {
    width: 173.4299516908vw;
  }
}
.page_heart-map .heart-map_contents--ttl {
  background-color: var(--bg-color);
  color: #FFFFFF;
  padding: 62px 0 88px;
  position: relative;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--ttl {
    padding: 14.9758454106vw 0 21.2560386473vw;
  }
}
.page_heart-map .heart-map_contents--ttl::before {
  content: "";
  display: block;
  aspect-ratio: 20/22;
  background-color: var(--bg-color);
  position: absolute;
  left: 0;
  right: 0;
  margin-inline: auto;
  z-index: 1;
  clip-path: polygon(0 0, 100% 0%, 50% 100%);
  bottom: 0;
  transform: translateY(50%);
  width: 20px;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--ttl::before {
    width: 4.8309178744vw;
  }
}
.page_heart-map .heart-map_contents--ttl .ttl {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--ttl .ttl {
    gap: 3.8647342995vw;
    margin-bottom: 7.2463768116vw;
  }
}
.page_heart-map .heart-map_contents--ttl .ttl .icon {
  width: 28px;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--ttl .ttl .icon {
    width: 6.7632850242vw;
  }
}
.page_heart-map .heart-map_contents--ttl .ttl .TL {
  font-size: 15px;
  text-align: center;
  letter-spacing: 0.1em;
  line-height: 1;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--ttl .ttl .TL {
    font-size: 3.6231884058vw;
  }
}
.page_heart-map .heart-map_contents--ttl .txt .TX {
  text-align: center;
  font-size: 36px;
  line-height: 2;
  letter-spacing: 0.1em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--ttl .txt .TX {
    font-size: 8.6956521739vw;
  }
}
.page_heart-map .heart-map_contents--wrap {
  padding: 0 0 68px;
  background-color: #FFFFFF;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--wrap {
    padding: 0 0 16.4251207729vw;
  }
}
.page_heart-map .heart-map_contents--wrap .map-area {
  margin-bottom: 100px;
  overflow-x: auto;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--wrap .map-area {
    margin-bottom: 24.154589372vw;
  }
}
.page_heart-map .heart-map_contents--wrap .map-area .img {
  position: relative;
}
.page_heart-map .heart-map_contents--wrap .map-area .img .scroll-hint {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  background-color: rgba(0, 0, 0, 0.2);
  pointer-events: none;
  transition: opacity 0.5s ease 0.3s;
}
.page_heart-map .heart-map_contents--wrap .map-area .img .scroll-hint.is-active {
  opacity: 0;
}
.page_heart-map .heart-map_contents--wrap .map-area .img .scroll-hint-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  aspect-ratio: 1;
  width: 176px;
  background-color: #DBDBDB;
  border-radius: 10px;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--wrap .map-area .img .scroll-hint-inner {
    width: 42.5120772947vw;
    border-radius: 2.4154589372vw;
  }
}
.page_heart-map .heart-map_contents--wrap .map-area .img .scroll-hint-inner .icon {
  width: 64px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--wrap .map-area .img .scroll-hint-inner .icon {
    width: 15.4589371981vw;
  }
}
.page_heart-map .heart-map_contents--wrap .map-area .img-pin a {
  position: absolute;
  display: block;
  width: 23px;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--wrap .map-area .img-pin a {
    width: 5.5555555556vw;
  }
}
.page_heart-map .heart-map_contents--wrap .list-area {
  display: flex;
  flex-direction: column;
  gap: 99px;
  padding-inline: 20px;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--wrap .list-area {
    gap: 23.9130434783vw;
    padding-inline: 4.8309178744vw;
  }
}
.page_heart-map .heart-map_contents--wrap .list-area .item {
  border-color: var(--bg-color);
  border-width: 5px;
  border-style: solid;
  border-radius: 10px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--wrap .list-area .item {
    border-width: 1.2077294686vw;
    border-radius: 2.4154589372vw;
  }
}
.page_heart-map .heart-map_contents--wrap .list-area .item .num {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-60%, -85%);
  width: 64px;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--wrap .list-area .item .num {
    width: 15.4589371981vw;
  }
}
.page_heart-map .heart-map_contents--wrap .list-area .item .ttl {
  padding: 23px 0 13px;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--wrap .list-area .item .ttl {
    padding: 5.5555555556vw 0 3.1400966184vw;
  }
}
.page_heart-map .heart-map_contents--wrap .list-area .item .ttl .TL {
  color: var(--bg-color);
  font-size: 18px;
  letter-spacing: 0.1em;
  line-height: 1;
  text-align: center;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--wrap .list-area .item .ttl .TL {
    font-size: 4.347826087vw;
  }
}
.page_heart-map .heart-map_contents--wrap .list-area .item .img {
  position: relative;
}
.page_heart-map .heart-map_contents--wrap .list-area .item .img .deco {
  position: absolute;
}
.page_heart-map .heart-map_contents--wrap .list-area .item .txt {
  background-color: var(--bg-color);
  color: #FFFFFF;
  text-align: center;
  padding: 35px 0 35px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--wrap .list-area .item .txt {
    padding: 8.4541062802vw 0 8.4541062802vw;
  }
}
.page_heart-map .heart-map_contents--wrap .list-area .item .txt::before {
  content: "";
  display: block;
  aspect-ratio: 20/22;
  background-color: var(--bg-color);
  position: absolute;
  left: 0;
  right: 0;
  margin-inline: auto;
  z-index: 1;
  clip-path: polygon(0 100%, 100% 100%, 50% 0);
  top: 0;
  transform: translateY(-50%);
  width: 20px;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--wrap .list-area .item .txt::before {
    width: 4.8309178744vw;
  }
}
.page_heart-map .heart-map_contents--wrap .list-area .item .txt .TL {
  font-size: 24px;
  letter-spacing: 0.1em;
  margin-bottom: 20px;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--wrap .list-area .item .txt .TL {
    font-size: 5.7971014493vw;
    margin-bottom: 4.8309178744vw;
  }
}
.page_heart-map .heart-map_contents--wrap .list-area .item .txt .TX {
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.1em;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .page_heart-map .heart-map_contents--wrap .list-area .item .txt .TX {
    font-size: 3.3816425121vw;
  }
}
.page_heart-map .heart-map_banner {
  background-color: #FFFFFF;
}

/* -----------------------
  anime
----------------------- */
.loading {
  width: 100%;
  height: 100%;
  background-color: #FFF;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  pointer-events: none;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  transition: opacity 0.5s 0.2s ease;
  opacity: 0;
  pointer-events: none;
}
.loading--img {
  width: 220px;
}
@media screen and (max-width: 767px) {
  .loading--img {
    width: 53.1400966184vw;
  }
}
.loading.is-active {
  opacity: 1;
  pointer-events: all;
}

.hover-opa {
  transition: 0.3s;
}
.hover-opa:hover {
  opacity: 0.6;
}

.anime-pop {
  opacity: 0;
  transition: opacity 1.5s ease-in 0.2s;
}
.anime-pop.is-show {
  opacity: 1;
}

.anime-up {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.5s ease-out 0.15s, transform 0.5s ease-out 0.15s;
}
.anime-up.is-show {
  opacity: 1;
  transform: translateY(0);
}

.delay-01 {
  animation-delay: 0.1s !important;
}

.delay-02 {
  animation-delay: 0.2s !important;
}

.delay-03 {
  animation-delay: 0.3s !important;
}

.delay-04 {
  animation-delay: 0.4s !important;
}

.delay-05 {
  animation-delay: 0.5s !important;
}

.delay-06 {
  animation-delay: 0.6s !important;
}

.delay-07 {
  animation-delay: 0.7s !important;
}

.delay-08 {
  animation-delay: 0.8s !important;
}

.delay-09 {
  animation-delay: 0.9s !important;
}

.delay-10 {
  animation-delay: 1s !important;
}

.delay-15 {
  animation-delay: 1.5s !important;
}

.duration-01 {
  animation-duration: 0.1s !important;
}

.duration-02 {
  animation-duration: 0.2s !important;
}

.duration-03 {
  animation-duration: 0.3s !important;
}

.duration-04 {
  animation-duration: 0.4s !important;
}

.duration-05 {
  animation-duration: 0.5s !important;
}

.duration-06 {
  animation-duration: 0.6s !important;
}

.duration-07 {
  animation-duration: 0.7s !important;
}

.duration-08 {
  animation-duration: 0.8s !important;
}

.duration-09 {
  animation-duration: 0.9s !important;
}

.duration-10 {
  animation-duration: 1s !important;
}

.duration-15 {
  animation-duration: 1.5s !important;
}

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