@charset "UTF-8";

img{
	width: 100%;
	max-width: 100%;
	height: auto;
}
.object-fit{
  object-fit: cover;
  font-family: 'object-fit: cover;';
	  object-position: top center;
	height: 350px;
}
.navbar{
	background-color: #fff!important;
}
main{
	background: #F8F9FA;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	padding-bottom: 60px;
}
nav.breadcrumb{
	padding: 10px 0;
}
nav.breadcrumb a{
	display: block;
	text-decoration: none;
	color: #000;
}
nav.breadcrumb a:not(:last-child),
nav.breadcrumb span:not(:last-child){
	margin-right: 10px;
}
.single_wrap{
	display: flex;
	gap:15px;
}
.single_wrap .sigle_main{
	width: 77.5%;
	background:#fff;
	border:1px solid rgba(0, 0, 0, .2);
		border-radius: 15px;
    padding: 2rem 1.5rem 3rem;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, .2);
}
.single_wrap .single_side{
	width: 22.5%;
}
.single_wrap .single_side_inner{
	background:#fff;
	border:1px solid rgba(0, 0, 0, .2);
		border-radius: 15px;
    padding: 2rem;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, .2);
}
.sigle_main .ttl_wrap{
	margin-bottom: 1.5em;
}
.single_wrap .single_thum{
	border-radius: 10px 10px 0 0;
}
.single_wrap .single_thum img{
	border-radius: 10px 10px 0 0;
}
.single_wrap .single_ttl_container{
	border-radius:0 0 10px 10px;
	background: linear-gradient(135deg, rgba(103, 123, 230, 1), rgba(117, 80, 168, 1));
	padding: 1.5rem 2rem;
}
.single_wrap .single_ttl_flex {
	display: flex;
	gap:30px;
	justify-content: space-between;
}

.single_wrap .single_ttl_flex .left{
	align-self: center;
}
.single_wrap .single_ttl_flex .right{
	width: 20%;
}
.single_wrap .single_ttl_flex h1{
	color: #fff;
	font-weight: bold;
	margin-bottom: 1em;
	font-size:30px;
}
.single_wrap .single_ttl_flex .type-list {
	display: flex;
	gap:10px;
	list-style: none;
	margin: 0 0 1em;
	padding: 0;
}
.single_wrap .single_ttl_flex .type-list .type-item{
	color: rgba(117, 80, 168, 1);
	font-weight: 500;
	background: #fff;
	padding: .25em 1.5em;
	border-radius: 20px;
	font-size: 14px;
}
.single_wrap .single_ttl_flex h2{
	color: #fff;
	margin-bottom:0;
	font-size:16px;
}
.single_ttl_flex .sigle_reviews{
	border-radius: 15px;
	background: rgba(255,255,255,.1);
	padding: 2em 10px;
}
.single_ttl_flex .sigle_reviews p.total_rate{
	font-size: 48px;
	text-align: center;
	margin-bottom: 10px;
	font-weight: bold;
	color: #fff;
}
.single_ttl_flex .sigle_reviews p.number_rate{
	font-size: 14px;
	text-align: center;
	margin-bottom: 0;
	color: #fff;
}
.star-rating {
    display: block;
	text-align: center;
}

.star {
    font-size: 20px;
}

.star-filled {
    color: #FFC108; /* 黄色 */
}

.star-empty {
    color: #CCCCCC; /* グレー */
}
.campaign_wrap{
	margin-bottom: 1.75em;
}

