@charset "UTF-8";

/* ---------------------------------------------------

	Layout - Form
	/entry/

-------------------------- */

/* ---------------------------------------------------

	Form Setting

--------------------------- */
input[type=text], input[type=tel], input[type=email], 
textarea,
select {
	background-color: rgba(255, 255, 255, 1);
	border: none;
	display: inline-block;
	font-weight: 400;
	outline: none;
	vertical-align: middle;
	box-sizing: border-box;
	transition: .3s;
	}
input[type=text], input[type=tel], input[type=email] {
	width: 100%;
	line-height:1.4;
	border-radius: 100px;
	}
label,
input[type=radio] { cursor: pointer; }
textarea {
	vertical-align: bottom;
	resize: vertical;
	width: 100%;
	}
input[type="radio"],
input[type="checkbox"] {
	background-color: rgba(255, 255, 255, 1);
	position: relative;
	}
select { cursor: pointer; }
input[type=text]:focus, input[type=tel]:focus, input[type=email]:focus,
textarea:focus,
select:focus {
	background-color: rgba(255, 255, 255, 1);
	box-shadow: 0 0 30px rgba(0, 0, 0, .3);
	}
select::-ms-expand { display: none; }
[type=submit] { border: none; }
	/* input-number Spinbutton Dsiapper */
	input[type="number"]::-webkit-outer-spin-button,
	input[type="number"]::-webkit-inner-spin-button {
		-webkit-appearance: none;
		margin: 0;
		}
	input[type="number"] { -moz-appearance: textfield; }
.error {
	color: rgba(230, 10, 25, 1);
	margin-bottom: 10px;
	}
/* ------------------------------------------------ */
@media (min-width: 751px) {
input[type="radio"],
input[type="checkbox"] { margin-right: 5px; }
input[type=text], input[type=tel], input[type=email], 
textarea,
select {
	font-size: 17px;
	padding: 20px 25px;
	}
textarea {
	line-height: 1.75;
	border-radius: 20px;
	}
}
/* ------------------------------------------------ */
@media (max-width: 750px) {
input[type="radio"],
input[type="checkbox"] { margin-right: 5px; }
input[type=text], input[type=tel], input[type=email], 
textarea,
select {
	border-width: 1px;
	padding: 15px;
	}
/*input.com-frm-ipt-lrg[type="radio"],
input.com-frm-ipt-lrg[type="checkbox"] {
	border: 1px solid rgba(125, 185, 10, 1);
	border-radius: 50%;
	height: 20px;
	width: 20px;
	}
input.com-frm-ipt-lrg[type="radio"]:checked:before,
input.com-frm-ipt-lrg[type="checkbox"]:checked:before {
	background-image: url(/src/img/common/icon/check-blue.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 12.5px;
	bottom: 0;
	content: '';
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	}
select {
	background-color: rgba(255, 255, 255, 1);
	background-image: url(/src/img/common/icon/arrow-facedown-blue.svg);
    background-repeat: no-repeat;
    background-position: right 5px center;
    background-size: 10px;
    padding: 15px 20px 15px 12.5px;
	}*/
}

/* ---------------------------------------------------

	Intro

-------------------------- */
#intro.entry {}
	#intro.entry .int-ttlarea {
		display: flex;
		justify-content: center;
		}
	#intro.entry .main {
		display: inline-flex;
		flex-direction: column;
		align-items: flex-start;
		}
		#intro.entry .main span {
			background: -webkit-linear-gradient(-45deg, rgba(0, 200, 200, 1) 0%, rgba(0, 100, 255, 1) 100%);
			-webkit-background-clip: text;
			-webkit-text-fill-color: transparent;
			position: relative;
			display: inline-flex;
			align-items: baseline;
			}
		#intro.entry .main span.jp {
			font-family: "Shippori Mincho", serif;
			line-height: 1;
			}
		#intro.entry .main span.en {
			font-weight: 300;
			line-height: 1.3;
			}
		#intro.entry .main small { font-size: 30%; }
	#intro.entry .subttl {
		color: rgba(0, 100, 255, 1);
		font-family: "Shippori Mincho", serif;
		display: flex;
		align-items: center;
		}
	#ls_entry_confirm #intro.entry .subttl {
		overflow: hidden;
		position: relative;
		}
	#ls_entry_confirm #intro.entry .subttl:before {
		bottom: 0;
		content: '';
		position: absolute;
		top: 0;
		box-shadow: 0 0 30px rgba(0, 0, 0, 0.2);
		border-radius: 50%;
		}
	/* thanks */
	#ls_entry_thanks #intro.entry .int-ttlarea {
		flex-direction: column;
		align-items: center;
		}
