@charset "utf-8";

/* ---------- ヘッダー ---------- */

@media screen and (min-width: 768px) {
	.header_flex_child_2 li:nth-of-type(4)::before {
		content: "";
		position: absolute;
		top: -15px;
		left: 50%;
		transform: translate(-50%, 0%);
		display: inline-block;
		width: 12px;
		height: 12px;
		background-image: url(../img/works/triangle.png);
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
	}
}

/* ---------- fv ---------- */

.fv {
	position: relative;
	height: 300px;
	/* background-color: #ff7f7f; */
	background-image: url(../img/works/fv.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.fv_title {
	position: absolute;
	top: 55%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	text-align: center;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.2em;
	color: #fff;
}

.fv_title_sub {
	width: 100%;
	margin: 0;
	font-size: 0.5em;
	letter-spacing: 0.1em;
	color: #3cadff;
}

@media screen and (min-width: 768px) {
	.fv {
		height: auto;
	}

	.fv_title {
		position: absolute;
		top: 60%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 100%;
		text-align: center;
		font-size: 1.8rem;
		font-weight: 700;
		line-height: 1.5;
		letter-spacing: 0.2em;
	}

	.fv_title_sub {
		text-align: center;
		font-size: 0.6em;
		line-height: 1;
		letter-spacing: 0.1em;
		color: #3cadff;
		border: 0;
	}
}

@media screen and (min-width: 1024px) {
	.fv_title {
		position: absolute;
		top: 60%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 100%;
		text-align: center;
		font-size: 2rem;
	}
}

@media screen and (min-width: 1440px) {
	.fv_title {
		position: absolute;
		top: 60%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 100%;
		text-align: center;
		font-size: 2.7rem;
	}
}

@media screen and (min-width: 1920px) {
	.fv_title {
		position: absolute;
		top: 60%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 100%;
		text-align: center;
		font-size: 3.5rem;
	}
}

/* ---------- 事業について ---------- */

.works {
	width: 100%;
	padding: 10% 0 50%;
	background-color: #f7f7f7;
}

.works_coming_soon {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 12px;
	width: 90%;
	margin: 0 auto;
}

.works_coming_soon .text {
	line-height: 1.5;
}

.works_coming_soon .img {
	width: 100%;
}

.works_flex {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: center;
	align-items: stretch;
	gap: 16px;
}

.works_box {
	width: 90%;
	margin: 0 auto;
	box-shadow: 0px 3px 5px 3px rgba(0, 0, 0, 0.35);
}

.works_box_detail {
	padding: 16px;
}

.works_box_detail_title {
	font-size: 1.4rem;
}

.works_box_detail_table {
	width: 100%;
	margin: 12px auto 0;
	font-size: 1rem;
}

.works_box_detail_table tr:not(:last-of-type) {
	background-image: linear-gradient(to right, #000, #000 2px, transparent 2px, transparent 6px);
	background-size: 6px 1px;
	background-repeat: repeat-x;
	background-position: left bottom;
}

.works_box_detail_table th,
.works_box_detail_table td {
	padding: 0.5em;
	border: 0;
}

.works_box_detail_table th {
	width: 30%;
}
.works_box_detail_table td {
	width: 70%;
}

.pages {
	margin: 10% auto 0;
}

.pages_flex {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: stretch;
	gap: 16px;
	font-weight: 700;
}

.pages_flex > * {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: auto;
	aspect-ratio: 1 / 1;
}

.pages_now {}

.pages_prev_arrow,
.pages_prev_number,
.pages_next_number,
.pages_next_arrow {
	color: #fff;
	background-color: #3cadff;
}

.pages_prev_arrow,
.pages_next_arrow {
	position: relative;
}

.pages_prev_arrow::before,
.pages_next_arrow::before {
	content: '';
	position: absolute;
    width: 16px;
    height: 16px;
    border-top: solid 2px #fff;  /* 好みで色を変えてください */
    border-right: solid 2px #fff;   /* 好みで色を変えてください */
}

.pages_prev_arrow::before {
    top: 50%;
    left: 57.5%;
	transform: translate(-50%, -50%) rotate(225deg);
}

.pages_next_arrow::before {
    top: 50%;
    left: 42.5%;
	transform: translate(-50%, -50%) rotate(45deg);
}

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

@media screen and (min-width: 768px) {
	.works {
		padding: 10% 5% 25%;
	}

	.works_coming_soon {
		gap: 24px;
		width: 100%;
	}

	.works_coming_soon .text {}

	.works_coming_soon .img {}

	.works_flex {
		flex-direction: row;
		gap: 24px;
	}

	.works_box {
		width: calc((100% - 24px) / 2);
		margin: 0;
	}
}

@media screen and (min-width: 1024px) {
	.works {
		padding: 10% 10% 25%;
	}

	.works_flex {
		gap: 36px;
	}

	.works_box {
		width: calc((100% - 36px) / 2);
	}

	.works_box_detail {
		padding: 24px;
	}

	.works_box_detail_table th,
	.works_box_detail_table td {
		padding: 1em;
	}
}

@media screen and (min-width: 1440px) {
	.works {
		padding: 10% 15% 25%;
	}

	.works_coming_soon {
		gap: 48px;
	}

	.works_flex {
		gap: 48px;
	}

	.works_box {
		width: calc((100% - 48px) / 2);
	}

	.works_box_detail {
		padding: 36px;
	}

	.works_box_detail_table {
		margin: 24px auto 0;
	}

	.works_box_detail_table th,
	.works_box_detail_table td {
		padding: 1em;
	}
}

@media screen and (min-width: 1920px) {
	.works {
		padding: 10% 20% 25%;
	}

	.works_flex {
		gap: 60px;
	}

	.works_box {
		width: calc((100% - 60px) / 2);
	}
}

.recruit {
	padding: 0;
}