@charset "UTF-8";
/*=======================================================
共通
=======================================================*/
.ly_main {
  padding-top: 0;
}

.ly_head {
  background: transparent;
  box-shadow: none;
}

.ly_head.is_scroll {
  background: #fff;
  box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.1019607843);
}

/*=======================================================
mv
=======================================================*/
.bl_mv {
  background: url("../images/top/mv_bg.jpg") top center/cover no-repeat;
  height: 648px;
  margin-bottom: 120px;
  overflow: hidden;
}
.bl_mvWrapper {
  position: relative;
}
.bl_mv .ly_cont_inner {
  display: flex;
  align-items: center;
  position: relative;
}
.bl_mv_conts {
  padding-left: 73px;
  position: relative;
  z-index: 2;
}
.bl_mv_ttl {
  width: 482px;
}
.bl_mv_line {
  position: absolute;
}
.bl_mv_line.el_animation {
  transform: translate(-800px, 800px);
  animation: mv_line_animation 0.8s ease forwards;
}
.bl_mv_line#top_mv_line01 {
  width: 148px;
  height: 140px;
  top: 54px;
  right: -38px;
}
.bl_mv_line#top_mv_line02 {
  width: 312px;
  height: 300px;
  top: 468px;
  left: -195px;
}
.bl_mv_line#top_mv_line02.el_animation {
  animation-delay: 0.2s;
}
.bl_mv_line#top_mv_line03 {
  width: 188px;
  height: 178px;
  top: 156px;
  left: -72px;
}
.bl_mv_line#top_mv_line03.el_animation {
  animation-delay: 0.4s;
}
.bl_mv_line#top_mv_line04 {
  width: 336px;
  height: 648px;
  top: 0;
  left: 463px;
}
.bl_mv_line#top_mv_line05 {
  width: 372px;
  height: 396px;
  top: 252px;
  right: -285px;
}

@keyframes mv_line_animation {
  0% {
    transform: translate(-500px, 500px);
  }
  100% {
    transform: translate(0, 0);
  }
}
@media screen and (max-width: 1279px) and (min-width: 821px) {
  .bl_mv {
    height: calc(648/1280 * 100vw);
    margin-bottom: calc(120/1280 * 100vw);
  }
  .bl_mv_conts {
    padding-left: calc(73/1280 * 100vw);
  }
  .bl_mv_ttl {
    width: calc(482/1280 * 100vw);
  }
  .bl_mv_line.el_animation {
    transform: translate(calc(-800/1280 * 100vw), calc(800/1280 * 100vw));
  }
  .bl_mv_line#top_mv_line01 {
    width: calc(148/1280 * 100vw);
    height: calc(140/1280 * 100vw);
    top: calc(54/1280 * 100vw);
    right: calc(-38/1280 * 100vw);
  }
  .bl_mv_line#top_mv_line02 {
    width: calc(312/1280 * 100vw);
    height: calc(300/1280 * 100vw);
    top: calc(468/1280 * 100vw);
    left: calc(-195/1280 * 100vw);
  }
  .bl_mv_line#top_mv_line03 {
    width: calc(188/1280 * 100vw);
    height: calc(178/1280 * 100vw);
    top: calc(156/1280 * 100vw);
    left: calc(-72/1280 * 100vw);
  }
  .bl_mv_line#top_mv_line04 {
    width: calc(336/1280 * 100vw);
    height: calc(648/1280 * 100vw);
    left: calc(463/1280 * 100vw);
  }
  .bl_mv_line#top_mv_line05 {
    width: calc(372/1280 * 100vw);
    height: calc(396/1280 * 100vw);
    top: calc(252/1280 * 100vw);
    right: calc(-285/1280 * 100vw);
  }
}
@media screen and (max-width: 820px) {
  .bl_mv {
    background: url("../images/top/mv_bg_sp.jpg") top center/cover no-repeat;
    height: calc(968/750 * 100vw);
    padding-top: calc(162/750 * 100vw);
    margin-bottom: calc(192/750 * 100vw);
  }
  .bl_mv .ly_cont_inner {
    align-items: start;
  }
  .bl_mv_conts {
    padding-left: 0;
  }
  .bl_mv_line#top_mv_line01 {
    display: none;
  }
  .bl_mv_line#top_mv_line02 {
    width: calc(416/750 * 100vw);
    height: calc(400/750 * 100vw);
    top: calc(278/750 * 100vw);
    left: calc(-54/750 * 100vw);
  }
  .bl_mv_line#top_mv_line03 {
    width: calc(200/750 * 100vw);
    height: calc(190/750 * 100vw);
    top: calc(232/750 * 100vw);
    left: calc(-70/750 * 100vw);
  }
  .bl_mv_line#top_mv_line04 {
    display: none;
  }
  .bl_mv_line#top_mv_line05 {
    display: none;
  }
  .bl_mv_line#top_mv_line06 {
    width: calc(218/750 * 100vw);
    height: calc(206/750 * 100vw);
    top: calc(202/750 * 100vw);
    right: calc(-130/750 * 100vw);
  }
}
/*=======================================================
about
=======================================================*/
.bl_about {
  position: absolute;
  z-index: 2;
  background: #fff;
  bottom: -120px;
  left: 50%;
  transform: translateX(-50%);
  padding: 35px 40px;
  border: 1px solid #6C0E0E;
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.0823529412);
  width: 1024px;
  align-items: center;
}
.bl_about .bl_media_imgWrapper {
  flex: 0 1 200px;
}
.bl_about .bl_media_ttl {
  font-size: 26px;
  font-weight: 700;
  color: #6C0E0E;
  letter-spacing: 0.04em;
  margin-bottom: 24px;
}
.bl_about .bl_media_link {
  position: absolute;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: #6C0E0E;
  right: 6px;
  bottom: 6px;
  padding: 0 18px 12px 0;
}
.bl_about .bl_media_link::after {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
  background: url("../images/top/link_arrow__red.svg") top center/contain no-repeat;
  bottom: 0;
  right: 0;
}

