@charset "UTF-8";

html{
font-size: 100%;
}

@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
	
html{
font-size: 87.5%;
}
	
		
}


body {
	margin:0px;
	padding:0px;
	color:#000;
	font-family:"Noto Sans JP", Helvetica, Arial, メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
	-webkit-text-size-adjust: 100%;
	line-height:1.8;
	text-align:left;
	background:#add380;
}

img {
  vertical-align: top;
}

.padding_top5 {padding-top:5px !important;}

.mt05 { margin-top:5px !important;}
.mt10 { margin-top:10px !important;}
.mt15 { margin-top:15px !important;}
.mt20 { margin-top:20px !important;}
.mt30 { margin-top:30px !important;}
.mt40 { margin-top:40px !important;}
.mt50 { margin-top:50px !important;}
.mt80 { margin-top:80px !important;}



:root {
	/*color*/
  --main-green:#008D48;
	/*--st-green:#177d4b;*/
	--st-green:#008D48;
	--pick-green:#096b3b;
	--main-orange:#F39800;
	--main-pink:#E3637B;
	--main-red:#e60012;
	--main-white:#ffffff;
	
	/*font 16px*/
	/*--font-10:0.625rem;
	--font-11:0.688rem;
	--font-12:0.75rem;
	--font-13:0.813rem;
	--font-14:0.875rem;
	--font-16:1rem;;
	--font-18:1.125rem%;
	--font-20:1.25rem;
	--font-22:1.375rem;
	--font-24:1.5rem;
	--font-26:1.625rem;
	--font-28:1.75rem;
	--font-30:1.875rem;
	--font-32:2rem;
	--font-34:2.125rem;
	--font-36:2.25rem;
	--font-38:2.375rem;
	--font-40:2.5rem;*/
	
	/*font 14px（SP基準での制作）*/	
	--font-08:0.571rem;
	--font-10:0.714rem;
	--font-11:0.786rem;
	--font-12:0.857rem;
	--font-13:0.929rem;
	--font-14:1rem;
	--font-15:1.071rem;
	--font-16:1.143rem;
	--font-17:1.214rem;
	--font-18:1.286rem;
	--font-19:1.357rem;
	--font-20:1.429rem;
	--font-22:1.571rem;
	--font-24:1.714rem;
	--font-26:1.857rem;
	--font-28:2rem;
	--font-30:2.143rem;
	--font-32:2.286rem;
}


@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
	
:root {
	/*font 14px*/	
	/*--font-10:0.714rem;
	--font-11:0.786rem;
	--font-12:0.857rem;
	--font-13:0.929rem;
	--font-14:1rem;
	--font-16:1.143rem;;
	--font-18:1.286rem;
	--font-20:1.429rem;
	--font-22:1.571rem;
	--font-24:1.714rem;
	--font-26:1.857rem;
	--font-28:2rem;
	--font-30:2.143rem;
	--font-32:2.286rem;
	*/
	
}
	
}




section {
	width:100%;
	margin:0 auto 0;
	padding: 0px;
}



h1 {
	text-align: center;
}

h2{
	text-align: center;
	margin:0;
	padding:0px;
}

h3{
	margin:0;
	padding:0px;
}

.p0{
	margin:0;
	padding:0;
}

.font10{
	font-size:10px;}
	
.font12{
	font-size:12px;}
	
	.font13{
	font-size:13px;}
	
.font14{
	font-size:14px;}
	
.font16{
	font-size:16px;}
	
.font18{
	font-size:18px;}	
	
.font20{
	font-size:20px;}	

	
.font22{
	font-size:22px;}		
	
.font24{
	font-size:24px;}

.font30{
	font-size:30px;}	
	
.font-green{
	color:#008D47;
	}
	
.font-green2{
	color:#008237;
	}				
	
.font-orange{
	color:#F39800;
	}
	
	
.font-pink{
	color:#E3637B;
	}	
	
.font-web{
	color:#22AA2A;
	}	
	
.lh14{
	line-height:140%;
}

.lh18{
	line-height:180%;
}


.font_set{
	font-family:"Noto Sans JP", Helvetica, Arial, メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
	font-feature-settings : "palt" ;
	
}


		
/*==テキスト==*/
.text_c{text-align:center !important;}
.text_l{text-align:left !important;}
.text_r{text-align:right !important;}

.float_l{float:left;}
.float_r{float:right;}
.clearBoth{clear:both}

.fl_pc{float:left;}
.fr_pc{float:right;}

/*====*/
.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}

.indent1{margin-left: 1em; text-indent: -1em}

