@charset "UTF-8";

.kv__txt {
	position: absolute;
	top: 38.7%;
	left: 3.7%;
}
.nodelay-active .kv__txt {
	opacity: 0;
	transition: opacity 3s;
}
.nodelay-active.active .kv__txt {
	opacity: 1;
}

#area-profile .m-lb01__sub > span,
#area-service .m-lb01__sub > span {
	position: relative;
	display: inline-block;
}
#area-profile .m-lb01__sub > span::after,
#area-service .m-lb01__sub > span::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	display: block;
	border-bottom: solid 1px;
}
#area-profile .txt-box,
#area-service .txt-box,
#area-profile .txt-box > *,
#area-service .txt-box > * {
	position: relative;
}
#area-profile .txt-box::before,
#area-service .txt-box::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
}
#area-profile .txt-box::before {
	-webkit-transform: translate(-45%, -50%);
	    -ms-transform: translate(-45%, -50%);
	        transform: translate(-45%, -50%);
	background: url("../image/top/profile_bg.png") 50% 50% no-repeat;
	width: 374px;
	height: 588px;
}
#area-service .txt-box::before {
	-webkit-transform: translate(-48%, -70%);
	    -ms-transform: translate(-48%, -70%);
	        transform: translate(-48%, -70%);
	background: url("../image/top/service_bg.png") 50% 50% no-repeat;
	width: 444px;
	height: 249px;
}

#area-forte {
	background: 50% 0 no-repeat;
	background-size: 100%;
	padding-top: 29.8%;
}

.forte-cont {
	background: #fff;
	max-width: 1380px;
	width: 96%;
	margin: 0 auto;
}



@media screen and (min-width: 768px) {

	#area-intro {
		padding: 75px 0 90px;
	}

	#area-profile,
	#area-service {
		margin: 100px 0;
	}
	#area-profile .m-lb01__sub,
	#area-service .m-lb01__sub {
		margin-bottom: 15px;
	}
	#area-profile .m-lb01__sub > span,
	#area-service .m-lb01__sub > span {
		padding-right: 55px;
	}
	#area-profile .m-lb01__sub > span::after,
	#area-service .m-lb01__sub > span::after {
		width: 40px;
	}

	#area-profile .img-box {
		width: 48%;
	}
	#area-profile .img-box figure {
		margin-left: -12%;
	}
	#area-profile .txt-box {
		width: 43.33%;
		padding-top: 15px;
	}

	#area-service .img-box {
		width: 50%;
	}
	#area-service .img-box figure {
		margin-right: -11.5%;
	}
	#area-service .txt-box {
		width: 40.833%;
		padding-top: 65px;
	}
	#area-service .m-lb01__main {
		margin-right: -1.5em;
	}

	.service-link {
		margin-top: 30px;
	}

	.forte-cont {
		padding: 70px 0 100px;
	}

	.forte-list {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
	}
	.forte-list li {
		width: 30%;
	}
	.forte-list__img {
		margin-bottom: 15px;
	}

	.forte-link {
		margin-top: 45px;
	}

	#area-news {
		padding: 95px 0;
	}
	#area-news .m-lb01 {
		margin-bottom: 45px;
	}

	.news-link {
		margin-top: 60px;
	}

}

@media screen and (min-width: 1340px) {

	#area-profile .img-box figure {
		margin-left: calc((100vw - 1200px) / 2 * -1);
	}

	#area-service .img-box figure {
		margin-right: calc((100vw - 1200px) / 2 * -1);
	}

}

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

	.kv__txt {
		top: 34%;
	}
	.kv__txt img {
		max-width: 74%;
	}

	#area-intro {
		padding: 45px 0 50px;
	}
	#area-intro > p {
		padding: 0 5%;
	}

	#area-profile,
	#area-service {
		margin: 55px 0;
	}
	#area-profile .m-lb01__sub,
	#area-service .m-lb01__sub {
		margin-bottom: 10px;
	}
	#area-profile .m-lb01__sub > span,
	#area-service .m-lb01__sub > span {
		padding-right: 40px;
	}
	#area-profile .m-lb01__sub > span::after,
	#area-service .m-lb01__sub > span::after {
		width: 33px;
	}
	#area-profile .img-box,
	#area-service .img-box {
		margin-bottom: 25px;
	}
	#area-profile .txt-box::before {
		-webkit-transform: translate(-50%, -50%) scale(.6);
		    -ms-transform: translate(-50%, -50%) scale(.6);
		        transform: translate(-50%, -50%) scale(.6);
	}
	#area-service .txt-box::before {
		-webkit-transform: translate(-52%, -70%) scale(.6);
		    -ms-transform: translate(-52%, -70%) scale(.6);
		        transform: translate(-52%, -70%) scale(.6);
	}

	.service-link {
		text-align: center;
		margin-top: 25px;
	}

	.forte-cont {
		padding: 50px 7% 55px;
	}

	.forte-list {
		max-width: 360px;
		margin: 0 auto;
	}
	.forte-list li {
		margin-bottom: 33px;
	}
	.forte-list__img {
		margin-bottom: 10px;
	}

	.forte-link {
		margin-top: 30px;
	}
	.forte-link a {
		max-width: 97.6%;
	}

	#area-news {
		padding: 55px 0;
	}
	#area-news .m-lb01 {
		margin-bottom: 30px;
	}

	.news-link {
		margin-top: 40px;
	}

}

@media all and (-ms-high-contrast:none) { /*IE*/

	
	
}