@charset "UTF-8";

/************************************************************

LP01

************************************************************/


/*------------------------------------------------------------
Common
------------------------------------------------------------*/
.lp-wrap img{
	max-width: 100%;
	height: auto;
}
.lp-wrap .p-entry-page__inner{
	padding-left: 0;
	padding-right: 0;
}
.lp01-wrap{
	font-size: 16px;
	color: #6e6e6e;
	line-height: 2.2;
}

/* Font
------------------------------------------------------------*/
.font-serif{
	font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

/* Text
------------------------------------------------------------*/
.link-txt,
.link-txt:visited{
	color: #FF0000;
	text-decoration: underline;
}
.link-txt:hover{
	opacity: 0.7;
	text-decoration: none;
}


/* List
------------------------------------------------------------*/
.page-navi-list{
	margin: 2.0em;
	padding: 0;
}
.page-navi-list li{
	padding: 0;
}
.page-navi-list li a,
.page-navi-list li a:visited{
	color: #fff;
	text-decoration: none;
	background: #F57C7C;
	padding: 1.0em;
	text-align: center;
	display: block;
}
.page-navi-list li a:hover{
	opacity: 0.7;
}
.page-navi-list li a.btn-entry,
.page-navi-list li a.btn-entry:visited{
	background: #5ABEC9;
}

.lp-nav-list02{
	display: flex;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.lp-nav-list02 li{
	margin-right: 2.0em;
}
.lp-nav-list02 li:last-of-type{
	margin-right: 0;
}
.lp-nav-list02 li a,
.lp-nav-list02 li a:visited{
	color: #FF0000;
	text-decoration: underline;
}
.lp-nav-list02 li a:hover{
	opacity: 0.7;
	text-decoration: none;
}

.worries-list li{
	text-align: center;
}
.worries-list li i{
	font-size: 1.4em;
	font-weight: bold;
	font-style: normal;
}

.point-list li{
	display: flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-bottom: 24px;
	color: #000;
}
.point-list li i{
	font-style: normal;
	font-weight: bold;
	font-size: 1.4em;
}
.point-list li .point-list-info{
	width: calc(100% - 60px);
}
.point-list li .point-list-info p span{
	background: linear-gradient(transparent 60%, #FFD1D1 0%);
}

.feature-list.column li{
	padding: 28px;
	border: 3px solid #F57C7C;
}
.feature-list.column li img{
	width: auto;
	display: table;
	margin: 0 auto;
}
.feature-list.column li h3{
	color: #F57C7C;
	font-weight: bold;
	font-size: 1.4em;
	text-align: center;
}
.feature-list.column li .feature-sub-title{
	font-weight: bold;
	font-size: 1.4em;
	line-height: 1.6;
	margin-bottom: 1.0em;
}
.feature-list.column li h4{
	background: #F8DDDD;
	padding: 0 0.5em;
	text-align: center;
	font-weight: bold;
	margin-bottom: 0.5em;
}

.flow-list{
	margin: 2.0em 1.5em 2.0em 2.5em;
}
.flow-list > li{
	position: relative;
	list-style-type: decimal;
	padding-top: 2.0em;
	padding-bottom: 5.0em;
}
.flow-list > li:after{
	background: url(../img/lp01/arrow-flow.png) no-repeat left center;
	background-size: cover;
	content: "";
	position: absolute;
	width: 65px;
	height: 26px;
	bottom: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	display: block;
}
.flow-list > li:last-of-type{
	padding-bottom: 0;
}
.flow-list > li:last-of-type::after{
	display: none;
}
.flow-list > li a,
.flow-list > li a:visited{
	color: #ff0000;
	text-decoration: underline;
}
.flow-list > li a:hover{
	opacity: 0.7;
	text-decoration: none;
}

/* Table
------------------------------------------------------------*/
.curriculum-table{
	margin-bottom: 24px;
}
.curriculum-table th,
.curriculum-table td{
	padding: 0.5em;
}
.curriculum-table tr{
	border-bottom: 1px solid #707070;
}
.curriculum-table tbody tr:first-of-type th{
	text-align: left;
}
.curriculum-table th{
	font-weight: bold;
}
.curriculum-table td ul{
	padding-left: 1.5em;
}
.curriculum-table td ul li{
	list-style-type: disc;
}


/* Block
------------------------------------------------------------*/
.lp-block{
	padding: 50px 0;
}
.lp-block .block-inner,
.lp-nav-block .block-inner{
	max-width: 800px;
	margin: 0 auto;
}

.column-block{
	display: flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.column-block figure{
	width: 240px;
}
.column-block .info{
	width: calc(100% - 300px);
}

.info-block{
	padding: 0.5em;
	margin: 24px 0;
	border: 1px solid #707070;
	text-align: center;
}

.block-style-a{
	border: 1px solid #F57C7C;
	text-align: center;
	padding: 0.5em;
	margin-bottom: 36px;
}
.block-style-a h3{
	font-weight: bold;
}

.nav-block-02{
	border: 1px solid #707070;
	padding: 0.5em;
}



/*------------------------------------------------------------
Header
------------------------------------------------------------*/
.lp-header{
	max-width: 800px;
	margin: 1.0em auto;
}
.lp-header h2{
	margin-bottom: 36px;
}
.lp-header .lp-description{
	text-align: center;
}

/* Navigation
------------------------------------------------------------*/
.lp-nav ul{
	display: flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin: 24px 0;
	padding: 0;
}
.lp-nav ul li{
	margin: 0;
	padding: 0;
	border-right: 1px solid #707070;
	width: calc(100% / 4);
}
.lp-nav ul li:first-of-type{
	border-left: 1px solid #707070;
}
.lp-nav ul li a,
.lp-nav ul li a:visited{
	display: block;
	text-align: center;
	font-weight: bold;
}


/*------------------------------------------------------------
Contents
------------------------------------------------------------*/

.lp-wrap .p-entry-page__inner .p-entry__thumbnail{
	margin-left: 0;
	margin-right: 0;
}


/* First
------------------------------------------------------------*/
#first{
	background: url(../img/lp01/bg-first.jpg) no-repeat left top;
	background-size: cover;
	color: #fff;
}

#first h2{
	font-size: 1.6em;
	text-align: center;
	line-height: 1.6;
	margin-bottom: 1.0em;
	font-weight: bold;
}
#first p{
	text-align: center;
	margin-bottom: 1.5em;
}
#first p:last-of-type{
	margin-bottom: 0;
}

