.home #main {
	height: calc(100vh - 80px);
	position: relative;
}
.home #main .bg_w{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.home #main .bg_w .bg{
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
	position: absolute;
	top: 0;
	left: 0;
}
.home #main .bg_w .bg_01{
	background-image: url(../images/home/fv_01@x2.jpg);
	z-index: 2;
}
.home #main .bg_w .bg_02 {
	background-image: url(../images/home/fv_02@x2.jpg);
	z-index: 1;
}
.home #main .bg_w .bg_03 {
	background-image: url(../images/home/fv_03@x2.jpg);
	z-index: 0;
}
.home #main .in{
	height: 100%;
}
.home #main .catch{
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(0px, -50%);
    width: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.home #main .catch img{
	width: calc(325 / 1400* 100vw);
}
@media screen and (max-width: 750px) {
	.home #main {
        box-sizing: border-box;
        padding-top: 170px;
    }
	.home #main .bg_w .bg_01{
		background-image: url(../images/home/fv_01_sp.jpg);
		z-index: 2;
	}
	.home #main .bg_w .bg_02 {
		background-image: url(../images/home/fv_02_sp.jpg);
		z-index: 1;
	}
	.home #main .bg_w .bg_03 {
		background-image: url(../images/home/fv_03_sp.jpg);
		z-index: 0;
	}
	.home #main .catch{
		text-align: center;
		position: static;
		width: 100%;
	}
	.home #main .catch img {
		width: 50%;
	}
}

.home #news{
	padding: 90px 0;
}
.home #news .sec_ttl_w{
	margin-bottom: 55px;
	text-align: center;
}
.home #news .sec_ttl_w .en{
	font-weight: 600;
	font-size: 1.8rem;
	margin-bottom: 5px;
}
.home #news .sec_ttl{
	font-size: 3.4rem;
	font-weight: 500;
	letter-spacing: 6px;
	line-height: 1;
}
.home #news .news_w{
	margin-bottom: 50px;
}
.home #news .news_i{
	border: 1px solid #d7d7d7;
	border-left: 4px solid #0b5caa;
	padding: 25px;
	margin-bottom: 15px;
}
.home #news .news_iw{
	align-items: center;
}
.home #news .news_iw time{
	margin-right: 30px;
}
.home #news .news_i h3 {
	font-weight: 400;
}
@media screen and (max-width: 750px) {
	.home #news{
		padding: 60px 0;
	}
	.home #news .sec_ttl_w .en{
		font-size: 1.4rem;
	}
	.home #news .sec_ttl{
		font-size: 2.8rem;
	}
	.home #news .news_i{
		padding: 20px;
	}
	.home #news .news_iw time{
		margin-right: 0;
		margin-bottom: 10px;
		letter-spacing: 2px;
		width: 100%;
	}
	.home #news .news_i h3{
		line-height: 1.5;
	}
}

.home #service{
	padding-top: 50px;
}
.home #service .service_h{
	position: relative;
	padding-bottom: 80px;
}
.home #service .service_h::after {
	content: "";
	display: block;
	width: 100%;
	height: 75px;
	background: #fff;
	position: absolute;
	top: 0;
}
.home #service .service_h_w{
}
.home #service .service_h_w .txtarea{	
	padding: 0 40px;
}
.home #service .service_h_w .txtarea .sec_ttl_w{
	margin-bottom: 50px;
	position: relative;
}
.home #service .service_h_w .txtarea .sec_ttl{
	font-size: 4.0rem;
	text-align: center;
	font-weight: 300;
	letter-spacing: 8px;
}
.home #service .service_h_w .txtarea .sec_ttl span{
	position: relative;
}
.home #service .service_h_w .txtarea .sec_ttl span:before{
	content: "";
    display: block;
    width: 45px;
    height: 2px;
    background: #0b5caa;
    position: absolute;
    transform: rotate(-45deg);
    left: -15px;
    top: -15px;
}
.home #service .service_h_w .txtarea .sec_ttl span:after {
	content: "";
	display: block;
	width: 45px;
	height: 2px;
	background: #0b5caa;
	position: absolute;
	transform: rotate(-45deg);
	right: -15px;
	bottom: -5px;
}
.home #service .service_h_w .txtarea .txt_w{
	position: relative;
}
.home #service .service_h_w .txtarea .txt_w:before {
	content: "";
	background-image: url(../images/common/logo_mark.svg);
	width: 280px;
	height: 288px;
	display: block;
	background-size: cover;
	opacity: 0.05;
	position: absolute;
	left: 50%;
	top: -120px;
	transform: translate(-50%, 0);
}
.home #service .service_h_w .txtarea .txt_w p{
	line-height: 2.5;
}
.home #service .service_h_w .imgarea{
	flex-shrink: 0;
}

