/* モバイル用: 第二階層をデフォルトで非表示 */
.menu-mobile .sub-menu {
  display: none;
}

/* モバイル用: 表示状態 */
.menu-mobile .sub-menu.active {
  display: block;
}



/*PC*/
		@media screen and (min-width:768px) {
		
		/****アコーディオン****/
			.accordion {
  border: 1px solid #ddd;
  border-radius: 5px;
  overflow: hidden;
}

/* 各アイテムのスタイル */
.accordion-item {
  border-bottom: 1px solid #ddd;
}

.accordion-item:last-child {
  border-bottom: none;
}

/* ヘッダーのスタイル */
.accordion-header {
  background: #f7f7f7;
  cursor: pointer;
  padding: 15px;
  margin: 0;
  font-size: 16px;
  font-weight: bold;
}

.accordion-header:hover {
  background: #eaeaea;
}

/* コンテンツのスタイル */
.accordion-content {
  display: none;
  padding: 15px;
  background: #fff;
}
	/****アコーディオンend****/
			
			
			
			
			/***ぱんくず****/
			#breadcrumbs {
    font-size: 14px;
				margin-left: 10px;
    margin-bottom: 20px;
    color: #333;
				
}

#breadcrumbs a {
    text-decoration: none;
    color: #0073aa;
}

#breadcrumbs a:hover {
    text-decoration: underline;
}
			
/***ぱんくずend****/			
			
			
			
		.custom_width{
			margin-top: 70px !important;
    margin-bottom: 70px !important;
			margin-left: 300px !important;
    margin-right: 300px !important;
			text-align: center;
		}
			

		

.custom-slider {
    position: relative; /* スライドショーを基準にする */
}

.custom-slider .catchphrase {
    position: absolute;
    top: 50px; /* スライドショーの上からの距離を調整 */
    left: 20px; /* スライドショーの左からの距離を調整 */
    /*font-size: 40px;*/
    /*color:#353434 !important; /* テキストを目立たせる色 */
	
    z-index: 10; /* スライドショーの上に表示させる */
	background: none !important;
    /*background-color: rgba(0, 0, 0, 0.5);  背景を少し暗くする */
    padding: 10px; /* テキストに余白を追加 */
}
			
			.custom-slider .catchphrase .catchphrase_text01 {
    margin-top: 30px;
    font-size: 40px;
    color: #353434 !important;
    line-height: 60px !important;
}

			
			
			
			
			/*ヘッダーロゴの大きさ*/
			.header-container-in.hlt-top-menu .logo-header img {
				width: 400px !important;
  max-height:none !important;
  height: auto;
  vertical-align: middle;
				margin-bottom: 20px !important;
}
			
			/*ヘッダー下のスペース*/
			.header-container-in.hlt-top-menu .logo-header{
				margin-bottom: 20px !important;
			}
			
			
			
			
			/**ここから学習塾**/
			
			.header_images{
				margin: 0 0 20px 0;
				
			
			}
			
			.header_images img{
				width: 100%;
			}
			
			.header_tit{
				margin: 20px;
			}
			
			.header_tit h1{
				font-size: 24px;
				line-height: 34px;
				letter-spacing: 5px;
				font-weight:bold;
				border:#B0ADAD double 5px;
				padding: 30px;
				display: inline-block;
				
			}
			
			
			.headline_info{
				margin: 10px 0 10px 0;
			}
			
			.headline_info h2{
				font-size: 30px;
				line-height: 40px;
				letter-spacing: 5px;
				color: #0319B5;
				text-align: center;
				border-bottom: #0319B5 solid 1px;
				padding-bottom: 10px;
				display: inline-block;
			}
			
			.headline_info h2 br{
				display: none;
			}
			
			
			.headline_info_text01{
				font-size: 20px;
				line-height: 40px;
				letter-spacing: 5px;
				padding: 30px 0 20px 0;
			}
			
			
			.menu_bn_flex{
				margin: 40px 0 30px 0;
				display: flex;        /*  */
   flex-direction: row; /**/
				flex-wrap: wrap;
				justify-content: space-around;
				
		
			}
			
			
			.menu_bn_flex a{
				text-decoration: none;
			}
			
			.menu_bn_detail{
				width: 30%;
				height: auto;
				border-bottom: #071DA2 solid 2px;
				padding-bottom: 5px;
				
			}
			
			
			
			
			.menu_bn_images img{
				width: 100%;
				height: auto;
				transition: transform 0.3s ease; /* ズーム効果のトランジション速度を設定 */
			}
			
			
			.menu_bn_images:hover img{
				transform: scale(1.1); /* カーソルを合わせたときに1.1倍に拡大 */
			}
			

			
			.menu_bn_info h3{
				text-decoration: none;
				font-size: 20px;
				line-height: 30px;
				letter-spacing: 2px;
				color: #032DA1;
				margin: 20px 0 5px 0;
				
				
				
			}
			.menu_bn_info h3 a{
				color: #032DA1;
			}
			
			
			.menu_bn_info_text01{
				padding: 2px 0 10px 0;
			}
			
			
			.comment_info{
				text-align: center;
			}
			
			
			.comment_info h2{
				font-size: 20px;
				line-height: 30px;
				letter-spacing: 2px;
				
			}
			
			.teaching_feature{
				margin: 20px 0 20px 0;
			}
			
			
			.teaching_feature h2{
				text-align: left;
				font-size: 24px;
				line-height: 34px;
				letter-spacing: 3px;
				border-bottom: #07419F solid 1px;
				padding-bottom: 5px;
				color: #07419F;
			}
			
			.teaching_feature_detail_flex{
				display: flex;        /*  */
   flex-direction: row; /*  */
   flex-wrap:wrap;
				justify-content: space-around;
			}
			
			
			.teaching_feature_detail_info{
				width: 50%;
				height: auto;
			}
			
			.teaching_feature_detail_info_text01{
				font-size: 18px;
				line-height: 38px;
				text-align: left;
			}
			
			.teaching_feature_detail_images{
				width: 50%;
				height: auto;
				margin: 20px 0 20px 0;
			}
			
			
			.teaching_feature_detail_images img{
				width: 90%;
				height: auto;
			}
			
			
					
	
			
		/* ラジオボタンを非表示にしてタブとして使う */
