@charset "UTF-8";

:root {
	--baseColor: #ccc;
	--nameColor: #ddd;
	--interviewColor:rgba(0,0,0,.2);
	--messagebkColor:#eee;
	--hoverColor:#888;
	--pointColor:#ddd;
}

#blue{
	--baseColor: #316fab;
	--hoverColor:#a6dbf2;
	--nameColor: #6ec8f2;
	--prfSubColor:rgba(110,200,242,.2);
	--interviewColor:rgba(189,239,230,.4);
	--interviewSubColor:rgba(189,239,230,.8);
	--photoColor:#94aeda;
	--photoSubColor:rgba(230,233,239,.4);
	--messageColor:#daecec;
	--messageSubColor:rgba(218,236,236,.8);
	--messagebkColor:rgba(218,236,236,.4);
	--rcmdColor:rgba(49,111,171,.3);
	--pointColor:rgba(198,211,206,.2);
}

#green{
	--baseColor: #008571;
	--hoverColor:#a6dbaa;
	--nameColor: #81c9be;
	--prfSubColor:rgba(129,201,190,.2);
	--interviewColor:rgba(175,232,232,.4);
	--interviewSubColor:rgba(175,232,232,.8);
	--photoColor:#5fc5a5;
	--photoSubColor:rgba(95,197,165,.4);
	--messageColor:#deeee5;
	--messageSubColor:rgba(222,238,229,.8);
	--messagebkColor:rgba(222,238,229,.4);
	--rcmdColor:rgba(0,133,113,.3);
	--pointColor:rgba(207,218,202,.2);
}

#orange{
	--baseColor: #de5d32;
	--hoverColor:#f7ce6b;
	--nameColor: #f4a54d;
	--prfSubColor:rgba(244,165,77,.2);
	--interviewColor:rgba(255,240,205,.4);
	--interviewSubColor:rgba(255,240,205,.8);
	--photoColor:#e38e8a;
	--photoSubColor:rgba(227,142,138,.4);
	--messageColor:#fbe4de;
	--messageSubColor:rgba(251,228,222,.8);
	--messagebkColor:rgba(251,228,222,.4);
	--rcmdColor:rgba(222,93,50,.3);
	--pointColor:rgba(220,205,199,.2);
}


#pink{
	--baseColor: #e34169;
	--hoverColor:#ffb6cb;
	--nameColor: #f09cb7;
	--prfSubColor:rgba(240,156,183,.2);
	--interviewColor:rgba(255,230,227,.4);
	--interviewSubColor:rgba(255,230,227,.8);
	--photoColor:#f1997b;
	--photoSubColor:rgba(242,155,123,.4);
	--messageColor:#d8a7c5;
	--messageSubColor:rgba(245,226,237,.8);
	--messagebkColor:rgba(245,226,237,.4);
	--rcmdColor:rgba(227,65,105,.3);
	--pointColor:rgba(204,200,205,.2);
}




/* 右から */
.fadeRight {
  -webkit-animation-name: fadeRightAnime;
          animation-name: fadeRightAnime;
  -webkit-animation-duration: 0.5s;
          animation-duration: 0.5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

@-webkit-keyframes fadeRightAnime {
  from {
    opacity: 0;
    transform: translateX(100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fadeRightAnime {
  from {
    opacity: 0;
    transform: translateX(100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}


/* フェードイン */
.fadeIn {
  -webkit-animation-name: fadeInAnime;
          animation-name: fadeInAnime;
  -webkit-animation-duration: 1.5s;
          animation-duration: 1.5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

@-webkit-keyframes fadeInAnime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fadeInAnime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}


header {
    position: fixed;
    width: 100vw;
    transition:0.2s;
	z-index: 80;
}

header .wrapper {
    width: 88vw;
    height: 54px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 20px;
    transition: height 0.3s;
}
#index header .wrapper {
	max-width: 1400px;
	margin: auto ;
}

.sanaru_logo{
	transition:0.2s;
	margin: 5px 20px;
	max-width:200px;
}

.cross_logo{
	transition:0.2s;
	margin: 5px 20px;
	max-width:250px;
}
#index header .cross_logo{
	display:block;
}

@media screen and (max-width: 1100px) {
	header .wrapper {
		width: 96vw;
	}
}

@media screen and (max-width: 950px) {
	
	header .wrapper {
		padding: 0 20px;
	}
	.cross_logo{
		display: inline-block;
	}
	.sanaru_logo img,
	.cross_logo img{
		max-height:40px;
	}
}

@media screen and (max-width: 767px) {
	header{
		background:linear-gradient(to bottom,rgba(255,255,255,1) 80%,rgba(255,255,255,.9) 87%, rgba(255,255,255,0));
	}
	header .wrapper {
		width:100%;
	}
}
@media screen and (max-width: 520px) {
	header .wrapper {
		width: 100vw;
  		height: 55px;
		align-items:flex-start;
		padding: 0;
	}
	header {
		z-index: 30;
	}
	#index header{
  		height: 50px;
	}
	#index header .wrapper {
  		height: 50px;
	}
	.sanaru_logo img, .cross_logo img {
		max-height: 29px;
	}
}

/*----------------------------------------*/


.main_background-L,.main_background-R{
	background-size:7.5%;
	background-repeat: repeat-y;
}
.main_background-L{background-position:left;}
.main_background-R{background-position:right;}


#blue main{background:linear-gradient(to right,#c3e3eb,#fff 10%,#fff 90%,#c3e3eb);}
@media screen and (min-width: 581px) {
	#blue .main_background-L{background-image: url("../images/bk_blue_L.webp");}
	#blue .main_background-R{background-image: url("../images/bk_blue_R.webp");}
}
@media screen and (max-width: 580px) {
	#blue main{background:linear-gradient(to right,#c3e3eb,#fff 5%,#fff 95%,#c3e3eb);}
}

#green main{background:linear-gradient(to right,#d7ecdd,#fff 10%,#fff 90%,#d7ecdd);}
@media screen and (min-width: 581px) {
	#green .main_background-L{background-image: url("../images/bk_green_L.webp");}
	#green .main_background-R{background-image: url("../images/bk_green_R.webp");}
}
@media screen and (max-width: 580px) {
	#green main{background:linear-gradient(to right,#d7ecdd,#fff 5%,#fff 95%,#d7ecdd);}
}

#orange main{background:linear-gradient(to right,#fbdecf,#fff 10%,#fff 90%,#fbdecf);}
@media screen and (min-width: 581px) {
	#orange .main_background-L{background-image: url("../images/bk_orange_L.webp");}
	#orange .main_background-R{background-image: url("../images/bk_orange_R.webp");}
}
@media screen and (max-width: 580px) {
	#orange main{background:linear-gradient(to right,#fbdecf,#fff 5%,#fff 95%,#fbdecf);}
}

#pink main{background:linear-gradient(to right,#f5d9dd,#fff 10%,#fff 90%,#f5d9dd);}
@media screen and (min-width: 581px) {
	#pink .main_background-L{background-image: url("../images/bk_pink_L.webp");}
	#pink .main_background-R{background-image: url("../images/bk_pink_R.webp");}
}
@media screen and (max-width: 580px) {
	#pink main{background:linear-gradient(to right,#f5d9dd,#fff 5%,#fff 95%,#f5d9dd);}
}


@media screen and (max-width: 1100px) {
	.main_background-L{background-position:-4%;}
	.main_background-R{background-position:104%;}
}

@media screen and (max-width: 580px) {
	.main_background-L{background-position:-4%;}
	.main_background-R{background-position:104%;}
}


/*----------------------------------------*/

.head_box_out{
	position: relative;
	background-size: 100%;
	background-position: 0% 47%;
	background-repeat: no-repeat;
}

.head_box{
	position: relative;
	margin: auto;
	background-size: 100%;
	background-position: top;
	background-repeat: no-repeat;
}

.head_area_wrap{
	width:100%;
	margin:auto;
	position: relative;
}

@media screen and (max-width: 580px) {
	.head_background-L,.head_background-R{
		background-size:10%;
		background-repeat: repeat-y;
	}
	.head_background-L{background-position:left;}
	.head_background-R{background-position:right;}
	#blue .head_background-L{background-image: url("../images/bk_blue_L.webp");}
	#blue .head_background-R{background-image: url("../images/bk_blue_R.webp");}
	#green .head_background-L{background-image: url("../images/bk_green_L.webp");}
	#green .head_background-R{background-image: url("../images/bk_green_R.webp");}
	#orange .head_background-L{background-image: url("../images/bk_orange_L.webp");}
	#orange .head_background-R{background-image: url("../images/bk_orange_R.webp");}
	#pink .head_background-L{background-image: url("../images/bk_pink_L.webp");}
	#pink .head_background-R{background-image: url("../images/bk_pink_R.webp");}
}



.head_area,.name_area{
	max-width: 800px;
	margin: auto;
	display: flex;
	text-align: center;
}
.head_area{
	padding-top: 25px;
	border-bottom:3px solid var(--baseColor);
}

#ltr .head_area{
	flex-direction:row;
}

#rtl .head_area{
	flex-direction:row-reverse;
}

