@charset "UTF-8";

/* ▼▼▼ 会社案内
======================================================*/

#content01{
	padding: 90px 0 60px;
	position: relative;
	overflow: hidden;
}
#content01::before,#content01::after{
	content: '';
	position: absolute;
}
#content01::before{
	width: 481px;
	height: 292px;
	background: url(../img/company/bg_item01.png) no-repeat center center/contain;
	top: 0;
	left: calc(50vw + 300px);
}
#content01::after{
	width: 366px;
	height: 259px;
	background: url(../img/company/bg_item02.png) no-repeat center center/contain;
	bottom: 0;
	right: calc(50vw + 417px);
}
#content01 h3{
	margin-bottom: 35px;
	color: #26A07B;
	font-size: 32px;
}
#content01 p.doc{
	margin-bottom: 20px;
	line-height: 2;
}
#content01 p.sign_wrap{
	text-align: right;
}
#content01 p.sign_wrap span{
	display: inline-block;
	text-align: right;
	margin-bottom: 15px;
}
#content01 p.sign_wrap img{
	width: 174px;
}

#content02 .philo_area{
	padding: 50px 0 100px;
	background: -webkit-linear-gradient(#15AAC4, #00A020);
	background: -o-linear-gradient(#15AAC4, #00A020);
	background: linear-gradient(#15AAC4, #00A020);
	position: relative;
	overflow: hidden;
}
#content02 .philo_area::before,#content02 .philo_area::after{
	content: '';
	position: absolute;
}
#content02 .philo_area::before{
	width: 315px;
	height: 307px;
	background: url(../img/company/bg_item03.png) no-repeat center center/contain;
	top: 0;
	left: calc(50vw + 370px);
}
#content02 .philo_area::after{
	width: 310px;
	height: 278px;
	background: url(../img/company/bg_item04.png) no-repeat center center/contain;
	bottom: 0;
	right: calc(50vw + 450px);
}
#content02 .philo_area h2.title,#content02 .philo_area .txt_wrap{
	color: #FFF;
}
#content02 .philo_area h2.title{
	margin-bottom: 5px;
}
#content02 .philo_area h2.title span::before{
	background: #FFF;
}
#content02 .philo_area .txt_wrap{
	width: 745px;
	max-width: 90%;
	margin: 0 0 0 auto;
}
#content02 .philo_area h3{
	margin-bottom: 40px;
	font-size: 40px;
	font-weight: normal;
}
#content02 .philo_area p{
	font-size: 18px;
	font-weight: 600;
	line-height: 2;
}
#content02 .power_area{
	padding: 85px 0;
	background: -webkit-linear-gradient(right, rgba(253,253,253,0.85) 0%, rgba(253,253,253,0.85) 30%, transparent 60%, transparent 100%),url(../img/company/bg_power.jpg) no-repeat center center/cover;
	background: -o-linear-gradient(right, rgba(253,253,253,0.85) 0%, rgba(253,253,253,0.85) 30%, transparent 60%, transparent 100%),url(../img/company/bg_power.jpg) no-repeat center center/cover;
	background: linear-gradient(to left, rgba(253,253,253,0.85) 0%, rgba(253,253,253,0.85) 30%, transparent 60%, transparent 100%),url(../img/company/bg_power.jpg) no-repeat center center/cover;
	overflow: hidden;
}
#content02 .power_area .container{
	max-width: 1140px;
	position: relative;
}
#content02 .power_area .container::before{
	content: '';
	width: 420px;
	height: 560px;
	background: url(../img/company/img_power.png) no-repeat center center/contain;
	position: absolute;
	top: -15px;
	right: -20px;
}
#content02 .power_area h3{
	margin-bottom: 35px;
	font-size: 34px;
	position: relative;
}
#content02 .power_area h3::before{
	content: '';
	height: 1px;
	width: calc(50vw - 50% - 35px);
	background: #000;
	position: absolute;
	top: 50%;
	right: calc(100% + 35px);
}
#content02 .power_area ul,#content02 .power_area p{
	font-size: 18px;
	font-weight: 600;
}
#content02 .power_area ul{
	margin-bottom: 30px;
	max-width: calc(100% - 380px);
}
#content02 .power_area li{
	padding-left: 2em;
	text-indent: -2em;
}
#content02 .power_area li:not(:last-child){
	margin-bottom: 15px;
}

#content03{
	padding: 70px 0 100px;
	overflow: hidden;
}
#content03 table{
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
}
#content03 table th,#content03 table td{
	border-bottom: #CCCCCC 1px solid;
	padding: 30px;
	font-weight: normal;
}

