
#psection1{/*background:#FFF;*/
background-color:#f7f7f7;
width:100%;
height: auto !important;
	-webkit-transition: all .1s linear;
	-moz-transition: all .1s linear;
    -o-transition: all .1s linear;
    -ms-transition: all .1s linear;
    transition: all .1s linear;
	padding: 0;
	position: relative;
}



#psection1 .fp-tableCell {
    vertical-align:top;

	overflow: hidden;
}
#psection1 .intro{
	width: 100%;
	max-width: 100%;
	max-height:900px;
	position:relative;
	overflow:hidden;

background-position:center top;
background-repeat:no-repeat;
-moz-background-size:cover;
-webkit-background-size:cover;
-o-background-size:cover;
-ms-background-size:cover;
background-size:cover;
margin:0;
padding:0;

}
#psection1.company .intro{	background-image:url(../images/common/cont04.jpg);}
#psection1.service .intro{	background-image:url(../images/common/cont01.jpg);}
#psection1.equipment .intro{	background-image:url(../images/common/cont02.jpg);}
#psection1.works .intro{	background-image:url(../images/common/cont03.jpg);}
#psection1.contact .intro{	background-image:url(../images/common/cont05.jpg);}
#psection1.recruit .intro{	background-image:url(../images/common/cont07.jpg);}
#psection1.member .intro{	background-image:url(../images/common/cont06.jpg);}

#psection1 .intro::after{
	position: absolute;
	content: '';
	width: 100%;
	height: 100%;
	background-color:#001c58;
	top:0;
	left: 0;
	opacity: 0.5;
}

#psection1 .intro{
	-webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -o-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);

	transition: transform 0.8s ease-out;
    -webkit-transition: transform 0.8s ease-out;
    -moz-transition: transform 0.8s ease-out;
}
#psection1.openingstart .intro{
	-webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}






#psection1 h1	{
		display: none;
	margin:0; padding:0 0;
	position:absolute;
	top:55%;
	left:0;
	margin-top: -1.9em;
	width:70%;
	height:5em;
	text-align: left;
font-size:2.5em;
color:#FFF;
line-height:1.9;
z-index:100;
		font-weight: normal;

	}
#psection1 h1 img{
	width: 50%;
	max-width: 400px;
	height: auto;
}
#psection1 h1 span{
	text-align: left;
	display: inline-block;
	font-size: 1em;
	font-weight: normal;
	letter-spacing: 0.04em;
	position: relative;
	opacity: 1;
	margin-left: 0%;
	transition: margin-left 0.4s ease-out;
    -webkit-transition: margin-left 0.4s ease-out;
    -moz-transition: margin-left 0.4s ease-out;

}
#psection1 h1 span:nth-of-type(1){ font-size: 1.6em;}
#psection1 h1 span:nth-of-type(2){
	transition-delay: 0.1s;
	-webkit-transition-delay: 0.1s;
	-moz-transition-delay: 0.1s;
}
#psection1 h1 span:nth-of-type(3){
	font-size: 1.6em;
	transition-delay: .2s;
	-webkit-transition-delay: .2s;
	-moz-transition-delay: .2s;
}
#psection1 h1 span::after{
	content: '';
	position: absolute;
	width: 100%;
	height: 95%;
	background-color:#d80c18;
	bottom:5%;
	left: 0%;
	transition: width 0.5s ease-in-out,left 0.5s ease-in-out;
    -webkit-transition: width 0.5s ease-in-out,left 0.5s ease-in-out;
    -moz-transition: width 0.5s ease-in-out,left 0.5s ease-in-out;
}
#psection1 h1 span:nth-of-type(1)::after{
	transition-delay: 0.1s;
	-webkit-transition-delay: 0.1s;
	-moz-transition-delay: 0.1s;
}
#psection1 h1 span:nth-of-type(2)::after{
	transition-delay: 0.3s;
	-webkit-transition-delay: 0.3s;
	-moz-transition-delay: 0.3s;
}
#psection1 h1 span:nth-of-type(3)::after{
	transition-delay: .5s;
	-webkit-transition-delay: .5s;
	-moz-transition-delay: .5s;
}
#psection1 h1 strong{
	margin-left: 0.3em;
	font-weight: 500;
	width: 100%;
	font-size: 1.7em;
	letter-spacing: 0.08em;
}

#psection1.setstart h1 span{margin-left: 10%; }
#psection1.setstart h1 span::after{
	width: 0%; left: 100%;
}


@media all and (max-width: 960px) {
	#psection1 h1	{font-size:2.2em;}
}
@media all and (max-width: 768px) {
	#psection1 h1	{font-size:2em;}
}
@media all and (max-width: 480px) {
	#psection1 h1	{font-size:1.5em;}
}




