@charset "UTF-8";
/* CSS Document */


/*UNDER Setting
==================================================================*/

#content.contents-page{
  margin-top: 190px;
  padding-bottom: 150px;
}
#content.contents-page .banner-slide{
  padding-top: 150px;
}
.under-inner{
  width: 100%;
  max-width: 1160px;
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
}
#key.under-key  + .breadcrumbs{
  margin-top: 1em;
}
#key.under-key  + .breadcrumbs.c_bar{
  margin-top: 5em;
  background: #edf0f0;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
}
#key.under-key  + .breadcrumbs + #content.contents-page{
  margin-top: 120px;
}

.under-title{
  line-height: 1.75;
  letter-spacing: .1em;
  text-indent: 0.1em;
}
.under-title .in-title{
  font-weight: 900;
  font-size: 1.875em;
}
.under-title .txt{
  font-size: 1.5em;
  font-weight: 500;
}
.under-title .in-text{
  margin-top: 47px;
}

.under-box_wrap{
  width: 990px;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

/*key*/
.under-key_inner{
  width: 100%;
/*  overflow-x: hidden;*/
  padding-top: 100px;
}
.page-header .page-title .en > span{
  font-size: 6em;
  display: inline-block;
  line-height: 1.1;
}
.page-header .page-title .jp{
  font-size: 1.375em;
  font-weight: 900;
  letter-spacing: .1em;
  text-indent: .1em;
  margin-top: 1em;
}
.under-key_thumb{
  overflow: hidden;
  width: calc(100vw - ((100vw - 1120px)/2));
  max-width: calc(100vw - 20px);
  margin-left: auto;
  margin-top: 100px;
}
.under-key_thumb::before{
  content: "";
  display: block;
  padding-top: 30%;
}
.under-key_thumb > *{
  position: absolute;
  width: 100%;
  height: 150%;
  top: 25%;
  left: 0;
  transform: translateY(-50%);
}
.under-key_thumb img{
  object-fit: cover;
  height: 100%;
  object-position: center;
}

/*contents-top*/
.content-top-txt h3{
  font-size: 1.875em;
  font-weight: 900;
  text-align: center;
  letter-spacing: .1em;
  text-indent: .1em;
}
.content-top-txt > .in-text{
  margin-top: 70px;
  letter-spacing: .05em;
  text-indent: .05em;
}

/*layout box*/
.under-fl_box{
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  -ms-align-items: center;
  align-items: center;
}
.under-fl_box .thumb{
  width: 45%;
}
.under-fl_box .cmnt{
  width: calc(55% - 85px);
}
.under-fl_box .cmnt h3{
  font-size: 1.5em;
  font-weight: 600;
  letter-spacing: .1em;
  text-indent: .1em;
}

.under-fl_box .cmnt .in-title{
  font-size: 1.875em;
  font-weight: 900;
  letter-spacing: .1em;
  text-indent: .1em;
  line-height: 1.6666;
}
.under-fl_box .cmnt > * + .in-title{
  margin-top: 40px;
}
.under-fl_box .cmnt .in-title span{
  color: #0080d9;
}
.under-fl_box .cmnt .in-title span.min{
  color: inherit;
  font-size: .65em;
  font-weight: normal;
}
.under-fl_box > .in-text{
  width: 100%;
  letter-spacing: .05em;
  text-indent: .05em;
  margin-top: 40px;
}
.under-fl_box .cmnt-head_set{
  -ms-align-items: flex-start;
  align-items: flex-start;
}
.under-fl_box .cmnt-head_set h3{
  font-weight: 900;
  line-height: 1.666;
  margin-bottom: .5em;
}
.under-fl_box .cmnt-head_set p{
  background: #58b1ae;
  color: #fff;
  padding: .5em 1em;
  min-width: 12em;
  max-width: 100%;
  text-align: center;
}
.under-fl_box .cmnt-head_set + .in-text{
  margin-top: 26px;
}
.under-fl_box .in-text + .cmnt-head_set {
  margin-top: 50px;
}
/*movie*/
.movie-link_wrap {
  width: 100%;
}
.movie-link_wrap > *{
  width: 50%;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: center;
  align-items: center;
}
.movie-link_wrap > * h4{
  font-weight: 600;
  font-size: 1.25em;
  letter-spacing: .1em;
  text-indent: .1em;
}
.movie-link_wrap .movie-link{
  width: 50%;
  margin-top: 2em;
}
.spmovie-link-box .player{
  width: calc(100% - 40px);
}
.modal {
  background: rgba(0,0,0,.85);
  position: fixed;
  z-index: 99999;
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
}
.vdo-body {
  width: 90%;
  max-width: 900px;
  overflow: hidden;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
.video-thumb{
  overflow: hidden;
  width: 100%;
  background: #fff;
}
.vdo-body::before
,.video-thumb::before{
  content: "";
  display: block;
  padding-top: 56.25%;
}

.vdo-base{
  position: unset;
}
.vdo-body iframe
,.video-thumb figure{
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
.video-thumb figure img{
  opacity: .65;
  object-fit: cover;
  height: 100%;
}
.video-thumb figure::after{
  content: "";
  max-width: 100px;
  height: 100%;
  width: calc(100% /5);
  background: url("../images/icn_youtube.svg") no-repeat center/100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  pointer-events: none;
}
.modal a.close-modal
,.js-modal-close{
  background-color: #000;
  border-radius: 50%;
  display: block;
  width: 45px;
  height: 45px;
/*  padding: 30px 30px 0 0;*/
  overflow: hidden;
  position: absolute;
  top: 25px;
  right: 25px;
  cursor: pointer;
}
.js-modal-close{
  top: 20px;
  right: 20px;
  background: #0080d9;
}
.modal a.close-modal::before,
.modal a.close-modal::after
,.js-modal-close::before
,.js-modal-close::after{
  background-color: #fff;
  content: '';
  display: block;
  width: 1px;
  height: 24px;
  position: absolute;
  top: 50%;
  left: 50%;
}
.modal a.close-modal::before
,.js-modal-close::before{
  transform: translate(-50%,-50%) rotate(-45deg);
}
.modal a.close-modal::after
,.js-modal-close::after{
  transform: translate(-50%,-50%) rotate(45deg);
}
/*contents-modal*/
.js-mdl-contents{
  background: rgba(0,0,0,.25);
  position: fixed;
  overflow-y: scroll;
  z-index: 99999;
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
  display: none;

}
.mdl-contents-open{
  cursor: pointer;
}
.js-c-mdl_wrap{
  width: 100%;
  min-height: 100vh;
  padding: 50px 20px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  justify-content: center;
}
.js-c-mdl_box{
  width: 1000px;
  max-width: 100%;
  background: #fff;
  border-radius: 25px;
  padding: 50px;
  border: 4px solid #e8f6ff;
}

/*tab*/
.tab_header,.tab_footer{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
}
.udr_switch{
  justify-content: center;
  width: 1070px;
  max-width: 100%;
}
.udr_switch li{
  border: 1px solid #9d9d9d;
  width: calc((100% - 30px)/5);
  background: #fff;
  padding: 1.25em .5em;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
  cursor: pointer;
}

.udr_switch > li + li{
  border-left: none;
}
.udr_switch.switch_head > li{
  border-bottom: none;
}
.udr_switch.switch_foot li{
  border-top: none;

}
.udr_switch li p{
  text-align: center;
}
.udr_switch li.active{
  background: #0080d9;
  color: #fff;
}
.udr-tab_content{
  border-top: 1px solid #9d9d9d;
  border-bottom: 1px solid #9d9d9d;
  padding-top: 100px;
  padding-bottom: 100px;
  background: #fff;
}
.under-inner.udr_panel{
 max-width: 1040px;
}
/*251017沿革ページ改修*/
.udr-tab_content{
  border-bottom: none;
}
.udr_switch li:hover{
  background: #0080d9;
  color: #fff;
}
.udr_switch.switch_head > li{
    padding: 0;
}
.udr_switch.switch_head > li a{
    display: block;
    width: 100%;
    height: 100%;
    padding: .95em .5em;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
}
.udr_switch li p{
    line-height: 1.2;
    font-weight: 600;
    width: max-content;
}
.udr_switch li p span{
    font-weight: 400;
    font-size: .925em;
}
.udr-tab_content{
    display: grid;
    gap: min(40px, 8vw);
}
/*list*/

ul.num-list{
  counter-reset: count 0;
}
ul.num-list li{
  padding-left: 1em;
}
ul.num-list li::before{
  content: counter(count)",";
  counter-increment: count 1;
  position: absolute;
  left: 0;
  top: 0;
}

/*学校案内  校長メッセージ・教育の理念 -　page/p-message
====================================================*/
.page-messe-blc{
  padding-bottom: 100px;
}
.page-messe-box .cmnt{
  padding-right: 65px;
}
.page-messe-box .name{
  margin-left: auto;
  font-size: 1.125em;
  text-align: right;
  margin-top: 70px;
  line-height: 1.666;
}
.page-messe-box .name span{
  display: block;
  font-size: 1.2222em;
}

.page-messe-founder{
  padding-top: 100px;
  border-top: 1px solid #edf0f0;
  -ms-align-items: center;
  align-items: center;
}
.messe-founder_box{
  width: 1120px;
  max-width: 100%;
}
.messe-founder_box .cmnt .in-title,
.messe-founder_box .cmnt .in-title + h3
,.messe-founder_box p.in-text{
  margin-top: 30px;
}
.messe-founder_policy{
  justify-content: space-between;
  width: 100%;
  margin-top: 85px;
}
.messe-founder_policy li{
  width: calc((100% - (36px*2))/3);
  background: #edf0f0;
  -ms-align-items: center;
  align-items: center;
  padding-top: 50px;
  padding-bottom: 50px;
}
.messe-founder_policy li .icn{
  width: 7.5em;
  overflow: hidden;
  border-radius: 50%;
  background: #0080d9;
}
.messe-founder_policy li .icn::before{
  content: "";
  display: block;
  padding-top: 100%;
}
.messe-founder_policy li .icn > *{
  position: absolute;
  width: 50%;
  height: 50%;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%)
}
.messe-founder_policy li .cmnt{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: center;
  align-items: center;
  max-width: 100%;
}
.messe-founder_policy li .cmnt h4{
  font-size: 1.5em;
  font-weight: 600;
  text-align: center;
  margin-top: 45px;
}
.messe-founder_policy li .cmnt .in-text{
  max-width: calc(100% - 60px);
  margin-top: 30px;
}
/*学校紹介動画 -　page/movie
===========================================*/
.page-movie-blc .spmovie-link-box.main-movie{
	width: 940px;
    max-width: calc(100% - 40px);
    margin: 0 auto;
}
.page-movie-list{
  justify-content: center;
	padding: 100px 0;
}
.page-movie-list > ul{
  width: 1175px;
  padding-left: 20px;
  margin-right: 20px;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
}
.page-movie-list > ul > li + li:nth-child(n+3){
  margin-top: 60px;
}
.page-movie-list > ul > li{
  width: calc((100% - 87px)/2);
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: flex-start;
  align-items: flex-start;
}
.page-movie-list > ul > li .player{
  width: 100%;
}
.page-movie-list > ul > li .video-thumb figure::after{
  width: 4.2857em;
  height: 4.2857em;
}
.page-movie-list > ul > li h3{
  font-size: 1.32857em;
  margin-top: 34px;
  line-height: 1.5;
  padding-right: 2em;
}
.page-movie-list > ul > li h3 span{
  color: #cb339b;
  font-size: .7em;
  display: block;
}
.page-movie-list > ul > li h3::after{
  content: "";
    width: 5px;
    height: 5px;
    border: 1px solid;
    border-color: #000 #000 transparent transparent;
    position: absolute;
    right: 0.5em;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    -webkit-transition: right .3s;
    -o-transition: right .3s;
    transition: right .3s;
}
.page-movie-list > ul > li:hover h3::after{
  right: 0;
}
/*本校の教育-　page/education
===========================================*/

.page-education .page-title .gra-text > span > *{
  color: #001957;
  background: -webkit-linear-gradient(180deg,#001957 50%,#001957 80%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-left: -.25em;
}
.page-education .under-key_thumb > *{
  top: 0;
  transform: translateY(0);
}
.page-education-top{
  padding-bottom: 80px;
}
.page-education-list{
  -ms-align-items: center;
  align-items: center;
  padding-top: 120px;
  border-top: 1px solid #edf0f0;
}
.education-list{
  width: 1200px;
  max-width: 100%;
  padding-left: 40px;
  padding-right: 40px;
}
.education-list li{
  justify-content: space-between;
  -ms-align-items: center;
  align-items: center;
}
.education-list > li + li{
  margin-top: 120px;
}
.education-list > li > *{
  width: 50%;
}
.education-list > li .cmnt{
  margin-top: auto;

}
.education-list > li .cmnt .num-title{
  font-size: 1.875em;
  letter-spacing: .1em;
  text-indent: .1em;
}
.education-list > li .cmnt .num-title .num{
  font-weight: 900;
  color: #0080d9;
}
.education-list > li .cmnt h3 .en{
  font-weight: 900;
}
.education-list > li .cmnt h3 .jp{
  font-size: .6em;
  display: block;
  margin-top: 20px;
}
.education-list > li .cmnt h4{
  letter-spacing: .1em;
  text-indent: .1em;
  font-size: 1.5em;
  font-weight: 500;
  line-height: 1.5;
  margin-top: 47px;
  margin-bottom: 45px;
}
.education-list > li .cmnt .ed-about{
  padding: 60px 0 80px;
  line-height: 1.75;
  letter-spacing: .05em;
  text-indent: .05em;
}
.education-list > li .cmnt .ed-about::before{
  content: "";
  width: 1200px;
  max-width: calc(100vw - 40px);
  height: 100%;
  position: absolute;
  left: -40px;
  bottom: 0;
  background: #edf0f0;
}
.education-list > li.row .cmnt .ed-about::before{
  left: auto;
  right: -40px;
}
.education-list > li .cmnt .ed-about ul + p{
  margin-top: 1em;
}
.education-list > li .link{
  -ms-align-items: flex-end;
  align-items: flex-end;
  justify-content: space-between;
  z-index: 1;
  padding-bottom: 40px;
}
.education-list > li.row .link{
  -ms-align-items: flex-start;
  align-items: flex-start;
}
.education-list > li .link figure{
  width: 90%;
}
.content-link-list{
  margin-top: 50px;
}
.content-link-list li a{
  padding: 1em 3em 1em 2em;
  display: block;
  font-weight: 500;
}
.content-link-list li a::after{
  content: "";
  width: 5px;
  height: 5px;
  border: 1px solid;
  border-color: #000 #000 transparent transparent;
  position: absolute;
  right: .5em;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  -webkit-transition: right .3s;
  -o-transition: right .3s;
  transition: right .3s;
}
.content-link-list li a:hover::after{
  right: 0;
}
.content-link-list li{
  border-bottom: 2px solid #0080d9;
}
.content-link-list li + li{
  border-bottom-color: #58b1ae;
}

/*校歌・校章-　page/school_song
===========================================*/
.page-songs-blc{
  -ms-align-items: center;
  align-items: center;
  padding-bottom: 110px;
}
.page-songs-blc .title{
  width: 100%;
}
.page-songs-blc .title h3{
  font-weight: 900;
  font-size: 1.875em;
  letter-spacing: .1em;
  text-indent: .1em;
}
.page-songs-blc .title .data{
  margin-left: auto;
  font-weight: 600;
  font-size: 1.125em;
  line-height: 2;
}
.songs-lyrics{
  font-size: 1.5em;
  font-weight: 600;
  line-height: 2;
}
.songs-lyrics > * + *{
  margin-top: 2em;
}
/*player*/
.songs-player{
  margin-top: 70px;
}

.songs-player{
  width: 736px;
  max-width: 100%;

}
.songs-player .plyr--audio .plyr__controls{
  background: #edf0f0;
}
.songs-player .plyr__control[data-plyr="play"]{
  width: 2.875em;
  height: 2.875em;
  background: #fff;
  border-radius: 50%;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  justify-content: center;
}
.songs-player .plyr__control[data-plyr="play"] svg{
  fill:#0080d9;
}
.songs-player .plyr--audio .plyr__control.plyr__tab-focus
,.songs-player .plyr--audio .plyr__control[data-plyr="play"]:hover
,.songs-player .plyr--audio .plyr__control[aria-expanded="true"]{
  background: #0080d9;
  color: #fff;
}
.songs-player .plyr--audio .plyr__control[data-plyr="play"]:hover svg{
  fill:#fff;
}
/*校章*/
.page-songs-emblem{
  padding-top: 100px;
  border-top: 2px solid #edf0f0;
  justify-content: center;
}
.emblem_box{
  width: 1050px;
  max-width: 100%;
}
.emblem_box .cmnt{
  width: 50%;
}
.emblem_box .cmnt .in-text{
  margin-top: 40px;
  letter-spacing: .1em;
  text-indent: .1em;
}
.emblem_box .thumb figure{
  width: 330px;
  max-width: 100%;
}


/*校舎・設備・環境-　page/pacility
===========================================*/
.page-facility-blc{
  padding-bottom: 120px;
}
.page-facility-blc h3{
  font-size: 1.875em;
  font-weight: 900;
  text-align: center;
  letter-spacing: .1em;
  text-indent: 0.1em;
}
.facility_box{
  width: 990px;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 60px;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
}
.facility-fl_box{
  width: 990px;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 60px;
}
.facility_box > li{
  width: calc((100% - 150px)/2);
}
.facility_box > li:nth-child(n+3){
  margin-top: 40px;
}
.facility_box > li h4
,.facility-fl_box h4{
  font-size: 1.5em;
  font-weight: 500;
  letter-spacing: .1em;
  text-indent: .1em;
}
.facility_box > li .cmnt
,.facility_box > li .cmnt > * + *{
  margin-top: 20px;
}
.page-facility-blc > * + h3{
  margin-top: 150px;
}
.facility-fl_box{
  -ms-align-items: flex-start;
  align-items: flex-start;
}
.facility-fl_box h4 + .in-text{
  margin-top: 30px;
}
.facility-fl_box .in-text{
  line-height: 1.875;
  letter-spacing: .05em;
  text-indent: .05em;
}

.page-facility-link{
  justify-content: center;
  padding-top: 110px;
  border-top: 2px solid #edf0f0;
}
.facility-link-wrap{
  width: 990px;
  max-width: 100%;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-around;
}
.facility-link-wrap > *{
  width: 410px;
  max-width: calc((100% - 40px)/2);
}
.facility-link-wrap > * + *:nth-child(n+3){
  margin-top: 50px;
}
.facility-link-wrap .squ-btn a{
  width: 100%;
  max-width: none;
  font-weight: normal;
  line-height: 1.5;
}
.facility-link-wrap .squ-btn a > span > span{
  display: block;
  font-weight: 600;
  font-size: 1.5em;
  letter-spacing: .1em;
  text-indent: .1em;
}
.facility-link-wrap .squ-btn a::after{
  width: .5em;
  height: .5em;
  border: 2px solid;
  border-color: #000 #000 transparent transparent;
  right: 2em;
}

.facility-link-wrap .squ-btn a:hover::after{
  right: 1.25em;
}



.facility-fl_box a {
   width: 60%;
   margin-top: 3em;
}

/*本校の沿革 -　page/history
===========================================*/
.his-item_wrap{
  justify-content: space-between;
}
.his-item_wrap.ai_cnt{
  -ms-align-items: center;
  align-items: center;
}
.his-item_cmnt{
  width: 65%;
}
.his-item_cmnt  >  .his-item:not(:last-child){
  padding-bottom:160px;
}
.his-item_cmnt .his-item::before{
  content: "";
  width: 1px;
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 4px;
  background: #0080d9;
}
.his-item_cmnt .his-item:first-child::before{
  height: calc(100% - 2em);
}
.his-item_cmnt .his-item:last-child::before{
  bottom: auto;
  top: 0;
/*  height: 2em;*/

}
.his-item_cmnt .his-item.ai-cnt{
  -ms-align-items: center;
  align-items: center;
}
.his-item_cmnt .his-item{
  justify-content: space-between;
}
.his-item_cmnt .his-item .his__year{
  width: 35%;
  padding-left: 3em;
}
.his-item_cmnt .his-item .his__year::before{
  content: "";
  width: 10px;
  height: 10px;
  background: #0080d9;
  border-radius: 50px;
  position: absolute;
  top: 2em;
  left: 0;
}
.his-item_cmnt .his-item .his__text{
  width: calc(65% - 50px);
}
.his-item_cmnt .his-item .his__text span{
    font-size: 1.575em;
    font-weight: bold;
    color: #0080d9;
}
.his-item_cmnt .his-item .his__year p.year{
  font-size: 4em;
  font-weight: 500;
  text-indent: -.05em;
}
.his-item_cmnt .his-item .his__year p.jp{
  font-size: 1.125em;
  font-weight: 600;
  color: #0080d9;
  letter-spacing: .1em;
  margin-top: .5em;
}
.his-item_thumb{
  width: calc(35% - 20px);
  -ms-align-items: flex-end;
  align-items: flex-end;
  justify-content: space-around;
}
.his-item_thumb > * + *{
  margin-top: 35px;
}
.his-item_thumb figure.port{
  width: 70%;
}
.his-item_thumb figcaption{
  position: absolute;
  bottom: 10px;
  right: 10px;
  color: #fff;
  text-shadow: 0 2px 2px rgba(0,0,0,.75);
  font-weight: 600;
  font-size: 1.071em;
  line-height: 1.2;
  text-align: right;
}
.his-item_thumb .figure_wrap {
  justify-content: space-between;
}
.his-item_thumb .figure_wrap >  *{
  width: calc((100% - 10px)/2);
}

#history03 .his-item_thumb{
  -ms-align-items: flex-end;
  align-items: flex-end;

}
#history03 .his-item_thumb figure:first-child{
  margin-bottom: auto;
}
.his-item_cmnt .his-item.box_2024.ai-cnt{
padding-bottom: 40px;
}
.his-item_cmnt .his-item.box_2024-2 .his__year{
padding-left: 8em;
}
.his-item_cmnt .his-item.box_2024-2.ai-cnt{
align-items: baseline;
}
.his-item_cmnt .his-item:last-child::before{
height: 3em;
}
.his-item_cmnt .his-item:last-child::before{
    height: calc(100% + min(100px,14vw));
}
/* 京華男子の1日 -　page/daily-life
===========================================*/
.page-sclife-schedule::before{
  content: "";
  width: 128px;
  height: 100%;
  background: #e8f6ff;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.sclife-schedule_list{
  margin: 80px 0 100px;
}
.sclife-schedule_list li{
  justify-content: space-between;
}
.sclife-schedule_list li.step{
  -ms-align-items: flex-start;
  align-items: flex-start;
}
.sclife-schedule_list li > *{
  width: calc((100% - 80px)/2);
}
.sclife-schedule_list li + li{
  margin-top: 80px;
}
.sclife-schedule_list li .cmnt{
  padding: 20px 30px;
  background: #fff;
  border: 1px solid #0080d9;
  min-height: 300px;
}
.sclife-schedule_list li .cmnt .in-title{
  font-size: 1.5em;
  letter-spacing: .05em;
  text-indent: .05em;
}
.sclife-schedule_list li .cmnt .in-title > *{
  padding: .5em 1em;
}
.sclife-schedule_list li .cmnt .in-title .time{
  font-family: sans-serif;
  width: 6em;
  color: #0080d9;
}
.sclife-schedule_list li .cmnt .in-title h4{
  width: calc(100% - 6em);
  border-left: 1px solid #0080d9;
}
.sclife-schedule_list li .cmnt .in-text{
  margin-top: 2em;
}
.sclife-schedule_list li .cmnt + .cmnt{
  margin-top: 80px;
}
.sclife-schedule_list li.full{

}
.sclife-schedule_list li.full .cmnt{
  min-height: inherit;
  width: 100%;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;

}
.page-sclife-committee{
  padding-top: 100px;
  padding-bottom: 100px;
  background: #f8f8f6;
}
.page-sclife-district{
  margin-top: 100px;
}

.committee_box_list{
  margin-top: 50px;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  gap:20px;
}
.committee_box_list li{
  width: calc((100% - (20px*4))/5);
}
.committee_box_list li .arrow-btn > *{
  width: 100%;
  display: block;
}


/* 京華教育プログラム -　page/poricy
===========================================*/

.page-program .page-header .page-title .en > span{
  display: inline-block;
}
.page-program-about .title {
  line-height: 1.75;
  letter-spacing: .1em;
  text-indent: .1em;
}
.page-program-about .title h3{
  font-weight: 900;

  font-size: 1.875em;
}
.page-program-about .title .txt{
  font-size: 1.5em;
  font-weight: 500;
}

.page-program-about .under-title + .program-about_list{
  margin-top: 100px;
}
.program-about_list{
  justify-content: space-between;
}
.program-about_list > li{
  width: calc((100% - 40px)/3);
}
.program-about_list .in-title{
  font-size: 1.5em;
  font-weight: 500;
  letter-spacing: .05em;
  text-indent: .05em;
  line-height: 1.25;
}
.program-about_list .in-title span{
  font-family: sans-serif;
  font-weight: 600;
}
.program-about_list p.in-text{
  margin-top: 1em;
  letter-spacing: .05em;
  text-indent: .05em;
}
.program-grid_wrap {
  display: grid;
  grid-template-columns: calc(34% - 10px) calc(66% - 10px);
  grid-template-rows: auto;
  grid-auto-rows: auto;
  gap: 20px 20px;
  grid-auto-flow: row dense;
  grid-template-areas:
    "grid1 grid2";
  height: 100%;
  margin-top: 30px;
  margin-bottom: 30px;
}
.program-grid_wrap .grid-item{
  overflow: hidden;
}
.program-grid_wrap figure{
  object-fit: cover;height: 100%;
}
.program-grid_wrap img{
  object-fit: cover;height: 100%;
}
.grid1 {  display: grid;
  grid-template-columns: 100%;
  grid-auto-rows: auto auto;
  gap: 20px 0px;
  grid-auto-flow: row;
  grid-template-areas:
    "grid1_top"
    "grid1_btm";
  grid-area: grid1;
}

.grid1_top { grid-area: grid1_top; }
.grid1_btm { grid-area: grid1_btm; }

.grid2 {
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: auto auto;
  gap: 20px 0px;
  grid-auto-flow: row;
  grid-template-areas:
    "g2_top"
    "g2_btm";
  grid-area: grid2;
}

.g2_top {
  display: grid;
  grid-template-columns: calc(52.5% - 10px) calc(47.5% - 10px);
  grid-template-rows: 100%;
  gap: 0px 20px;
  grid-auto-flow: row;
  grid-template-areas:
    "g2_top1 g2_top2";
  grid-area: g2_top;
}

.g2_top1 { grid-area: g2_top1; }
.g2_top2 { grid-area: g2_top2; }

.g2_btm {
  display: grid;
  grid-template-columns: calc(61.5% - 10px) calc(37.5% - 10px);
  grid-template-rows: 100%;
  gap: 0px 20px;
  grid-auto-flow: row;
  grid-template-areas:
    "g2_btm1 g2_btm2";
  grid-area: g2_btm;
}
.g2_btm1 { grid-area: g2_btm1; }
.g2_btm2 { grid-area: g2_btm2; }

/*コース制*/
.page-program-course{
  margin-top: 150px;
  padding-bottom: 100px;
}
.program-course_box{
  -ms-align-items: flex-start;
  align-items: flex-start;
}
.program-course_box .thumb{
  width: 40%;
}
.program-course_box .cmnt h3{
  font-weight: 900;
  font-size: 1.875em;
}
.program-course_box .cmnt .title{
  font-size: 1.5em;
  margin-top: 15px;
  letter-spacing: .1em;
  text-indent: .1em;
  font-weight: 500;
}
.program-course_box .cmnt .in-text{
  margin-top: 45px;
}
.page-program-course .course_link{
  background: #edf0f0;
  margin-top: 50px;

}
.page-program-course .course_link li{
  -ms-align-items: center;
  align-items: center;
  justify-content: space-between;
  padding: 25px;
}
.page-program-course .course_link li > *{
  width: 40%;

}
.page-program-course .course_link p{
  font-size: 1.125em;
  font-weight: 600;
}
.page-program-course .course_link .squ-btn a{
  width: 100%;
  max-width: 100%;
  letter-spacing: .1em;
  text-indent: .1em;
}
/*教科*/
.program-course_dep{
  margin-top: 140px;
}
.program-course_dep h3{
  font-size: 1.875em;
  font-weight: 900;
  letter-spacing: .1em;
  text-indent: 0.1em;
}
.course_dep_link{
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  max-width: 990px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  justify-content: space-between;
  margin-top: 50px;
}
.course_dep_link > div{
  width: 275px;
  max-width: calc((100% - 40px)/3);
}
.course_dep_link > div:nth-child(n+4){
  margin-top: 40px;
}
.course_dep_link .squ-btn p{
  width: 100%;
  max-width: 100%;
  background: #efefef;
  font-size: 1.125em;
  padding: 1.5em;
  font-weight: 600;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}
.course_dep_link .squ-btn p::after{
  content: "";
  width: 5px;
  height: 5px;
  border: 1px solid;
  border-color: #333 #333 transparent transparent;
  position: absolute;
  right: 1em;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);

}