/* Second
------------------------------------------------------------*/
#second{
	background: #A4A4A4;
	color: #fff;
}


/* Point
------------------------------------------------------------*/
#point h2{
	color: #fff;
	background: #FF9E9E;
	text-align: center;
	padding: 0.5em;
	margin-bottom: 24px;
	font-size: 1.6em;
	line-height: 1.6;
	font-weight: bold;
}
#point .sub-title{
	text-align: center;
	margin-bottom: 24px;
}

/* Curriculum
------------------------------------------------------------*/
#curriculum h2{
	color: #FF9E9E;
	background: transparent;
	border: 1px solid #FF9E9E;
	text-align: center;
	padding: 0.5em;
	margin-bottom: 12px;
	font-size: 1.6em;
	line-height: 1.6;
	font-weight: bold;
}
#curriculum .sub-title{
	text-align: center;
	margin-bottom: 24px;
}

/* Feature
------------------------------------------------------------*/
#feature h2{
	color: #FF9E9E;
	background: transparent;
	border: 1px solid #FF9E9E;
	text-align: center;
	padding: 0.5em;
	margin-bottom: 12px;
	font-size: 1.6em;
	line-height: 1.6;
	font-weight: bold;
}
#feature .sub-title{
	text-align: center;
	margin-bottom: 24px;
}

/* Flow
------------------------------------------------------------*/
#flow h2{
	color: #FF9E9E;
	background: transparent;
	border: 1px solid #FF9E9E;
	text-align: center;
	padding: 0.5em;
	margin-bottom: 12px;
	font-size: 1.6em;
	line-height: 1.6;
	font-weight: bold;
}



/*------------------------------------------------------------
SmartPhone
------------------------------------------------------------*/
@media only screen and (max-width: 767px) {
	.lp-wrap.l-inner{
		width: 100%;
	}
	.lp-header{
		width: 94%;
	}

	.lp-nav ul li{
		width: calc(100% / 2);
		margin-bottom: 0.5em;
	}
	.lp-nav ul li:nth-of-type(odd){
		border-left: 1px solid #707070;
	}

	.lp-block .block-inner,
	.lp-nav-block .block-inner{
		width: 94%;
	}

	.worries-list.column li{
		width: 94%;
		margin: 2% auto 4%;
	}
	.worries-list.column li img{
		width: auto;
		margin: 1.0em auto;
		display: table;
	}

	.page-navi-list.column li{
		width: 100%;
		margin: 0 0 4%;
	}

	.column-block{
		display: block;
	}
	.column-block figure{
		width: auto;
		display: table;
		margin: 1.0em auto;
	}
	.column-block .info{
		width: 100%;
	}
	.point-list li .point-list-info{
		width: calc(100% - 40px);
	}

	.feature-list.column li{
		width: 94%;
		margin: 0 auto 4%;
	}

	table.curriculum-table{
		table-layout: fixed;
		margin: 0.5em 0;
		border-top:solid 3px #3399FE;
		border-left:none;
		border-right:none;
		border-bottom:solid 3px #3399FE;
		width:100% !important;
	}
	table.curriculum-table thead,
	table.curriculum-table tbody{
		display: block;
		width: auto;
		position: relative;
		overflow-x: auto;
		white-space: nowrap;
	 -webkit-overflow-scrolling: touch;
	}
	table.curriculum-table tbody::-webkit-scrollbar{
		height: 5px;
	}
	table.curriculum-table tbody::-webkit-scrollbar-track{
		border-radius: 5px;
		background: #eee;
	}
	table.curriculum-table tbody::-webkit-scrollbar-thumb{
		border-radius: 5px;
		background: #777;
	}
	table.curriculum-table tr{
		border-left:solid 3px #3399FE;
		border-right:solid 3px #3399FE;
		width: auto !important;
		display: table-row;
	}
	table.curriculum-table th,
	table.curriculum-table td{
		border:1px solid #ccc;
		padding:10px 15px 7px;
		line-height:2;
		display: table-cell;
		width: auto !important;
	}
	
	table.curriculum-table th{
		background:#f2f2f2;
		font-weight:normal;
		border:1px solid #ccc;
		padding:10px 15px 7px;
		line-height:2;
	}
	table.curriculum-table td{
		display: table-cell;
	}

}