.tab-container input[type="radio"] {
  
}

/* タブボタンのスタイル */
.tab-container label {
	display: inline;
}

/* チェックされたタブに色を適用 */
.tab-container input[type="radio"]:checked + label {
  background-color: #0088cc;
  color: #fff;
}

/* コンテンツの非表示 */
.tab-container .content {
  display: none;
  padding: 20px;
  border: 1px solid #0088cc;
  border-radius: 0 5px 5px 5px;
}

/* チェックされたタブの内容のみ表示 */
#tab1:checked ~ #content1,
#tab2:checked ~ #content2,
#tab3:checked ~ #content3 {
  display: block;
}	
			
			
			.schedule_all_flex{
				display: flex;        /*  */
   flex-direction: row; /*  */
   flex-wrap:wrap;
				justify-content:space-around;
				
			}
			
			
			
			.schedule_monthly{
				width: 40%;
				height: auto;
				border: #1649C5 solid 1px;
				padding: 30px;
				margin-bottom: 30px;
				
			}
			
			
			.schedule_monthly_text01{
				font-size: 18px;
				line-height: 30px;
				font-weight: bold;
				border-bottom: #1649C5 solid 1px;
				padding-bottom: 5px;
				color: #1649C5;
			}
			
			
			.schedule_monthly ul{
				padding-left: 0;
			}
			
			
			.schedule_monthly ul li{
				text-align: left;
				margin: 5px;
				font-size: 16px;
				line-height: 28px;
			}
			
			.lessonevent{
				font-weight: bold;
				font-size: 18px;
				color: #E65480;
			}
			
			
			.textbook_intro{
				margin: 50px 0 20px 0;
			}	
			
			.textbook_intro_flex{
				display: flex;        /*  */
   flex-direction: row; /*  */
   flex-wrap:wrap;
				justify-content:space-around;
			}
			
			.textbook_intro_images{
				width: 30%;
				height: auto;
				margin: 0 10px 10px 0;
			}
			
			.textbook_intro_images img{
				width: 100%;
				height: auto;
			}
			
			.textbook_intro_info{
				width: 60%;
				height: auto;
				
			}
			
			
			.textbook_intro_info_text01{
				font-size: 16px;
				line-height: 30px;
				letter-spacing: 1px;
				text-align: left;
			}
			
			
			
			.textbook_intro_info h2{
				background: #C5D3E5;
				padding: 20px;
				color: #2E30A2;
				font-size: 18px;
				line-height: 30px;
				letter-spacing: 2px;
			}
			
			
			
			.textbook_intro_info_text02{
				color: #2E30A2;
				font-size: 18px;
				line-height: 30px;
				letter-spacing: 1px;
				font-weight: bold;
				margin: 20px 0 20px 0;
			}
			
			.line_t20_b20_p_gray{
				padding: 20px 0 20px 0;
				border-bottom: #C3C3C3 solid 2px;
			}
			
			.price_info01{
				margin: 30px 0 30px 0;
			}
			
			.price_info01 ul{
				padding-left: 0;
			}
			
			.price_info01 ul li{
				list-style: circle;
				text-align: left;
				font-size: 16px;
				line-height: 34px;
			}
			
			.admissionfee_info{
				margin: 30px 0 30px 0;
			}
			
			.admissionfee_info_text01{
				text-align: left;
				font-weight: bold;
				font-size: 18px;
				line-height: 32px;
				letter-spacing: 1px;
				color: #114CEB;
				border-bottom: #114CEB solid 1px;
				padding: 5px 5px 5px 10px;
			}
			
			.admissionfee_info_text02{
				text-align: left;
				font-weight: bold;
				font-size: 18px;
				line-height: 32px;
				letter-spacing: 1px;
			}
			
			
			.subjects_info_text01{
				font-size: 16px;
				line-height: 30px;
				margin: 20px 0 20px 0;
			}
			
			.subjects_price_info table{
				border-collapse: collapse;
				padding: 10px;
			}
			
			.bg_blue{
				background: #DEE6FC;
				
			}
			
			
			/*コンタクトフォーム7*/
			
			.inquire_item{
				padding: 10px 0 40px 0;
				
			}
			
			.inquire_item_text01{
				text-align: left;
				font-size: 20px;
			}
			
			
			.inquire_item_text02{
				background: #264293;
				color: #FFFFFF;
			}
			
			.inquire_item_02{
				margin: 10px 0 40px 0;
			}
			
			
			.inquire_item_text03{
				font-weight: bold;
				margin: 10px 0 20px 0;
			}
			
			
			.access_area_bt_flex{
				display: flex;        /*  */
   flex-direction: row; /*  */
   flex-wrap:wrap;
				justify-content: space-between;
			}
			
			
			.access_area_bt{
				width: 250px;
				background:#1954A1;
				border-radius: 20px;
				border: #B5D1F6 solid 2px;
				color: #FDF9F9;
				font-size: 20px;
				letter-spacing: 3px;
				
				
			}
			
			.access_area_bt a{
				display: block;
				color: #FFFFFF;
				text-decoration: none;
			}
			
			.access_area_bt a:hover{
				opacity: 70%
			}
			
			
			
			
			
			
			
			
			
		}
		/*PCend*/
			
		
		
		/****** タブレットの横向き ******/
