@charset "UTF-8";



/*  ----------------------------------------------------------

kv

----------------------------------------------------------  */
.top-kv {
	position: relative;
	padding-left: 14rem;
}
.top-kv .wrap {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0, -50%);
	-webkit-transform: translate(0, -50%);
	z-index: 99;	
	display: flex;
	flex-direction: column;
	padding-left: 7rem;
}
.top-kv .wrap > span:nth-child(1) {
	font-family: var(--font-roboto);
	font-weight: 700;
	font-size: 8.8rem;
	line-height: 1.3;
	letter-spacing: 0.15em;
	margin-bottom: 2rem;
}
.top-kv .wrap > span:nth-child(2) {
	font-weight: bold;
	font-size: 2rem;
	letter-spacing: 0.2em;
}	
#main {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 64rem;
}
@media screen and (max-width: 768px) {
	.top-kv {
		padding-left: 0;
	}
	.top-kv .wrap {
		padding-left: 2rem;
	}
	.top-kv .wrap > span:nth-child(1) {
		font-size: 6rem;
	}
	.top-kv .wrap > span:nth-child(2) {
		font-size: 1.8rem;
		line-height: 1.8;
	}	
	#main {
		height: 48rem;
	}	
}



/*  ----------------------------------------------------------

company

----------------------------------------------------------  */
.top-company {
	background: var(--bg-grey-1);
	padding: 10rem 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.top-company > * {
	width: 47%;
}
.top-company > div {
	padding-right: 15rem;
}
.top-company p {
	margin-bottom: 4rem;
}
@media screen and (max-width: 768px) {
	.top-company {
		background: var(--bg-grey-1);
		padding: 8rem 3rem;
		display: block;
	}
	.top-company > * {
		width: 100%;
	}
	.top-company > div {
		margin-top: 3rem;
		padding-right: 0;
	}
}



/*  ----------------------------------------------------------

service

----------------------------------------------------------  */
.top-service {
	padding: 10rem 0;
}
.top-service ul li {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.top-service ul li > figure {
	width: 45%;
}
.top-service ul li > div {
	width: 55%;
	position: relative;
}
.top-service ul li > div::before {
	line-height: 1;
	position: absolute;
	font-family: var(--font-roboto);
	font-weight: 700;
	font-size: 9.6rem;
	color: #F5F4F4;
	letter-spacing: -0.05em;
	z-index: -1;
}
.top-service ul li:nth-child(1) > div::before {
	content: "01";
	top: -3rem;
	right: 17rem;
}
.top-service ul li:nth-child(2) > div::before {
	content: "02";
	top: -2.4rem;
	right: 21rem;
}
.top-service ul li:nth-child(3) > div::before {
	content: "03";
	top: -2.7rem;
	right: 18rem;
}
.top-service ul li:nth-child(4) > div::before {
	content: "04";
	top: -2.4rem;
	right: 24rem;
}
.top-service ul li:nth-child(5) > div::before {
	content: "05";
	top: -2.7rem;
	right: 5rem;
}
@media screen and (min-width: 1401px) {
	.top-service ul li:nth-child(1) > div::before {
		right: 15rem;
	}
	.top-service ul li:nth-child(2) > div::before {
		right: 16rem;
	}
	.top-service ul li:nth-child(3) > div::before {
		right: 12rem;
	}
	.top-service ul li:nth-child(4) > div::before {
		right: 18rem;
	}
}
.top-service ul li:nth-child(odd) {
	flex-direction: row-reverse;
}
.top-service ul li:nth-child(odd) > div {
	padding: 0 5rem 0 10%;
}
.top-service ul li:nth-child(even) > div {
	padding: 0 10% 0 5%;
}
.top-service ul li p {
	margin-bottom: 4rem;
}
.top-service ul li:nth-child(2) h3,
.top-service ul li:nth-child(3) h3,
.top-service ul li:nth-child(4) h3 {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin-bottom: 3rem;
}
.top-service ul li:nth-child(2) h3 img,
.top-service ul li:nth-child(3) h3 img,
.top-service ul li:nth-child(4) h3 img {
	width: auto !important;
	height: 5.6rem !important;
	margin-bottom: 1rem;
}
@media screen and (max-width: 768px) {
	.top-service {
		padding: 8rem 0;
	}
	.top-service ul li {
		display: block;
	}
	.top-service ul li > figure {
		width: 100%;
		padding: 0 3rem;
		margin-bottom: 3rem;
	}
	.top-service ul li > div {
		width: 100%;
	}
	.top-service ul li:not(:last-child) {
		margin-bottom: 8rem;
	}
	.top-service ul li:nth-child(1) > div::before {
		top: -3rem;
		right: 3rem;
	}
	.top-service ul li:nth-child(2) > div::before {
		top: -3rem;
		right: 3rem;
	}
	.top-service ul li:nth-child(3) > div::before {
		top: -3rem;
		right: 3rem;
	}
	.top-service ul li:nth-child(4) > div::before {
		top: -3rem;
		right: 3rem;
	}
	.top-service ul li:nth-child(5) > div::before {
		top: -3rem;
		right: 3rem;
	}
	.top-service ul li:nth-child(odd) > div {
		padding: 0 3rem;
	}
	.top-service ul li:nth-child(even) > div {
		padding: 0 3rem;
	}
	.top-service ul li:nth-child(2) h3 img,
	.top-service ul li:nth-child(3) h3 img,
	.top-service ul li:nth-child(4) h3 img {
		height: 4.8rem !important;
	}
}



/*  ----------------------------------------------------------

recruit

----------------------------------------------------------  */
.top-recruit {
	background: var(--bg-grey-2);
	padding: 10rem 0;
	display: flex;
}
.top-recruit > * {
	width: 50%;
}
.top-recruit > div {
	padding-left: 4rem;
	padding-right: 15rem;
}
.top-recruit p {
	margin-bottom: 4rem;
}
.top-recruit .info {
	margin-bottom: 4rem;
	display: table;
	line-height: 1.6;
}
.top-recruit .info dl {
	display: table-row;
	line-height: inherit;
}
.top-recruit .info dt {
	display: table-cell;
	width: 6.5em;
	vertical-align: top;
	white-space: nowrap;
	padding: 0.5em 0;
	border-top: 1px solid #ccc;
	line-height: inherit;
}
.top-recruit .info dd {
	display: table-cell;
	vertical-align: top;
	padding: 0.5em 0;
	border-top: 1px solid #ccc;
	line-height: inherit;
}
.top-recruit ul.list-group li {
	margin-top: 0;
	line-height: inherit;
}
@media screen and (max-width: 768px) {
	.top-recruit {
		padding: 8rem 3rem;
		display: block;
	}
	.top-recruit > * {
		width: 100%;
	}
	.top-recruit figure {
		margin-bottom: 3rem;
	}
	.top-recruit > div {
		padding: 0;
	}
}