@charset 'utf-8';
.kv{
	background: url(../img/kv_bg.jpg) 50% 50% no-repeat;
	background-size: cover;
	height:680px;
	padding:160px 0 0;
	font-weight: 900;
}
.kv .kvbox{
	background: rgba(255,255,255,0.8);
	max-width: 960px;
	margin:0 auto;
	padding:40px 0;
	text-align: center;
}
.kv .kvbox .ttl{
	font-weight: 900;
	font-size: 130%;
}
.kv .kvbox .catch{
	font-size: 500%;
	font-weight: 900;
	color:#e64f32;
	margin:1rem 0;
}
.kv .kvbox .registered{
	font-size: 270%;
	font-weight: 900;
}
.kv .kvbox .date{
	letter-spacing: 2px;
}

.s1{
	text-align: center;
	background: url(../img/s1_bg.jpg) 50% top no-repeat;
	background-size: cover;
	font-weight: 900;
}
.s1 h2{
	font-weight: 900;
	font-size: 200%;
	letter-spacing: -0.05em;
}
.s1 .box{
	margin: 40px 0 0;
}
.s1 .box .item{
	background: #6a993e;
	background: #e64f32;
	text-align: center;
	border-radius:500px;
	width: 250px;
	height: 250px;
	padding:60px 0 0;
	line-height: 1.2;
	margin:0 1em;
	color:#ff0;
}
.s1 .box .item dt{
	font-size: 180%;
}
.s1 .box .item dd{
	font-size: 500%;
}
.s1 .box .item .yen{
	font-size: 80%;
}

.s1 .cta{
	margin:60px 0 0;
}
.s1 .cta p{
	color:#333;
	font-size: 200%;
}
.s1 .cta .logoimg{
	margin:40px 0;
}
.s1 .cta .logoimg img{
	max-height: 100px;
}
.s1 .cta .btn{
	font-size: 300%;
}

