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


.contact_btn{
	padding: 1rem 5rem;
	box-sizing: border-box;
	display: table;
	background-color: var( --color-lp-base);
	margin:3rem auto;
	color: #fff;
	transition: all .3s ease;
	border-radius: 1rem;
	font-weight: bold;
	letter-spacing: 1.1px;
}
.contact_btn:hover{
	background-color: var( --color-lp-sabu);
	color: var( --color-lp-base);
	transition: all .3s ease;
}



.lp_container{
	max-width: 720px;
	padding-left: 3rem;
	padding-right: 3rem;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}


/*MV*/
.lp_container_mv{
/*	background: #000;*/
}

.lp_mv{
	text-align: center;
	padding: 2rem 0.2rem 1.8rem;
	box-sizing: border-box;
  background-size: cover;
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.lp_mv img{
	vertical-align:bottom;
}
.lp_mv:before{
  content: '';
  background: inherit;
  -webkit-filter: blur(5px);
  -moz-filter: blur(5px);
  -o-filter: blur(5px);
  -ms-filter: blur(5px);
  filter: blur(5px);
  position: absolute;
  top: -5px;
  left: -5px;
  right: -5px;
  bottom: -5px;
  z-index: -1;
}


.lp_container h3:first-child{
	margin-top: 0;
}


.entry_ttl,.lp_container h3,.start_data_midasi{
	color: var( --color-lp-base);
	font-size: 2.4rem;
	margin-top: 5rem;
	margin-bottom: 2rem;
	box-sizing: border-box;
	border-bottom: 2px solid var( --color-lp-sabu);
	position: relative;
	letter-spacing: 1.1px;
}

.lp_container h3:after,.entry_ttl:after,.start_data_midasi:after {
    content: "";
    display: block;
    max-width: 90px;
    height: 2px;
    background-color: var( --color-lp-base);
}
.lp_container h4{
	font-size: 120%;
	margin-bottom: 0.4em;
	position: relative;
	padding-left: 1.2em;
	color: var( --color-lp-base);
}
.lp_container h4:after {
    content: "";
	position: absolute;
    display: block;
	width: 0.5em;
	height: 0.5em;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
    background-color: var( --color-lp-base);
}


.lp_main p{
	line-height: 1.9;
}
.lp_main p span{color: var( --color-lp-base);}
.lp_main p strong{font-weight: bold;}
.lp_main p+p{margin-top: 2rem;}


.lp_main ol{
	margin-top: 2rem;
	margin-bottom: 2rem;
	list-style-type: decimal-leading-zero;
	list-style-position:inside;}

.lp_main ul{
	margin-top: 2rem;
	margin-bottom: 2rem;
	box-sizing: border-box;
}


.lp_main li{
	box-sizing: border-box;
	position: relative;
	margin-bottom: 1.5rem;
	line-height: 1.4;
}
.lp_main ul li span{
	color: var( --color-lp-base);
}
.lp_main .check_list li{
	padding-left: 35px;
}
.lp_main .check_list li::after{
	content: "";
	width: 17px;
	height: 17px;
	border: 1px solid var( --color-lp-base);
	background: #fff;
	position: absolute;
	border-radius: 3px;
	top: 3px;
	left: 5px;
	z-index: 1;
}
.lp_main .check_list li:before{
	z-index: 2;
	content: "";
	width: 14px;
	height: 7px;
	border-bottom: 2px solid var( --color-lp-base);
	border-left: 2px solid var( --color-lp-base);
	position: absolute;
	transform:rotate(-45deg);
	/*transform: translateY(-50%)rotate(-45deg);*/
	/*top: calc(50% - 3px);*/
	top: 7px;
	left: 7px;
}

.point_list{
	display: flex;
	justify-content: flex-start;
	margin-bottom: 2rem;
	margin-top: 2rem;
}
.point_list:first-child,.time_list:first-child{
	margin-top: 　6rem;
}
.point_list:last-child,.time_list:last-child{
	margin-bottom: 6rem;
}


.point_list dt{
	text-align: right;
	width: 20rem;
	padding: 1rem;
	box-sizing: border-box;
	margin-right: 1rem;
	color: var( --color-lp-base);
	font-weight: 600;
}
.point_list dd{
	width:calc(100% + 21rem);
	padding: 1rem;
	border-radius: 1rem;
	background: var( --color-lp-gray);
	box-sizing: border-box;
}


.time_list{
	margin-bottom: 2rem;
	margin-top: 2rem;
}

.time_list dt div span{
	color: var( --color-lp-base);
	margin-right: 1rem;
}


.time_list dt div{
	font-size: 120%;
	font-weight: 600;
	display: inline-block;
	margin-right: 1rem;
}
.time_list dt{
	padding-bottom: 0.2rem;
	margin-bottom: 0.4rem;
	border-bottom: 1px solid var( --color-lp-base);
}




.end_time{
	text-align: center;
	color: red;
	margin-top: 1rem;
	margin-bottom: 1rem;
}

.start_data {
	background: #F7F7F7;
	padding: 5rem 3rem;
	box-sizing: border-box;
	width: 100%;
	margin-bottom: 2.5rem;
	
}


.start_data table{
	box-sizing: border-box;
	font-size: 1.3rem;
	width: 100%;
	border-collapse: collapse;
	table-layout: inherit;
	
}
.start_data tr{
	border-bottom: 2px dotted #ccc;
}
.start_data tr:first-child{
	border-top: 2px dotted #ccc;
}
.start_data th{
	white-space:nowrap;
	display: block;
	font-weight: 500;
	padding: 1rem;
	box-sizing: border-box;}
.start_data td{padding: 0.8rem;
	box-sizing: border-box;}
.start_data td span{
	color:var( --color-lp-base);
	margin-left: 0.5rem;
}


.red{
	color:  var( --color-lp-red);}

.teacher_name span+span{
	margin-left: 0.9rem;
}

.kousi+.kousi{
	margin-top: 5rem;
}
.kousi{
	display: flex;
	justify-content: space-between;
}
.kousi .img{
	width: 40rem;
	margin-right: 4rem;
	float: left;
}

.kousi .text{width:calc(100% + 44rem);}
.kousi h4{
	margin-top: 0;
	font-weight: bold;
}
.kousi h4 span{
	font-size: 80%;
	margin-left: 0.2em;
}
.kousi .ttl{
	line-height: 1.5;
	font-size: 1.8rem;
	margin-bottom: 1rem;
}

.kousi .ttl p{
	font-size: 70%;
}


.kousi .img img{
	border-radius: 1rem;
	background: var( --color-lp-sabu);}



.footer_btn_sp,.footer_btn a{
	display: none;
}








@media screen and (max-width: 789px) {
.entry_ttl{
	margin-top: 3rem;
	margin-bottom: 1rem;
	font-size: 1.8rem;
}
	
.contact_btn{
	padding: 1rem;
}
.footer_btn_sp{
	box-sizing: border-box;
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	padding-top: 1rem;
	padding-bottom: 1rem;
	background-color: rgba(0,0,0,.5);
	z-index: 10;
	height: 80px;
	display: block;
}
.footer_btn_sp .contact_btn{
	width: 80%;
	text-align: center;
	margin: 0 auto;
	display: block;
}
	
	.start_data tr{
		padding: 0.5rem 0;
		box-sizing: border-box;
		display: block;
	}.start_data th{
		font-size: 110%;
		margin-bottom: 0.2rem;}
	.start_data th,.start_data td{
		padding: 0;
	}
	.kousi+.kousi{
	margin-top: 2.5rem;
}

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