/*▼▼　お問い合わせフォーム　▼▼*/
.container.contact01 .inner {
	width:100%;
	max-width:1200px;
	margin:70px auto 50px;
}
.container.contact01 .inner h2 {
	text-align:center;
	font-size:36px;
	color:#ff671c;
	font-weight:700;
	margin:0 0 40px;
}
.container.contact01 .inner h2 span {
	font-size:0.67em;
	display:block;
	color:#ffb621;
	font-weight:900;
}
.container.contact01 .inner h3 {
	width:10em;
	width:fit-content;
	margin:0 auto 35px;
	font-weight:700;
	font-size:32px;
	padding:0 0 0.3em;
	border-bottom:dotted 5px #f2982a;
}
.container.contact01 .inner p {
    text-align: center;
    margin: 0 auto;
}
.container.contact02 .inner {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
	padding:25px 0;
}
.container.contact02 .inner .form_wp {
    width: 100%;
}
.container.contact02 .inner dl {
    width: 100%;
    margin: 0 0 1.5em;
}
.container.contact02 .inner dl.req dt::after {
    content: "必須";
    background-color: #ff3000;
    font-size: 0.65em;
    font-weight: 600;
    color: #fff;
    margin: 0 0 0 0.7em;
    padding: 0 0.6em 0.1em;
    border-radius: 3px;
}
.container.contact02 .inner .form_wp dl dt {
    font-size: 18px;
    font-weight: 500;
    margin: 0 0 0.5em;
}
.container.contact02 .inner .form_wp dl dd input {
    width: 100%;
    border: solid 1px #ccc;
    border-radius: 5px;
    padding: 0.7em 1.2em;
}
.container.contact02 .inner .form_wp dl dd input.zipcode {
    width: 10em;
}
.container.contact02 .inner .form_wp dl dd:has(.mwform-checkbox-field) {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
}
.container.contact02 .inner .form_wp dl dd:has(.mwform-checkbox-field) span {margin: 0;}
.container.contact02 .inner .form_wp dl dd .mwform-checkbox-field label {
    display: flex;
    justify-content: flex-start;
    font-size: 18px;
    align-items: stretch;
    flex-wrap: wrap;
    margin: 1em 2em 1em 1em;
    min-width: 6em;
}
.container.contact02 .inner .form_wp dl dd .mwform-checkbox-field label input.checkbox {
    width: 1em;
    margin: 2px 0.5em 0 0;
    height: auto;
    aspect-ratio: 1;
    transform: scale(1.1);
}

.container.contact02 .inner .form_wp dl dd:has(.mwform-radio-field) {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
}
.container.contact02 .inner .form_wp dl dd:has(.mwform-radio-field) span {margin: 0;}
.container.contact02 .inner .form_wp dl dd .mwform-radio-field label {
    display: flex;
    justify-content: flex-start;
    font-size: 18px;
    align-items: stretch;
    flex-wrap: wrap;
    margin: 1em 2em 1em 1em;
    min-width: 6em;
}
.container.contact02 .inner .form_wp dl dd .mwform-radio-field label input.radio {
    width: 1em;
    margin: 2px 0.5em 0 0;
    height: auto;
    aspect-ratio: 1;
    transform: scale(1.1);
}


.container.contact02 .inner .form_wp dl dd textarea {
    width: 100%;
    border: solid 1px #ccc;
    height: 12em;
}
.container.contact02 .inner .confirm_wp {
    text-align: center;
    background-color: #fff1de;
    line-height: 0;
    padding: 1.5em 1em;
}
.container.contact02 .inner .confirm_wp span label span {
    font-size: 18px;
    font-weight: 500;
	cursor: pointer;
}
.container.contact02 .inner .confirm_wp span label input {
    width: 1em;
    margin: 0 0.5em 0 0;
    height: auto;
    aspect-ratio: 1;
    transform: scale(1.1) translateY(2px);
}
#submit {
    width: 100%;
    max-width: 574px;
    margin: 60px auto;
    padding: 0.8em 0;
    border-radius: 50vw;
    font-size: 22px;
    display: block;
    background-color: #c4c4c4;
    font-weight: 500;
    color: #fff;
    border:none;
    position: relative;
}
#submit::after {
    content: "▲";
    position: absolute;
    right: 1.3em;
    transform: rotate(90deg);
    font-size: 16px;
    margin: auto;
    line-height: 2;
}
#submit.on {background-color: #098d00;}


