@charset "utf-8";

@-ms-viewport {
  width: device-width;
}

@viewport {
  width: device-width;
}

* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.pc{display:block!important;}
.sp{display:none!important;}

img{
	display:block;
}

p{
	margin-bottom:2.5rem;
}


/*header
----------------------------------------------------*/
header{
	position:fixed;
	width:100%;
	background:rgba(255,255,255,0.85);
	z-index:9;
}

header h1{
	width:100px;
	margin:20px auto 20px 0;
}

header img{
	width:100%;
	height:auto;
}

header .box_nav{
	position:absolute;
	top:0;
	right:0;
	width:100%;
	padding:15px;
	text-align:right;
	z-index:9;
}

header .box_nav ul li{
	height:34px;
	margin:0 0.8rem;
	display:inline-block;
}

header .box_nav ul li a{
	position:relative;
	color:#000;
	text-decoration:none;
	line-height:1.0;
	display:inline-block;
}

header .box_nav ul li:last-child a{
	margin-top:10px;
	padding:10px 15px;
	background:linear-gradient(to left, #E70012, #C01920);
	font-size:14px;
	color:#FFF;
}

/*header .box_nav ul li a:before{
	content: "";
	position: absolute;
	 left: 0;
	bottom: -4px;
	width: 100%;
	height: 2px;
	background: #333;
	transform: scale(0, 1);
	transform-origin: left;
	transition: 0.4s;
}

header .box_nav ul li a:hover:before {
	transform: scale(1);
}

header .box_nav ul li:last-child a:hover:before {
	transform: scale(0);
}*/


/*navigation
----------------------------------------------------*/
#headIn{
	display:none;
}


/*Contents layout
----------------------------------------------------*/
section{
	position:relative;
	width:100%;
	display:block;
	clear:both;
}

section:after,
.contents:after,
ul:after,
dl:after{
	visibility: hidden;
	display: block;
	font-size: 0px;
	content: " ";
	clear: both;
	height: 0;
}

.contents{
	position:relative;
	width:1100px;
	margin:0 auto;
}

h2,h3,h4{
	color:#000;
}

h2.sec{
	padding-top:130px;
	margin-bottom:70px;
	font-size:40px;
	font-weight:700;
	text-align:center;
}

h2.sec:after{
	content:"　";
	position:absolute;
	top:250px;
	left:calc(50% - 40px);
	width:80px;
	height:3px;
	margin:0 auto;
	background:#E70012;
}


/*mv
----------------------------------------------------*/
#mv{
	height:680px;
	background:url(../img/img_mv.jpg) no-repeat center;
	background-size:cover;
}

#mv .contents div{
	width:600px;
	height:680px;
	margin:0 0 0 auto;
	padding:130px 25px 25px 25px;
	background:rgba(255,255,255,0.9);
}

#mv .contents div h2{
	font-size:45px;
	font-weight:700;
	line-height:1.8;
}

#mv .contents div h2 span{
	background:linear-gradient(transparent 70%, #FFF70E 60%);
	font-size:65px;
	color:#E70012;
}

#mv .contents div h2 span:nth-child(3){
	padding:0 30px;
}

#mv .contents div h2 span:last-child{
	padding-left:30px;
	background:none;
	font-size:45px;
}

#mv .contents div p{
	padding:20px 30px;
}

#mv .contents div p span{
	color:#E70012;
}


/*problem
----------------------------------------------------*/
#problem{
	padding:80px 0;
	background:url(../img/bg_problem.gif) no-repeat center -250px;
	background-size:3500px;
}

#problem .box01 .box_left{
	float:left;
	width:35%;
}
	
#problem .box01 .box_right{
	float:left;
	width:50%;
	margin-top:70px;
	padding:25px 0 80px 60px;
	background:url(../img/img_problem03.png) no-repeat;
	background-size:contain;
	font-size:30px;
	font-weight:700;
	line-height:1.6;
}

#problem .box02 .box_left{
	float:left;
	width:50%;
	margin:50px 5% 0 10%;
	padding:25px 0 80px 30px;
	background:url(../img/img_problem04.png) no-repeat;
	background-size:contain;
	font-size:30px;
	font-weight:700;
	line-height:1.6;
}
	