.img100 img{
	width:100%;
}


.img90 img{
	width:90%;
	
}

.img60 img{
	width:60%;
	
}






@media screen and (min-width: 769px) {
/* 768px以上の幅の場合に適応される */

.br-sp { display:none; }
.pc_none { display:none; }

}

@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
.text_wrap{
	width:95%;
	margin:0 auto;
}

.fl_pc{float:none;}
.fr_pc{float:none;}

.sp_none{
	 display:none; 
	 }

.t_sp-all{
	width:100%;
}

.t_sp90{
	width:90%;
}

.t_sp80{
	width:80%;
}

.t_sp70{
	width:70%;
}

.t_sp60{
	width:60%;
}

.t_sp50{
	width:50%;
}

.t_sp300{
	width:300px;
}

}


.pickup_wrap_w a:hover img,.interview_wrap a:hover img,.topics_wrap a:hover img,.event_wrap a:hover img,.footer_box2  a:hover img{
 opacity: 0.7;
 filter: alpha(opacity=70);
 -moz-opacity: 0.7;
}

.sp_move16_wrap{
	width:640px;
	margin: 10px auto 0;
}

.sp_move16{
position:relative;
width:100%;
padding-top:56.25%;
}


.sp_move16 iframe{
position:absolute;
top:0;
right:0;
width:100%;
height:100%;
}


.back_wrap1{
	width:100%;
	position: relative
}

.back_wrap1 img{
	width:100%;
}

	

header{
	padding: 5px 0 0 0;
}


.header_wrap{
	position:absolute;
	width:100%;
	top:10%;
	left: 50%;
transform: translateX(-50%);
} 


.header_h1{
	margin: 0 auto;
	width:610px;
} 

.header_h1 img{
	width:100%;
} 

.header_text{
	width:100%;
	margin:30px auto 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	font-size:var(--font-12);
	text-align: center;
	text-shadow: 2px 2px 2px #ffffff;
}



  	 
	 

@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
.header_wrap{
	width:100%;
	margin:0 auto;
	top:5%;
}
	
	
.header_h1{
	margin: 0 auto;
	width: 30%;
} 
	
.header_text{
	width: 70%;
	margin-top: 68%;
	text-shadow:none;
}
	

}

/* section1 */

