@charset "utf-8";

section.mainVisualSp{display:none;}


nav#global ul li:nth-of-type(5) a{
	background:#fff !important;
	color:#8dc556 !important;
}

/* --------------------------------------------------------------
	section.mainVisual
----------------------------------------------------------------- */
section.mainVisual{
	max-width:1160px;
	margin:0px auto;
	position:relative;
}
section.mainVisual .titleBox{
	position:absolute;
	left:0px;
	top:0px;
	height:100%;
	width:100%;
}
section.mainVisual .titleBox h1{
	display:flex;
	align-items: center;
	justify-content: center;
	height:100%;
	color:#fff;
	font-size:42px;
	font-weight: 200;
}
section.mainVisual figure img{
	max-width:100%;
	height:auto;
}



/* --------------------------------------------------------------
	section.company
----------------------------------------------------------------- */
section.company{
	max-width:1000px;
	margin:0px auto;
	padding:60px 0px 60px 0px;
	box-sizing: border-box;
}
section.company .companyBlock{
	padding:0px 0px 30px 0px;
	margin-bottom:30px;
	overflow:hidden;
}
.companyBlock .companyFloat{
	overflow:hidden;
}
.companyFloat .companyDetail{
	width:55%;
	float:left;
}
.companyDetail h2{
	font-size:21px;
	font-weight: 700;
	color:#8dc556;
	padding:0px 0px 30px 0px;
}
.companyDetail .tableBox{
	
}
.companyDetail .tableBox td{
	padding:0px 0px 20px 0px;
	font-size:14px;
	vertical-align: top;
}
.companyDetail .tableBox tr td:first-child{
	width:20%;
}
.companyFloat .map{
	width:40%;
	float:right;
}
.map h3{
	float: left;
	width: 50%;
	font-size:18px;
	padding:0px 0px 20px 0px;
}
.map p{
	float: right;
	width: 50%;
	margin-top: 3px;
	text-align:right;
}
.map p a{
	color: #9fa0a0;
}
.map .googleMap{
	clear: both;
	padding:0px 0px 20px 0px;
}
.map ul li{
	padding:0px 0px 15px 1em;
	text-indent: -1em;
}

@media screen and (max-width:1040px){
	section.company{
		width:96%;
		margin:0px auto;
		padding:30px 0px 60px 0px;
		box-sizing: border-box;
		-webkit-box-sizing:border-box;
	}
}
@media screen and (max-width:800px){
	.companyFloat .companyDetail{
		width:100%;
		float:none;
	}
	.companyFloat .map{
		width:100%;
		float:none;
		padding:15px 0px 0px 0px;
	}
}
@media screen and (max-width:640px){
	section.company .companyBlock{
		padding:0px 0px 0px 0px;
	}
	.companyDetail h2{
		font-size:21px;
		font-weight: 700;
		color:#8dc556;
		padding:0px 0px 15px 0px;
	}
}




/* law
---------------------------------------------- */
.lawBlock{
	padding:0px 0px 30px 0px;
	margin-bottom:30px;
	overflow:hidden;
}
.lawBlock h3{
	font-size:19px;
	font-weight: 600;
	line-height:1.89em;
	padding:15px 0px 0px 0px;
	color:#666;
}
.lawBlock .tableBox{
	width:65%;
	padding:25px 0px 0px 0px;
}
.lawBlock .tableBox td{
	padding:0px 0px 20px 0px;
	font-size:13px;
	vertical-align: top;
}
.lawBlock .tableBox tr td:first-child{
	width:26%;
}
@media screen and (max-width:800px){
	.lawBlock .tableBox{
		width:100%;
		padding:25px 0px 0px 0px;
	}
}
@media screen and (max-width:640px){
	.lawBlock{
		padding:0px 0px 0px 0px;
		margin-bottom:30px;
		overflow:hidden;
	}
	.lawBlock .tableBox tr td:first-child{
		width:36%;
	}
}


	