.program-couse_tie{
  margin-top: 140px;
  -ms-align-items: flex-start;
  align-items: flex-start;
}
.program-couse_tie .cmnt h3{
  font-size: 1.875em;
  font-weight: 900;
}
.program-couse_tie .cmnt .in-text{
  margin-top: 45px;
}

/*modal*/
.mdl-title{
  text-align: center;
  font-weight: 900;
  font-size: 1.875em;
  letter-spacing: .05em;
  text-indent: .05em;
}
.js-c-mdl_box .cmnt{
  margin-top: 60px;
}
.js-c-mdl_box .cmnt > * + *{
  margin-top: 40px;
}
.mdl_messe .in-title{
  color: #0080d9;
  font-size: 1.24em;
  font-weight: 600;
}
.mdl_messe .name{
  font-weight: 600;
  margin-top: .85em;
}
.mdl_messe .name + .in-text{
  margin-top: 20px;
}
.js-c-mdl_box .btn-wrap{
  justify-content: center;
  margin-top: 60px;
}
.fdl_btn a{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  width: 340px;
  max-width: 100%;
  background: #0080d9;

}
.fdl_btn a span{
  padding: 1em 3em 1em 1em;
  color: #fff;
  font-weight: 600;
}
.fdl_btn a span::after{
  content: "";
  width: 1.5em;
  height: 100%;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  background: url("../images/icn_w_dl.svg") no-repeat center/100%;

}
/*スペシャルコンテンツ*/
.sec-spmovie-blc{
  justify-content: center;
  border-top: 2px solid #edf0f0;
  padding-top: 100px;
}
.spmovie-link-box{
  width: 695px;
  max-width: 100%;
  -ms-align-items: center;
  align-items: center;
  background: #edf0f0;
  padding: 50px 20px 30px;
}
.spmovie-link-box.full{
  width: 1120px;
}
.spmovie-link-box > * + *{
  margin-top: 30px;
}
.spmovie-link-box h3{
  font-size: 1.875em;
  font-weight: 900;
  color: #0080d9;
  letter-spacing: .1em;
  text-indent: .1em;
}
.spmovie-link-box p.txt{
  font-size: 1.5em;
  text-align: center;
  font-weight: 500;
}

