@import url(./reset.css);
@import url(./common.css);
.noto {
		font-family: "Noto Sans JP", sans-serif;
}

.primg {
		transition-timing-function: ease-out !important;
}

.kv {
		width: 100%;
		max-width: 100%;
		height: 467px;
		background-image: url(../img/company_kv.webp);
		background-image: image-set(url(../img/company_kv.webp) 1x, url(../img/company_kv@2x.webp) 2x);
		background-image: -webkit-image-set(url(../img/company_kv.webp) 1x, url(../img/company_kv@2x.webp) 2x);
		background-repeat: no-repeat;
		background-size: auto;
		background-position: center;
}

.kv .inner {
		width: 100%;
		max-width: 960px;
		margin: 0 auto;
		position: relative;
		height: 467px;
}

.kv .inner .ttl_bg {
		background-image: url(../img/company_ttl_bg.webp);
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		top: 100px;
		right: -85px;
		width: 502px;
		height: 160px;
}

.kv .inner h1 {
		position: absolute;
		top: 275px;
		right: 0;
		font-size: 42px;
		line-height: 1;
		color: #fff;
		font-weight: 400;
		display: inline-block;
}

.s1 {
		width: 100%;
		margin: 0 auto;
		position: relative;
		z-index: 5;
		padding-bottom: 45px;
}

.s1 .pr01 {
		position: fixed;
		top: 60px;
		right: calc(50vw + 337px);
		width: 590px;
		opacity: 0.05;
		z-index: -1;
}

.s1 .pr02 {
		position: fixed;
		top: 537px;
		left: calc(50vw + 435px);
		width: 431px;
		opacity: 0.05;
		z-index: -1;
}

.s1 .inner {
		width: 100%;
		max-width: 960px;
		margin: 0 auto;
}

.s1 .inner ul {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		width: 834px;
		margin: 70px auto 90px;
		position: relative;
		z-index: 5;
}

.s1 .inner ul .ttl {
		flex-basis: 210px;
		font-size: 16px;
		font-weight: 600;
		line-height: 1.9;
		color: #505050;
		padding-left: 10px;
}

.s1 .inner ul .summary {
		flex-basis: 614px;
		font-size: 16px;
		font-weight: 400;
		line-height: 1.9;
		color: #505050;
}

.s1 .inner ul .summary a {
		text-decoration: underline;
		color: #976a53;
}

.s1 .inner ul .kei {
		flex-basis: 100%;
		padding-bottom: 25px;
		margin-bottom: 30px;
		border-bottom: 1px dotted #707070;
}

.s1 .inner .bnr {
		width: 544px;
		margin: 0 auto;
		position: relative;
		z-index: 3;
		overflow: hidden;
		transition: 1s all;
		border-radius: 10px;
}

.s1 .inner .bnr img {
		max-width: 100%;
		transition: transform .6s ease;
}

.s1 .inner .bnr:hover img {
		transform: scale(1.1, 1.1);
		transition: transform .6s ease;
}

.s1:after {
		content: "";
		background-image: url(../img/common_footer_before.svg);
		background-repeat: no-repeat;
		background-position: center;
		background-size: auto;
		width: 100%;
		height: 831px;
		position: absolute;
		bottom: 0;
		left: 0;
		z-index: 2;
}

footer {
		padding-top: 0 !important;
}

@media (max-width: 780px) {
		.kv {
				width: 100%;
				max-width: 100%;
				height: 70.25vw;
				background-image: url(../img/company_kv-s.webp);
				background-repeat: no-repeat;
				background-size: contain;
				background-position: center;
				margin-top: -14vw;
		}
		.kv .inner {
				width: 100%;
				max-width: 100%;
				margin: 0 auto;
				position: relative;
				height: 70.25vw;
		}
		.kv .inner .ttl_bg {
				background-image: url(../img/company_ttl_bg.webp);
				background-repeat: no-repeat;
				background-size: contain;
				position: absolute;
				top: 21.2vw;
				right: -3vw;
				width: 64.35897vw;
				height: 20.51282vw;
		}
		.kv .inner h1 {
				position: absolute;
				top: 35.128vw;
				right: 5vw;
				font-size: 5.89744vw;
				line-height: 1;
				color: #fff;
				font-weight: 400;
				display: inline-block;
		}
		.s1 {
				width: 100%;
				margin: 0 auto;
				position: relative;
				z-index: 5;
				padding-bottom: 14vw;
		}
		.s1 .pr01 {
				position: fixed;
				top: 21.9vw;
				left: -30.256vw;
				width: 75.64vw;
				opacity: 0.05;
		}
		.s1 .pr01 img {
				max-width: 100%;
		}
		.s1 .pr02 {
				position: fixed;
				top: 117.4vw;
				right: -25.64vw;
				left: inherit;
				width: 55.25641vw;
				opacity: 0.05;
		}
		.s1 .pr02 img {
				max-width: 100%;
		}
		.s1 .inner {
				width: 100%;
				max-width: 80vw;
				margin: 0 auto;
		}
		.s1 .inner ul {
				display: flex;
				justify-content: space-between;
				flex-wrap: wrap;
				width: 80vw;
				margin: 9vw auto 11vw;
				position: relative;
				z-index: 5;
		}
		.s1 .inner ul .ttl {
				flex-basis: 20vw;
				font-size: 3.07692vw;
				font-weight: 600;
				line-height: 1.9;
				color: #505050;
				padding-left: 0;
		}
		.s1 .inner ul .summary {
				flex-basis: 60vw;
				font-size: 3.07692vw;
				font-weight: 400;
				line-height: 1.9;
				color: #505050;
		}
		.s1 .inner ul .summary a {
				text-decoration: underline;
				color: #976a53;
		}
		.s1 .inner ul .kei {
				flex-basis: 100%;
				padding-bottom: 3vw;
				margin-bottom: 3.5vw;
				border-bottom: 1px dotted #707070;
		}
		.s1 .inner .bnr {
				width: 90vw;
				margin: 0 -5vw;
		}
		.s1 .inner .bnr img {
				max-width: 100%;
		}
		.s1:after {
				content: "";
				background-image: url(../img/common_footer_before-s.svg);
				background-repeat: no-repeat;
				background-position: center;
				background-size: contain;
				width: 100%;
				height: 59.10256vw;
				position: absolute;
				bottom: -1px;
				left: 0;
				z-index: 2;
		}
		footer {
				padding-top: 30vw !important;
		}
}
