@charset "utf-8";

html {
	/* ルートのフォントサイズを10pxに設定しておく */
	font-size: 62.5%;
	/*scroll-behavior: smooth;*/
}

body {
	/* ルートのフォントサイズを1.6em（16pxと同等のサイズ）に設定 */
	font-size: 1.6em;
	font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic","ヒラギノ角ゴ Pro W2", Hiragino Kaku Gothic Pro, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #202020;
	font-weight: 500;
}

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

}

a[href^="tel:"] {
	color: inherit;
	pointer-events: none;
	text-decoration:none;
	display: inline-block;
}

a img{ transition: .5s; }

a:hover img {
	opacity: 0.6;
}

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

a[href^="tel:"] {
	color: inherit;
	pointer-events: auto;
}

}

ul{ padding: 0; list-style-type: none;}

.pc{ display: block ; }
.sp{ display: none ; }

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

.pc{ display: none ; }
.sp{ display: block ; }

}

img{ max-width: 100%;}

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

.mt-6 {margin-top: 6rem;}
.btn {
	padding: 1rem 2rem;
	font-size: 1.6rem;
}
.font-red {color: #CC0000;}
.font-25 {font-size: 2.5rem;}
.font-24 {font-size: 2.4rem;}
.font-23 {font-size: 2.3rem;}
.font-22 {font-size: 2.2rem;}
.font-21 {font-size: 2.1rem;}
.font-20 {font-size: 2rem;}
.font-19 {font-size: 1.9rem;}
.font-18 {font-size: 1.8rem;}
.font-17 {font-size: 1.7rem;}
.font-16 {font-size: 1.6rem;}
.font-15 {font-size: 1.5rem;}
.font-14 {font-size: 1.4rem;}
.font-13 {font-size: 1.3rem;}
.font-12 {font-size: 1.2rem;}
.font-11 {font-size: 1.1rem;}
.font-10 {font-size: 1rem;}

.pc-pd15 {margin-left: 15px; margin-right: 15px;}

.mg-b2{ margin-bottom: 2rem;}
.mg-b3{ margin-bottom: 3rem;}
.mg-b4{ margin-bottom: 4rem;}
.mg-b5{ margin-bottom: 5rem;}
.mg-b6{ margin-bottom: 6rem;}
.mg-b7{ margin-bottom: 7rem;}
.mg-b8{ margin-bottom: 8rem;}
.mg-b9{ margin-bottom: 9rem;}
.mg-b10{ margin-bottom: 10rem;}
.mg-b11{ margin-bottom: 11rem;}
.mg-b12{ margin-bottom: 12rem;}
.mg-b13{ margin-bottom: 13rem;}
.mg-b14{ margin-bottom: 14rem;}
.mg-b15{ margin-bottom: 15rem;}
.mg-b16{ margin-bottom: 16rem;}

.pd-9{ padding-top: 9rem; padding-bottom: 9rem; }


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

	.mg-b2{ margin-bottom: 1rem;}
	.mg-b3{ margin-bottom: 1.5rem;}
	.mg-b4{ margin-bottom: 2rem;}
	.mg-b5{ margin-bottom: 2.5rem;}
	.mg-b6{ margin-bottom: 3rem;}
	.mg-b7{ margin-bottom: 4rem;}
	.mg-b8{ margin-bottom: 4rem;}
	.mg-b9{ margin-bottom: 5rem;}
	.mg-b10{ margin-bottom: 5rem;}
	.mg-b11{ margin-bottom: 6rem;}
	.mg-b12{ margin-bottom: 6rem;}
	.mg-b13{ margin-bottom: 7rem;}
	.mg-b14{ margin-bottom: 7rem;}
	.mg-b15{ margin-bottom: 8rem;}
	.mg-b16{ margin-bottom: 8rem;}
	
	.pd-9{ padding-top: 5rem; padding-bottom: 5rem; }

}

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

.mt-6 {margin-top: 6rem;}
.btn {
	padding: 1rem 2rem;
	font-size: 1.6rem;
}
.font-red {color: #CC0000;}
.font-25 {font-size: 2.5rem;}
.font-24 {font-size: 2.4rem;}
.font-23 {font-size: 2.3rem;}
.font-22 {font-size: 2.2rem;}
.font-21 {font-size: 2.1rem;}
.font-20 {font-size: 2rem;}
.font-19 {font-size: 1.9rem;}
.font-18 {font-size: 1.8rem;}
.font-17 {font-size: 1.7rem;}
.font-16 {font-size: 1.6rem;}
.font-15 {font-size: 1.5rem;}
.font-14 {font-size: 1.4rem;}
.font-13 {font-size: 1.3rem;}
.font-12 {font-size: 1.2rem;}
.font-11 {font-size: 1.1rem;}
.font-10 {font-size: 1rem;}

.pc-pd15 {margin-left: 15px; margin-right: 15px;}

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

header{
	border-bottom: 1px solid #eee;
}

.head{
	max-width: 1200px;
	margin: 0 auto;

	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 120px;
}

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

	.head{
		padding: 0 3rem;
	}

}

.head .call_area{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	
	/*width: 200px;*/
	/*ackground: #ccc;*/
	margin-bottom: 0;
	font-size: 1.1rem;
	color: #202020;
}

.head .call_area li{
	font-weight: bold;
	text-align: left;
}

.head .call_area li:first-child{
	height: 3.5rem;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	font-size: 1.4rem;
	/*color: #c62b2b;*/
	/*padding: 0 1rem;*/
	font-weight: bold;
	
	width: 100%;
	margin-bottom:0.8rem;
}

.head .call_area strong{
	font-size: 4.2rem;
	font-weight: 500;
}

.head .call_area i{
	font-size: 4.0rem;
	color: #0951a3;
	margin-top: 0.5rem;
}

.head .logo{
	display: flex;
	max-width: 35rem;
}

.head .logo img{
	max-width: 100%;
}

.h1_area{
	background: #0055b4;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 3rem;
	color: #fff;
}

.h1_area h1{
	font-size: 1.2rem;
	width: 120rem;
}

.h1_area h1 .pc{
	display: contents;
}

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

	.h1_area {
		padding: 0 3rem;
	}

}

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

	.head .call_area li:last-child {
		/*width: 100%;*/
	}

	.h1_area {
		padding: 0 2rem;
	}

}

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

	.h1_area {
		padding: 0;
		height: 4.2rem;
	}

	.h1_area h1 .pc{
		display: none;
	}

	.h1_area h1{
		margin-bottom: 0;
		margin-left: 1rem;
	}

}


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

nav{
	min-height: 65px;
	padding: 2rem 0;
	background: #fff;
}

.nav{
	display: flex;
	justify-content: center;
	align-items: center;
	max-width: 1200px;
	margin: 0 auto;
	
}

.nav li{
	width : -webkit-calc(100% / 5) ;
	width : calc(100% / 5) ;
	border-left: 0.1rem solid #dfdfdf;
	text-align: center;
	min-height: 40px;
	
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 2.0rem;
	font-weight: 500;
}

.nav li.sp{
	display: none;
}

.nav li a{
	width: 100%;
	min-height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 2rem;
	color: #202020;
	transition-duration: 0.5s;
	flex-wrap: wrap;
}

.nav li a:hover{
	text-decoration: none;
	background: #fff4bc;
}

.nav li a i{
	font-size: 2rem;
	margin-right: 0.5rem;
}

.nav li:nth-child(5){
	border-right: 0.1rem solid #dfdfdf;
}

nav .call_area{
	display: none;
}

.p_list{
	display: flex;
	align-items: center;

	max-width: 1200px;
	margin: 0 auto;
	margin-bottom: 6rem;
	list-style: none;
	min-height: 3.5rem;
}

.p_list li{
	font-size: 1.2rem;
	padding-right: 0.5rem;
	margin-right: 0.5rem;
}

.p_list li::before{
	content: '▶';
	margin-right: 0.5rem;
	color: #aaaaaa;
}

.p_list li:first-child::before{
	content: none;
}

.p_list li a{
	color: #212529;
}

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

	.p_list{
		padding: 0 1rem;
	}

}

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

	.nav li:nth-child(5){
		border-right: none;
	}

	.nav li.sp {
		display: block;
	}

	.nav li div{
		display: none;
	}

	.p_list{
		margin-bottom: 3rem;
	}

}


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

.main_cover{
	position: relative;
}
/*
.main_cover .taxi{
	position: absolute;
	z-index: 1;
	bottom: 0;
	max-width: 1200px;
	margin: 0 auto;
	left: 0;
	right: 0;
}

.main_cover .taxi img{
	max-width: 570px;
	width: 45vw;
	margin: 0 0 -4rem -4rem;
}
*/
/*
.main_cover .icon{
	position: absolute;
	z-index: 1;
	top: 3rem;
	max-width: 1200px;
	margin: 0 auto;
	left: 0;
	right: 0;
	text-align: right;
}

.main_cover .icon img{
	max-width: 230px;
	width: 23vw;
	margin: 0 0 -4rem -4rem;
}
*/
/*
.main_cover .catch{
	position: absolute;
	z-index: 1;
	top: 0;
	max-width: 1200px;
	margin: 0 auto;
	left: 0;
	right: 0;
	padding: 5.2rem 0 0 5.5rem;
}

.main_cover .catch h2{
	font-size: 5rem;
	font-weight: 600;
	margin-bottom: 3rem;

	text-shadow:2px 2px 0 #FFF, -2px -2px 0 #FFF,-2px 2px 0 #FFF, 1px -2px 0 #FFF,0px 2px 0 #FFF, 0 -2px 0 #FFF, -2px 0 0 #FFF, 2px 0 0 #FFF;

	font-size: calc(5rem + ((1vw - 0.64rem) * 0.7143));
}

.main_cover .catch p{
	font-size: 2rem;
	font-weight: 600;

	text-shadow:2px 2px 0 #FFF, -2px -2px 0 #FFF,-2px 2px 0 #FFF, 1px -2px 0 #FFF,0px 2px 0 #FFF, 0 -2px 0 #FFF, -2px 0 0 #FFF, 2px 0 0 #FFF;
}
*/

.about_area{
	flex-flow: row-reverse;
}

.about_area .text p{
	line-height: 2;
}

.main_slide .carousel-item {
	max-height: 700px;
}

		
.main_slide .carousel-item img.tabw{
	display: none;
}
		