@media screen and (max-width: 1279px) and (min-width: 821px) {
  .bl_about {
    bottom: calc(-120/1280 * 100vw);
    padding: calc(35/1280 * 100vw) calc(40/1280 * 100vw);
    width: calc(1024/1280 * 100vw);
  }
  .bl_about .bl_media_imgWrapper {
    flex: 0 1 calc(200/1280 * 100vw);
  }
  .bl_about .bl_media_ttl {
    font-size: calc(26/1280 * 100vw);
    margin-bottom: calc(24/1280 * 100vw);
  }
  .bl_about .bl_media_link {
    font-size: calc(18/1280 * 100vw);
    right: calc(6/1280 * 100vw);
    bottom: calc(6/1280 * 100vw);
    padding: 0 calc(18/1280 * 100vw) calc(12/1280 * 100vw) 0;
  }
  .bl_about .bl_media_link::after {
    width: calc(20/1280 * 100vw);
    height: calc(20/1280 * 100vw);
  }
}
@media screen and (max-width: 820px) {
  .bl_about {
    bottom: calc(-192/750 * 100vw);
    padding: calc(38/750 * 100vw) calc(30/750 * 100vw) calc(104/750 * 100vw);
    border-width: calc(2/750 * 100vw);
    width: calc(690/750 * 100vw);
    flex-direction: column;
    gap: calc(24/750 * 100vw);
  }
  .bl_about .bl_media_imgWrapper {
    flex: auto;
    width: calc(390/750 * 100vw);
  }
  .bl_about .bl_media_ttl {
    font-size: calc(36/750 * 100vw);
    text-align: center;
  }
  .bl_about .bl_media_link {
    font-size: calc(30/750 * 100vw);
    right: calc(16/750 * 100vw);
    bottom: calc(16/750 * 100vw);
    padding: 0 calc(24/750 * 100vw) calc(16/750 * 100vw) 0;
  }
  .bl_about .bl_media_link::after {
    width: calc(32/750 * 100vw);
    height: calc(32/750 * 100vw);
  }
}
/*=======================================================
qualificationExams
=======================================================*/
.bl_qualificationExams {
  padding: 64px 0 80px;
  scroll-margin-top: 84px;
}
.bl_qualificationExams_list {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
.bl_qualificationExams_item {
  width: calc((100% - 60px) / 3);
}
.bl_qualificationExams_item a {
  display: block;
  padding: 16px 24px;
  background: #282828;
  display: flex;
  align-items: center;
  gap: 24px;
  position: relative;
}
.bl_qualificationExams_item a::after {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
  background: url("../images/top/link_arrow__white.svg") top center/contain no-repeat;
  bottom: 6px;
  right: 6px;
}
.bl_qualificationExams_item .bl_item_imgWrapper {
  flex: 0 1 80px;
  height: 80px;
  background: #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.bl_qualificationExams_item .bl_item_imgWrapper > img {
  width: 56px;
  height: 56px;
  object-fit: cover;
}
.bl_qualificationExams_item .bl_item_ttl {
  flex: 1;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
}

@media screen and (max-width: 1279px) and (min-width: 821px) {
  .bl_qualificationExams {
    padding: calc(64/1280 * 100vw) 0 calc(80/1280 * 100vw);
    scroll-margin-top: calc(84/1280 * 100vw);
  }
  .bl_qualificationExams_list {
    gap: calc(30/1280 * 100vw);
  }
  .bl_qualificationExams_item {
    width: calc((100% - 4.6875vw) / 3);
  }
  .bl_qualificationExams_item a {
    padding: calc(16/1280 * 100vw) calc(24/1280 * 100vw);
    gap: calc(24/1280 * 100vw);
  }
  .bl_qualificationExams_item a::after {
    width: calc(20/1280 * 100vw);
    height: calc(20/1280 * 100vw);
    bottom: calc(6/1280 * 100vw);
    right: calc(6/1280 * 100vw);
  }
  .bl_qualificationExams_item .bl_item_imgWrapper {
    flex: 0 1 calc(80/1280 * 100vw);
    height: calc(80/1280 * 100vw);
  }
  .bl_qualificationExams_item .bl_item_imgWrapper > img {
    width: calc(56/1280 * 100vw);
    height: calc(56/1280 * 100vw);
  }
  .bl_qualificationExams_item .bl_item_ttl {
    font-size: calc(20/1280 * 100vw);
  }
}
@media screen and (max-width: 820px) {
  .bl_qualificationExams {
    padding: calc(80/750 * 100vw) 0 calc(96/750 * 100vw);
    scroll-margin-top: calc(120/750 * 100vw);
  }
  .bl_qualificationExams_list {
    gap: calc(24/750 * 100vw);
  }
  .bl_qualificationExams_item {
    width: 100%;
  }
  .bl_qualificationExams_item a {
    padding: calc(16/750 * 100vw) calc(24/750 * 100vw);
  }
  .bl_qualificationExams_item a::after {
    width: calc(32/750 * 100vw);
    height: calc(32/750 * 100vw);
    bottom: calc(16/750 * 100vw);
    right: calc(16/750 * 100vw);
  }
  .bl_qualificationExams_item .bl_item_imgWrapper {
    flex: 0 1 calc(96/750 * 100vw);
    height: calc(96/750 * 100vw);
  }
  .bl_qualificationExams_item .bl_item_imgWrapper > img {
    width: calc(68/750 * 100vw);
    height: calc(68/750 * 100vw);
  }
  .bl_qualificationExams_item .bl_item_ttl {
    font-size: calc(32/750 * 100vw);
    padding-bottom: calc(2/750 * 100vw);
  }
}
/*=======================================================
preparatorySchool
=======================================================*/
.bl_preparatorySchool {
  background: #6C0E0E;
  padding: 80px 0;
  scroll-margin-top: 84px;
}
.bl_preparatorySchool .el_sec_mainTtl {
  color: #fff;
}
.bl_preparatorySchool_list {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
.bl_preparatorySchool_item {
  width: calc((100% - 60px) / 3);
}
.bl_preparatorySchool_item > a {
  display: block;
  padding: 13px 0 16px;
  background: #fff;
  position: relative;
}
.bl_preparatorySchool_item > a::after {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
  background: url("../images/top/link_arrow__black.svg") top center/contain no-repeat;
  bottom: 6px;
  right: 6px;
}
.bl_preparatorySchool_item .bl_item_imgWrapper {
  width: 352px;
  height: 72px;
  object-fit: cover;
  margin: 0 auto 14px;
}
.bl_preparatorySchool_item .bl_item_ttl {
  text-align: center;
  font-size: 20px;
  font-weight: 700;
}

@media screen and (max-width: 1279px) and (min-width: 821px) {
  .bl_preparatorySchool {
    padding: calc(80/1280 * 100vw) 0;
    scroll-margin-top: calc(84/1280 * 100vw);
  }
  .bl_preparatorySchool_list {
    gap: calc(30/1280 * 100vw);
  }
  .bl_preparatorySchool_item {
    width: calc((100% - 4.6875vw) / 3);
  }
  .bl_preparatorySchool_item > a {
    padding: calc(13/1280 * 100vw) 0 calc(16/1280 * 100vw);
  }
  .bl_preparatorySchool_item > a::after {
    width: calc(20/1280 * 100vw);
    height: calc(20/1280 * 100vw);
    bottom: calc(6/1280 * 100vw);
    right: calc(6/1280 * 100vw);
  }
  .bl_preparatorySchool_item .bl_item_imgWrapper {
    width: calc(352/1280 * 100vw);
    height: calc(72/1280 * 100vw);
    margin: 0 auto calc(14/1280 * 100vw);
  }
  .bl_preparatorySchool_item .bl_item_ttl {
    font-size: calc(20/1280 * 100vw);
  }
}
@media screen and (max-width: 820px) {
  .bl_preparatorySchool {
    padding: calc(96/750 * 100vw) 0;
    scroll-margin-top: calc(120/750 * 100vw);
  }
  .bl_preparatorySchool_list {
    gap: calc(24/750 * 100vw);
  }
  .bl_preparatorySchool_item {
    width: 100%;
  }
  .bl_preparatorySchool_item > a {
    padding: calc(24/750 * 100vw);
  }
  .bl_preparatorySchool_item > a::after {
    width: calc(32/750 * 100vw);
    height: calc(32/750 * 100vw);
    bottom: calc(16/750 * 100vw);
    right: calc(16/750 * 100vw);
  }
  .bl_preparatorySchool_item .bl_item_imgWrapper {
    width: calc(432/750 * 100vw);
    height: calc(88/750 * 100vw);
    margin: 0 auto calc(24/750 * 100vw);
  }
  .bl_preparatorySchool_item .bl_item_ttl {
    font-size: calc(32/750 * 100vw);
  }
}
/*=======================================================
recommendSchool
=======================================================*/
.bl_recommendSchool {
  padding: 80px 0;
}
.bl_recommendSchool_list {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
.bl_recommendSchool_item {
  width: calc((100% - 60px) / 3);
}

@media screen and (max-width: 1279px) and (min-width: 821px) {
  .bl_recommendSchool {
    padding: calc(80/1280 * 100vw) 0;
  }
  .bl_recommendSchool_list {
    gap: calc(30/1280 * 100vw);
  }
  .bl_recommendSchool_item {
    width: calc((100% - 4.6875vw) / 3);
  }
}
@media screen and (max-width: 820px) {
  .bl_recommendSchool {
    padding: calc(96/750 * 100vw) 0;
  }
  .bl_recommendSchool_list {
    gap: calc(24/750 * 100vw);
  }
  .bl_recommendSchool_item {
    width: 100%;
  }
}
/*=======================================================
region
=======================================================*/
.bl_region {
  padding: 80px 0;
  background: #6C0E0E;
}
.bl_region .el_sec_mainTtl {
  color: #fff;
}
.bl_region_list {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
.bl_region_item {
  width: calc((100% - 60px) / 3);
}
.bl_region_item > a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 114px;
  padding-bottom: 2px;
  position: relative;
  border: 1px solid #fff;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
}
.bl_region_item > a::after {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
  background: url("../images/top/link_arrow__white.svg") top center/contain no-repeat;
  bottom: 6px;
  right: 6px;
}

@media screen and (max-width: 1279px) and (min-width: 821px) {
  .bl_region {
    padding: calc(80/1280 * 100vw) 0;
  }
  .bl_region_list {
    gap: calc(30/1280 * 100vw);
  }
  .bl_region_item {
    width: calc((100% - 4.6875vw) / 3);
  }
  .bl_region_item > a {
    height: calc(114/1280 * 100vw);
    padding-bottom: calc(2/1280 * 100vw);
    font-size: calc(20/1280 * 100vw);
  }
  .bl_region_item > a::after {
    width: calc(20/1280 * 100vw);
    height: calc(20/1280 * 100vw);
    bottom: calc(6/1280 * 100vw);
    right: calc(6/1280 * 100vw);
  }
}
@media screen and (max-width: 820px) {
  .bl_region {
    padding: calc(96/750 * 100vw) 0;
  }
  .bl_region .el_sec_mainTtl {
    margin-bottom: calc(56/750 * 100vw);
  }
  .bl_region_list {
    gap: calc(24/750 * 100vw);
  }
  .bl_region_item {
    width: 100%;
  }
  .bl_region_item > a {
    height: calc(206/750 * 100vw);
    padding-bottom: 0;
    border-width: calc(2/750 * 100vw);
    font-size: calc(32/750 * 100vw);
  }
  .bl_region_item > a::after {
    width: calc(32/750 * 100vw);
    height: calc(32/750 * 100vw);
    bottom: calc(16/750 * 100vw);
    right: calc(16/750 * 100vw);
  }
}