/*中学のクラス制 -　page/j-class
===========================================*/
.page-j-class_top > .under-title + .j-class_box{
  margin-top: 50px;
}
.page-j-class_top > .j-class_box + .j-class_box{
  margin-top: 36px;
}
.j-class_box{
  padding: 40px 20px 60px;
  -ms-align-items: center;
  align-items: center;
  letter-spacing: .1em;
  text-indent: .1em;
  width: 990px;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.j-class_box > *{
  width: 710px;
  max-width: 100%;
}
.j-class_box.bl{
  background: #e8f4ff;
}
.j-class_box.grn{
  background: #e0f8f3;
}
.j-class_box h4{
  font-size: 1.5em;
  font-weight: 600;
}
.j-class_box.bl h4{
  color: #005db2;
}
.j-class_box.grn h4{
  color: #008f71;
}
.j-class_box ul.num-list{
  margin-top: 32px;
}
.j-class_box ul.num-list li{
  padding-left: 2em;
  font-size: 1.125em;
  line-height: 1.5;
}
.j-class_box ul.num-list li::before{
  content: counter(count,decimal-leading-zero)" ";
  font-family: sans-serif;
}

.page-j-class_course{
  margin-top: 150px;
  padding-bottom: 100px;
}
.j-class_course_graph{
  margin-top: 50px;
}
.j-class_course_about{
  margin-top: 150px;
  justify-content: space-between;
  -ms-align-items: inherit;
  align-items: inherit;
}
.j-class_course_about .thumb{
  width: 30%;
}
.j-class_course_about .cmnt{
  width: calc(70% - 70px);
  justify-content: flex-start;
  letter-spacing: .1em;
  text-indent: .1em;
}
.j-class_course_about h4{
  font-size: 1.875em;
  font-weight: 900;
  line-height: 1.5;
}
.j-class_course_about .cmnt .in-text{
  margin-top: 40px;
}
.j-class_course_about .cmnt .name{
  margin-left: auto;
  margin-top: 3em;
  font-size: 1.125em;
  font-weight: 600;
  line-height: 1.5;
}
.j-class_course_about .cmnt .name span{
  display: block;
  text-align: right;
  font-size: 1.222em;
}

/* 高校のクラス制 -　page/s-class
===========================================*/
.s-class_course_box{
  margin-top: 80px;
  -ms-align-items: center;
  align-items: center;
}

.s_course_head{
  width: 990px;
  max-width: 100%;
  -ms-align-items: center;
  align-items: center;

}
.s_course_head h4{
  text-align: center;
  font-size: 1.5em;
}
.s_course_head .in-title{
  font-size: 1.25em;
  margin-top: 1.5em;
}
.s_course_head h4
,.s_course_head .in-title{
  letter-spacing: .1em;
  text-indent: .1em;
  font-weight: 600;
}
.s_course_head .in-text{
  margin-top: .5em;
}
.s-course_list{
  margin-top: 36px;
  justify-content: space-between;
}
.s-course_list li{
  width: calc((100% - 120px)/3);
  padding: 30px;
  -ms-align-items: center;
  align-items: center;
}
.s-course_list li .num{
  font-family: sans-serif;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  background: #fff;
  border-radius: 50%;

}
.s-course_list li .num
,.s-course_list li .in-title{
  font-size: 1.125em;
  font-weight: 600;
}
.s-course_list li .in-title{
  text-align: center;
  line-height: 1.5;
  margin-top: 1em;
}
.s-course_list.course__st li{
  background: #e8f4ff;
}
.s-course_list.course__t li{
  background: #f1f3ff;
}
.s-course_list.course__s li{
  background: #e0f8f3;
}
.s-course_list li .in-text{
  margin-top: 1em;
}

.page-sclass_org{
  margin-top: 150px;
}
.s-class_graph{
  width: 990px;
  max-width: 100%;
  margin: 50px auto 0;
}

/* 学習支援制度 -　page/support
===========================================*/
.page-support .sec-spmovie-blc{
  border-top: none;
}
.page-support-blc > .support-list + .under-title{
  margin-top: 80px;
}
.support-list_cat{
  border: 1px solid #dfdfdf;
  margin-top: 30px;
}
.support-list_cat > *{
  padding: 20px;
}
.support-list_cat .title{
  width: 35%;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: center;
  align-items: center;
  justify-content: center;
}
.support-list_cat .title h4{
  font-size: 1.25em;
  font-weight: 600;
  margin-bottom: .5em;
}
.support-list_cat .title .class{
  background: #58b1ae;
  width: 100%;
  color: #fff;
  padding: 5px;
  line-height: 1.5;
  text-align: center;
}
.support-list_cat .cmnt{
  width: 65%;
}

/*グローバルエデュケーション -　page/global
===========================================*/

.page-global-blc{
  padding-bottom: 100px;
}
.global-about-box{
  padding-bottom: 80px;
}
.global-about-box > * + *{
  margin-top: 100px;
}

.page-global_support{
  border-top: 2px solid #edf0f0;
  padding-top: 80px;
}
.global_support_box {
  width: 1120px;
  margin-left: auto;
  margin-right: auto;
    max-width: 100%;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
}
.global_support_box h3{
  width: 100%;
  font-size: 1.5em;
  font-weight: 900;
  letter-spacing: .1em;
  text-indent: .1em;
}
.g-support_cat{
  width: calc((100% - 60px)/2);
  margin-top: 50px;
}
.g-support_cat h4{
  font-weight: 600;
  font-size: 1.25em;
  letter-spacing: .1em;
  text-indent: .1em;
}
.g-support_cat h4 + p{
  margin-top: 2em;
}
.g-support_cat .tag span{
  display: block;
  padding: .5em 1em;
  background: #58b1ae;
  color: #fff;
}
.g-support_cat .tag span + span{
  margin-left: 1em;
}
.g-support_cat .tag + .in-text{
  margin-top: 1em;
}
.global-thumb-box{
    justify-content: center;
    gap: min(20px, 4vw);
    flex-wrap: wrap;
    margin-top: 30px;
}
.global-thumb-box > .thumb{
    width: calc((100% / 2) - min(20px, 4vw));
}
.global-about-box .support-list_cat .title h4{
    font-weight: 900;
    line-height: 1.666;
}

/*制服 -　page/uniform
===========================================*/
.uniform-box{
  margin-top: 100px;
  -ms-align-items: flex-start;
  align-items: flex-start;
}

.uniform-box h3{
  font-weight: 900;
  letter-spacing: .1em;
  text-indent: .1em;
}
.uniform-box h3 .en{
  color: #0080d9;
  font-size: 3em;
  opacity: .25;
}
.uniform-box h3 .jp{
  font-size: 1.875em;
  position: absolute;
  top: .85em;
  left: 0;
}
.uniform-box .thumb-wrap{
  width: 100%;
}
.uniform-box.winter .thumb-wrap{
    align-items: center;
    justify-content: center;
    background: url("../images/uniform/winter-bk.png") no-repeat center center/80%;
}
.uniform-box.winter .thumb-wrap > div{
    width: calc(100% / 3);
    max-width: 280px;
}
.uniform-box.winter .thumb-wrap > div.uniform-fl_c{
    gap: 40px;
    max-width: 330px;
}
.uniform-box.winter .thumb-wrap > div.winter02 + div{
    margin-left: 2em;
}
.uniform-cmnt{
    line-height: 1.8;
}
.uniform-cmnt .ttl{
    font-size: 1.125em;
    letter-spacing: 2px;
    margin-bottom: 20px;
}
.uniform-cmnt .ttl > span{
    font-weight: 900;
}
.uniform-box.summer .thumb-wrap{
    align-items: center;
    justify-content: center;
    column-gap: 2em;
}
.uniform-box.summer .thumb-wrap > div{
    width: calc(100% / 2);
    max-width: 500px;
}
.uniform-box.summer .thumb-wrap > div.uniform-fl_c{
    max-width: 420px;
    gap: 40px;
}
.uniform-box.summer .thumb-wrap{
    background: url("../images/uniform/summer-bk.png") no-repeat 80% center/50%;
}
.uniform-box.other .thumb-wrap{
    max-width: 1000px;
    margin: 100px auto 0;
    width: 100%;
}

/*クラブ活動 -　page/club
===========================================*/

.page-club .under-key_thumb img{
  object-position:top;
}
.page-club-blc{
  padding-bottom: 100px;
}
.club-list_wrap{
  -ms-align-items: center;
  align-items: center;
/*  padding-bottom: 100px;*/

}
.tab_head.tab-club::after{
  content: "";
  width: 100vw;
  height: 3px;
    background: #f6f5f2;
    position: absolute;
    bottom: 0px;
    left: 50%;
  transform: translateX(-50%);
}
.tab_head.tab-club a{
  font-size: 1.5em;
  font-weight: 600;
  letter-spacing: .1em;
  text-indent: .1em;
}
.tab_content.club_content{
  max-width: 1160px;
  padding-top: 100px;
}
.club_content .tab_panel h3{
  font-size: 1.875em;
  font-weight: 900;
  letter-spacing: .1em;
  text-indent: .1em;
  text-align: center;
}
.club_content .tab_panel .in-title{
  letter-spacing: .1em;
  text-indent: .1em;
  text-align: center;
  font-size: 1.5em;
  margin-top: 60px;
  font-weight: 600;
  line-height: 1.5;
}
.club_content .tab_panel .in-text{
  margin-top: 2em;
  padding: 0 10px;
  margin-bottom: 50px;
}
.club-spmovie_wrap{
  width: 696px;
  max-width: 100%;
  padding: 30px;
  margin-left: auto;
  margin-right: auto;
  background: #edf0f0;
}
.club-list{
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 50px;
}
.club-list > li{
  width: calc(100%/3);
  padding: 0 10px;
}
.club-list > li figure{
  width: 100%;
  overflow: hidden;
}
.club-list > li:hover figure span{
  display: block;
  -webkit-transition: transform .3s ease;
  -o-transition: transform .3s ease;
  transition: transform .3s ease;
}
.club-list > li:hover figure span{
  transform: scale(1.1);
  transform-origin: center;
}
.club-list > li + li:nth-child(n+4){
  margin-top: 50px;
}
.club-list > li h4{
  font-size: 1.25em;
  margin-top: .5em;
  font-weight: 600;
  line-height: 1.4;
}
.club-list > li h4::after{
  content: "";
  width: 5px;
  height: 5px;
  border: 1px solid;
  border-color: #000 #000 transparent transparent;
  position: absolute;
  top: calc(50% - 2.5px);
  right: 1em;
  transform:translateX(-50%) rotate(45deg);
}
.under-fl_box.club-messe_cat .cmnt h3{
  font-weight: 900;
}
.club-messe_box{
  justify-content: center;
  padding-top: 100px;
  border-top: 2px solid #edf0f0;
}
.club-messe_cat{
  width: 1120px;
  max-width: 100%;
}
.club-messe_cat .thumb{
  width: 32%;
}
.club-messe_cat .cmnt{
  width: calc(68% - 85px)
}
.club-messe_cat .cmnt .in-text
,.club-messe_cat .cmnt .name{
  margin-top: 2em;
}
.club-messe_cat .cmnt .name{
  margin-left: auto;
  font-size: 1.125em;
  font-weight: 500;
  line-height: 1.75;
}
.club-messe_cat .cmnt .name span{
  font-size: 1.125em;
}

/*クラブ下層*/
.club-temp-key .gra-text span{
  text-transform: capitalize;
}

.club-news_top > * + *{
  margin-top: 80px;
}
.tmp-club_key{
  width: 100%;
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
}
.tmp-line_title{
  -ms-align-items: center;
  align-items: center;
}
.tmp-line_title h3{
  color: #0080d9;
  padding-left: 3em;
  font-size: 1.125em;
}
.tmp-line_title h3::before{
  content: "";
  width: 2.5em;
  height: 1px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background: #0080d9;
}
.tmp-club_messe .comment{
  margin-top: 50px;
}
.tmp-club_link{
  margin-top: 40px;
}
.tmp-club_link .arrow-btn > *{
  font-size: 1em;
  width: 336px;
  max-width: 100%;
  text-align: center;
  padding-top: 1.5em;
  padding-bottom: 1.5em;
  letter-spacing: .1em;
  text-indent: .1em;
}
.tmp-club_link .arrow-btn > *::after{
  width: 1.5em;
}
.club_activity_list{
  margin-top: 40px;
  border: 1px solid #9d9d9d;
}
.club_activity_list > * + *{
  border-top: 1px solid #9d9d9d;
}
.club_activity_list > div > * + *{
  border-left: 1px solid #9d9d9d;
}
.club_activity_list > div > *{
  padding: 1em;
  line-height: 1.4;
}
.club_activity_list dt{
  width: 14em;
  text-align: center;
  background: #f8f7f6;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  justify-content: center;
}
.club_activity_list dd{
  width: calc(100% - 14em);
}
/*news*/
.tmp-club-news{
  margin-top: 80px;
}
.club-news_list{
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 50px;
  gap:30px 45px
}
.club-news_list > *{
  width: calc((100% - 90px)/3);
}
.club-news_list > p{
  width: 100%;
}
.tmp-club-news .btn-wrap{
  margin-top: 50px;
}
.tmp-club-news .arrow-btn > a{
  font-size: 1em;
  width: 255px;
  max-width: 100%;
  text-align: center;
  padding-top: 1.5em;
  padding-bottom: 1.5em;
  letter-spacing: .1em;
  text-indent: 0.1em;
}

/*年間行事　- page/event
===========================================*/
.key-event .under-key_thumb > *{
  top: 50%;
}
.page-event-blc{
  padding-bottom: 100px;
}
.event-panel_wrap{
  justify-content: space-between;
}
.event-list_wrap{
  margin-top: 70px;
}
.event-list_wrap .tab_content{
  padding-bottom: 0;
}
.event-timeline{
  width: calc(100% - (50% - 65px));
  min-width: 50%;
}
.event-timeline .item-event{
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
}
.event-timeline .item-event::before{
  content: "";
  width: 2px;
  height: 100%;
  background: #f3f3f3;
  position: absolute;
  left: 3.5px;
  top: 50%;
  transform: translateY(-50%);
}
.event-timeline .item-event:first-child::before{
  height: 65%;
  top: auto;
  bottom: 0;
  transform: none;
}
.event-timeline .item-event:last-child::before{
  height: 50%;
  top: 0;
  transform: translateY(-50%);
}
.event-timeline .item-event{
  -ms-align-items: center;
  align-items: center;
  padding-bottom: 100px;
  gap:2em;
}
.event-timeline .item-event .date{
  font-weight: 600;
  width: 12em;
  -ms-align-items: baseline;
  align-items: baseline;
  gap:1em;
}

.event-timeline .item-event .jp{
  padding-left: 3.5em;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: baseline;
  align-items: baseline;
  font-size: 1.875em;
  font-weight: 900;
  color: #0080d9;
}
.event-timeline .item-event .jp::before{
  content: "";
  width: 10px;
  height: 10px;
  background: #0080d9;
  border-radius: 50%;
  position: absolute;
  left: -5px;
  top: 50%;
  transform: translateY(-50%);
  border: 5px solid #fff;
}
.event-timeline .item-event .jp::after{
  content: "";
  width: 2em;
  height: 1px;
  background: #0080d9;
  position: absolute;
  top: 50%;
  left: 1em;
}
.event-list{
  width: calc(100% - 24em);
  line-height: 1.666;
}
.event-timeline .item-event li a{
  text-decoration: underline;
  color: #0080d9;
}
.event-timeline .item-event .in-thumb{
  display: none;
  width: calc(100% - 30px);
  margin-left: auto;
}
.event-panel_wrap .event-thumb {
/*  width: 432px;*/
  width: 40%;
  max-width: calc(50% - 65px);
  -ms-align-items: flex-end;
  align-items: flex-end;
  gap:40px;
  justify-content: space-around;
}
.event-panel_wrap .event-thumb::before{
  content: "";
  width: 100vw;
  height: calc(100% - 70px);
  background: #e8f6ff;
  position: absolute;
  left: 5%;
  bottom: 0;
}
.event-panel_wrap .event-thumb .mid{
  width: 70%;
}
.event-panel_wrap .event-thumb .min{
  width: 60%;
}
.event-panel_wrap .event-thumb .left
,.event-panel_wrap .event-thumb .cnt{
  margin-right: auto;
}

.event-panel_wrap .event-thumb .left img{
  transform: translateX(-60px)
}

.page-event_messe{
  padding-top: 100px;
  padding-bottom: 100px;
}
.page-event_messe::before{
  content: "";
  width: 1240px;
  height: 1px;
  background: #edf0f0;
  max-width: 100vw;
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
}
.event-messe_wrap{
  gap:20px 70px;
}
.event-messe_wrap .thumb{
  width: 30%;
}
.event-messe_wrap .cmnt{
  width: calc(70% - 70px);
}
.event-messe_wrap .cmnt .in-title{
  font-size: 1.875em;
  font-weight: 900;
  line-height: 1.5;
}
.event-messe_wrap .cmnt .in-text{
  margin-top: 1.5em;
}
.event-messe_wrap .cmnt .name{
  margin-left: auto;
  margin-top: 1.5em;
  line-height: 1.666;
}
.event-messe_wrap .cmnt .name span{
  font-size: 1.125em;
  padding-right: .5em;
}
/*通学区域例 -　page/area
===========================================*/

.area-map_box .in-text{
  margin-top: 70px;
}
.area-map-list{
  margin-top: 70px;
  gap:20px 60px;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
}
.area-map-list li{
  width: calc((100% - 60px)/2);
  font-size: 1.4285em;
  padding: 1.5em;
  justify-content: space-between;
  border: 1px solid #eeeeee;
  font-weight: 600;
  -ms-align-items: center;
  align-items: center;
  letter-spacing: .05em;
  text-indent: .05em;
}
.area-map-list li .area{
  color: #0080d9;
}
.area-map-list li .num span{
  font-family: "Fira Sans";
  font-size: 1.5em;
  font-weight: 500;
}
.page-area-map .btn-wrap{
  margin-top: 70px;
  justify-content: center;
}
.page-area-map .btn-wrap a{
  width: 460px;
  text-align: center;
  max-width: 100%;
}


/*生徒会　-　page/
===========================================*/
.page-council-blc > * + *{
  margin-top: 100px;
}
.page-council-box .cmnt .in-text{
  margin-top: 1em;
}
/*学校Q&A -　page/faq
===========================================*/
.faq-list_box{
	margin: 40px 0 80px;
}
.faq-list {
	border: 1px solid #dfdfdf;
	padding: 1.5em;
}
.faq-list + .faq-list{
	margin-top: 20px;
}
.faq-parent {
　position: relative;
    display: block;
    cursor: pointer;
    font-size: 1.125rem;
	font-weight: 600;
    line-height: 1.5;
	padding: .5em 2em .5em 2em;
}
.faq-parent:before{
	position: absolute;
    left: 0;
	content: 'Q';
	color: #0080d9;
	font-size: 1.45rem;
	top: 5px;
}
.faq-parent:after {
  position: absolute;
    top: 50%;
    right: 0px;
    height: 100%;
    width: 40px;
    transform: translateY(-50%) rotate(0deg);
    font-weight: 100;
    text-align: center;
    font-size: 1.5rem;
    content: '+';
	transition-duration: 375ms;
    transition-timing-function: ease-in-out;
}
.faq-parent.open:after {
  transform: translateY(-50%) rotate(45deg);
}
.faq-child{
	height: auto;
    opacity: 1;
	line-height: 1.6;
	padding: .5em 2em .5em 2.2em;
}
.faq-child a{
	text-decoration: underline;
	color: #0080d9;
}
.faq-child::before{
	position: absolute;
    left: 0;
	content: 'A';
	color: #58b1ae;
	font-size: 1.65rem;
	top: 5px;
	font-weight: 600;
}
/*中高高校　学費・諸経費 -　page/j-tuition s-tuition
===================================================*/
.page-tuition-blc > * + *{
  margin-top: 100px;
}
.page-tuition_box > .contents-title + *{
  margin-top: 40px;
}
.tuition_table{
  width: 100%;
  font-family: sans-serif;
}
.tuition_table
,.tuition_table td
,.tuition_table th{
  border: 1px solid #dfdfdf;
}
.tuition_table td
,.tuition_table th{
  padding: 1em;
  text-align: center;
  vertical-align: middle;
}
.tuition_table thead th{
  background: #e8f6ff;
  font-weight: 600;
}
.tuition_table tbody th{
  background: #e8f6ff;
}
.tuition_att{
  margin-top: 36px;
}
.tuition_att p + p{
  margin-top: 1.5em;
}

.tuition_att p{
  font-weight: 600;
  line-height: 1.25em;
}
.page-tuition_box .att-list{
  margin-top: 30px;
}
.page-tuition_box .att-list a{
	text-decoration: underline;
    color: #0080d9;
}
.tuition_list{
  border: 1px solid #9d9d9d;
  margin-top: 15px;
  font-family: sans-serif;
  max-width: 100%;
  line-height: 1.4;
}
.tuition_list + h4{
  margin-top: 60px;
}
.tuition_list > * + *{
  border-top: 1px solid #9d9d9d;
}
.tuition_list > div > * + *{
  border-left: 1px solid #9d9d9d;
}
.tuition_list dt
,.tuition_list dd{
  padding: 1.25em 1.25em 1em 4em;
}
.tuition_list dt{
  width: 24em;
  background: #f8f7f6;
}
.tuition_list dd{
  width: calc(100% - 24em);
}
.tuition_list .full dt{
  width: 100%;
  background: #e8f6ff;
  color: #0080d9;
  font-weight: 600;
}
/*転編入試 -　page/transfer
===========================================*/
.page-tansfer-blc .btn-wrap + .top-text{
  margin-top: 30px;
}
.page-tansfer-blc .top-text a{
  color: #0080d9;
  text-decoration: underline;
}
.page-tansfer-blc .top-text + .page-tansfer_box{
  margin-top: 85px;
}
.page-tansfer-blc .page-tansfer_box + .page-tansfer_box{
  margin-top: 130px;
}
.tansfe_list{
  margin-top: 28px;
  border: 1px solid #9d9d9d;
}
.tansfe_list > div + div{
  border-top: 1px solid #9d9d9d;
}
.tansfe_list > div > *{

}
.tansfe_list dt{
  background: #f8f7f6;
  width: 18em;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  justify-content: center;
  padding: 1em 20px;
}
.tansfe_list dd{
  width: calc(100% - 16em);
  border-left: 1px solid #9d9d9d;
  padding: 1em 30px;
}
.tansfe_list dd.in-row{
  padding: 0;
}
.tansfe_list dd.in-row > div{
  padding: 1em 30px;
}
.tansfe_list dd.in-row > div + div{
  border-top: 1px solid #9d9d9d;
}
.tansfer-table_wrap{
  margin-top: 56px;
}
.tansfer-table{
  width: 100%;
}
.tansfer-table
,.tansfer-table th
,.tansfer-table td{
  border: 1px solid #9d9d9d;
}
.tansfer-table th
,.tansfer-table td{
  padding: 1em;
  vertical-align: middle;
  width: calc(100% / 4);
}
.tansfer-table td p{
	text-align: center;
    color: #999;
}
.tansfer-table thead th{
  background: #e8f6ff;
  text-align: center;
  font-weight: 600;
}
.tansfer-table tbody th{
  background: #f8f7f6;
}
.tansfer-table tbody a{
  justify-content: center;
  -ms-align-items: center;
  align-items: center;
  gap:10px;
}
.tansfer-table tbody a .icn{
  width: 1.42857em;
}
.tansfer-table tbody a .txt{
  color: #0080d9;
  padding-bottom: 1.5px;
  border-bottom: 1px solid #0080d9;
}
.page-tansfer_box .btn-wrap
,.page-tansfer_box .btn-wrap-set{
  margin-top: 48px;
}
.page-tansfer_box .att-list.bld{
  font-weight: 600;
}
.page-tansfer_box .btn-wrap{
	justify-content: center;
}
.page-tansfer_box .btn-wrap a{
	width: 460px;
    text-align: center;
    max-width: 100%;
}
/*中学・高校説明会日程一覧
===========================================*/
.contents-schedule .btn-wrap-set.cnt{
	margin: 0 auto;
}
.contents-schedule .btn-wrap-set.cnt > *{
	width: 100%;
}
.exam-top_box .btn-wrap-set.cnt a{
	font-size: 1.03875em;
    padding: 1em 6em 1em 5.5em;
}
.contents-schedule .tab_content .arrow-btn a{
	margin: 0 0 2em;
}
.schedule_table th:nth-child(1){
	width: 40%;
}
.schedule_table td.td-left{
	text-align: inherit;
}
/*中学・高校入試説明会
===========================================*/
#content.contents-j-admission
,#content.contents-s-admission{
  padding-bottom: 0;
}
.page-exam-top{
  padding-bottom: 110px;
}
.contents-s-admission .page-exam-top{
/*  background: linear-gradient(180deg,rgba(235,242,247,0),rgba(235,242,247,1))*/
}
.exam-sche-box{
  margin: 42px 0;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  gap:15px 15px;
}
.exam-sche-box p.cs-text{
  width: 100%;
  text-align: center;
  font-size: 1.125em;
  letter-spacing: .1em;
  text-indent: .1em;
}
.exam-sche-box > div{
  width: calc((100% - (15px * 3))/4);
  padding: 30px 20px;
  -ms-align-items: center;
  align-items: center;
  border: 1px solid #dfdfdf;
  background: #fff;
}
.contents-s-admission .exam-sche-box > div{
  background: rgba(235,242,247,.35);
}