.main_slide .carousel-item img.tabh{
	display: none;
}

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

	.main_slide .carousel-item img{
		width: 120% !important;
		margin-left: -10%;
	}

	.main_slide .carousel-item {
		min-height: 44rem;
		background: unset;
		display: flex !important;
		align-items: center;
	}

	.main_slide .carousel-item img{
		width: 100% !important;
		margin-left: 0%;
	}
		
	.main_slide .carousel-item img.pc{
		display: none;
	}
		
	.main_slide .carousel-item img.tabw{
		display: block;
	}

}

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

	.main_slide .carousel-item {
		min-height: 36rem;
	}

	.main_cover .catch{
		padding: 2.5rem 0 0 3rem;
	}
	
	.main_cover .catch h2 {
		margin-bottom: 2rem;
		font-size: calc(4rem + ((1vw - 0.64rem) * 0.7143));
	}
	
	.main_cover .taxi img {
		width: 35vw;
		margin: 0 0 -4rem 0rem;
	}
	
	.main_cover .icon {
		right: 2rem;
	}
		
	.main_slide .carousel-item img.tabw{
		display: none;
	}
		
	.main_slide .carousel-item img.tabh{
		display: block;
	}

}


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

	.main_cover .catch {
		padding: 2rem 0 0 2rem;
	}

	.main_cover .catch h2 {
		font-size: calc(3.5rem + ((1vw - 0.64rem) * 0.7143));
		margin-bottom: 2rem;
	}

	.main_cover .catch p {
		font-size: 1.4rem;
	}

	.main_cover .icon{
		right: 1rem;
	}

	.main_cover .icon img {
		max-width: 230px;
		width: 32vw;
		margin: 0 0 -4rem -4rem;
	}

	.main_cover .taxi img{
		width: 50vw;
		margin: 0px 1rem -3rem 1rem;
	}

	.main_slide .carousel-item {
		align-items: flex-start;
	}

	.main_slide .carousel-item img{
		width: 100% !important;
		margin-left: 0%;
	}

	.main_slide .carousel-item img.pc{
		display: none;
	}

	.main_slide .carousel-item img.tabh{
		display: none;
	}

}

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

.top_contents{
	background: url(../img/bg.jpg) no-repeat #fdfae9;
	background-size: contain;
	
	overflow: hidden;
}

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

.news_list{
	width: 100%;
	display: flex;
	justify-content: space-around;
	margin: 0;
	margin-bottom: 5rem;
}

.news_list li{
	width: 32%;
	height: 36rem;
	background: #fff;
	text-align: center;
	padding-top: 2rem;
	padding-left: 2rem;
	padding-right: 2rem;
	border-radius: 2rem;
	
	position: relative;
}

.news_list li .image{
	position: relative;
	
	max-height: 24rem;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 2rem;
	border-radius: 1.5rem;
	aspect-ratio: 3 / 2.0;
	background: #e9fcff;
}

.news_list.under li .image{
	position: relative;
	
	max-height: 24rem;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 0;
	border-radius: 1.5rem;
	aspect-ratio: 3 / 1.8;
	background: #e9fcff;
}

.news_list li .new{
	position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
	top: 0.5rem;
	left: 0.5rem;
	z-index: 1;
	width: 6rem;
	height: 6rem;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	background: #f5a321;
	border: 0.4rem solid #fff;
	font-weight: bold;
	color: #fff;
	pointer-events: none;
}

.news_list.under li .new{
	top: -0.5rem;
	left: -2rem;
	width: 5rem;
	height: 5rem;
	font-size: 1.4rem;
}

.news_list li .new img{
	cursor: pointer;
}

.news_list li img{
	width: 100%;
	height: auto;
}

.news_list .text{
	margin: 0;
	text-align: left;
}

.news_list .text p{
	font-size: 1.2rem;
	margin-bottom: 0.3rem;
}

.news_list .text a{
	color: #3c3c3c;
}

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

	.news_list li{
		height: auto;
		padding-bottom: 2rem;
	}

}

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

	.news_list li{
		width: 32%;
	}

}

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

	.news_list li{
		height: auto;
		padding: 2rem;
	}

	.news_list li img{
		width: 100%;
	}
	
	.news_list .text {
		margin: 0rem;
	}

	.news_list.under li .image {
		max-height: none;
		max-width: 10rem;
		min-width: 10rem;
	}

}

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

	.news_list.under li .new {
		top: -1.5rem;
		left: -1.5rem;
		width: 3.5rem;
		height: 3.5rem;
		font-size: 1.1rem;
		border: 0.2rem solid #fff;
	}

}


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

	.news_list {
		flex-wrap: wrap;
	}
	
	.news_list li{
		margin-bottom: 2rem;
		width: 85%;
	}
	
	.news_list li:last-child{
		margin-bottom: 0;
	}

	.news_list.under li .image {
		max-width: 12rem;
		border-radius: 1rem;
	}

}


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

.bt{
	text-align: center;
}

.bt a{
	text-align: center;
	color: #2e2e2e;
	font-weight: bold;
	
	width: 24rem;
	height: 6rem;
	
	display: flex;
	align-items: center;
	justify-content: space-around;
	
	transition: .5s;
	margin-left: auto;
	margin-right: auto;
	background: #f5ce21;
	border-radius: 6rem;
}

.bt.left a.tel,
.bt.left a.mail{
	width: 32rem;
	height: 7rem;
}

.bt.left a.tel{
	font-size: 3.4rem;
	justify-content: center;
	margin-right: 4rem;
	border: 0.2rem solid #f5a321;
    background: #fff;
	color: #f5a321;
}

.bt.left a.tel i{
	font-size: 3rem;
	margin-top: 0.5rem;
}

.bt.left a.mail{
	font-size: 1.8rem;
	font-weight: bold;
	justify-content: center;
}

.bt.white a{
	background: #fff;
}

.bt a span{
	display: flex;
	width: 2rem;
	height: 2rem;
	background:#fff;
	border-radius: 50%;
	position: relative;
}

.bt.white a span{
	background:#f5ce21;
}

.bt a span::after{
	content: '';
	position: absolute;
	width: 1rem;
	height: 1rem;
	border-radius: 50%;
	top: 0.5rem;
	left: 0.5rem;
	background: #f5ce21;
	transition: .2s;
}

.bt.left a.mail{
	background-image: linear-gradient(90deg, #f5a321, #f58f21);
	color: #fff;
	border: 0.2rem solid #fff;
}

.bt.left a.mail:hover{
	opacity: 0.6;
}

.bt.left a.mail span{
	width: auto;
	height: auto;
	background: none;
	margin-right: 1rem;
}

.bt.left a.mail span::after{
	content: none;
}

.bt.white a span::after{
	background: #fff;
}

.bt a:hover span{
	display: flex;
	width: 2rem;
	height: 2rem;
	background:#fff;
	border-radius: 50%;
	position: relative;
}

.bt.white a:hover span{
	background: #f5ce21;
}

.bt a:hover span::after{
	content: '';
	position: absolute;
	width: 1.6rem;
	height: 1.6rem;
	border-radius: 50%;
	top: 0.2rem;
	left: 0.2rem;
	background: #f5ce21;
}

.bt.white a:hover span::after{
	background: #fff;
}


.bt.left a{
	margin-left: 0;
	margin-right: auto;
}

.bt.right a{
	margin-right: 0;
}

.bt a span{
	font-size: 3rem;
	margin-right: -1rem;
}

.bt a:hover{
	text-decoration: none;
	opacity: 0.9;
}

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

	.top_trial_bt li .bt {

		margin-left: auto;
		margin-right: auto;
	}

	.bt.left a.tel {
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 2rem;
	}

}

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

	.bt.left a{
		margin-left: auto;
		margin-right: auto;
	}

	.bt.right a{
		margin-right: auto;
	}

}

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

.left_image_contents{
	display: flex;
	align-items: flex-start;
}

.left_image_contents .image{
	max-width: 80rem;
	position: relative;
}

.left_image_contents .image::after{
	position: absolute;
	content: '';
	width: 30rem;
	height: 6rem;
	background-color: #e6fcff;
	border-radius: 0 0 4rem 0;
	left: 0;
	bottom: -6rem;
}

.left_image_contents .image.none::after{
	content: none;
}

.left_image_contents .image img{
	width: 100%;
	border-radius: 0 4rem 4rem 0;
}

.left_image_contents .text{
	max-width: 60rem;
	margin-left: auto;
	margin-right: auto;
}

.left_image_contents .text h4{
	font-size: 2.8rem;
	font-weight: bold;
	font-feature-settings: "palt";
	margin-bottom: 3rem;
	line-height: 1.5;
}

.left_image_contents .text ul{
	margin-bottom: 4rem;
}

.left_image_contents .text ul li{
	display: flex;
	align-items: center;
	margin-bottom: 0.8rem;
}

.left_image_contents .text ul li:last-child{
	margin-bottom: 0;
}

.left_image_contents .text ul li span{
	margin-right: 1rem;
}

.left_image_contents .text h4.red{

}

.left_image_contents .text h4 + p{
	font-size: 1.6rem;
	margin-bottom: 4rem;
	font-weight: 500;
	line-height: 1.8;
}

.left_image_contents .text p strong{
	font-size: 2.5rem;
	color: #1f379d;
	line-height: 1.5;
}

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

	.left_image_contents .text{
		max-width: 60rem;
		margin-left: 8rem;
		margin-right: 4rem;
	}

	.left_image_contents .image::after {
		position: absolute;
		content: '';
		width: 25vw;
		height: 4vw;
		background-color: #e6fcff;
		border-radius: 0 0 4rem 0;
		left: 0;
		bottom: -4vw;
	}

}

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

	.left_image_contents {
		flex-wrap: wrap;
		justify-content: center;
	}

	.left_image_contents .image{
		max-width: 80%;
	}
	
	.left_image_contents .text {
		margin-left: 4rem;
		margin-right: 0rem;
	}
	
	.left_image_contents .text h4 {
		font-size: 3rem;
		margin-bottom: 2rem;
	}
	
	.left_image_contents .text p strong{
	font-size: 2rem;
	}

}

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

	.left_image_contents{
		flex-wrap: wrap;
	}

	.left_image_contents .image{
		max-width: 100%;
		margin-bottom: 2.5rem;
	}

	.left_image_contents .text{
		margin-left: 3rem;
		margin-right: 3rem;
	}
	
	.left_image_contents .text h4{
		font-size: 2.0rem;
		margin-bottom: 2rem;
		line-height: 1.5;
	}

	.left_image_contents .text h4 + p{
		font-size: 1.4rem;
	}

	.left_image_contents .text ul li{
		align-items: flex-start;
	}

}

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

