@charset "utf-8";

/* common */
#header_wrap{
	position:static;
	padding:20px 30px;
	background:#8F7E5A;
}
#logo{margin:auto;}
.copyright{
	padding:35px 30px 37px;
	text-align:center;
}

#content_wrap{
	padding-top:80px;
	background:#ECE9E2;
}
.content_area{max-width:960px;}
.page_title{
	position:static;
	margin-bottom:30px;
	color:#333;
	font-size:3rem;
	letter-spacing:1.5px;
	line-height:4.4rem;
	text-align:center;
}
.bg_box{
	padding:40px 60px 45px;
	margin-top:50px;
	background:#fff;
}
.form_step{
	display:flex;
	justify-content:center;
	position:relative;
	padding:0;
	margin:50px 0 65px;
}
.form_step::after{
	content:'';
	position:absolute;
	right:0;
	bottom:0;
	left:0;
	width:205px;
	height:1px;
	margin:auto;
	background:#E3E0DB;
}
.form_step li{
	position:relative;
	list-style:none;
	padding-bottom:25px;
	margin:0 30px;
	font-size:2rem;
	letter-spacing:2px;
	line-height:2.9rem;
}
.form_step li::after{
	content:'';
	position:absolute;
	z-index:1;
	right:0;
	bottom:-5px;
	left:0;
	width:11px;
	height:11px;
	margin:auto;
	background:#E3E0DB;
	border-radius:50%;
}
.form_step li.on::after{
	bottom:-10px;
	width:21px;
	height:21px;
	background:#A5977C;
}

.required{color:#f00;}
th .required{
	display:block;
	margin-top:2px;
	font-size:1.5rem;
	letter-spacing:1.5px;
	line-height:2.1rem;
}
.wpcf7-form h3{
	padding:0;
	margin-top:60px;
	font-size:2.2rem;
	letter-spacing:2.2px;
	line-height:3.2rem;
}
.wpcf7-form h3::before{display:none;}
.wpcf7-form table{border-left:none;}
.wpcf7-form th, .wpcf7-form td{
	padding:27px 0;
	border-right:none;
}
.wpcf7-form th{
	width:280px;
	padding-right:20px;
	background:none;
}
.wpcf7-form td{
	font-size:1.5rem;
	letter-spacing:1.5px;
	line-height:2.2rem;
}
.wpcf7-form td p{
	margin-bottom:10px;
	font-size:1.5rem;
	letter-spacing:1.5px;
	line-height:2.2rem;
}
.wpcf7-form td br{display:none;}

#form_btn{
	display:flex;
	align-items:center;
	justify-content:center;
	margin:30px auto 0;
}
#form_btn1{
	display:block;
	width:240px;
	padding:17px 20px;
	background:#49433F;
	border-radius:4px;
	color:#fff !important;
	font-size:1.5rem;
	letter-spacing:1.5px;
	line-height:2.1rem;
	text-align:center;
	text-decoration:none !important;
	cursor:pointer;
	transition:background 0.3s;
}
#form_btn1:hover{background:#625952;}
#form_btn2{
	display:block;
	width:240px;
	padding:17px 20px;
	margin-right:20px;
	background:#D5D5D5;
	border-radius:4px;
	color:#49433F !important;
	font-size:1.5rem;
	letter-spacing:1.5px;
	line-height:2.1rem;
	text-align:center;
	text-decoration:none !important;
	cursor:pointer;
	transition:background 0.3s;
}
#form_btn2:hover{background:#E2E2E2;}
.wpcf7-spinner{display:none !important;}


/* index / input */
.bg_box h2{
	padding:0;
	margin:0 0 18px;
	font-size:2.4rem;
	letter-spacing:2.4px;
	line-height:3.5rem;
}
.bg_box h2::after, .bg_box h2 span::before, .bg_box h2 span::after{display:none;}
.bg_box p[style="text-align: center;"]{
	margin-bottom:12px;
	font-size:1.5rem;
	letter-spacing:1.5px;
	line-height:2.1rem;
}
.bg_box [href^="tel:"]{
	position:relative;
	top:2px;
	margin-left:10px;
	font-size:2.6rem;
	font-weight:500;
	letter-spacing:0;
}