.sche-cat_head{
  -ms-align-items: center;
  align-items: center;
  justify-content: center;
  color: #0080d9;
  min-height: 2.5em;
}
.sche-cat_head > * + *{
  margin-top: 5px;
}
.sche-cat_head h4{
  font-weight: 600;
  letter-spacing: .05em;
  text-indent: .05em;
  text-align: center;
}
.sche-cat_head span{
  font-size: .875em;
}
.sche-cat .date{
  -ms-align-items: center;
  align-items: center;
  margin-top: 14px;
  margin-bottom: 14px;
  font-weight: 600;
  line-height: 1.2;
}
.sche-cat .date p{
  font-family: sans-serif;
  font-size: 2.8125em;
}
.sche-cat .date span{
  font-size: 1.5em;
}
.sche-cat .time{
  font-size: 1.125em;
  padding-left: 1.5em;
  font-family: sans-serif;
}
.sche-cat .time::before{
  content: "";
  width: 1em;
  height: 1em;
  background: url("../images/icn_clock.svg") no-repeat center/100%;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  display: block;
}
.sche-cat .btn-wrap{
  width: 100%;
  margin-top: 30px;
}
.sche-cat .btn-wrap > *{
  padding: 1.125em 1em;
  text-align: center;
}
.sche-cat .btn-wrap > a::after{
  content: "";
  width: 1em;
  height: 1em;
  position: absolute;
  top: 45%;
  right: 1em;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  transform: translateY(-50%);
  background-image: url( "../images/icn_w_h_arw.svg");
}
.sche-cat .btn-wrap a{
  display: block;
  background: #0080d9;
  color: #fff;
}
.sche-cat .btn-wrap a.postponed{
  border: 1px solid #0080d9;
  color: #0080d9;
  background: #fff;
}
.sche-cat .btn-wrap p.preparation{
  background: #dddddd;
  color: #fff;
}
.sche-cat .btn-wrap a.cancel{
  background: #888888;
  color: #fff;
}
.sche-cat .btn-wrap p.end{
  border: 1px solid #888;
}
.sche-cat .btn-wrap a.postponed::after{
  background-image:url("../images/icn_blu_h_arw.svg");
}
/*
.sche-cat .btn-wrap p.preparation::after{
  background-image: url("../images/icn_arrow.svg");
}
*/
.sche-cat p.link-text{
	color: #cacaca;
	margin-top: 1.25em;
    font-weight: bold;
	text-decoration: underline;
}
.sche-cat p.link-text > a{
    color: #0080d9;
}

/*news*/
.page-exam-news{
  padding-top: 90px;
  padding-bottom: 90px;
  background: #ebf2f7;
}

.contents-s-admission .page-exam-news{
  background: none;
}
.contents-s-admission .page-exam-news::before{
  content: "";
  width: 1240px;
  max-width: calc(100vw - 40px);
  height: 2px;
  background: #f3f3f3;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.exam-news_box .more-btn{
  position: absolute;
  right: 20px;
  top: -2em;
}
.exam-news-list{
  margin-top: 50px;
}
.exam-news-list li{
  padding: .5em 0;
  line-height: 1.5;
  gap:0 1.75em;
    flex-wrap: wrap;
}
.exam-news-list li .data {
  width: 28em;
  gap:0 1.75em;
  font-size: .875em;
}
.exam-news-list li .data .date{
  font-family: sans-serif;
}
.exam-news-list li .data .tag{
  gap:0 15px;
    flex-wrap: wrap;
}
.exam-news-list li .data .tag span{
  background: none;
  color: #0080d9;
  font-weight: normal;
  border-bottom: 1px solid;
  padding: 0 0 2px;
}
/*
.exam-news-list li .data .tag span{
  color: #0080d9;
  text-decoration: underline;
}
*/

/*about*/
.page-exam-about{
  padding-top: 100px;
  padding-bottom: 150px;
}
.contents-s-admission .page-exam-about{
  background: #ebf2f7;
}
.exam-about_box{
  padding-top: 45px;
  padding-bottom: 60px;
}
.exam-about_box .thumb{
  width: 40%;
}
.exam-about_box .cmnt{
  width: calc(60% - 85px);
}
.exam-link{
  margin-top: 50px;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  gap:20px 30px;
}
.exam-link li{
  width: calc((100% - 30px)/2);
}
.exam-link li a{
  display: block;
  padding: .8em;
  font-weight: 600;
  border-bottom: 2px solid #f3f3f3;
  padding-right: 1.5em;
  overflow: hidden;
  font-size: 1.125em;
  webkit-transition: color .5s cubic-bezier(.77,0,.175,1);
  -o-transition: color .5s cubic-bezier(.77,0,.175,1);
  transition: color .5s cubic-bezier(.77,0,.175,1);
}
.contents-s-admission .exam-link li a{
  background: #fff;
  border-bottom: none;
}
.exam-link li a::after{
  content: "";
  width: 1em;
  height: 1em;
  background: url("../images/icn_blu_h_arw.svg") no-repeat center/100%;
  position: absolute;
  top: 50%;
  right: .8em;
  transform: translateY(-50%);
  transition: background .3s cubic-bezier(.77,0,.175,1);
  transition-delay: .5s;
}
.exam-link li a::before{
  content: "";
  width: 100%;
  height: 100%;
  background: #0080d9;
  position: absolute;
  top: 0;
  left: -100%;
  -webkit-transition: left .8s cubic-bezier(.77,0,.175,1);
  -o-transition: left .8s cubic-bezier(.77,0,.175,1);
  transition: left .8s cubic-bezier(.77,0,.175,1);
}
.exam-link li a:hover{
  color: #fff;
}
.exam-link li a:hover::before{
  left: 0;
}
.exam-link li a:hover::after{
  background-image: url("../images/icn_w_h_arw.svg");
}