@media (min-width: 768px) and (max-width: 1023px) and (orientation: landscape)
{
  .custom_width{
			margin-top: 70px !important;
    margin-bottom: 70px !important;
			margin-left: 100px !important;
    margin-right: 100px !important;
	  text-align: center;}
	  
	  /***ぱんくず****/
			#breadcrumbs {
    font-size: 14px;
				margin-left: 10px;
    margin-bottom: 20px;
    color: #333;
				
}

#breadcrumbs a {
    text-decoration: none;
    color: #0073aa;
}

#breadcrumbs a:hover {
    text-decoration: underline;
}
			
/***ぱんくずend****/	
	 
	
	.comment_info{
		text-align: center;
	}
	
	
}
/****** タブレットの横向きend ******/


/***** タブレットのたて向き******/
@media (min-width: 768px) and (max-width: 1023px) and (orientation: portrait) {
  
	.custom_width{
			margin: 20px !important;
			text-align: center;
		}
	
	.aboutus_parts_flex{
				display: flex;        /* Flex */
   flex-direction: row;
   flex-wrap:wrap;
		justify-content: space-around;
		
		
			}
	
	.aboutus_parts_detail{
				border: #E8B2B3 solid 1px;
				padding: 0;
				width: 40%;
				height: auto;
		margin: 10px;
				
				
			}
	
	.infobn_flex{
				display: flex; /*  */
   flex-direction: row; /*  */
   flex-wrap:wrap;
				justify-content:space-around;
	column-count: 2;
		
			}
	
			.infobn_link{
				border: #C1C0C0 solid 1px;
				border-radius: 20px;
				padding: 20px;
				width: 35%;
				background: #FFFFFF;
				margin: 20px;
				
			}
	
	
	.menu_bn_flex{
				margin: 40px 0 30px 0;
				display: flex;        /*  */
   flex-direction: row; /**/
				flex-wrap: wrap;
				justify-content: space-between;
		
			}
			
			
			.menu_bn_flex a{
				text-decoration: none;
			}
	
			.menu_bn_detail{
				width: 40%;
				height: auto;
				border-bottom: #071DA2 solid 2px;
				padding-bottom: 5px;
				margin-bottom: 20px;
				
			}
			
	.comment_info{
		text-align: center;
	}
	
	 
	
	
}
	/****** タブレットのたて向きend******/	
			



		/*スマートフォン*/
		@media screen and (max-width:767px) {
			
			#navi{
				display: ;
			}
			
			
		
			
			.custom_width{
			margin: 20px !important;
			text-align: center;
		}
		
		
			
	
			
			
		.custom-slider {
    position: relative; /* スライドショーを基準にする */
}

