@charset "utf-8";

video{
	height:auto;
	width:100%;
}

.main{
	position: relative;
	overflow: hidden;
}

.main>img{
	width:100%; 
}

.main .main_cloud{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 1600px;
	margin: 8% auto 0;
	max-width: 70%;
	text-align: center;
}


.main .btn{
	width:200px;
	max-width: 50%;
	margin: 0 auto;
	text-align: center;
	margin-top: 3%;
}


.sec01{
	max-width: 1024px;
	margin: 0 auto;
}

.sec01 .img{
	width: 34.87%;
	float: left;
}

.sec01 .txt{
	width: 60%;
	float: right;
}

h2{
	font-size: 60px;
}

h3{
	font-size: 40px;
	color: #00418f;
}

h4{
	font-size: 30px;
}

h5{
	font-size: 24px;
}

h6{
	font-size: 17px;
}

.lead{
	font-size: 15px;
	line-height: 2.7;
	letter-spacing: 0.1em;
}

.marker{
	background: linear-gradient(transparent 75%, #FFF209 75%);
}

.bg_sankaku{
	position: relative;
	background: #E4E9EE;
	overflow: hidden;
}

.bg_sankaku .container{
	position: relative;
	z-index: 2;
}

.bg_sankaku:before{
	content: "";
	top: 0;
	right: 0;
	left: 0;
	position: absolute;
	height:100vw;
	background: #EFF2F5;
	transform: skew(-45deg);
	transform-origin: top right;
}

.bg_sankaku:after{
	/*content: "";*/
	bottom: 0;
	right: 0;
	left: 0;
	position: absolute;
	height:100vw;
	background: #EFF2F5;
	transform: skew(-45deg);
	transform-origin: bottom left;
}

.build_list li{
	margin-bottom:80px; 
	height:400px;
	position: relative;
}

.build_list li .img{
	position: relative;
	overflow: hidden;
}

.build_list li .img img{
	transition: all 0.2s ease-in-out 0s;
}

body:not(.mobile) .build_list li a:hover .img img{
	transform: scale(1.1);
}

.build_list li .img:after{
	content:"";
	border: solid 10px rgba(255,255,255,0.3);
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
}

.build_list li .txt{
	position: absolute;
	top: 50px;
	left: 50px;
	border:solid 5px rgba(255,255,255,0.3);
	background-color: #00418F;
	background-image: url(../images/top/arrow.png);
	background-position:  bottom 20px right 20px;
	background-repeat: no-repeat;
	color:#FFFFFF;
	padding:15px;
	box-sizing: border-box;
	width:380px;
	height:350px;
	transition: all 0.2s ease-in-out 0s;
}

.build_list li.cs .txt{
	border:none;
	background-color: transparent!important;
	background-image: none;
	color:#333333;
	height:auto;
	top: 50%;
	margin-top: -90px;
	letter-spacing: 0.1em;
	font-family: 'Oswald', sans-serif;
}

.build_list li.cs .txt p{
	font-size: 23px;
	text-align: center;
}

body:not(.mobile) .build_list li a:hover .txt{
	transform: translateX(20px);
}

body:not(.mobile) .build_list li:nth-child(2n) a:hover .txt{
	transform: translateX(-20px);
}

.build_list li:nth-child(2n) .txt{
	left: auto;
	right: 50px;
}

.build_list li:nth-child(3n+2) .txt{
	background-color: #E83920;
}

.build_list li:nth-child(3n) .txt{
	background-color: #009A53;
}

.build_list li .txt h5{
	font-size: 24px;
}

.build_list li .txt .name_wrap{
	position: absolute;
	bottom: 20px;
	left: 20px;
	font-size: 12px;
}

.build_list li:nth-child(3) .txt h5{
	line-height: 1.5;
}

.build_list li:nth-child(3) .txt .name_wrap{
	line-height: 1.4;
}

.build_list li .txt .name_wrap .name{
	font-size: 18px;
}

.scale{
	opacity: 0;
	transform: translateY(10%);
	transition: all 1s ease-in-out;
}

.scale.view{
	opacity: 1;
	transform: translateY(0%);
}

.sec2{
	
}

.sec2 li{
	width:47%;
	float:left;
	margin-right: 6%;
	padding-left:30px;
	clear: both;
	box-sizing: border-box;
	margin-bottom: 40px;
	font-size: 12px;
	position: relative;
}

.sec2 li h6{
	margin-bottom:10px;
}

.sec2 li h6:before{
	content:"";
	position: absolute;
	top: 3px;
	left:0;
	background: url(../images/common/ring.png) center center no-repeat;
	background-size: contain;
	height: 22px;
	width: 22px;
}

.sec2 li:nth-child(2n){
	margin-right:0;
	clear: none;
}

.news_list li{
	width:32.04%;
	float: left;
	margin-right: 1.94%;
	margin-bottom: 30px;
}

.news_list li:nth-child(3n){
	margin-right:0;
}

.news_list li dl{
	padding:20px;
	background: #FFFFFF;
}

.news_list li dl dt{
	color: #E83920;
	margin-bottom: 10px;
	font-weight: bold;
}

.news_list li dl dd{
	height:5.4em;
	font-size: 12px;
	overflow: hidden;
}

footer ul{
	border-top:solid 1px #009FE8;
	letter-spacing:-0.4em;
	overflow:hidden;
	max-width: 1200px;
	margin: 0 auto;
	font-size: 11px;
	background-image: linear-gradient( rgba(0, 159, 232, 0.5) .1em, transparent .1em );
	background-position: top -1px center;
	background-size: auto 28px;
	line-height: 20px;
}

footer ul li{
	display:inline-block;
	padding: 4px;
	letter-spacing:normal;
}

footer ul li:after{
	content:"｜";
	padding-left: 8px;
}

footer ul li:last-child:after{
	content:none;
}

.bnr_site{
	max-width: 560px;
	margin: 0 auto;
}

.bnr_site li{
	float:left;
	width:46.43%;
	text-align: center;
}

.bnr_site li:nth-child(2n){
	float:right;
}

.circle{
	position: relative;
	max-width: 719px;
	margin:0 auto;
}

.circle p.circle_c{
	position: absolute;
	top: 82.9%;
	left: 64%;
	width: 20.45%;
	display: block;
}

.circle p.circle_d{
	position: absolute;
	top: 89.7%;
	left: 34.5%;
	width: 21.28%;
	display: block;
}



.readmore a{
	font-size:15px;
	max-width: 200px;
	background: #bbc8d4;
	font-size:15px;
	line-height:40px;
	text-align: center;
	margin: 0 auto 30px;
	color: #FFFFFF;
	transition: all 0.5s ease-in-out 0s;
	display: block;
}

.readmore a:hover{
	background: #889DB0;
}

.hiding{
	display:none;
}


.con_event{
	max-width: 1200px;
	margin: 0 auto;
}

.eventsec{
	background: url(../images/top/event_bg.jpg) center top repeat;
	padding:60px;
	color:#00408E;
}

.eventsec h3{
	line-height:1.5;

}

.eventsec .eventtxt{
	width: 38.59%;
	float: right;
	line-height: 2;
}

.eventsec .eventimg{
	width: 58.92%;
	float: left;
}





@media screen and (max-width: 980px){
	
	.build_list li{
		margin-bottom:50px; 
		height:auto;
		position: relative;
	}

	.build_list li .txt{
		position: static;
		width:auto;
		height:auto;
	}
	

	.build_list li.cs .txt{
		margin-top: 0;
	}

	.build_list li .txt h5{
		text-align: center;
	}

	.build_list li .txt h5 br{
		display: none;
	}

	.build_list li .txt .name_wrap{
		position: static;
		padding-top:20px;
	}

	.build_list li .txt .name_wrap br{
		display: none;
	}

}


@media screen and (max-width: 900px){
	
	h4 br{
		display: none;
	}

	h6 br{
		display: none;
	}

}

@media screen and (max-width: 767px){
	
	.sec01 .img{
		width: auto;
		float: none;
		padding:0 10%;
		margin-bottom: 30px;
	}

	.sec01 .txt{
		width: auto;
		float: none;
	}

	h2{
		font-size: 40px;
	}

	h3{
		font-size: 30px;
	}
	
	h4{
		font-size: 20px;
	}
	
	h5{
		font-size: 16px;
	}
	
	h6{
		font-size: 15px;
	}

	.lead{
		font-size: 14px;
	}

	.build_list li.cs .txt p{
		font-size: 18px;
	}

	.build_list li .txt h5 br{
		display: block;
	}

	.build_list li .txt .name_wrap br{
		display: block;
	}
	

	.build_list li .img img{
		width:150%;
		max-width: none;
	}

	.build_list li:nth-child(2n+1) .img img{
		margin-left: -50%;
	}

	.build_list li .img:after{
		border: solid 5px rgba(255,255,255,0.3);
	}

	
	.sec2 li{
		width:auto;
		float:none;
		margin-right: 0;
	}
	
	.news_list{
		max-width: 346px;
		margin: 0 auto -20px;
	}

	.news_list li{
		width:auto;
		float: none;
		margin-right: 0;
		margin-bottom: 20px;
	}

	.news_list li dl{
		padding:15px;
	}
	
	footer ul{
		font-size: 10px;
		background-size: auto 20px;
		line-height: 12px;
	}
	
	
	.eventsec{
		padding:40px 20px;
	}

	.eventsec .eventtxt{
		width: auto;
		float: none;
		margin-bottom: 30px;
		line-height: 2;
	}

	.eventsec .eventimg{
		width: auto;
		float: none;
		text-align: center;
	}
	

}

@media screen and (max-width: 600px){

	.build_list li .txt h5{
		font-size: 20px;
		text-align: left;
	}

	.build_list li .txt{
		background-image: url(../images/top/arrow.png);
		background-position:  bottom  right ;
		background-size: 30px auto;
		color:#FFFFFF;
		padding:15px 15px 40px;
		box-sizing: border-box;
	}

}

@media screen and (max-width: 980px){
	
	.bnr_site li{
		float:none !important;
		width:auto;
		margin-bottom: 20px;
	}

	.bnr_site li:last-child{
		margin-bottom: 0px;
	}

}



