/* Sass Document */
main {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background-color: #D6EBF7;
}
main::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: url(../img/common/bg_content.png) no-repeat center top;
  background-size: cover;
}
@media screen and (max-width: 768px) {
  main::before {
    background: url(../img/common/bg_content_sp.png) no-repeat center top;
    background-size: cover;
  }
}

.wrap {
  max-width: 108rem;
  width: 90%;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .wrap {
    width: 87.277vw;
  }
}

.en {
  font-family: "Montserrat", "Myriad Pro", "Helvetica", "Arial", sans-serif;
}

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

.sp {
  display: none !important;
}
@media screen and (max-width: 768px) {
  .sp {
    display: block !important;
  }
}

.main_title_area {
  padding: 15.6rem 0 6.5rem;
  background: url(../img/common/bg_main_title_area.png) no-repeat center center;
  background-size: cover;
}
@media screen and (max-width: 1000px) {
  .main_title_area {
    padding: 14.444vw 0 6.019vw;
  }
}
@media screen and (max-width: 768px) {
  .main_title_area {
    padding: 17.812vw 0 17.303vw;
    margin-top: 83px;
    background: url(../img/common/bg_main_title_area_sp.png) no-repeat center center;
    background-size: cover;
  }
}
.main_title_area .en {
  margin-bottom: 0.3rem;
  font-size: 1.5rem;
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.2;
  text-transform: uppercase;
}
@media screen and (max-width: 1000px) {
  .main_title_area .en {
    margin-bottom: 0.278vw;
    font-size: 1.389vw;
  }
}
@media screen and (max-width: 768px) {
  .main_title_area .en {
    margin-bottom: 1.272vw;
    font-size: 3.308vw;
    line-height: 1.2307692308;
  }
}
.main_title_area .main_title {
  font-size: 4.7rem;
  color: #fff;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.4468085106;
}
@media screen and (max-width: 1000px) {
  .main_title_area .main_title {
    font-size: 4.352vw;
  }
}
@media screen and (max-width: 768px) {
  .main_title_area .main_title {
    font-size: 7.634vw;
    line-height: 1.4333333333;
  }
}

#breadcrumb {
  padding: 3.5rem 0;
}
@media screen and (max-width: 1000px) {
  #breadcrumb {
    padding: 3.241vw 0;
  }
}
@media screen and (max-width: 768px) {
  #breadcrumb {
    padding: 7.634vw 0;
  }
}
#breadcrumb ul {
  display: flex;
  align-items: center;
  gap: 1rem;
  list-style: none;
}
@media screen and (max-width: 1000px) {
  #breadcrumb ul {
    gap: 0.926vw;
  }
}
@media screen and (max-width: 768px) {
  #breadcrumb ul {
    gap: 2.545vw;
  }
}
#breadcrumb ul li {
  display: flex;
  align-items: center;
  gap: 1rem;
  font-size: 1.1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 1000px) {
  #breadcrumb ul li {
    gap: 0.926vw;
    font-size: 1.019vw;
  }
}
@media screen and (max-width: 768px) {
  #breadcrumb ul li {
    gap: 2.545vw;
    font-size: 3.053vw;
  }
}
#breadcrumb ul li a {
  text-decoration: underline;
}
#breadcrumb ul li + li:before {
  content: "";
  width: 0.6rem;
  height: 0.6rem;
  border-top: solid 1.25px #222;
  border-right: solid 1.25px #222;
  transform: rotate(45deg);
}
@media screen and (max-width: 1000px) {
  #breadcrumb ul li + li:before {
    width: 0.556vw;
    height: 0.556vw;
  }
}
@media screen and (max-width: 768px) {
  #breadcrumb ul li + li:before {
    width: 1.527vw;
    height: 1.527vw;
  }
}