.home #service .service_i_w{
	padding: 80px 0 100px; 
}
.home #service .service_i_w .service_i{
	align-items: center;
	margin-bottom: 50px;
}
.home #service .service_i_w .service_i .imgarea{
	width: 50%;
	min-height: 430px;
	position: relative;
	flex-shrink: 0;
	margin-right: 60px;
}
.home #service .service_i_w .service_i .imgarea .img_in {
	width: 50vw;
	height: 100%;
	background-size: cover;
	background-position: center;
	position: absolute;
	right: 0;
	top: 0;
}
.home #service .service_i_w .service_i:nth-of-type(1) .imgarea .img_in{
	background-image: url(../images/home/top_service_img_01@x2.jpg);
}
.home #service .service_i_w .service_i:nth-of-type(2) .imgarea .img_in{
	background-image: url(../images/home/top_service_img_02@x2.jpg);
}
.home #service .service_i_w .service_i:nth-of-type(3) .imgarea .img_in{
	background-image: url(../images/home/top_service_img_03@x2.jpg);
}
.home #service .service_i_w .service_i:nth-of-type(4) .imgarea .img_in {
	background-image: url(../images/home/top_service_img_04@x2.jpg);
}
.home #service .service_i_w .service_i .txtarea {

}
.home #service .service_i_w .service_i .txtarea .sub_ttl_w{
	margin-bottom: 35px;
}
.home #service .service_i_w .service_i .txtarea .sub_ttl_w .en{
	line-height: 1;
	margin-bottom: 10px;
}
.home #service .service_i_w .service_i .txtarea .sub_ttl_w .sub_ttl{
	font-size: 3.6rem;
	font-weight: 400;
	line-height: 1;
}
.home #service .service_i_w .service_i .txtarea .sub_ttl_w .sub_ttl span{
	position: relative;
	line-height: 1;
}
.home #service .service_i_w .service_i .txtarea .sub_ttl_w .sub_ttl span:after {
    content: "";
    width: 100vw;
    height: 1px;
    background: #0b5caa;
    display: block;
    position: absolute;
    left: calc(100% + 20px);
    top: 50%;
}
.home #service .service_i_w .service_i .txtarea .txt{
	margin-bottom: 30px;
	line-height: 2.5;
}
@media screen and (max-width: 750px) {
	.home #service .service_i_w {
		padding: 80px 0 30px;
	}
	.home #service .service_h:after{
		height: 55px;
	}
	.home #service .service_h_w .txtarea .sec_ttl{
		font-size: 3.2rem;
	}
	.home #service .service_h_w .txtarea{
		padding: 0 10px;
		margin-bottom: 40px;
	}
	.home #service .service_h_w .imgarea {
		flex-shrink: unset;
	}
	.home #service .service_i_w .service_i .imgarea {
		width: 100%;
		min-height: 220px;
		margin-bottom: 30px
	}
	.home #service .service_i_w .service_i .imgarea .img_in {
		width: 95vw;
		height: 100%;
		background-size: cover;
		background-position: center;
		position: absolute;
		right: 0;
		top: 0;
	}
	.home #service .service_i_w .service_i:nth-of-type(2) .imgarea .img_in{
		right: auto;
    	left: 0;
	}
	.home #service .service_i_w .service_i .txtarea .sub_ttl_w .sub_ttl{
		font-size: 2.8rem;
	}
}


.home #result{
	padding: 100px 0 80px;
}
.home #result .sec_ttl_w{
	margin-bottom: 50px;
	position: relative;
}
.home #result .sec_ttl{
	font-size: 4.0rem;
	text-align: center;
	font-weight: 300;
	letter-spacing: 8px;
}
.home #result .sec_ttl span{
	position: relative;
}
.home #result .sec_ttl span:before{
	content: "";
    display: block;
    width: 45px;
    height: 2px;
    background: #0b5caa;
    position: absolute;
    transform: rotate(-45deg);
    left: -15px;
    top: -15px;
}
.home #result .sec_ttl span:after {
	content: "";
	display: block;
	width: 45px;
	height: 2px;
	background: #0b5caa;
	position: absolute;
	transform: rotate(-45deg);
	right: -15px;
	bottom: -5px;
}
.home #result .lead_txt{
	margin-bottom: 50px;
	text-align: center;
}
.home #result .result_w{
	justify-content: space-between;
}
.home #result .result_w li{
	width: 24%;
	height: 240px;
}
.home #result .result_w li a{
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2.8rem;
	font-weight: 400;
}
.home #result .result_w li:nth-of-type(1) a{
	background-image: url(../images/home/result_img_01@x2.jpg);
}
.home #result .result_w li:nth-of-type(2) a {
	background-image: url(../images/home/result_img_02@x2.jpg);
}
.home #result .result_w li:nth-of-type(3) a {
	background-image: url(../images/home/result_img_03@x2.jpg);
}
.home #result .result_w li:nth-of-type(4) a {
	background-image: url(../images/home/result_img_04@x2.jpg);
}
@media screen and (max-width: 750px) {
	.home #result .sec_ttl{
		font-size: 3.4rem;
	}
	.home #result .result_w li{
		width: 100%;
    	height: 200px;
	}
	.home #result .result_w li a{
		font-size: 2.4rem;
	}
}


.home #recruit{
	background-image: url(../images/home/recruit_bg@x2.jpg);
	background-size: cover;
	background-position: center;
	padding: 80px 0;
}
.home #recruit h2{
	font-size: 4.0rem;
	text-align: center;
	margin-bottom: 50px;
	font-weight: 400;
	letter-spacing: 6px;
}
.home #recruit .lead_txt {
	margin-bottom: 50px;
	text-align: center;
}
.home #recruit .more_btn_w{
	text-align: center;
	justify-content: center;
}
.home #recruit .more_btn_w a{
	width: 350px;
    padding: 15px;
    text-align: center;
    display: inline-block;
    border: 1px solid #fff;
    position: relative;
    box-sizing: border-box;
	margin: 0 5px;
}
.home #recruit .more_btn_w a:before {
	content: "";
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-left: 2px solid #fff;
	display: block;
	transform: rotate(135deg);
	position: absolute;
	right: 20px;
	top: 25px;
}
@media screen and (max-width: 750px) {
	.home #recruit h2{
		font-size: 3.4rem;
	}
	.home #recruit .more_btn_w a{
		width: 100%;
		margin: 5px 0;
	}
}
