@charset "UTF-8";

#index .mvBox{
	height: 705px;
	background: url(../img/top/frame_mv.png) repeat-x top center;
}
#index .mvBox .mv li{
	width: 100%;
	height: 705px;
	background-position:center center;
	background-size: 100% auto;
}
#index .sampleImage{
	margin-top: 60px;
}
#index .sampleImage h2{
	margin-top: 55px;
	font-size: 18px;
	line-height: 28px;
	font-weight: bold;
}
#index .sampleImage h2 + p{
	margin-top: 15px;
	font-size: 13px;
	line-height: 36px;
}
#index .works{
	margin-top: 85px;
}
#index .works ul{
	width: 1000px;
	margin: 40px auto 0;
	font-size: 0;
}
#index .works ul li{
	display: inline-block;
	width: 316px;
	margin-right: 26px;
	height:340px; overflow:hidden;
}
#index .works ul li:nth-child(3n){
	margin-right: 0;
}
#index .works ul li .dummy{
	width: 316px;
	height: 220px;
	background: #cdcdcd;
}
#index .works ul li .photo{width: 316px;
		height: 220px; overflow:hidden;}
		
#index .works ul li .photo img{ width:100%; height:auto;}
#index .works ul li .day{
	font-size: 12px;
	margin-top: 10px;
	padding-left: 2px;
}
#index .works ul li .title{
	font-size: 15px;
	font-weight: bold;
	padding-left: 2px;
}
h3{
	width: 235px;
	text-align: right;
	font-size: 26px;
	line-height: 1;
	letter-spacing: 1.8px;
}
h3::after{
	display: block;
	content: " ";
	margin-top: 12px;
	border-top:  2px solid #000;
}
h3 span{
	padding: 3px;
}
#index .flow{
	margin-top: 80px;
	padding: 40px 0 0;
	position: relative;
}
#index .flow a{
	color: #fff;
	font-size: 30px;
	font-weight: bold;
}
#index .flow a span{
	font-size: 15px;
	font-weight: normal;
}
#index .flow a .flowBG{
	position: absolute;
	top: 40px;
	left: 50%;
	margin-left: -500px;
	box-sizing: border-box;
	width: 1000px;
	background: url(../commons/img/bg_bk.png) repeat;
	padding: 102px 0 100px;
}
#index .profile{
	margin-top: 85px;
}
#index .profile .profLink{
	width: 1000px;
	margin: 60px auto 0;
	font-size: 0;
}
#index .profile .profLink li{
	display: inline-block;
	width: 332px;
	border-left: 1px solid #000;
}
#index .profile .profLink li:last-child{
	border-right: 1px solid #000;
}
#index .profile .profLink li a{
	display: block;
	position: relative;
	box-sizing: border-box;
	padding: 45px 0 50px 30px;
	font-size: 18px;
	line-height: 28px;
}
#index .profile .profLink li a:before{
	position: absolute;
    width: 0px;
    height: 100%;
    left: 0px;
    top: 0px;
    content: '';
    background: #fff100;
    transition: all 0.5s;
	z-index: -10;
}
#index .profile .profLink li a:hover:before{
	width: 100%;
}
#index .profile .profLink li a span{
	font-size: 12px;
}
#Gmap{
	width: 1000px;
	height: 400px;
	margin: auto;
}
#index .profile ul.profTxt{
	width: 1000px;
	margin: 20px auto 0;
}
#index .profile ul.profTxt li{
	font-size: 15px;
	line-height: 27px;
	font-weight: bold;
}
#index .profile ul.profTxt li span.fontSS{
	font-size: 13px;
	font-weight: normal;
}
#index .profile ul.profTxt li span.fontS{
	font-size: 14px;
	font-weight: normal;
}
	
	
/*-------about-------*/
	
	#about{
		margin-top: 45px;
	}
	
	#about .about_w1000{
		width: 1000px;
		margin:0 auto;
	}
	
	#about .about_midasi{
	font-size: 14px;
	margin-top:35px;
	margin-bottom: 42px;	
	}
	
	#about .kaitai,
	#about .manshon,
	#about .office,
	#about .zyuutaku{
		width: 471px;
	}
	
	
	#about img{
		display: block;
		margin-bottom:19px;
	}
	
	#about h4{
		font-size: 18px;
	padding-bottom: 9px;
	border-bottom:2px solid #000;
	margin-bottom:16px;
	}
	
	#about div p{
		font-size: 13px;
		line-height:2.3;
	}
	
	#about .about_01,
	#about .about_02{
		width: 1000px;
		overflow:hidden;
		margin-bottom:62px;
	}
	
	#about .about_02{
			margin-bottom:95px;
	}
	
	#about .kaitai,
		#about .office{
		float: left;
	
	}
	#about .manshon,
	#about .zyuutaku{
		float: right;
	}
	
	#about .about_link{
		width: 348px;
		height:75px;
		border:2px solid #000;
		text-align:center;
		line-height:75px;
		margin:0 auto 96px;
	}