.campaign_wrap .single_campaign_main{
  background-color: #FC6866;
  background-image: radial-gradient(circle, rgba(255,255,255,.1) 4px, transparent 4px);
  background-position: 0 0;
  background-size: 30px 30px;
	padding: 1.5em 0;
	border-radius: 15px;
}
.campaign_wrap .single_campaign_main p{
	text-align: center;
	font-size: 24px;
	color: #fff;
	margin-bottom: 0;
}.recommend_wrap{
	margin-bottom: 1.75em;
}
.recommend_wrap h2{
	font-size: 20px;
	position: relative;
	border-bottom: 1px solid #dcdcdc;
	padding-bottom: .75em;
	margin-bottom: .75em;
	padding-left: 30px;
}
.recommend_wrap h2::before{
	position: absolute;
	width: 20px;
	aspect-ratio:20/26.0862;
	top:0;
	left: 0;
	content: "";
	background: url(../img/recommend_icon.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.recommend_wrap .recommend_flex{
	display: flex;
	flex-wrap: wrap;
	gap:30px;
}
.recommend_wrap .recommend_flex .recommend_item{
	width: calc(50% - 15px);
}

.recommend_wrap .recommend_flex .recommend_item .inner{
	background: #f5f5f5;
	padding: 1em 1.5em;
	border-left: 5px solid #6C82EA;
	border-radius: 0 10px 10px 0;
}
.recommend_wrap .recommend_flex .recommend_item:not(:nth-last-child(2)),
.recommend_wrap .recommend_flex .recommend_item:not(:last-child)
{
	margin-bottom: 1em;
}
.recommend_wrap .recommend_flex .recommend_item p{
	margin-bottom: 0;
}
.recommend_wrap .recommend_flex .recommend_item p.point_ttl{
margin-bottom: 1em;
	color: #000;
	font-weight: bold;
}
.recommend_wrap .recommend_flex .recommend_item p.point_text{
font-size: 12px;
}
.couse_list_wrap{
	margin-bottom: 1.75em;
}
.couse_list_wrap h2{
	font-size: 20px;
	position: relative;
	border-bottom: 1px solid #dcdcdc;
	padding-bottom: .75em;
	margin-bottom: .75em;
	padding-left: 30px;
}
.couse_list_wrap h2::before{
	position: absolute;
	width: 25px;
	aspect-ratio:1/1;
	top:0;
	left: 0;
	content: "";
	background: url(../img/icons8-book-stack-100.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.couse_list_flex_wrap{
	display: flex;
	gap:30px;
	justify-content: space-between;
	background: #f5f5f5;
	border-radius: 15px;
	border: 1px solid #E8E8E8;
	padding: 1em 1.5em;
}
.couse_list_flex_wrap:not(:last-child){
	margin-bottom: 1rem;
}
.couse_list_flex_wrap .couse_list_item{
	width: 75%;
}
.couse_list_flex_wrap .couse_list_item:last-child{
	width: 25%;
}
.couse_list_flex_wrap .couse_list_item .couse_ttl{
	font-size: 18px;
	font-weight: bold;
}
.couse_list_flex_wrap .couse_list_item .couse_list_flex{
	display: flex;
	gap:15px;
}

.couse_list_flex_wrap .couse_list_item .couse_list_flex .inner{
	width: 60%;
}
.couse_list_flex_wrap .couse_list_item .couse_list_flex .inner:last-child{
	width: 40%;
}

.couse_list_flex_wrap .couse_list_item .couse_list_flex:not(:last-child){
	margin-bottom: 1em;
}
.couse_list_flex_wrap .couse_list_item .couse_list_flex .couse_item{
	color: #a9a9a9;
	font-size: 10px;
	margin-bottom: .25em;
	font-weight: bold;}
.couse_list_flex_wrap .couse_list_item .couse_list_flex .couse_detail{
	font-size: 12px;
	font-weight: bold;
	margin-bottom: 0;
}

.couse_list_flex_wrap .couse_list_item img{
	margin-bottom: 1em;
}
.couse_list_flex_wrap .couse_list_item a{
	display: block;
	color: #006F00;
	background: #E8F5E8;
	text-align: center;
	padding: .2em 0;
	border-radius: 20px;
	font-weight: bold;
	text-decoration: none;
}
.student_reviews_wrap{
	margin-bottom: 1.75em;
}
.student_reviews_wrap h2{
	font-size: 20px;
	position: relative;
	border-bottom: 1px solid #dcdcdc;
	padding-bottom: .75em;
	margin-bottom: .75em;
	padding-left: 30px;
}
.student_reviews_wrap h2::before{
	position: absolute;
	width: 25px;
	aspect-ratio:1/1;
	top:0;
	left: 0;
	content: "";
	background: url(../img/icons8-typing-50.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.student_reviews{
	background: #f5f5f5;
	border-radius: 15px;
	border: 1px solid #E8E8E8;
	padding: 1.5em;
}

.student_reviews:not(:last-child){
	margin-bottom: 1em;
}

.student_reviews .inner{
	position: relative;
}
.student_reviews .inner .star-rating{
	position: absolute;
	top:0;
	right: 0;
}

.student_reviews .inner .star-rating .rating-number{
margin-left: 1em;	
}

.student_reviews .inner .student_reviews_ttl{
font-size: 14px;
	line-height: 1.1;
	margin-bottom: .75em;
}
.student_reviews .inner .student_reviews_ttl span{
	font-size: 12px;
	color: #696969;
}
.student_reviews .inner .student_reviews_detail{
	font-size: 12px;
	margin-bottom: .75em;
}
.student_reviews .inner .student_reviews_tag .tag-item{
	color: #005EC0;
	background: #E3F2FD;
	padding: .5em 1em;
	border-radius: 15px;
	font-size: 12px;
	font-weight: bold;
}
.student_reviews .inner .student_reviews_tag .tag-item:not(:last-child){
	margin-right: .5em;
}
#pass_result{
	margin-bottom: 1.75em;
}
#pass_result h2{
	font-size: 20px;
	position: relative;
	border-bottom: 1px solid #dcdcdc;
	padding-bottom: .75em;
	margin-bottom: .75em;
	padding-left: 30px;
}
#pass_result h2::before{
	position: absolute;
	width: 25px;
	aspect-ratio:1/1;
	top:0;
	left: 0;
	content: "";
	background: url(../img/22379314.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
#pass_result .pass_result_wrap{
	display: flex;
	gap:20px;
} 

#pass_result .pass_result_wrap .pass_result_item{
	width: calc(100%/4);
	background: #f5f5f5;
	border-radius: 10px;
	padding: 1.25em 0;
}
#pass_result .pass_result_wrap p{
	text-align: center;
	margin-bottom: 0;
}
#pass_result .pass_result_wrap p:first-child{
	color: #5B77E9;
	font-size: 25px;
	margin-bottom: .25em;
	font-weight: bold;
}
#pass_result .pass_result_wrap p:last-child{
	
	font-size: 12px;
}
#classroom{
	margin-bottom: 1.75em;
}
#classroom h2{
	font-size: 20px;
	position: relative;
	border-bottom: 1px solid #dcdcdc;
	padding-bottom: .75em;
	margin-bottom: .75em;
	padding-left: 30px;
}
#classroom h2::before{
	position: absolute;
	width: 25px;
	aspect-ratio:1/1;
	top:0;
	left: 0;
	content: "";
	background: url(../img/754689.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
#classroom .classroom_wrap{
	display: flex;
	gap:10px;
} 