.exam-about_web{
  background: #ebf2f7;
  padding: 40px 45px;
  max-width: 1120px;
}
.exam-about_web + .exam-about_web{
  margin-top: 50px;
}
.contents-s-admission .exam-about_web{
  background: #fff;
  width: calc(100vw - 40px);
}
.exam-about_web h3{
  border-bottom: 2px solid #95d4ff;
  padding-bottom: 20px;
  font-size: 1.5em;
  font-weight: 600;
}
.exam-about_web h3 + .in-text{
  margin-top: 15px;
}
.about_web_guide{
  margin-top: 30px;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  gap:10px 35px;
}
.about_web_guide > a{
  width: calc((100% - (35px*2))/3);
  background: #fff;
  font-size: 1.125em;
  font-weight: 600;
  overflow: hidden;
  webkit-transition: color .5s cubic-bezier(.77,0,.175,1);
  -o-transition: color .5s cubic-bezier(.77,0,.175,1);
  transition: color .5s cubic-bezier(.77,0,.175,1);
}
.about_web_guide > a::after{
  content: "";
  width: .75em;
  height: 1em;
  background: url("../images/icn_blu_h_arw.svg") no-repeat center/100%;
  position: absolute;
  right: 1em;
  top: 50%;
  transform: translateY(-50%);
}
.about_web_guide > a::before{
  content: "";
  width: 100%;
  height: 100%;
  background: #0080d9;
  position: absolute;
  top: 0;
  left: -100%;
  -webkit-transition: left .8s cubic-bezier(.77,0,.175,1);
  -o-transition: left .8s cubic-bezier(.77,0,.175,1);
  transition: left .8s cubic-bezier(.77,0,.175,1);
}
.about_web_guide > a span{
  display: block;
  padding: .75em 1em;
}
.about_web_guide > a:hover{
  color: #fff;
}
.about_web_guide > a:hover::before{
  left: 0;
}
.about_web_guide > a:hover::after{
  background-image: url("../images/icn_w_h_arw.svg");
}

.contents-s-admission .about_web_guide > a{
  background: #ebf2f7;
}
.exam-about_web .att-text{
  margin-top: 30px;
}
.about_web-box p.in-text + .att-text{
	margin-top: 0;
}
.exam-about_web .att-text p{
  padding-left: 1em;
  font-size: .875em;
  line-height: 2.14;
}
.exam-about_web .att-text p::before{
  content: "※";
  position: absolute;
  left: 0;
  top: 0;
  font-family: sans-serif;
}
.about_recom_dl{
  margin-top: 20px;
}
.about_recom_dl + p.in-text{
  padding-top: 0;
  margin-top: 30px;
}
.about_recom_dl a{
  display: block;
  padding-left: 2.5em;
  line-height: 1.5;
}
.about_recom_dl a + a{
  margin-top: 30px;
}
.about_recom_dl a::before{
  content: "";
  width: 2em;
  height: 2em;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background: url(../images/icn_pdf.svg) no-repeat center/auto 100%;
}
.about_recom_dl a span{
  display: inline-block;
  color: #0080d9;
  border-bottom: 1px solid #0080d9;
}
/*ダウンロードリンクされてないとき*/
.about_recom_dl.dl_none a{
	pointer-events: none;
}
.about_recom_dl.dl_none a span{
	color: #888;
    text-decoration: line-through;
    border: none;
}

/*download*/
.page-exam-download{
  background: #ebf2f7;
  padding-top: 70px;
  padding-bottom: 150px;
}
.contents-s-admission .page-exam-download{
  background: #fff;
}
.exam-download_wrap{
  -ms-align-items: center;
  align-items: center;
}
.exam-download_list{
  margin-top: 50px;
  width: 100%;
}
.exam-download_list > div{
  letter-spacing: .1em;
  text-indent: .1em;

}

.exam-download_list > div:nth-child(odd) dt{
  background: #58b1ae;
}
.exam-download_list > div:nth-child(even) dt{
  background: #72c6c3;
}
.exam-download_list dt{
  width: calc(100% / 3);
}
.exam-download_list dt p{
  color: #fff;
  font-weight: 600;

}
.exam-download_list dd{
  width: calc(100% - (100% / 3));
}
.exam-download_list dd > *{
  width: 50%;
}

.exam-download_list > div+div{
  margin-top: 4px;
}
.exam-download_list > div
,.exam-download_list dd > *{
  gap:4px 4px;
}
.exam-download_list dd{
  gap:0 4px;
}
.contents-s-admission .exam-download_list dd > *{
  border: 1px solid #eeeeee;
}
.exam-download_list dt p,
.exam-download_list .dl_item a{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
}
.exam-download_list dt p{
  padding: 1em;
}
.exam-download_list .dl_item a{
  color: #0080d9;
  text-decoration: underline;
  background: #fff;
}

.exam-download_list .dl_item a span{
  padding: 1em 1em 1em 2em;
}