#about .about_link a{
	display: inline-block;
padding-right: 60px;
font-size:16px;
font-weight:bold;

}
	
	
	
	
	footer{
		clear: both;
	}
	#page-top{
	clear: both;
	}
	
	/* --------company--------*/
	#company{
		margin-top: 45px;
	}
	
#company .company_w1000{
		width: 1000px;
		margin:0 auto;
	}


#company td{
	border: 1px solid #000;		
	font-size: 14px;
	vertical-align:text-top;

}
#company td:nth-child(odd){
	background-color:#000;
	color: #fff;
	border:1px solid #fff;
	padding: 15px 60px 15px 40px;
}

#company table{
	border: 1px solid #000;
	line-height:26px;
}
#company td:nth-child(even){
	padding: 15px 250px	15px 40px;
}
#company #Gmap{
	margin-top: 80px;
}

#company #message{
	padding-top: 90px;
}
	
	.com_message{
		margin-top: 34px;
	}
	.com_message img{
		float:left;
		
	}
		.com_mes_p{
			width: 512px;
			float:right;
			font-size: 14px;
			line-height:28px;
			margin-bottom: 100px;
		}
		.com_mes_p .p_01{
			margin-bottom:38px;
		}
		.com_mes_p .p_02{
		margin-bottom: 50px;
		}
		.com_mes_p .name{
			text-align: right;
			font-size:14px;
			background:url(../img/company/company_name.png) no-repeat bottom right;
			padding-right:13px;
		}
		.com_mes_p .name span{
				font-size: 16px;
			margin-left: 28px;
		}
	
	
/*-------flow-------*/
#flow{
	margin-top: 45px;
}
#flow .flow_box{
	width: 1000px;
	margin: 40px auto 0;
}
#flow .flow_box > p{
	font-size: 14px;
	line-height: 24px;
}
#flow .flow_box > ul{
	margin-top: 40px;
}
#flow .flow_box > ul > li::after{
	display: block;
	font-family: "Font Awesome 5 Free";
	content: '\f358';
	text-align: center;
	font-size: 50px;
	line-height: 50px;
	color: #fff100;
	padding: 40px 0;
}
#flow .flow_box > ul > li:last-child::after{
	display: none;
}
#flow .flow_box > ul > li h4{
	background: #000;
	color: #fff;
	padding-left: 20px;
	font-size: 18px;
	line-height: 60px;
	letter-spacing: 1px;
}
#flow .flow_box > ul > li h4 span{
	font-family: 'Lato', sans-serif;
	font-size: 20px;
	padding-right: 35px;
}
#flow .flow_box > ul > li div{
	padding: 40px 10px 0 15px;
}
#flow .flow_box > ul > li div p.flow_txt{
	float: left;
	font-size: 14px;
	line-height: 36px;
}
#flow .flow_box > ul > li div p.flow_img{
	float: right;
}
#flow .flow_box > ul > li div > ul{
	width: 933px;
	margin: 0 auto 35px;
	font-size: 0;
}
#flow .flow_box > ul > li div > ul li{
	display: inline-block;
	margin-right: 60px;
}
#flow .flow_box > ul > li div > ul li:last-child{
	margin-right: 0;
	vertical-align: top;
}
#flow .flow_box > ul > li div > ul + p{
	font-size: 14px;
	line-height: 36px;
}
/*-------top_fix---------*/

.mvBox .mv_p{
	
	font-size: 24px;
	height: 80px;
	width: 436px;
background-color: rgba(255, 255, 255, 0.5);

    z-index: 2;
    position: absolute;
    top: 323px;
    right: 102px;
		    text-align: center;
    line-height: 80px;
}