.section_back1{
	background:linear-gradient(to bottom, #A2DCC3, #7cd2b5);
	margin-top: -60px;
}

.section1_wrap1{
	width:900px;
	margin:0 auto;
}

.section1_card-n{
	width:280px;
	margin-top: 0px;
}

.section1_card1{
	width:280px;
	margin-top: 40px;
}

.section1_card2{
	width:280px;
	margin-top: 40px;
	/*margin-left:30px;*/
}

.section1_card-n img,.section1_card1 img,.section1_card2 img{
	width:100%;
}

.section1_p1{
	font-size:18px;
	line-height:180%;
}


.section1_flex{
  width : 100% ;
	margin: 0px auto 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
	
.section_back1{
	margin-top: -30px;
	background:linear-gradient(to bottom, #7DD3B7, #7cd2b5);
}
	


.section1_wrap1{
	width:90%;
}
	
.section1_card-n{
	width:90%;
	margin:40px auto 0;
}	
	 
.section1_card1{
	width:90%;
	margin:40px auto 0;
}

.section1_card2{
	width:90%;
	margin:40px auto 0;
	margin-left: auto;
}

.section1_p1{
	font-size:14px;
	line-height:130%;
}

 }



/* section2 */

.section2_back{
	background:#f7f8ee ;
}

.section_t1{
	width:900px;
	margin:0 auto;
	font-size:var(--font-18);
	font-weight: bold;
	text-align: center;
	padding: 15px 0;
	color: #000000;
	border: 4px #000000 solid;
	background: #FFFFFF;
}

.section2_wrap{
	padding: 60px 0;
}


.section2_map{
	width:700px;
	margin:60px auto 0;
}

.section2_map img{
	width:100%;
}



.section2_wrap2{
	width:900px;
	margin:40px auto 0;
	text-align: center;
	font-size:var(--font-12);
}


@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
	
	
.section2_wrap{
	width:94%;
	margin: 0 auto;
	padding: 40px 0;
}	
	
.section_t1{
	width:100%;
	padding: 10px 20px;
	border: 3px #000000 solid;
}	

.section2_map{
	width:96%;
	margin:40px auto 0;
}
	
.section2_wrap2{
	width:94%;
	margin:20px auto 0;
}
	
	

 }



/* section3 */

.section3_back{
	background:#add380;
}

.section3_wrap{
	padding:60px 0 20px;
}



.section3-box_w {
  position: relative;
	width: 780px;
  margin: 60px auto 0;
  padding-top: 22px;
  
}


.section3-box_title {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 2;
  transform: translateX(-50%);
  width: 360px;
  margin: 0;
  padding: 12px 40px;
  background:#e88b9f;
  color: #fff;
  border-radius: 999px;
 font-size:var(--font-16);
  text-align: center;
}

/* 白いエリア */
.section3-box_content {
	margin: 0 auto 0;
  padding: 60px 40px;
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}



.section3_t3{
	font-size:var(--font-28);
	text-align: center;
	font-weight: bold;
	color: #98c661;
}

.section3_p1{
	font-size:var(--font-12);
	text-align: center;
	margin-top: 20px;
}


.section3-box_content2 {
	margin: 60px auto 0;
  padding: 40px 0;
  background: #fff;
  border-radius: 18px;
	border: #f29c9f 1px solid;
}

.section3-box_content2_t1 {
  display: flex;
	flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 3px;
  color: #f29c9f;
	font-size:var(--font-12);
  font-weight:bold;
  letter-spacing: 0.05em;
  text-align: center;
}

/* 左右の斜線 */
.section3-box_content2_t1::before,
.section3-box_content2_t1::after {
  content: "";
  width: 15px;
  height: 2px;
  background: #f29c9f;
}

/* 左 */
.section3-box_content2_t1::before {
  transform: rotate(50deg);
}

/* 右 */
.section3-box_content2_t1::after {
  transform: rotate(-50deg);
}


.section3-box_content2_t2{	
	font-size:var(--font-22);
	text-align: center;
	font-weight: bold;
}


.section3-dormitory_w{	
	margin: 40px auto 0;
	display: flex;
	flex-wrap: wrap;
  align-items: center;
  justify-content:space-between;
	gap: 15px; /* 【追加】要素の「間」にだけ10pxの余白を作る */
}

.section3-dormitory_box{	
	width: calc((100% - 15px) / 2);
}

.section3-dormitory_box img{	
	width:100%;
}

.section3-dormitory_t1{	
	background: #add380;
	color: #FFFFFF;
	font-weight: bold;
	padding: 10px 0;
	text-align: center;
}









.section3_line{
	margin-top:-5px;
}

.section3_box1{
	border:#979986 solid 1px;
	background:#f7f8ee;
	
}

.section3_box1_t1{
	padding:10px 0;
	text-align:center;
	color: #979986;
	background: #FFFFFF;
}

.section3_box1_t2{
	padding:20px 0;
	font-size:var(--font-18);
	text-align:center;
	color:#000;
	
}
.section3_box1_red{
	color:#e88b9f;
	
}

.section3_box1_line1{
	width: 96%;
	margin: 0 auto;
	border-top:#979986 dotted 2px;
	padding:20px 0;
	font-size:var(--font-18);
	text-align:center;
	color:#000;
}


.section3_btn1{
	background:#00AD63;
	width:300px;
	margin:40px auto 0;
	text-align:center;
	color:#FFF;
	padding:20px 0;
	-webkit-border-radius: 5px;/* for Safari and Chrome */
	-moz-border-radius: 5px; /* for Firefox */
	-o-border-radius: 5px; /* for opera */
	border-radius: 5px;
	
}

.section3_btn1:hover {
    background :#B0DDC4;
	color:#F60;
}


.section3_area_wrap{
	width:616px;
	margin:20px auto 0;
	
}

.section3_area1{
	background:#f2f3e8;
	width:96px;
	text-align:center;
	color:#000;
	padding:4px 0;
	float:left;
	-webkit-border-radius: 5px;/* for Safari and Chrome */
	-moz-border-radius: 5px; /* for Firefox */
	-o-border-radius: 5px; /* for opera */
	border-radius: 5px;
	
}

.section3_area2{
	background:#f2f3e8;
	width:200px;
	text-align:center;
	color:#000;
	padding:4px 0;
	float:left;
	-webkit-border-radius: 5px;/* for Safari and Chrome */
	-moz-border-radius: 5px; /* for Firefox */
	-o-border-radius: 5px; /* for opera */
	border-radius: 5px;
	
}

.section3_area_dec1{
	margin-left:8px;
	margin-top:5px;
	
}

.section3_area_dec2{
	margin-left:8px;
	margin-top:5px;
	
}

.section3_area_dec3{
	margin-left:0px;
	margin-top:5px;
	
}




.accbox table{
	width:100%;
	background:#FFFBFC;
	border-right:#C0C2AA solid 2px;
	border-bottom:#C0C2AA solid 2px;
}


.accbox th{
	padding:10px 0 10px 10px;
	text-align:left;
	border-bottom:#9B988F dashed 1px;
	border-left:#C0C2AA solid 2px;
	font-weight: normal;
}


.accbox td{
	width:20%;
	padding:10px 10px 10px 0;
	text-align:right;
	border-bottom:#9B988F dashed 1px;
	
}

.accbox_solid{
	border-bottom:#9B988F solid 1px !important;
}

.accbox_td1{
	border-top:#C0C2AA solid 2px;
	background:#F9E5E6;
}

.accbox_td2{
	background:#F9E5E6;
}

.accbox_td3{
	background:#C0C2AA;
}

.accbox_td4{
	width:18%;
}

.accbox_td5{
	width:32%;
}


.accbox_td-hokai{
	background:#D8DBEC;
}

.accbox_td-tohoku{
	background:#C6E6F5;
}

.accbox_td-kanto{
	background:#C4E5D2;
}

.accbox_td-chubu{
	background:#ECEFC2;
}

.accbox_td-kinki{
	background:#FCE6B5;
}

.accbox_td-chugoku{
	background:#F9D3C0;
}


.accbox_td-shikoku{
	background:#F9D8E1;
}

.accbox_td-kyusyu{
	background:#F8C6BF;
}




@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
	
.section3_wrap{
	width:94%;
	margin: 0 auto;
	padding:40px 0 20px;
}	

.section3_wrap2{
	width:94%;
}
	
.section3_t3{
	font-size:var(--font-20);
}
	
.section3_box1_t2{
	padding:10px 0;
	font-size:var(--font-16);
}


.section3_box1_line1{
	width: 94%;
	padding:10px 0;
	font-size:var(--font-16);
	
}	
	
	
	
.section3-box_w {
	width:100%;
  margin: 40px auto 0;
    padding-top: 18px;
  }

.section3-box_title {
    min-width: auto;
    width: 80%;
    padding: 10px 18px;
    font-size: 14px;
  }

.section3-box_content {
    padding: 50px 20px 30px;
    border-radius: 14px;
  }	
	
.section3_p1{
	text-align:left;
}	
	
	

.section3_area_wrap{
	width:300px;
	
}

.section3_area1{
	width:72px;
}

.section3_area2{
	width:148px;
}


.section3_area_dec1{
	margin-left:4px;
	
}

.section3_area_dec2{
	margin-left: 0px;
	
}

.section3_area_dec3{
	margin-left:4px;
}
	
	
.section3-box_content2 {
	margin: 40px auto 0;
  padding: 30px 10px;
}	
	
	
.section3-dormitory_w{	
	margin: 20px auto 0;
	display: flex;
	flex-direction: column; 
	flex-wrap: wrap;
  align-items: center;
  justify-content:space-between;
	gap: 15px; /* 【追加】要素の「間」にだけ10pxの余白を作る */
}	 
	
	 
	 
.section3-dormitory_box{	
	width:100%;
}	 

.section3-box_content2_t2{	
	font-size:var(--font-16);
}	



 }