.exam-download_list .dl_item a span::before{
  content: "";
  width: 1.5em;
  height: 100%;
  background: url("../images/exam/icn_pdf.svg") no-repeat center/100%;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.exam-download_list .dl_item.dl_none a{
	    pointer-events: none;
}
.exam-download_list .dl_item.dl_none a span{
	color: #888;
    text-decoration: line-through;
    border: none;
}



/*中学・高校募集要項　- page/j-requirements s-requirements
===========================================*/

.require-btn_wrap{
  -ms-align-items: center;
  align-items: center;
}
.require-btn_wrap h3{
  font-weight: 900;
  font-size: 1.875em;
  color: #0080d9;
}
.page-require-schedule h3.blu{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}
.page-require-schedule h3.blu span{
  color: #0080d9;
  border: 3px solid;
  font-weight: 600;
  font-size: 1.125em;
  letter-spacing: .05em;
  text-indent: .05em;
  padding: .5em .85em;
}
.require-btn_wrap .top-text{
  text-align: center;
  margin-top: 1em;
}
.require-schedule_list > .box-remarks ul li a{
  text-decoration: underline;
  color: #0080d9;
}
.require-btn_wrap .btn-wrap{
  margin-top: 40px;
  width: 100%;
  gap:50px;
}
.require-btn_wrap .btn-wrap a{
  font-size: 1em;
  display: block;
  text-align: center;
}
.require-btn_wrap .btn-wrap > *{
  width: calc((100% - 100px)/3);
}

.page-require-schedule{
  margin-top: 80px;
}
.require-schedule_wrap .top-text{
  margin-top: 20px;
}
.require-schedule_list{
  gap:30px;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 40px;
}
.require-schedule_list > *{
  width: calc((100% - 30px)/2);
  background: #edf0f0;
  border-radius: 10px;
  padding: 30px 50px;
}
.require-schedule_list > .box-remarks{
  padding-left: 40px;
  padding-right: 40px;
}
.require-schedule_list > .box-remarks ul li{
  padding-left: 1.125em;
}
.require-schedule_list > .box-remarks ul li + li{
  margin-top: 3px;
}
.require-schedule_list > .box-remarks ul li::before{
  content: "※";
  position: absolute;
  left: 0;
  top: 0;
  font-family: sans-serif;
}
.require-schedule_list > .box-remarks ul li {
  line-height: 1.7;
}
.require-schedule_list > .full{
  width: 100%;
  padding-left: 30px;
  padding-right: 30px;
}
.requ-sche_item dl > div{
	align-items: center;
}
.requ-sche_item dl > div:nth-child(1) dd{
	font-weight: 600;
    font-size: 1.125em;
}

/*1日目午前午後*/
.requ-sche_item_in{
  width: 100%;
  gap:50px 30px;
  margin-top: 18px;
  justify-content: space-between;
}
.requ-sche_item_in > *{
  width: calc((100% - 30px)/2);
  background: rgba(255,255,255,.7);
  padding: 30px;
  border-radius: 10px;
}
.requ-sche_item .requ-sche_item_in dl{
  margin-top: 0;
}
/**/
.requ-sche_item .title{
  text-align: center;
}
.requ-sche_item .title h4{
  font-size: 1.42857em;
  font-weight: 600;
  letter-spacing: .1em;
  text-indent: .1em;
}
.requ-sche_item .title h4 + p{
  margin-top: 18px;
}
.requ-sche_item p.att::before{
  content: "※";
  font-family: sans-serif;
}
.requ-sche_item .remark-title{
  padding-bottom: 20px;
  background-image: linear-gradient(to right, #0080d9 2px, transparent 2px);
  background-size: 4px 2px;
  background-repeat: repeat-x;
  background-position: center bottom;
}
.requ-sche_item .about_web-box .remark-title{
  margin-bottom: 20px;
}
.requ-sche_item .remark-title h4{
  font-size: 1.25em;
  letter-spacing: .1em;
  text-indent: .1em;
}
.require-schedule_list > .box-remarks ul{
  margin-top: 20px;
}

.requ-sche_item dl{
  margin-top: 18px;
  letter-spacing: .05em;
  text-indent: .05em;
  -ms-align-items: baseline;
  align-items: baseline;
  line-height: 1.75;
  font-size: .9375em;
}
.requ-sche_item dl > * + *{
  margin-top: 1em;
}
.requ-sche_item dl dt{
  padding-left: 1.25em;
  font-weight: 600;
  width: 9em;
}
.requ-sche_item dl dt::before{
  content: "";
  width: .85em;
  height: .85em;
  position: absolute;
  left: 0;
  top: .45em;
  background: #0080d9;
}
.requ-sche_item dl dd{
  width: calc(100% - 9em);
  font-family: sans-serif;
}
.page-require-schedule .btn-wrap{
  margin-top: 60px;
}
.page-require-schedule .btn-wrap a{
  font-size: 1em;
  width: 360px;
  max-width: 100%;
  text-align: center;
}

/*WEB出願について　page/application
===========================================*/
.page-appl-top h3
,.page-appl-request h3{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}
.page-appl-top h3 span
,.page-appl-request h3 span{
  color: #fff;
  background: #0080d9;
  font-size: 1.125em;
  font-weight: 600;
  padding: .5em 1.25em;
}
.page-appl-top h3 + .cmnt{

  margin-top: 1em;
}
.page-appl-top .cmnt
,.page-appl-request .cmnt{
  line-height: 1.75;
  font-family: sans-serif;
}

.app-cmnt_wrap{
  margin-top: 25px;
}
.app-cmnt_wrap .cmnt a
,.page-appl-request .cmnt a{
  text-decoration: underline;
  color: #0080d9;
}
.app-cmnt_wrap .att-list{
  margin-top: 5px;
}
.app-link_box{
  margin-top: 50px;
  gap:20px;
}
.app-link_box .in-title{
  font-size: 1.2857em;
  font-weight: 600;
}
.app-link_box .btn-wrap
,.app-link_box .btn-wrap a
,.app-link_box .btn-wrap.no-recep p{
  width: 100%;
  text-align: center;
  font-size: 1em;
}
.app-link_box .btn-wrap.no-recep p{
  background: #888888;
  padding: 1.25em 10px;
  color: #fff;
}
.app-link_box > div{
  width: 450px;
  max-width: calc((100% - 20px)/2);
  -ms-align-items: center;
  align-items: center;
  padding: 35px;
  gap:15px;
  border: 1px solid #eee;
}
.page-appl-top .about_web_guide a{
  background: #fff;
}
.page-appl-request{
  margin-top: 80px;
}

.page-appl-top .exam-about_web{
  margin-top: 50px;
}


/*合否発表について　page/exam-result
===========================================*/



/*大学合格実績 -　page/result
===========================================*/
.page-result-count h3{
  font-weight: 900;
  font-size: 1.875em;
}
.result-count_box{
  margin-top: 40px;
  -ms-align-items: center;
  align-items: center;
}
.count-total{
  -ms-align-items: center;
  align-items: center;
  line-height: 1.2;
  margin-bottom: 60px;
}
.count-total .top-txt{
  color: #0080d9;
  font-size: 1.375em;
  letter-spacing: .05em;
  text-indent: .05em;
  font-weight: 600;
}
.result-count_box .count{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  color: #0080d9;
  font-size: 1.375em;
  -ms-align-items: baseline;
  align-items: baseline;
}
.result-count_box .count p{
  font-weight: 900;
  font-family: sans-serif;
}
.count-total .count p{
  font-size: 3.272em;
}
.count-unv_cat .count{
  margin-top: 10px;
  font-weight: 600;
}
.count-unv_cat .count p{
  font-size: 2.545em;
}
.count-total .att{
  font-size: .875em;
}
.count-total .att::before{
  content: "※";
  font-family: sans-serif;
}
.count-unv{
  width: 990px;
  max-width: 100%;
  background: #edf0f0;
  padding-top: 40px;
  padding-bottom: 40px;
}
.count-unv::before{
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 12.5px 21.7px 12.5px;
  border-color: transparent transparent #edf0f0 transparent;
  position: absolute;
  left: 50%;
  top: 1px;
  transform: translateY(-100%) translateX(-50%);
}
.count-unv > * + *{
  border-left: 1px solid #0080d9;
}
.count-unv_cat{
  width: calc(100% / 3);
  -ms-align-items: center;
  align-items: center;
}
.count-unv_cat .top-txt{
  font-size: 1.125em;
  color: #0080d9;
  letter-spacing: .05em;
  text-indent: .05em;
}
.count-unv_cat a.link{
  margin-top: 20px;
  color: #0080d9;
}
.count-unv_cat a::after{
  content: "";
  width: 5px;
  height: 5px;
  border: 1px solid;
  border-color: #0080d9 #0080d9 transparent transparent;
  position: absolute;
  top: 50%;
  right: 1em;
  transform: translateY(-50%) rotate(45deg);

}
.count-unv_cat a.link span{
  background: #fff;
  padding: .2em 3em .3em;
  display: block;
}

.page-result_messe {
  margin-top: 130px;
  padding-bottom: 130px;
}
.page-result_messe h3{
	font-weight: 900;
    font-size: 1.875em;
}
.result_messe_box{
  gap:50px;
  -ms-align-items: flex-start;
  align-items: flex-start;
}
.page-result_messe > * + *{
  margin-top: 65px;
}
.result_messe_box .thumb{
  width: 20%;
}
.result_messe_box .cmnt{
  width: calc(80% - 50px);
}
.result_messe__data{
  gap:24px;
  -ms-align-items: center;
  align-items: center;
}
.result_messe__data .course{
  background: #58b1ae;
  color: #fff;
  padding: .5em 1em .65em;
  line-height: 1;
}
.result_messe_box .cmnt .in-title{
  margin-top: 1em;
  font-size: 1.375em;
  font-weight: 900;
}
.result_messe_box .cmnt .in-text{
  margin-top: 1em;
}

.page-result-group{
  padding-top: 120px;
  border-top: 1px solid #edf0f0;
}
.page-result-group h3{
	    font-weight: 900;
    font-size: 1.875em;
}
.page-result-group > * + *{
  margin-top: 60px;
}
.result-group_box h4{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  line-height: 1.4;
}

.result-group_box h4 span{
  font-weight: 600;
  font-size: 1.125em;
  background: #0080d9;
  padding: .25em 2em .45em;
  color: #fff;
}
.result-group_box h4 + *{
  margin-top: 24px;
}
.result-group_box p.att{
  margin-top: 1em;
}
table.result_table{
  width: 100%;
}
table.result_table
,table.result_table td
,table.result_table th{
  border: 1px solid #dfdfdf;
   vertical-align: middle;
  text-align: center;
  padding: .85em 1em;
  font-family: sans-serif;
}
table.result_table thead tr{
  background: #e8f6ff;
}
table.result_table thead tr > th:first-child{
  width: 15%;

}
table.result_table thead tr > th:not(:first-child){
  width: calc(75%/2);
}
table.result_table tbody tr:first-child > th:first-child{
   color: #0080d9;
}

table.result_table th span.kisotu{
  display: block;
  line-height: 1.6;
  font-size: 0.8em;
}

/*進路指導行事と計画 -　page/plan
===========================================*/
.page-plan-blc > div:first-child{
  padding-bottom: 80px;
}
.page-plan-blc > * + *{
  padding-top: 80px;
}
.page-plan_box .in-text{
  margin-top: 30px;
}
.page-plan-blc > * + *::before{
  content: "";
  width: 1240px;
  max-width: 100vw;
  height: 3px;
  background: #edf0f0;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.page-plan_list{
  margin-top: 70px;
}
.plan-list{
  justify-content: space-between;
}
.plan-list > li{
  width: calc((100% - (36px*2))/3);
  background: #edf0f0;
  -ms-align-items: center;
  align-items: center;
  padding-top: 50px;
  padding-bottom: 50px;
}
.plan-list > li .icn{
  width: 7.5em;
  border-radius: 50%;
  overflow: hidden;
  background: #0080d9;
}
.plan-list > li .icn::before{
  content: "";
  display: block;
  padding-top: 100%;
}
.plan-list > li .icn > figure{
  position: absolute;
  width: 50%;
  height: 50%;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%)
}
.plan-list > li h4{
  font-size: 1.25em;
    font-weight: 600;
    text-align: center;
    margin-top: 45px;
  line-height: 1.5;
  min-height: 3em;
}
.plan-list > li h4 span{
  display: block;
  font-size: .83em;
}
.plan-list > li .in-text{
  max-width: calc(100% - 60px);
  margin-top: .25em;
}

/*OBメッセージ -　page/message
===========================================*/

.ob-messe_list li{
  justify-content: center;
  padding: 30px 0 30px;
}
.ob-messe_list li + li{
  margin-top: 30px;
}
.ob-messe_list li:nth-child(even){
  background: #ebf2f7;
}
.ob-messe-wrap{
  width: 1120px;
  max-width: calc(100% - 40px);
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
    justify-content: space-between;
}
.ob-messe-wrap .thumb{
	    width: 70%;
}
.ob-messe_list li:nth-child(even) .ob-messe-wrap{
  -webkit-flex-direction: row-reverse;
  -moz-flex-direction: row-reverse;
  -ms-flex-direction: row-reverse;
  -o-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
.ob-messe_list li:nth-child(even) .ob-messe-wrap .title{
  padding-left: 50px;
}

.ob-messe-wrap .title h3{
  font-size: 1.875em;
  line-height: 1.5;
  font-weight: 900;
  letter-spacing: .1em;
  text-indent: .1em;
}
.ob-messe-wrap .title .data{
  margin-top: 2em;
  line-height: 1.4;
}
.ob-messe-wrap .cmnt .date {
	    line-height: 1.4;
}
.ob-messe-wrap .cmnt .date span{
  font-size: 1.5em;
  padding-right: .5em;
  font-weight: 600;
  display: inline-block;
}
.ob-messe-wrap .cmnt .name{
	    font-size: 1.2857em;
    font-weight: 600;
    margin-top: .5em;
}
.ob-messe-wrap .cmnt{
     width: 100%;
}
.ob-messe-wrap .cmnt .in-text{
	    margin-top: 1em;
}
/*アクセス　- page/access
===================================*/

.access-map_box
,.access-root_movie{
  justify-content: space-between;
}
.access-map_box > *
,.access-root_movie > *{
  width: calc((100% - 130px)/2);
}
.access-map_box .contents-title > *
,.access-map_box .cmnt .in-text{
  margin-top: 30px;
}
.access-root_movie{
  margin-top: 60px;
}
.access-root_movie + *{
  margin-top: 136px;
}
.access-root_movie .root-movie_wrap{
	background: #edf0f0;
    padding: 1em;
    gap: min(5px, 1vw);
}
.access-map_wrap{
  width: 100%;
  aspect-ratio:5/3;
  overflow: hidden;
}
.access-map_wrap > *{
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform:translate(-50%,-50%);
}
.access-map_box .cmnt .btn-wrap{
  justify-content: flex-start;
  margin-top: 30px;
}
.access-map_box .cmnt .btn-wrap a{
  font-size: 1em;
  padding: 1em 3em 1em 2em;
}
.rect-list > li::before {
    content: "";
    width: 0.85em;
    height: 0.85em;
    background: #0080d9;
    position: absolute;
    left: 0;
    top: 0.6em;
}
.rect-list > li {
    padding-left: 1em;
    line-height: 2.14;
}

/*卒業生の方へ -　page/graduate
===========================================*/
.graduate_red{
	color: #d20000;
}
.page-graduate_box li{
	line-height: 1.75;
}
.page-graduate_box h3{
	font-weight: 900;
	font-size: 1.5em;
}
.page-graduate_box h3 + .in-text{
  margin-top: 1em;
}
.graduate-indent span.graduate-circle_p,
.graduate-indent span.graduate-circle{
	padding-left: 1.25em;
  display: inline-block;
}
.graduate-note
,.graduate-note_p{
  padding-left: 1.25em;
  display: inline-block;
}
.graduate-note::before{
	content: "※";
	position: absolute;
	border-color: #000;
	top: -.25em;
	left: 0;
}
.graduate-note_p::before{
	content: "※";
	position: absolute;
	border-color: #000;
	top: 45%;
  transform: translateY(-50%);
	left: 0;
}
.certificate-charge-blc{
  margin-top: 1em;
}
/*証明書発行手数料*/
.certificate-charge-wrap{
	margin-top:1em;
}
.certificate_title {
  margin-top: 1em;
  -ms-align-items: center;
  align-items: center;
}
.certificate_title + *{
  margin-top: 1em;
}
.certificate_title > * + *{
  margin-left: 1em;
}
.certificate_title h4{
  font-weight: 600;
  background: #0080d9;
  color: #fff;
  padding: 8px 1em;
  font-size: 1.125em;
}
.certificate-charge-list dl{
	align-items: center;
	flex-wrap: wrap;
	width: 50%;
}
.certificate-charge-list dl {
  border: 1px solid #dfdfdf;
}
.certificate-charge-list dl:nth-of-type(2){
  border-left: none;
}
.certificate-charge-list dl > div + div{
  border-top: 1px solid #dfdfdf;
}
.certificate-charge-list dl dt{
	background: #e8f6ff;
	width: 50%;
	padding: 25px 60px;
	font-weight: 600;

}
.certificate-charge-list dd{
	padding:25px 57px;
	width: 50%;
  border-left: 1px solid #dfdfdf
}
.certificate-oaf-box ul{
	padding-top: 20px;
}
/*【発行日数】【発行期限】*/
.certificate-charge-day-text p{
	margin: 1.5em 0 0;
}
.certificate-charge-limit-text p{
	margin:1.75em 0 0;
}
/*各証明書申込書*/
.certificate-oaf-blc{
	margin-top:4em;
}
.certificate-oaf-p{
	margin-top:1em;
}
.certificate-oaf-wrap{
  margin-top: 1em;
	column-gap: 65px;
}
.certificate-oaf-dawnload{
	border: solid 1px #dfdfdf;
	width: 404px;
  height: 100px;
  max-width: 50%;
}
.certificate-oaf-dawnload a{
	width: 100%;
  height: 100%;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  justify-content: center;
  padding: 1em;
  text-align: center;
}
.certificate-oaf-dawnload a p{
	font-weight:600;
	margin-right: 53px;
}
.icon-dawnload{
	width: 32px;
	height: 31px;
}
/*窓口で申請する場合*/
.certificate-way-box,
.certificate-way-post-blc{
  margin-top: 72px;
}
.certificate-bdr-title + *{
  margin-top: 1em;
}
.certificate-bdr-title  h4{
	border: solid 3px #58b1ae;
	padding: 5px 10px;
	color: #58b1ae;
	font-weight: 600;
}
.graduate-circle::before
,.graduate-circle_p::before{
  content: "";
	width: .85em;
  height: .85em;
  border: 1px solid;
  border-radius: 50%;
	position: absolute;
	top:.5em;
	left: 0;
}
.graduate-circle_p{
  line-height: 1.75;
}


.certificate-way-opning-wrap{
	margin:23px 0;
}
.certificate-way-opning-wrap dl{
		border: solid 1px #dfdfdf;
}
.certificate-way-opning-wrap dt{
	width:100%;
	background: #e8f6ff;
	border-bottom: solid 1px #dfdfdf;
}
.certificate-way-opning-wrap dd{
	width: 50%;
}
.certificate-way-opning-wrap dd:not(:last-child){
	border-right: solid 1px #dfdfdf;
}
.certificate-way-opning-wrap dt,
.certificate-way-opning-wrap dd{
	padding:25px 25px 25px 58px;
	font-weight: 600;
}
.certificate-way-opning-wrap dd:nth-child(odd){
	background: #edf0f0;
}
/*
.graduate-wave{
	padding-left: 1.7em;
}
*/
/*郵送で申請する場合*/
.graduate-indent  .graduate-num{
	background: #58b1ae;
	color: #fff;
	justify-content: center;
  padding:0 .25em;
	text-align: center;
}
.graduate-num01::before,
.graduate-num02::before,
.graduate-num03::before,
.graduate-num04::before{
	content: counter(count);
	position: absolute;
	background:  #58b1ae;
	width: 1.15em;
	height: 1.15em;
	display: flex;
	text-align: center;
	justify-content: center;
	color: #fff;
	top: 50%;
  left: 0;
  transform: translateY(-50%);
	align-items: center;
}
.graduate-num01::before{
	counter-increment: count 1;
}
.graduate-num02::before{
    counter-increment: count 2;
}
.graduate-num03::before{
    counter-increment: count 3;
}
.graduate-num04::before{
    counter-increment: count 4;
}
.graduate-num01,
.graduate-num02,
.graduate-num03,
.graduate-num04{
	padding-left: 1.5em;
}
.certificate-way-post-blc ul li{
	padding: 1em 0 ;
	border-bottom:solid 1px #dfdfdf;

}
.certificate-way-copy{
	margin-top: 10px;
	margin-left: 1em;
	align-items: center;
}
.certificate-way-copy-redtext{
		margin-left: 1.5em;
}
.graduate-num04-p{
	text-indent:.5em;
}
.graduate-note_04p::before {
    content: "※";
    position: absolute;
    border-color: #000;
    top: -3px;
    bottom: 0;
    left: -18px;
}
.certificate-way-copy_gray{
	background: #ebf2f7;
	margin:0 8px;
	padding:16px;
}
/*（手数料＋送料の例）*/
.certificate-way-sample{
	background: #edf0f0;
	padding: 27px 65px;
	margin-top: 35px;
	line-height:1.75;
}
.certificate-way-sample dd{
	padding-left: 160px;
}
/*証明書申請宛先・お問い合わせ先*/
.certificate-adr{
	border: solid 3px #58b1ae;
	margin-top: 78px;
}
.certificate-adr-title{
	background: #58b1ae;
	color: #fff;
	font-weight: 600;
	padding: 12px 16px 14px;
}
.certificate-adr-box{
	padding: 18px 65px;
}
.certificate-adr-box ul + ul{
	padding-top:15px;
}
/*同窓会についてはこちら*/
.certificate-btn {
	text-align: center;
	margin-top: 115px;
}
.certificate-btn a{
	background: #0080d9;
	font-size: 1.25em;
	display: inline-block;
	color: #fff;
  font-weight: 600;
  width: 400px;
	max-width: 100%;
	margin: 0 auto;
	padding:1em 0;
  letter-spacing: .1em;
  text-indent: .1em;
}
.certificate-btn a span{
  padding-right: 2em;
}
.certificate-btn a span::after{
  content: "";
  width: 8px;
  height: 8px;
  border: 2px solid;
  position: absolute;
  right: 0;
  top: 55%;
  border-color: #fff #fff transparent transparent;
  transform: translateY(-50%) rotate(45deg);
}

/*同窓会より -　page/alumni
===========================================*/
.alumni-top_wrap {
  gap: 0 100px;
  align-items: flex-start;
}
.alumni-top_wrap .thumb{
  width: 27%;
}
.alumni-top_wrap .cmnt{
  width: calc(70% - 83px);
}
.alumni-top_wrap .cmnt h3{
  font-weight: 900;
}
.alumni-top_wrap .cmnt .name{
	margin-top: 20px;
    font-size: 1.125em;
    font-weight: 600;
    line-height: 1.5;
}
.page-alumni-report .announce-title{
	margin: 2em 0 1em 0;
    font-family: sans-serif;
    font-weight: 600;
    font-size: 1.2em;
}
.page-alumni-report .announce-txt{
	line-height: 1.5;
    font-family: sans-serif;
}
.alumni-top_wrap .cmnt .in-text
,.alumni-top_wrap .cmnt .inquiry-txt{
  margin-top: 40px;
}
.alumni-top_wrap .cmnt .inquiry-txt{
  font-family: sans-serif;
  font-weight: 600;
}
.alumni-top_wrap .cmnt .inquiry-txt a {
  text-decoration: underline;
  color: #0080d9;
}

.page-alumni-info
,.page-alumni-report{
  margin-top: 100px;
}
.page-alumni-info h3
,.page-alumni-report h3{
  font-size: 1.5em;
  font-weight: 900;
  letter-spacing: .1em;
  text-indent: .1em;
}
.alumni-info_list{
  line-height: 1.5;
  letter-spacing: .1em;
  text-indent: .1em;
  margin-top: 30px;
  gap:15px;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
}
.alumni-info_list li{
  width: calc((100% - 30px) / 3)
}
.alumni-info_list li p.in-title{
  font-size: 1.125em;
  font-weight: 600;
}
.alumni-info_list li > dl{
  margin-top: .5em;
  font-family: sans-serif;
}
.alumni-report_cmnt{
  margin-top: 30px;
  line-height: 1.5;
  font-family: sans-serif;
}
.page-alumni-report .btn-wrap-set{
margin-top: 40px;
}
.page-alumni-report .btn-wrap-set.cnt{
	justify-content: flex-start;
}
.alumni-report_cmnt .inquiry-txt{
	margin-top: 1.5em;
	font-family: sans-serif;
  font-weight: 600;
}
.alumni-report_cmnt .inquiry-txt a {
	text-decoration: underline;
  color: #0080d9;
}
/*同窓会お問い合わせ　- page/dousou-contact
===================================*/
.contents-dousou-contact .form-list > li .f-input.after-text p{
	padding-top: 10px;
}
.contents-dousou-contact .form-list > li .f-input.grd-year input[type="text"]{
	width: 5em;
}
.contents-dousou-contact .form-list > li .f-input p{
	font-size: .88em;
}
.contents-dousou-contact .form-list > li .f-input p > .must{
	color: #cb339b;
}
.contents-dousou-contact .form-list > li .f-input input + textarea,
.contents-dousou-contact .form-list > li .f-input p + input{
	margin-top: 15px;
}

/*お問い合わせ　- page/contact
===================================*/
.grecaptcha-badge { visibility: hidden;}

.recap-txt{
  text-align: center;
  font-size: .75em;
  margin-top: 2em;
  line-height: 1.7;
}
.recap-txt a{
  text-decoration: underline;
}
.contents-contact h3{
  font-size: 1.875em;
  text-align: center;
  font-weight:900;
  letter-spacing: .1em;
  text-indent: .1em;
}
.contact-request-box{
  margin-top: 70px;
  padding-bottom: 125px;
}

.contact-navi_wrap{
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  border: 1px solid #dfdfdf;
  background: #fff;
  margin-top: 30px;
}
.ctt-navi_cat{
 justify-content: space-between;
  padding: 60px 30px;
  -ms-align-items: center;
  align-items: center;
}
.ctt-navi_cat .ccl-arrow-btn{
  width: 3em;
  height: 3em;
}
.ctt-navi_cat:hover .ccl-arrow-btn{
  transform: translateX(10px);
}
.ctt-navi_cat.hrf{
  width: 50%;
}
.ctt-navi_cat.hrf + .ctt-navi_cat.hrf{
  border-left: 1px solid #dfdfdf;
}
.ctt-navi_cat.full{
  width: 100%;
  border-top: 1px solid #dfdfdf;
}
.ctt-navi_cat .title{
  width: calc(100% - 4em);
  -ms-align-items: flex-start;
  align-items: flex-start;
}
.ctt-navi_cat .title h4{
  width: 100%;
  font-size: 1.5em;
  border-bottom: 1px solid #dfdfdf;
  padding: 0 1em 16px 0;
  font-weight: 600;
}
.ctt-navi_cat .title p.in-text{
  padding-top: 1em;
  letter-spacing: normal;
  text-indent:inherit;
  z-index: 2;
}
.form-inner{
  max-width: 1060px;
  margin-left: auto;
  margin-right: auto;
}
.page-contact-form{
  padding-top: 100px;
  padding-bottom: 100px;
}
.page-contact-form::before{
  content: "";
  width: 100vw;
  height: 100%;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  background: #ebf2f7;
}
.contact-form-box{
  margin-top: 70px;
}
.contact-form-box p.in-text{
  margin-bottom: 50px;
}
.form-wrap{
  border: 1px solid #dfdfdf;
  padding: 100px 20px;
  background: #fff;

}
.form-wrap > *{
  width: 100%;
  max-width: 100%;
}
.form-list{
  width: 100%;
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
}
.form-list > li{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  -ms-align-items: flex-start;
  align-items: flex-start;
}
.form-list > li + li{
  margin-top: 37px;
}
.form-list > li .f-title{
  padding-top: 1em;
  padding-bottom: 1em;
  width: calc(40% - 30px);
  font-weight: 600;
}
.form-list > li .f-title.must{
  padding-right: 4em;
}
.form-list > li .f-title.must::after{
  content: "必須";
  color: #fff;
  background: #0080d9;
  padding: .45em .857em;
  border-radius: 5px;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  font-size: .857em;
  font-weight: 600;
}
.form-list > li .f-title p{
  font-weight: 600;
  letter-spacing: .1em;
  text-indent: .1em;
}
.form-list > li .f-input{
  width: 60%;
}

input[type="text"]
,input[type="email"]
,input[type="tel"]
,textarea{
  background: #f8fcff;
  border: 1px solid #d7d7d7;
  width: 100%;
  padding: .75em 1em;
  max-width: 100%;
  box-sizing: border-box;
}
.select-wrap{
  width: 100%;
}
.select-wrap::after{
  content: "";
  width: 5px;
  height: 5px;
  border: 1px solid;
  border-color: transparent #0080d9 #0080d9 transparent;
  position: absolute;
  top: 1.25em;
  right: 1em;
  transform: translateY(-50% )rotate(45deg);
}
.select-wrap select{
  background: #f8fcff;
  border: 1px solid #d7d7d7;
  width: 100%;
  padding: .75em 1.5em;
  outline: none;
}
.form-btn {
  justify-content: center;
  margin-top: 68px;
}
.form-btn input{
  background: #0080d9;
  color: #fff;
  font-weight: 600;
  letter-spacing: .1em;
  text-indent: .1em;
  width: 324px;
  max-width: calc(100% - 50px);
  padding: 1.125em 1em;
  font-size: 1.142857em;
}

.form-btn .form-back{
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.form-btn .form-back{
  padding-left: 1em;
}
.form-btn .form-back::before{
  content: "";
  width: 5px;
  height: 5px;
  border: 1px solid;
  border-color: #0080d9 transparent transparent #0080d9;
  position: absolute;
  top: 50%;
  left: 0em;
  transform: translateY(-50%)rotate(-45deg);
}
.mw_wp_form .form-list .error{
  margin-top: .5em;
  font-size: .8235em
}
/*入力画面のみ*/
.mw_wp_form_input .form-btn .form-back{
  display: none;
}
/*確認画面*/
.mw_wp_form_confirm .select-wrap::after{
  content: none;
}
.mw_wp_form_confirm .f-input{
  padding:1em;
}


/*電話*/
.page-contact-dial{
  padding-top: 100px;
}
.contact-dial-box{
  -ms-align-items: center;
  align-items: center;
}
.contact-dial-box p.in-text{
  margin-top: 70px;
  text-align: center;
}
.contact-dial-box p.in-text span::after{
  content: "：";
}
.contact-dial_link{
  width: 678px;
  max-width: 100%;
  justify-content: center;
  padding: 46px 20px 40px;
  border-radius: 93px;
  border: 1px solid #dfdfdf;
  margin-top: 50px;
}
.contact-dial_link .dial_link{
  -ms-align-items: center;
  align-items: center;
  line-height: 1.2;
}
.contact-dial_link .dial_link .txt{
  font-size: 1.2857em;
  font-weight: 600;
}
.contact-dial_link .dial_link .num{
  font-size: 2.857em;
  letter-spacing: .12em;
  font-weight: 900;
/*  font-family: "Fira Sans";*/
}
.contact-dial_link .ccl-arrow-btn{
  position: absolute;
  right: 40px;
  top:50%;
  transform: translateY(-50%);
  -webkit-transition: right .3s;
  -o-transition: right .3s;
  transition: right .3s;
}
.contact-dial_link:hover .ccl-arrow-btn{
  right: 30px;
}

/*送信完了　- page/thanks
===================================*/

.page-thanks-top h3{
  font-weight: 900;
  font-size: 1.875em;
  text-align: center;
}
.form-wrap.page-thanks{
  -ms-align-items: center;
  align-items: center;
  margin-top: 90px;
}
.form-wrap.page-thanks p.in-text{
  text-align: center;
}
.form-wrap.page-thanks .bk-top-btn{
  justify-content: center;
  margin-top: 90px;
}
.form-wrap.page-thanks .bk-top-btn > a{
  background: #0080d9;
  color: #fff;
  font-weight: 600;
  letter-spacing: .1em;
  text-indent: 0.1em;
  width: 324px;
  max-width: calc(100% - 50px);
  padding: 1.125em 1em;
  font-size: 1.142857em;
  text-align: center;
}
/*サイトポリシー -　page/poricy
===========================================*/
#content.contents-page.contents-privacy{
  margin-top: 83px;
}
.page-policy-blc{
  padding-bottom: 135px;
}
.page-policy-blc p.top-text{
  line-height: 2.14;
}
.policy__list{
  margin-top: 50px;
}
.policy__list > li{
  padding-left: 2em;
}
.policy__list > li + li{
  margin-top: 40px;
}
.policy__list > li::before{
  content: "";
  position: absolute;
  left: 0;
  top: .55em;
  width: 1em;
  height: 1em;
  background: #0080d9;
}
.policy__list > li p.in-text.bld{
  font-weight: 600;
}

ul.bc_list li::before{
  content: "";
  position: absolute;
  left: 0;
  top: .55em;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  border: 1px solid #0080d9;
}
.policy__list ul.bc_list li{
  line-height: 2.14;
}
.policy__list ul.bc_list li::before{
  left: -2em;
}
p.top-text + .privacy-link{
  margin-top: 40px;
}
.privacy-link{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: flex-start;
  align-items: flex-start;
}
.privacy-link p + a{
  margin-top: 3em;
}

.privacy-link a {
display: block;
  padding-left: 1.5em;
}
.privacy-link a + a{
  margin-top:1em;
}
.privacy-link a::after{
  content: "";
  width: 1em;
  height: 1em;
  background: url("../images/icn_link.svg");
  position: absolute;
  left:0;
  top: 0;
}
.policy__list > li h3{
  line-height: 2.14;
  font-weight: 600;
}
.dot-list li{
  padding-left: 1em;
  line-height: 2.14;
}
.dot-list li::before,
ul.bc_list .dot-list > li::before,
ul.num-list .dot-list > li::before{
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
  border: none;
  counter-increment: auto;
}
.num-list
,.cl-num-list{
  counter-reset: count 0;
}
.num-list > li{
  padding-left: 1.125em;
  line-height: 2.14;
}
.cl-num-list > li{
  line-height: 2.14;
  padding-left: 1.3em;
}
.num-list > li::before{
  content: counter(count)'.';
  counter-increment: count 1;
  position: absolute;
  left: 0;
  top: 0;
}
.cl-num-list > li::before{
  width: 1.05em;
  height: 1.05em;
  font-size: .935em;
  border: 1px solid #444;
  border-radius: 50%;
  content: counter(count)'';
  counter-increment: count 1;
  position: absolute;
  left: 0;
  top: 0;
  transform: translateY(45%);
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  justify-content: center;
}
.att-list > li{
  padding-left: 1.125em;
  line-height: 1.4;
}
.att-list > li::before{
  content: "※";
  position: absolute;
  left: 0;
  top: 0;
  font-family: sans-serif;
}
.att-list > li + li{
  margin-top: .5em;
}
.rect-list > li{
  padding-left: 1em;
  line-height: 2.14;
}
.rect-list > li::before{
  content: "";
  width: .85em;
  height: .85em;
  background: #0080d9;
  position: absolute;
  left: 0;
  top: .6em;
}
.rect-list.bdr li{
  padding-left: 1.25em;
}
.rect-list.bdr li::before{
  width: .75em;
  height: .75em;
  background: none;
  border: 1px solid #0080d9;
}
.ccl-list > li{
  padding-left: 1.125em;
  line-height: 2.14;
}
.ccl-list > li::before{
  content: "";
  width: .85em;
  height: .85em;
  background: #0080d9;
  position: absolute;
  left: 0;
  top: .6em;
  border-radius: 50%;
}
.ccl-list.bdr > li::before{
  background: #fff;
  border: 1px solid #444;
}
.dl-list{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: flex-start;
  align-items: flex-start;
}
.dl-list li {
  line-height: 2.14;
}
.dl-list li a{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  gap: 0 10px;
}
.dl-list li a .icn{
  width: 1.5em;
}
.dl-list li a .txt{
  color: #0080d9;
  text-decoration: underline;
}
/*サイトマップ - -page/site_map
======================================================*/
.page-sitemap-box{
	max-width: 800px;
    width: 100%;
	margin: 0 auto;
}
.page-sitemap-box > ul > li + li{
	border-top: 1px solid #dedede;
}
.page-sitemap-box > ul > li > a{
	display: block;
    padding: 15px;
    font-size: 1.125em;
}
.page-sitemap-box > ul > li > a::after{
	content: "";
    width: 5px;
    height: 5px;
    border: 1px solid;
    border-color: #0080d9 #0080d9 transparent transparent;
    position: absolute;
    right: 0.5em;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
}
.page-sitemap-box > ul > li.cat-item > a,
.page-sitemap-box > ul > li.page_item_has_children > a{
	font-size: 1em;
    padding-left: 1.25em;
}
/*
.page-sitemap-box > ul > li.cat-item > a::before,
.page-sitemap-box > ul > li.page_item_has_children > a::before{
	content: "";
    width: 0.75em;
    height: 0.75em;
    background-color: #0080d9;
    position: absolute;
    top: 50%;
    left: 0;
    border-radius: 3px;
    transform: translateY(-50%);
}
*/
.page-sitemap-box > ul > li.cat-item > ul,
.page-sitemap-box > ul > li.page_item_has_children > ul{
	margin-left: 1em;
	padding-bottom: 10px;
}
.page-sitemap-box > ul > li.cat-item > ul a,
.page-sitemap-box > ul > li.page_item_has_children > ul a{
	font-size: .875em;
    padding: 10px 10px 10px 20px;
    display: block;
}
.page-sitemap-box > ul > li.cat-item > ul a::before,
.page-sitemap-box > ul > li.page_item_has_children > ul a::before{
	content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 8px;
    border-color: transparent transparent transparent #0080d9;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
/*ARCHIVE SINGLE Setting
==================================================================*/

#key.under-key + .breadcrumbs + #content.contents-page.contents-archive
,#key.under-key + .breadcrumbs + #content.contents-page.contents-single{
  margin-top: 95px;
}
.clm_wrap{
  justify-content: space-between;
}
.clm_wrap .l-main{
  width: calc(100% - (275px + 90px));
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
}

.clm_wrap .l-side{
  width: 275px;
}
.clm_wrap .l-side h3{
  background: #e8f6ff;
  padding: 14px 12px;
  border: 1px solid #0080d9;
}

/*sidebar*/
.clm_wrap .l-side > * + *{
  margin-top: 35px;
}
/*search*/
.search_wrap >*{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  width: 100%;
  max-width: 100%;
}
.search_wrap{
  background: #fff;
  border: 1px solid #0080d9;
}
.search_wrap input[type="text"]{
  background: #fff;
  border: none;
  width: 100%;
  padding:10px 10px 10px 3em;
}
#s-btn-area{
  width: 1.5em;
  height: 1.5em;
  padding: 0;
  position: absolute;
  left: 10px;
  top: 45%;
  transform: translateY(-50%);
}
/*list*/
.side-post_list
,.side-cate_list{
  margin-top: 25px;
}
.side-post_list > * {
  justify-content: space-between;
  padding: 10px 0;
}
.side-post_list > * + *{
  border-top: 2px solid #eee;
}
.side-post_list article .side_thumb{
  width: 30%;
  overflow: hidden;
}
.side-post_list article .side_thumb::before{
  content: "";
  display: block;
  padding-top: 100%;
}
.side-post_list article .side_thumb figure{
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.side-post_list article .side_thumb img{
  object-fit: cover;
  height: 100%;
}
.side-post_data{
  width: 70%;
  padding: 10px;
}
.no-tmb .side-post_data{
  width: 100%;
}
.side-post_data .data{
  font-size: .625em;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  gap:5px;
}
.side-post_data .data .date{
  width: 5em;
}
.side-post_data .data .tag {
  width: calc((100% - 5em) - 5px);
  gap:1.5px 3px;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: flex-start;
  align-items: flex-start;
}

.side-post_data h4{
  margin-top: 10px;
  font-size: .875em;
}
.side-cate_list a{
  display: block;
  font-size: .875em;
}
.side-cate_list > li{
  border-bottom: 2px solid #eee;
}
.side-cate_list > li > a{
  font-weight: 600;
  padding: 15px 0;
}
.side-cate_list > li + li{

}
.side-cate_list ul.children{
  padding-left: 1em;
  padding-bottom: 5px;
}
.side-cate_list ul.children a{
  padding: .5em 0;
}

/*archive category */
#key.acv-key .page-header h2.jp{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  gap:0 10px;
}
#key.acv-key .page-header h2.jp span + span{
  padding: 0 1em;
}
#key.acv-key .page-header h2.jp span + span::before
,#key.acv-key .page-header h2.jp span + span::after{
  content: "";
  width: .65em;
  height: 2px;
  background: #fff;
  position: absolute;
  top: calc(50% + 1px);
  transform: translateY(-50%);
}
#key.acv-key .page-header h2.jp span + span::before{
  left: 0;
}
#key.acv-key .page-header h2.jp span + span::after{
  right: 0;
}
.acv-item_wrap{
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  gap:15px;
  padding-bottom: 80px;
}
.acv-item_wrap > article{
  width: calc((100% - 15px)/2);
}
/*acv pager*/
.acv-pager{
  margin-top: auto;
}