#exam_area {
  padding: 4.5rem 0 10rem;
}
@media screen and (max-width: 1000px) {
  #exam_area {
    padding: 4.167vw 0 9.259vw;
  }
}
@media screen and (max-width: 768px) {
  #exam_area {
    padding: 10.178vw 0 20.356vw;
  }
}
#exam_area .box_area {
  display: flex;
  justify-content: center;
  gap: 2rem;
  margin-bottom: 5rem;
}
@media screen and (max-width: 1000px) {
  #exam_area .box_area {
    gap: 1.852vw;
    margin-bottom: 4.63vw;
  }
}
@media screen and (max-width: 768px) {
  #exam_area .box_area {
    flex-direction: column;
    gap: 5.089vw;
    margin-bottom: 10.178vw;
  }
}
#exam_area .w_box {
  width: 34.3rem;
  padding: 3.6rem 2rem 3.3rem;
  background: #fff;
  border-radius: 0.8rem;
}
@media screen and (max-width: 1000px) {
  #exam_area .w_box {
    width: 31.759vw;
    padding: 3.333vw 1.852vw 3.056vw;
    border-radius: 0.741vw;
  }
}
@media screen and (max-width: 768px) {
  #exam_area .w_box {
    width: 100%;
    padding: 9.16vw 5.089vw 8.397vw;
    border-radius: 2.036vw;
  }
}
#exam_area .title {
  margin-bottom: 2.5rem;
  font-size: 2rem;
  font-weight: 600;
  text-align: center;
  line-height: 1.45;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 1000px) {
  #exam_area .title {
    margin-bottom: 2.315vw;
    font-size: 1.852vw;
  }
}
@media screen and (max-width: 768px) {
  #exam_area .title {
    margin-bottom: 6.361vw;
    font-size: 5.089vw;
  }
}
#exam_area .btn_list {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  list-style: none;
}
@media screen and (max-width: 1000px) {
  #exam_area .btn_list {
    gap: 0.741vw;
  }
}
@media screen and (max-width: 768px) {
  #exam_area .btn_list {
    gap: 2.036vw;
  }
}
#exam_area .btn_list a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  width: 100%;
  height: 6rem;
  font-size: 1.5rem;
  color: #fff;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-decoration: none;
  background: linear-gradient(0deg, #0657C2 0%, #0693C2 100%);
  border-radius: 0.5rem;
}
@media screen and (max-width: 1000px) {
  #exam_area .btn_list a {
    gap: 0.926vw;
    height: 5.556vw;
    font-size: 1.389vw;
    border-radius: 0.463vw;
  }
}
@media screen and (max-width: 768px) {
  #exam_area .btn_list a {
    gap: 2.545vw;
    height: 15.267vw;
    font-size: 3.817vw;
    border-radius: 1.272vw;
  }
}
@media (any-hover: hover) {
  #exam_area .btn_list a {
    transition: opacity 0.3s ease;
  }
  #exam_area .btn_list a:hover {
    opacity: 0.7;
  }
}
#exam_area .btn_list a img {
  width: 1.8rem;
}
@media screen and (max-width: 1000px) {
  #exam_area .btn_list a img {
    width: 1.667vw;
  }
}
@media screen and (max-width: 768px) {
  #exam_area .btn_list a img {
    width: 4.58vw;
  }
}
#exam_area .btn_list ._red a {
  background: #EF5350;
}
#exam_area .btn_list ._blue a {
  background: #2B579A;
}
#exam_area .btn_list ._cyan a {
  background: linear-gradient(180deg, #7ACECF 0%, #3C9BB9 100%);
}
#exam_area .banner {
  max-width: 40rem;
  margin: auto;
}
@media screen and (max-width: 1000px) {
  #exam_area .banner {
    max-width: 37.037vw;
  }
}
@media screen and (max-width: 768px) {
  #exam_area .banner {
    max-width: none;
  }
}
#exam_area .banner a {
  display: block;
}
@media (any-hover: hover) {
  #exam_area .banner a {
    transition: opacity 0.3s ease;
  }
  #exam_area .banner a:hover {
    opacity: 0.7;
  }
}
#exam_area .banner img {
  display: block;
  width: 100%;
  height: auto;
}

/* 入試日程 */
#exam_area .schedule_area {
  display: flex;
  justify-content: center;
  gap: 2rem;
  margin-bottom: 4rem;
}
@media screen and (max-width: 1000px) {
  #exam_area .schedule_area {
    gap: 1.852vw;
    margin-bottom: 3.704vw;
  }
}
@media screen and (max-width: 768px) {
  #exam_area .schedule_area {
    flex-direction: column;
    gap: 3.817vw;
    margin-bottom: 10.178vw;
  }
}
#exam_area .schedule_box {
  width: 44rem;
  padding: 2.5rem 2rem;
  background: #fff;
  border: 2px solid #F96230;
  border-radius: 0.8rem;
}
@media screen and (max-width: 1000px) {
  #exam_area .schedule_box {
    width: 43vw;
    padding: 2.315vw 1.852vw;
    border-radius: 0.741vw;
  }
}
@media screen and (max-width: 768px) {
  #exam_area .schedule_box {
    width: 100%;
    padding: 5.089vw 5.089vw 5.598vw;
    border-radius: 2.036vw;
  }
}
#exam_area .schedule_title {
  font-size: 2rem;
  font-weight: 600;
  color: #0657C2;
  text-align: center;
  line-height: 1.45;
}
#exam_area .schedule_title span {
  display: block;
}
@media screen and (max-width: 1000px) {
  #exam_area .schedule_title {
    font-size: 1.852vw;
  }
}
@media screen and (max-width: 768px) {
  #exam_area .schedule_title {
    font-size: 4.835vw;
  }
}
#exam_area .schedule_date {
  margin-top: 1rem;
  font-size: 1.7rem;
  font-weight: 600;
  color: #F96230;
  text-align: center;
}
@media screen and (max-width: 1000px) {
  #exam_area .schedule_date {
    margin-top: 0.926vw;
    font-size: 1.574vw;
  }
}
@media screen and (max-width: 768px) {
  #exam_area .schedule_date {
    margin-top: 2.545vw;
    font-size: 4.326vw;
  }
}
#exam_area .schedule_box dl {
  margin-top: 1.5rem;
  font-size: 1.5rem;
  line-height: 1.8;
}
#exam_area .schedule_box dt {
  font-weight: 700;
}
@media screen and (max-width: 1000px) {
  #exam_area .schedule_box dl {
    margin-top: 1.389vw;
    font-size: 1.389vw;
  }
}
@media screen and (max-width: 768px) {
  #exam_area .schedule_box dl {
    margin-top: 3.817vw;
    font-size: 3.562vw;
  }
}
