#main_contents {
	margin-bottom: 50px;
}

main .title_area {
	background: #333;
	overflow: hidden;
	margin-bottom:0;
}

main .title_area .container {
	box-shadow: 0 36px 0px 0px #666, 0 -36px 0px 0px #666, 48px 0 60px -16px rgba(0,0,0,0.4), -48px 0 60px -16px rgba(0,0,0,0.4);
	padding:2em;
}

main .title_area h1 {
	font-size:1.5em;
	font-weight:bold;
	color:#F7CB00;
	text-align: center;
}

#mv h2 {
	width:84%;
	max-width: 798px;
	position: relative;
	margin:0 auto 1em;
}

#mv {
	position: relative;
	padding:2.3em 0;
	text-align: center;
}

#mv:before,
#mv:after {
	content:"";
	position:absolute;
	top:0;
	right:0;
	width:11vw;
	height:100%;
	background:url('../images/online/wawawa.svg') no-repeat center left;
	background-size:100%;
}

#mv:after {
	left:0;
	right:auto;
	transform: rotate(180deg);
}

#mv p {
	font-weight:bold;
}

#merit h3,
#flow h3,
#form h3 {
	background:url('../images/online/bg.jpg');
	background-size:20px;
	text-align: center;
	font-weight:bold;
	padding:1em 0;
	font-size:1.6em;
	line-height: 1.4;
}
#flow h3 {
	background:url('../images/online/bg_w.jpg');
	background-size:20px;
}
#merit h3 span,
#flow h3 span,
#form h3 span {
	color:#FF8500;
	font-weight:bold;
	display: block;
	font-family: Arial, 'Open Sans', Helvetica, sans-serif;
	font-size:0.75em;
	letter-spacing: 0.08em;
}
#merit h3 span:before,
#flow h3 span:before,
#form h3 span:before {
	content:"- ";
}
#merit h3 span:after,
#flow h3 span:after,
#form h3 span:after {
	content:" -";
}

#form h3 {
	margin-bottom:1.5em;
}

#merit {
	background: #EEE;
	display: block;
	overflow: hidden;
}

#merit ul {
	margin:2em auto;
	width:100%;
	max-width:320px;
}

#merit ul li {
	background: #FFF;
	clear:both;
	display: block;
	overflow:hidden;
	padding:2em 1.5em;
	margin-bottom:1.6em;
	box-sizing: border-box;
	border:solid 2px #444;
	box-shadow:6px 6px 0 0 #444;
}

#merit ul li img {
	width:120px;
	margin:0 auto;
	display: block;
}

#merit ul li h4 {
	font-weight:bold;
	font-size:1.5em;
	text-align: center;
	margin:0.5em 0;
}

#flow ol {
	padding:2em 0;
	margin:0 auto;
	max-width:680px;
}

#flow ol li {
	position: relative;
}

#flow ol li .num {
	position: absolute;
	top:2.1em;
	left:0;
}

#flow ol li .num p {
	background:#FF8500;
	color:#FFF;
	font-weight:bold;
	border-radius:1.6em;
	line-height:1.6;
	display: inline-block;
	width:6em;
	text-align: center;
}

#flow dl {
	padding:2em 0;
	display: table;
	width:100%;
	box-sizing: border-box;
	border-bottom: solid 1px #CCC;
}

#flow ol li:last-child dl {
	border-bottom:none;
}

#flow dl dt,
#flow dl dd {
	display: table-cell;
	vertical-align: top;
}

#flow dl dt {
	width:86px;
	padding:2.5em 1.5em 0 0;
}

#flow dl dd {
	line-height: 1.7;
}

#flow dl dd h4 {
	font-size:1.2em;
	font-weight:bold;
	margin-bottom:0.2em;
}

#flow dl dd .to_form {
	background: #FF5B22;
	color:#FFF;
	padding:0.9em 3em 0.9em 1.5em;
	font-size:1.1em;
	border-radius:2.8em;
	display: inline-block;
	margin-top: 0.5em;
	position: relative;
	text-decoration: none;
}

#flow dl dd .to_form:hover {
	text-decoration: none;
	opacity: 0.7;
}

#flow dl dd .to_form:after {
	content:"";
	position: absolute;
	top:50%;
	right:1.5em;
	margin-top:-4px;
	width:6px;
	height:6px;
	border-right:solid 1px #FFF;
	border-bottom:solid 1px #FFF;
	transform :rotate(45deg);
}


@media screen and (min-width: 540px) {

#merit ul {
	max-width:none;
}

#merit ul li img {
	float:left;
	width:20%;
	margin:0;
	margin-right:4%;
}

#merit ul li h4 {
	text-align: left;
	font-size:1.3em;
	margin:0 0 0.2em 0;
}

#merit ul li h4,
#merit ul li p {
	width:76%;
	float:right;
}



}


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

#main_contents {
	margin-bottom: 80px;
}

#main_contents .container {
	max-width:960px;
}

#mv h2 {
	width:70%;
}

#mv p {
	font-size:1.1em;
}

#mv p br.tb {
	display: block;
}

#mv:before,
#mv:after {
	width:10vw;
}

#mv:before {
	right:2vw;
}

#mv:after {
	left:2vw;
}

#merit .container {
	max-width:1000px;
}

#merit ul {
	text-align: center;
}

#merit ul li {
	display: inline-block;
	vertical-align: top;
	width:314px;
	margin:0 8px 1.6em;
}

#merit ul li img {
	float:none;
	width:120px;
	margin:0 auto;
}

#merit ul li h4 {
	text-align: center;
	font-size:27px;
	margin:0.6em 0;
}

#merit ul li h4,
#merit ul li p {
	width:100%;
	float:none;
}

#merit ul li p {
	text-align: left;
	font-size: 14px;
}

#flow dl dt {
	padding:2.5em 2em 0 0;
}

}


@media screen and (min-width: 1000px) {

#mv h2 {
	width:90%;
	margin:0 auto 2em;
}

#mv:before {
	right:50%;
	margin-right:-590px;
	width:130px;
}

#mv:after {
	left:50%;
	margin-left:-590px;
	width:130px;
}

#mv p {
	font-size:18px;
	line-height: 1.8;
}

#mv p br.tb {
	display: none;
}

#merit h3,
#flow h3,
#form h3 {
	font-size:30px;
}

#merit h3 span,
#flow h3 span,
#form h3 span {
	font-size:21px;
}

#flow ol {
	max-width:none;
}

#flow ol li .num {
	position: inherit;
	display: table-cell;
	vertical-align: middle;
	padding-right:1.7em;
	top:0;
	z-index:1;
}

#flow ol li .num p {
	width:104px;
	height:104px;
	line-height:104px;
	text-align: center;
	border-radius:104px;
}

#flow ol li .num:before {
	content:"";
	width:0;
	height:100%;
	border-right:solid 4px #FF8500;
	position: absolute;
	top:0;
	left:50px;
	z-index:-1;
}

#flow ol li:first-child .num:before {
	top:50%;
	height:50%;
}

#flow ol li:last-child .num:before {
	height:50%;
}

#flow ol li dl {
	display: table-cell;
	vertical-align: top;
}

#flow dl dt {
	width:100px;
	padding:0 1.5em 0 0;
	vertical-align: middle;
}

#flow dl dd {
	vertical-align: middle;
}

#flow dl dd h4 {
	font-size:1.3em;
}


}


@media screen and (min-width: 1200px) {



}