@charset "UTF-8";

/* ---------------------------------------------------

	Layout - Form
	お問い合わせ　https://recruit.entetsu-drivingschool.co.jp/inquiry/
	エントリー　https://recruit.entetsu-drivingschool.co.jp/entry/
	
	Base

--------------------------------------------------- */

/* ---------------------------------------------------	

	Module

--------------------------------------------------- */

/* ---------------------------------------------------	

	Layout

--------------------------------------------------- */

:root{
    --fomu-color-error:rgba(200, 50, 50, 1);

}
.fomu__counter{
	
	opacity: .6;
	font-size:90%;
	text-align: right;
}
.fomu__comment_info .fomu__kome{
	display: none;
}
.fomu__kome{
	opacity: .6;
	font-size:90%;
}
.fomu__body .error-message {
    line-height: 1.2;
    color: var(--fomu-color-error);
    display: flex;
    align-items: flex-start;
    gap: 0 3px;
	margin-top: 5px;
}
.fomu__body .error-message:before {
    content: '';
    flex-shrink: 0;
    display: block;
    background-color: var(--fomu-color-error);
    line-height: inherit;
    width: 1.3em;
    aspect-ratio: 1;
    -webkit-mask: url(/src/img/common/icon/path_info.svg) no-repeat center/contain;
    mask: url(/src/img/common/icon/path_info.svg) no-repeat center/contain;
}
.fomu__step::before {
    content: "";
    display: block;
    width: 99%;
    height: 6px;
    background-color: #f1f5fb;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.fomu__step li{
	
    width: 30%;
    box-sizing: border-box;
    border-radius: 10px;
    background-color: #f1f5fb;
    position: relative;
    padding: 18px 15px;
    text-align: center;
    line-height: 1.5em;
    font-size: 20px;
    box-sizing: border-box;
    display: flex
;
    justify-content: center;
    align-items: center;
}
.fomu__step li .num {
    display: block;
    background: rgba(0, 130, 205, 1);
    color: #fff;
    font-weight: bold;
    font-size: 15px;
    border-radius: 50%;
    left: 0;
    text-align: center;
    width: 33px;
    height: 33px;
    line-height: 33px;
    display: inline-block;
    margin-right: 10px;
}
.fomu__step li.is-current {
    background-color: rgba(0, 130, 205, 1);
    color: #fff;
}
.fomu__step li.is-current .num {
    background-color: #fff;
    color: rgba(0, 130, 205, 1);
}
.fomu__step{
    counter-reset: step-number;
    list-style-type: none;
    display: flex
;
    justify-content: space-between;
    align-items: center;
    position: relative;
    box-sizing: border-box;
    margin: 0 auto 40px auto ;
	max-width: 700px;

}

	/* Common */
	.form-container { margin: 0 auto; }

		/* Common > Outline */
		.frm-outline {}
			.frm-outline p {}
				.frm-outline p strong {}

		/* Common > From */
		.frm-wrap {}
			/* Common > Inner */
			.frm-inner { border-bottom: 1px solid rgba(0, 130, 205, .5); }
				.frm-item { border-top: 1px solid rgba(0, 130, 205, .5); }
					.frm-item dt,
					.frm-item dd {}
					.frm-item dt {
						background-color: rgba(235, 241, 250, .7);
						color: rgba(0, 130, 205, 1);
						font-weight: 700;
						}
						.frm-item dt span {
							display: inline-block;
							position: relative;
							vertical-align: middle;
							}
						.frm-item dt span:after {
							background-color: rgba(200, 0, 130, 1);
							color: rgba(255, 255, 255, 1);
							display: inline-block;
							position: absolute;
							text-align: center;
							top: 50%;
							vertical-align: middle;
							-webkit-transform: translateY(-50%);
							transform: translateY(-50%);
							}
						.frm-item dt .fomu__required{ 
							background-color: rgba(200, 0, 130, 1);
							color: rgba(255, 255, 255, 1);
							display: inline-block;
							text-align: center;
							vertical-align: middle;
						padding: 1px 3px;
						width: 40px;
							

						 }
						.frm-item dt .fomu__required.--not{ 
background: #6b738b;
						}
						.frm-item.frm-req dt span:after { content: '必須'; }
					.frm-item dd {}
					.frm-item a {
						color: rgba(0, 130, 205, 1);
						font-weight: 700;
						text-decoration: underline;
						}
			/* Common > Btn Area */
			#frm-btnarea {
				margin: 0 auto;
				text-align: center;
				}
				.frm-ba-item {
					display: inline-table;
					text-align: center;
					}
					.frm-bi-ipt {
						border: 0;
						cursor: pointer;
						color: rgba(255, 255, 255, 1);
						display: table-cell;
						font-weight: 700;
						margin: 0;
						position: relative;
						vertical-align: middle;
						-webkit-transition: .3s;
						transition: .3s;
						}
					.frm-bi-ipt:disabled { cursor: default; }
					#frmbtn-send { background-color: rgba(0, 130, 205, 1); }
					#frmbtn-send:disabled,
					#frmbtn-back { background-color: rgba(0, 0, 0, .5); }
					.fomu__btns {
    display: flex
;
    gap: 20px;
    margin-block: 40px 80px;
    justify-content: center;
    flex-direction: row-reverse;
    flex-wrap: wrap;
					}
			/* Common > Parts */
			input,
			label,
			textarea,
			select {
				font-weight: 500;
				outline: none;
				}
			textarea { vertical-align: bottom; }
			.fomu__sub_item.add{
				margin-top: 1em;
			}
			.frm_ipt_ctm {
				border: 1px solid rgba(0, 130, 205, .5);
				-webkit-transition: .3s;
				transition: .3s;
				}
			input.frm_ipt_ctm[type="text"]:focus,
			textarea.frm_ipt_ctm:focus,
			select.frm_ipt_ctm:focus {
				border-color: rgba(0, 130, 205, .1);
				-webkit-box-shadow: 3px 3px 25px rgba(0, 130, 205, .5);
				box-shadow: 3px 3px 25px rgba(0, 130, 205, .5);
				}
			.frm_ipt_min {}
			.frm_ipt_hlf {}
			.frm_ipt_full {}
			.radio_list{
				display: flex;
				flex-wrap:wrap;
			}
			.checkbox_item .icon,
			.radio_item .icon{
				display: none;
			}
			.radio_item {
				
        margin-right: 30px;
			}
			.radio_item ,
			.frm_cell {
				display: inline-block;
				vertical-align: middle;
				box-sizing: border-box;
				}
			.frm_cell.full { width: 100%; }
			.frm_cell_mr_select {
				align-items: center;
				display: inline-flex;
				justify-content: start;
				}
			.frm_info {}
			.frm_info ul {}
			.frm_info ul li {
				display: flex;
				align-items: flex-start;
				justify-content: flex-start;
				}
			.frm_info ul li:before {
				content: '※';
				margin-right: 5px;
				}
			.error {
				color: rgba(200, 50, 50, 1);
				font-weight: 700;
				font-size: 90%;
				}
			/* Common > Scheme */
			.frm_comment {}
			.frm_txt {
				display: inline-block;
				vertical-align: middle;
				}
				.frm_txt p {}
			.frm_label {
				background-color: rgba(0, 130, 205, 1);
				color: rgba(255, 255, 255, 1);
				display: inline-table;
				text-align: center;
				vertical-align: middle;
				}
				.frm_label span {
					display: table-cell;
					vertical-align: middle;
					}

	/* Input */
	.ls_form_input {}

	/* Confirm */
	.ls_form_confirm {}

	/* Thanks */
	.ls_form_thanks {}
		.frm-thanks { margin: 0 auto; }
			.frm-tks-ttl {
				color: rgba(0, 130, 205, 1);
				font-weight: 700;
				text-align: center;
				}
			.frm-tks-body {}
				.frm-tks-body p {}

	/* Inquiry */
	#frm-inquiry {}
		#ls_form_inquiry_input {}
		#ls_form_inquiry_confirm {}
		#ls_form_inquiry_thanks {}

	/* Entry */
	#frm-entry {}
		#ls_form_entry_input {}
		#ls_form_entry_confirm {}
		#ls_form_entry_thanks {}