.wp-pagenavi{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  gap:5px;
}
.wp-pagenavi a
,.wp-pagenavi span{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  width: 2em;
  height: 2em;
  justify-content: center;
  -ms-align-items: center;
  align-items: center;
  border: 1px solid #0080d9;
  color: #0080d9;
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
  font-family: sans-serif;
}
.wp-pagenavi span
,.wp-pagenavi a:hover{
  background: #0080d9;
  color: #fff;
}
.wp-pagenavi a.previouspostslink
,.wp-pagenavi a.nextpostslink{
  border: none;
  border-radius: 50%;
}
.wp-pagenavi a.nextpostslink::before
,.wp-pagenavi a.previouspostslink::before{
  content: "";
  width: 5px;
  height: 5px;
  border: 1px solid;
  position: absolute;
  top: 50%;
}
.wp-pagenavi a.nextpostslink::before{
  left:calc(50% - 1.5px);
  border-color: #0080d9 #0080d9 transparent transparent;
  transform: translate(-50%,-50%) rotate(45deg);
}
.wp-pagenavi a.previouspostslink::before{
  left:calc(50% + 1.5px);
  border-color: #0080d9 transparent transparent #0080d9;
  transform: translate(-50%,-50%) rotate(-45deg);
}
.wp-pagenavi a.nextpostslink:hover::before{
  border-color: #fff #fff transparent transparent;
}
.wp-pagenavi a.previouspostslink:hover::before{
  border-color: #fff transparent transparent #fff;
}