#classroom .classroom_wrap .classroom_item{
	width: calc(100%/3);
}
#access_info{
	margin-bottom: 1.75em;
}
#access_info h2{
	font-size: 20px;
	position: relative;
	border-bottom: 1px solid #dcdcdc;
	padding-bottom: .75em;
	margin-bottom: .75em;
	padding-left: 30px;
}
#access_info h2::before{
	position: absolute;
	width: 25px;
	aspect-ratio:1/1;
	top:0;
	left: 0;
	content: "";
	background: url(../img/26461241.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
#access_info .access_info_wrap{
	display: flex;
	gap:10px;
} 

#access_info .access_info_wrap .access_info_item{
	width: calc(100%/2);
	background: #f5f5f5;
	border-radius: 10px;
	padding: 1em;
}

#access_info .access_info_wrap .access_info_item p{
	margin-bottom: 0;
	width: 40%;
	font-size: 12px;
	color: #696969;
}
#access_info .access_info_wrap .access_info_item p:last-child{
	width: 60%;
	color: #000;
}
#access_info .access_info_wrap .access_info_item h3{
	font-size: 16px;
	margin-bottom: 1em;
}
#access_info .access_info_wrap .access_info_item .access_info_flex:not(:last-child){
	margin-bottom: .75em;
}
#access_info .access_info_wrap .access_info_item .access_info_flex{
	display: flex;
	gap:10px;
}
#single_cta{
	display: flex;
	gap:20px;
}
#single_cta .single_cta_item{
	width: 100%;
}
#single_cta a{
	display: block;
	padding: 1rem;
	border-radius: 10px;
	text-align: center;
	text-decoration: none;
	font-size: 14px;
	font-weight: bold;
}
#single_cta a.tel{
	border: 2px solid #5B77E9;
	color: #5B77E9;
}
#single_cta a.reserve{
	color: #fff;
	background: #28A645;
}
#single_cta a.inquiry{
	background: linear-gradient(0deg, rgba(103, 123, 230, 1), rgba(117, 80, 168, 1));
	color: #fff;
}
#single_cta a span{
	position: relative;
	padding-left: 1.25rem;
}
#single_cta a span::before{
	content: "";
	width: 1rem;
	height: 1rem;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
}