/* ---------------------------------------------------	

	MediaQuery

--------------------------------------------------- */

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

/* ---------------------------------------------------	

	Layout

--------------------------------------------------- */

	/* Common */
	.form-container { max-width: 1000px; }

		/* Common > Outline */
		.frm-outline { padding: 40px 0; }
			.frm-outline p {
				font-size: 16px;
				letter-spacing: 1px;
				margin-left: 1px;
				line-height: 1.75;
				}
				.frm-outline p strong {
					margin: 0 5px;
					padding: 2.5px 5px;
					}

		/* Common > From */
		.frm-wrap {}
			/* Common > Inner */
			.frm-inner {}
				.frm-item {
					align-items: stretch;
					display: flex;
					justify-content: start;
					}
					.frm-item dt label{
						font-weight: bold;
					}
					.frm-item dt,
					.frm-item dd {
						font-size: 17px;
						line-height: 2;
						padding: 30px;
						}
					.frm-item dt { width: 33%; }
						.frm-item dt span { line-height: 1.5; }
						.frm-item dt span:after {
							right: -60px;
							padding: 1px 3px;
							width: 40px;
							}
					.frm-item dd { width: 67%; }
					.frm-item a { margin: 0 3px; }
			/* Common > Btn Area */
			#frm-btnarea {
				padding: 30px;
				align-items: center;
				display: flex;
				justify-content: center;
				}
				.frm-ba-item {}
					.frm-bi-ipt {
						font-size: 20px;
						letter-spacing: 2px;
						height: 70px;
						left: 0;
						top: 0;
						width: 300px;
						-webkit-border-radius: 35px;
						border-radius: 35px;
						}
				/* Common > Btn Area > Scheme */
				.frm-bi-ipt:hover {
					left: -3px;
					top: -3px;
					-webkit-box-shadow: 5px 5px 20px rgba(0, 0, 0, .2);
					box-shadow: 5px 5px 20px rgba(0, 0, 0, .2);
					}
				.frm-bi-ipt:disabled:hover {
					left: 0;
					top: 0;
					-webkit-box-shadow: none;
					box-shadow: none;
					}
			/* Common > Parts */
			input { margin-right: 10px; }
			label {}
			textarea { line-height: 1.75; }
			select {}

			.frm_ipt_ctm {
				margin-right: 0;
				padding: 2.5%;
				-webkit-border-radius: 10px;
				border-radius: 10px;
				}
			.frm_ipt_ctm.frm_ipt_select {
				margin-right: 5px;
				padding: 10px;
				}
			.frm_ipt_min { width: 15%; }
			.frm_ipt_hlf { width: 45%; }
			.frm_ipt_full { width: 95%; }
			.frm_cell { margin-right: 30px; }
			.frm_cell.mb { margin-bottom: 15px; }
			.frm_cell_mr_hlf { margin-right: 15px; }
			.frm_info { margin-bottom: 15px; }
			.frm_info ul {}
			.frm_info ul li { font-size: 16px; }
			.error {}
			/* Common > Scheme */
			.frm_comment { height: 200px; }
			.frm_txt {}
			.frm_txt.mr { margin-right: 10px; }
				.frm_txt p { font-size: 16px; }
			.frm_label {
				height: 30px;
				margin-left: 15px;
				padding: 0 15px;
				-webkit-border-radius: 15px;
				border-radius: 15px;
				}
				.frm_label span { font-size: 14px; }

	/* Input */
	.ls_form_input {}

	/* Confirm */
	.ls_form_confirm {}
		.ls_form_confirm #frm-btnarea { flex-flow: row-reverse; }
		.ls_form_confirm .frm-ba-item { margin: 0 10px 10px; }

	/* Thanks */
	.ls_form_thanks {}
		.frm-thanks {
			max-width: 700px;
			padding: 40px;
			}
			.frm-tks-ttl { font-size: 30px; }
			.frm-tks-body {}
				.frm-tks-body p {
					font-size: 17px;
					letter-spacing: .5px;
					line-height: 1.85;
					margin-left: .5px;
					margin-bottom: 20px;
					}

	/* Inquiry */
	#frm-inquiry {}
		#ls_form_inquiry_input {}
		#ls_form_inquiry_confirm {}
		#ls_form_inquiry_thanks {}

	/* Entry */
	#frm-entry {}
		#ls_form_entry_input {}
		#ls_form_entry_confirm {}
		#ls_form_entry_thanks {}

}