.custom-slider .catchphrase {
    position: absolute;
     top: 20px; /* モバイル用の調整 */
        left: 10px; /* モバイル用の調整 */
       
    /*font-size: 40px;*/
    /*color:#353434 !important; /* テキストを目立たせる色 */
	
    z-index: 10; /* スライドショーの上に表示させる */
	background: none !important;
    /*background-color: rgba(0, 0, 0, 0.5);  背景を少し暗くする */
   
}
			
			.catchphrase_text01 {
				  font-size: 18px; /* モバイル用に文字サイズを調整 */
        line-height: 30px; /* 行の高さを調整 */
    color:#353434 !important; /* テキストを目立たせる色 */
}
			
			
			
			
			#header-container{
	margin:20px 0 5px 0 !important;
}
			
			/*ヘッダーロゴの大きさ*/
			.header-container-in.hlt-top-menu .logo-header img {
				width: 400px !important;
  max-height:none !important;
  height: auto;
  vertical-align: middle;
}
			
			
		/**ここから学習塾**/
			
			.header_images{
				margin: 0 0 20px 0;
				
			
			}
			
			.header_images img{
				width: 100%;
			}
			
			
			.header_tit{
				margin: 20px;
				text-align: left;
			}
			
			.header_tit h1{
				font-size: 24px;
				line-height: 34px;
				letter-spacing: 5px;
				font-weight:bold;
				border:#B0ADAD double 5px;
				padding: 30px;
				
				
			}
			
			
			.headline_info{
				margin: 10px;
			}
			
			.headline_info h2{
				font-size: 30px;
				line-height: 50px;
				letter-spacing: 5px;
				color: #0319B5;
				text-align: center;
				border-bottom: #0319B5 solid 1px;
				padding-bottom: 10px;
				display: inline-block;
			}
			
			.headline_info_text01{
				font-size: 20px;
				line-height: 34px;
				letter-spacing: 5px;
				text-align: left;
				margin: 20px 0 20px 0;
			}
			
			
			.headline_info_text01 br{
				display: none;
			}
			
			
			.menu_bn_flex{
				margin: 30px 10px 30px 10px;
			}
			
			.menu_bn_flex a{
				text-decoration: none;
			}
			
			.menu_bn_detail{
				
				border-bottom: #071DA2 solid 2px;
				padding-bottom: 5px;
				margin: 40px 0 40px 0;
				
			}
			

			
			
			
			.menu_bn_images img{
				width: 90%;
				height: auto;
				transition: transform 0.3s ease; /* ズーム効果のトランジション速度を設定 */
			}
			
			
			.menu_bn_images:hover img{
				transform: scale(1.1); /* カーソルを合わせたときに1.1倍に拡大 */
			}
			

			
			.menu_bn_info h3{
				text-decoration: none;
				font-size: 20px;
				line-height: 30px;
				letter-spacing: 2px;
				color: #032DA1;
				margin: 20px 0 5px 0;
				
				
				
			}
			.menu_bn_info h3 a{
				color: #032DA1;
			}
			
			
			.menu_bn_info_text01{
				padding: 2px 0 10px 0;
			}
			
			
			.comment_info{
				text-align: center;
				margin: 20px 10px 40px 10px;
			}
			
			
			.comment_info_text01{
				font-size: 20px;
				line-height: 30px;
				letter-spacing: 2px;
				text-align: left;
				
			}
			
			.teaching_feature{
				margin: 20px 0 30px 0;
			}
			
			
			.teaching_feature h2{
				text-align: left;
				font-size: 24px;
				line-height: 34px;
				letter-spacing: 3px;
				border-bottom: #07419F solid 1px;
				padding-bottom: 5px;
				color: #07419F;
			}
			
			.teaching_feature_detail_flex{
				margin: 20px 10px 20px 10px;
			}
			
			
			.teaching_feature_detail_info{
				margin: 10px 0 10px 0;
				
			}
			
			.teaching_feature_detail_info_text01{
				font-size: 18px;
				line-height: 38px;
				text-align: left;
			}
			
			.teaching_feature_detail_images{
			
				margin: 20px 0 20px 0;
			}
			
			
			.teaching_feature_detail_images img{
				width: 90%;
				height: auto;
			}
			
			
			
			
			/* ラジオボタンを非表示にしてタブとして使う */
