@charset "UTF-8";
/* CSS Document */

/* フォーム */
.contact-form {
	width: 100%;
	max-width: 564px;
	margin-right: auto;
	margin-left: auto;
}
.request-form-head {
	margin-bottom: 36px;
}
.contact-form__item:not(:last-of-type) {
	margin-bottom: 35px;
}
.contact-form__label, .smf-item__label__text {
	font-size: calc(18 / 16 * 1rem);
	font-weight: 700;
	border-left: 6px solid #3C66C4;
	margin-bottom: 13px;
  line-height: 1.2;
  padding: 1px 0 2px 6px;
}
.contact-form__required, .sme-badge {
	display: inline-block;
	font-size: calc(14 / 16 * 1rem);
	font-weight: 700;
	color: #fff;
	background-color: #F80202;
	border-radius: 4px;
	padding: 2px 5px;
	margin-left: 14px;
}
.contact-form__controls {
	margin: 0;
}
.contact-form__text, .smf-item__controls {
	font-size: calc(18 / 16 * 1rem);
	font-weight: 500;
}
.contact-form__input, .smf-form .smf-text-control__control, .smf-select-control__control {
	font-size: calc(18 / 16 * 1rem);
	font-weight: 500;
	border: 1px solid #D3D3D3;
	padding: 10px 12px;
	border-radius: 5px;
}
.contact-form__checkbox {
	border: 1px solid #D3D3D3;
}
.contact-form__child:not(:last-of-type) {
	margin-bottom: 20px;
}
.contact-form__child-label {
	font-size: 1rem;
	font-weight: 500;
	margin-bottom: 7px;
}
::placeholder {
	color: #B4B4B4;
}
.contact-form__child-input-wrap--postal-code, .zip-box .smf-item__controls {
	display: flex;
	align-items: baseline;
	gap: 12px;
}
.contact-form__agreement, .agreement-item .smf-checkbox-control__label {
	font-size: 1rem;
	font-weight: 700;
}
.contact-form__agreement-wrap {
	margin: 14px 0;
}
.contact-form__error {
	margin-top: .25rem;
	font-size: calc(14 / 16 * 1rem);
	font-weight: 700;
	color: #F80202;
}
@media screen and (min-width: 769px) {
	.contact-form__agreement-wrap {
		margin: 60px 0 100px;
	}

}
@media screen and (min-width: 921px) {
	.request-form-head {
		margin-bottom: 57px;
	}
	.contact-form__item--pc-flex {
		display: flex;
		align-items: baseline;
		.contact-form__label {
			width: 98px;
		}
	}
	.contact-form__child {
		display: flex;
		align-items: baseline;
	}
	.contact-form__child-label {
		width: 98px;
		min-width: 98px;
	}

}
/* //フォーム */


/* お問い合わせのボタン */
.contact-btn-wrap {
	display: inline-flex;
	gap: 1rem;
	position: relative;
	width: 100%;
	justify-content: center;
}
.btn-submit {
	width: 75%;
	max-width: 368px;
}
.btn-submit,
.smf-button-control__control[data-action="confirm"],
.smf-button-control__control[data-action="complete"] {
  height: 62px;
  border: none;
  cursor: pointer;
  color: #fff;
	background: #FD9506;
  font-size: calc(17 / 16 * 1rem);
  font-weight: 600;
  flex: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50px;
  text-decoration: none;
  transition: opacity .3s;
  padding: 0 2em;
  position: relative;
}
.btn-submit::after,
.smf-button-control__control[data-action="confirm"]::after,
.smf-button-control__control[data-action="complete"]::after {
  content: "";
  position: absolute;
  width: 1.5em;
  height: 1.5em;
  right: 1em;
  background: url(../img/common/btn-white-orange.svg) no-repeat center / contain;
}
.btn-back, .smf-button-control__control[data-action="back"] {
	width: 20%;
  max-width: 120px;
  height: 62px;
  border: none;
  cursor: pointer;
  color: #fff;
	background: #9c9c9c;
  font-size: calc(17 / 16 * 1rem);
  font-weight: 600;
  flex: 1;
  justify-content: center;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  border-radius: 50px;
  text-decoration: none;
  transition: opacity .3s;
  padding: 0 .5em;
  position: relative;
}
.btn-submit:active, .smf-button-control__control:active, .smf-action .smf-button-control__control[disabled] {
  color: #fff;
}
@media (hover: hover) and (pointer: fine) {
	.btn-submit:hover, .smf-button-control__control:hover,
	.btn-back:hover, .smf-button-control__control[data-action="back"]:hover {
	  opacity: 0.85;
	}
}
@media screen and (min-width: 769px) {
	
}
@media screen and (min-width: 921px) {
	.btn-submit, .btn-back, .smf-action .smf-button-control__control {
	  font-size: calc(22 / 16 * 1rem);
	}
	.contact-btn-wrap::before {
		content: '';
		position: absolute;
		right: -144px;
		bottom: -27px;
		width: 169px;
		height: 172px;
		transform: rotate(-354deg);
		background: url('../img/contact/muzumuzu.png') no-repeat center center/contain;
		pointer-events: none;
	}

}
/* //お問い合わせのボタン */