#problem .box02 .box_right{
	float:right;
	width:35%;
	margin-top:-50px;
}	
	
#problem img{
	width:100%;
	height:auto;
}
	
	
/*about
----------------------------------------------------*/
#about{
	padding:0 0 80px 0;
	background:#F1F6F8 url(../img/bg_about.png) no-repeat center top;
	background-size:100%;
}
	
#about h3{
	margin-bottom:50px;
	font-size:30px;
	font-weight:700;
	text-align:center;
}
	
#about h3 span{
	background:linear-gradient(transparent 70%, #FFF70E 60%);
	font-size:34px;
}	

#about .cf{
	background:url(../img/img_about05.png) no-repeat center;
	background-size:486px;
}

#about .box_left,
#about .box_center,
#about .box_right{
	float:left;
	margin-bottom:30px;
	text-align:center;
}

#about .box_left{
	width:30%;
}
	
#about .box_center{
	width:40%;
}
	
#about .box_right{
	width:30%;
}

#about .box_left p,
#about .box_right p{
	font-size:20px;
	line-height:1.6;
}

#about .box_left img,
#about .box_right img{
	width:160px;
	height:auto;
	margin:0 auto;
	display:block;
}

#about .box_center img{
	width:220px;
	height:auto;
	margin:0 auto;
	display:block;
}

#about .box_left h3,
#about .box_center h3,
#about .box_right h3{
	margin:0 auto;
	font-size:26px;
}

#about .box_center h3{
	width:340px;
	margin-bottom:20px;
	background:url(../img/img_about04.png) no-repeat center;
	background-size:contain;
}
	
#about .box_right h3 span{
	background:none;
	font-size:36px;
}

#about .kakomi{
	padding:30px;
	background:#FFF;
	box-shadow: 0 0 10px 10px rgba(0, 0, 0, .1);
}

#about .kakomi h3{
	margin-bottom:25px;
	font-size:30px;
	font-weight:700;
	color:#E70012;
}

#about .kakomi ul li{
	float:left;
	width:32%;
	margin-left:2%;
	padding:20px 0;
	background:#FFFCAC;
	text-align:center;
	font-weight:700;
	color:#000;
}

#about .kakomi ul li:first-child{
	margin-left:0;
}


/*btn
----------------------------------------------------*/
.btn{
	padding:100px 0 0 0;
}

.btn a{
	width:760px;
	margin:0 auto 10px auto;
	padding:30px;
	background:linear-gradient(to left, #E70012, #C01920);
	font-size:40px;
	font-weight:700;
	text-align:center;
	color:#FFF;
	display:block;
}

.btn p{
	text-align:center;
	font-size:20px;
	font-weight:700;
}


/*region
----------------------------------------------------*/
#region img{
	width:100%;
	height:auto;
	margin:0 auto 80px auto;
	display:block;
}

#region h3{
	margin-bottom:40px;
	font-size:30px;
	font-weight:700;
	text-align:center;
}

#region h3 span{
	background:linear-gradient(transparent 60%, #FFF70E 60%);
	font-size:40px;
}

#region h3 span span{
	font-size:30px;
}

#region p{
	padding-top:50px;
	background:url(../img/img_region02.png) no-repeat center top;
	background-size:70px;
	font-size:50px;
	font-weight:700;
	color:#E70012;
	text-align:center;
}

#region strong{
	padding:0 60px;
	background:url(../img/img_region03.png) no-repeat center top;
	background-size:contain;
	line-height:1.0;
}

#region strong span{
	padding-bottom:10px;
	border-bottom:1px solid #E70012;
}


/*service
----------------------------------------------------*/
#service p{
	margin-bottom:50px;
	text-align:center;
}

#service .box_service{
	width:760px;
	margin:0 auto 80px auto;
	padding:50px 50px 30px 50px;
	background:#FFF;
	box-shadow: 0 0 20px 20px rgba(0, 0, 0, .05);
}

#service .box_service h3{
	width:560px;
	margin:-80px auto 40px auto;
	background:#E70012;
	border:1px solid #E70012;
	font-size:18px;
	color:#FFF;
}