#single_cta a.tel span::before{
	background-image: url(../img/tel.png);
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center;
}
#single_cta a.reserve span::before{
	background-image: url(../img/calender.png);
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center;
}
#single_cta a.inquiry span::before{
	background-image: url(../img/document.png);
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center;
}
#single_side h2.side_ttl {
	font-size: 18px;
	padding-bottom: .75em;
	margin-bottom: 1rem;
	border-bottom: 1px solid #f5f5f5;
}
.side_item:not(:last-child){
	margin-bottom: 2.25rem;
}
#contact_info .tel_info{
	text-align: center;
	font-size: 24px;
	margin-bottom: .25em;
	color: #28A645;
	font-weight: bold;
}
#contact_info .reception_hours{
	text-align: center;
	font-size: 12px;
	margin-bottom: 1.5em;
}
#contact_info .side_cta a{
	display: block;
	margin-bottom: 0;
	text-align: center;
	text-decoration: none;
	padding: .5em;
	border-radius: 10px;
	font-size: 14px;
	font-weight: bold;
}
#contact_info .side_cta a:first-child{
	background: linear-gradient(0deg, rgba(103, 123, 230, 1), rgba(117, 80, 168, 1));
	color: #fff;
}
#contact_info .side_cta a:last-child{
	border: 2px solid #5B77E9;
	color: #5B77E9;
}
#contact_info .side_cta a:not(:last-child){
	margin-bottom: .75em;
}
#class_info .class_info_item:not(:last-child){
	margin-bottom: .5em;
}
#class_info .class_info_item{
	background: #f5f5f5;
	font-size: 12px;
	display: flex;
	justify-content: space-between;
	border-radius: 10px;
	padding: .75em;
}
#class_info .class_info_item p{
	margin-bottom: 0;
}
#class_info .class_info_item p:first-child{
	font-weight: bold;
}
#nearby_schools .nearby_schools_item{
	line-height: 2.5em;
	font-size: 12px;
}
#nearby_schools .nearby_schools_item p{
	margin-bottom: 0;
}
#side_campaign .side_campaign_item{
	margin-bottom: 1rem;
	background: #FB6765;
	color: #fff;
	text-align: center;
	padding: 1rem 0;
	border-radius: 10px;
}

#side_campaign .side_campaign_item p{
	margin-bottom: 0;
	font-size: 12px;
}
#side_campaign .side_campaign_item p.campaign_ttl{
	font-size: 20px;
}
#side_campaign .side_campaign_caution{
	background: #FFF3CD;
	border-radius: 10px;
	border:1px solid #FFC72D;
	text-align: center;
	color: #825F00;
	font-size: 14px;
	padding: .75em 0;
}
#related_links .related_links_item:not(:last-child){
	margin-bottom: .25em;
	
}
#related_links .related_links_item a{
	text-decoration: none;
	font-size: 12px;
}
@media (min-width: 768px) {

}
@media (max-width: 768px) {
	
	
}
/* さらに小さな画面での調整 */
@media (max-width: 480px) {
	
}