#index .mvBox{position:relative;}


	
@media screen and (max-width: 480px) {
	#index .mvBox{
		height: 300px;
		background: url(../img/top/frame_mv.png) repeat-x top center;
		background-size: 50% auto;
	}
	#index .mvBox .mv li{
		width: 100%;
		height: 300px;
		background-position:center center;
		background-size: 100% auto;
	}
	#index .sampleImage{
		width: 94%;
		margin: 30px auto 0;
	}
	#index .sampleImage img{
		width: 100%;
		height: auto;
	}
	#index .sampleImage h2{
		margin-top: 30px;
		font-size: 18px;
		line-height: 28px;
		font-weight: bold;
	}
	#index .sampleImage h2 + p{
		margin-top: 5px;
		font-size: 13px;
		line-height: 36px;
	}
	#index .works{
		margin-top: 85px;
	}
	#index .works ul{
		width: 316px;
		margin: 20px auto 0;
		font-size: 0;
	}
	#index .works ul li{
		display: inline-block;
		width: 100%;
		margin-right: 0;
		margin-top: 10px;
	}
	#index .works ul li:nth-child(3n){
		margin-right: auto;
	}
	#index .works ul li .dummy{
		width: 316px;
		height: 220px;
		background: #cdcdcd;
	}
	#index .works ul li .photo{width: 316px;
		height: 220px; overflow:hidden;}
		
	#index .works ul li .photo img{ width:100%; height:auto;}
	
	#index .works ul li .day{
		font-size: 12px;
		margin-top: 10px;
		padding-left: 2px;
	}
	#index .works ul li .title{
		font-size: 15px;
		font-weight: bold;
		padding-left: 2px;
	}
	h3{
		width: 180px;
		text-align: left;
		font-size: 26px;
		line-height: 1;
	}
	h3::after{
		display: block;
		content: " ";
		margin-top: 12px;
		border-top:  2px solid #000;
	}
	h3 span{
		padding-right: 0;
		padding-left: 12%;
	}
	#index .flow{
		width: 100%;
		margin: auto;
		padding: 40px 0 0;
		position: relative;
	}
	#index .flow img{
		width: 90%;
		height: 70px;
	}
	#index .flow a{
		color: #fff;
		font-size: 30px;
		font-weight: bold;
	}
	#index .flow a span{
		font-size: 15px;
		font-weight: normal;
	}
	#index .flow a .flowBG{
		position: absolute;
		top: 40px;
		left: 50%;
		margin-left: -45%;
		box-sizing: border-box;
		width: 90%;
		background: url(../commons/img/bg_bk.png) repeat;
		padding: 20px 0;
	}
	#index .profile{
		margin-top: 85px;
	}
	#index .profile .profLink{
		width: 90%;
		margin: 30px auto 0;
		font-size: 0;
	}
	#index .profile .profLink li{
		display: inline-block;
		width: 100%;
		border-left: none;
		border-top: 1px solid #000;
	}
	#index .profile .profLink li:last-child{
		border-right: none;
		border-bottom: 1px solid #000;
	}
	#index .profile .profLink li a{
		display: block;
		position: relative;
		box-sizing: border-box;
		padding: 30px 0 30px 30px;
		font-size: 18px;
		line-height: 28px;
	}
	#index .profile .profLink li a:before{
		display: none;
	}
	#index .profile .profLink li a:hover:before{
		display: none;
	}
	#index .profile .profLink li a span{
		font-size: 12px;
	}
	#index .profile #Gmap{
		width: 94%;
		height: 280px;
		margin: 20px auto 0;
	}
	#index .profile ul.profTxt{
		width: 94%;
		margin: 10px auto 0;
	}
	#index .profile ul.profTxt li{
		font-size: 15px;
		line-height: 27px;
		font-weight: bold;
	}
	#index .profile ul.profTxt li span.fontSS{
		font-size: 13px;
		font-weight: normal;
	}
	#index .profile ul.profTxt li span.fontS{
		font-size: 14px;
		font-weight: normal;
		display: block;
	}
	
	
	
	/*-------about-------*/
	#about {
		margin-top: 0px;
	}
	
	#about .about_midasi {
		margin: 15px 0 40px;
	}
	
	#about .about_w1000{
		width: 94%;
	}
	
	#about .kaitai,
	#about .manshon,
	#about .office,
	#about .zyuutaku{
		width: 100%;
		margin-bottom:20px;
	}
	
	#about img{
		width: 100%;
	}
	
	#about .about_01,
	#about .about_02{
		width: 100%;
		margin-bottom:0;
	}
	
	#about .about_02{
			margin-bottom:30px;
	}
	
	#about .kaitai,
		#about .office,
		#about .manshon,
		#about .zyuutaku{
		float: none;
	
	}

	#about .about_link{
		width: 100%;
		margin:0 auto 10px;
	}



	#about .about_01 p,
	#about .about_02 p{
		line-height: 1.8;
	}
	
	#about h4{
		margin-bottom: 10px;
	}
	
	/*-------- company------*/
	#company{
		margin-top: 0;
	}
	#company .company_w1000{
		width: 94%;
		
	}
	
	#company td{
		display: block;
  

	}
	#company td:nth-child(odd){
		text-align: center;
	padding: 10px 5px;
		border: 1px solid #000;
	}
	
		#company table{
		margin: 0 auto;
	border: none;
		}
		#company td:nth-child(even){