.name_area{
	position: absolute;
	width: 100%;
	max-width: 800px;
	bottom:30px;
	right: 0;
	left: 0;
	margin: 0 auto;
	z-index: 12;
}

#ltr .name_area{
	flex-direction:row;
}

#rtl .name_area{
	flex-direction:row-reverse;
}

.head_area .img_box{
	margin:50px auto 0;
	z-index: 10;
}

.name_area .name_box_line,
.name_area-sp .name_box_line{
	position: relative;
	margin:auto;
}
.name_area .name_box_line::before,
.name_area-sp .name_box_line::before{
	content: "";
	position: absolute;
	z-index: 10;
	width:calc(100% - 40px);
	height:100%;
	border-left:2px solid var(--nameColor);
	border-top:2px solid var(--nameColor);
	top:0;
	left:0;
}
.name_area .name_box_line::after,
.name_area-sp .name_box_line::after{
	content: "";
	position: absolute;
	width:100%;
	height:calc(100% - 40px);
	border-right:2px solid var(--nameColor);
	border-bottom:2px solid var(--nameColor);
	bottom:0;
	left:0;
}

.name_area .name_box,
.name_area-sp .name_box{
	position: relative;
	background-color: rgba(255,255,255,.85);
	padding:9px 33px 5px;
}
.name_area .name_box::before,
.name_area-sp .name_box::before{
	content: "";
	position: absolute;
	width:0;
	height:0;
	border-top:15px solid var(--nameColor);
	border-right:15px solid var(--nameColor);
	border-left:15px solid rgba(255,255,255,0);
	border-bottom:15px solid rgba(255,255,255,0);
	top:0;
	right:0;
}

.name_area .name_box p{
	margin-bottom: 5px;
}

.main_name{
	font-size: 18px;
	font-weight: 600;
}

.name_area-sp{
	display: none;
}

/*----------写真を大きくしました--------------*/
@media screen and (min-width: 1100px) {
	.head_area{
		max-width: 1000px;
		display: flex;
		flex-wrap: wrap;
	}
	.head_box_out .name_area{
		max-width: 800px;
	}
	.head_box_out.two .head_area .img_box{
		width:50%;
		display: flex;
		flex-wrap: wrap;
	}
	.head_box_out.two .head_area .img_box.teacher_plus{
		display: none;
	}
	.head_box_out .img_box img{
		margin: auto 0 0;
    	width: 100%;
		height:auto;
	}
}

@media screen and (max-width: 767px) {
	.name_area{
		display: none;
	}
	.name_area-sp{
		display: block;
		text-align: center;
		margin: auto;
		max-width: 300px;
		padding-top:20px; 
	}
	
	.name_area-sp .name_box{
		padding:8px 20px 8px;
	}
	
	.name_area-sp .name_box_line.student{
		margin-bottom: 15px;
	}
	
	.name_area-sp .name_box_line.teacher .name_box{
		display: flex;
		flex-wrap: wrap;
	}
	.name_area-sp .name_box_line.teacher .name_box p:first-child{
		width: 100%;
	}
}

@media screen and (max-width: 520px) {
	
	.head_box_out{
		background-size: 150%;
		background-position: 0% 35%;
	}
	.head_box{
		background-size: 150%;
		background-position: 100% 0%;
	}
	
	.name_area-sp .name_box{
		font-size:90%;
	}
	.name_area-sp .main_name {
		font-size: 16px;
	}
}

