@charset "UTF-8";
.p-main-vis {
  position: relative;
}
.p-main-vis:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(0, 0, 0, 0.3);
}
.p-main-vis:after {
  content: "";
  width: clamp(3rem, 20.8333333333vw, 25rem);
  position: absolute;
  top: 0;
  left: 0;
  aspect-ratio: 80/14.5;
  clip-path: polygon(0px 0px, 0px 100%, 100% 0);
  background-color: var(--color_red01);
}
.p-main-vis__copy {
  position: sticky;
  top: 45%;
  z-index: 2;
}
.p-main-vis__copy__sub {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 0.5rem;
  color: var(--color_mono02);
}
.p-main-vis__copy__sub:after {
  content: "";
  display: block;
  width: clamp(2rem, 2.9166666667vw, 3.5rem);
  height: 1px;
  margin-left: 1rem;
  background-color: var(--color_mono02);
}
.p-main-vis__copy__main {
  width: 90%;
  margin: auto;
}
.p-main-vis__slider {
  margin-top: -15vw;
}

@media screen and (min-width: 768px) {
  .p-main-vis__copy {
    position: absolute;
    top: auto;
    left: 0;
    bottom: 0.5rem;
    right: 0;
  }
  .p-main-vis__slider {
    margin-top: 0;
  }
}
@media screen and (min-width: 992px) {
  .p-main-vis {
    position: relative;
  }
  .p-main-vis__copy {
    top: 0;
  }
  .p-main-vis__copy__sub {
    position: absolute;
    top: clamp(1rem, 5.46875vw, 6.5625rem);
    left: clamp(1.5rem, 3.0208333333vw, 3.625rem);
    writing-mode: vertical-lr;
    letter-spacing: 0.3rem;
    font-size: clamp(1rem, 1.9791666667vw, 2.375rem);
    letter-spacing: 0.2rem;
  }
  .p-main-vis__copy__sub:after {
    height: clamp(2rem, 2.9166666667vw, 3.5rem);
    width: 2px;
    margin-right: 0.5em;
  }
  .p-main-vis__copy__main {
    width: clamp(1rem, 61.4583333333vw, 73.75rem);
    position: absolute;
    bottom: 0.5rem;
    left: 1.5rem;
  }
  .p-main-vis__slider img {
    width: 100%;
    aspect-ratio: 1920/840;
    object-fit: cover;
  }
}
@media screen and (min-width: 1240px) {
  .p-main-vis__copy__sub {
    font-size: clamp(1rem, 1.9791666667vw, 2.375rem);
    letter-spacing: clamp(0.2rem, 0.5208333333vw, 0.625rem);
  }
}
.p-course {
  padding-top: clamp(4rem, 6.0416666667vw, 7.25rem);
  padding-bottom: clamp(3rem, 3.4895833333vw, 4.1875rem);
}
.p-course__container {
  width: 90%;
  max-width: 1310px;
  margin: auto;
}
.p-course__list {
  aspect-ratio: 678/150;
  background-size: cover;
  margin-bottom: 0.5rem;
}
.p-course__list:nth-of-type(1) {
  background-image: url(../img/front__course01.jpg);
}
.p-course__list:nth-of-type(2) {
  background-image: url(../img/front__course02.jpg);
}
.p-course__list__item {
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
  background-color: rgba(19, 19, 19, 0.3);
  color: var(--color_mono02);
  transition: 0.3s;
}
.p-course__list__item:before {
  content: "";
  display: block;
  width: clamp(3rem, 6.25vw, 7.5rem);
  height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  background-color: var(--color_red01);
  z-index: 0;
  transition: 0.3s;
}
.p-course__list__item:hover {
  background-color: rgba(0, 0, 0, 0.6);
}
.p-course__list__item:hover:before {
  width: clamp(5rem, 9.375vw, 11.25rem);
}
.p-course__list__name {
  display: block;
  margin-top: 1rem;
  padding-left: clamp(1.5rem, 1.5625vw, 1.875rem);
  position: relative;
  z-index: 1;
  font-size: var(--f20);
}
.p-course__list__name__eng {
  display: block;
  font-family: var(--montserrat);
  font-weight: 700;
  font-size: var(--f48);
  line-height: 1;
}
.p-course__note {
  font-size: var(--f16);
}