padding: 10px 5px;;
	}
	
	.com_message{
		margin-top: 34px;
	}
	.com_message img{
		float:none;
	max-width: 100%;
		height:auto;
		
	}
		.com_mes_p{
			width: 100%;
			float:none;
			line-height:24px;
			margin-bottom:15px;
		
		}
		.com_mes_p .p_01{
			margin-bottom:20px;
			margin-top:20px;
		}
		.com_mes_p .p_02{
		margin-bottom: 25px;
		}
	
	#company #Gmap{
		width: 100%;
		height: 280px;
		margin: 30px auto 0;
	}
		
		
		
	/*-------flow-------*/
	#flow{
		margin-top: 0;
	}
	#flow .flow_box{
		width: 94%;
		margin: 20px auto 0;
	}
	#flow .flow_box > p{
		font-size: 14px;
		line-height: 24px;
	}
	#flow .flow_box > ul{
		margin-top: 20px;
	}
	#flow .flow_box > ul > li::after{
		display: block;
		font-family: "Font Awesome 5 Free";
		content: '\f358';
		text-align: center;
		font-size: 40px;
		line-height: 40px;
		color: #fff100;
		padding: 20px 0;
	}
	#flow .flow_box > ul > li:last-child::after{
		display: none;
	}
	#flow .flow_box > ul > li h4{
		background: #000;
		color: #fff;
		padding: 15px;
		font-size: 18px;
		line-height: 28px;
		letter-spacing: 1px;
	}
	#flow .flow_box > ul > li h4 span{
		font-family: 'Lato', sans-serif;
		font-size: 20px;
		padding-right: 20px;
	}
	#flow .flow_box > ul > li div{
		padding: 20px 3% 0;
	}
	#flow .flow_box > ul > li div p.flow_txt{
		float: none;
		font-size: 14px;
		line-height: 24px;
	}
	#flow .flow_box > ul > li div p.flow_img{
		float: none;
		text-align: center;
		margin-top: 15px;
	}
	#flow .flow_box > ul > li div > ul{
		width: 100%;
		margin: 0 auto 35px;
		font-size: 0;
	}
	#flow .flow_box > ul > li div > ul li{
		display: block;
		margin-right: 0;
		text-align: center;
		margin-bottom: 15px;
	}
	#flow .flow_box > ul > li div > ul li:last-child{
		margin-right: 0;
		margin-bottom: 0;
		vertical-align: top;
	}
	#flow .flow_box > ul > li div > ul + p{
		font-size: 14px;
		line-height: 24px;
	}
	
	
	#index .flow a .flowBG{
		padding: 38px 0;
	}
	#index .flow img{
		    height: 105px;
	}
	
	
	/*-------top_fix---------*/
	
	.mvBox .mv_p{
		font-size: 20px;
		height: auto;
		width: 70%;
		background-color: rgba(255, 255, 255, 0.5);	
		z-index: 2;
		position: absolute;
		top: 50%;
		right: 10px;
		text-align: right;
		line-height: 30px;
		box-sizing: border-box;
		padding: 15px 10px 15px 0;
	}
	
	#index .mvBox{position:relative;}
	
}
 