@media screen and (max-width: 374px) {
	.name_area-sp {
		max-width: 260px;
	}
}



/*===========2人の場合=============*/

@media screen and (max-width: 767px) {
	.name_area-sp .name_box_line.teacher .name_box p{
		width: 100%;
	}
}


/*===========3人の場合=============*/

.teacher_plus{
	display: none;
}

.head_box_out.three .teacher_plus{
	display: block;
}

.head_box_out.three .head_area {
	padding-top: 45px;
	justify-content: space-between;
}

.teacher_plus_index{
	display: none;
}

.head_box_out.three .head_area_wrap.img_area{
	overflow-x: hidden;
	overflow-y: visible;
}

.head_box_out.three .head_area .img_box{
	margin: 25px -40px 0;
}

.head_box_out.three .head_area .img_box.student_box{
	position: relative;
	z-index: 11;
}

@media screen and (max-width: 767px) {
	.head_box_out.three .name_area-sp .name_box_line.teacher .name_box p:nth-child(n+2){
		width: 50%;
	}
}

@media screen and (max-width: 520px) {
	.head_box_out.three .head_area .img_box{
		margin-top: 15px;
	}
	.head_box_out.three .head_area .img_box img{
		width:85%;
	}
}
@media screen and (min-width: 1100px){
	.head_box_out.three .head_area,
	.head_box_out.three .name_area{
		max-width: 1200px;
	}
	.head_box_out.three .head_area .img_box {
    	margin: 25px 0 0;
	}
	.head_box_out.three .head_area_wrap.img_area {
    	overflow-x: none;
	}
	.head_box_out.three .head_area .img_box{
		width:36%;
		display: flex;
		margin: 25px -20px 0;
	}
}

/*===========大学名・合格コメント=============*/

.unv_neme_area{
	position: relative;
	text-align: center;
	padding:45px 0 55px;
}

.unv_neme_area .unv_neme{
	font-size: 64px;
	font-weight:600;
	color:var(--baseColor);
}

.unv_neme_area .unv_dep_neme{
	font-size: 40px;
	font-weight:600;
	color:var(--baseColor);
}

.unv_neme_area .unv_comment{
	margin: 45px auto 0;
	font-size: 22px;
	font-weight: 600;
	letter-spacing: 0.02em;
}

@media screen and (max-width: 767px) {
	.unv_neme_area {
    	padding-top: 40px;
	}
}

@media screen and (max-width: 520px) {
	
	.unv_neme_area {
		padding: 20px 0;
	}

	.unv_neme_area .unv_neme {
    	font-size: 52px;
	}
	.unv_neme_area .unv_dep_neme {
		padding:5px 15px 0;
    	font-size: 30px;
	}
	.unv_neme_area .unv_comment {
		margin: 30px auto 0;
    	font-size: 17px;
		line-height: 1.2em;
	}
}

/*===========PROFILE=============*/

.profile_area_inner{
	margin: auto;
	padding:0 10vw;
	position: relative;
}

.profile_area{
	text-align: center;
	position: relative;
	margin:50px auto 0;
}

.profile_h2{
	position:relative;
	margin: 20px auto 0;
    display: flex;
    flex-wrap: wrap;
    z-index: 5;
}

.profile_h2 h2{
	position: relative;
    margin: auto;
    text-align: center;
    padding: 10px 20px;
    font-weight: 600;
    font-size: 38px;
    color: #403937;
    letter-spacing: 0.08em;
    border-color: var(--prfSubColor);
    border-style: solid;
    border-width: 4px 4px 4px 0;
}

.profile_h2 h2::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -14px;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 36px solid rgba(255, 255, 255, 0);
    border-bottom: 36px solid rgba(255, 255, 255, 0);
    border-left: 68px solid var(--prfSubColor);
    border-right: 0;
    z-index: -1;
}

.profile_top{
	display: flex;
	justify-content: flex-end;
	width:calc(50% - 30px);
}

.profile_area .profile_photo_box{
	display: flex;
	margin: auto;
	max-width: 760px;
	padding-top: 30px;
	gap:0 30px;
}

.profile_photo{
	max-width:70px;
	margin:auto 10px;
}

.prof_name{
	text-align: left;
	margin: auto 10px auto 5px;
}

.prof_name p{
	padding-top: 3px;
}

.text_wrap{
	display: flex;
	text-align: left;
	margin: auto auto auto 5px;
	gap:0 10px;
}

.text_wrap p{
	line-height: 1.8em;
}

.text_wrap p.topic{
	font-weight:600;
	text-align: right;
}

.prof_text_plus{
	max-width:1100px;
	margin:50px auto 0;
	display: flex;
	flex-wrap: wrap;
}

.prof_text_plus p.topic{
	font-weight:600;
	font-size: 17px;
	color:var(--baseColor);
	padding-bottom: 5px;
}

.prof_text_plus .prof_text_plus-contents{
	width:50%;
	text-align:left;
	margin:0 0 auto;
}

.prof_text_plus-contents div{
	padding-bottom: 40px;
}


.prof_text_plus div p{
	display: block;
	width:100%;
	word-wrap: break-word;
	padding: 5px 15px 0 10px;
}

.prof_text_plus div p.high,
.prof_text_plus div p.low{
	padding:10px 0 5px 30px; 
	position: relative;
}

.prof_text_plus div p.high span,
.prof_text_plus div p.low span{
	font-weight:600;
}

.prof_text_plus div p.high::before{
	content:"";
	position: absolute;
	left:8px;
	top:7px;
}

.prof_text_plus div p.low::before{
	content:"";
	position: absolute;
	left:8px;
	top:7px;
}

#blue .prof_text_plus div p.high::before{
	content:url("../images/high_blue.png");
}
#blue .prof_text_plus div p.low::before{
	content:url("../images/low_blue.png");
}

#green .prof_text_plus div p.high::before{
	content:url("../images/high_green.png");
}
#green .prof_text_plus div p.low::before{
	content:url("../images/low_green.png");
}

#orange .prof_text_plus div p.high::before{
	content:url("../images/high_orange.png");
}
#orange .prof_text_plus div p.low::before{
	content:url("../images/low_orange.png");
}