#content04{
	background: url(../img/bg_img01.jpg) repeat center center/1366px;
	padding: 60px 0 100px;
	overflow: hidden;
}
#content04 .map_wrap{
	width: 100%;
	max-width: 850px;
	margin: 0 auto 38px;
}
#content04 .map_wrap iframe{
	width: 100%;
	height: 465px;
}
#content04 dl{
	display: table;
	width: 100%;
	max-width: 850px;
	margin: 0 auto;
}
#content04 dt,#content04 dd{
	display: table-cell;
	vertical-align: top;
}
#content04 dt{
	padding: 12px 20px 12px 50px;
	min-height: 44px;
	background: url(../img/company/icon_train.png) no-repeat left center/contain;
	color: #1A9132;
}
/* ▼▼▼ 480px〜768px
====================================================== */
@media screen and (max-width: 768px) {

	#content01{
		padding: 20px 0 40px;
	}
	#content01::before{
		width: 193px;
		height: 117px;
		left: calc(50vw + 80px);
	}
	#content01::after{
		width: 147px;
		height: 104px;
		right: calc(50vw + 85px);
	}
	#content01 h3{
		margin-bottom: 20px;
		color: #26A07B;
		font-size: 20px;
	}
	#content01 p.doc{
		margin-bottom: 16px;
	}
	#content01 p.sign_wrap img{
		width: 124px;
	}

	#content02 .philo_area{
		padding: 40px 0 40px;
	}
	#content02 .philo_area::before{
		width: 126px;
		height: 123px;
		background: url(../img/company/bg_item03.png) no-repeat center center/contain;
		top: 0;
		left: calc(50vw + 100px);
	}
	#content02 .philo_area::after{
		width: 124px;
		height: 112px;
		background: url(../img/company/bg_item04.png) no-repeat center center/contain;
		bottom: 0;
		right: calc(50vw + 90px);
	}
	#content02 .philo_area h2.title,#content02 .philo_area .txt_wrap{
		color: #FFF;
	}
	#content02 .philo_area h2.title{
		margin-bottom: 5px;
	}
	#content02 .philo_area h2.title span::before{
		background: #FFF;
	}
	#content02 .philo_area .txt_wrap{
		max-width: 100%;
		margin: 0 0 0 auto;
	}
	#content02 .philo_area h3{
		margin-bottom: 20px;
		font-size: 36px;
	}
	#content02 .philo_area p{
		font-size: 14px;
	}
	#content02 .power_area{
		background: -webkit-linear-gradient(rgba(253,253,253,0.85) 0%, rgba(253,253,253,0.85) 570px, #FFF 571px, #FFF 100%),url(../img/company/bg_power.jpg) no-repeat center center/cover;
		background: -o-linear-gradient(rgba(253,253,253,0.85) 0%, rgba(253,253,253,0.85) 570px, #FFF 571px, #FFF 100%),url(../img/company/bg_power.jpg) no-repeat center center/cover;
		background: linear-gradient(rgba(253,253,253,0.85) 0%, rgba(253,253,253,0.85) 570px, #FFF 571px, #FFF 100%),url(../img/company/bg_power.jpg) no-repeat center center/cover;
		padding: 610px 0 30px;
	}
	#content02 .power_area .container::before{
		content: '';
		width: 100%;
		height: 448px;
		top: -550px;
		right: 0;
	}
	#content02 .power_area h3{
		margin-bottom: 20px;
		font-size: 24px;
	}
	#content02 .power_area h3::before{
		width: calc(50vw - 50% - 5px);
		right: calc(100% + 5px);
	}
	#content02 .power_area ul,#content02 .power_area p{
		font-size: 14px;
	}
	#content02 .power_area ul{
		max-width: 100%;
	}
	#content02 .power_area li:not(:last-child){
		margin-bottom: 10px;
	}

	#content03{
		padding: 40px 0 40px;
	}
	#content03 table th,#content03 table td{
		padding: 20px 10px;
		min-width: 100px;
	}

	#content04{
		padding: 40px 0 50px;
	}
	#content04 .map_wrap{
		margin: 0 auto 10px;
	}
	#content04 .map_wrap iframe{
		height: 360px;
	}
	#content04 dl{
		display: block;
	}
	#content04 dt,#content04 dd{
		display: block;
	}
	#content04 dt{
		margin-bottom: 10px;
	}


}
