@charset "utf-8";


@media screen and (min-width:768px){
/*pc・タブレットcss*/


.policy-catgory{
}
.policy-catgory li{
	position:relative;
	overflow:hidden;
	width:33%;
	background-color:#ccc;
	text-align:center;
}
.policy-catgory li:nth-child(2){
	width:34%;
}
.policy-catgory li:after {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    transition: all .3s ease-out;
}
.policy-catgory li:before{
	content:"";
	position:absolute;
	z-index:2;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.7);
    transition: all .3s ease-out;
}
.policy-catgory li:hover:before{
	background:rgba(0,0,0,0);
}
.policy-catgory li a:hover{ opacity:1; }

.policy-catgory li a{
	display:block;
	padding:13vw 0;
	color:#fff;
	text-decoration:none;
	position:relative;
	z-index:2;
}
.policy-catgory .sub{
	display:block;
	font-size:14px;
	margin-bottom:5px;
}
.policy-catgory .ttl{
	display:block;
	font-size:28px;
}
.policy-catgory li.civil:after{
	background:url(../img/company/policy_catgory_civil.jpg) no-repeat center center;
	background-size:cover;
}
.policy-catgory li.architecture:after{
	background:url(../img/company/policy_catgory_architecture.jpg) no-repeat center center;
	background-size:cover;
}
.policy-catgory li.sales:after{
	background:url(../img/company/policy_catgory_sales.jpg) no-repeat center center;
	background-size:cover;
}
.policy-catgory li:hover:after {
    opacity: .8;
    transform: scale(1.05);
}



#message{
	position:relative;
	padding:120px 0;
	background-color:#004EA2;
	color:#fff;
}
#message:before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:45%;
	height:100%;
	background:url(../img/company/president_ph.jpg) top center no-repeat;
}
#message .ttl02{
	margin-bottom:20px;
}
#message .ttl02:before{
	background-color:#fff;
}
#message .ttl02 span{
	background-color:#004EA2;
}
#message .content-area{
	padding-left:500px;
	line-height:2.3;
}
#message .name{
	font-size:18px;
}


.company-data{
}
.company-data .company-table{
	width:60%;
}
.company-data .company-table th,
.company-data .company-table td{
	border-collapse:collapse;
	padding:15px 10px;
}
.company-data .company-table th{
	width:20%;
	border-bottom: solid 1px #828282;
}
.company-data .company-table td{
	width:80%;
	border-bottom: solid 1px #E6E6E6;
}
.company-data .company-table .officer-list{
	
}
.company-data .company-table .officer-list dt{
	width:10em;
}
.company-data .company-table .officer-list dd{
	width: calc(100% - 10em);
}
.company-data .appearance-ph{
	width:35%;
}

.access-map{
	
}
.access-map li{
	width:32%;
	margin-right:2%;
}
.access-map li:nth-child(3n){
	margin-right:0;
}
.access-map .map {
	margin-bottom:20px;
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	position: relative;
}
.access-map .map iframe {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}


#history{
	padding:100px 0;
	background-color:#F4F4F4;
}
#history .ttl02 span{
	background-color:#F4F4F4;
}

#organization{
	padding:100px 0;
	background-color:#F4F4F4;
}
#organization .ttl02 span{
	background-color:#F4F4F4;
}




}

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

@media (max-width: 768px) {

	
	.policy-catgory{
	}
	.policy-catgory li{
		position:relative;
		overflow:hidden;
		width:33%;
		background-color:#ccc;
		text-align:center;
	}
	.policy-catgory li:nth-child(2){
		width:34%;
	}
	.policy-catgory li:after {
		position: absolute;
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		top: 0;
		transition: all .3s ease-out;
	}
	.policy-catgory li:before{
		content:"";
		position:absolute;
		z-index:2;
		top:0;
		left:0;
		width:100%;
		height:100%;
		background:rgba(0,0,0,0.7);
		transition: all .3s ease-out;
	}
	.policy-catgory li a{
		display:block;
		padding:13vw 0;
		color:#fff;
		text-decoration:none;
		position:relative;
		z-index:2;
	}
	.policy-catgory .sub{
		display:block;
		font-size:11px;
	}
	.policy-catgory .ttl{
		display:block;
		font-size:18px;
	}
	.policy-catgory li.civil:after{
		background:url(../img/company/policy_catgory_civil.jpg) no-repeat center center;
		background-size:cover;
	}
	.policy-catgory li.architecture:after{
		background:url(../img/company/policy_catgory_architecture.jpg) no-repeat center center;
		background-size:cover;
	}
	.policy-catgory li.sales:after{
		background:url(../img/company/policy_catgory_sales.jpg) no-repeat center center;
		background-size:cover;
	}
	
	
	
	#message{
		position:relative;
		background-color:#004EA2;
		color:#fff;
	}
	#message:before{
		content:"";
		position:absolute;
		top:0;
		left:0;
		width:100%;
		height:50%;
		background:url(../img/company/president_ph.jpg) top center no-repeat;
		background-size:100% auto;
	}
	#message .ttl02{
		margin-bottom:2vw;
	}
	#message .ttl02:before{
		background-color:#fff;
	}
	#message .ttl02 span{
		background-color:#004EA2;
	}
	#message .content-area{
		padding-top:85%;
		padding-bottom:10vw;
	}
	#message .name{
		font-size:18px;
	}
	
	
	.company-data{
	}
	.company-data .company-table{
		width:100%;
		margin-bottom:5vw;
	}
	.company-data .company-table th,
	.company-data .company-table td{
		border-collapse:collapse;
		padding:2vw;
		font-size:12px;
	}
	.company-data .company-table th{
		width:25%;
		border-bottom: solid 1px #828282;
	}
	.company-data .company-table td{
		width:75%;
		border-bottom: solid 1px #E6E6E6;
	}
	.company-data .company-table .officer-list{
		
	}
	.company-data .company-table .officer-list dt{
		width:10em;
		font-size:11px;
	}
	.company-data .company-table .officer-list dd{
		width: calc(100% - 10em);
	}
	.company-data .appearance-ph{
		width:100%;
	}
	
	.history-table{
		
	}
	.history-table tr{
		-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
		-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
	}
	.history-table th{
		display:block;
		width:100% !important;
		border-bottom:none;
	}
	.history-table td{
		display:block;
		width:75%;
		font-size:12px;
	}
	.history-table .date{
		display:block;
		width:25%;
		border-right:none;
	}
	
	
	
	
	
	.access-map{
	}
	.access-map li{
		width:100%;
		margin-bottom:5vw;
	}
	.access-map li:nth-child(3n){
		margin-bottom:0;
	}
	.access-map .map {
		margin-bottom:2vw;
		height: 0;
		overflow: hidden;
		padding-bottom: 56.25%;
		position: relative;
	}
	.access-map .map iframe {
		position: absolute;
		left: 0;
		top: 0;
		height: 100%;
		width: 100%;
	}
	
	
	#history{
		padding:10vw 0;
		background-color:#F4F4F4;
	}
	#history .ttl02 span{
		background-color:#F4F4F4;
	}
	
	#organization{
		padding:10vw 0;
		background-color:#F4F4F4;
	}
	#organization .ttl02 span{
		background-color:#F4F4F4;
	}
	
	
	
	

}