#pink .prof_text_plus div p.high::before{
	content:url("../images/high_pink.png");
}
#pink .prof_text_plus div p.low::before{
	content:url("../images/low_pink.png");
}



.clear{
	clear:left;
	margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
	.profile_h2 {
   		margin: 0 auto;
	}
	.profile_top,.text_wrap{
		width:100%;
		padding:0 15px 15px;
		max-width: 460px;
		margin: auto;
	}
	.profile_photo,
	.prof_name{
	    margin: auto;
	}
	.text_wrap p{
    	margin:20px auto 0;
		padding:10px 0 ;
	}
	.text_wrap p.topic {
		margin-left: auto;
		text-align: left;
	}
	.text_wrap p.content{
    	margin-left: 25px;
	}
	.profile_area .profile_photo_box {
    	display:block;
	}
	.prof_text_plus{
		margin: 50px auto 0;
	}
	.prof_text_plus .prof_text_plus-contents {
		display: contents;
	}
	.prof_text_plus-contents div{
		width:100%;
	}
	
	.prof_text_plus-contents div:nth-child(1){order:1}
	.prof_text_plus-contents div:nth-child(2){order:3}
	.prof_text_plus-contents div:nth-child(3){order:5}
	.prof_text_plus-contents div:nth-child(4){order:2}
	.prof_text_plus-contents div:nth-child(5){order:4}
	
}

@media screen and (max-width: 580px){
	.prof_text_plus p.topic{
		position: relative;
		padding-left: 1.2em;
		padding-bottom:0;
		letter-spacing:0;
	}
	.prof_text_plus p.topic::before{
		position: absolute;
		top:5px;
		left:0;
		content: "▶";
	}
}
@media screen and (max-width: 520px){
	.profile_h2 h2 {
		margin-top: 0;
		font-size:6.5vw;
		padding:1.5vw 4vw;
	}
	.profile_h2 h2::before{
		left:-3vw;
		border-top-width:6vw;
		border-bottom-width:6vw;
		border-left-width:12vw;
	}
	.profile_area {
		margin-top: 12vw;
	}
	.profile_area_inner{
		padding: 0 10px;
	}
	.profile_area .profile_photo_box{
		padding-top:20px;
	}
	.prof_text_plus {
    	margin: 30px auto 0;
    	padding: 0 20px;
	}
	.prof_text_plus-contents div {
    	padding-bottom: 25px;
		width: 100%;
	}
	.prof_text_plus div p {
    	padding: 5px 0 0 10px;
		letter-spacing:0.08em;
		line-height:1.3em;
	}
}
@media screen and (max-width: 380px){
	.text_wrap {
		font-size: 14px;
		letter-spacing: -0.04em;
	}
	.text_wrap p.content {
		margin:20px auto 0;
	}

}

/*=============INTERVIEW=============*/

.interview_wrapper{
	position: relative;
}

.interview{
	position: relative;
	margin:40px auto 80px;
	padding:30px 10vw 80px;
}

.interview_h2{
	position: relative;
    margin: 30px auto 0;
    display: flex;
    flex-wrap: wrap;
    z-index: 5;
}

.interview_h2 h2{
	position: relative;
    margin: auto;
    text-align: center;
    padding: 10px 20px;
    font-weight: 600;
    font-size: 38px;
    color: #403937;
    letter-spacing: 0.08em;
    border-color: var(--interviewSubColor);
    border-style: solid;
    border-width: 4px 4px 4px 0;
}

.interview_h2 h2::before {
	content: "";
	position: absolute;
	top: 50%;
	left: -14px;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 36px solid rgba(255, 255, 255, 0);
	border-bottom: 36px solid rgba(255, 255, 255, 0);
	border-left: 68px solid var(--interviewSubColor);
	border-right: 0;
	z-index: -1;
}

.interview_inner{
	margin: auto;
	max-width:1100px;
	padding:50px 0 0;
	position: relative;
}

.interview_box{
	padding-bottom:25px;
}

.interview_box p{
	line-height: 1.4em;
	padding:0 5px 8px;
}

.interview_box p.teacher{
	display: inline-block;
	background: var(--interviewColor);
	padding:6px 5px 6px;
	margin:5px 0 8px;
}

.interview_box p span.student{
	font-weight:600;
	color:var(--baseColor);
}

@media screen and (max-width: 767px){
	.interview{
		margin:60px auto 0;
		padding-bottom:80px;
	}
}

@media screen and (max-width: 580px){
	.interview_inner {
		padding: 25px 8% 0;
	}
}

@media screen and (max-width: 520px){
	.interview {
		margin: 30px auto 0;
	    padding: 30px 0 50px;
	}
	.interview h2 {
		margin-top: 0;
		font-size:6.5vw;
		padding:1.5vw 4vw;
	}
	.interview h2::before{
		left:-3vw;
		border-top-width:6vw;
		border-bottom-width:6vw;
		border-left-width:12vw;
	}
	.interview_box p {
		padding: 0 10px 8px 0;
	}
	.interview_box p.teacher {
		padding: 6px 8px 8px 5px;
		margin:5px 5px 8px -2px;
	}
}

/*--------フォトギャラリー----------*/

.poto_gallary_inner{
	margin: auto;
	padding:20px 50px 0;
	position: relative;
	max-width:1100px;
	display: flex;
	flex-wrap: wrap;
}

.poto_gallary_h2{
	position:relative;
	margin: 20px auto 0;
	display: flex;
	flex-wrap: wrap;
	z-index: 5;
}

