/*
* form (common)
*/

.form {
	max-width: 940px;
	margin: auto;
	line-height: normal;
	font-family: inherit;
}

.form input,
.form select,
.form textarea,
.form button {
	font-family: inherit;
}

.form__unit {
	display: flex;
	align-items: center;
	margin-top: 30px;
}

.form__label {
	padding-right: 1.5em;
	width: 22%;
	font-size: 20px;
	font-weight: var(--weight-regular);
	text-align: right;
}

.form__note {
	display: block;
	padding-left: 1.3em;
	font-size: 14px;
	text-align: left;
}

.form__value {
	width: 78%;
}

.form__value--multiple {
	display: flex;
	flex-wrap: wrap;
	gap: 16px 20px;
}

.form__value--multiple br {
	display: none;
}

.form__box {
	font-size: 18px;
}

.form__box span {
	display: inline-block;
}

.form__input {
	padding: 20px;
	width: 100%;
	font-size: 20px;
	border: none;
	border-radius: 20px;
	font-weight: var(--weight-regular);
}

select.form__input {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23323B48' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 20px center;
	padding-right: 50px;
	cursor: pointer;
	color: var(--color-font);
}

.form__check {
	margin-right: .3em;
	height: 1.2em;
	width: 1.2em;
	background-color: var(--color-white);
	border-radius: 2px;
	appearance: none;
}

.form__check:checked {
	background-color: var(--color-primary);
}

.form__check:checked::before {
	content: "\E876";
	display: grid;
	place-content: center;
	color: var(--color-white);
	height: 100%;
	font-size: 1em;
	font-family: "Material Icons";
}

.form__check:focus-visible {
	outline: 2px solid var(--color-primary);
	outline-offset: 2px;
}

.form__check2 {
	margin-right: .3em;
	height: 1.2em;
	width: 1.2em;
	background-color: var(--color-white);
	border-radius: 2px;
	appearance: none;
}

.form__check2:checked {
	background-color: var(--color-primary);
}

.form__check2:checked::before {
	content: "\E876";
	display: grid;
	place-content: center;
	color: var(--color-white);
	height: 100%;
	font-size: 1em;
	font-family: "Material Icons";
}

.form__check2:focus-visible {
	outline: 2px solid var(--color-primary);
	outline-offset: 2px;
}

.form__textarea {
	max-width: 600px;
	width: 100%;
	height: 180px;
	padding: 20px;
	font-size: 20px;
	border: none;
	border-radius: 20px;
	font-weight: var(--weight-regular);
}

.form__submit {
	display: block;
	background-color: var(--color-primary);
	color: var(--color-white);
	margin: 60px auto 0;
	width: 400px;
	height: 70px;
	font-size: 20px;
	border: none;
	border-radius: 40px;
	cursor: pointer;
}

.form__submit:hover {
	opacity: var(--opacity-hover);
}

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

	.form__unit {
		margin-top: 15px;
		display: block;
	}

	.form__label {
		display: block;
		width: 100%;
		margin-bottom: 8px;
		font-size: 15px;
		text-align: left;
	}

	.form__value {
		width: 100%;
	}

	.form__input {
		border-radius: 10px;
		padding: 16px;
		font-size: 16px;
	}

	.form__textarea {
		font-size: 16px;
	}

	.form__note {
		display: inline-block;
	}

	.form__value--multiple {
		gap: 10px 20px;
		margin-top: 12px;
		margin-bottom: 40px;
	}

	.form__box {
		font-size: 15px;
	}

	.form__submit {
		margin: 45px auto 0;
		width: 300px;
		height: 50px;
		font-size: 16px;
	}

}
