
/* contact
----------------------------------------------- */
.resilk-contact {
    padding: 40px 0;
}

.resilk-contact__ttl {
    color: #662200;
    line-height: 1.1;
    margin-bottom: 20px;
    text-align: center;
}

.resilk-contact__ttl .jp {
    font-size: 15px;
    font-weight: 700;
}

.resilk-contact__ttl .en {
    font-size: 45px;
    letter-spacing: .14em;
}

.resilk-contact-caution {
    background: #662200;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
    margin-bottom: 25px;
}

.resilk-contact-caution__ttl {
    background: #662200;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    padding: 11.5px 0;
    text-align: center;
}

.resilk-contact-caution__txt {
    background: #fff;
    border: solid 1px #662200;
    border-width: 0 1px 1px 1px;
    color: #662200;
    font-size: 14px;
    font-weight: 500;
    line-height: calc(23/14);
    padding: 9px 12px;
}


.remaining {
	position: fixed;
	bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    max-width: 375px;
	background: #662200;
    margin: auto;
	text-align: center;
	opacity: 0;
	visibility: hidden;
	z-index: -1;
	transition: all .2s;
}

.remaining.active {
	opacity: 1;
	visibility: visible;
	z-index: 9999;
}

.remaining .read {
    display: none;
	padding: 15px 20px;
	line-height: 1.8;
}

.remaining .num {
	color: #fff;
    font-size: 18px;
    padding: 10px 20px 11.5px;
}

.resilk-contact-steps {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.resilk-contact-steps__step {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    height: 60px;
    background: #a7a7a7;
    color: #fff;
    font: 700 18px "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
    line-height: 1;
}

.resilk-contact-steps__step .num {
    font-size: 14px;
    font: 500 14px "Noto Serif JP", serif;
}

.resilk-contact-steps__step:nth-child(1),
.resilk-contact-steps__step:nth-child(2) {
    flex: 0 0 calc((100% / 3) - 1.6px);
    clip-path: polygon(0 0, calc(100% - 17px) 0, 100% 50%, calc(100% - 17px) 100%, 0 100%);
    padding-right: 10px;
}

.resilk-contact-steps__step:nth-child(3) {
    flex: 5;
    flex: 0 0 calc((100% / 3) - 6.6px);
}

#mailformpro .resilk-contact-steps__step:nth-child(1),
#mfp_phase_confirm .resilk-contact-steps__step:nth-child(2) {
    background-color: #e0c068;
}

/* form
----------------------------------------------- */
div#mfp_hidden {
    overflow: hidden;
    width: 1px;
    height: 1px;
    padding: 0px;
    margin: 0px;
}
  
#mfp_hidden {
    visibility: hidden;
}
  
#mfp_loading,
#mfp_loading_screen,
#mfp_overlay_background,
#mfp_overlay {
    display: none !important;
}

#mfp_error,
#mfp_warning {
    display: none;
    color: #cc1a1d;
    font: 500 13px "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
    margin-bottom: 10px;
}


.efo-form input[type=text],
.efo-form input[type=search],
.efo-form input[type=tel],
.efo-form input[type=number],
.efo-form input[type=url],
.efo-form input[type=email],
.efo-form input[type=password],
.efo-form textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	border: solid 1px #ccc;
	border-radius: 0;
	font: 500 15px "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
	line-height: 1.4;
	padding: 12.5px 15px;
}

.efo-form textarea {
    display: block;
	width: 100% !important;
	height: 176px !important;
}

::-webkit-input-placeholder, /* WebKit, Blink, Edge */
:-ms-input-placeholder, /* Internet Explorer 10-11 */
::placeholder { /* Others */
	color: #a7a7a7;
	font-size: 15px;
}

.efo-form input[type="radio"],
.efo-form input[type="checkbox"] {
    display: none;
}

.efo-form input[type="radio"] ~ label {
    color: #662200;
    font: 500 15px "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
    letter-spacing: .04em;
    cursor: pointer;
}

.efo-form input[type="radio"] ~ label::before {
    content: '';
    display: inline-block;
    width: 14px;
    height: 14px;
    border: solid 1px #ccc;
    border-radius: 50%;
    box-shadow: inset 0 0 0 3px #fff;
    margin-right: 7px;
    vertical-align: -2px;
}

.efo-form input[type="radio"]:checked ~ label::before {
    background-color: #662200;
}

.efo-form input[type="checkbox"] ~ label {
    position: relative;
    padding-left: 22.5px;
}
.efo-form input[type="checkbox"] ~ label::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 15px;
    height: 15px;
    background: #fff;
    border: solid 1px #ccc;
    border-radius: 2.5px;
}