.poto_gallary_h2 h2{
	position:relative;
	margin: auto;
    text-align: center;
	padding:10px 20px;
    font-weight: 600;
    font-size: 38px;
    color:#403937;
	letter-spacing:0.08em;
	border-color: var(--photoSubColor);
	border-style:solid;
	border-width: 4px 4px 4px 0;
}
.poto_gallary_h2 h2::before{
	content: "";
	position: absolute;
	top:50%;
	left:-14px;
	transform:translateY(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-top:36px solid rgba(255,255,255,0);
	border-bottom:36px solid rgba(255,255,255,0);
	border-left:68px solid var(--photoSubColor);
	border-right: 0;
	z-index:-1;
}

.poto_gallary_inner .photo_box{
	width:45%;
	margin:50px auto;
}
/*---写真が3枚だったとき---*/
.poto_gallary_inner .photo_box.center{
	margin:0 auto;
}

.photo_box div{
	text-align: center;
}

.photo_box img{
	width: 100%;
	height:auto;
}

.poto_gallary_inner .photo_box p{
	position:relative;
	margin-top: 32px;
	line-height: 1.45em;
	font-weight: 550;
	padding-left:38px;
}

.poto_gallary_inner .photo_box p::before{
	content:"";
	position:absolute;
	top:50%;
	left:0;
	transform: translateY(-50%);
	width:0;
	height:0;
	border-style: solid;
	border-right:13px solid transparent;
	border-left:13px solid transparent;
	border-bottom: 22px solid var(--photoColor);
	border-top:0;
}

@media screen and (max-width: 767px){
	.poto_gallary_inner {
		padding: 0 50px;
	}

	.poto_gallary_inner .poto_gallary{
		display: block;
		padding-top:0;
	}
	.poto_gallary_inner .photo_box,
	.poto_gallary_inner .photo_box.center{
		width:86%;
		max-width: 380px;
		margin: 50px auto 0;
		padding-bottom:30px;
	}	
}

@media screen and (max-width: 520px){
	.poto_gallary_h2 h2 {
		margin-top: 0;
		font-size:6.5vw;
		padding:1.5vw 4vw;
	}
	.poto_gallary_h2 h2::before{
		left:-3vw;
		border-top-width:6vw;
		border-bottom-width:6vw;
		border-left-width:12vw;
	}
	.poto_gallary_inner{
		padding: 0 20px;
	}

	.poto_gallary_inner .photo_box,
	.poto_gallary_inner .photo_box.center{
		width:92%;
		margin: 30px auto 0;
		padding-bottom: 10px;
	}
	.poto_gallary_inner .photo_box p {
		margin-top: 21px;
	}
}


/*===========MESSAGE=============*/

.message_wrap{
	margin:180px auto 60px;
}

.message_h2{
	position: relative;
    margin: 30px auto 30px;
    display: flex;
    flex-wrap: wrap;
    z-index: 5;
}

.message_h2 h2{
	position: relative;
    margin: auto;
    text-align: center;
    padding: 10px 20px;
    font-weight: 600;
    font-size: 38px;
    color: #403937;
    letter-spacing: 0.08em;
    border-color: var(--messageSubColor);
    border-style: solid;
    border-width: 4px 4px 4px 0;
}

.message_h2 h2::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -14px;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 36px solid rgba(255, 255, 255, 0);
    border-bottom: 36px solid rgba(255, 255, 255, 0);
    border-left: 68px solid var(--messageSubColor);
    border-right: 0;
    z-index: -1;
}

.message{
	display: flex;
	max-width: 1100px;
	margin: auto;
}

.message_box{
	width:44%;
	padding:10px 30px 25px;
	margin:0 auto;
	position: relative;
	background-color:rgba(255,255,255,.9);
}


.message svg{
	width:7%;
	margin: auto;
	fill:var(--messageColor);
	stroke-width:0;
}

.message_photo_box{
	display: flex;
}

.message_box img{
	width:60px;
}

.message_photo_box p{
	margin: auto;
	text-align: left;
	font-size: 15px;
	font-weight:600;
	line-height: 1.3em;
	margin-left:15px;
	width: 100%;
	padding-bottom: 2px;
}

.message_box p.msg{
	padding-top:14px;
	line-height: 1.3em;
	letter-spacing: 0.04em;
}

.message_junior_area{
	position: relative;
	background: var(--messagebkColor);
}

.message_junior_box{
	padding:0 10vw;
}

.message_junior{
	display: flex;
	position: relative;
	max-width: 860px;
	margin:60px auto 90px;
	padding:80px 30px;
	z-index: 5;
}

.message_junior img{
	max-width:70px;
	margin:0 auto auto;
}
.message_junior img.pc{
}
.message_junior img.sp{
	display: none;
}

.message_junior_text{
	margin: auto;
	padding-left:30px;
	width:calc(100% - 70px);
}

.message_junior_text p.message_line{
	border-bottom: 1px solid #333;
	font-weight: 600;
	line-height: 1.4em;
	display: inline-block;
}
.message_junior_text p.message_line_title{
	font-weight: 600;
	margin-top:15px;
	font-size:20px;
	letter-spacing: 0.04em;
	color:var(--baseColor);
}
.message_junior_text p.message_line_text{
	margin-top:5px;
	line-height: 1.3em;
	letter-spacing: 0.04em;
}


@media screen and (max-width: 767px){
	.message_wrap {
		position: relative;
    	margin:0 auto 60px;
		padding-top:60px;
	}
	
	.message{
		display:block;
	}
	.message_box {
		width: 100%;
		max-width: 580px;
	}
	.message_photo_box p{
		line-height: 1.3em;
	}
	.message svg{
		display: block;
		max-width: 60px;
		width: 15%;
		transform: rotate(90deg);
		margin: 15px auto;
	}

	.message_junior{
		padding:30px 0 60px;
	}

	.message_junior img.pc{
		display: none;
	}
	.message_junior img.sp{
		display: inline;
		margin:auto 12px;
	}
	
	.message_junior_text{
		padding:0 40px;
		width:100%;
	}
	
	.message_junior_text p.message_line{
		border-bottom: 0px solid ;
		display: flex;
		vertical-align: bottom;
	}
	.message_junior_text p.message_line span{
		display: inline-block;
		margin: auto 0 0 10px;
		text-align: left;
		border-bottom: 1px solid #333;
		word-wrap: break-word;
	}
	.message_junior_text p.message_line_text {
    	margin-top:5px;
	}
}

@media screen and (max-width: 580px){
	.message_box {
		padding: 10px 8% 20px;
		background-color: rgba(255,255,255,0);
	}
	.message_junior_box{
		padding:0 2vw;
	}
	.message_junior_text p.message_line_text {
    	font-size:15px;
		letter-spacing: 0.08em;
		line-height: 1.35em;
	}
	.message_junior_text p.message_line_title{
		font-size:17px;
	}
}

