
/* +++++++++++++++++++++++++　flexbox */

/*
.flex 通常のflex
.flex-ce 中央揃え
.flex-cc　縦横中央揃え
*/

.flex{
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.flex-ce{
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.flex-cc{
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-pack: center; -ms-flex-pack: center; -webkit-justify-content: center; justify-content: center; -webkit-justify-content: center; justify-content: center;
	-webkit-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.flex-ace{
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; 
	-webkit-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.flex-ac{
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.flex-c{
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-pack: center; -ms-flex-pack: center; -webkit-justify-content: center; justify-content: center; -webkit-justify-content: center; justify-content: center;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}


@media (min-width: 768px){
	.visible-sp{ display:none !important;}
	.visible-pc{ display:block !important;}
}
@media (max-width: 768px) {
	.visible-sp{ display:block !important;}
	.visible-pc{ display:none !important;}
}


/* +++++++++++++++++++++++++　空き設定(margin) */

.mt00{ margin-top:0px !important;}
.mt05{ margin-top:5px !important;}
.mt1{ margin-top:10px !important;}
.mt2{ margin-top:20px !important;}
.mt3{ margin-top:30px !important;}
.mt4{ margin-top:40px !important;}
.mt5{ margin-top:50px !important;}
.mt6{ margin-top:60px !important;}
.mt7{ margin-top:70px !important;}
.mt8{ margin-top:80px !important;}
.mt9{ margin-top:90px !important;}
.mt10{ margin-top:100px !important;}

.mb05{ margin-bottom:5px !important;}
.mb1{ margin-bottom:10px !important;}
.mb2{ margin-bottom:20px !important;}
.mb3{ margin-bottom:30px !important;}
.mb4{ margin-bottom:40px !important;}
.mb5{ margin-bottom:50px !important;}
.mb6{ margin-bottom:60px !important;}
.mb7{ margin-bottom:70px !important;}
.mb8{ margin-bottom:80px !important;}
.mb9{ margin-bottom:90px !important;}
.mb10{ margin-bottom:100px !important;}
.mb15{ margin-bottom:150px !important;}
.mb20{ margin-bottom:200px !important;}

.mr05{ margin-right:5px !important;}
.mr1{ margin-right:10px !important;}
.mr2{ margin-right:20px !important;}
.mr3{ margin-right:30px !important;}
.mr4{ margin-right:40px !important;}
.mr5{ margin-right:50px !important;}
.mr6{ margin-right:60px !important;}
.mr7{ margin-right:70px !important;}
.mr8{ margin-right:80px !important;}
.mr9{ margin-right:90px !important;}
.mr10{ margin-right:100px !important;}

/* +++++++++++++++++++++++++　空き設定(padding) */

.pt05{ padding-top:5px !important;}
.pt1{ padding-top:10px !important;}
.pt2{ padding-top:20px !important;}
.pt3{ padding-top:30px !important;}
.pt4{ padding-top:40px !important;}
.pt5{ padding-top:50px !important;}
.pt6{ padding-top:60px !important;}
.pt7{ padding-top:70px !important;}
.pt8{ padding-top:80px !important;}
.pt9{ padding-top:90px !important;}
.pt10{ padding-top:100px !important;}

.pb05{ padding-bottom:5px !important;}
.pb1{ padding-bottom:10px !important;}
.pb2{ padding-bottom:20px !important;}
.pb3{ padding-bottom:30px !important;}
.pb4{ padding-bottom:40px !important;}
.pb5{ padding-bottom:50px !important;}
.pb6{ padding-bottom:60px !important;}
.pb7{ padding-bottom:70px !important;}
.pb8{ padding-bottom:80px !important;}
.pb9{ padding-bottom:90px !important;}
.pb10{ padding-bottom:100px !important;}

/* ++++++++++++++++ */
@media (max-width: 768px) {
	
	.mt05{ margin-top:0.5vw !important;}
	.mt1{ margin-top:1vw !important;}
	.mt2{ margin-top:2vw !important;}
	.mt3{ margin-top:3vw !important;}
	.mt4{ margin-top:4vw !important;}
	.mt5{ margin-top:5vw !important;}
	.mt6{ margin-top:6vw !important;}
	.mt7{ margin-top:7vw !important;}
	.mt8{ margin-top:8vw !important;}
	.mt9{ margin-top:9vw !important;}
	.mt10{ margin-top:10vw !important;}
	
	.mb05{ margin-bottom:0.5vw !important;}
	.mb1{ margin-bottom:1vw !important;}
	.mb2{ margin-bottom:2vw !important;}
	.mb3{ margin-bottom:3vw !important;}
	.mb4{ margin-bottom:4vw !important;}
	.mb5{ margin-bottom:5vw !important;}
	.mb6{ margin-bottom:6vw !important;}
	.mb7{ margin-bottom:7vw !important;}
	.mb8{ margin-bottom:8vw !important;}
	.mb9{ margin-bottom:9vw !important;}
	.mb10{ margin-bottom:10vw !important;}
	.mb15{ margin-bottom:15vw !important;}
	.mb20{ margin-bottom:20vw !important;}
	
}



@media screen and (min-width:768px){
/*pc・タブレットcss*/

.main{
	margin-bottom:50px;
}
.main img{
	width:100%;
}
#first-page{
	color:#000;
}
.first-box{
}
.first-box-even{
	padding:70px 0;
	background-color:#EDECEB;
	
}

.first-ttl{
	margin-bottom:60px;
	padding:30px 20px;
	background-color:#000;
	border-radius:10px;
	color:#FEF000;
	font-size:32px;
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.first-ttl .icon{
	margin-right:30px;
	padding:10px 30px;
	background-color:#FEF000;
	border-radius:100000px;
	color:#000;
	font-size:24px;
	font-weight:bold;
}
.first-ttl span{
	display:block;
	line-height:1;
	font-weight:bold;
}

.catchcopy{
	text-align:center;
}
.catchcopy p{
	display:inline-block;
	padding:30px 70px;
	margin-bottom:40px;
	border: solid 3px #000;
	font-size:32px;
	line-height:1.3;
	font-weight:bold;
}
.first-list{
	font-size:18px;
	line-height:1.3;
	counter-reset: listno3;
}
.first-list > li{
	position:relative;
	padding-left:35px;
	padding-bottom:20px;
	margin-bottom:20px;
	border-bottom: solid 1px rgba(0,0,0,0.2);
}
.first-list > li:last-child{
	margin-bottom:0;
}
.first-list > li:before {
	display:block;
	position:absolute;
	left:0;
	top:-3px;
	counter-increment: listno3;
	content: counter(listno3);
	background-color:#000;
	color:#FEF000;
	font-size:18px;
	letter-spacing:0.1em;
	text-indent: 0.1em;
	font-family: 'Century', serif;
	border-radius:1000%;
	text-align:center;
	width:24px;
	height:24px;
	line-height:24px;
}


.approach-box{
}
.approach-ttl{
	margin-bottom:40px;
}
.approach-ttl span{
	display:block;
	text-align:center;
	font-size:32px;
	line-height:1.3;
	font-weight:bold;
}
.approach-ttl .sub{
	margin-bottom:10px;
	font-size:17px;
	font-weight:bold;
}
.approach-box ol{
	margin-bottom:60px;
	counter-reset: approachlistno;
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.approach-box li{
	position:relative;
	width:28%;
	padding:40px 20px 20px;
	background-color:#FEF000;
	border:solid 3px #000;
	border-radius:10px;
	font-size:18px;
	line-height:1.5;
}
.approach-box li:before {
	display:block;
	position:absolute;
	left:50%;
	top:-25px;
	margin-left:-25px;
	counter-increment: approachlistno;
	content: "0"counter(approachlistno);
	background-color:#000;
	color:#FEF000;
	font-size:30px;
	font-weight:bold;
	letter-spacing:-0.01em;
	text-indent: 0.01em;
	font-family: 'arial',sans-serif;
	border-radius:1000%;
	text-align:center;
	width:50px;
	height:50px;
	line-height:50px;
}

.approach-box .ph{
	margin-bottom:20px;
}
.approach-box li img{
	width:100%;
}

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

@media (max-width: 768px) {
		
	.main{
		margin-bottom:3vw;
	}
	.main img{
		width:100%;
	}
	
	#first-page{
		color:#000;
	}
	.first-box{
	}
	.first-box-even{
		padding:7vw 0;
		background-color:#EDECEB;
		
	}
	
	.first-ttl{
		margin-bottom:6vw;
		padding:4vw 3vw;
		background-color:#000;
		border-radius:5px;
		color:#FEF000;
		font-size:20px;
		-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
		-webkit-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center;
		-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
	}
	.first-ttl .icon{
		margin-right:2vw;
		padding:2vw 3vw;
		background-color:#FEF000;
		border-radius:100000px;
		color:#000;
		font-size:14px;
		font-weight:bold;
	}
	.first-ttl span{
		display:block;
		line-height:1;
		font-weight:bold;
	}
	
	.catchcopy{
		text-align:center;
	}
	.catchcopy p{
		width:100%;
		padding:3vw 4vw;
		margin-bottom:7vw;
		border: solid 3px #000;
		font-size:22px;
		line-height:1.4;
		font-weight:bold;
	}
	.first-list{
		font-size:16px;
		line-height:1.3;
		counter-reset: listno3;
	}
	.first-list > li{
		position:relative;
		padding-left:35px;
		padding-bottom:3vw;
		margin-bottom:3vw;
		border-bottom: solid 1px rgba(0,0,0,0.2);
	}
	.first-list > li:last-child{
		margin-bottom:0;
	}
	.first-list > li:before {
		display:block;
		position:absolute;
		left:0;
		top:-3px;
		counter-increment: listno3;
		content: counter(listno3);
		background-color:#000;
		color:#FEF000;
		font-size:18px;
		letter-spacing:0.1em;
		text-indent: 0.1em;
		font-family: 'Century', serif;
		border-radius:1000%;
		text-align:center;
		width:24px;
		height:24px;
		line-height:24px;
	}
	
	
	.approach-box{
	}
	.approach-ttl{
		margin-bottom:8vw;
	}
	.approach-ttl span{
		display:block;
		text-align:center;
		font-size:24px;
		line-height:1.3;
		font-weight:bold;
	}
	.approach-ttl .sub{
		margin-bottom:2vw;
		font-size:14px;
		font-weight:bold;
	}
	.approach-box ol{
		margin-bottom:6vw;
		counter-reset: approachlistno;
		-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
		-webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between;
		-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
	}
	.approach-box li{
		position:relative;
		width:100%;
		padding:4vw;
		margin-bottom:9vw;
		background-color:#FEF000;
		border:solid 3px #000;
		border-radius:10px;
		font-size:16px;
		line-height:1.5;
	}
	.approach-box li:before {
		display:block;
		position:absolute;
		left:50%;
		top:-25px;
		margin-left:-25px;
		counter-increment: approachlistno;
		content: "0"counter(approachlistno);
		background-color:#000;
		color:#FEF000;
		font-size:30px;
		font-weight:bold;
		letter-spacing:-0.01em;
		text-indent: 0.01em;
		font-family: 'arial',sans-serif;
		border-radius:1000%;
		text-align:center;
		width:50px;
		height:50px;
		line-height:50px;
	}
	.approach-box .ph{
		margin-bottom:2vw;
	}
	.approach-box li img{
		width:100%;
	}
}














