@charset "UTF-8"; 

/* #recruit ------------------------------------------------------------------------------------------*/

body {
	font-size: 16px; 
	-webkit-text-size-adjust: 100%; 
}

main {
	margin-top: 70px; 
}

.section-container {
	padding: 70px 0; 
	margin: 0 auto; 
}

.section-area {
	width: 1060px; 
	margin: 30px auto 0; 
}

.heading {
	text-align: center; 
}

.heading h2 {
	font-size: 30px; 
	letter-spacing: 3px; 
	text-align: center; 
}

.heading .en {
	color: #F08100; 
}

.lower_sub_heading {
	text-align: center; 
	width: 1060px; 
	margin: 0 auto; 
}

.lower_sub_heading h3 {
	font-size: 26px; 
	border-bottom: 2px solid #F08100; 
	padding-bottom: 10px; 
	letter-spacing: 2px; 
}

.font_bold {
	font-weight: bold !important; 
}

.contact {
	background-color: #FFF; 
}

.contact .formGroup {
	padding-bottom: 30px; 
	margin-bottom: 50px; 
}

.contact .formGroup .note {
	font-size: 14px; 
	color: #CC0000; 
	margin-bottom: 40px; 
}

.contact .formGroup .formWrap {
	margin-bottom: 20px; 
	display: flex; 
	padding-bottom: 20px; 
	border-bottom: #CCC dotted 1px; 
}

.contact .formWrap p.ttl {
	width: 280px; 
	margin-bottom: 10px; 
	padding-right: 30px; 
}

.contact .formWrap p.ttl span {
	color: #CC0000; 
}

.contact .formWrap .formInput {
	width: calc(100% - 260px); 
	word-break: break-all; 
}

.contact .formWrap .formInput span {
	display: block; 
	font-size: 14px; 
}

.contact .formWrap .formInput dl {
	display: flex; 
	flex-wrap: wrap; 
}

.contact .formWrap .formInput dl dt {
	width: 120px; 
	margin-bottom: 10px; 
}

.contact .formWrap .formInput dl dd {
	width: calc(100% - 120px); 
	margin-bottom: 10px; 
}

.contact .formWrap .formInput p {
	margin-top: 15px; 
}

.contact .formWrap .formInput p a {
	color: #000; 
	text-decoration: underline; 
}

.contact .formWrap .formInput .row {
	display: flex; 
	align-items: center; 
}

.contact .formWrap .formInput .row > label {
	width: 100px; 
}

.contact .formWrap .formInput .row .input-box {
	width: 100%; 
}

.contact input[type="button"], 
.contact input[type="text"], 
.contact input[type="submit"], 
.contact input[type="checkbox"], 
.contact input[type="radio"], 
.contact select, 
.contact textarea {
	font-family: "Shippori Mincho", serif; 
	-webkit-appearance: none; 
	border-radius: 0; 
	-webkit-border-radius: 0; 
	border: none; 
	font-size: 16px; 
}

.contact label {
	display: block; 
	margin-bottom: 5px; 
}

.contact select {
	border: #C8C8C8 solid 2px; 
	border-radius: 5px; 
	padding: 5px 45px 5px 15px; 
	line-height: 30px; 
	box-sizing: border-box; 
	background: #FFF url(/assets/img/contact/select_icon.svg) no-repeat 95% center; 
	width: 100%; 
}

.contact input[type="radio"], 
.contact input[type="checkbox"] {
	border: #C8C8C8 solid 2px; 
	border-radius: 5px; 
	line-height: 30px; 
	width: 30px; 
	height: 30px; 
	box-sizing: border-box; 
	position: relative; 
	outline: none; 
	margin: 0; 
	vertical-align: middle; 
	margin-right: 10px; 
	margin-bottom: 3px; 
}

.contact input[type="radio"]::after, 
.contact input[type="checkbox"]::after {
	content: ""; 
	width: 16px; 
	height: 16px; 
	border-radius: 5px; 
	background-color: #F08100; 
	position: absolute; 
	top: 50%; 
	left: 50%; 
	margin: -8px 0 0 -8px; 
	display: none; 
}

.contact input[type="radio"]:checked::after, 
.contact input[type="checkbox"]:checked::after {
	display: block; 
}

.contact input[type="radio"]::after, 
.contact input[type="radio"] {
	border-radius: 50%; 
}

.contact input[type="text"] {
	background-color: #E6E6E6; 
	padding: 5px 15px; 
	line-height: 30px; 
	width: 100%; 
	max-width: 100%; 
	box-sizing: border-box; 
}