.right_image_contents{
	display: flex;
	align-items: flex-start;
	justify-content: right;
}

.right_image_contents .image{
	max-width: 80rem;
	position: relative;
}

.right_image_contents .image::after{
	position: absolute;
	content: '';
	width: 30rem;
	height: 6rem;
	background-color: #e6fcff;
	border-radius: 0 0 0 4rem;
	right: 0;
	bottom: -6rem;
}

.right_image_contents .image img{
	width: 100%;
	border-radius: 4rem 0 0 4rem;
}

.right_image_contents .text{
	max-width: 60rem;
	margin-left: auto;
	margin-right: auto;
}

.right_image_contents.bottom .text{
	max-width: 140rem;
	width: 100%;
}

.right_image_contents .text h4{
	font-size: 2.8rem;
	font-weight: bold;
	font-feature-settings: "palt";
	margin-bottom: 3rem;
	line-height: 1.5;
}

.right_image_contents .text h4 + p{
	font-size: 1.6rem;
	margin-bottom: 4rem;
	font-weight: 500;
	line-height: 1.8;
}

.right_image_contents .text h4 + p.bottom8{
	margin-bottom: 8rem;
}

.right_image_contents .text ul{
	margin-bottom: 4rem;
}

.right_image_contents .text ul li{
	display: flex;
	align-items: center;
	margin-bottom: 0.8rem;
}

.right_image_contents .text ul li:last-child{
	margin-bottom: 0;
}

.right_image_contents .text ul li span{
	margin-right: 1rem;
}

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

	.right_image_contents .text{
		max-width: 60rem;
		margin-right: 8rem;
		margin-left: 4rem;
	}

	.right_image_contents .image::after{
		position: absolute;
		content: '';
		width: 25vw;
		height: 4vw;
		background-color: #e6fcff;
		border-radius: 0 0 0 4rem;
		right: 0;
		bottom: -4vw;
	}

}

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

	.right_image_contents .text{
		max-width: 60rem;
		margin-left: 4rem;
		margin-right: 8rem;
	}

}

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

	.right_image_contents .text {
		margin-left: 0rem;
		margin-right: 4rem;
	}
	
	.right_image_contents .text h4 {
		font-size: 3rem;
		margin-bottom: 2rem;
	}

	.right_image_contents .image {
		max-width: 35rem;
	}

}

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

	.right_image_contents{
		flex-wrap: wrap;
		flex-direction: column-reverse;
	}

	.right_image_contents .image{
		max-width: 100%;
		margin-bottom: 2.5rem;
	}

	.right_image_contents .text{
		margin-left: 3rem;
		margin-right: 3rem;
	}
	
	.right_image_contents .text h4{
		font-size: 2.2rem;
		margin-bottom: 2rem;
	}

}

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

	.right_image_contents .text h4{
		font-size: 2.0rem;
	}

	.right_image_contents .text h4 + p{
		font-size: 1.4rem;
	}

}


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

.top_lesson_area{
	display: flex;
	justify-content: space-between;
	margin-bottom: 6rem;
}

.top_lesson_area table{
	width: 47%;
	border-width: 0.1rem 0 0 0.1rem;
	border-style: solid;
	border-color: #d4d4d4;
	text-align: center;
	font-weight: 500;
}

.top_lesson_area table tr{

}

.top_lesson_area table tr th{
	border-width: 0 0.1rem 0.1rem 0;
	border-style: solid;
	border-color: #d4d4d4;
	padding: 0.8rem;
	height: 4rem;
}

.top_lesson_area table.weekdays tr th{
	background: #e6fcff;
	color: #0154b4;
}

.top_lesson_area table.weekend tr th{
	background: #fff8cc;
	color: #f5a321;
}

.top_lesson_area table tr td{
	border-width: 0 0.1rem 0.1rem 0;
	border-style: solid;
	border-color: #d4d4d4;
	padding: 0.8rem;
}

.top_lesson_area table tr td.time{
	width: 30%;
}

.top_lesson_area table tr td.practice{
	padding-left: 0;
	padding-right: 0;
}

.top_lesson_area table tr td small{
	/* font-size: 70%; */
	font-size: 1.3rem;
	font-weight: 500;
}

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

	.top_lesson_area table{
		width: 49%;
	}

	.top_lesson_area table tr td.time{
		width: 25%;
	}

	.top_lesson_area table tr td small {
		font-size: 1.2rem;
	}

}

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

	.top_lesson_area {
		justify-content: center;
		flex-wrap: wrap;
		margin-bottom: 4rem;
	}

	.top_lesson_area table{
		width: 80%;
	}

	.top_lesson_area table:first-child{
		margin-bottom: 2rem;
	}

	.top_lesson_area table tr td.time{
		width: 34%;
	}

}

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

.top_access_contents{
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.top_access_contents .text{
	width: 40rem;
	margin-left: 8rem;
	margin-right: 7rem;
}

.top_access_contents .text h4{
	font-size: 3.5rem;
	font-weight: bold;
	/*border-bottom: 0.2rem solid #222;*/
	padding-bottom: 2rem;
	margin-bottom: 2rem;
}

.top_access_contents .text h4 small{
	vertical-align: 1rem;
}

.top_access_contents .text ul{
	margin-top: 1.5rem;
	margin-bottom: 0;
}

.top_access_contents .text ul li{
	padding-top: 0.6rem;
	padding-bottom: 0.6rem;
}

.top_access_contents .text ul li{
	display: flex;
	flex-wrap: wrap;
}

.top_access_contents .text ul li span{
	width: 2.8rem;
	height: 2.8rem;
	position: relative;
	background: #51b401;
	color: #fff;
	border-radius: 0.3rem;
    display: flex;
    justify-content: center;
    align-items: center;
	margin-right: 1rem;
}

.top_access_contents .text .tel {
	font-size: 2rem;
}

.top_access_contents .text .tel a{
	font-size: 3rem;
	margin-left: 0.5rem;
}

/*
.top_access_contents .text ul li span::after{
	content: ":";
	position: absolute;
	right: 1rem;
}
*/
.top_access_contents .map{
	width: 60rem;
	height: 40rem;
}

.top_access_contents .map iframe{
	width: 100%;
	height: 100%;
}

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

	.top_access_contents .text{
		margin-left: 4rem;
		margin-right: 4rem;
	}

}

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

}

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

	.top_access_contents .text{
		width: 55rem;
	}

}

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

	.top_access_contents .text{
		margin-left: 0rem;
	}

	.top_access_contents .text ul li{
		flex-wrap: wrap;
	}

	.top_access_contents .text ul li span {
		/* width: 15rem; */
	}

}

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

	.top_access_contents .text ul{
		margin-bottom: 4rem;
	}

}

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

	.top_access_contents{
		flex-wrap: wrap;
		/* flex-direction: column-reverse; */
	}

	.top_access_contents .map{
		width: 100%;
		height: 28rem;
		margin-bottom: 0;
	}

	.top_access_contents .text{
		margin-left: auto;
		margin-right: auto;
		width: 90%;
		font-size: 1.4rem;
		line-height: 1.8;
	}
	
	.top_access_contents .text h4{
		font-size: 2.5rem;
		margin-bottom: 2rem;
		padding-bottom: 0;
	}

	.top_access_contents .text ul li span {
		width: 3rem;
	}

	.top_access_contents .text ul li:last-child{
		padding-bottom: 0rem;
		margin-bottom: 0;
	}

}

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

.contact_banner{
	
}

.contact_banner .pc{
	
}

.contact_banner .pc img{
	width: 100%;
}

.contact_banner .sp{
	width: 100%;
	background: url(../img/contact_banner_bg.jpg) no-repeat #183692;
	background-size: cover;
	padding: 0.4rem 0;
}

.contact_banner .sp .line{
	border-top: 0.2rem solid #fff;
	border-bottom: 0.2rem solid #fff;
	padding: 2.5rem 0;
	text-align: center;
}

.contact_banner .sp h4{
	color: #fff;
	font-size: 1.8rem;
}

.contact_banner .sp .call_area{
	width: max-content;
	margin-top: 0;
	margin-bottom: 1rem;
	margin-left: auto;
	margin-right: auto;
}

.contact_banner .sp .call_area .call{
	display: flex;
	align-items: center;
	justify-content: center;
}

.contact_banner .sp .call_area span{
	color: #fff;
	font-size: 3rem;
}

.contact_banner .sp .call_area a{
	font-size: 3.2rem;
	font-weight: bold;
	color: #fff;
}

.contact_banner .sp .call_area .open{
	font-size: 1.2rem;
	font-weight: bold;
	color: #fff;
}

.contact_banner .sp .line img{
	width: 80%;
}

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


}

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

.h3_title{
	width: 100%;
	margin: 0 auto 7rem;
	position: relative;
}

.h3_title.center{
	text-align: center;
}

.h3_title.right_arrow::after{
	content: '';
	position: absolute;
	top: 100%;
	right: 0;
	width: 0;
	height: 0;
	border-top: 6rem solid #dc0096;
	border-left: 6rem solid transparent;
	border-right: 0rem solid transparent;
}

.h3_title.left_arrow::after{
	content: '';
	position: absolute;
	top: 100%;
	left: 0;
	width: 0;
	height: 0;
	border-top: 6rem solid #dc0096;
	border-left: 0rem solid transparent;
	border-right: 6rem solid transparent;
}

.h3_title h3{
	font-size: 4.0rem;
	/*border-top: 3px solid #119a90;*/
	font-weight: 600;
	position: relative;
	/*font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;*/
	margin-top: 0.4rem;
	margin-top: 0;
	margin-bottom: 0;
}

.h3_title h3 small{
	vertical-align: 1.5rem;
}

.h3_title p{
	color: #0154b4;
	font-size: 1.6rem;
	line-height: 0.8;
	max-width: 120rem;
	margin-left: auto;
	margin-right: auto;
}

