@import url('https://fonts.googleapis.com/css2?family=Alumni+Sans:ital,wght@0,100..900;1,100..900&family=Chivo:ital,wght@0,100..900;1,100..900&display=swap');

#main{
	padding-bottom: 50px;
	font-size:16px;
}

#cont {
	margin: 0;
	padding: 0 50px 20px;
}
h2{
	width:100%;
	max-width:700px;
	margin:0 auto 50px;
	text-align: center;
	font-size: 36px;
	font-style: normal;
	font-weight: 700;
	line-height: 72px;
	border-bottom:1px solid #666;
}

/* COMMON
 ------------------------------------*/
.lead{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	width:100%;
	max-width:1240px;
	margin:60px auto;
}
.lead > li:first-child{
	width:36%;
}
.lead > li:first-child img{
	width:100%;
}
.lead > li:last-child{
	width:64%;
	padding:0 46px;
	text-align:center;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.lead > li:last-child img{
	width:90%;
}
.lead ul{
	margin:40px auto 0;
}
.lead ul li{
	padding:10px;
	margin:0 0 10px;
	font-size:24px;
	font-weight:500;
	line-height:1;
}
.lead ul li:nth-of-type(1){
	border:solid 2px #009CFF;
}
.lead ul li:nth-of-type(2){
	border:solid 2px #00A811;
}
.lead ul li:nth-of-type(3){
	border:solid 2px #FF86B9;
}

/*----------------------------------*/
.about{
	width:100%;
	max-width:1040px;
	margin:0 auto;
	padding:50px 0;
}
.about h3{
	margin:0 auto 40px;
	font-size: 24px;
	font-weight: 700;
}
.about h3 span{
	font-size: 16px;
	font-weight: 400;
}
.about p{
	line-height: 2;
}

/*----------------------------------*/
.column3{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	max-width: 1220px;
	margin:0 auto 80px;
}
.column3 li{
	width:28.6%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

/*----------------------------------*/
.point{
	padding:50px 0;
	background:#EEEFF0;
}
.point3 li{
	padding:30px 15px 40px;
	background:#141B4D;
	color:#fff;
}
.point3 li h3{
	margin:0 0 15px;
	font-size:28px;
	font-weight:600;
	line-height:1;
	text-align:center;
}
.point3 li div{
	line-height:1.6;
}
.point3 li .title{
	display:flex;
	justify-content:center;
	align-items:center;
	height:110px;
	margin:0 0 15px;
	font-size:30px;
	font-weight:600;
	line-height:1.2;
	text-align:center;
}

.pointDetail{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	max-width: 1220px;
	margin:0 auto;
}
.pointDetail > li{
	width:28.6%;
	margin:0 0 26px;
	line-height:1.6;
}
.pointDetail > li:nth-of-type(2),.pointDetail > li:nth-of-type(3){
	text-align:center;
}
.pointDetail > li:nth-of-type(4),.pointDetail > li:nth-of-type(5){
	width:45%;
}
.pointDetail > li h3{
	padding:0 0 15px;
	margin:0 0 20px;
	text-align:center;
	color:#AF272F;
	font-size:24px;
	font-weight:600;
	line-height:1;
	border-bottom:1px solid #000000;
}
.pointDetail > li dl{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
.pointDetail > li dl dt{
	width:80px;
	margin:0 0 10px;
	color:#AF272F;
}
.pointDetail > li dl dd{
	width:calc(100% - 80px);
	margin:0 0 10px;
}
.pointDetail > li dl dd ul li{
	position:relative;
	padding:0 0 0 15px;
}
.pointDetail > li dl dd ul li::before{
	content:"・";
	position:absolute;
	left:0;
}

/*----------------------------------*/
.detail{
	padding:50px 0;
}
.bar{
	max-width: 1220px;
	margin:0 auto 30px;
	padding:5px 10px;
	background:#141B4D;
	color:#fff;
	font-size:24px;
	font-weight:600;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.detail .column3{
	padding:0 0 25px;
	margin: 0 auto 15px;
	/*border-bottom:1px solid #000000;*/
}
.detail .column3 li{
	line-height:1.6;
}
.detail .column3 li h3{
	padding:0 0 15px;
	margin:0 0 20px;
	line-height:1;
	border-bottom:1px solid #000000;
	font-size:24px;
	font-weight:600;
}
.atten{
	max-width: 1220px;
	margin:0 auto;
}
/*----------------------------------*/
.sap{
	padding:50px 0 0;
	background:#EEEFF0;
}
.sap .column3 li{
	margin:0 0 70px;
}
.sap .column3 li > div{
	height:328px;
	padding:20px 15px 40px;
	background:#141B4D;
	color:#fff;
	line-height:1.6;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.sap .column3 li .title{
	display:flex;
	justify-content:center;
	align-items:center;
	height:120px;
	margin:0 0 20px;
	font-size:36px;
	font-weight:600;
	line-height:1.2;
	text-align:center;
}
.sap .column3 li .title span{
	font-size:24px;
}
.sap .column3 li:nth-of-type(4),.sap .column3 li:nth-of-type(5){
	width:45%;
	margin:0;
}
.sap .column3 li:nth-of-type(4) div,.sap .column3 li:nth-of-type(5) div{
	height:auto;
	padding:10px 0;
	font-size:24px;
	font-weight:600;
	line-height:1;
	text-align:center;
}
.sap .column3 li a.btn_0{
	width:90%;
	max-width:300px;
	padding: 10px 0;
    margin: 20px auto;
	border: 1px solid #141B4D;
    border-radius: 35px;
}

/*----------------------------------*/
.join{
	max-width:1220px;
	padding:50px 0 0;
	margin:0 auto;
}
.join ul li{
	position:relative;
	padding:0 0 80px;
}
.join ul li::after{
	content:"▼";
	position:absolute;
	width:49%;
	top:65%;
	left:0;
	font-size:28px;
	text-align:center;
}
.join ul li:last-child::after{
	display:none;
}
.join dl{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
.join dl dt{
	width:49%;
}
.join dl dt div{
	padding:15px 0;
	background:#141B4D;
	color:#fff;
	font-size:28px;
	font-weight:700;
	line-height:1;
	text-align:center;
}
.join dl dt span{
	margin:0 0 5px;
	display:block;
	font-size:20px;
}
.join dl dd{
	width:49%;
	line-height:1.6;
}


@media screen and (max-width:959px) {
	#cont {
		margin: 0;
		padding: 0 5%;
	}
	#sp_wrap {
		background:initial;
	}
	h2{
		margin:0 auto 30px;
		padding:0 0 10px;
		font-size: 26px;
		line-height: 1;
	}
	/*----------------------------------*/
	.lead{
		margin:0 auto;
	}
	.lead ul li{
		font-size:16px;
	}
	.lead > li:first-child{
		width:100%;
		margin:0 0 15px;
		text-align:center;
	}
	.lead > li:first-child img{
		width:60%;
	}
	.lead > li:last-child{
		width:100%;
		padding:0;
	}
	.lead ul{
		margin:18px auto 0;
	}
	/*----------------------------------*/
	.about h3{
		line-height:1.4;
	}
	/*----------------------------------*/
	.column3 li{
		width:100%;
		margin:0 0 20px;
	}
	
	/*----------------------------------*/
	.point3 li h3 {
		margin:0 0 5px;
		font-size:20px;
	}
	.point3 li .title {
		height:auto;
		font-size:24px;
	}
	
	.pointDetail > li{
		width:100%;
		margin:0 0 50px;
	}
	.pointDetail > li:nth-of-type(4), .pointDetail > li:nth-of-type(5) {
		width: 100%;
	}
	/*----------------------------------*/
	.detail .column3{
		margin:0 0 30px;
	}
	.detail .column3 li{
		margin:0 0 30px;
	}
	.atten{
		line-height:1.6;
	}
	/*----------------------------------*/
	.sap .column3 li{
		margin:0 0 20px;
	}
	.sap .column3 li:nth-of-type(4),.sap .column3 li:nth-of-type(5){
		width:100%;
		margin:0 0 20px;
	}
	.sap .column3 li > div{
		height:auto;
	}
	.sap .column3 li a.btn_0 {
		margin: 20px auto 0;
	}
	/*----------------------------------*/
	.join ul li{
		padding:0 0 70px;
	}
	.join ul li::after{
		width:100%;
		top:initial;
		bottom: 20px;
	}
	.join dl dt{
		width:100%;
		margin:0 0 20px;
	}
	.join dl dt div{
		font-size:26px;
	}
	.join dl dd{
		width:100%;
	}
	


}
