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

	index トップページ


*/




.main_img{
margin-bottom: 30px;
}	


.main_img_box{
position: relative;
}	


.map>iframe{
	width: 100%;
	height: 300px;
	margin: 0;
	border: 0;
	padding: 0;
}



.main_img_box>div>picture>img{
width: 100%;
height: auto;
display: block;
}


.main_img_box>div:nth-of-type(2),
.main_img_box>div:nth-of-type(3){
	position: absolute;
	top: 0;
}


.main_img_box>div:nth-of-type(2){
	animation: img1Animation 21s infinite;
}


.main_img_box>div:nth-of-type(3){
	animation: img2Animation 21s infinite;
}


@keyframes img1Animation {
    0%   { opacity: 0; }
    23.8%   { opacity: 0; }
    33.3%   { opacity: 1; }     /* 5〜7秒でフェードイン */
    66.62%  { opacity: 1; }     /* 7〜12秒で5秒間表示 */
    66.63%  { opacity: 0; }     /* 12〜14秒でフェードアウト */
    100% { opacity: 0; }
  }

@keyframes img2Animation {
    0%    { opacity: 0; }
    57.1%   { opacity: 0; }
    66.62%   { opacity: 1; }    /* 14〜16秒でフェードイン */
    90.42%   { opacity: 1; }    /* 16〜21秒で5秒間表示 */
    100%  { opacity: 0; }
  }



.main_img_box>h1{
position: absolute;
bottom: 12%;
display: block;
text-align: center;
width: 100%;
}


.main_img_box>h1>div>div{
display: inline-block;
color: white;
line-height: 1;
text-align: center;
	background:rgba(75, 149,177, 0.5) ;
	color: white;
}


.main_img_box>h1>div:nth-child(1)>div{
	padding:10px 10px;
	margin-bottom: 10px;
	font-size: calc(var(--kihon-font) + 2rem);
}

.main_img_box>h1>div:nth-child(2)>div{
	padding: 10px 10px;
	font-size: calc(var(--kihon-font) + 1.5rem);
}


.swiper-wrapper{
	justify-content: center;
}



.swiper-container {
    width: 100%;
    
}
.swiper-container{
    text-align: center;
}
.swiper-container .swiper-slide img{
    max-width: 100%;
    height: auto;
}

.swiper-slide img{
width: 100%;
height: auto;
}


.slide_box{
	position: relative;

}






.sokusen{
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
}

.sokusen>li:nth-child(1),
.sokusen>li:nth-child(3){
width: calc((100% - 550px) / 2);
text-align: center;
max-width: 400px;
}

.sokusen>li:nth-child(1)>picture>img,
.sokusen>li:nth-child(3)>picture>img{
	width: 100%;
	height: auto;
}

.sokusen>li:nth-child(2){
width: 550px;
text-align: center;
}



.sokusen_text{
	font-size: calc(var(--kihon-font) + 0.3rem);
	line-height: 3.2;
	margin-bottom: 60px;
}



.index_text{
	font-size: calc(var(--kihon-font) + 0.3rem);
	line-height: 2.8;
	margin-bottom: 60px;
}

.index_2li:nth-last-of-type(1){
margin-bottom: 0;
}

.index_2li{
	display: flex;
	align-items: center;
	justify-content: space-between;
margin-bottom: 80px;
}




.index_2li>li:nth-child(1){
	width: 45%;
}

.index_2li>li:nth-child(2){
	width: 50%;
}


.index_2li>li:nth-child(1)>img{
width: 100%;
height: auto;
}


.midasi2_mini{
	color: var(--kihon-color);
	font-size: calc(var(--kihon-font) + 0.3rem);
	font-weight: bold;
}


.midasi2_big{
	color: var(--kihon-color);
	font-size: calc(var(--kihon-font) + 1.3rem);
		font-weight: bold;
}


.midasi30{
	margin-bottom: 30px;
}




.bt_list>li{
margin-bottom: 10px;
text-align: center;
}