.efo-form input[type="checkbox"] ~ label::after {
    content: '';
    position: absolute;
    left: 5px;
    top: 1px;
    display: block;
    width: 5px;
    height: 10px;
    border: solid 2px #662200;
    border-width: 0 2px 2px 0;
    opacity: 0;
    transform: rotate(45deg);
}

.efo-form input[type="checkbox"]:checked ~ label::after {
    opacity: 1;
}

.efo-form .radio-list {
    display: flex;
    flex-direction: column;
    gap: 5px;
    margin-bottom: 6px;
}

.efo-form .req-label {
    display: inline-block;
    background: #cc1a1d;
    color: #fff;
    font: 700 13px "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
    line-height: 1;
    padding: 2px 8px;
    vertical-align: 2px;
}

.efo-form .mfp_err {
    display: none;
    color: #cc1a1d;
    font: 500 13px "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
    margin-top: 5px;
}

.efo-form .input-list {
    margin-top: 22px;
}

.efo-form .input-name {
	position: relative;
    color: #662200;
    font: 700 16px "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
    line-height: 1.3125;
}

.efo-form .input-name::after {
    content: '';
    position: absolute;
    right: 5px;
    top: 3px;
    display: block;
    width: 6px;
    height: 12px;
    border: solid 2px #662200;
    border-width: 0 2px 2px 0;
    opacity: 0;
    transform: rotate(45deg);
}

.efo-form .input-name.ok::after {
	opacity: 1;
}

.efo-form .input-name .req-label {
    margin-left: 7px;
}

.efo-form .input-cont {
    margin: 9px 0 12px;
}

.efo-form .agree {
    text-align: center;
}

.efo-form .agree .req-label {
    margin-right: 8px;
    vertical-align: -1px;
}

.efo-form .agree label {
    color: #662200;
    font: 500 15px "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
    line-height: 1.4;
    cursor: pointer;
}

.efo-form .agree label a {
    text-decoration: underline;
    text-underline-offset: 2px;
}


.efo-form input[type=submit],
.efo-form button[type=submit],
button#mfp_button_send {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: block;
	width: 242.5px;
	max-width: 100%;
	font: 700 17px "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
	text-shadow: none;
	padding: 12px 10px;
	transition: all .2s;
	background: #662200;
	color: #fff;
	margin: 25px auto 10px;
}

input[type=submit].disabled,
button[type=submit].disabled {
	color: #fff !important;
	background: #ccc !important;
}


.efo-form input[type=reset],
.efo-form button[type=reset],
button#mfp_button_cancel {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: block;
    background: transparent;
	border: none;
	border-bottom: solid 1px #662200;
	border-radius: 0;
	box-shadow: none !important;
	color: #662200;
    font: 500 15px "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
    line-height: 1;
    margin: auto;
	padding: 0;
	transition: all .2s;
    text-align: center;
	text-shadow: none !important;
	white-space: nowrap;
}

#mfp_phase_confirm h4 {
	color: #662200;
    font: 700 18px "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
    margin: 15px 0;
    text-align: center;
}

#mfp_confirm_table,
#mfp_confirm_table tr,
#mfp_confirm_table th,
#mfp_confirm_table td {
    display: block;
}

#mfp_confirm_table th {
    color: #662200;
    font: 700 16px "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
    line-height: 1.3125;
}

#mfp_confirm_table td {
    color: #52270b;
    font: 500 15px "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
	line-height: 1.4;
    margin: 9px 0 12px;
}

.resilk-thanks {
	background: url(../img/contact_bg.jpg) center / cover no-repeat;
    min-height: 100vh;
	padding: 80px 0 0;
}


/* thanks
----------------------------------------------- */
.resilk-thanks__ttl {
    position: relative;
	margin-bottom: 80px;
	padding-bottom: 5px;
	text-align: center;
}

.resilk-thanks__ttl::before {
    content: '';
    position: absolute;
    bottom: -40%;
    left: 0;
    right: 0;
    margin: auto;
    width: 30px;
    height: 1px;
    background-color: rgba(17, 17, 17, 0.2);
}

.resilk-thanks__ttl .en {
	font-size: 16px;
    display: block;
    color: #a5955f;
    margin-bottom: 1em;
}

.resilk-thanks__ttl .jp {
	font-size: 26px;
    display: block;
    line-height: 1.4;
    color: #101010;
}

.resilk-thanks__txt {
	color: #666;
	font-size: 16px;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP", sans-serif;
	line-height: 1.8;
    padding-bottom: 20px;
}

.resilk-thanks__txt .return-btn {
	text-align: center;
	text-decoration: underline;
}