@charset "UTF-8";
@import url('common.css');

/* CSS Document */

.disable {
	color: #dddddd;
}

@media (min-width:1400px) {
	.main_img {
		width: 100%;
		height: 650px;
		background-image: url('../img/recruit.avif');
		position: relative;
		background-repeat: no-repeat;
		background-size: cover;
		background-position: 50% 30%;
		display: block;
	}

	.main_img .cover {
		width: 100%;
		height: 100%;
		background-color: rgba(0, 0, 0, .5);
		position: absolute;
		top: 0;
		left: 0;
	}

	.main_img .main_img_wrap {
		width: 80%;
		height: 100%;
		margin: 0 auto;
		display: flex;
		flex-flow: row wrap;
		position: relative;
	}

	.main_img .main_img_wrap .left {
		width: 60%;
		display: flex;
		flex-flow: column wrap;
		justify-content: center;
		/* 	justify-content: space-around; */
	}

	.main_img .main_img_wrap .left .catch {
		width: 100%;
		font-size: 64px;
		line-height: 90px;
		letter-spacing: .5em;
		color: #ffffff;
		padding-bottom: 50px;
	}

	.main_img .main_img_wrap .left .subtitle {
		width: 100%;
		font-size: 15px;
		line-height: 30px;
		letter-spacing: .2em;
		color: #ffffff;
		/* padding-bottom: 50px; */
	}

	.main_img .main_img_wrap .right {
		width: 40%;
		height: auto;
		color: #ffffff;
		text-align: justify;
		font-size: 20px;
		/* display: flex; */
		display: none;
		flex-flow: column wrap;
		justify-content: center;
		letter-spacing: .2rem;
	}

	#main {
		width: 1200px;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 200px;
		overflow: hidden;

		.wrap {
			padding-top: 100px;
			width: 1200px;

			.recruit_title {
				width: 100%;
				font-size: 36px;
				line-height: 36px;
				letter-spacing: .2em;
				text-align: center;
				margin-top: 100px;
				margin-bottom: 40px;

				.mini {
					font-size: 60%;
				}
			}

			.re_line {
				width: 800px;
				margin-bottom: 20px;
				margin-left: auto;
				margin-right: auto;

				.title {
					font-size: 24px;
					line-height: 48px;
					display: block;
					font-family: "Noto Sans JP", sans-serif;
				}

				.naiyo {
					font-size: 18px;
					line-height: 48px;
					display: block;
					margin-left: 2em;
				}
			}

			.re_line2 {
				width: 800px;
				font-size: 16px;
				line-height: 32px;
				margin: 5px auto;
				padding-left: 10px;
				padding-right: 10px;
				border-bottom: 1px dotted #333333;
				display: flex;

				.title {
					width: 150px;
					display: block;
				}

				.naiyo {
					width: 650px;
					height: auto;
				}
			}

			.form {
				width: 800px;
				height: auto;
				margin: 0 auto;

				.form_title {
					font-family: "Noto Sans JP", sans-serif;
					font-size: 18px;
					display: flex;
					margin-bottom: 10px;

					.hissu {
						height: 20px;
						width: 40px;
						font-family: "Noto Sans JP", sans-serif;
						color: #ffffff;
						margin-top: 3px;
						margin-bottom: 3px;
						font-size: 12px;
						line-height: 20px;
						text-align: center;
						display: inline-block;
						margin-left: 10px;
						background-color: #D2BB61;
					}
				}

				.form_input {
					width: 100%;
					margin-bottom: 30px;

					input[type="text"] {
						-moz-appearance: none;
						-webkit-appearance: none;
						appearance: none;
						width: 100%;
						padding: 8px 10px;
						border: 1px solid #dddddd;
						border-radius: 5px;
						font-size: 16px;
						line-height: 16px;
						font-family: "Noto Sans JP", sans-serif;
						font-size: 16px;
					}

					input[type="date"] {
						-moz-appearance: none;
						-webkit-appearance: none;
						appearance: none;
						padding: 8px 10px;
						border: 1px solid #dddddd;
						border-radius: 5px;
						font-size: 16px;
						line-height: 16px;
						font-family: "Noto Sans JP", sans-serif;
						font-size: 16px;
					}

					textarea {
						width: 100%;
						height: 300px;
						-moz-appearance: none;
						-webkit-appearance: none;
						appearance: none;
						padding: 8px 10px;
						border: 1px solid #dddddd;
						border-radius: 5px;
						font-size: 16px;
						line-height: 16px;
						font-family: "Noto Sans JP", sans-serif;
						font-size: 16px;
					}
				}

				/* =========================
 個人情報保護方針リンク
========================= */
				.sendbtn_box {
					margin-top: 50px;
					width: 100%;
				}

				.sendbtn_box .doitext {
					width: 100%;
					font-size: 16px;
					letter-spacing: 0.1em;
					text-align: center;
					margin-bottom: 50px;
				}

				/* リンク本体 */
				.sendbtn_box .doitext a {
					text-decoration: none;
					color: #273a8b;
					position: relative;
					display: inline-block;

					font-family: "Zen Kaku Gothic New", sans-serif;
					font-size: 16px;
					letter-spacing: 0.1em;

					transition: color 0.3s ease;
				}

				/* 下線 */
				.sendbtn_box .doitext a::after {
					content: "";
					position: absolute;
					left: 0;
					bottom: -3px;
					width: 0%;
					height: 1px;
					background: #a9b3df;
					transition: width 0.3s ease;
				}

				.sendbtn_box .doitext a:hover {
					color: #a9b3df;
				}

				.sendbtn_box .doitext a:hover::after {
					width: 100%;
				}

				/* =========================
 ボタン
========================= */
				/* .sendbtn_box .submitbtn {
					-moz-appearance: none;
					-webkit-appearance: none;
					appearance: none;
					width: 440px;
					height: 80px;
					margin: 0 auto;
					display: flex;
					align-items: center;
					justify-content: center;
					background-color: #D2BB61;
					font-size: 24px;
					color: #ffffff;
					font-family: "Noto Sans JP", sans-serif;
					border: none;
					border-radius: 10px;
				} */
				.sendbtn_box .submitbtn {
					appearance: none;
					width: auto;
					padding: 14px 36px;
					margin: 40px auto 0;
					display: flex;
					align-items: center;
					justify-content: center;
					font-family: "Zen Old Mincho", serif;
					font-weight: 400;
					font-size: 18px;
					letter-spacing: 0.15em;
					color: #000000;
					background: transparent;
					border: 1px solid #c2c2c2;
					border-radius: 2px;
					cursor: pointer;
					position: relative;
					transition: all 0.35s cubic-bezier(.22, .61, .36, 1);
				}

				.sendbtn_box .submitbtn:hover {
					background: #D2BB61;
					color: #fff;
					transform: translateY(-2px);
					border: 1px solid #D2BB61;
				}

				.sendbtn_box .submitbtn::after {
					content: "";
					position: absolute;
					left: 50%;
					bottom: 8px;
					width: 0%;
					height: 1px;
					background: #fff;
					transform: translateX(-50%);
					transition: width 0.3s ease;
				}

				.sendbtn_box .submitbtn:hover::after {
					width: 60%;
				}

			}
		}
	}
}