@media screen and (min-width: 992px) {
  .p-course__lists {
    display: flex;
    justify-content: space-between;
  }
  .p-course__list {
    width: clamp(1rem, 50%, 42.375rem);
    aspect-ratio: 678/240;
    margin-bottom: 0;
    clip-path: polygon(12% 0%, 100% 0%, 88% 100%, 0% 100%);
  }
  .p-course__list:nth-of-type(2) {
    margin-left: -2rem;
  }
  .p-course__list__item:before {
    width: clamp(4rem, 7.8125vw, 9.375rem);
    transform: skew(-18deg);
  }
  .p-course__list__name {
    padding-left: clamp(1.5rem, 3.125vw, 3.75rem);
  }
  .p-course__list__name__eng {
    margin-left: clamp(1rem, 1.0416666667vw, 1.25rem);
    line-height: 1.3;
  }
}
.p-campaign{
  padding-bottom: clamp(3rem, 3.4895833333vw, 4.1875rem);
}
.p-campaign .p-campaign__banner{
  display: block;
  max-width: 620px;
  margin: auto;
}
.p-news {
  padding-top: clamp(4rem, 4.1666666667vw, 5rem);
  padding-bottom: clamp(4rem, 5.7291666667vw, 6.875rem);
  background-color: var(--color_bg01);
}
.p-news__title {
  width: fit-content;
  margin: auto;
  margin-bottom: clamp(1.5rem, 2.34375vw, 2.8125rem);
  text-align: center;
}
.p-news__title::before, .p-news__title:after {
  content: "";
  display: block;
  width: clamp(3rem, 4.6875vw, 5.625rem);
  aspect-ratio: 80/14.5;
  background-image: url(../img/front__news__title-deco.png);
  background-size: contain;
  background-repeat: no-repeat;
}
.p-news__title:before {
  margin-left: -3rem;
}
.p-news__title:after {
  margin-left: auto;
  margin-right: -3rem;
  transform: rotate(180deg);
}
.p-news__title__eng {
  color: var(--color_red01);
  font-size: var(--f64);
  line-height: 1.2;
}
.p-news__lists {
  max-width: 1024px;
  margin: auto;
  background-color: var(--color_mono02);
}
.p-news__list {
  border-bottom: 1px solid var(--color_mono03);
}
.p-news__list:nth-of-type(1) {
  border-top: 1px solid var(--color_mono03);
}
.p-news__list__item {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding-top: clamp(1rem, 1.5625vw, 1.875rem);
  padding-bottom: clamp(1rem, 1.40625vw, 1.6875rem);
  padding-left: clamp(1rem, 2.0833333333vw, 2.5rem);
  padding-right: calc(clamp(1rem, 1.8229166667vw, 2.1875rem) + clamp(1rem, 1.7708333333vw, 2.125rem));
  position: relative;
}
.p-news__list__item:before {
  content: "";
  width: 0.5rem;
  aspect-ratio: 1/1;
  clip-path: polygon(9px 50%, 0% 0%, 0% 9px);
  position: absolute;
  top: 45.5%;
  right: 1.4rem;
  background-color: var(--color_mono02);
  z-index: 2;
  transition: 0.1s;
}
.p-news__list__item:after {
  content: "";
  width: 1.5rem;
  aspect-ratio: 1/1;
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
  background-color: var(--color_red01);
  border-radius: 50%;
  transition: 0.1s;
}
.p-news__list__item:hover {
  background-color: var(--color_bg01);
}
.p-news__list__item:hover .p-news__list__title {
  color: var(--color_red01);
}
.p-news__list__item:hover:before {
  right: 1.2rem;
}
.p-news__list__item:hover:after {
  right: 0.8rem;
}
.p-news__list__time {
  color: var(--color_mono03);
}
.p-news__list__category {
  display: block;
  margin-left: 0.5rem;
  padding: 0 0.25rem;
  background-color: var(--color_red01);
  color: var(--color_mono02);
  font-size: 0.7rem;
}
.p-news__list__title {
  width: 100%;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .p-news__title__jpn {
    font-weight: 700;
    font-size: var(--f20);
    line-height: 1;
  }
  .p-news__list__category {
    font-size: var(--f14);
  }
}
.p-page-nav__lists {
  display: grid;
  grid-template-columns: repeat(2, minmax(clamp(10rem, 10.4166666667vw, 12.5rem), 1fr));
  gap: clamp(0.5rem, 0.5208333333vw, 0.625rem);
}
.p-page-nav__list {
  position: relative;
  background-size: cover;
}
.p-page-nav__list:nth-of-type(1) {
  background-image: url(../img/front__page-nav01.jpg);
}
.p-page-nav__list:nth-of-type(2) {
  background-image: url(../img/front__page-nav02.jpg);
}
.p-page-nav__list:nth-of-type(3) {
  background-image: url(../img/front__page-nav03.jpg);
}
.p-page-nav__list:nth-of-type(4) {
  background-image: url(../img/front__page-nav04.jpg);
}
.p-page-nav__list__item {
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 480/490;
  background-color: rgba(19, 19, 19, 0.6);
  text-align: center;
}
.p-page-nav__list__item:hover {
  background-color: rgba(0, 0, 0, 0.3);
}
.p-page-nav__list__item:hover .p-page-nav__list__name {
  text-shadow: 0 0 3rem rgb(0, 0, 0);
}
.p-page-nav__list__name {
  padding-top: 1.5rem;
  color: var(--color_mono02);
  font-family: "Noto Serif", Times new roman, "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "HG明朝B", serif;
}
.p-page-nav__list__name:after {
  content: "";
  display: block;
  height: clamp(1px, 0.1041666667vw, 0.125rem);
  width: clamp(3.5rem, 6.09375vw, 7.3125rem);
  margin: 1rem auto 0;
  background-color: var(--color_mono02);
}

@media screen and (min-width: 768px) {
  .p-page-nav__lists {
    grid-template-columns: repeat(4, minmax(clamp(10rem, 10.4166666667vw, 12.5rem), 1fr));
  }
  .p-page-nav__list__name {
    font-size: var(--f28);
  }
}
.p-more {
  padding-top: clamp(2rem, 5.9895833333vw, 7.1875rem);
}
.p-more__list:not(:last-of-type) {
  margin-bottom: clamp(1rem, 2.8125vw, 3.375rem);
}
.p-more__recruit__table tr {
  border-top: 1px solid var(--color_mono06);
  border-bottom: 1px solid var(--color_mono06);
}
.p-more__recruit__table th, .p-more__recruit__table td {
  display: block;
  padding: 0;
}
.p-more__recruit__table th {
  padding-top: 0.5rem;
  font-weight: 700;
}
.p-more__recruit__table td {
  padding-bottom: 0.5rem;
}
.p-more__lightbox {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-more__recruit__table th,
  .p-more__recruit__table td {
    display: table-cell;
    padding: 1.5rem 1rem;
  }
}/*# sourceMappingURL=front-page.css.map */