@charset "UTF-8";

h3{
	font-size:25px;
}
.margin-top{
	margin-top:30px;
}
.margin-bottom{
	margin-bottom:30px;
}

/*メインビジュアル*/
#main_vd_op{
	padding-top: 45%;
	background-image: url("../images/main_vd2.png");
	background-size:cover;
	background-repeat: no-repeat;
	background-position: center;
	position: relative;
	max-height: 600px;
}

.heading_op{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left:12%;
	margin:auto;
	font-size:29px;
	letter-spacing: 1.8px;
	color:#fff;
	text-shadow: 0 2px 10px rgba(14,1,1,0.5);
}

.heading_op h1{
	margin-bottom:9px;
}

.heading_under{
	border-bottom:3px solid #fff;
}

#main_vd_op_b{
	padding-top: 35%;
	background-image: url("../images/main_vd.png");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	position: relative;
	max-height: 600px;
}

.heading_op_b{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left:12%;
	margin:auto;
	font-size:29px;
	letter-spacing: 1.8px;
	color:#fff;
	text-shadow: 0 2px 10px rgba(14,1,1,0.5);
}

.heading_op_b h1{
	background: #000;
	font-size:25px;
	padding:5px 10px;
	display: inline-block;
}

.heading_op_b .margin-bottom{
	margin-bottom:10px;
}

/*パーツ01*/

#block01 h3{
	margin-bottom:20px;
	border-left: 6px solid #666;
	padding-left: 10px;
	font-size:17px;
	font-weight: normal;
}

#block01 h3 span{
	border: 1px solid #666;
	padding: 2px 10px;
	font-size:13px;
	font-weight: normal;
	display: inline-block;
	margin-top:-30px;
}

.parts01{
	padding:20px;
	box-sizing:border-box;
	border:1px solid #666;
	text-align: left;
}

.parts01 h3{
	border-left: 6px solid #666;
	padding-left: 10px;
	margin-bottom:20px;
}

/*パーツ02*/
.parts02{
	text-align: left;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.parts02 h3{
	margin-bottom:20px;
}

.parts02 .image{
	width:48%;
}

.parts02 .image img{
	width:100%;
}

.parts02 .text{
	width:48%;
}

/*パーツ03*/
.parts03{
	text-align: left;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.parts03 h3{
	margin-bottom:20px;
}

.parts03 .image{
	width:35%;
	display: flex;
	flex-direction: column;
	order: 2;
}

.parts03 .image>div:first-of-type{
	margin-bottom: 10px;
}

.parts03 .image img{
	width:100%;
}

.parts03 .text{
	width:63%;
}

/*パーツ04*/
.parts04{
	text-align: left;
	display: flex;
	flex-direction: column;
}

.parts04 h3{
	margin-bottom:20px;
}

.parts04 .image{
	width:100%;
}

.parts04 .image img{
	width:100%;
}

.parts04 .text{
	width:100%;
}

/*パーツ05*/
#block05{
	position: relative;
	background-image: url("../images/company_image07.png");
	background-attachment: fixed;
	color:#fff;
	padding:20px 0;
}

#block05:after{
  content: '';
  background-color: rgba(0,0,0,.5);
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.parts05{
	display: flex;
	flex-direction: column;
}

.parts05 h3{
	margin-bottom:20px;
	position: relative;
	z-index: 1;
	text-align:center;
}

.parts05 p{
	position: relative;
	z-index: 1;
	text-align:center;
	
}

/*パーツ06*/
.parts06{
	display: flex;
	justify-content: space-between;
}
.merit{width:31%; border:1px solid #666;}
.merit img{width:100%; padding:0; margin-top:-1px;}
.merit h3{padding: 10px 20px 10px;}
.merit p{padding: 0 20px 20px;}

@media screen and (max-width:1024px) {
#main_vd_op{
	padding-top: 45%;
}
}

@media screen and (max-width:850px) {
#main_vd_op{
	padding-top: 45%;
}
.heading_op_b{
	top: 80%;
	transform: translateY(-80%);
	left:5%;
}
}

@media screen and (max-width:750px) {

/*mainVD*/
#main_vd_op{
	height: 350px;
	padding-top: 0;
	background-image: url("../images/main_vd_sp2.png");
	background-position: 0px 1px; 
}

.heading_op{
	font-size:25px;
}

.heading_op h1{
	border-bottom:3px solid #fff;
	margin-bottom:9px;

}
	
/*block02*/
.parts02{
	text-align: left;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: column;
}

.parts02 h3{
	margin-bottom:20px;
}

.parts02 .image{
	width:100%;
	margin-bottom:30px;
}

.parts02 .text{
	width:100%;
}

/*block03*/
.parts03{
	text-align: left;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: column;
}

.parts03 .image{
	width:100%;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	margin-bottom:30px;
}

.parts03 .image>div:first-of-type,
.parts03 .image>div:nth-of-type(2){
	margin-bottom: 0px;
	width: 49%;
}
	

.parts03 .image img{
	width:100%;
}

.parts03 .text{
	width:100%;
}

/*パーツ06*/
.parts06{
	display: flex;
	justify-content: center;
	flex-direction: column;
}
div.merit:first-of-type,
div.merit:nth-of-type(2){
	margin-bottom: 30px;
	}

.merit{width:100%; border:1px solid #666;}
.merit img{width:100%; padding:0; margin-top:-1px;}
.merit h3{padding: 10px 20px 10px;}
.merit p{padding: 0 20px 20px;}

}

@media screen and (max-width:600px) {
	
#main_vd_op{
	background-position: -20px 1px; 
}

.heading_op{
	font-size: 4.8vw;
	text-align: center;
	width:100%;
	left: 0;
	right:0;
	}

.heading_op h1{
	display: inline-block;
	}

.heading_op_b h1{
	font-size:18px;
	padding:5px 10px;
	}
	
.heading_op_b .margin-bottom{
	margin-bottom:5px;
}
}

@media screen and (max-width:440px) {
	#main_vd_op{
	background-position: -100px 1px; 
}
}