@media (max-width:1399px) and (min-width:601px) {
	.main_img {
		width: 100%;
		height: 50vw;
		background-image: url('../img/recruit.avif');
		position: relative;
		background-repeat: no-repeat;
		background-size: cover;
		background-position: 50% 30%;
		display: block;
	}

	.main_img .cover {
		width: 100%;
		height: 100%;
		background-color: rgba(0, 0, 0, .5);
		position: absolute;
		top: 0;
		left: 0;
	}

	.main_img .main_img_wrap {
		width: 80%;
		height: 100%;
		margin: 0 auto;
		display: flex;
		flex-flow: row wrap;
		position: relative;
	}

	.main_img .main_img_wrap .left {
		width: 60vw;
		display: flex;
		flex-flow: column wrap;
		justify-content: center;
		/* 	justify-content: space-around; */
	}

	.main_img .main_img_wrap .left .catch {
		width: 100%;
		font-size: 5vw;
		line-height: 1.4em;
		letter-spacing: 0.4em;
		color: #ffffff;
		padding-bottom: 5%;
	}

	.main_img .main_img_wrap .left .subtitle {
		width: 100%;
		font-size: 1.3vw;
		line-height: 1.8em;
		letter-spacing: .2em;
		color: #ffffff;
	}

	.main_img .main_img_wrap .right {
		width: 40%;
		height: auto;
		color: #ffffff;
		text-align: justify;
		font-size: 20px;
		/* display: flex; */
		display: none;
		flex-flow: column wrap;
		justify-content: center;
		letter-spacing: .2rem;
	}

	#main {
		width: 100%;
		padding: 0 20px;
		margin-bottom: 200px;
		overflow: hidden;

		.wrap {
			/* padding-top: 100px; */
			padding-top: 2%;
			width: 100%;

			.recruit_title {
				width: 100%;
				font-size: 4vw;
				line-height: 1em;
				letter-spacing: .2em;
				text-align: center;
				margin-top: 100px;
				margin-bottom: 40px;

				.mini {
					font-size: 60%;
				}
			}

			.re_line {
				width: 90%;
				margin-bottom: 20px;
				margin-left: auto;
				margin-right: auto;

				.title {
					font-size: 2.5vw;
					line-height: 2em;
					display: block;
					font-family: "Noto Sans JP", sans-serif;
				}

				.naiyo {
					font-size: 2vw;
					line-height: 3em;
					display: block;
					margin-left: 2em;
				}
			}

			.re_line2 {
				width: 80%;
				font-size: 16px;
				line-height: 32px;
				margin: 5px auto;
				padding: 10px;
				border-bottom: 1px dotted #333333;
				display: flex;

				.title {
					width: 20%;
					display: block;
				}

				.naiyo {
					width: 80%;
					height: auto;
				}
			}

			.form {
				width: 90%;
				height: auto;
				margin: 0 auto;

				.form_title {
					font-family: "Noto Sans JP", sans-serif;
					font-size: 18px;
					display: flex;
					margin-bottom: 10px;

					.hissu {
						height: 20px;
						width: 40px;
						font-family: "Noto Sans JP", sans-serif;
						color: #ffffff;
						margin-top: 3px;
						margin-bottom: 3px;
						font-size: 12px;
						line-height: 20px;
						text-align: center;
						display: inline-block;
						margin-left: 10px;
						background-color: #D2BB61;
					}
				}

				.form_input {
					width: 100%;
					margin-bottom: 30px;

					input[type="text"] {
						-moz-appearance: none;
						-webkit-appearance: none;
						appearance: none;
						width: 100%;
						padding: 8px 10px;
						border: 1px solid #dddddd;
						border-radius: 5px;
						font-size: 16px;
						line-height: 16px;
						font-family: "Noto Sans JP", sans-serif;
						font-size: 16px;
					}

					input[type="date"] {
						-moz-appearance: none;
						-webkit-appearance: none;
						appearance: none;
						padding: 8px 10px;
						border: 1px solid #dddddd;
						border-radius: 5px;
						font-size: 16px;
						line-height: 16px;
						font-family: "Noto Sans JP", sans-serif;
						font-size: 16px;
					}

					textarea {
						width: 100%;
						height: 300px;
						-moz-appearance: none;
						-webkit-appearance: none;
						appearance: none;
						padding: 8px 10px;
						border: 1px solid #dddddd;
						border-radius: 5px;
						font-size: 16px;
						line-height: 16px;
						font-family: "Noto Sans JP", sans-serif;
						font-size: 16px;
					}
				}

				.sendbtn_box {
					margin-top: 50px;
					width: 100%;
				}

				.sendbtn_box .doitext {
					width: 100%;
					font-size: 16px;
					letter-spacing: 0.1em;
					text-align: center;
					margin-bottom: 50px;
				}

				/* リンク本体 */
				.sendbtn_box .doitext a {
					text-decoration: none;
					color: #273a8b;
					position: relative;
					display: inline-block;

					font-family: "Zen Kaku Gothic New", sans-serif;
					font-size: 16px;
					letter-spacing: 0.1em;

					transition: color 0.3s ease, transform 0.15s ease, opacity 0.15s ease;
				}

				/* 下線（初期なし） */
				.sendbtn_box .doitext a::after {
					content: "";
					position: absolute;
					left: 0;
					bottom: -3px;
					width: 0%;
					height: 1px;
					background: #a9b3df;
					transition: width 0.3s ease;
				}

				.sendbtn_box .doitext a:active {
					transform: scale(0.96);
					opacity: 0.6;
				}

				.sendbtn_box .doitext a {
					-webkit-tap-highlight-color: transparent;
				}

				.sendbtn_box .submitbtn {
					appearance: none;
					width: auto;
					padding: 14px 36px;
					margin: 40px auto 0;
					display: flex;
					align-items: center;
					justify-content: center;
					font-family: "Zen Old Mincho", serif;
					font-weight: 400;
					font-size: 18px;
					letter-spacing: 0.15em;
					color: #000000;
					background: transparent;
					border: 1px solid #c2c2c2;
					border-radius: 2px;
					cursor: pointer;
					position: relative;
					transition: all 0.35s cubic-bezier(.22, .61, .36, 1);
				}

				.sendbtn_box .submitbtn:hover {
					background: #D2BB61;
					color: #fff;
					transform: translateY(-2px);
					border: 1px solid #D2BB61;
				}

				.sendbtn_box .submitbtn::after {
					content: "";
					position: absolute;
					left: 50%;
					bottom: 8px;
					width: 0%;
					height: 1px;
					background: #fff;
					transform: translateX(-50%);
					transition: width 0.3s ease;
				}

				.sendbtn_box .submitbtn:hover::after {
					width: 60%;
				}
			}
		}
	}
}