.section .intro{
	padding:6% 0;
	/*background-color: #f6f6f6;*/
	position: relative;
}


.section h2{
		width:100%;
		text-align:left;
		font-size: 1.8em;
		font-weight:100;
		letter-spacing:normal;
	line-height: 1.6;
		color:#222;
		margin:10px auto 3%;
	position: relative;
	z-index: 11;
	border-bottom:1px solid #444;
	}
.section h2 strong{font-weight: 500;}
.section h2::after{
	position: absolute;
	content: '';
	bottom: -1px;
	left: 0;
	width:20%;
	height: 0;
	border-bottom:1px solid #d80c18;
}

.section .intro h3{
	font-size: 1.6em;
	line-height: 1.7;
/*	color: #222;*/
	color:#d80c18;
	font-weight: 400;
	letter-spacing: 0.06em;
	padding: 0;
	margin: 3% auto 3%;
}
.section .intro h3.mincho{font-family: "dnp-shuei-mincho-pr6n",serif;}
.section .intro h4{font-size: 1.4em;font-weight: 700;line-height: 1.7;}


#psection2{
	position: relative;
	/*background-color:#FFF;*/
	padding: 7% 0;
}


#psection2 .intro{
	padding:0;
	/*background-color: #f6f6f6;*/
	position:relative;
	z-index: 1000;
}

.innerbox{
	width: 100%;
	margin: 10px auto 20px;
	text-align: left;
}
.innerbox .leftbox{
	width: 49%;
	margin-right: 1%;
	float: left;
}
.innerbox .rightbox{
	width: 49%;
	margin-left: 1%;
	float: right;
}
.innerbox p{
	text-align: left;
	line-height: 1.6;
}
.innerbox p.center{	text-align: center;}
.innerbox p.right{	text-align: right;}

.innerbox span.right{
	display: block;
	text-align: right;
}