/* ----------------------- */
@media screen and (min-width: 751px) {
#intro.entry { padding: 180px 60px 20px; }
	/* Input */
	#ls_entry #intro.entry .main span.jp { font-size: min(4vw, 45px); }
	#ls_entry #intro.entry .main span.en {
		font-size: min(10vw, 130px);
		letter-spacing: -10px;
		margin-top: -20px;
		}
	/* Confirm */
	#ls_entry_confirm #intro.entry .main { padding-right: 30px; }
	#ls_entry_confirm #intro.entry .main span.jp { font-size: min(3vw, 35px); }
	#ls_entry_confirm #intro.entry .main span.en {
		font-size: min(8vw, 100px);
		letter-spacing: -7px;
		margin-top: -15px;
		}
	#ls_entry_confirm #intro.entry .subttl {
		font-size: min(4vw, 55px);
		line-height: 1;
		padding-left: 30px;
		}
	#ls_entry_confirm #intro.entry .subttl:before {
		left: -20px;
		width: 20px;
		}
	/* thanks */
	#ls_entry_thanks #intro.entry .main span.jp { font-size: min(3vw, 35px); }
	#ls_entry_thanks #intro.entry .main span.en {
		font-size: min(8vw, 100px);
		letter-spacing: -7px;
		margin-top: -15px;
		}
	#ls_entry_thanks #intro.entry .subttl {
		font-size: min(3vw, 40px);
		line-height: 1;
		margin-top: 25px;
		}
}
/* ----------------------- */
@media screen and (max-width: 750px) {
#intro.entry { padding: 120px 15px 20px; }
	/* Input */
	#ls_entry #intro.entry .main span.jp { font-size: min(8vw, 35px); }
	#ls_entry #intro.entry .main span.en {
		font-size: min(20vw, 80px);
		letter-spacing: -6px;
		margin-top: -10px;
		}
	/* Confirm */
	#ls_entry_confirm #intro.entry .main { padding-right: 30px; }
	#ls_entry_confirm #intro.entry .main span.jp { font-size: min(7vw, 25px); }
	#ls_entry_confirm #intro.entry .main span.en {
		font-size: min(15vw, 50px);
		letter-spacing: -4px;
		margin-top: -5px;
		}
	#ls_entry_confirm #intro.entry .subttl {
		font-size: min(7vw, 30px);
		line-height: 1.25;
		padding-left: 25px;
		}
	#ls_entry_confirm #intro.entry .subttl:before {
		left: -20px;
		width: 20px;
		}
	/* thanks */
	#ls_entry_thanks #intro.entry .main span.jp { font-size: min(7vw, 25px); }
	#ls_entry_thanks #intro.entry .main span.en {
		font-size: min(15vw, 50px);
		letter-spacing: -4px;
		margin-top: -5px;
		}
	#ls_entry_thanks #intro.entry .subttl {
		font-size: min(7vw, 30px);
		line-height: 1.25;
		margin-top: 20px;
		}
}