/* snow monkey forms */
[data-name="subject"] .smf-select-control {
	width: 100%;
	.smf-select-control__control {
		width: 100%;
	}
}
.smf-form--letter .smf-item.contact-form__item {
	padding: 0;
}
.smf-form--letter .smf-item.agreement-item {
	padding: 0;
	margin: 14px 0;
}
.smf-action {
  display: flex;
  align-items: center;
  justify-content: center;
}
.smf-button-control__control[data-action="confirm"],
.smf-button-control__control[data-action="complete"] {
	width: 368px;
	max-width: 100%;
}
.smf-button-control__control[data-action="back"] {/* 戻るボタン */
  width: 150px;
  max-width: 100%;
}
.smf-button-control {
	max-width: 100%;
}
.snow-monkey-form[data-screen="confirm"] .smf-button-control:nth-of-type(1) {
  max-width: 30%;
}
.snow-monkey-form[data-screen="confirm"] .smf-button-control:nth-of-type(2) {
  max-width: 60%;
}
.smf-action {
	display: inline-flex;
	gap: 1rem;
	position: relative;
	width: 100%;
	justify-content: center;
	padding-bottom: 169px;
}
.smf-action::after {
	content: '';
  position: absolute;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 169px;
  transform: rotate(-354deg);
  background: url(../img/contact/muzumuzu.png) no-repeat center center / 126px 129px;
  pointer-events: none;
}
.smf-action .smf-button-control__control {
	position: relative;
	z-index: 10;
}
.form-note {
	margin-top: 0;
	font-weight: 700;
	font-size: .875rem;
}


.privacy-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
}

.privacy-wrap .smf-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    margin-left: 1em;
}

.privacy-wrap .smf-checkboxes-control {
    margin-top: 12px;
}



.sme-badge {
    padding: 3px 5px;
		line-height: 1;

}
.privacy-wrap input[type="checkbox"] {
    width: 20px;
    height: 20px;
    border: 1px solid #D3D3D3;
    margin: 0;
}

.privacy-consent-note {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: -0.02em;
}

.privacy-consent-link {
    color: #3C66C4;
    text-decoration: underline;
    transition: opacity 0.3s;
}

@media (hover: hover) and (pointer: fine) {
    .privacy-consent-link:hover {
        opacity: 0.85;
    }
}


@media screen and (min-width: 769px) {
	.smf-form--letter .smf-item.agreement-item {
		margin: 60px 0 100px;
	}
}
@media screen and (min-width: 921px) {
	.smf-form--letter {
		.input-sp-w100 .smf-text-control__control {
			width: auto;
		}
	}
	.smf-action {
		padding-bottom: 0;
	}
	.smf-action::after {
		right: -144px;
    bottom: -27px;
    width: 169px;
    height: 172px;
	  transform: rotate(-354deg);
	  background-size: contain;
	}
	.snow-monkey-form[data-screen="confirm"] .smf-action::after {
		right: -180px;
	}
}

/* //snow monkey forms */

body:has(.snow-monkey-form[data-screen="confirm"]) .contact-description,
body:has(.snow-monkey-form[data-screen="complete"]) .contact-description {
	display: none;
}
.complete-btn-wrap {
	margin-top: 3rem;
}