@charset "UTF-8";

.contact {
}

.contact_send {
	margin-bottom: var(--sp24);
	font-weight: 600;
	font-size: var(--fz18);
}

.contact_text {
}

.contact_text em {
	color: var(--color-required);
}

.form {
	margin-top: var(--sp64);
}

.form_list {
	display: grid;
	grid-template-columns: 220fr 660fr;
	gap: var(--sp16) 0;
}

.form_item {
	display: grid;
	grid-column: 1/3;
	grid-template-columns: subgrid;
}

.form_item > dt {
	padding-top: var(--sp4);
}

.form_item > dt.-center {
	align-content: center;
	padding-top: 0;
}

.form_item > dt.-required {
}

.form_item > dt.-required::after {
	content: "※";
	color: var(--color-required);
}

.form_item > dd {
}

.form_group {
	display: grid;
}

.form_group label {
	display: flex;
	align-items: center;
	gap: var(--sp12);
	cursor: pointer;
}

.form_group label > input {
	margin-right: 0;
}

.form_row {
}

.form_row + .form_row {
	margin-top: var(--sp12);
}

.form_zip {
	display: flex;
	align-items: center;
	gap: var(--sp12);
	max-width: calc(260 * var(--u));
}

.form_zip::before {
	content: "〒";
	flex-shrink: 0;
}

.form_policy {
	margin-top: var(--sp48);
	padding-left: calc(220 * var(--u));
	text-align: center;
}

.form_policy_check {
}

.form_policy_check .mwform-checkbox-field-text {
	display: none;
}

.form_policy_check input {
	vertical-align: -0.2em;
}

.form_btn {
	margin-top: var(--sp24);
	padding-left: calc(220 * var(--u));
	text-align: center;
}

.form_btn > button {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: calc(360 * var(--u));
	height: calc(64 * var(--u));
	border: 1px solid var(--color-base);
	border-radius: calc(32 * var(--u));
	background: var(--color-base);
	color: var(--color-white);
	font-weight: 600;
	font-size: var(--fz18);
	cursor: pointer;
	transition: background var(--duration-base) var(--ease-out),
	color var(--duration-base) var(--ease-out);
}

.form_btn > button:hover {
	background: transparent;
	color: var(--color-base);
}

@media screen and (max-width: 767.98px) {
	.form {
		margin-top: var(--sp40);
	}

	.form_list {
		grid-template-columns: 1fr;
		gap: var(--sp20);
	}

	.form_item {
		grid-column: auto;
		grid-template-columns: 1fr;
		gap: var(--sp8);
	}

	.form_item > dt {
		padding-top: 0;
		font-weight: 600;
	}

	.form_zip {
		max-width: calc(200 * var(--u));
	}

	.form_policy {
		margin-top: var(--sp24);
		padding-left: 0;
	}

	.form_policy_check {
		position: relative;
		padding-left: var(--sp48);
		font-size: var(--fz14);
		text-align: left;
	}

	.mwform-checkbox-field {
		position: absolute;
		top: 50%;
		left: 0;
		line-height: 1;
		transform: translateY(-50%);
	}

	.mwform-checkbox-field > label {
		display: inline-flex;
		padding: var(--sp10);
		border-radius: var(--radius);
		background: var(--color-hover);
		cursor: pointer;
	}

	.mwform-checkbox-field > label > input {
		margin: 0 !important;
	}

	.form_btn {
		margin-top: var(--sp32);
		padding-left: 0;
	}

	.form_btn > button {
		width: 100%;
		max-width: calc(300 * var(--u));
		font-size: var(--fz16);
	}
}