.bg-mtmr::before{
	position: absolute;
	content: '';
	width: 100%;
	height: 100%;
	background-image:url(../images/common/hlogo_w.svg);
background-position:center center;
background-repeat:no-repeat;
-moz-background-size:contain;
-webkit-background-size:contain;
-o-background-size:contain;
-ms-background-size:contain;
background-size:contain;
	top:0;
	left: 0;
	opacity: 0.5;
}
.bg-white{background-color: #FFF;}
.bg-black{background-color: #1b1b1b;color:#FFF;}
.bg-red{background-color: #d80c18;color:#FFF;}
.bg-black h2{color:#FFF;}
.bg-red h2::after{ border-color: #ffffff;}
.bg-red h2{color:#FFF;}

.box{border: 1px solid #d80c18; color: #222;}
.box p{margin: 0; padding: 0;}


@media all and (max-width: 768px) {
	.section .intro h2{ font-size: 1.5em;}
	.section .intro h3{ font-size: 1.3em;}
	.section .intro h4{ font-size: 1.15em;}
	.section .intro p{ font-size: 0.9em;}
	.innerbox .leftbox,
	.innerbox .rightbox{
	float:none;
	width:100%;
	margin: 0 auto;
	clear:both;
	display:block;
	}

}
@media all and (max-width: 480px) {
	.section .intro h2{ font-size: 1.2em;}
	.section .intro h3{ font-size: 1em;}
	.section .intro h4{ font-size: 0.95em;}
	.section .intro p{ font-size: 0.85em;}
}




.innerbox.ratio64 .leftbox{ width: 59%;}
.innerbox.ratio64 .rightbox{ width: 39%;}
.innerbox.ratio73 .leftbox{ width: 69%;}
.innerbox.ratio73 .rightbox{ width: 29%;}
.innerbox.ratio46 .leftbox{ width: 39%;}
.innerbox.ratio46 .rightbox{ width: 59%;}
.innerbox.ratio37 .leftbox{ width: 29%;}
.innerbox.ratio37 .rightbox{ width: 69%;}

.innerbox.nomgn .leftbox{width: 50%;margin: 0;}
.innerbox.nomgn .rightbox{width: 50%;margin: 0;}
.innerbox.nomgn.ratio64 .leftbox{ width: 60%;}
.innerbox.nomgn.ratio64 .rightbox{ width: 40%;}
.innerbox.nomgn.ratio73 .leftbox{ width: 70%;}
.innerbox.nomgn.ratio73 .rightbox{ width: 30%;}
.innerbox.nomgn.ratio46 .leftbox{ width: 40%;}
.innerbox.nomgn.ratio46 .rightbox{ width: 60%;}
.innerbox.nomgn.ratio37 .leftbox{ width: 30%;}
.innerbox.nomgn.ratio37 .rightbox{ width: 70%;}


.ccenter{
	/* Center slide text vertically */
      display: -webkit-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      -webkit-align-items: center;
      align-items: center;
}

@media all and (max-width: 768px) {
	.innerbox .leftbox,	.innerbox .rightbox,
	.innerbox.ratio64 .leftbox,	.innerbox.ratio64 .rightbox,
	.innerbox.ratio73 .leftbox,	.innerbox.ratio73 .rightbox,
	.innerbox.ratio46 .leftbox,	.innerbox.ratio46 .rightbox,
	.innerbox.ratio37 .leftbox,	.innerbox.ratio37 .rightbox{
	float:none;
	width:100%;
	margin: 0 auto 15px;
	clear:both;
	display:block;
	}
	.innerbox.nomgn.ratio64 .leftbox,	.innerbox.nomgn.ratio64 .rightbox,
	.innerbox.nomgn.ratio73 .leftbox,	.innerbox.nomgn.ratio73 .rightbox,
	.innerbox.nomgn.ratio46 .leftbox,	.innerbox.nomgn.ratio46 .rightbox,
	.innerbox.nomgn.ratio37 .leftbox,	.innerbox.nomgn.ratio37 .rightbox,
	.innerbox.nomgn .leftbox,.innerbox.nomgn .rightbox{
	float:none;
	width:100%;
	margin: 0 auto;
	clear:both;
	display:block;
	}

}





#psection3{
	position: relative;
	padding: 0;
}
#psection4{
	position: relative;
	padding: 0;
}





.mapbox{
		width:100%;
		height:320px;
		background:#535353;
	}

#map{
		width:100%;
		height:100%;
	}
	#map{
		_display:none;
	}


ul.gallerybox {
width:100%;
	padding:0;
	margin:10px auto 10px;
	text-align: center;
}

ul.gallerybox li{
	display:block;
	float: left;
	margin:1%;
	padding: 0;
	width:23%;
	overflow:hidden;
	height:auto;
	position:relative;
	z-index:1;
	background:#001c58;

}
ul.gallerybox li img{width: 100%; height: auto;}
ul.gallerybox li p{
	position: absolute;
	bottom:0;
	left: 0;
	width: 100%;
	background-color: rgba(0,0,0,0.5);
	padding: 2% 4%;
	color: #fff;
	margin: 0;

}
ul.gallerybox li span{
	display: block;
	width: 100%;
	height: 0;
	padding-top:100%;
	background-position:center;
background-repeat:no-repeat;
	-moz-background-size:cover;
-webkit-background-size:cover;
-o-background-size:cover;
-ms-background-size:cover;
	background-size: cover;
	-moz-transition: all .25s ease;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    -ms-transition: all .25s ease;
    transition: all .25s ease;
}


ul.gallerybox li a:hover span{
		filter:alpha(opacity=40);
    -moz-opacity: 0.4;
    opacity: 0.4;
}

@media all and (max-width: 768px) {
	ul.gallerybox li{ width: 45%; margin: 2%;}
}



ul.memberbox {
width:100%;
	padding:0;
	margin:10px auto 10px;
	text-align: center;
}

ul.memberbox li{
	display:block;
	float: left;
	margin:0;
	padding: 0;
	width:11.11111%;
	overflow:hidden;
	height:auto;
	position:relative;
	z-index:1;

}
ul.memberbox li img{width: 100%; height: auto;}
ul.memberbox li p{
	position: absolute;
	bottom:0;
	left: 0;
	width: 100%;
	background-color: rgba(0,0,0,0.5);
	padding: 2% 4%;
	color: #fff;
	margin: 0;

}
ul.memberbox li span{
	display: block;
	width: 100%;
	height: 0;
	padding-top:100%;
	background-position:center top;
background-repeat:no-repeat;
	-moz-background-size:cover;
-webkit-background-size:cover;
-o-background-size:cover;
-ms-background-size:cover;
	background-size: cover;
	-moz-transition: all .25s ease;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    -ms-transition: all .25s ease;
    transition: all .25s ease;
}


ul.memberbox li a:hover span{
		filter:alpha(opacity=40);
    -moz-opacity: 0.4;
    opacity: 0.4;
}
@media all and (max-width: 1200px) {
	ul.memberbox li{ width:12.5%; }
}
@media all and (max-width: 960px) {
	ul.memberbox li{ width:14.285%; }
}
@media all and (max-width: 768px) {
	ul.memberbox li{ width:16.6666%; }
}
@media all and (max-width: 600px) {
	ul.memberbox li{ width:20%;}
}
/*@media all and (max-width: 520px) {
	ul.memberbox li{ width:25%;  }
}
@media all and (max-width: 480px) {
	ul.memberbox li{ width:33.33333%;  }
}*/




/* --------------------------------------------
 BASE TABLE
----------------------------------------------*/
.basetbl{
 margin:10px auto;
	padding:0px;
	width:100%;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;

}

.basetbl table{
 margin:0px auto;
	padding:0px ;
	width:100%;
/*	border: #FFF solid 1px;*/
	background:none;
	text-align:center;

	}
.basetbl table span.sstx{font-size: 70%;}
.basetbl table th{
 margin:0px ;
	padding:10px 10px ;
	/*min-width: 8em;*/
	border: none;
	/*border-bottom: #000 solid 1px;*/
	color:#FFF;
	background-color:#444;
	font-weight:normal;
	text-align:center;
	line-height:1.4;
	}
.basetbl table thead th{background-color:#d80c18; color: #fff;}

.basetbl table td{
 margin:0px ;
	padding:10px ;
/*border-bottom: #000 solid 1px;*/
/*	border-left: #000 solid 2px;*/
	color: #222;
	background-color:#FFF;
	border:none;
	line-height:1.4;
	text-align:left;
	}

.basetbl table tr:last-child th,.basetbl table tr:last-child td{
	border-bottom: none;
	}
.basetbl table tr:nth-child(even) th{
	background-color:#3a3a3a;
}

.basetbl table tr:nth-child(even) td{
	background-color:#f7f7f7;
}

	span.formkome{
		color:#666;
		font-size:0.8em;
		white-space: nowrap;
	}
.basetbl p{font-size: 0.9em; text-align: left; color: #CC3437;}


@media all and (max-width: 768px) {
	.basetbl table{ font-size: 0.9em;}
}
@media all and (max-width: 480px) {
	.basetbl table{ font-size: 0.85em;}
}


/*------------------
   CONTACT
		------------------*/
.contactbox{ width:100%; letter-spacing:0.06em; padding-bottom:10%;}

.basetbl table textarea{
	width:90%;
}
.basetbl{
	width:100%;
	/*font-size:0.9em;*/
}
.basetbl table{
	overflow:hidden;
}
 .basetbl table td input[type="text"],
			.basetbl table td select,
			.basetbl table td textarea{
				max-width:100%;
			}
			.basetbl table td input[type="text"]{
				width:250px;
			}
			.basetbl table td label{
				margin-right:12px;
			}
			.basetbl table td input[type="radio"]{
				margin-right:5px;
				margin-top:-0.25em;
				border:1px solid #ccc;

			}

.basetbl table tr td.errortd{
	background-color:#FEE;
}
.basetbl table tr:nth-child(even) td.errortd{
	background-color:#fFE5E5;
}
			.contactbox button{
	height: 30px;
	padding:0 15px;
	text-align: center;
	text-decoration: none;
	line-height: 30px;
	outline: none;
	font-size:0.9em;
	border:none;
cursor: pointer;
		-moz-transition: all .25s ease;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    -ms-transition: all .25s ease;
    transition: all .25s ease;
}


		.contactbox button.submit{
	background-color:#231F20;
	color: #fff;
}

	.contactbox button.reset{
	background-color: #A3A3A3;
	color: #231F20;
}


.contactbox button:hover{
	background-color: #d80c18;
	color: #FFF;

}

@media only screen and (max-width:480px){
	.contactbox .basetbl table th,
    .contactbox .basetbl table td{
        width: 100%;
        display: block;
        border-top: none;
		border-left:none;
    }
	.contactbox .basetbl table tr:nth-child(even) th{	background-color:#444;}
	.contactbox .basetbl table tr:nth-child(even) td{	background-color:#FFF;}
	.contactbox .basetbl table tr:nth-child(even) td.errortd{background-color:#FEE;}

			.basetbl table td input[type="text"],
			.basetbl table td select,
			 .basetbl table td textarea{
				width:100%;
			}
}


a.contactbtn{
	display: block;
	height: 50px;
	padding:0 15px;
	margin: 20px auto;
	width: 70%;
	max-width: 250px;
	text-align: center;
	text-decoration: none;
	line-height: 50px;
	outline: none;
	letter-spacing: 0.1em;
	font-size:0.9em;
	border:none;

	background-color:#231F20;
	color: #fff;

		-moz-transition: all .25s ease;
    -webkit-transition: all .25s ease;
    -o-transition: all .25s ease;
    -ms-transition: all .25s ease;
    transition: all .25s ease;
}

a.contactbtn:hover{
	background-color: #d80c18;
	color: #FFF;

}
.mw500,
.mw600,
.mw700,
.mw800,
.mw900{margin-left: auto; margin-right: auto;}
.mw500{max-width: 500px;}
.mw600{max-width: 600px;}
.mw700{max-width: 700px;}
.mw800{max-width: 800px;}
.mw900{max-width: 900px;}