.s2{
	text-align: center;
	font-weight: 900;
}
.s2 .sec-ttl span{
	background: linear-gradient(transparent 50%, #ff0 50%);
}
.s2 .img{
	margin: 0 0 2em;
}
.s2 .box1 ul{
	text-align: left;
	font-size: 150%;
	font-weight: normal;
	display: inline-block;
	margin:0 0 2em;
}
.s2 .box1 li{
	border-bottom:1px #ccc dashed;
	padding:0 20px 1em 80px;
	margin:1em 0 0;
	background: url(../img/icon_check.png) 20px top no-repeat;
}
.s2 .box2 li{
	font-size: 200%;
	color:#fff;
	background: #8cc850;
	margin:1em 0;
	padding:0.5em 0;
}

.s3{
	background: url(../img/s3_bg.jpg) 50% 50% no-repeat;
	background-size: cover;
	font-weight: 900;
}
.s3 .sec-ttl{
	color:#ff0;
}
.s3 dt{
	color:#ff0;
	font-size: 250%;
}
.s3 dd{
	color:#fff;
	font-size: 150%;
}
.s3 .step{
	display: table;
}
.s3 .step .icon{
	display: table-cell;
	vertical-align: middle;
	padding:0 2em 0 0;
}
.s3 .step .icon{
	width: 120px;
	text-align: center;
}
.s3 .step .icon:after{
	content:" ";
	width: 0;
	height: 0;
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
	border-top: 20px solid #8cc850;
	display: inline-block;
	margin:20px 0;
}
.s3 .step8 .icon:after{
	display: none;
}
.s3 .step1 dt:before,
.s3 .step3 dt:before,
.s3 .step8 dt:before{
	content:'お客様';
	display: inline-block;
	color:#ff0;
	text-align: center;
	font-size: 50%;
	border:1px #ff0 solid;
	margin:0 10px 0 0;
	position:relative;
	top:-4px;
	padding:0 10px;
}
.s3 .step2 dt,
.s3 .step4 dt,
.s3 .step5 dt,
.s3 .step6 dt,
.s3 .step7 dt{
	color:#fff;
}
.s3 .step2 dt:before,
.s3 .step4 dt:before,
.s3 .step5 dt:before,
.s3 .step6 dt:before,
.s3 .step7 dt:before{
	content:'Ｃ＆Ｍ';
	display: inline-block;
	color:#fff;
	text-align: center;
	font-size: 50%;
	border:1px #fff solid;
	margin:0 10px 0 0;
	position:relative;
	top:-4px;
	padding:0 10px;
}
.s3 .service{
	margin:80px 0 0;
}
.s3 .service li{
	background: #ff0;
	text-align: center;
	font-size: 150%;
	padding:0.5em 1em;
	border-radius:3em;
}
.s3 .service p{
	text-align: center;
	color:#fff;
	margin:1em 0 0;
	font-size: 300%;
}
.s4 .box{
	background: url(../img/s4_box_bg.png) 50% 100% no-repeat;
}
.s4 .ttl-border{
	color:#8cc850;
	font-size: 200%;
	font-weight: bold;
	margin:0 0 1em;
}
.s4 .ttl-border:before,
.s4 .ttl-border:after{
	border-color:#8cc850;
}
.s4 .item{
	display: table;
	max-width: 100%;
	margin:0 0 3em;
}
.s4 .item .img,
.s4 .item dl{
	display: table-cell;
	vertical-align: middle;
}
.s4 .item dl{
	font-weight: normal;
	padding:0 0 0 1.5em;
}
.s4 .item dt{
	font-size: 150%;
}
.s4 .item dd{
	line-height: 2;
}
.s5{
	color:#fff;
	background: url(../img/s5_bg.jpg) 50% top no-repeat;
	background-size: cover;
}
.s5 .box{
	margin: 0 0 1em;
}
.s5 ul {
	font-weight: normal;
	margin:0 0 2em;
}
.s5 ul li span{
	color:#8cc850;
	margin:0 1em 0 0;
}
.s6{
	background: #8cc850;
	text-align: center;
	font-weight: 900;
}
.s6 .lead{
	font-size: 150%;
}
.s6 .sec-ttl{
	color:#ff0;
}
.s6 .sec-ttl + p{
	font-size: 200%;
	margin:0 0 1em;
}
.s6 ul{
}
.s6 li{
	border:3px #333 solid;
	font-size: 180%;
	padding:2em 0;
	vertical-align: middle;
	margin:0 0 1em;
}
.s6 li span{
	font-size: 80%;
	display: block;
}
.s6 p a{
	color:#333;
	border-bottom:1px #333 dotted;
}
.s6 .btnarea{
	margin:40px 0;
}
.s6 .btn_orange{
	font-size: 300%;
}
.s6 .option h3{
	border-top:1px #333 solid;
	border-bottom:1px #333 solid;
	padding:0.5em 0;
	margin:1em 0;
	font-weight: 900;
}
.s6 .option p{
	font-size: 120%;
	font-weight: normal;
}
.s7 {
	font-weight: 900;
}
.s7 .box{
	overflow: hidden;
	margin:0 0 2em;
	position: relative;
}
.s7 .box .img{
	float: left;
}
.s7 .box .img img{
	border-radius: 80px;
	max-height: 100px;
}
.s7 .box .txt{
	background: #f6f6f6;
	border-radius:10px;
	padding:1em;
	margin:0 0 0 120px;
	font-size: 120%;
}
.s7 .box .txt:before{
	display: inline-block;
	content:" ";
	width: 0;
	height: 0;
	border-right: 20px solid #f6f6f6;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	position: absolute;
	left:100px;
	top:20px;
	z-index:9999;
}
.s7 .box .voice{
	display: block;
	color:#8cc850;
	text-align: right;
	margin:0.5em 0 0;
}
.s8{
	background: #4f7ac6;
	color:#fff;
	font-weight: 900;
}
.s8 .sec-ttl{
	color:#ff0;
}
.s8 table{
	margin:0 0 4em;
}
.s8 table,
.s8 table th,
.s8 table td{
	border:1px #fff solid;
	text-align: center;
	vertical-align: middle;
}
.s8 table th,
.s8 table td{
	padding:1em;
}
.s8 table th{
	white-space: nowrap;
	font-size: 150%;
	background: rgba(255,255,255,0.2);
}
.s8 table thead td{
	color:#ff0;
	font-size: 200%;
}
.s8 table .note{
	text-align: left;
}
.s8 .btnarea .btn_orange{
	font-size: 300%;
}
.s8 .option{
	text-align: center;
}
.s8 .option h3{
	border-top:1px #fff solid;
	border-bottom:1px #fff solid;
	padding:0.5em 0;
	margin:1em 0;
	font-weight: 900;
}
.s8 .option p{
	font-size: 120%;
	font-weight: normal;
}

.s9{
	background: #f3f3f3;
	font-weight: 900;
}
.s9 .inner{
}
.s9 .flexitem{
	width: 50%;
}
.s9 .flexitem:first-child{
	border-right:1px #555 solid;
}
.s9 a{
	color:#333;
	text-align: center;
	display: block;
	padding:10px 0 0;
}
.s9 dd{
	font-size: 2em;
}

/* CnM */
h2 {
	background: none !important;
}
.sec-ttl {
	line-height: 1.5;
}
.s5 h2 {
	color: #fff;
}
.s8 table thead tr td {
	line-height: 1.5;
}
.s8 table tbody tr td {
	font-size: 1.6rem;
	line-height: 1.5;
}
.btnarea {
	font-weight: 900;
}
.kanren dl {
	display: block !important;
	background: #fff;
}


@media (max-width:768px) {
	section .sec-ttl{
		font-size: 240%;
	}

	.kv{
		height: 100%;
		padding:5%;
	}
	.kv .kvbox{
		padding:5%;
	}
	.kv .kvbox .catch{
		font-size: 270%;
		margin-bottom: 0;
	}
	.kv .kvbox .ttl{
		font-size: 150%;
	}
	.kv .kvbox small{
		font-size: 80%;
	}
	.s1 .box .item{
		width: 200px;
		height: 200px;
		padding:40px 0 0;
	}
	.s3 .service li{
		width: 100%;
		margin:0 0 1em;
	}
	.s5 ul li span{
		display: block;
	}
	.s9 dd{
		font-size: 1.5em;
	}

	.s9 .flex dl{
		border:1px #ccc solid;
		padding:1em 0;
	}
	.s9 .flexitem:first-child{
		border:0;
	}
	.s9 dd{
		font-size: 2em;
	}
	.s9 .flex.flex1-2 .flexitem{
		width: 100%;
	}

}

@media (max-width:480px) {
	section .sec-ttl{
		font-size: 180% !important;
	}
.kv{
	background: url(../img/kv_bg.w480.jpg) 50% 50% no-repeat;
}
	.kv .kvbox .catch{
		font-size: 230%;
		margin:1rem 0;
	}
	.kv .kvbox .registered{
		font-size: 150%;
	}
	.kv .kvbox .ttl{
		font-size: 170%;
	}
.s1{
	background: url(../img/s1_bg.w480.jpg) 50% top no-repeat;
}
	.s1 .box{
		margin:5% 0 0;
	}
	.s1 .box .item{
		width: 78px;
		height: 78px;
		padding:20px 0 0;
		margin:0 10px;
		line-height: 1;
	}
	.s1 .box .item dt{
		font-size: 120%;
		white-space: nowrap;
		margin:0;
	}
	.s1 .box .item dd{
		font-size: 300%;
	}
	.s1 .cta{
		margin:5% 0 0;
	}
	.s1 .cta .logoimg{
		margin:5% 0;
	}
	.s1 .cta .btn{
		font-size: 200%;
	}
	.s1 .cta p{
		font-size: 180%;
	}


	.s2 .box1 li{
		padding-left:3rem;
		padding-right:0;
		background-size:2rem;
		background-position: 0 top;
	}
	.s2 .box2 li{
		font-size: 1.5em;
	}
.s3{
	background: url(../img/s3_bg.w480.jpg) 50% 50%;
}
	.s3 .service{
		margin:10% 0 0;
	}
	.s3 .service p{
		font-size: 2.5em;
		line-height: 1.5;
	}
	.s3 .step .icon{
		width: 60px;
	}
.s5{
	background: url(../img/s5_bg.w480.jpg) 50% top;
}
	.s6 .btnarea,
	.s8 .btnarea{
		margin:2em 0 0;
	}
	.s6 .btnarea .btn_orange,
	.s8 .btnarea .btn_orange{
		font-size: 2em;
	}
	.s8 table{
		table-layout: fixed;
	}
	.s8 table thead td{
		white-space: nowrap;
	}
	.s8 table th{
		white-space: normal;
	}
	.s8 table tbody tr td {
		font-size: 1.0rem;
	}
}