/* historyBlock
---------------------------------------------- */
.historyBlock{
	padding:12px 0px 30px 0px;
	margin-bottom:30px;
	overflow:hidden;
}
.historyBlock .historyFloat{
	overflow:hidden;
}
.historyFloat .historyDetail{
	width:64%;
	float:left;
}
.historyDetail h2{
	font-size:21px;
	font-weight: 700;
	color:#8dc556;
	padding:0px 0px 30px 0px;
}
.historyDetail p{
	line-height:2.00em;
	font-size:15px;
}
.historyFloat figure{
	width:35%;
	float:right;
	text-align: right;
}
.historyFloat figure img{
	max-width: 100%;
	height:auto;
}

@media screen and (max-width:640px){
	.historyBlock{
		padding:12px 0px 0px 0px;
	}
	.historyDetail h2{
		padding:0px 0px 15px 0px;
	}
		
	.historyFloat .historyDetail{
		width:100%;
		float:none;
	}
	.historyDetail p{
		line-height:2.00em;
		font-size:15px;
	}
	.historyFloat figure{
		padding:15px 0px 0px 0px;
		width:100%;
		float:none;
		text-align: right;
		text-align: center;
	}
	
}





/* policyBlock
---------------------------------------------- */
.policyBlock{
	padding:0px 0px 30px 0px;
	margin-bottom:0px;
	overflow:hidden;
}

.policyBlock h2{
	font-size:21px;
	font-weight: 700;
	color:#8dc556;
	padding:0px 0px 30px 0px;
}
.policyBlock h3{
	font-size:21px;
	font-weight: 400;
	line-height:1.89em;
	padding:0px 0px 0px 0px;
}
.policyBlock ul{
	padding:15px 0px 0px 0px;
}
.policyBlock ul li{
	font-size:24px;
	font-weight: 600;
	padding:0px 0px 10px 0px;
}
.policyBlock ul li span{
	display:inline-block;
	color:#8DC556;
	margin-right:5px;
}
.policyBlock p{
	line-height:2.22em;
	font-size:15px;
	padding:20px 0px 10px 0px;
}

@media screen and (max-width:640px){
	.policyBlock h2{
		padding:15px 0px 15px 0px;
	}
	.policyBlock h3{
		font-size:19px;
	}
	.policyBlock p{
		line-height:2.22em;
		font-size:15px;
		padding:20px 0px 10px 0px;
	}
	.policyBlock ul{
		padding:15px 0px 0px 0px;
	}
	.policyBlock ul li{
		font-size:18px;
		font-weight: 600;
		padding:0px 0px 10px 0px;
	}
	.policyBlock ul li span{
		display:inline-block;
		color:#8DC556;
		margin-right:5px;
	}
	
}



/* --------------------------------------------------------------
	section.staff
----------------------------------------------------------------- */
section.staff{
	width:100%;
	margin:0px auto;
	padding:80px 0px 80px 0px;
	box-sizing: border-box;
	background:#f6f9e4;
}
section.staff .staffBlock{
	max-width:1000px;
	padding:0px 0px 30px 0px;
	margin:0px auto 30px auto;
	overflow:hidden;
}
section.staff .staffBlock:last-child{
	padding:0px 0px 0px 0px;
	margin:0px auto 0px auto;
	overflow:hidden;
}
.staffBlock .staffFloat{
	overflow:hidden;
}
.staffFloat .staffDetail{
	width:64%;
	float:left;
}
.staffBlock h2{
	font-size:21px;
	font-weight: 700;
	color:#8dc556;
	padding:0px 0px 20px 0px;
}
.staffDetail h3{
	font-size:21px;
	font-weight: 600;
	line-height:1.89em;
	padding:0px 0px 0px 0px;
}
.staffDetail h3 span{
	font-size:18px;
	margin-right:10px;
	display:inline-block;
}
.staffDetail p{
	line-height:2.22em;
	font-size:15px;
	padding:16px 0px 10px 0px;
}
.staffFloat figure{
	width:32%;
	float:right;
	text-align: right;
}
.staffFloat figure img{
	max-width:100%;
	height:auto;
}