@media screen and (max-width: 520px){
	.message_h2 h2 {
		margin-top: 0;
		font-size:6.5vw;
		padding:1.5vw 4vw;
	}
	.message_h2 h2::before{
		left:-3vw;
		border-top-width:6vw;
		border-bottom-width:6vw;
		border-left-width:12vw;
	}
	.message svg {
		margin: 0 auto;
		width:13%;
	}
	.message_box.teacher {
		margin-top: 30px;
	}
	.message_junior {
    	margin: 35px auto;
	}
	.message_junior img.sp {
		margin: auto;
	}
	.message_junior_text {
  		padding: 0 5px;
		width:calc(100% - 40px);
	}
	
}

@media screen and (max-width: 430px){
	.message_box img {
    	width: 80px;
	}
	.message_photo_box{
		display:block;
		text-align: center;
	}
	.message_photo_box img{
		margin-bottom: 15px;
	}
	.message_photo_box p{
		margin-left:0;
		text-align: center;
	}
	.message_box p.msg {
	    padding-bottom: 20px;
		font-size:15px;
	}
}

/*===========MESSAGE3人の場合=============*/

.message_wrap.three .teacher_plus{
	display: inline;
}

.message_wrap.three .teacher_delete{
	display: none;
}
@media screen and (max-width: 767px){
	.message_wrap.three .no_tb{
		display: none;
	}
}

/*===========RECOMENDED=============*/


.recomended{
	margin:120px auto 0;
	padding: 0 10vw 30px;
}

.recomended_h2{
    position: relative;
    margin: 30px auto 30px;
    display: flex;
    flex-wrap: wrap;
    z-index: 5;
}

.recomended_h2 h2{
	position: relative;
    margin: auto;
    text-align: center;
    padding: 10px 20px;
    font-weight: 600;
    font-size: 38px;
    color: #403937;
    letter-spacing: 0.08em;
    border-color: var(--rcmdColor);
    border-style: solid;
    border-width: 4px 4px 4px 0;
}

.recomended_h2 h2::before{
    content: "";
    position: absolute;
    top: 50%;
    left: -14px;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 36px solid rgba(255, 255, 255, 0);
    border-bottom: 36px solid rgba(255, 255, 255, 0);
    border-left: 68px solid var(--rcmdColor);
    border-right: 0;
    z-index: -1;
}

.recomended_box{
	display: flex;
	flex-direction:row-reverse;
	position: relative;
	margin: auto;
	max-width:860px;
	padding:30px 0;
}

.recomended_text{
	padding-right:15px;
	width:calc(100% - 130px);
}

.recomended_text .subject{
	font-weight:600;
	font-size: 18px;
	margin-bottom: 15px;
}

.subject .subject_title::after{
	content: "／";
}

.recomended_text .main {
	line-height: 1.25em;
}

.recomended_box img{
	min-width:130px;
}


@media screen and (max-width: 767px){
	.recomended {
    	padding: 0 25px;
	}
	.recomended_box{
		display: block;
		flex-direction:row;
		padding:30px;
	}
	.teacher_img{
		margin:0 auto 30px;
		text-align: center;
		width:130px;
	}
	.recomended_text{
		padding-right:0;
		width:100%;
	}
}

@media screen and (max-width: 580px){
	.recomended_box{
		padding:30px 8%;
	}
	.recomended_text .main{
		line-height: 1.35em;
    	letter-spacing: 0.04em;
	}
}

@media screen and (max-width: 520px){
	.recomended {
		margin:80px auto;
    	padding: 0;
	}
	.recomended_h2 h2 {
		margin-top: 0;
		font-size:6.5vw;
		padding:1.5vw 4vw;
	}
	.recomended_h2 h2::before{
		left:-3vw;
		border-top-width:6vw;
		border-bottom-width:6vw;
		border-left-width:12vw;
	}
	
	.recomended_text .subject {
		font-size: 16px;
	}
	.subject .subject_title{
		display:block;
		text-align: center;
	}
	.subject .subject_title::after{
		content: "";
	}
	.subject .subject_teacer{
		display:block;
		text-align: center;
	}
}
@media screen and (max-width: 430px){
	.recomended_text .main{
		font-size:15px;
	}
}


/*===========schedule=============*/


#schedule{
	
}
@media screen and (max-width: 1250px) {
	#schedule{
		background-color:rgba(255,255,255,.85);
	}
}

.schedule_area{
	padding: 40px 10px 60px;
	margin: 40px auto 60px;	
	max-width: 1100px;
}

.schedule_h2{
	position: relative;
    margin: 30px auto 30px;
    display: flex;
    flex-wrap: wrap;
    z-index: 5;
}

.schedule_h2 h2{
	position: relative;
    margin: auto;
    text-align: center;
    padding: 10px 20px;
    font-weight: 600;
    font-size: 38px;
    color: #403937;
    letter-spacing: 0.08em;
    border-color: var(--prfSubColor);
    border-style: solid;
    border-width: 4px 4px 4px 0;
}

.schedule_h2 h2::before{
	content: "";
    position: absolute;
    top: 50%;
    left: -14px;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 36px solid rgba(255, 255, 255, 0);
    border-bottom: 36px solid rgba(255, 255, 255, 0);
    border-left: 68px solid var(--prfSubColor);
    border-right: 0;
    z-index: -1;
}


#schedule h3{
	text-align: center;
	margin-bottom:20px;
}

#schedule .img_area{
	margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  #schedule{
    margin: 60px 0 40px;
  }
	
	#schedule .img_area {
	  margin-bottom: 70px;
    overflow-x:hidden;
  }
  #schedule .img_area img {
    width: 200%;
    max-width: inherit;
  }
}
@media screen and (min-width: 768px) {
  #schedule .scroll-hint-icon-wrap {
    display: none;
  }
}

#schedule figcaption{
	position: relative;
	margin: auto;
	background-color:var(--pointColor);
	width:60vw;
	padding:30px;
}

@media screen and (max-width: 767px){
	#schedule figcaption{
		width:80vw;
	}
	/*#schedule figcaption::before{
		border-width: 0 40vw 50px 40vw;
	}*/
}

