@charset "UTF-8";

/* ボタンカラー:全体カラー統一後に設定をまとめる */
:root {
	--green1: #0ba360;
	--green1-l: #3cba92;
}

.a__for_contact {
	text-decoration: underline;
	color: var(--main-color-1);

	&:hover {
		text-decoration: none;
	}
}

.contact-box {
	.p__contact_privacy {
		margin-bottom: 40px;
	}

	p.message {
		text-align: center;
		font-size: 2rem;
	}

	form:not(#entryForm):not(#js-module_form) label {
		margin-bottom: initial;
	}

	form {
		.btn-primary {
			background-color: var(--green1);
			border-color: var(--green1);
		}

		.btn-primary:hover,
		.btn-primary:focus {
			background-color: var(--green1-l);
			border-color: var(--green1-l);
		}

		th {
			font-weight: 700;
		}

		.acms-form-group.acms-form-group__name {
			display: grid;
			grid-template-columns: 1fr 1fr;
			width: 100%;
			column-gap: 10px;

			.acms-form-width-half {
				width: 100%;
			}
		}

		.table.contact-form tr {
			th {
				background-color: transparent;
				display: flex;
				align-items: center;
				justify-content: space-between;
				width: 100%;
			}

			th.contact-form-label.contact-form-label__inquiry-type {
				align-items: start;
			}
		}

		.acms-admin-form-checkbox {
			margin-right: 0;
			margin-bottom: 7px;
		}

		.acms-form-group.acms-form-group__name::before,
		.acms-form-group.acms-form-group__name::after {
			display: initial;
			content: initial;
		}

		.label-required {
			border-radius: .45rem;
			float: initial;
		}
	}

	td.contact-form-control.contact-form-control_checkbox {
		line-height: 2;
	}

	.form-confirm th {
		font-weight: 700;
	}

	.form-btn-box {
		margin: 5rem 0 0;
		text-align: center;
		display: flex;
		justify-content: center;
	}

	input#btnToInput,
	.btn {
		height: 5.5rem;
		border-radius: 99px;
	}
}

form:not(#entryForm):not(#js-module_form) input[type='email'],
form:not(#entryForm):not(#js-module_form) input[type='number'],
form:not(#entryForm):not(#js-module_form) input[type='password'],
form:not(#entryForm):not(#js-module_form) input[type='search'],
form:not(#entryForm):not(#js-module_form) input[type='tel'],
form:not(#entryForm):not(#js-module_form) input[type='text'],
form:not(#entryForm):not(#js-module_form) input[type='url'],
form:not(#entryForm):not(#js-module_form) select,
form:not(#entryForm):not(#js-module_form) textarea {
	border-radius: .8rem;
	background-color: #f6f6f6;
}

.contact-form-control .acms-margin-right-mini {
	margin-right: 0px !important;
}

.span_small_inquiry-type {
	font-size: 13px;
	font-weight: 400;
}

.sec-error-consulting,
.sec-thanks-consulting {
	text-align: center;
	padding: 6rem 3rem 0;

	.message-group {
		margin-bottom: 40px;
	}
}

@media screen and (max-width:959px) {
	.contact-box {
		.form-btn-box.clearfix.form-btn-box_step_confirm {
			column-gap: 25px;
		}

		p.message {
			font-size: 1.8rem;
		}

		form {

			input#btnToInput,
			.btn {
				height: 5rem;
			}
		}
	}
}

@media screen and (max-width:767px) {
	.contact-box {
		.br-hide-max767 {
			display: none;
		}

		.span_small_inquiry-type {
			font-size: 12px;
			margin-left: 10px;
			margin-right: 10px;
		}

		.p__contact_privacy {
			font-size: 15px;
		}


		& form {
			& .table.contact-form tr {
				th {
					width: 100%;
					justify-content: initial;
				}

				th.contact-form-label.contact-form-label__inquiry-type {
					align-items: center;
				}
			}

			.label-required {
				margin-left: 15px;
			}

			.acms-admin-form-checkbox {
				margin-bottom: 7px;
			}
		}
	}
}

@media screen and (max-width:480px) {
	.contact-box {
		& form {
			.acms-form-group.acms-form-group__name {
				grid-template-columns: 1fr;
				column-gap: 0px;
				row-gap: 10px;
			}

			.acms-admin-form-checkbox {
				font-size: 15px;
			}
		}

		.form-btn-box.clearfix.form-btn-box_step_confirm {
			column-gap: 20px;
		}

		.form-btn-box_step_confirm {
			.btn-lg {
				min-width: 20rem;
			}
		}

		p.message {
			font-size: 1.6rem;
		}
	}
}

@media screen and (max-width: 350px) {
	.contact-box {
		.form-btn-box_step_confirm {
			.btn-lg {
				min-width: 16rem;
			}
		}
	}
}