/*footer */
footer {
	
	text-align:center;
	padding:20px 0;
}


.footer_copy {
	width:896px;
	margin:0 auto 40px;
}


 @media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */

.footer_copy {
	width:100%;
	font-size:10px;
	text-align:center;
	margin:10px auto 80px;

}

 }


/*==トップボタン==*/

.spToTopBtn {
  position: fixed;
  right: 0;
  bottom: 0;
  display: none;
	z-index: 9999;
}




/*アコーディオン　学生*/


@media screen and (min-width: 769px) {
/* 768px以上の幅の場合に適応される */

.grad-trigger {
  display: none; /*チェックボックスは常に非表示*/
}

}




 @media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */




.grad-wrap label {
	width:50%;
	margin:40px auto 0;
    display: block;
    padding : 10px 10px;
	text-align:center;
    color :#000;
	font-size:14px;
    font-weight: bold;
    cursor :pointer;
    transition: all 0.5s;
	border:#000 solid 4px;
	-webkit-border-radius: 5px;/* for Safari and Chrome */
	-moz-border-radius: 5px; /* for Firefox */
	-o-border-radius: 5px; /* for opera */
	border-radius: 5px;
}


.grad-btn {
  /*.grad-btnのCSSは表示/非表示の動作には関係ないので、ご自由にどうぞ。*/

  
}
.grad-btn::before {
  content: "もっとみる"
}
.grad-item {
  position: relative;
  overflow: hidden;
  height: 0px; /*隠した状態の高さ*/
}
.grad-item::before {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
 
  content: "";
}
.grad-trigger {
  display: none; /*チェックボックスは常に非表示*/
}
.grad-trigger:checked ~ .grad-btn::before {
  content: "閉じる" /*チェックされていたら、文言を変更する*/
}
.grad-trigger:checked ~ .grad-item {
  height: auto; /*チェックされていたら、高さを戻す*/
}
.grad-trigger:checked ~ .grad-item::before {
  display: none; /*チェックされていたら、grad-itemのbeforeを非表示にする*/
}


 }


