h2{
	font-size: 2.6rem;
	text-align: center;
	margin: 50px auto 50px auto;
}
.works h3{
	font-size: 2.0rem;
	text-align: center;
	margin-bottom: 50px;
}
.works .flex{
	display: flex;
}
.works .img{
	width: 50%;
	margin-right: 4%;
}
.works .txt{
	width: 46%;
}
.works .btn{
	margin-top: 30px;
}
.works h4{
	font-size: 2.6rem;
	margin-bottom: 10px;
}
.results h2{
	text-align: left;
	margin-bottom: 20px;
}
.results ul{
	margin: 50px 0;
}
.flow .flex{
	display: flex;
	margin: 80px 0;
}
.flow .flex .img{
	flex: 1;
}
.flow .flex .text{
	width: 350px;
	padding: 30px 50px;
	box-sizing: border-box;
	background: #000;
	color: #fff;
}
.flow .flex .text h2{
	margin: 0 0 20px 0;
}
.flow .flex .text .btn a{
	padding: 10px 20px;
	background: #000;
	border: 1px solid #fff;
	margin-top: 20px;
}
.flow .flex .text .btn a:hover{
	background: #fff;
	color: #000;
}
.link .flex{
	display: flex;
	margin-bottom: 80px;	
}
.link .flex > div{
	width: 49%;
	height: 400px;
	background-size: cover;
}
.link .flex > div a{
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	position: relative;
	color: #fff;
}
.link .flex > div a:hover{
	color: #333;
}
.link .flex > div a .text{
	position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);	
}
.link .flex > div a h2{
	margin: 0;
}
.link .flex .recruit{
	margin-right: 2%;
}

.news .flex{
	display: flex;
	margin-bottom: 50px;
}
.news .flex h2{
	margin: 0;
	text-align: left;
	display: flex;
	align-items: center;
}
.news .flex h2:after{
	content: " ";
	border-top: 1px solid #adadad;
	width: 30%;
	margin: 0 auto;
}

.news .flex .ttl{
	width: 25%;
}
.news .flex ul li{
	margin-bottom: 10px;
}


@media screen and (max-width: 800px){
	.works .flex{
		display: block;
	}
	.works .img{
		width: 100%;
		margin: 0 auto;
	}
	.works .img img{
		display: block;
		margin: 0 auto;
	}
	.works .txt{
		width: 100%;
		margin-top: 20px;
	}
	.works h4{
		text-align: center;
	}
	.results ul{
		margin: 30px auto;
	}
	.flow .flex{
		flex-direction: column-reverse;
		flex-wrap: wrap;
	}
	.flow .flex .text{
		width: 100%;
	}
	.flow .flex .img{
		width: 100%;
		padding: 130px;
	}
	.link .flex{
		display: block;
	}
	.link .flex > div{
		width: 100%;
		height: 50vw;
	}
	.news .flex{
		display: block;
	}
	.news .flex .ttl{
		width: 100%;
	}
	.news .flex h2:after{
		content: none;
	}
	.news .flex h2{
		text-align: center;
		margin-bottom: 20px;
	}
	.news .flex .ttl{
		text-align: center;	
	}

 
}

@media screen and (max-width: 400px){
	h2{
		font-size: 2.0rem;
  }
  .works h3{
  	font-size: 1.8rem;
  	text-align: left;
  }
  .works h2{
  	text-align: left;
  }


}