.h3_title p::after{
	content: '●';
	color: #f5ce21;
	margin-left: 0.3rem;
}

.h3_title p.orange::after{
	content: '●';
	color: #f5a321;
}

.h3_title p span::after{
	content: '●';
	margin-left: 1rem;
}

.h3_title{
	background: none;
	margin-bottom: 8rem;
}

.h3_title h3{
	margin-bottom: 1.5rem;
}

.h3_title p{
	color: #0054b4;

	font-weight: bold;
	line-height: 0.8;
	margin-bottom: 0;
}

.h3_title.news{
	padding-bottom: 3rem;
	height: auto;
}

.h3_title.news h3{
	font-size: 3rem;
	margin-left: 3rem;
	margin-right: 3rem;
}

.h3_title.news .news{
	color: #fff;
	font-size: 1.4rem;
	margin-top: 1rem;
}

.h3_title.news p{
	font-size: 8rem;
	font-weight: 100;
}

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

	.h3_title h3{
		
	}

}

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

	.h3_title{
		margin-bottom: 6rem;
	}

	.h3_title p {
		
	}

	.h3_title h3{

	}

}

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

	.h3_title{
		/*height: 12rem;*/
		margin-bottom: 3rem;
		padding-top: 0;
		/* padding-bottom: 2rem; */
		padding-left: 0;
		padding-right: 0;
	}

	.top_sns_contents .h3_title{
		text-align: center;
	}

	.h3_title.top_sp_title{
		margin-bottom: 0;
	}

	.news_area .h3_title {
		margin-bottom: 2rem;
	}

	.news_area .h3_title p{
		/* font-size: 5rem; */
		margin-bottom: 0;
	}

	.h3_title h3 {
		padding-top: 0rem;
		font-size: 7.3vw;
		margin-bottom: 1.0rem;
	}
	
	.h3_title h3 small{
		vertical-align: 0.8rem;
	}

	.h3_title.right_arrow::after{
		content: none;
	}

	.h3_title.left_arrow::after{
		content: none;
	}

	.h3_title p{
		font-size: 1.6rem;
	}
	
	.h3_title.news h3{
		font-size: 2.3rem;
		margin-left: 2rem;
		margin-right: 2rem;
	}
	
	.h3_title.news p {
		font-size: 1.4rem;
		margin-bottom: 0;
	}

}

.content{
	width: 100%;
}

.content#lesson{
	padding-top: 8rem;
	margin-top: -8rem;
}

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

	.content#lesson{
		padding-top: 4rem;
		margin-top: -4rem;
	}

}

.content.news_area{
	width: 100%;
	background: url(../img/news_area_bg.jpg) no-repeat;
	background-size: cover;
}

.content section{
	max-width: 120rem;
	margin-left: auto;
	margin-right: auto;
	padding-top: 15rem;
	padding-bottom: 15rem;
}

.content section.top_none{
	padding-top: 0rem;
}

.content section.bottom_none{
	padding-bottom: 0rem;
}

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

	.content section{
		padding-left: 3rem;
		padding-right: 3rem;
	}

}

.content.news_area section{
	/*margin-bottom: 5rem;*/
}

.content section.width100{
	max-width: 100%;
	padding-left: 0;
	padding-right: 0;
}

#content{
	margin-left: 15px;
	margin-right: 15px;
}

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

	.content section{
		/* padding: 0; */
		/* margin-bottom: 6rem; */
	}
	
	.content.news_area{
		background-size: cover;
	}

	.contact_banner {
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}

}


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


/* Bootstrap 4 カスタマイズ */

.lead{
	font-size: 2.5rem;
	margin-bottom: 2rem;
	font-weight: 600;
}


.contents{
	width: 100%;
	margin: 0 auto;
	
}

.contents .left_area{
	width: 850px;
}

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

.top_bt{
	background: #bf5454;
	width: 250px;
	height: 70px;
	border-radius: 5rem;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	
	transition: 0.5s ;
}

.top_bt:hover{
	text-decoration: none;
	color: #fff;
	background: #d77777;
}
/*----------------------*/
	
.page_top{
	position: fixed;
	bottom: 1rem;
	right: 1rem;
	z-index: 2;
}
	
.page_top a{
	display: flex;
	align-items: center;
	justify-content: center;
	background: #f5ce21;
		
	/*border-radius: 50rem;*/
	width: 4rem;
	height: 4rem;
	color: #fff;
	text-decoration: none;
	transition: 0.5s;
	border: 2px solid #fff;
	border-radius: 50%;
}

.page_top a:hover {
    background: #4c62c0;
}

.page_top a:hover{
	background: #ed932d;
}

.page_top a i{
	font-size: 5rem;
}

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

.about_area .text {
	width: 45%;
}


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

	.about_area .text {
		width: 100%;
	}

}

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

.contact_bar{
	background: #203e96;
	padding-top: 5rem;
	padding-bottom: 5rem;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}

.contact_bar .inside{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	max-width: 120rem;
	width: 100%;
	margin-left: 4rem;
	margin-right: 4rem;
}

.contact_bar .inside .call{
	display: flex;
	align-items: end;
	flex-wrap: wrap;
}

.contact_bar .inside .call > div{
	margin-right: 3rem;
}

.contact_bar .inside .call div.title{
	color: #fff;
	font-weight: bold;
}

.contact_bar .inside .call div.title span{
	margin-left: 1rem;
	letter-spacing: 0.3rem;
}

.contact_bar .inside .call a{
	color: #fff;
	font-size: 5rem;
	font-weight: 500;
	line-height: 1;
	display: flex;
}

.contact_bar .inside .call a i{
	margin-top: 0.7rem;
	font-size: 4.5rem;
}

.contact_bar .inside .call ul{
	width: 36rem;
	display: flex;
	flex-wrap: wrap;
	color: #fff;
	margin-bottom: 0;
}

.contact_bar .inside .call ul li{
	width: 50%;
	display: flex;
	font-size: 1.4rem;
	padding-top: 0.2rem;
	padding-bottom: 0.2rem;
}

.contact_bar .inside .call ul li span{
	font-size: 1.2rem;
	border: 0.1rem solid #fff;
	border-radius: 0.3rem;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 5.5rem;
	height: 2.5rem;
	margin-right: 1rem;
}

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

footer{
	background: #f1f1f1;
}

.footer_banner{
	width: 100%;
	
	display: flex;
	align-items: center;
	padding: 6rem 0;
/*
	justify-content: center;
	background: #ededed;
	margin: 8rem 0 0 0;
*/
	justify-content: flex-start;
	max-width: 128rem;
	flex-wrap: wrap;
	margin: 0 auto 0;
}

.footer_banner li{
	margin: 0;
/*
	margin-left: 1rem;
	margin-right: 1rem;
*/
	padding-left: 1rem;
	padding-right: 1rem;
	margin-top: 1rem;
	margin-bottom: 1rem;
	width: 25%;
	text-align: center;
}

.footer_banner li a{
	transition-duration: 0.5s;
}

.footer_banner li a:hover{
	opacity: 0.6;
}

.footer_banner li img{
	max-width: 100%;
}

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

	.footer_banner{
		width: 90%;
		flex-wrap: wrap;
	}

	.footer_banner li {
		max-width: 24rem;
	}

	.footer_banner li:nth-child(1),
	.footer_banner li:nth-child(2),
	.footer_banner li:nth-child(3) {
		margin-bottom: 2rem;
	}

}

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

	.footer_banner li {
		max-width: 20rem;
	}

	.footer_banner li:nth-child(1),
	.footer_banner li:nth-child(2),
	.footer_banner li:nth-child(3) {
		margin-bottom: 2rem;
	}

	.footer_banner li img{
		width: 100%;
	}

}


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

	.footer_banner {
		width: 100%;
		flex-wrap: wrap;
		justify-content: space-between;
		padding-left: 5%;
		padding-right: 5%;
		margin-top: 6rem;
	}

	.footer_banner img{
		width: 100%;
	}

	.footer_banner li {
		width: 47%;
		margin-bottom: 2rem;
		margin-left: 0;
		margin-right: 0;

		padding-left: 0;
		padding-right: 0;
		margin-top: 0;
	}

	.footer_banner li:nth-child(5),
	.footer_banner li:nth-child(6){
		/*margin-bottom: 0;*/
	}

}


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

.footer_link{
	width: 50%;
	display: flex;
	justify-content: end;
	align-items: center;
	font-size: 1.8rem;
	height: auto;
	margin: 1rem 0;
	color: #fff;
}

.footer_link a{
	color: #202020;
}

.footer{
	border-top: 1px solid #fff;
	background: #fff;
	padding-top: 5rem;
}

.footer .footer_area{
	max-width: 1200px;
	display: flex;
	justify-content: space-between;
	margin: 0 auto 5rem;
}

.footer .footer_area > ul{
	display: flex;
	flex-wrap: wrap;
/*
	justify-content: center;
	align-items: center;
*/
	width: 50%;
}

.footer .footer_area ul.footer_data{
	width : 50%;
	margin: 0;
	align-items: center;
}

.footer .footer_area ul.footer_link{
	width : 100% ;
}

.footer .footer_area ul.footer_link li{
	/*width : -webkit-calc(100% / 6) ;*/
	/*width : calc(100% / 6) ;*/
}

.footer .footer_area ul.footer_link li{
	margin: 0 0 0 5rem;
}

.footer .footer_area ul.footer_link.lineup li{
	margin: 0 0 0 6.3rem;
}

.footer .footer_area ul.footer_data > li:first-child{
	width: 100%;
	margin-right: 2rem;
}

.footer .footer_area ul.footer_data > li:last-child{
	color: #fff;
}

.footer .footer_area ul.footer_data > li:last-child{
	/*width: 70%;*/
}

.footer .footer_area ul.footer_data > li:last-child ul li{
	display: flex;
	justify-content: space-between;
	font-size: 1.6rem;
}

.footer .footer_area ul.footer_data > li:last-child ul li div:first-child{
	font-size: 3rem;
	font-weight: normal;
}

.footer .footer_area ul.footer_data > li:last-child ul li div:last-child{
	font-size: 2rem;
}

.footer .footer_area ul.footer_data > li:last-child h4{
	font-size: 2rem;
	font-weight: bold;
	margin-bottom: 1rem;
}