@media screen and (max-width: 580px) {
	#schedule {
		background-color:rgba(255,255,255,0);
	}
	.schedule_area {
		padding:0 0 20px;
	}
	.schedule_h2{
		margin:0 auto;
	}
	#schedule .img_area {
		margin-top: 20px;
		padding:0 8% 20px;
		background-color:rgba(255,255,255,.7);
	}
}

@media screen and (max-width: 520px){
	#schedule{
	  margin: 0 auto;
	}
	.schedule_h2 h2 {
		margin-top: 0;
		font-size:6.5vw;
		padding:1.5vw 4vw;
	}
	.schedule_h2 h2::before{
		left:-3vw;
		border-top-width:6vw;
		border-bottom-width:6vw;
		border-left-width:12vw;
	}
	#schedule .img_area {
	    margin-bottom: 0;
	}
	#schedule figcaption {
    	width:100%;
		padding: 25px;
	}
	.schedule_text{
		font-size:15px;
		letter-spacing: 0.04em;
		line-height: 1.5em;
	}
}


/*===========担当カウンセラー紹介=============*/

.teacher_intro.two{
	display: none;
}

.teacher_intro{
	display: flex;
	max-width: 840px;
	margin:80px auto;
	padding:0 50px;
}
.teacher_intro.bottom{
	margin:80px auto 0;
	padding:0 50px 80px;
}
.teacher_intro_box{
	display: flex;
}

.teacher_intro img{
	max-width:80px;
	margin: auto;
}

.teacher_intro .teacher_name{
	padding:0 20px;
	font-weight:600;
}
.teacher_name{
	min-width:220px;
}

.teacher_intro p{
	margin: auto;
}

@media screen and (max-width: 767px){
	.teacher_intro{
		margin-top: 90px;
		display: block;
		padding:0 30px;
	}
	.teacher_intro.bottom{
		padding:0 30px 40px;
	}
	.teacher_intro img{
    	margin-right:10px; 
	}
	.teacher_intro .teacher_name {
    	margin-left:10px;
		word-wrap: break-word;
	}
	.teacher_intro .teacher_comment{
		margin-top: 15px;
		padding:0 20px;
		font-size:15px;
	}
}

@media screen and (max-width: 520px){
	.teacher_intro .teacher_comment{
		padding:0;
	}
	.teacher_intro{
		margin:60px 0;
	}
	.teacher_intro.bottom{
		margin: 60px auto 0;
		padding: 0 30px 50px
	}
	.teacher_intro .teacher_name {
		margin-left:5px;
		padding: 0 5px;
		min-width: 0px;
	}
}

/*===========footer=============*/

footer .wrapper{
	background: var(--baseColor);
	padding:50px 0 40px;
	margin: auto;
}

footer .wrapper .ft_logo{
  display: block;
  width:80%;
  max-width:540px;
  margin:0 auto 35px;
}

footer .wrapper ul{
  margin:20px auto 0;
	text-align: center;
}

footer .wrapper ul div{
  display: inline-block;
}

footer .wrapper ul li{
  display: inline-block;
  color:#fff;
  font-size: 17px;
  letter-spacing: -0.01em;
}
footer .wrapper ul li a{
	text-decoration: none;
}
footer .wrapper ul li::before{
  content: "｜";
  padding: 0 10px;
}
footer .wrapper ul li:first-child:before{
  content: "";
  padding: 0;
}

footer .wrapper ul li a{
	color:#fff;
	transition: .2s;
}
footer .wrapper ul li a:hover{
	color:var(--hoverColor);
	transition: .2s;
}

@media screen and (max-width: 767px) {
	footer .wrapper ul div{
  		display: block;
		padding-bottom: 7px;
	}

footer .wrapper ul li.second::before{
  content: "";
  padding: 0;
}

.foot_contents .left,.foot_contents .right{
	width: 90%;
    margin: 0 auto 10px;
}  
}

@media screen and (max-width: 520px) {
	footer .wrapper{
		padding:40px 0 30px;
	}
	footer .wrapper .ft_logo{
		width:85%;
		margin: 0 auto 20px;
	}
	footer .wrapper ul div {
		padding-bottom: 3px;
	}
	footer .wrapper ul li {
		font-size:14px;
	}
	footer .wrapper ul li::before{
		content: "｜";
		padding: 0 2px;
	}
}

@media screen and (max-width: 374px) {

  footer .wrapper ul li::before{
    content: "｜";
    padding: 0 3px;
  }
   }



footer small {
    text-align: center;
    display: block;
    width: 100%;
    background-color: #e4e4e4;
    font-size: 1.2rem;
	padding:10px;
    color: #000000;
}


#page_top {
    position: fixed;
    bottom: 45px;
    right: 5px;
    z-index: 100;
    width: 40px;
    height: 110px;
    background: url("../images/pagetop.webp") no-repeat top center;
    background-size: 30px auto;
}

@media screen and (max-width: 580px) {
	#page_top {
		bottom: 10px;
		width: 20px;
		height: 72px;
		background-size: 20px auto;
	}
}





/*================================================
TOPページ用　CSS　2025仕様
================================================*/

.index_blue {
  	--baseColor: #316fab;
	--backColor: #daeef2;
	--hoverColor: #a6dbf2;
}

.index_pink {
  --baseColor: #e34169;
	--backColor: #f4e3ef;
	--hoverColor: #ffb6cb;
}

.index_green {
  --baseColor: #008571;
	--backColor: #deeedc;
	--hoverColor: #a6dbaa;
}

.index_orange {
	--baseColor: #de5d32;
	--backColor: #fde8c8;
	--hoverColor: #f7ce6b;
}

/*---------------------------

---------------------------*/

.child_blue {
	--chilCl: #daeef2;	
}

.child_pink {
	--chilCl:#f4e3ef;
}

.child_orange {
	--chilCl:#fde8c8;
}

.child_green {
	--chilCl:#deeedc;
}




html {
  overflow-x: hidden;
}

body#index {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
body#index main{width:100%;margin:0 auto auto;}
body#index footer{width:100%;margin:0;}

body#index header{background-color:#fff;}

.header_after{
	height:70px;
}
@media screen and (max-width: 520px) {
	body#index {
		font-family:sans-serif;
	}
	.header_after{
		height:50px;
	}	
}

@-webkit-keyframes in {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}