/*アコーディオン　表*/

/*ボックス全体*/
.accbox {
    margin:60px auto 0;
    padding: 0;
	width:640px;
   /* max-width: 400px;最大幅*/
}


/* ボタン本体 */
.accbox label.acc-label {
	margin-left: -5px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px 0px;
  background: #b7b4a1;
  color: #fff;
  cursor: pointer;
  border-radius: 8px;
  box-shadow: 8px 8px 0 #9d9a89;
  transition: .3s;
}

/* hover */
.accbox label.acc-label:hover {
	background: #CACAB9;
}

/* テキスト */
.acc-label__text {
 font-size:var(--font-18);
}

/* アイコン */
.acc-label__icon {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  background: rgba(255,255,255,.9);
  border-radius: 8px;
}

/* 横線 */
.acc-label__icon::before,
.acc-label__icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: #b7b4a1;
  transform: translate(-50%, -50%);
  transition: .3s;
}

/* 横 */
.acc-label__icon::before {
  width: 20px;
  height: 2px;
}

/* 縦 */
.acc-label__icon::after {
  width: 2px;
  height: 20px;
}

/* checkbox */
.accbox input {
  display: none;
}

/* 開閉 */
.accshow {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition:max-height .5s ease, opacity .3s ease;
}

/* 開いた時 */
.cssacc:checked ~ .accshow {
  max-height: 2000px;
  opacity: 1;
  margin-top: 4px;
  padding: 4px;
}

/* ＋ → － */
.cssacc:checked + .acc-label .acc-label__icon::after {
  opacity: 0;
}


/* 詳細ボタン2026 */
.detail-btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 340px;
  margin: 40px auto 0;
  padding: 20px 0;
  background: #b8b6a2;
  color: #fff;
  border-radius: 6px;
  box-shadow: 6px 6px 0 #92907f;
  text-decoration: none;
}

.detail-btn span {
  letter-spacing: 0.08em;
}

/* 矢印 */
.detail-btn::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 24px;
  width: 12px;
  height: 12px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  transform: translateY(-50%) rotate(45deg);
}

/* hover */
.detail-btn:hover {
 background: #CACAB9;
}


.detail-btn2 {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 420px;
  margin: 40px auto 0;
  padding: 20px 0;
  background: #f29c9f;
  color: #fff;
  border-radius: 6px;
  box-shadow: 6px 6px 0 #C18283;
  text-decoration: none;
}

.detail-btn2 span {
  letter-spacing: 0.08em;
}

/* 矢印 */
.detail-btn2::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 24px;
  width: 12px;
  height: 12px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  transform: translateY(-50%) rotate(45deg);
}

/* hover */
.detail-btn2:hover {
 background: #F5B9BB;
}


 @media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */

	 
.accbox {
	margin:40px auto 0;
	width:100%;
}
	
.accbox label.acc-label {
	margin-left: -5px;
  padding: 15px 0px;
  box-shadow: 6px 6px 0 #9d9a89;
}	 

/* アイコン */
.acc-label__icon {
  right:10px;
  width: 24px;
  height: 24px;
}

/* 横 */
.acc-label__icon::before {
  width: 12px;
  height: 2px;
}

/* 縦 */
.acc-label__icon::after {
  width: 2px;
  height: 12px;
}	

.acc-label__text {
 font-size:var(--font-14);
}	 
	 
	 
	 
	 
/* 詳細ボタン2026 */	 
	  
	 
.detail-btn {
	width:80%;
	margin: 30px auto 0;
    padding: 10px 60px 10px 28px;
  }

.detail-btn::after {
    right: 26px;
    width: 14px;
    height: 14px;
  }	 

	 
.detail-btn2 {
	width:96%;
	margin: 30px auto 0;
    padding: 10px 40px 10px 20px;
  }

.detail-btn2::after {
    right: 26px;
    width: 14px;
    height: 14px;
  }	 	 
	 
	  

 }


.swiper-container{
	border-radius: 6px;
}