.footer .footer_area ul.footer_data > li:last-child p{
	font-size: 3rem;
	font-weight: normal;
	margin-bottom: 0;
}

.footer .footer_area ul.footer_data > li:last-child p a{
	color: #fff;
	transition: .5s;
}

.footer .footer_area ul.footer_data > li:last-child p a:hover{
	opacity: 0.6;
}

.footer ul li.logo img{
	max-width: 26rem;
	width: 100%;
}

.footer ul li.sns img{
	max-width: 2.8rem;
	width: 100%;
}

.footer ul.footer_data li:last-child{
	font-size: 2rem;
	font-weight: bold;
}

.footer ul.footer_data li:last-child span{
	font-size: 1.2rem;
}

.footer .copy{
	text-align: center;
	font-size: 1.4rem;
	padding: 2.5rem 0;
	background: #fff8cc;
	color: #202020;
	border-top: 0.1rem solid #fff;
}

.footer .copy a{
	color: #202020;
}

.follow_sp{
	display: none;
}

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

	.footer_area{
		padding-left: 3rem;
		padding-right: 3rem;
	}
	
	.footer .footer_area ul.footer_link {
		width: 80%;
	}
	
	.footer .footer_area ul.footer_link li {
		/* margin: 0 1.5rem; */
	}

}

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

	.footer .footer_area ul.footer_data > li:last-child {
		width: 50%;
	}
	
	.footer .footer_area ul.footer_link {
		width: 100%;
	}

}

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

	.footer .footer_area ul.footer_link.lineup li{
		margin: 0 0 0 4.3rem;
	}

	.footer .footer_area ul.footer_link li{
		margin: 0 0 0 2.0rem;
	}

}
/*
@media screen and ( max-width:768px ){

	.footer .footer_area {
		max-width: 100%;
		flex-wrap: wrap;
	}
	
	.footer .footer_area ul.footer_data {
		width: auto;
		margin: 0 auto;
		justify-content: center;
	}
	
	.footer .footer_area ul.footer_link {
		width: 90%;
		margin: 0 auto;
		justify-content: center;
	}

	.footer .footer_area ul.footer_data > li:last-child {
		width: auto;
	}

	.footer_navi{
		width: 100%;
	}

	.footer ul li img {
		max-width: 30rem;
	}

	.footer .copy .sp{
		display: block;
	}

}
*/

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

	.footer {
		margin-bottom: 6.2rem;
	}

	.footer .footer_area{
		max-width: 100%;
		flex-wrap: wrap;
		padding-left: 2rem;
		padding-right: 2rem;
	}

	.footer .footer_area ul.footer_data {
		width: 100% !important;
		margin: 0;
		margin-bottom: 8rem;
	}

	.footer .footer_area ul.footer_data > li:first-child {
		width: 100%;
		margin-right: 0;
	}

	.footer .footer_area .footer_navi {
		width: 100%;
	}

	.footer_link{
		width: 100%;
	}

	.footer .footer_area ul.footer_link {
		width: 100%;
		display: flex;
		justify-content: space-between;
		font-size: 1.5rem;
	}

	.footer .footer_area ul.footer_link.pc {
		display: none;
	}
	
	.footer .footer_area ul.footer_link li {
		width: 50%;
		width: -webkit-calc(100% / 2.1);
		width: calc(100% / 2.1);
		margin: 0;
		padding: 0.5rem 0;
	}
/*
	.footer .footer_area ul.footer_link li:nth-child(odd) {
		width: 45%;
	}

	.footer .footer_area ul.footer_link li:nth-child(even) {
		width: 55%;
	}
*/	
	.footer .footer_area ul.footer_data > li:last-child {
		width: 100%;
	}
	
	.footer .footer_area ul.footer_data > li:first-child {
		width: 65%;
		margin: 0 auto 1rem;
	}
	
	.footer .footer_area ul.footer_data > li:last-child ul li {
		justify-content: center;
		flex-wrap: wrap;
	}
	
	.footer .footer_area ul.footer_data > li:last-child ul li div:first-child {
		width: 100%;
	}
	
	.footer .footer_area ul.footer_data > li:last-child p{
		font-size: 4rem;
		line-height: 0;
	}
	
	.footer .copy {
		font-size: 1.2rem;
	}

	.follow_sp{
		display: flex /*!important*/;
		align-items: center;
		height: 6rem;
		margin: 0;
		
		position: fixed;
		bottom: 0;
		width: 100%;
		background: #0055b4;
		z-index: 4;
	}

	.follow_sp li {
		width: 40%;
	}
	
	.follow_sp li a{
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		border: 0.2rem solid #fff;
		color: #0055b4;

		background: #fff;

		border-radius: 0.3rem;
		justify-content: center;
		font-weight: bold;
		font-size: 1.4rem;
		height: 4.5rem;
		margin-left: 1rem;
		
		text-decoration: none;
		
		position: relative;
	}
	
	/* .follow_sp li a:before{
		border: 0.1rem solid #1f379d;
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	} */
	
	.follow_sp li a span{
		margin-right: 0.5rem;
	}

	.footer_link a{
		display: flex;
		justify-content: center;
		width: 100%;
		border-bottom: 0.1rem solid #ccc;
		/* border-radius: 4rem; */
		font-size: 1.4rem;
		padding: 0.4rem 0.6rem;
	}

	/* .footer_link a::before{
		content: 'ー';
		color: #ccc;
	} */

}

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

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


}



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

	.head {
		padding: 0 1rem;
	}

	.head .logo h1 {
		max-width: 30rem;
		margin-right: 1rem;
	}


	.head .call_area strong {
		font-size: 3.5rem;
	}

	.nav li a {
		padding: 0 1rem;
	}
	
	.p_list {
		padding: 0 1rem;
	}

	.contents {
		max-width: 820px;
		flex-wrap: wrap;
	}
	
	.contents .left_area {
		width: 100%;
	}
	
	.contents .right_area {
		width: 100%;
		border-bottom: 4px solid #fff;
	}

	.top_about {
		background: url(../img/top/bg.png) no-repeat 7rem;
		padding: 6rem 13rem;
	}
	
	.page_top a {
		width: 55px;
		height: 55px;
	}
/*	
	.footer_link {
		flex-wrap: wrap;
		height: auto;
		padding: 2rem 0;
		line-height: inherit;
	}
*/
}


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

	.head {
		flex-wrap: wrap;
		height: auto;
		padding: 1.2rem 1rem;
	}

	.head .logo {
		flex-wrap: wrap;
		justify-content: left;
		align-items: center;
	}
	
	.head .logo div {
		/*max-width: 80%;*/
		max-width: 23rem;
	}
	
	.head .logo div img {
		width: 100%;
	}
	
	.head .logo p {
		font-size: 1.2rem;
		min-width: 80px;
	}
	
	.head .logo div {
		font-size: 1.1rem;
	}
	
	.head .logo div span {
		font-size: 1.1rem;
		font-weight: normal;
	}
	
	.head .call_area {
		align-items: center;
		margin: 0 auto 2rem;
		display: none;
	}
	
	/*----------------------*/
	
	.nav {
		flex-wrap: wrap;
		width: auto;
		max-width: none;
	}
	
	.nav li{
		width: 100%;
		border-bottom: 1px solid #ddd;
		border-left: none;
		padding: 1rem 0;
		font-size: 1.8rem;
	}
	
	.nav li a {
		justify-content: left;
		padding: 0;
	}
	
	.nav li:last-child {
		border-right: none;
	}
	
	nav .call_area{
		display: block;
		margin: 2rem;
		border-top: 1px dotted #ddd;
		border-bottom: 1px dotted #ddd;
		padding: 1rem 0.5rem 0.5rem;
	}
	
	nav .call_area li:last-child {
		display: flex;
		align-item: center;
		font-size: 2.2rem;
		align-items: center;
	}
	
	nav .call_area li:last-child a{
		/* color: #fff; */
	}
	
	/*----------------------*/

	.p_list {
		border-top: 1px solid #eee;
		/*border-bottom: 1px solid #eee;*/
		padding-left: 2rem;
		padding-right: 2rem;
		flex-wrap: wrap;
	}

	.contents {
		flex-wrap: wrap;
	}
	
	.contents .left_area {
		width: 100%;
	}
	
	.contents .right_area {
		width: 100%;
		border-bottom: 4px solid #fff;
	}

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

	.page_top {
		bottom: 1rem;
		right: 1rem;
		z-index: 15;
	}
	
	.page_top a {
		width: 40px;
		height: 40px;
	}
	
	.page_top a i {
		font-size: 4rem;
	}
	
	.footer_link {
		flex-wrap: wrap;
		height: auto;
	}
	
	.footer_link li{
		width: 50%;
		margin: 0;
		padding: 0.75rem 0 0.75rem;
		
		position: relative;
		/*border-bottom: 1px solid #fff;*/
	}
/*
	.footer_link li::before{
		content: "";
		bottom: 42%;
		right: 10px;
		position: absolute;
		z-index: 100;
		display: block;
		width: 10px;
		height: 10px;
		border-top: solid 3px #ccc;
		border-right: solid 3px #ccc;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
*/
	.footer ul {
		flex-wrap: wrap;
	}
	
	.footer ul li:first-child {
		width: 100%;
		margin-right: 0;
		margin-bottom: 1.5rem;
	}
	
	.footer ul.footer_data li:last-child {
		width: 100%;
		text-align: center;
	}

}