.contact input[type="text"].half {
	width: 90%; 
	margin-right: 2%; 
}

.contact textarea {
	background-color: #E6E6E6; 
	padding: 5px 15px; 
	line-height: 30px; 
	width: 100%; 
	height: 200px; 
	max-width: 100%; 
	box-sizing: border-box; 
}

#recruit_confirm #submit_button {
	display: flex; 
	justify-content: center; 
	gap: 0 90px; 
}

#recruit_confirm #submit_button input[type="submit"] {
	margin: 0; 
}

#submit_button input[type="submit"], 
#recruit_confirm #submit_button input[type="button"], 
#recruit_confirm #submit_button input[type="submit"] {
	font-family: "Shippori Mincho", serif; 
	font-size: 17px; 
	color: #FFF; 
	border: none; 
	outline: none; 
	background-color: #938994; 
	padding: 1em 2.5em; 
	cursor: pointer; 
	margin: 0; 
	display: block; 
}

#submit_button input[type="submit"] {
	margin: 0 auto; 
}

.contact .error_text {
	color: #CC0000; 
	font-size: 14px; 
	margin-top: 8px; 
}

.titleImage {
	background: #AAA url("/assets/img/program/detlinkbg.jpg") no-repeat center center; 
	background-size: cover; 
	color: #FFF; 
	padding: 1vw; 
	margin-bottom: 100px; 
}

.titleImage h2 {
	text-align: center; 
	font-size: 28px; 
	font-weight: bold; 
	letter-spacing: 0.1em; 
	margin: 80px; 
}

.recruitItem ul {
	margin: 0 20px; 
	list-style: disc; 
}

.recruitItem ul li {
	list-style: disc; 
}

.cont_link {
	width: 100%; 
	text-align: center; 
	margin: 30px auto; 
}

.cont_link a {
	color: #FFF; 
	border: none; 
	outline: none; 
	background-color: #938994; 
	padding: 1em 1.5em; 
	cursor: pointer; 
	margin: 0 auto; 
	display: inline-block; 
}

/* Liquid ------------------------------------------------------------------------------------------*/

@media (max-width: 1440px) {
	#recruit_confirm #submit_button {
		gap: 0 min(calc(90/1440*100vw), 90px); 
	}

	#submit_button input[type="submit"], 
	#recruit_confirm #submit_button input[type="button"], 
	#recruit_confirm #submit_button input[type="submit"] {
		font-size: min(calc(17/1440*100vw), 17px); 
	}

	.cont_link a {
		font-size: min(calc(17/1440*100vw), 17px); 
	}
}

@media screen and (max-width: 1030px) {
	.section-area {
		width: 90%; 
	}

	.lower_sub_heading {
		width: 90%; 
	}
}

/* Smartphone ------------------------------------------------------------------------------------------*/

@media screen and (max-width: 1000px) {
	.section-container {
		padding: 45px 0; 
	}

	.section-area {
		margin: 20px auto 0; 
	}

	.heading h2 {
		font-size: 24px; 
		letter-spacing: 2.4px; 
	}

	.lower_sub_heading {
		margin: 0 auto 20px; 
	}

	.lower_sub_heading h3 {
		font-size: 20px; 
		padding-bottom: 8px; 
	}

	.contact .formGroup .formWrap {
		display: block; 
		margin-bottom: 4vw; 
		padding-bottom: 5vw; 
	}

	.contact .formWrap p.ttl {
		width: 100%; 
		margin-bottom: 3vw; 
	}

	.contact .formWrap .formInput {
		width: 100%; 
	}

	.contact input[type="text"].half {
		width: 30vw; 
		margin-right: 3vw; 
	}

	.contact .formWrap .formInput dl dt {
		width: 22vw; 
		margin-bottom: 3vw; 
	}

	.contact .formWrap .formInput dl dd {
		width: calc(100% - 22vw); 
		margin-bottom: 3vw; 
	}

	#recruit_confirm #submit_button {
		display: flex; 
		justify-content: space-between; 
		gap: 0; 
		padding-left: calc(40/786*100%); 
		padding-right: calc(40/786*100%); 
	}

	#submit_button input[type="submit"], 
	#recruit_confirm #submit_button input[type="button"], 
	#recruit_confirm #submit_button input[type="submit"] {
		font-size: min(calc(24/786*100vw), 24px); 
		padding: 1.5em 3em; 
		text-align: center; 
	}

	.cont_link a {
		font-size: min(calc(24/786*100vw), 24px); 
	}
}

@media screen and (max-width: 900px) {
	main {
		margin-top: 70px; 
	}
} 