.full{
	margin: 0 calc(50% - 50vw);

}

.event_2li{
	display: flex;
	justify-content: space-around;
	margin-bottom: 20px;
}

.event_2li>li{
background: white;
padding: 15px;
width: 100%;
}

.event_2li>li>ul:nth-child(1){
display: flex;
justify-content: space-around;
margin-bottom: 20px;
}

.event_2li>li>ul:nth-child(1)>li:nth-child(1){
width: 180px;
}

.event_2li>li>ul:nth-child(1)>li:nth-child(1)>img{
width: 100%;
height: auto;
}


.event_2li>li>ul:nth-child(1)>li:nth-child(2){
width: calc(100% - 180px);
padding: 10px 0 10px 20px;
}

.event_2li>li>ul:nth-child(1)>li:nth-child(2)>div:nth-child(1){
font-size: calc(var(--kihon-font) + 0.3rem);
color: var(--kihon-color);
font-weight: bold;
padding-left: 15px;
border-left: 3px solid var(--kihon-color);
margin-bottom: 10px;
}



.event_2li>li>ul:nth-child(1)>li:nth-child(2)>div:nth-child(2){
font-size: calc(var(--kihon-font) + 0.2rem);
}



.event_2li>li>ul:nth-child(2){
display: flex;
flex-wrap: wrap;
justify-content: center;
}

.event_2li>li>ul:nth-child(2)>li{
width: 24%;
padding: 15px 10px;
background: #f4f4f4;
text-align: center;
margin-bottom: 10px;
margin-right: 1.33%;
}

.event_2li>li>ul:nth-child(2)>li:nth-last-child(1){
margin-right: 0;
}


.event_2li>li>ul:nth-child(2)>li:nth-child(4n){
margin-right: 0;
}



.event_2li>li>ul:nth-child(2)>li>div:nth-child(1){
font-size: calc(var(--kihon-font) - 0.2rem);
font-weight: bold;
}

.event_2li>li>ul:nth-child(2)>li>div:nth-child(2){
font-size: calc(var(--kihon-font) + 1rem);
display: inline-block;
border-bottom: 2px solid #73c6da;
margin-bottom: 10px;
font-weight: bold;
letter-spacing: -2px;
}

.event_2li>li>ul:nth-child(2)>li>div:nth-child(2)>span:nth-child(1){
font-size: calc(var(--kihon-font) + 0.3rem);
padding: 0 2px;
}

.event_2li>li>ul:nth-child(2)>li>div:nth-child(2)>span:nth-child(2){
font-size: calc(var(--kihon-font) + 0.1rem);
padding: 0 2px;
}


.insta_banner{
	max-width: 600px;
margin: 0 auto;	
}

.insta_banner>a>picture>img{
width: 100%;
height: auto;
}





.info_wrap{
	display: flex;
	justify-content: space-around;
}


.info_wrap>li:nth-child(1){
width: 150px;
padding: 40px 20px 20px 20px;
}

.info_wrap>li:nth-child(1)>div{
	border-bottom: 2px solid #7fd4ff;
	padding-bottom: 5px;

}

.info_wrap>li:nth-child(1)>div>div:nth-child(1){
font-size: calc(var(--kihon-font) + 1rem);
}

.info_wrap>li:nth-child(1)>div>div:nth-child(2){
font-size: calc(var(--kihon-font) + 0.3rem);
}



.info_wrap>li:nth-child(2){
width: calc(100% - 150px);
padding: 20px 0 20px 20px;
}




.info_list{
	margin: 0 auto 0 auto;
	background: white;
	padding: 20px;
	
}




.info_list>li{
padding-bottom: 20px;
padding-top: 20px;
border-bottom: 1px dotted #def6fc;
display: flex;
justify-content: space-between;
align-items: center;
}


.info_list>li>div:nth-child(1){
width: 200px;
}

.info_list>li>div:nth-child(2){
width: calc(100% - 220px);
}