/* スマートフォン　グローバルナビ */
@media screen and ( max-width:559px ){

.global-nav {
	position: fixed;
	right: -320px; /* これで隠れる */
	top: 0;
	width: 280px; /* スマホに収まるくらい */
	height: 100vh;
	padding-top: 40px;
	background-color: #fff;
	transition: all .6s;
	z-index: 200;
	overflow-y: auto; /* メニューが多くなったらスクロールできるように */
}
.hamburger {
	position: fixed;
	right: 0.5rem;
	top: 0.5rem;
	width: 40px; /* クリックしやすいようにちゃんと幅を指定する */
	height: 40px; /* クリックしやすいようにちゃんと高さを指定する */
	cursor: pointer;
	z-index: 300;
	background: #f5ce21;
	border: 0.1rem solid #fff;
	border-radius: 50%;
}
.global-nav__list {
	margin: 0 2rem;
	padding: 0;
	list-style: none;
}
.global-nav__item {
	text-align: center;
	padding: 0 14px;
}
.global-nav__item a {
	display: block;
	padding: 8px 0;
	border-bottom: 1px solid #eee;
	text-decoration: none;
	color: #111;
}
.global-nav__item a:hover {
	background-color: #eee;
}
.hamburger__line {
	position: absolute;
	left: 10px;
	width: 18px;
	height: 2px;
	background-color: #ffffff;
	transition: all .6s;
}
.hamburger__line--1 {
	top: 13px;
}
.hamburger__line--2 {
	top: 19px;
}
.hamburger__line--3 {
	top: 25px;
}
.black-bg {
	position: fixed;
	left: 0;
	top: 0;
	width: 100vw;
	height: 100vh;
	z-index: 100;
	background-color: #000;
	opacity: 0;
	visibility: hidden;
	transition: all .6s;
	cursor: pointer;
}
/* 表示された時用のCSS */
.nav-open .global-nav {
	right: 0;
}
.nav-open .black-bg {
	opacity: .8;
	visibility: visible;
}
.nav-open .hamburger__line--1 {
	transform: rotate(45deg);
	top: 20px;
}
.nav-open .hamburger__line--2 {
	width: 0;
	left: 50%;
}
.nav-open .hamburger__line--3 {
	transform: rotate(-45deg);
	top: 20px;
}


}/* スマートフォン　グローバルナビ */


/*---------------------------------------------------------------------------------------------*/
/* 下層ページ共通 */


/*------*/

.sub_contents{
	width: 100%;
}

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

	.sub_contents{
		padding: 0 3rem;
	}

}

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

	.sub_contents{
		padding: 0;
	}

}

/*---------------------------------------------------------------------------------------------*/
/* お知らせ news */

.Page.navigation.example{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.Page.navigation.example span{
	/*width: 5rem;*/
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0.5rem;
	padding: 1rem 2rem;
	
	border-radius: 0.5rem;
	background: #ddd;
}

.Page.navigation.example a{
	/*width: 8rem;*/
	display: flex;
	justify-content: center;
	align-items: center;
	/*border: 1px solid #ccc;*/
	margin: 0.5rem;
	padding: 1rem 2rem;
	
	border-radius: 0.5rem;
	background: #3ea68b;
	color: #fff;

	transition-duration: 0.5s;
}

.Page.navigation.example a:hover{
	opacity: 0.6;
	text-decoration: none;
}

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

	.Page.navigation.example span{
		padding: 1rem 1.2rem;
	}

	.Page.navigation.example a{
		padding: 1rem 1.2rem;
	}

}

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

.news_list.list_area{
	flex-wrap: wrap;
	width: 100%;
	margin: 0 auto 8rem;
}

.news_list.list_area li{
	border-bottom: 1px dotted #ccc;
	margin-left: 2rem;
	/*margin-bottom: 2rem;*/
	width: 100%;
	height: auto;
	display: flex;
	padding-top: 0;
	padding-bottom: 3rem;
	margin-bottom: 3rem;
	align-items: center;
	background: none;
}

.news_list.list_area.under li{
	margin-left: 0;
	padding-left: 0;
	padding-right: 0;
	border-radius: 0;
}

.news_list.list_area li img{
	margin: 0rem;
	transition-duration: 0.5s;
	max-width: 20rem;
	height: auto;
}

.news_list.list_area li .text{
	margin-left: 4rem;
}

.news_page_btn{
	margin-top: 10rem;
}

.news_page_btn .btn-primary{
	background-color: #f5ce21;
	border-color: #f5ce21;
	transition: 0.5s;
	border-radius: 5rem;
	font-weight: bold;
}

.news_page_btn .btn-primary:hover{
	opacity: 0.6;
}

.news_page_btn .btn-primary a{
	/* color: #fff; */
	color: #2e2e2e;
}

.news_contents{
	max-width: 90rem;
	margin: 0 auto;
}

.wp-block-image img {
	max-width: 100%;
	height: auto;
}

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

	.news_list li{
		width: 230px;
		height: auto;
		padding: 2rem;
	}

	.news_list li img{
		width: 100%;
		height: auto;
	}
	
	.news_list .text {
		margin: 0rem;
	}
	
	.news_list.list_area .text{
		margin: 0 2rem;
	}
	
}

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

	.news_contents {
		/*width: 85%;*/
	}

	.news_list {
		flex-wrap: wrap;
		margin-bottom: 3rem;
	}
	
	.news_list li{
		margin-bottom: 2rem;
		width: 32%;
	}
	
	.news_list li img {
		width: 100%;
		height: auto;
	}
	
	.news_list li:last-child{
		margin-bottom: 2rem;
	}

	.news_page_btn > div{
		width: 100%;
	}
	
	.news_list.list_area .text {
		margin: 0;
	}
	
	.news_list.list_area li .text{
		margin-left: 2rem;
		line-height: 1.4;
	}

}

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

	.main_cover .icon img {
		width: 32vw;
	}
	
	.news_list li{
		margin-bottom: 2rem;
		width: 80%;
	}
	
	.news_list li:last-child {
		margin-bottom: 0;
	}

	.news_list.list_area {
		flex-wrap: wrap;
		width: 100%;
		margin: 0 auto 3rem;
	}

	.news_list.list_area li a img{
		margin: 0 0 0 0;
		transition-duration: 0.5s;
		width: 100px;
		height: auto;
	}

	.news_list.list_area li {
		border-bottom: 1px dotted #ccc;
		margin-left: 0;
		margin-right: 0;
		margin-bottom: 2rem;
		width: 100%;
		height: auto;
		display: flex;
		padding: 0 0 2rem;
		align-items: start;
	}
	
	.news_list li .new {
		/* width: 5rem; */
	}
	
	.news_bt {
		text-align: center;
		margin: 3rem auto 0;
		width: 60%;
	}

	.news_list li .new img{
		max-width: 5rem;
	}

}

/*-------*/

.experience{
	max-width: 100rem;
	margin-left: auto;
	margin-right: auto;
	/*margin-bottom: 8rem;*/
	margin-bottom: 12rem;
	background: #0951a3;
}

.experience_list{
	display: flex;
	max-width: 100rem;
	margin-left: auto;
	margin-right: auto;
}

.experience_list img{
	width: 100%;
}

.experience_list li:nth-child(1){
	width: 49.4%;
}

.experience_list li:nth-child(2){
	max-width: 50.6rem;
	width: 50.6%;
}

.experience_list li:nth-child(2) .mail_bt{
	max-width: 45rem;
	margin-right: 5.6rem;
}

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

	.experience{
		max-width: 90%;
		background: #0054b4;
		margin-bottom: 6rem;
	}

	.experience .mail{
		padding: 2rem 2.5rem 3.5rem;
	}

}


/*---------------------------------------------------------------------------------------------*/
/* 卓球場紹介 field */

.facility_list{
	display: flex;
	justify-content: space-between;
	width: 100%;
	flex-wrap: wrap;
}

.facility_list li{
	max-width: 48%;
}

.facility_list li:nth-child(1),
.facility_list li:nth-child(2){
	margin-bottom: 4rem;
}

.facility_list li:nth-child(3),
.facility_list li:nth-child(4),
.facility_list li:nth-child(5){
	max-width: 30%;
}

.facility_list li div{
	background: #ccc;
	width: 100%;
	margin-bottom: 1.5rem;
}

.facility_list li div img{
	width: 100%;
}

.facility_list li h4{
	font-size: 1.8rem;
	text-align: center;
	font-weight: bold;
	background: #0055b4;
	color: #fff;
	padding: 1rem;
	border-bottom: 0.4rem solid #f5ce21;
}

.facility_list li h4 + p{
	font-size: 1.2rem;
	text-align: right;
}

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

	.facility_list li:nth-child(1), .facility_list li:nth-child(2) {
		margin-bottom: 2rem;
	}

	.facility_list li:nth-child(3), .facility_list li:nth-child(4), .facility_list li:nth-child(5) {
		max-width: 32%;
		margin-bottom: 0rem;
	}

	.facility_list li h4{
		font-size: 1.4rem;
	}

	.facility_list li h4 + p{
		margin-bottom: 0rem;
	}

}

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

	.facility_list{
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.facility_list li{
		margin-bottom: 3rem;
	}

	.facility_list li:last-child{
		margin-bottom: 0;
	}

	.facility_list li h4 + p{
		font-size: 0.8rem;
	}

	.facility_list li div{
		margin-bottom: 0.5rem;
	}

}

/*------*/

.exterior_list{
	width: 100%;
	display: flex;
}

.exterior_list li{
	margin: 1rem;
}

.exterior_list li .card-body{
	text-align: center;
	color: #20379d;
	font-weight: bold;
}

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

	.exterior_list{
		flex-wrap: wrap;
		justify-content: space-around;
	}

	.exterior_list li:first-child{
		margin-top: 0rem;
	}

	.exterior_list li:last-child{
		margin-bottom: 0rem;
	}

	.exterior_list.sp_w2 li{
		width: 45%;
		margin-left: 0;
		margin-right: 0;
	}

	.exterior_list li .card-body{
		font-size: 1.4rem;
	}

}


/*---------------------------------------------------------------------------------------------*/
/* 教室案内 classroom */

.class_line{
	margin-bottom: 6rem;
}

.left_image_contents .text h4.classroom_area,
.right_image_contents .text h4.classroom_area{
	font-size: 3rem;
	color: #fff;
	margin-bottom: 1.5rem;
	padding-top: 1.5rem;
	padding-left: 1.5rem;
	padding-bottom: 1.5rem;
	border-bottom: 0.1rem solid #0055b4;
	display: flex;
	align-items: center;
	position: relative;
	background: #0a396d;
}

.left_image_contents .text h4.classroom_area::after,
.right_image_contents .text h4.classroom_area::after{
	border-right: 2rem solid #0055b4;
	content: "";
	bottom: 0.3rem;
	/*right: 0;*/
	border-top: 2rem solid transparent;
	position: absolute;

	top: 100%;
	left: 0;
	border: none;
	border-bottom: solid 15px transparent;
	border-right: solid 20px rgb(149, 158, 155);
}


.left_image_contents .text h4.classroom_area span,
.right_image_contents .text h4.classroom_area span{
	font-size: 3rem;
	margin-right: 0.5rem;
	color: #f5ce21;
}