@keyframes in {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}
.panel_box {
  width: 25%;
  float: left;
  transition-duration: 0.5s;
  -webkit-animation: mv_fade 0.6s 1 both;
          animation: mv_fade 0.6s 1 both;
  background-size: 100% auto;
}
@media screen and (max-width: 1100px) {
  .panel_box {
    width: calc(100% / 3);
  }
}
@media screen and (max-width: 580px) {
  .panel_box {
    width: 50%;
  }
}

@-webkit-keyframes mv_fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes mv_fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.panel_box.no2 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}

.panel_box.no3 {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}

.panel_box.no4 {
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s;
}

.panel_box.no5 {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s;
}

.panel_box.no6 {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}

.panel_box.no7 {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}

.panel_box.no8 {
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}

@media screen and (max-width: 1100px) {
  .panel_box.no4, .panel_box.no8 {
    display: none;
  }
}
@media screen and (max-width: 580px) {
  .panel_box.no3, .panel_box.no7 {
    display: none;
  }
}

#site_explain {
	width: 100%;
	max-width: 1600px;
	margin: 60px auto;
	padding:0 20px;
	position: relative;
	text-align: center;
	line-height: 1.5;
}

#annotation {
  text-align: right;
}
@media screen and (max-width: 767px) {
  #annotation {
    font-size: 1.2rem;
  }
}

.index_logo {
  margin: 30px auto;
	max-width:650px;
}
@media screen and (max-width: 767px) {
  .index_logo {
    width: 80%;
  }
}

.explain_text {
  margin-bottom: 30px;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .explain_text {
    padding: 0 10px;
    font-size: 0.9em;
	  line-height: 1.7em;
  }
}

#interview_list {
  width: 100%;
  max-width: 1100px;
  margin: 100px auto;
}
@media screen and (max-width: 767px) {
  #interview_list {
    margin: 50px auto;
  }
}

.interview_title {
  font-size: 3.5rem;
	text-align: center;
  height: 50px;
	font-weight: 600;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .interview_title {
    font-size: 2.5rem;
    background-position: bottom 18px left 0;
    margin-bottom: 0;
  }
}

#interview_list a {
  text-decoration: none;
}

#interview_list p {
  color: #333333;
}

#loadfooterjs {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  justify-content: center;
  justify-items: center;
  grid-gap: 15px;
	padding:15px;
}
@media screen and (max-width: 1200px) {
  #loadfooterjs {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
@media screen and (max-width: 767px) {
  #loadfooterjs {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media screen and (max-width: 425px) {
  #loadfooterjs {
    grid-template-columns: 1fr 1fr;
  }
}

.child {
  margin-bottom: 20px;
  max-width: 190px;
}
@media screen and (max-width: 425px) {
  .child {
    max-width: 150px;
  }
}

.child a:hover .index_arrow::before {
  right: -25px;
}

.child_bg {
  position: relative;
}

.child_bg img{
  z-index: 2;
  position: relative;
}

.child_bg::before{
	content:"";
	position: absolute;
	top:0;
	right:0;
	width:100%;
	height:auto;
	aspect-ratio: 3 / 2;
	background: none;
	transition: .3s;
}

.child_blue .child_bg::before{
	background-image: url("../images/index_child-bk/blue.webp");
	background-size: cover;
}
.child_pink .child_bg::before{
	background-image: url("../images/index_child-bk/pink.webp");
	background-size: cover;
}
.child_orange .child_bg::before{
	background-image: url("../images/index_child-bk/orange.webp");
	background-size: cover;
}
.child_green .child_bg::before{
	background-image: url("../images/index_child-bk/green.webp");
	background-size: cover;
}

.child_bg::after{
	content:"";
	position: absolute;
	aspect-ratio: 3 / 2;
	top:0;
	left:0;
	width:100%;
	height:auto;
	transition: .3s;
	z-index: 1;
}

.child a:hover .child_bg::after{
	background: var(--chilCl);
}
.child_blue:hover .child_bg::before,
.child_pink:hover .child_bg::before,
.child_orange:hover .child_bg::before,
.child_green:hover .child_bg::before{
	opacity: 0;
}

.child_bg p {
  z-index: 1;
  position: relative;
  line-height: 1.3;
  padding: 10px 0;
}


.college_box{
	position: relative;
}

.college {
  font-size: 1.6rem;
}

.gakubu {
  font-size: 1.3rem;
}

.index_name_box {
  font-size: 1.3rem;
  line-height: 1.5;
  border-bottom: 1px solid #000;
  padding: 5px 0;
}

.index_name {
  font-size: 1.5rem;
}

.hischool::before {
  content: "\a";
  white-space: pre;
}

.comment {
  font-size: 1.3rem;
  margin: 1em 0;
  line-height: 1.2;
}

.index_arrow {
  position: relative;
  float: right;
  transform: translateX(-23px);
}

.index_arrow::before {
  content: "";
  width: 20px;
  height: 50%;
  position: absolute;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: skew(45deg);
  right: -20px;
  bottom: 25%;
  transition: all 0.2s;
}


.footer_logoarea {
  display: flex;
  align-items: center;
  justify-content: space-between;
  float: left;
  width: 40%;
}
@media screen and (max-width: 767px) {
  .footer_logoarea {
    flex-direction: column;
    gap: 30px;
  }
}

.footer_crosslogo {
	width: 80%;
	max-width: 450px;
	text-align: center;
	margin:0 auto 20px;
}

.entry_btn{
	margin: auto;
	text-align: center;
	padding:15px;
}

.entry_link {
	margin: auto;
  position: relative;
  font-size: 1.8rem;
  background: var(--backColor);
  border-radius: 30px;
  color: #333333;
  text-decoration: none;
  display: inline-block;
  padding: 16px 6rem;
  transition: 0.2s;
}
@media screen and (max-width: 767px) {
  .entry_link {
    font-size: 1.4rem;
	  padding: 16px 6rem 16px 4.5rem;
  }
}

.entry_link::after {
  content: "";
  width: 25px;
  height: 20%;
  position: absolute;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: skew(45deg);
  right: 30px;
  bottom: 40%;
  transition: all 0.2s;
}

.entry_btn:hover .entry_link::after {
  right: 20px;
}




.tb_none{display: inline;}

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