@media screen and (max-width:1040px){
	section.staff{
		width:100%;
		margin:0px auto;
		padding:30px 2% 60px 2%;
		box-sizing: border-box;
		-webkit-box-sizing:border-box;
	}
}
@media screen and (max-width:640px){
	.staffFloat figure{
		width:60%;
		float:none;
		text-align: center;
		margin:0px auto;
		padding-bottom:15px;
	}
	.staffFloat figure img{
		width:100%;
		height:auto;
	}
	.staffBlock h2{
		font-size:21px;
		font-weight: 700;
		color:#8dc556;
		padding:0px 0px 5px 0px;
		text-align: center
	}
	.staffFloat .staffDetail{
		width:96%;
		float:none;
		margin:0px auto;
	}
	.staffDetail h3{
		font-size:21px;
		font-weight: 600;
		line-height:1.89em;
		padding:0px 0px 0px 0px;
		text-align: center
	}
	
}




/* staff
----------------------------------*/
.staffSet{
	width:47%;
	padding:20px 0px 45px 0px;
}
.staffSet:first-child, .staffSet:nth-of-type(2n+1){
	float:left;
}
.staffSet:nth-of-type(2n){
	float:right;
}
.staffSet:nth-of-type(2n+1){
	clear:both;
}
.staffSet .staffSetFloat{
	overflow:hidden;
}
.staffSetFloat figure{
	width:32%;
	float:left;
}
.staffSetFloat figure img{
	max-width:100%;
	height:auto;
}
.staffSetFloat .staffSetDetail{
	width:65%;
	float:right;
	position:relative;
}
.staffSetDetail span.year{
	display:inline-block;
	position:absolute;
	left:0px;
	top:0px;
	padding:2px 8px;
	border:1px solid #666;
	color:#666;
}
.staffSetDetail h3{
	font-size:19px;
	font-weight: 600;
	line-height:1.2em;
	padding:0px 0px 0px 0px;
	text-align: right;
}
.staffSetDetail h3 span{
	display:block;
	font-size:16px;
	font-weight: 600;
	line-height:1.89em;
	padding:0px 0px 3px 0px;
}
.staffSetDetail p{
	padding:15px 0px 0px 0px;
	line-height:1.89em;
	font-size:14px;
}

@media screen and (max-width:1040px){
	.staffSet{
		width:100%;
		padding:20px 0px 45px 0px;
		float:none !important;
	}
	.staffSetFloat figure{
		width:20%;
		float:left;
	}
	.staffSetFloat figure img{
		width:100%;
		height:auto;
	}
	.staffSetFloat .staffSetDetail{
		width:75%;
		float:right;
		position:relative;
	}
}
@media screen and (max-width:640px){
	.staffSet{
		padding:20px 0px 15px 0px;
	}
	.staffSetFloat figure{
		width:45%;
		float:none;
		margin:0px auto;
	}
	.staffSetFloat .staffSetDetail{
		width:96%;
		float:none;
		position:relative;
		margin:0px auto;
	}
	.staffSetDetail span.year{
		position:relative;
		display:block;
		width:8em;
		text-align: center;
		padding:2px 8px;
		border:1px solid #666;
		color:#666;
		margin:0px auto;
	}
	.staffSetDetail h3{
		text-align: center
	}
	.staffSetDetail h3 span{
	}
	
}




/* -----------------------------------------------------------------------------
	-----------------------------------------------------------------------------
	SP SmartPhone Css
	-----------------------------------------------------------------------------
	----------------------------------------------------------------------------- */

@media screen and (max-width:640px){
	section.mainVisual{display:none;}
	section.mainVisualSp{display:block;}
	
	/* --------------------------------------------------------------
		section.mainVisual
	----------------------------------------------------------------- */
	section.mainVisualSp{
		width:100%;
	}
	section.mainVisualSp img{
		width:100%;
		height:auto;
	}
	section.mainVisualSp .titleBox{
		position:relative;
	}
	section.mainVisualSp .titleBox h1{
		display:none;
	}



}


