.left_image_contents .text h4.classroom_area small,
.right_image_contents .text h4.classroom_area small{
	font-size: 1.4rem;
	font-weight: bold;
	margin-left: 1rem;
}

.text.classroom_area{
	padding-top: 0;
	padding-bottom: 0;
}

.text.classroom_area .class_data{
	line-height: 2;
}

.schedule_table{
	border-right: 0.1rem solid #ccc;
	border-top: 0.1rem solid #ccc;
	width: 100%;
}

.schedule_table th , .schedule_table td {
	border-left: 0.1rem solid #ccc;
	border-bottom: 0.1rem solid #ccc;
}


.schedule_table th {
	text-align: center;
	padding: 1rem;
	background: #eee;
}

.schedule_table th:nth-child(2) { background: #fff9b0; }
.schedule_table th:nth-child(3) { background: #ffd4b0; }
.schedule_table th:nth-child(4) { background: #b0e9ff; }
.schedule_table th:nth-child(5) { background: #b1ffb0; }
.schedule_table th:nth-child(6) { background: #ffe7b0; }
.schedule_table th:nth-child(7) { background: #b0c1ff; }
.schedule_table th:nth-child(8) { background: #ffb0b0; }

.schedule_table td {
	text-align: center;
	font-size: 1.4rem;
	padding: 1rem;
}

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

	.text.classroom_area{
		padding-top: 0;
		padding-bottom: 3rem;
	}

}

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

	.classroom_area{
		padding-top: 0;
		padding-bottom: 0;
	}
	
	.left_image_contents .text h4.classroom_area,
	.right_image_contents .text h4.classroom_area{
		font-size: 2.2rem;
		line-height: 1.2;
	}

	.text.classroom_area{
		padding-bottom: 0;
	}

}

/*-------*/

.table-wrap {
	margin-bottom: 0;
}

.table-grad {
	position: relative;
	white-space: nowrap;
}

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

	.table-wrap {
		overflow-x: scroll;
		white-space: nowrap;
		margin-bottom: 48px;
	}
	
	.flick_text{
		display: flex;
		justify-content: left;
		align-items: center;
	}

}

/*------*/

.achievements_title{
	font-size: 1.8rem;
	font-weight: bold;
}

.achievements_table{
	border-right: 0.1rem solid #ccc;
	border-top: 0.1rem solid #ccc;
	width: 100%;
	margin-top: 3rem;
}

.achievements_table th , .achievements_table td {
	border-left: 0.1rem solid #ccc;
	border-bottom: 0.1rem solid #ccc;
}

.achievements_table th {
	text-align: center;
	padding: 1rem;
	background: #eee;
}

.achievements_table th:nth-child(1) { width: 10%; }
.achievements_table th:nth-child(2) { width: 45%; }
.achievements_table th:nth-child(3) { width: 15%; }
.achievements_table th:nth-child(4) { width: 30%; }

.achievements_table td {
	text-align: center;
	font-size: 1.4rem;
	padding: 1rem;
}

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

	.achievements_table td:nth-child(1) {
		white-space: nowrap;
	}

}

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

	.achievements_table {
		border-top: none;
		border-right: none;
	}

	.achievements_table tr:nth-child(1) {
		display: none;
	}

	.achievements_table tr {
		display: flex;
		flex-wrap: wrap;
		margin-bottom: 1rem;
	}

	.achievements_table td {
		text-align: left;
	}

	.achievements_table td:nth-child(1) { width: 100%; background: #eee; border-top: 0.1rem solid #ccc; border-right: 0.1rem solid #ccc; }
	.achievements_table td:nth-child(2) { width: 100%; border-right: 0.1rem solid #ccc; }
	.achievements_table td:nth-child(3) { width: 40%; }
	.achievements_table td:nth-child(4) { width: 60%; border-right: 0.1rem solid #ccc; }

}

.class_data table {
	border-right: 0.1rem solid #ccc;
	border-top: 0.1rem solid #ccc;
	width: clamp(30rem, 40vw, 50rem);
	margin-bottom: 2rem;
}

.class_data table th {
	text-align: center;
	padding: 1rem;
	background: #0055b4;
	border-left: 0.1rem solid #ccc;
	border-bottom: 0.1rem solid #ccc;
	color: #fff;
}

.class_data table td {
	text-align: center;
	padding: 1rem;
	background: #fff;
	border-left: 0.1rem solid #ccc;
	border-bottom: 0.1rem solid #ccc;
}

.class_data table caption{
	caption-side: top;
	color: #0055b4;
	font-weight: bold;
	font-size: 1.8rem;
}

.class_data table caption small{
	font-size: 1.2rem;
}

.class_data .annotation{
	font-size: 1.4rem;
}

.class_data .annotation li{
	display: flex;
	margin-bottom: 2rem;
}

.class_data .annotation li:last-child{
	margin-bottom: 0;
}

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

	.class_data .annotation{
		font-size: 1.3rem;
	}

}

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

	.class_data table {
		width: 100%;
	}

}

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

.class_data .training_list{
	display: flex;
	justify-content: space-between;
	max-width: 120rem;
	margin-left: auto;
	margin-right: auto;
}

.class_data .training_list > li{
	width: 46%;
}

.class_data .training_list > li table{
	width: 100%;
	min-height: 15rem;
}

@media screen and ( max-width: 1024px ){
/*
	.class_data .training_list > li{
		width: 47%;
	}
*/
}

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

	.left_image_contents,
	.right_image_contents {
		/* flex-wrap: wrap; */
		/* justify-content: center; */
	}

	.right_image_contents {
		/* flex-direction: column-reverse; */
	}

	.left_image_contents .image {
		max-width: 80%;
		margin-bottom: 4rem;
		margin-right: auto;
	}
	
	.right_image_contents .image {
		max-width: 80%;
		margin-bottom: 4rem;
		margin-left: auto;
	}

	.left_image_contents .image img,
	.right_image_contents .image img{
		max-width: 60rem;
	}

	.class_data table {
		width: 100%;
	}

	.left_image_contents .text,
	.right_image_contents .text {
		margin-left: auto;
		margin-right: auto;
		/* width: 90%; */
	}

	.class_data table {
		width: 100%;
		font-size: 1.5rem;
	}

}

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

	.right_image_contents .image {
		max-width: 75%;
	}


}

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

	.class_data .training_list {
		max-width: 90%;
		margin-left: auto;
		margin-right: auto;
		flex-wrap: wrap;
	}

	.class_data .training_list > li {
		width: 100%;
	}

	.left_image_contents .image {
		max-width: 90%;
		margin-bottom: 2rem;
		z-index: -1;
		margin-left: 0;
		margin-right: auto;
	}

	.left_image_contents .image::after {
		position: absolute;
		content: '';
		width: 13rem;
		height: 2.6rem;
		left: 0;
		bottom: -2.6rem;
	}

	.right_image_contents .image {
		max-width: 90%;
		margin-bottom: 2rem;
		z-index: -1;
		margin-left: auto;
		margin-right: 0;
	}

	.right_image_contents .image::after {
		position: absolute;
		content: '';
		width: 13rem;
		height: 2.6rem;
		right: 0;
		bottom: -2.6rem;
	}

}


/*---------------------------------------------------------------------------------------------*/
/* コーチ紹介 coach */

.coach_list{

}

.coach_list li{
	display: flex;
	justify-content: space-around;
	align-items: start;
	
	border-bottom: 0.1rem dotted #ccc;
	padding-bottom: 4rem;
	margin-bottom: 4rem;
}

.coach_list li:last-child{
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 0;
}

.coach_list li .text{
	max-width: 55rem;
	width: 100%;
	margin-right: 3rem;
}

.coach_list li .text h4{
	font-size: 2.5rem;
	font-weight: bold;
	border-bottom: 0.2rem solid #666;
	padding-bottom: 1.5rem;
	margin-bottom: 1.5rem;
}

.coach_list li .text div{
	margin-top: 3rem;
}

.coach_list li .text div h5{
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 1rem;
}

.coach_list li .text div h5 i{
	margin-right: 1rem;
}

.coach_list li .text div p{
	font-size: 1.5rem;
}

.coach_list li .image{
	max-width: 35rem;
}

.coach_list li .image img{
	width: 100%;
}

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

	.coach_list li .image{
		max-width: 30rem;
	}

}

@media screen and ( max-width: 559px ){
	
	.coach_list li {
		flex-wrap: wrap;
		flex-flow: column-reverse;
		border-bottom: 0.1rem solid #666;
		padding-bottom: 3rem;
		margin-bottom: 3rem;
	}

	.coach_list li .image {
		max-width: 24rem;
		margin-bottom: 2rem;
		margin-left: auto;
		margin-right: auto;
	}

	.coach_list li .text{
		margin-right: 0rem;
		width: 100%;
	}
	
	.coach_list li .text h4 {
		font-size: 2rem;
		border-bottom: 0.1rem dotted #ccc;
	}

}

/*------*/

.destination_list{
	display: flex;
	flex-wrap: wrap;
}

.destination_list li{
	display: flex;
	align-items: center;
	width: 25%;
	border-bottom: 0.1rem solid #ddd;
	padding-bottom: 1rem;
	margin-bottom: 1rem;
}

.destination_list li span{
	margin-right: 1.0rem;
}

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

	.destination_list li{
		width: 50%;
	}

}


/*---------------------------------------------------------------------------------------------*/
/* お問い合わせ contact */

.contact_text{
	text-align: center;
	margin-bottom: 8rem;
}

.contact_list{
	width: 80%;
	margin: 0 auto;
}

.contact_list li{
	width: 100%;
	border-bottom: 1px dotted #ccc;
	display: flex;
	padding: 3rem 0 2rem;
}

.contact_list li h4{
	/*width: 33%;*/
	font-size: 1.8rem;
	font-weight: bold;
	display: flex;
	align-items: center;
}

.contact_list li h4 span{
	font-size: 1.6rem;
	color: #c62b2b;
	/*border: 1px solid #c62b2b;*/
	display: flex;
	justify-content: center;
	align-items: center;
	padding: .5rem .8rem;
}

.contact_list li h4 small{
	font-size: 60%;
}

.contact_list li > div{
	width: 100%;
}

.contact_list li > div div{
	display: flex;
	width: 100%;
}

.contact_list li div p{
	max-width: 6rem;
	font-weight: bold;
}