/* ---------------------------------------------------

	Form

-------------------------- */
.fom-wrap { margin: 0 auto; }
	.fom-outline { text-align: center; }
	#ls_entry .fom-outline {
		background-color: rgba(255, 255, 255, 1);
		box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.1);
		}
	.fom-outline {}
		.fom-outline p { display: inline-block; }
		.fom-con .item { border-bottom: 1px solid rgba(112, 112, 112, 0.5); }
		.fom-con .item:first-child { border-top: 1px solid rgba(112, 112, 112, 0.5); }
		.fom-con .item dl {
			display: flex;
			justify-content: flex-start;
			}
		.fom-con .item dl dt {
			display: flex;
			align-items: center;
			justify-content: flex-start;
			}
		.fom-con .item dl dd { width: 100%; }
		.fom-con .item .cell:last-child { margin-bottom: 0; }
		.fom-con .item .link {
			color: rgba(0, 100, 255, 1);
			text-decoration: underline;
			}
		.fom-btnarea {
			display: flex;
			justify-content: center;
			}
			.fom-btnarea .item {
				position: relative;
				width: 100%;
				display: inline-flex;
				align-items: center;
				justify-content: space-between;
				border-radius: 100px;
				box-sizing: border-box;
				}
			.fom-btnarea .item:after {
				background-image: url(/recruiting/src/img/common/arrow/circle-right-white.svg);
				background-position: center;
				background-repeat: no-repeat;
				background-size: 100%;
				content: '';
				line-height: 1;
				position: relative;
				border-radius: 50%;
				}
			.fom-btnarea .item span {
				text-align: center;
				width: 100%;
				}
			.fom-btnarea .item:disabled { pointer-events: none; }
			.fom-btnarea .item:disabled:hover { transform: scale(1.0); }
			.fom-btnarea #submit {
				background: -webkit-linear-gradient(-45deg, rgba(0, 200, 200, 1) 0%, rgba(0, 100, 255, 1) 100%);
				color: rgba(255, 255, 255, 1);
				}
			.fom-btnarea #submit:disabled { background: transparent linear-gradient(102deg, rgba(197, 197, 197, 1) 0%, rgba(146, 146, 146, 1) 100%) 0% 0% no-repeat padding-box; }
			.fom-btnarea #send {
				background: -webkit-linear-gradient(-45deg, rgba(0, 200, 200, 1) 0%, rgba(0, 100, 255, 1) 100%);
				color: rgba(255, 255, 255, 1);
				}
			.fom-btnarea #back {
				flex-direction: row-reverse;
				background: transparent linear-gradient(102deg, rgba(197, 197, 197, 1) 0%, rgba(146, 146, 146, 1) 100%) 0% 0% no-repeat padding-box;
				color: rgba(255, 255, 255, 1);
				}
			.fom-btnarea #back:after { transform: rotate(180deg); }
	/* Input */
	#ls_entry .fom-con .item.req dl dt:before {
		background-color: rgba(230, 10, 25, 1);
		color: rgba(255, 255, 255, 1);
		content: '必須';
		line-height: 1;
		border-radius: 100px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		}
	/* Confirm */
	#ls_entry_confirm .fom-btnarea { flex-direction: row-reverse; }
/* ----------------------- */
@media screen and (min-width: 751px) {
.fom-wrap {
	max-width: 1000px;
	padding: 0 60px;
	}
	.fom-outline {
		padding: 30px;
		border-radius: 20px;
		}
	#ls_entry .fom-outline { margin-top: 30px; }
		.fom-outline p {
			font-size: 16px;
			line-height: 2;
			}
	#ls_entry .fom-con { margin-top: 50px; }
		.fom-con .item dl { align-items: center; }
		.fom-con .item.aifs dl { align-items: flex-start; }
		.fom-con .item dl dt,
		.fom-con .item dl dd { padding: 25px 0; }
		.fom-con .item dl dt {
			font-size: 18px;
			min-width: 40%;
			}
		.fom-con .item.aifs dl dt { padding-top: 40px; }
		.fom-con .item .cell { margin-bottom: 15px; }
		.fom-btnarea { margin-top: 50px; }
			.fom-btnarea .item {
				font-size: 25px;
				height: 100px;
				max-width: 600px;
				padding: 0 25px;
				transition: all 0.3s;
				}
			.fom-btnarea .item:hover { transform: scale(1.1); }
			.fom-btnarea .item:after {
				min-width: 30px;
				height: 30px;
				}
	/* Input */
	#ls_entry .fom-con .item.req dl dt:before {
		font-size: 16px;
		height: 30px;
		margin-right: 10px;
		padding: 0 10px;
		}
	/* Confirm */
	#ls_entry_confirm .fom-btnarea .item { margin: 0 2%; }
}
/* ----------------------- */
@media screen and (max-width: 750px) {
.fom-wrap { padding: 0 20px; }
	.fom-outline {
		margin-top: 15px;
		padding: 20px 25px;
		border-radius: 10px;
		}
		.fom-outline p {
			font-size: 14px;
			line-height: 1.85;
			text-align: left;
			}
	#ls_entry .fom-con { margin-top: 30px; }
		.fom-con .item dl {
			padding: 25px 0;
			flex-direction: column;
			align-items: flex-start;
			}
		.fom-con .item dl dt {
			font-size: 16px;
			min-width: 40%;
			}
		.fom-con .item dl dd {
			font-size: 14px;
			margin-top: 10px;
			padding-left: 20px;
			}
		.fom-con .item .cell { margin-bottom: 15px; }
		#privacy_agree { margin-left: 15px; }
		.fom-btnarea {
			margin-top: 35px;
			padding: 0 15px;
			flex-wrap: wrap;
			}
			.fom-btnarea .item {
				font-size: 20px;
				height: 80px;
				margin-bottom: 15px;
				padding: 0 20px;
				}
			.fom-btnarea .item:last-child { margin-bottom: 0; }
			.fom-btnarea .item:after {
				min-width: 20px;
				height: 20px;
				}
			.fom-btnarea #back { padding-right: 14%; }
	/* Input */
	#ls_entry .fom-con .item.req dl dt:before {
		font-size: 14px;
		height: 30px;
		margin-right: 10px;
		padding: 0 10px;
		}
}