#service .box_service h3 em{
	position:relative;
	width:98px;
	top:-3px;
	font-style:normal;
	text-align:center;
	display:inline-block;
}

#service .box_service h3 span{
	width:460px;
	padding:6px 10px;
	background:#FFF;
	font-size:24px;
	color:#000;
	display:inline-block;
}

#service .box_service dl{
	margin-bottom:10px;
	background:url(../img/img_service07.png) no-repeat 34px bottom;
	background-size:32px;
}

#service .box_service dl:nth-child(4){
	background:none;
}

#service .box_service dl dt{
	float:left;
	width:100px;
}

#service .box_service dl dd{
	position:relative;
	float:right;
	width:520px;
}

#service .box_service dl dt img{
	width:100%;
	height:auto;
}

#service .box_service dl dd img{
	position:absolute;
	right:0;
	width:160px;
	height:auto;
}

#service .box_service dl:nth-child(2) dd img{
	width:180px;
}

#service .box_service dl dd h4{
	margin-bottom:15px;
	font-size:30px;
	font-weight:700;
	line-height:1.4;
	color:#000;
}

#service .box_service dl dd h4,
#service .box_service dl dd p{
	float:left;
	width:280px;
	text-align:left;
}

#service .btn{
	padding:50px 0 100px 0;
}


/*option
----------------------------------------------------*/
#option .option01{
	background:url(../img/bg_option01.png) no-repeat left top;
	background-size:contain;
}

#option .option02{
	padding:0 0 50px 0;
	background:url(../img/bg_option02.png) no-repeat right bottom;
	background-size:contain;
}

#option .box_option{
	margin:0 auto 80px auto;
	padding:50px;
	background:#FFF;
	box-shadow: 0 0 20px 20px rgba(0, 0, 0, .05);
}

#option .box_option h3{
	margin-bottom:50px;
	padding-bottom:15px;
	border-bottom:5px solid #E70012;
	font-size:40px;
	font-weight:700;
	line-height:1.2;
}

#option .box_option h3 span{
	font-size:20px;
}

#option .box_option h3 span span{
	margin:0 15px 0 5px;
	font-family: 'Roboto', sans-serif;
	font-size:60px;
	color:#E70012;
}

#option .box_option h4{
	margin-bottom:30px;
	font-size:30px;
	font-weight:700;
}	

#option .box_option a{
	margin:10px auto 30px auto;
	padding:5px 12px;
	background:linear-gradient(to left, #E70012, #C01920);
	text-align:center;
	color:#FFF;
	display:inline-block;
}

#option .option02 p{
	margin-bottom:50px;
}

#option .option01 dl{
	float:left;
	width:33.3%;
}

#option .option02 dl{
	float:left;
	width:25%;
}

#option .option01 dl dd,
#option .option02 dl dd{
	text-align:center;
}


#option .box_option img{
	width:auto;
	height:200px;
	margin:0 auto 10px auto;
	display:block;
}


/*page top
--------------------------------------------*/
#page-top{
	position: fixed;
	right: 2%;
	z-index:999;
}

#page-top a{
	display:block;
}

#page-top a:hover{
	opacity:0.70;
	filter: alpha(opacity=70);
}

#page-top a img{
	width:60px;
	height:auto;
	display:block;
}


/*footer
----------------------------------------------------*/
footer{
	padding-top:100px;
}

footer .contents{
	width:100%;
	padding:50px 0;
	background:#F1F6F8;
	font-size:14px;
	text-align:center;
}

footer h2{
	width:100px;
	margin:0 auto 30px auto;
}

footer h2 img{
	width:100%;
	height:auto;
}

footer a.btn{
	margin:0 auto 20px auto;
	padding:5px 12px;
	background:linear-gradient(to left, #E70012, #C01920);
	text-align:center;
	color:#FFF;
	display:inline-block;
}

footer ul li{
	display:inline;
}

/*footer ul li:first-child:after{
	content:"｜";
}*/

footer ul li a{
	padding:0 5px;
}

footer .copyright{
	margin:0;
	padding:20px 0;
	text-align:center;
	font-size:12px;
}