.contact_list li .select_list{

}

.contact_list li .select_list li{
	display: flex;
}

.contact_list li .select_list li{
	padding: 1rem 0;
	border-bottom: 1px dotted #eee;
}

.contact_list li .select_list li:first-child{
	padding: 0 0 1rem;
}

.contact_list li .select_list li:last-child{
	padding: 1rem 0 0;
	border-bottom: none;
}

.contact_list li .select_list li div{
	width: 40%;
}

.contact_list li .select_list li span{
	width: 60%;
	font-size: 1.4rem;
}

.contact_list li .day{
	display: flex;
	align-items: center;
}

.contact_list .custom-select{
	width: 8rem;
	height: calc(4rem + 2px);
	padding: 1rem 1rem;
}

.contact_list li #time{
	width: 20rem;
}

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

	.contact_list {
		width: 90%;
	}

	.contact_list li h4{
		width: 100%;
	}

}

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

	.contact_text{
		text-align: left;
		margin-bottom: 4rem;
	}


	.contact_list li #time{
		width: 4rem;
	}

}


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

.contact_bt{
	margin-top: 5rem;
	text-align: center;
}

.contact_bt_form {
	text-align: center;
	margin-top: 5%;
}

.contact_bt_form > input{
	/*margin-bottom: 5%;*/
	margin-bottom: 0;
}

.contact_bt_form input.back{
	background: #aaa;
	margin-right: 2rem;
	border-radius: 5rem !important;
	font-size: 1.8rem;
}

.contact_bt_form input.back:hover{
	background: #ccc;
}

.contact_bt .btn-success{
	background-color: #119a90;
}

input[type="submit"]{
	border-radius: 3px !important;
	min-width: 250px;
	padding: 20px 50px 20px 50px;
	font-size: 1.6rem;
	transition: all 0.3s;
	border: none;
	font-weight: 500;
	position:relative;
	color: #fff !important;
	background-color: #0055b4;
	cursor:pointer
}

input[type="submit"]:hover{
	background-color: #3c8be4;
	border: none;
	color: #fff !important;
}

input[type="submit"]:focus{
	outline: none;
}

.mw_wp_form.mw_wp_form_complete p{
	text-align: center;
}

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

.contact_list label {
	line-height: 135%;
	position: relative;
	margin: 0.5rem;
	cursor: pointer;
}

.contact_list input[type="radio"],
.contact_list input[type="checkbox"] {
	position: relative;
	margin: 0 1rem 0 0;
	cursor: pointer;
}

.contact_list input[type="radio"]:before {
	position: absolute;
	z-index: 1;
	top: 0.2rem;
	left: 0.3rem;
	width: 1.2rem;
	height: 1.2rem;
	content: '';
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	        transition:         transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	-webkit-transform: scale(0, 0);
	        transform: scale(0, 0);
	border-radius: 50%;
	background: #1f379d;
}

.contact_list input[type="checkbox"]:before {
	position: absolute;
	z-index: 1;
	top: 0.2rem;
	left: 0.3rem;
	width: 1.2rem;
	height: 1.2rem;
	content: '';
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	        transition:         transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	-webkit-transform: scale(0, 0);
	        transform: scale(0, 0);
	background: #008f40;
}

.contact_list input[type="radio"]:checked:before,
.contact_list input[type="checkbox"]:checked:before {
	-webkit-transform: scale(1, 1);
	        transform: scale(1, 1);
}

.contact_list input[type="radio"]:after {
	position: absolute;
	top: -0.25rem;
	left: -0.125rem;
	width: 2rem;
	height: 2rem;
	content: '';
	border: 1px solid #ccc;
	border-radius: 50%;
	background: #ffffff;
}

.contact_list input[type="checkbox"]:after {
	position: absolute;
	top: -0.25rem;
	left: -0.125rem;
	width: 2rem;
	height: 2rem;
	content: '';
	border: 1px solid #ccc;
	background: #ffffff;
}

input::-webkit-input-placeholder {
	color: #ccc !important;
}
input:-ms-input-placeholder {
	color: #ccc !important;
}
input::-moz-placeholder {
	color: #ccc !important;
}

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

	.contact_list {
		width: 100%;
	}

	.contact_list li h4 {
		/* width: 50%; */
		font-size: 1.8rem;
	}
	
	.contact_list input[type="radio"]:after {
		left: -0.2rem;
	}
	
	.contact_list input[type="radio"]:before {
		left: 0.2rem;
	}
	
	.contact_list input[type="checkbox"]:after {
		left: -0.2rem;
	}
	
	.contact_list input[type="checkbox"]:before {
		left: 0.2rem;
	}

}

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

	.contact_list li {
		flex-wrap: wrap;
	}
	
	.contact_list li h4 {
		width: 100%;
		margin-bottom: 0;
	}
	
	.contact_list li > div div {
		flex-wrap: wrap;
	}

	.contact_list li > div div:first-child {
		margin-bottom: 0rem;
	}
	
	.contact_list li div p {
		width: 100%;
	}
	
	.contact_list li .select_list li div {
		width: 100%;
	}
	
	.contact_bt_form input.back{
		margin-top: 2rem;
		margin-right: 0rem;
	}

	.contact_bt_form {
		text-align: center;
		margin-top: 10%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		flex-flow: wrap-reverse;
	}

}

/* Bootstrap カスタマイズ */

.form-control {
	height: calc(4rem + 2px);
	padding: 1rem 1rem;
	font-size: 1.6rem;
}

.custom-control {
	padding-left: 2rem;
}

.custom-control-label::before {
	left: -2rem;
	width: 1.6rem;
	height: 1.6rem;
}

.custom-control-label::after {
	left: -2rem;
	width: 1.6rem;
	height: 1.6rem;
}

/*-------------------------------------------------*/
/* policy */


.policy_area{
	max-width: 100rem;
	margin-left: auto;
	margin-right: auto;
}

.policy_area .policy_text{
	margin-bottom: 4rem;
}

.policy_area .policy_list{
	line-height: 1.8;
}

.policy_area .policy_list a{
	text-decoration: underline;
}

.policy_area .policy_list > li{
	border-bottom: 0.1rem dotted #ccc;
	padding-bottom: 2rem;
	margin-bottom: 2rem;
}

.policy_area .policy_list > li:last-child{
	border-bottom: none;
	padding-bottom: 0rem;
	margin-bottom: 0rem;
}

.policy_area .policy_list > li .title{
	font-size: 2.2rem;
	font-weight: bold;
	
	display: flex;
}

.policy_area .policy_list.personal > li .title{
	font-size: 1.8rem;
}



.policy_area .policy_list > li .title span{
	margin-right: 2rem;
}

.policy_area .policy_list > li .text{
	margin-top: 2rem;
}

.policy_area .policy_list > li .under_list{
	margin-top: 2rem;
	margin-left: 2.5rem;
}

.policy_area .policy_list > li .under_list li{
	display: flex;
	margin-bottom: 1rem;
}

.policy_area .policy_list > li .under_list li:last-child{
	margin-bottom: 0rem;
}

.policy_area .policy_list > li .under_list li span{
	margin-right: 1rem;
}

.policy_area .policy_list > li .under_list li > .under_list{
	margin-bottom: 1rem;
}

.policy_area .policy_list > li .seitei {
	text-align: right;
}

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

	.policy_area .policy_text {
		font-size: 1.4rem;
		margin-bottom: 4rem;
	}

	.policy_area .policy_list > li .title{
		font-size: 1.8rem;
	}

	.policy_area .policy_list > li .text {
		font-size: 1.4rem;
	}

	.policy_area .policy_list > li .under_list {
		font-size: 1.4rem;
	}

	.policy_area .policy_list > li .under_list {
		margin-left: 2rem;
	}

	.policy_area .policy_list > li .seitei,
	.policy_area .policy_list > li .contact {
		font-size: 1.4rem;
	}


}

/*---------------------------------------------------------------------------------------------*/
/* サイトマップ sitemap */

.sitemap_box{
	width: 680px;
}

.sitemap_box ul{
	margin: 50px 20px 20px 50px;
}

.sitemap_box li{
	background: url(../img/a.gif) no-repeat 20px 0;
	padding: 0 0 0 35px;
	margin: 0 0 15px;
}

.sitemap_box a{
	color: #797979;
}

.sitemap_box a:hover {
    text-decoration: underline;
}

.sitemap_box .a{
	background: none;
	padding: 0;
	color: #797979;
}

.sitemap_box .b{
	background: url(../img/b.gif) no-repeat 20px 0;
}

.sitemap_box .c{
	padding: 0 0 0 60px;
	margin: 0 0 30px;
	background: url(../img/b.gif) no-repeat 45px 0;
}

.sitemap_box .c span{
	padding: 0 0 0 25px;
	background: url(../img/c.gif) no-repeat 5px 0;
}

.sitemap_box .d{
	padding: 0 0 0 60px;
	margin: 0 0 10px;
	background: url(../img/a.gif) no-repeat 45px 0;
}

.sitemap_box .d span{
	padding: 0 0 0 25px;
	background: url(../img/c.gif) no-repeat 5px 0;
}

.sitemap_box .clam{
	float: left;
	width: 250px;
	color: #24468c;
}

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

.sitemap_box{
	width: 100%;
}


}

/*----------------------------------------*/
/*印刷用*/

@media print{

	.left_image_contents .image {
		max-width: 50%;
	}

	.left_image_contents .text {
		max-width: 40%;
	}

	.right_image_contents .image {
		max-width: 50%;
	}

	a:not(.btn) {
		text-decoration: none;
	}

}

/*----------------------------------------*/
/*IEハック*/
@media screen and (min-width: 0\0) and (min-resolution: +72dpi) {

	.h1_area h1{ padding-top: 0.8rem; }
	.h1_area h1 .pc{ display:inline; }
	
	.nav li a{ padding-top: 1rem; }
	.p_list{ margin-top: 1rem; }
	
	.exterior_list.sp_w2 li{ width: 25%; }
	.exterior_list.sp_w2 li img{ height: 100%; }
	
	.exterior_list.sp_w1 li{ width: 33.333%; }
	.exterior_list.sp_w1 li img{ height: 100%; }

}

/*----------------------------------------*/
/*Safariハック*/

_::-webkit-full-page-media, _:future, :root .head .call_area {

}