.info_list>li>div:nth-child(1)>a>img{
width: 100%;
height: auto;
}

.info_list>li>div:nth-child(2)>div:nth-child(1){
	margin-bottom: 10px;
}


.info_list>li>div:nth-child(2)>div:nth-child(1)>span:nth-child(1){
font-size: calc(var(--kihon-font) + 0.1rem);
width: 150px;
text-align: center;
display: inline-block;}



.info_list>li>div:nth-child(2)>div:nth-child(1)>span:nth-child(2){
font-size: calc(var(--kihon-font) + 0.1rem);
color: white;
width: 200px;
background: #000;
border-radius: 10px;
display: inline-block;
text-align: center;
}

.info_list>li>div:nth-child(2)>div:nth-child(2)>a{

font-size: calc(var(--kihon-font) + 0.2rem);
text-decoration: none;
}


.info_more_bt{
	text-align: right;
}

.info_more_bt>a{
font-size: var(--kihon-font);
text-decoration: none;
color: #000;
}




.info_more_bt>a::after{
	content: '';/*何も入れない*/
  display: inline-block;
  width: 8px;/*画像の幅*/
  height: 8px;/*画像の高さ*/
  background-image: url("../img/right_arrow2.webp");
  background-size: contain;
  vertical-align: middle;
  margin-left: 10px;
}


.お知らせ{
	background: #9f4519!important;
}

.イベント{
	background: #195c9f!important;
}

.オープンキャンパス{
	background: #199f35!important;
}



.event_more{
	text-align: center;
}

.event_more>a{
	display: inline-block;
	color: white;
	font-size: calc(var(--kihon-font) + 0.1rem);
	padding: 10px 20px;
	background: var(--kihon-color);
	border-radius: 10px;
	margin-top: 10px;
}

.event_more>a::after{
content: "▼";
	font-size: calc(var(--kihon-font) - 0.1rem);
	padding-left: 10px;
}

.event_more>a:hover{
	text-decoration: none;

}





.index_tirasi{
	font-size: inherit;
}

.index_tirasi>a{
	font-size: inherit;
}

.sp_wrap{
	
	margin: 0 auto 60px auto;
}
/* ====================================================
   ★ 追加：5枚以上（Swiperが動いているとき）の位置ズレ防止
==================================================== */
/* Swiper作動中は、他のCSSからの中央寄せ（justify-content: center）の干渉を絶対に防ぐ */
.swiper-container:not(.is-disabled-swiper) .swiper-wrapper {
  justify-content: flex-start !important;
}


/* ====================================================
   ★ 以下は一番最初のCSSベース（4枚以下の無効化時）
==================================================== */
/* 全体の横幅を最大980pxに制限し、中央に寄せる */
.swiper-container.is-disabled-swiper {
  max-width: 980px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.swiper-container.is-disabled-swiper .swiper-wrapper {
  display: flex !important;
  transform: none !important; /* Swiperのズレを強制リセット */
  width: 100% !important;
  justify-content: center !important; /* スライドが少ない時は中央に寄せる */
}

.swiper-container.is-disabled-swiper .swiper-slide {
  flex: 1 1 0% !important; 
  width: auto !important;
  margin-right: 15px !important; /* スライド間の余白（お好みで調整） */
  
  /* ★画像が巨大化するのを防ぐため、1枚あたりの最大横幅を半分（980pxの半分）までに制限 */
  max-width: 360px !important; 
  height: auto !important;
}

/* ★ご要望の指定：画像の比率を100%×autoで維持（切り取りなし） */
.swiper-container.is-disabled-swiper .swiper-slide img {
  width: 100% !important;
  height: auto !important;
  display: block;
}

/* 一番右端のスライドだけ余白を消す */
.swiper-container.is-disabled-swiper .swiper-slide:last-child {
  margin-right: 0 !important;
}

/* 動きが止まっている時はページネーション（・ · ・）を非表示にする */
.swiper-container.is-disabled-swiper .swiper-pagination {
  display: none !important;
}