@charset "UTF-8";
/* CSS Document */

.sponly {
	display: block;
}
.spmask {
	display: none;
}

@import url(http://fonts.googleapis.com/css?family=Open+Sans);
@import url('https://fonts.googleapis.com/css?family=Oswald');
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700');
@import url('https://fonts.googleapis.com/css?family=Noto+Serif+JP');



@media (min-width : 601px) and (max-width : 750px){
}

/*------------------------------
	contents
------------------------------*/
#contents {
}

/*------------------------------
	project
------------------------------*/
#project #kv {
	width: 100%;
	margin-top: 80px;
	margin-bottom: 130px;
	position: relative;
}
#project #kv .pic img {
	width: 100%;
}
#project #kv .sdgsPic{
	position: absolute;
	top: 5%;
	right: 5%;
	width: 45%;
	text-align: center;
}
#project #kv .sdgsPic img{
	width: 100%;
}
#project #kv .kv_h2{
	position: absolute;
	background-color: #003391;
	padding: 4%;
	color: #fff;
	bottom: -60%;
	right: 1.5%;
	left: 1.5%;
	font-size: 18px;
	line-height: 1.4;
	font-weight: normal;
}
/*------------------------------*/
#project #contents {
	background-image: url("../../common/bg_left.png"), url("../../common/bg_right.png");
	background-repeat: no-repeat, no-repeat;
	background-position: left top, right bottom;
	position: relative;
}
/*------------------------------*/
#project .headline {
	padding: 0 10px 30px;
	max-width: 870px;
	margin: 15% auto 0 auto;
	line-height: 1.8;
	font-size: 16px;
}
#project .headline .kome{
	padding: 20px 0;
	font-size: 14px;
	padding-left: 3em;
	text-indent: -3em;
	line-height: 1.8;
}
/*------------------------------*/
#project .textBox {
	max-width: 870px;
	margin: 0 auto;
	padding: 0 10px 30px;
}
#project .textBox h3 {
	font-size: 20px;
	color: #003391;
	line-height: 1.3;
	padding-bottom: 12px;
	margin-bottom: 15px;
	border-bottom: solid 1px #003391;
	text-align: center;
	font-weight: bold;
}
#project .textBox p {
	padding-bottom: 30px;
	font-size: 16px;
	line-height: 1.8;
	position: relative;
}
#project .textBox .kome {
	padding: 30px 0;
	font-size: 14px;
	padding-left: 3em;
	text-indent: -3em;
	line-height: 1.8;
	position: relative;
}
/*------------------------------*/
#project .picArea {
	width: 100%;
	padding-bottom: 90px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center; 
	justify-content: center;
	max-width: 870px;
	margin: 0 auto;
}
#project .picArea.end {
	padding-bottom: 0px;
}
#project .picArea .pic {
	width: 100%;
}
#project .picArea .pic img {
	width: 100%;
}
/*------------------------------*/
#project .flowArea{
	max-width: 870px;
	background-color: #f2faf0;
	padding: 2%;
	position: relative;
	margin: 0 auto 5% auto;
}
#project .flowArea h3{
	font-size: 18px;
	position: absolute;
	background-color: #42a32f;
	text-align: center;
	color: #fff;
	padding: 2% 0;
	width: 90%;
	top: -2%;
	left: 5%;
	right: 5%;
}
#project .flowArea .flowBox{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 5%;
}
#project .flowArea .flowBox li{
	width: 45%;
	margin-bottom: 3%;
	position: relative;
}
#project .flowArea .flowBox li::after{
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 8px;
	border-color: transparent transparent transparent #333;
	position: absolute;
	top: 50%;
	right: -15%;
	margin-top: -6px;
}
#project .flowArea .flowBox li:nth-child(2n):after{
	content: none;
}
#project .flowArea .flowBox li .boxImg{
	width: 100%;
	text-align: center;
}
#project .flowArea .flowBox li .boxImg img{
	width: 100%;
}
#project .flowArea .flowBox li .boxTxt{
	margin: 2% auto;
	padding: 4%;
}
#project .flowArea .flowBox li .boxTxt h4{
	font-size: 16px;
	text-align: center;
	color: #42a32f;
	margin: 3% auto;
	line-height: 1.6;
}
#project .flowArea .flowBox li .boxTxt p{
	font-size: 14px;
	line-height: 1.4;
}
/*------------------------------*/
#project .personArea{
	max-width: 870px;
	margin: 10% auto;
	background-color: #a0a0a0;
	color: #fff;
	padding: 2% 0;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#project .personArea .personImg{
	width: 100%;
	text-align: center;
	margin-top: 5%;
}
#project .personArea .personTxt{
	width: 100%;
	margin-right: 3%;
	margin-top: 5%;
	padding: 0 10px 30px;
}
#project .personArea .personTxt h4{
	font-size: 20px;
	border-bottom: 1px solid #fff;
	padding-bottom: 2%;
	margin-top: 2%;
	margin-bottom: 2%;
}
#project .personArea .personTxt h4 span{
	font-size: 14px;
	margin-left: 3%;
}
#project .personArea .personTxt p{
	font-size: 16px;
	line-height: 1.6;
}

/*------------------------------
	loading
------------------------------*/
#loadingWrap {
	width: 100%;
	height: 100%;
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	z-index:1000;
	overflow: hidden;
}
#loadingWrap img{
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -25px;
	margin-left: -25px;
	width: 50px;
}