/*single*/

.contents-single .single-pager{
  margin-top: auto;
  justify-content: space-between;
  min-height: 3em;
}
.contents-single .single-pager a {
  max-width: calc(100%/3);
}
.contents-single .single-pager a span{
  display: block;
  padding: 15px;
  border: 1px solid #0080d9;
  width: 100%;
  text-align: center;
  font-size: .875em;
}
.contents-single .single-pager a.nav-top{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  background: #0080d9;
  color: #fff;
  width: 8em;
}
.contents-single .single-pager a.next{
  margin-left: auto;
}
.contents-single .single-pager a.next span{
  padding-right: 20px;
}
.contents-single .single-pager a.prev span{
  padding-left: 20px;
}
.contents-single .single-pager a.next::after
,.contents-single .single-pager a.prev::before{
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  top: 50%;
  border: 1px solid;
}
.contents-single .single-pager a.next::after{
  border-color: #0080d9 #0080d9 transparent transparent;
  transform: translateY(-50%) rotate(45deg);
  right: 10px;
}
.contents-single .single-pager a.prev::before{
  left: 10px;
  border-color: #0080d9 transparent transparent #0080d9;
  transform: translateY(-50%) rotate(-45deg);
}
.post-single_wrap{
  padding-bottom: 80px;
}
.post-single_head .post-title{
  font-size: 1.42857em;
  font-weight: 600;
  line-height: 1.4;
}
.post-single_head .data{
  gap:15px;
  margin-top: 25px;
}
.post-single_head .data .date{
  color: #0080d9;
  font-family: sans-serif;
  font-size: .875em;
}
.post-single_head .data .tag{
  gap:5px;
}
.post-single_head .data .tag > span{
  font-size: .71428em;
  display: block;
  padding: .3em .5em;
}
.post-single_body{
  max-width: 100%;
  margin-top: 30px;
  line-height: 2.1428;
  letter-spacing: .1em;
  text-indent: .1em;
}
.post-single_body a{
  text-decoration: underline;
  color: #0080d9;
}
.post-single_body >  * + *{
  margin-top: 30px;
}

/*在校生・保護者ページ設定　　page/parent
===============================================*/
/*
body.page-parent header#under{
   background: rgba(237,240,240,.35);
}
*/
header .btn-logout{
  width: 110px;
  position: absolute;
  right: 1px;
  bottom: 0;
  transform: translateY(100%);
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  background: #0080d9;
}
header .btn-logout a{
  padding: .85em .5em.85em .5em;
  color: #fff;
  letter-spacing: .1em;
  text-indent: .1em;
  font-size: .75em;
  font-weight: bold;
  text-align: center;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  gap:.5em;
}
header .btn-logout span.icn{
  width: 1.2em;
  height: 1.2em;
}
.login-form-blc .top-text{
  text-align: center;
}
.login-form_wrap{
  justify-content: center;
}
.login-form_wrap > #wpmem_login
,.login-form_wrap > #wpmem_reg{
  width: 700px;
  max-width: 100%;
}
.login-form_wrap #wpmem_login input[type="text"]
,.login-form_wrap #wpmem_login input[type="password"]
,.post-single_body #wpmem_login input[type="text"]
,.post-single_body #wpmem_login input[type="password"]{
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
#wpmem_login .button_div, #wpmem_reg .button_div{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column-reverse;
  -moz-flex-direction: column-reverse;
  -ms-flex-direction: column-reverse;
  -o-flex-direction: column-reverse;
  flex-direction: column-reverse;
  -ms-align-items: center;
  align-items: center;
  width: 100%;
}
.button_div input[type="checkbox"] + label{
  padding-left: 1.5em;
  font-size: .875em;
}
.button_div input[type="checkbox"] + label::before{
  content: "";
  width: 1em;
  height: 1em;
  border: 1px solid #444;
  position: absolute;
  left: 0;
  top: 45%;
  transform: translateY(-50%);
}
.button_div input[type="checkbox"] + label::after{
  content: '';
  display: block;
  position: absolute;
  top: .25em;
  left: .15em;
  width: 12px;
  height: 6px;
  border-left: 2px solid #0080d9;
  border-bottom: 2px solid #0080d9;
  transform: rotate(-45deg);
  opacity: 0;
}
.button_div input[type="checkbox"]:checked + label::after{
  opacity: 1;
}
.button_div input[type="submit"]{
  background: #0080d9;
  color: #fff;
  padding: .5em 2em;
}
.post-single_body #wpmem_login{
  width: 100%;
}
#wpmem_restricted_msg p{
  text-align: center;
}

/*news*/
.page-parent-news{
  padding-bottom: 50px;
}
.page-parent-news .btn-wrap a{
  width: 300px;
  text-align: center;
  max-width: 100%;
  padding-top: 1.5em;
  padding-bottom: 1.5em;
  font-size: 1em;
}
.page-parent-news .tab_switch::after{
  width: 100vw;
  left: 50%;
  transform: translateX(-50%);

}
.page-parent-news .tab_switch > li a{
  font-weight: 600;
  font-size: 1.125em;
}
.parent-news-box .tab_panel__inner{

}
.page-parent-news .tab_content{
  padding-top: 40px;
  padding-bottom: 60px;
  width: 1060px;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;

}
.tab_panel__inner > .prt_post{
  width: 100%;
  margin-top: 0;
  padding-top: 20px;
  padding-bottom: 20px;
}

.parent-news-box .tab_panel__inner > * + *{
  margin-left: 0;
}
.parent-news-box .tab_panel__inner > * + *:nth-child(n + 4){
	margin-top: 0;
}
.tab_panel__inner > .exam-news-list li .data{
  width: 15em;
}


/*download*/
.page-parent-file{
  padding-top: 140px;
  border-top: 3px solid #f3f3f3;
  padding-bottom: 90px;
}
.page-parent-file .under-title
,.page-parent-certif .under-title{
  text-align: center;
}
.page-parent-file::before{
  content: "";
  width: 100vw;
  height: 100%;
  background: linear-gradient(180deg,rgba(235,242,247,0),rgba(235,242,247,1));
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.parent-file_list{
  margin-top: 70px;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  gap:10px;
}
.parent-file_list > *{
  width: calc((100% - 20px)/2);
  padding: 30px 40px;
  background: #fff;
  border: 1px solid #eeeeee;
}
.parent-file_list > .file_list_item:nth-child(1){
	width: 100%;
}
.file_list_item h4{
  font-size: 1.2857em;
  font-weight: 600;
  text-align: center;
  line-height: 1.4;
}
.file_list_item .in-text{
  margin-top: 20px;
}
.file_list_item .file-link
,.certif_attention .file-link{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  margin-top: 10px;
  color: #0080d9;

  padding: 5px 0 5px 2.5em;
}

.file_list_item .file-link{
  font-weight: 600;
}
.file_list_item .file-link::before
,.certif_attention .file-link::before{
  content: "";
  width: 1.5em;
  height: 1.5em;
  background: url("../images/exam/icn_pdf.svg") no-repeat center/auto 100%;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.file_list_item .file-link span
,.certif_attention .file-link span{
  padding-bottom: 2px;
  border-bottom: 1px solid #0080d9;
}
.page-parent-file .btn-wrap{
  margin-top: 50px;
  justify-content: center;
}
.page-parent-file .btn-wrap a{
  width: 300px;
  text-align: center;
  max-width: 100%;
  padding-top: 1.5em;
  padding-bottom: 1.5em;
  font-size: 1em;
}

/*証明書ダウンロード*/
.page-parent-certif{
  padding-top: 130px;
}
.certif_attention{
  background: #ebf2f7;
  padding: 40px 50px;
  border-radius: 10px;
}
.certif_attention h4{
  font-size: 1.25em;
  padding-bottom: 20px;
  background-image: linear-gradient(to right, #0080d9 2px, transparent 2px);
    background-size: 4px 2px;
    background-repeat: repeat-x;
    background-position: center bottom;
}
.certif_attention .in-text
,.certif_attention .file-link
,.certif_attention ul.att-list{
  margin-top: 20px;
}

.parent-certif_box{
  margin-top: 80px;
}
.certif_list_box h3
,.parent-certif_box h3{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  gap: 1em;
  -ms-align-items: center;
  align-items: center;
}
.certif_list_box h3 span
,.parent-certif_box h3 span{
  font-weight: 600;
  background: #0080d9;
  padding: 5px 8px;
  color: #fff;
}
.certif_list_box h4{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}
.parent-certif_box h3 + *{
  margin-top: 20px;
}
.parent-certif_box > .certif_list_box + .certif_list_box{
  margin-top: 40px;
}
.certif_list_box h4 span{
  padding: .25em 1em;
  border: 3px solid #58b1ae;
  color: #58b1ae;
  font-weight: 600;
}
.certif_list_wrap{
  margin-top: 1em;
}
.parent-certif_box > .certif_attention + .certif_list_box{
  margin-top: 40px;
}
.certif_list_box > .att-list{
  margin-top: 20px;
}
.certif_list_wrap > .certif_list + .certif_list{
  border-left: none;
}
.certif_list{
  width: calc(100% / 2);
  border: 1px solid #9d9d9d;
}
.certif_list dt{
  background: #f8f7f6;
}
.certif_list dd{
  border-left: 1px solid #9d9d9d;
  font-family: sans-serif;
}
.certif_list:not(.full) dd
,.certif_list dt{
  text-align: center;
}
.certif_list > * + *{
   border-top: 1px solid #9d9d9d;
}
.certif_list dt
,.certif_list dd{
  padding: 1.5em;
}
.certif_list dt
,.certif_list:not(.full) dd{
  width: calc(100% / 2);
}
.certif_list.full{
  width: 100%;
}
.certif_list.full dt{
  width: calc(100% / 4);
}
.certif_list.full dd{
  width: calc(100% - (100% / 4));
  padding-left: 3em;
}

.certif_list_box .address-text{
  line-height: 1.75;
  margin-top: 20px;
}
.certif_list_box .address-text a{
  text-decoration: underline;
  color: #0080d9;
  font-family: sans-serif;
}

/*news archive single*/
.acv-item_wrap > article.prt_post {
  width: 100%;
  padding-bottom: 20px;
  border-bottom: 2px solid #e8e8e8;
}
.acv-item_wrap > article.prt_post + article.prt_post{
  padding-top: 20px;
}
.acv-item_wrap > article.prt_post .acv_data
,.tab_panel__inner > .prt_post .acv_data{
  width: 20em;
  font-size: .75em;
  -ms-align-items: center;
  align-items: center;
  gap:10px;
}
.acv-item_wrap > article.prt_post .acv_data .date
,.tab_panel__inner > .prt_post .acv_data .date{
  font-family: sans-serif;
}
p.tag span.news-parent_jnr + span.news-parent_snr{
    margin-left: 5px;
}

/*シラバス　- page/syllabus
============================================*/

.syllabus-feature_box{
  margin-top: 60px;
}
.syllabus-feature_box > * + *{
  margin-top: 20px;
}
.syllabus-feature__list{
  border: 1px solid #dfdfdf;
}
.syllabus-feature__list dt{
  background: #ebf2f7;
  padding: 15px 40px;
  font-weight: 600;
}
.syllabus-feature__list dd{
  border-top: 1px solid #dfdfdf;
  padding: 30px 40px;
}
.syllabus-feature__list dd .dot-list.fl{
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  gap:0 20px;
}
.syllabus-feature__list dd .dot-list.fl > *{
  width: calc((100% - 20px) / 2);
}
.syllabus-feature__list dd.fst-ccl{
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-align-items: flex-start;
  align-items: flex-start;
  gap:30px 20px;
}
.syllabus-feature__list dd.fst-ccl > *{
  width: calc((100% - 20px) / 2);
}
.syllabus-feature__list dd.fst-ccl ul li:first-child{
  padding-left: 1.25em;
}
.syllabus-feature__list dd.fst-ccl ul li:first-child::before{
  content: "";
  width: .85em;
  height: .85em;
  border-radius: 50%;
  border: 1px solid #0080d9;
  top: 50%;
  transform: translateY(-50%);
}
.syllabus-feature__list dd.fst-ccl ul:last-child{
  margin-top: -4em;
}

/*ダウンロード*/

.page-syllabus-dl{
  margin-top: 110px;
}
.syllabus-dl_list {
  border: 1px solid #dfdfdf;
  background: #f8f7f6;
}
.syllabus-dl_list > div > *{

}
.syllabus-dl_list > div + div{
  border-top: 1px solid #dfdfdf;
}
.syllabus-dl_list dt{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  justify-content: center;
  width: 15%;

}
.syllabus-dl_list dt.topline{
  margin-top: 3em;
  border-top: 1px solid #dfdfdf;
}
.syllabus-dl_list .dl_list_wrap{
  width: 85%;
}
.syllabus-dl_list dd{
  border-left: 1px solid #dfdfdf;
  width: calc(100% / 3);
  -ms-align-items: center;
  align-items: center;
  background: #fff;
  font-size:.875em;
}
.syllabus-dl_list dd .in-title{
  width: 100%;
  background: #f8f7f6;
  text-align: center;
  padding: 1em;
  border-bottom: 1px solid #dfdfdf;
  height: calc(3em + 1px);
}
.syllabus-dl_list dd .file_list_item{
  padding: 1.5em 1em;
  gap:5px;
}
.syllabus-dl_list dd .file_list_item .file-link{
  margin-top: 0;
}
/*NOT FOUND
============================================*/

.page-notfound-blc{
  justify-content: center;
}

.page-notfound_messe .in-title{
  text-align: center;
  font-size: 1.5em;
}
.page-notfound_messe .in-text{
  margin-top: 45px;
}
.page-notfound_messe .btn-wrap{
  margin-top: 40px;
}
.page-notfound_messe .btn-wrap a{
  display: block;
  width: 280px;
  text-align: center;
  max-width: 100%;
}


.facility-fl_box .arrow-btn {
  justify-content: flex-start;
}

.facility-fl_box {
  align-items: center;
}