@media (max-width:600px) {
	.main_img {
		width: 100%;
		height: 50vw;
		background-image: url('../img/recruit.avif');
		position: relative;
		background-repeat: no-repeat;
		background-size: cover;
		background-position: 50% 30%;
		display: block;
	}

	.main_img .cover {
		width: 100%;
		height: 100%;
		background-color: rgba(0, 0, 0, .5);
		position: absolute;
		top: 0;
		left: 0;
	}

	.main_img .main_img_wrap {
		width: 100%;
		height: 100%;
		margin: 0 auto;
		display: flex;
		flex-flow: row wrap;
		position: relative;
	}

	.main_img .main_img_wrap .left {
		width: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		/* ←変更 */
		gap: 15px;
	}

	.main_img .main_img_wrap .left .catch {
		width: 100%;
		font-size: 6.5vw;
		line-height: 1.5em;
		letter-spacing: .3em;
		color: #ffffff;
		text-align: center;
		padding-left: 5%;
	}

	.main_img .main_img_wrap .left .catch br {
		display: none;
	}

	.main_img .main_img_wrap .left .subtitle {
		width: 100%;
		font-size: 1.8vw;
		line-height: 2.2em;
		letter-spacing: .5em;
		color: #ffffff;
		text-align: center;
	}

	.main_img .main_img_wrap .right {
		width: 40%;
		height: auto;
		color: #ffffff;
		text-align: justify;
		font-size: 20px;
		/* display: flex; */
		display: none;
		flex-flow: column wrap;
		justify-content: center;
		letter-spacing: .2rem;
	}

	#main {
		width: 100%;
		padding: 0 20px;
		margin-bottom: 200px;
		overflow: hidden;

		.wrap {
			width: 100%;

			.recruit_title {
				width: 100%;
				font-size: 4vw;
				line-height: 1em;
				letter-spacing: .2em;
				text-align: center;
				margin-top: 3em;
				margin-bottom: 1em;

				.mini {
					font-size: 60%;
				}
			}

			.re_line {
				width: 100%;
				margin-bottom: 20px;
				margin-left: auto;
				margin-right: auto;

				.title {
					font-size: 3vw;
					line-height: 2em;
					display: block;
					font-family: "Noto Sans JP", sans-serif;
				}

				.naiyo {
					font-size: 2.5vw;
					line-height: 3em;
					display: block;
					margin-left: 2em;
				}
			}

			.re_line2 {
				width: 100%;
				font-size: 3vw;
				line-height: 2em;
				margin: 5px auto;
				padding: 10px;
				border-bottom: 1px dotted #333333;
				display: flex;

				.title {
					width: 25%;
					display: block;
				}

				.naiyo {
					width: 75%;
					height: auto;
				}
			}

			.form {
				width: 100%;
				height: auto;
				margin: 0 auto;

				.form_title {
					font-family: "Noto Sans JP", sans-serif;
					font-size: 18px;
					display: flex;
					margin-bottom: 10px;

					.hissu {
						height: 20px;
						width: 40px;
						font-family: "Noto Sans JP", sans-serif;
						color: #ffffff;
						margin-top: 3px;
						margin-bottom: 3px;
						font-size: 12px;
						line-height: 20px;
						text-align: center;
						display: inline-block;
						margin-left: 10px;
						background-color: #D2BB61;
					}
				}

				.form_input {
					width: 100%;
					margin-bottom: 30px;

					input[type="text"] {
						-moz-appearance: none;
						-webkit-appearance: none;
						appearance: none;
						width: 100%;
						padding: 8px 10px;
						border: 1px solid #dddddd;
						border-radius: 5px;
						font-size: 16px;
						line-height: 16px;
						font-family: "Noto Sans JP", sans-serif;
						font-size: 16px;
					}

					input[type="date"] {
						-moz-appearance: none;
						-webkit-appearance: none;
						appearance: none;
						padding: 8px 10px;
						border: 1px solid #dddddd;
						border-radius: 5px;
						font-size: 16px;
						line-height: 16px;
						font-family: "Noto Sans JP", sans-serif;
						font-size: 16px;
					}

					textarea {
						width: 100%;
						height: 300px;
						-moz-appearance: none;
						-webkit-appearance: none;
						appearance: none;
						padding: 8px 10px;
						border: 1px solid #dddddd;
						border-radius: 5px;
						font-size: 3.5vw;
						line-height: 16px;
						font-family: "Noto Sans JP", sans-serif;
						font-size: 16px;
					}
				}

				.sendbtn_box {
					margin-top: 50px;
					width: 100%;
				}

				.sendbtn_box .doitext {
					width: 100%;
					font-size: 3.5vw;
					letter-spacing: 0.1em;
					text-align: center;
					margin-bottom: 50px;
				}

				/* リンク本体 */
				.sendbtn_box .doitext a {
					text-decoration: none;
					color: #273a8b;
					position: relative;
					display: inline-block;
					font-family: "Zen Kaku Gothic New", sans-serif;
					font-size: 3.5vw;
					letter-spacing: 0.1em;
					transition: color 0.3s ease, transform 0.15s ease, opacity 0.15s ease;
				}

				/* 下線（初期なし） */
				.sendbtn_box .doitext a::after {
					content: "";
					position: absolute;
					left: 0;
					bottom: -3px;
					width: 0%;
					height: 1px;
					background: #a9b3df;
					transition: width 0.3s ease;
				}

				.sendbtn_box .doitext a:active {
					transform: scale(0.96);
					opacity: 0.6;
				}

				.sendbtn_box .doitext a {
					-webkit-tap-highlight-color: transparent;
				}

				.sendbtn_box .submitbtn {
					appearance: none;
					width: auto;
					padding: 14px 36px;
					margin: 40px auto 0;
					display: flex;
					align-items: center;
					justify-content: center;
					font-family: "Zen Old Mincho", serif;
					font-weight: 400;
					font-size: 18px;
					letter-spacing: 0.15em;
					color: #000000;
					background: transparent;
					border: 1px solid #c2c2c2;
					border-radius: 2px;
					cursor: pointer;
					position: relative;
					transition: all 0.35s cubic-bezier(.22, .61, .36, 1);
				}

				.sendbtn_box .submitbtn:hover {
					background: #D2BB61;
					color: #fff;
					transform: translateY(-2px);
					border: 1px solid #D2BB61;
				}

				.sendbtn_box .submitbtn::after {
					content: "";
					position: absolute;
					left: 50%;
					bottom: 8px;
					width: 0%;
					height: 1px;
					background: #fff;
					transform: translateX(-50%);
					transition: width 0.3s ease;
				}

				.sendbtn_box .submitbtn:hover::after {
					width: 60%;
				}
			}
		}
	}
}