@charset "utf-8";
/* ============================================================ */
/*  contact */
/* ============================================================ */
body.contact .__ico-bg {
	background-color: var(--blue);
	border-radius: 50%;
	width: 80px;
	height: 80px;
	display: grid;
	place-content: center;
}

/* c-contact
------------------------------------------------------------ */
.c-contact-tel {
	margin-bottom: 160px;
}

.c-contact-tel .l-contents__inner {
	position: relative;
}

.c-contact-tel__inner {
	background-color: var(--blue2);
	border-radius: 20px 20px 20px 0;
	padding: 46px 63px 40px;
	width: calc(100% - 100px);
	margin-left: auto;
	position: relative;
}

.c-contact-tel__inner::before {
	content: "";
	background-color: var(--blue2);
	border-radius: 20px 0 0 20px;
	position: absolute;
	left: 0;
	bottom: 0;
	translate: -100% 0;
	width: 100px;
	height: 100%;
}

.c-contact-tel__inner .__white-bg {
	position: absolute;
	left: 0;
	top: 0;
	translate: -100% 0;
	width: 100px;
	height: 100px;
	background-color: var(--white);
	border-bottom-right-radius: 20px;
}

.c-contact-tel .e-h2 .__en::after {
	display: none;
}

.c-contact-tel .__tel {
	color: var(--blue);
	font-size: 6.4rem;
	letter-spacing: 0;
}
#autozip{
	opacity:0;
	visibility:hidden;
}

/* c-contact-form
------------------------------------------------------------ */
.c-contact-form {
	margin-bottom: 200px;
}

.c-contact-form__ttl {
	column-gap: 16px;
	margin-bottom: 56px;
}

.c-contact-form__ttl .__txt {
	column-gap: 16px;
	font-size: 3.2rem;
}

.c-contact-form__ttl .__txt .__tel {
	color: var(--black);
}

.c-contact-form__flow__list {
	display: flex;
	align-items: center;
	justify-content: space-between;
	column-gap: 24px;
}

.c-contact-form__flow__item {
	background-color: var(--blue3);
	font-size: 1.8rem;
	font-weight: 700;
	flex: 1;
	text-align: center;
	padding: 4px 0;
}

.c-contact-form__flow__item._current_ {
	background-color: var(--blue);
	color: var(--white);
}

.c-contact-form__flow__item._arrow_ {
	background-color: var(--gray);
	flex: none;
	width: 6px;
	height: 8px;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
}

/* c-contact-form */
.c-contact-form__list {

}

.c-contact-form__dt {
	margin-bottom: 20px;
	display: flex;
	align-items: center;
	column-gap: 8px;
}

.c-contact-form__dd {
	margin-bottom: 50px;
}

.c-contact-form__input {
	border: solid 1px var(--line2);
	font-size: 1.8rem;
	width: 100%;
	padding: 16px 20px 16px;
}

.c-contact-form__input._middle_ {
	max-width: 480px;
}

.c-contact-form__input._short_ {
	max-width: 320px;
}

/* radio */
.c-contact-form__radio {
	display: flex;
	column-gap: 48px;
}
.c-contact-form__radio input[type="radio"] {
	appearance: none;
}

.c-contact-form__radio label {
	content: "";
	position: absolute;
	position: relative;
	padding-left: 24px;
}

.c-contact-form__radio label::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	translate: 0 -50%;
	width: 20px;
	height: 20px;
	background-color: var(--white);
	border: solid 1px var(--line2);
	border-radius: 50%;
}

.c-contact-form__radio label::after {
	content: "";
	position: absolute;
	left: 4px;
	top: 50%;
	translate: 0 -50%;
	width: 14px;
	height: 14px;
	background-color: var(--blue);
	border-radius: 50%;
	opacity: 0;
}

.c-contact-form__radio .wpcf7-list-item:has(input:checked) label::after {
	opacity: 1;
}

/* checkbox */
.c-contact-form__checkbox {
	appearance: none;
}
label:has(.c-contact-form__checkbox) {
	position: relative;
	padding-left: 24px;
	display: block;
}

label:has(.c-contact-form__checkbox)::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.4em;
	width: 20px;
	height: 20px;
	border-radius: 2px;
	border: solid 1px var(--line2);
	background: no-repeat center / contain;
	background-color: var(--white);
}

label:has(.c-contact-form__checkbox:checked)::before {
	border-color: transparent;
	background-image: url(../../img/common/ico_checked.svg);
}

label:has(.c-contact-form__checkbox) .__txt {
	font-size: 1.8rem;
	font-weight: 700;
}

.c-contact-form__btn-wrap {
	display: grid;
	place-content: center;
}

.c-contact-form__btn-wrap .e-btn {
	min-width: 240px;
}

/* wp
------------------------------------------------------------ */
.wpcf7-list-item {
	margin: 0;
}
.wpcf7-form-control.wpcf7-submit.has-spinner,
.wpcf7-form-control.wpcf7-previous {
	position: absolute;
	inset: 0;
	opacity: 0;
	z-index: 100;
	cursor: pointer;
}

.e-btn:has(.wpcf7-form-control.wpcf7-previous:hover) {
	opacity: 0.5;
}

.wpcf7-spinner {
	position: absolute;
	inset: 0;
	opacity: 0;
}

.wpcf7-response-output:empty {
	margin: 0 !important;
	border: none !important;
}

/* c-contact confirm
------------------------------------------------------------ */
.c-contact-form._confirm_ .c-contact-form__ttl {
	margin-bottom: 64px;
}

.c-contact-form._confirm_ .c-contact-form__list {
	margin-bottom: 72px;
}

.c-contact-form._confirm_ .c-contact-form__dt {
	margin-bottom: 10px;
}

.c-contact-form._confirm_ .c-contact-form__dd {
	margin-bottom: 40px;
}
/* c-contact
------------------------------------------------------------ */