/* ---------------------------------------------------

	Thanks

-------------------------- */
.fom-thanks {
	background-color: rgba(255, 255, 255, 1);
	color: rgba(0, 0, 0, 1);
	margin: 0 auto;
	text-align: center;
	box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.1);
	}
	.fom-thanks .ttl {}
	.fom-thanks .tel {}
		.fom-thanks .tel dl {
			display: flex;
			align-items: center;
			justify-content: center;
			}
		.fom-thanks .tel dl dt {}
		.fom-thanks .tel dl dd {
			font-family: "Aoboshi One", serif;
			display: flex;
			align-items: center;
			justify-content: center;
			}
		.fom-thanks .tel dl dd:before {
			background-color: rgba(0, 0, 0, 1);
			background-image: url(/recruiting/src/img/common/icon/tel-white.svg);
			background-position: center;
			background-repeat: no-repeat;
			background-size: 60%;
			content: '';
			display: inline-flex;
			border-radius: 100px;
			}
		.fom-thanks .tel a { color: rgba(0, 0, 0, 1); }
	.fom-thanks .txt p {
		display: inline-block;
		line-height: 1.75;
		}
/* ----------------------- */
@media screen and (min-width: 751px) {
.fom-thanks {
	margin-top: 30px;
	padding: 30px;
	border-radius: 20px;
	}
	.fom-thanks .ttl { font-size: min(3vw, 40px); }
	.fom-thanks .tel { margin-top: 15px; }
		.fom-thanks .tel dl dt,
		.fom-thanks .tel dl dd { padding: 10px; }
		.fom-thanks .tel dl dt { font-size: 18px; }
		.fom-thanks .tel dl dd { font-size: 25px; }
		.fom-thanks .tel dl dd:before {
			height: 25px;
			margin-right: 5px;
			min-width: 25px;
			}
		.fom-thanks .tel a { pointer-events: none; }
	.fom-thanks .txt { margin-top: 15px; }
	.fom-thanks .txt p { font-size: 18px; }
}
/* ----------------------- */
@media screen and (max-width: 750px) {
.fom-thanks {
	margin-top: 30px;
	padding: 30px;
	border-radius: 20px;
	}
	.fom-thanks .ttl { font-size: min(5vw, 25px); }
	.fom-thanks .tel { margin-top: 25px; }
		.fom-thanks .tel dl { flex-direction: column; }
		.fom-thanks .tel dl dt { font-size: 18px; }
		.fom-thanks .tel dl dd {
			font-size: 20px;
			margin-top: 5px;
			}
		.fom-thanks .tel dl dd:before {
			height: 20px;
			margin-right: 5px;
			min-width: 20px;
			}
	.fom-thanks .txt { margin-top: 25px; }
	.fom-thanks .txt p {
		font-size: 15px;
		text-align: justify;
		}
}