/* ------------------------------------------------ */

@media screen and (max-width: 750px) {

/* ---------------------------------------------------	

	Layout

--------------------------------------------------- */

	/* Common */
	.form-container {}

		/* Common > Outline */
		.frm-outline { padding: 30px; }
			.frm-outline p {
				font-size: 13px;
				letter-spacing: .5px;
				margin-left: .5px;
				line-height: 2;
				}
				.frm-outline p strong {
					margin: 0 5px;
					padding: 2.5px 5px;
					}

		/* Common > From */
		.frm-wrap {}
			/* Common > Inner */
			.frm-inner {}
				.frm-item {}
					.frm-item dt,
					.frm-item dd {
						font-size: 15px;
						line-height: 2;
						padding: 15px 20px;
						}
					.frm-item dt {}
						.frm-item dt span { line-height: 1.5; }
						.frm-item dt span:after {
							font-size: 13px;
							right: -50px;
							padding: 1px 3px;
							width: 35px;
							}
					.frm-item dd {}
					.frm-item a { margin: 0 3px; }
			/* Common > Btn Area */
			#frm-btnarea { padding: 15px 0; }
				.frm-ba-item { padding: 10px; }
					.frm-bi-ipt {
						font-size: 15px;
						letter-spacing: .5px;
						height: 60px;
						width: 230px;
						-webkit-border-radius: 30px;
						border-radius: 30px;
						}
			/* Common > Parts */
			input { margin-right: 10px; }
			label {}
			textarea { line-height: 1.75; }
			select {}
			.frm_ipt_ctm {
				margin-right: 0;
				padding: 4% 2.5%;
				width: 95%;
				-webkit-border-radius: 10px;
				border-radius: 10px;
				}
			.frm_ipt_ctm.frm_ipt_select {
				margin-right: 5px;
				padding: 10px 5px;
				}
			.frm_ipt_min {}
			.frm_ipt_hlf {}
			.frm_ipt_full {}
			.frm_cell { margin-right: 20px; }
			.frm_cell.mb { margin-bottom: 10px; }
			.frm_cell_mr_hlf { margin-right: 10px; }
			.frm_info { margin-bottom: 10px; }
			.error {}
			/* Common > Scheme */
			.frm_ipt_ctm_zipcode { width: 50% }
			.frm_comment { height: 200px; }
			.frm_txt {}
				.frm_txt p { font-size: 13px; }
			.frm_label {
				height: 25px;
				margin-left: 10px;
				padding: 0 10px;
				-webkit-border-radius: 12.5px;
				border-radius: 12.5px;
				}
				.frm_label span { font-size: 12px; }

	/* Input */
	.ls_form_input {}

	/* Confirm */
	.ls_form_confirm {}
		.ls_form_confirm .frm-inner {
			border: 1px solid rgba(0, 130, 205, .5);
			margin: 0 20px;
			overflow: hidden;
			-webkit-border-radius: 20px;
			border-radius: 20px;
			-webkit-box-shadow: 3px 3px 20px rgba(0, 130, 205, .2);
			box-shadow: 3px 3px 20px rgba(0, 130, 205, .2);
			}
			.ls_form_confirm .frm-inner .frm-item:first-child { border-top: none; }

	/* Thanks */
	.ls_form_thanks {}
		.frm-thanks { padding: 30px; }
			.frm-tks-ttl { font-size: 20px; }
			.frm-tks-body {}
				.frm-tks-body p {
					font-size: 14px;
					letter-spacing: .5px;
					line-height: 1.85;
					margin-left: .5px;
					margin-bottom: 15px;
					}

	/* Inquiry */
	#frm-inquiry {}
		#ls_form_inquiry_input {}
		#ls_form_inquiry_confirm {}
		#ls_form_inquiry_thanks {}

	/* Entry */
	#frm-entry {}
		#ls_form_entry_input {}
		#ls_form_entry_confirm {}
		#ls_form_entry_thanks {}

}

/* ------------------------------------------------ */

@media (orientation: landscape) and (max-width: 750px) {

/* ---------------------------------------------------	

	Layout

--------------------------------------------------- */

}

/* ------------------------------------------------ */

@media (orientation: portrait) and (max-width: 750px) {

/* ---------------------------------------------------	

	Layout

--------------------------------------------------- */

}