.tab-container input[type="radio"] {
  
}

/* タブボタンのスタイル */
.tab-container label {
	display: inline;
}

/* チェックされたタブに色を適用 */
.tab-container input[type="radio"]:checked + label {
  background-color: #0088cc;
  color: #fff;
}

/* コンテンツの非表示 */
.tab-container .content {
  display: none;
  padding: 20px;
  border: 1px solid #0088cc;
  border-radius: 0 5px 5px 5px;
}

/* チェックされたタブの内容のみ表示 */
#tab1:checked ~ #content1,
#tab2:checked ~ #content2,
#tab3:checked ~ #content3 {
  display: block;
}	
			
			
			
			.schedule_all_flex{
				margin: 10px;
				justify-content:space-around;
				
			}
			
			
			
			.schedule_monthly{
				border: #1649C5 solid 1px;
				padding: 30px;
				margin-bottom: 30px;
				
			}
			
			
			.schedule_monthly_text01{
				font-size: 18px;
				line-height: 30px;
				font-weight: bold;
				border-bottom: #1649C5 solid 1px;
				padding-bottom: 5px;
				color: #1649C5;
			}
			
			
			.schedule_monthly ul{
				padding-left: 0;
			}
			
			
			.schedule_monthly ul li{
				text-align: left;
				margin: 5px;
				font-size: 16px;
				line-height: 28px;
			}
			
			.lessonevent{
				font-weight: bold;
				font-size: 18px;
				color: #E65480;
			}
			
			
			.textbook_intro{
				margin: 20px 10px 20px 10px;
			}	
			
			.textbook_intro_flex{
				
			}
			
			.textbook_intro_images{
				margin: 10px 0 10px 0;
			}
			
			.textbook_intro_images img{
				width: 60%;
				height: auto;
			}
			
			.textbook_intro_info{
				margin: 10px 0 10px 0;
				
			}
			
			
			.textbook_intro_info_text01{
				font-size: 16px;
				line-height: 30px;
				letter-spacing: 1px;
				text-align: left;
			}
			
			
			
			.textbook_intro_info h2{
				background: #C5D3E5;
				padding: 20px;
				color: #2E30A2;
				font-size: 18px;
				line-height: 30px;
				letter-spacing: 2px;
			}
			
			
			
			
			.textbook_intro_info_text02{
				color: #2E30A2;
				font-size: 18px;
				line-height: 30px;
				letter-spacing: 1px;
				font-weight: bold;
				margin: 20px 0 20px 0;
			}
			
			
			.line_t20_b20_p_gray{
				padding: 20px 0 20px 0;
				border-bottom: #C3C3C3 solid 2px;
			}
			
			.accordion {
  border: 1px solid #ddd;
  border-radius: 5px;
  overflow: hidden;
}