::-webkit-input-placeholder{color:#ccc;}
::-moz-placeholder{color:#ccc;opacity:1;}
:-ms-input-placeholder{color:#ccc;}
input:focus::-webkit-input-placeholder{color:#ccc;}
input:focus:-moz-placeholder{color:#ccc;}
input:focus::-moz-placeholder{color:#ccc;}
:placeholder-shown{background:#F1F1F1 !important;}

.wpcf7-form-control-wrap{
	display:block;
	margin:5px 0;
}
input.wpcf7-text, input.wpcf7-number{
	width:100%;
	padding:13px 20px 14px;
	border:1px solid #E0E0E0;
	border-radius:4px;
	font-size:1.5rem;
	letter-spacing:1.5px;
	line-height:2.1rem;
}
.wpcf7-radio{
	display:flex;
	flex-wrap:wrap;
}
.wpcf7-list-item{
	width:auto;
	height:auto;
	padding:0;
	margin:0 40px 0 0 !important;
	background:none !important;
	border-radius:0;
	color:#212121 !important;
	font-weight:normal;
	letter-spacing:1.5px;
}
.wpcf7-list-item label{
	display:block;
	cursor:pointer;
}
select.wpcf7-select{
	display:block;
	max-width:260px;
	width:100%;
	padding:13px 50px 14px 20px;
	background:url(/img/common/arrow_d_black.svg) no-repeat center right 20px;
	border:1px solid #E0E0E0;
	border-radius:4px;
	color:#212121 !important;
	font-size:1.5rem;
	letter-spacing:1.5px;
	line-height:2.1rem;
	cursor:pointer;
}
.postcode_box{
	display:flex;
	align-items:center;
	margin:12px 0;
}
#postcode{max-width:280px;}
textarea{
	display:block;
	width:100%;
	min-height:150px;
	padding:13px 20px 14px;
	border:1px solid #E0E0E0;
	font-size:1.5rem;
	letter-spacing:1.5px;
	line-height:2.1rem;
	resize:vertical;
	overflow:auto;
}
#email_confirm{
	font-size:2.2rem;
	letter-spacing:2.2px;
	line-height:3.2rem;
}
.wpcf7-not-valid-tip{
	margin-top:5px;
	color:#f00;
}

.doi{
	margin:25px 0 30px;
	background:#F1F1F1;
	border-radius:4px;
}
.doi .wpcf7-form-control-wrap{margin:0 !important;}
.wpcf7-acceptance{display:block;}
.wpcf7-acceptance .wpcf7-list-item{
	display:block;
	margin:0 !important;
}
.doi label{
	position:relative;
	display:block;
	text-align:center;
	padding:19px 0 20px 25px;
	font-size:1.5rem;
	letter-spacing:1.5px;
	line-height:2.1rem;
	cursor:pointer;
}
.doi input{
	position:absolute;
	top:0;
	left:-250px;
	right:0;
	bottom:0;
	width:15px;
	height:15px;
	margin:auto;
	cursor:pointer;
}


/* check */
.check h2{
	margin:60px 0 15px;
	font-size:2.2rem;
	letter-spacing:2.2px;
	line-height:3.2rem;
	text-align:left;
}
.check .wpcf7-form td{padding:30px 0;}
.check .postcode_box{margin:0;}


/* reserve-form */
.reserve-form select.wpcf7-select{max-width:310px;}
input.wpcf7-date{
	display:block;
	max-width:200px;
	width:100%;
	padding:13px 20px 14px;
	border:1px solid #E0E0E0;
	border-radius:4px;
	font-size:1.5rem;
	letter-spacing:1.5px;
	line-height:2.1rem;
	cursor:pointer;
}


@media screen and (max-width:1024px){

/* common */
#header_wrap{padding:17px 20px 18px;}
#content_wrap{padding-top:60px;}
.page_title{
	font-size:2.7rem;
	letter-spacing:2.7px;
	line-height:3.7rem;
}
.bg_box{
	padding:40px 40px 45px;
	margin-top:30px;
}
.form_step{margin:40px 0 55px;}
.form_step li{
	font-size:1.8rem;
	letter-spacing:1.8px;
	line-height:2.6rem;
}

th .required{
	font-size:1.4rem;
	letter-spacing:1.4px;
	line-height:2rem;
}
.wpcf7-form h3{
	font-size:1.9rem;
	letter-spacing:1.9px;
	line-height:2.8rem;
}
.wpcf7-form th, .wpcf7-form td{padding:20px 0;}
.wpcf7-form th{width:200px;}

#form_btn1, #form_btn2{
	padding-bottom:18px;
	font-size:1.4rem;
	letter-spacing:1.4px;
	line-height:2rem;
}


/* index / input */
.bg_box h2{
	font-size:2.2rem;
	letter-spacing:2.2px;
	line-height:3.2rem;
}
.bg_box p[style="text-align: center;"]{
	margin-bottom:10px;
	font-size:1.4rem;
	letter-spacing:1.4px;
	line-height:2rem;
}
.bg_box [href^="tel:"]{
	font-size:2.5rem;
	line-height:3.6rem;
}

.wpcf7-list-item{margin-right:30px !important;}
#email_confirm{
	font-size:2.1rem;
	letter-spacing:2.1px;
	line-height:3.1rem;
}

.doi label{
	padding:17px 0 18px 25px;
	font-size:1.4rem;
	letter-spacing:1.4px;
	line-height:2rem;
}
.doi input{left:-240px;}


/* check */
.check h2{
	font-size:1.9rem;
	letter-spacing:1.9px;
	line-height:2.8rem;
}
.check .wpcf7-form td{padding:22px 0;}

}


@media screen and (max-width:767px){

/* common */
#header_wrap{padding:15px 20px;}
#content_wrap{padding-top:40px;}
.page_title{
	font-size:2.4rem;
	letter-spacing:2.4px;
	line-height:3rem;
}
.page_title + p{text-align:left !important;}
.bg_box{
	padding:40px 20px;
	margin-top:20px;
}
.form_step{margin:30px -30px 45px;}
.form_step li{
	padding-bottom:20px;
	font-size:1.6rem;
	letter-spacing:1.6px;
	line-height:2.4rem;
}

th .required{
	float:right;
	margin-top:3px;
	font-size:1.3rem;
	letter-spacing:1.3px;
	line-height:1.9rem;
}
.wpcf7-form h3{
	font-size:1.6rem;
	letter-spacing:1.6px;
	line-height:2.4rem;
}
.wpcf7-form th, .wpcf7-form td{
	display:list-item;
	list-style:none;
	padding:13px 0 0 !important;
}
.wpcf7-form th{
	width:auto;
	border:none;
}
.wpcf7-form td{
	padding-bottom:30px !important;
	font-size:1.4rem;
	letter-spacing:1.4px;
	line-height:2.5rem;
}
.wpcf7-form td p{
	font-size:1.4rem;
	letter-spacing:1.4px;
	line-height:2rem;
}

#form_btn1, #form_btn2{
	width:220px;
	padding:15px 20px 16px;
	font-size:1.3rem;
	letter-spacing:1.3px;
	line-height:1.9rem;
}


/* index / input */
.bg_box h2{
	font-size:2rem;
	letter-spacing:2px;
	line-height:2.9rem;
}
.bg_box p[style="text-align: center;"]{
	margin-bottom:10px;
	font-size:1.3rem;
	letter-spacing:1.3px;
	line-height:1.9rem;
}
.bg_box [href^="tel:"]{
	font-size:2.4rem;
	line-height:3.5rem;
}

input.wpcf7-text, input.wpcf7-number, textarea{
	padding:11px 15px 12px;
	font-size:1.4rem;
	letter-spacing:1.4px;
	line-height:2rem;
}
.wpcf7-list-item{
	margin-right:20px !important;
	font-size:1.4rem;
	letter-spacing:1.4px;
	line-height:2rem;
}
select.wpcf7-select{
	max-width:240px;
	padding:11px 40px 12px 15px;
	background-position:center right 15px;
	font-size:1.4rem;
	letter-spacing:1.4px;
	line-height:2rem;
}
#postcode{max-width:240px;}
#email_confirm{
	font-size:2rem;
	letter-spacing:2px;
	line-height:2.9rem;
}

.doi label{
	padding:15px 0 16px 20px;
	font-size:1.3rem;
	letter-spacing:1.3px;
	line-height:1.9rem;
}
.doi input{left:-220px;}


/* check */
.check h2{
	font-size:1.6rem;
	letter-spacing:1.6px;
	line-height:2.4rem;
}


/* reserve-form */
.reserve-form select.wpcf7-select{max-width:290px;}
input.wpcf7-date{
	max-width:180px;
	padding:11px 15px 12px;
	font-size:1.4rem;
	letter-spacing:1.4px;
	line-height:2rem;
}

}