@charset "utf-8";

/* -------------------------------------------------- */
/* PC*/
/* -------------------------------------------------- */
/* 募集要項
------------------------------------ */
#requirements {
	padding-top: 130px;
	background-color: #f5f5f5;
	border-radius: 120px 120px 0 0;
}

#requirementsHead {
	margin-bottom: 60px;
}

.requirementsWrap {
	margin-bottom: 80px;
	padding: 40px 80px 90px;
	background-color: #FFFFFF;
	border-radius: 24px;
}

.requirementsTitle {
	margin-bottom: 15px;
	padding-left: 25px;
	position: relative;
	font-size: 2.8rem;
	font-weight: 700;
	font-family: "Zen Maru Gothic", sans-serif;
	color: #000;
}

.requirementsTitle::before {
	content: "";
	width: 14px;
	height: 14px;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	border: 3px solid #fea92c;
	border-radius: 50%;
}

.requirementsTable {
	width: 100%;
	margin-bottom: 60px;
	table-layout: fixed;
	border-collapse: collapse;
}

.requirementsTable th,
.requirementsTable td {
	padding-top: 15px;
	padding-bottom: 14px;
	font-size: 1.6rem;
	line-height: calc(36 / 16);
	border-bottom: 1px solid #a0a0a0;
}

.requirementsTable th {
	width: 200px;
	padding-left: 20px;
	font-weight: 700;
	text-align: left;
}

.requirementsProcess {
	padding: 20px 30px 30px;
	border: 2px solid #000;
	border-radius: 15px;
}

.requirementsProcessTitle {
	margin-bottom: 20px;
	font-size: 2.2rem;
	font-weight: 700;
	font-family: "Zen Maru Gothic", sans-serif;
	color: #000;
}

#requirementsEntry {
	text-align: center;
}

#requirementsEntryBtn {
	width: 604px;
	padding: 30px 100px;
	font-size: 3rem;
	color: #000000;
	background-color: #FFFFFF;
	border-width: 3px;
	border-radius: 56px;
}

#requirementsEntryBtn.btn::before {
	background-color: #ffc800;
}

#requirementsEntryBtn.btn::after {
	width: 48px;
	position: absolute;
	top: 50%;
	right: 50px;
	transform: translateY(-50%);
	background-image: url(../../img/common/icon_btn_arrow_black.svg);
}


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

}


/* -------------------------------------------------- */
/* TAB&SP */
/* -------------------------------------------------- */
@media screen and (max-width: 1024px) {
	#requirements {
		border-radius: 60px 60px 0 0;
	}

	.requirementsWrap {
		padding: 40px 40px 60px;
	}

	#requirementsEntryBtn {
		background-color: #ffc800;
	}
}


/* -------------------------------------------------- */
/* TAB(調整) */
/* -------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1024px) {

}

/* -------------------------------------------------- */
/* SP(調整) */
/* -------------------------------------------------- */
@media screen and (max-width: 767px) {
    #requirements {
        padding-top: 60px;
        border-radius: 40px 40px 0 0;
    }

	#requirementsHead {
		margin-bottom: 30px;
	}

	.requirementsWrap {
		margin-bottom: 60px;
		padding: 30px 20px 40px;
	}

	.requirementsTitle {
		margin-bottom: 10px;
		padding-left: 18px;
		font-size: 2.2rem;
	}

	.requirementsTitle::before {
		width: 10px;
		height: 10px;
		border-width: 2px;
	}

	.requirementsTable {
		margin-bottom: 40px;
	}

	.requirementsTable th,
	.requirementsTable td {
		width: 100%;
		display: block;
		font-size: 1.4rem;
		line-height: 1.8;
	}

	.requirementsTable th {
		padding: 15px 0 0;
		border-bottom: none;
	}

	.requirementsTable td {
		padding: 10px 0 15px;
	}

	.requirementsProcess {
		padding: 20px;
	}

	.requirementsProcessTitle {
		font-size: 1.8rem;
	}

	#requirementsEntryBtn {
		padding: 20px 60px;
		font-size: 2rem;
	}

	#requirementsEntryBtn.btn::after {
		width: 30px;
		right: 30px;
	}
}