.mw_wp_form_complete p {
    text-align: center;
    background-color: #fff6ea;
    padding: 35px 50px;
    margin: 0 0 58px;
    text-align: left;
    line-height: 1.8;
}
.mw_wp_form_complete h3 {
	width: 10em;
    width: fit-content;
    margin: 0 auto 35px;
    font-weight: 700;
    font-size: 32px;
    padding: 0 0 0.3em;
    border-bottom: dotted 5px #f2982a;
	text-align:center;
}
.mw_wp_form_complete .btn_home {
	display:block;
	width:80%;
	max-width:550px;
	background-color:#fff;
	text-align:center;
	font-size:22px;
	font-weight:600;
	line-height:1;
	margin:0 auto 50px;
	padding:1em 0 1.2em;
	border-radius:60px;
	position:relative;
	border:solid 3px #229907;
}
.mw_wp_form_complete .btn_home::after {
	content:"▼";
	position:absolute;
	left:18px;
	font-size:0.8em;
	transform:rotateZ(90deg);
	margin:auto 0;
	top:-50%;
	bottom:-50%;
	line-height:0;
	width:1em;
	height:1em;
	color:#229907;
}
#content:has(.mw_wp_form_complete) .container.contact01 h3,
#content:has(.mw_wp_form_complete) .container.contact01 p {display: none;}

.ui-datepicker .ui-datepicker-title select {
    margin: 0 0.2em;
    display: initial;
    padding: 0;
    max-width: 5em;
    font-size: 16px;
}
.container.contact02 .inner .form_wp dl dd input.hasDatepicker {width: 15em;}
.container.contact02 .inner .form_wp dl dd select {
    width: auto;
    min-width: 15em;
}
.reservation .mw_wp_form_complete h3 br {display:none;}


/* メディアクエリ
------------------------------------------------------------------*/
@media print, screen and (max-width:1300px){
	/*▼▼　お問い合わせフォーム　▼▼*/
}
@media print, screen and (max-width:1200px){
	/*▼▼　お問い合わせフォーム　▼▼*/
}
@media print, screen and (max-width:1000px){
	/*▼▼　お問い合わせフォーム　▼▼*/
	.container.contact01 {padding:0 25px;}
}
@media print, screen and (max-width:900px){
	/*▼▼　お問い合わせフォーム　▼▼*/
	.container.contact02 .inner {padding:0 25px;}
}
@media print, screen and (max-width:768px){
	/*▼▼　お問い合わせフォーム　▼▼*/
	.container {overflow:initial;}
	.container.contact01 {padding:0 5vw;}
	.container.contact01 .inner {margin:15vw auto 10vw;}
	.container.contact01 .inner h2 {
		font-size:8vw;
		margin:0 0 1.2em;
	}
	.container.contact01 .inner h3 {text-align:center;}
	.container.contact01 .inner h3 br {display:initial;}
	.container.contact01 .inner p {
		font-size:4.2vw;
		text-align:left;
	}

	.container.contact02 .inner {padding: 0 5vw;}

	.container.contact02 .inner .form_wp dl dd .mwform-checkbox-field label {margin: 1em 1.5em 1em 0.5em;}
	.container.contact02 .inner .form_wp dl dd .mwform-radio-field label {margin: 1em 1.5em 1em 0.5em;}
	.mw_wp_form_complete p {
    padding: 8vw;
    text-align: justify;
    font-size: 4.2vw;
    margin: 0 0 10vw;
	}
	.mw_wp_form_complete .btn_home {
    width: 100%;
    font-size: 5.6vw;
    margin: 0 auto 20vw;
	}
	.estimate .mw_wp_form_complete h3 {
		font-size: 7.5vw;
		text-align: center;
		letter-spacing: -0.05em;
	}

	.reservation .mw_wp_form_complete h3 br {display:none;}
}