/* 各アイテムのスタイル */
.accordion-item {
  border-bottom: 1px solid #ddd;
}

.accordion-item:last-child {
  border-bottom: none;
}

/* ヘッダーのスタイル */
.accordion-header {
  background: #f7f7f7;
  cursor: pointer;
  padding: 15px;
  margin: 0;
  font-size: 16px;
  font-weight: bold;
}

.accordion-header:hover {
  background: #eaeaea;
}

/* コンテンツのスタイル */
.accordion-content {
  display: none;
  padding: 15px;
  background: #fff;
}
			
			
			
			/***ぱんくず****/
			#breadcrumbs {
    font-size: 14px;
				margin-left: 10px;
    margin-bottom: 20px;
    color: #333;
				
}

#breadcrumbs a {
    text-decoration: none;
    color: #0073aa;
}

#breadcrumbs a:hover {
    text-decoration: underline;
}
			
/***ぱんくずend****/	
			
		
			
		.price_info01{
				margin: 30px 0 30px 0;
			}
			
			.price_info01 ul{
				padding-left: 0;
			}
			
			.price_info01 ul li{
				list-style: circle;
				text-align: left;
				font-size: 16px;
				line-height: 34px;
			}
			
			.admissionfee_info{
				margin: 30px 10px 30px 10px;
			}
			
			.admissionfee_info_text01{
				text-align: left;
				font-weight: bold;
				font-size: 18px;
				line-height: 32px;
				letter-spacing: 1px;
				color: #114CEB;
				border-bottom: #114CEB solid 1px;
				padding: 5px 5px 5px 10px;
			}
			
			.admissionfee_info_text02{
				text-align: left;
				font-weight: bold;
				font-size: 18px;
				line-height: 32px;
				letter-spacing: 1px;
			}
			
			
			.subjects_info_text01{
				font-size: 16px;
				line-height: 30px;
				margin: 20px 0 20px 0;
			}
			
			.subjects_price_info table{
				border-collapse: collapse;
				padding: 10px;
			}
			
			.bg_blue{
				background: #DEE6FC;
				
			}
			
			
			/*コンタクトフォーム7*/
			
			.inquire_item{
				padding: 10px 0 40px 0;
				
			}
			
			.inquire_item_text01{
				text-align: left;
				font-size: 20px;
			}
			
			
			
			
			.inquire_item_02{
				margin: 10px 10px 40px 10px;
			}
			
			
			.inquire_item_text03{
				font-weight: bold;
				margin: 10px 0 20px 0;
			}
			
			
			.access_area_bt_flex{
				margin: 10px 10px 20px 10px;
				text-align: center;
				text-align: center;
				
			}
			
			
			.access_area_bt{
				background:#1954A1;
				border-radius: 20px;
				border: #B5D1F6 solid 2px;
				color: #FDF9F9;
				font-size: 20px;
				letter-spacing: 3px;
				
				margin: 30px;
			}
			
			.access_area_bt a{
				display: block;
				color: #FFFFFF;
				text-decoration: none;
			}
			
			.access_area_bt a:hover{
				opacity: 70%
			}
			
			
			
		/* モバイル用メニューのスタイリング */
			 .header-menu .menu-item {
        position: relative;
    }
			
			
			
			
			
			
		}
		/*スマートフォンend*/