@charset "utf-8";

@import url('https://fonts.googleapis.com/css?family=M+PLUS+Rounded+1c:400,700');

*{
	margin:0px;
	padding:0px;
}

.mb10{
	margin-bottom:10px;
}

.mb20{
	margin-bottom:20px;
}

.mb30{
	margin-bottom:30px;
}

body {
	margin: 0px;
	padding: 0px;
	height:100%;
	text-align: center;
	border: 0px;
	font-size:14px;
color:#2d2a25;
	/*font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","Verdana","ＭＳ Ｐゴシック","sans-serif";*/
	font-family: Verdana, "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
font-weight:500;
}

#header {
    width: 100%;
    max-width: 1040px;
    box-sizing: border-box;
    padding: 16px 20px;
    margin: 0px auto;
    display: flex;
    align-items: flex-end;
    position: relative;
}

#contents{
width:100%;
max-width:1040px;
box-sizing:border-box;
padding:0px 20px;
margin:30px auto 50px auto;
min-height: 600px;
}

.reserve_txt p{
	font-size:16px;
}

.reserve_txt p + p{
	margin-top:15px;
}

.raiten{
	display:flex;
	flex-wrap:wrap;
}

.raiten li{
	list-style-type:none;
	width:27%;

}

.raiten li input{
	margin-right:5px;
	position:relative;
	top:-1px;
}

.must_td_con_cal div:last-child{
	margin-bottom:0px;
}


#contents > p{
	font-size: 16px;
	line-height: 1.6;
}

#mainttl{
	background: #aaa;
}

.ttl02{
font-family: "Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","メイリオ",Meiryo;
font-size: 250%;
font-weight:bold;
background: #3330;
padding: 10px 0;
text-align:center;
color: #333;
border-top: 1px solid #eee;
border-bottom: 1px solid #eee;

}

.ttl02 div{
	max-width: 1040px;
	padding: 0 20px;
	box-sizing: border-box;
	margin: 0 auto;
}


.footer_txt{
	margin-top:10px;
}


/* contact */

.contact_form_box{
	padding-bottom:50px;
}


.contactbox{
	width:100%;
	max-width:1000px;
	margin:30px auto 30px auto;
	box-sizing:border-box;
}
.contactbox .form_table{
	box-sizing:border-box;
	width: 100%;
}

.contactbox table,
.contactbox th,
.contactbox td{
	border-collapse: collapse;
	border:1px solid #ccc;
}

.contactbox .form_table th{
	width:25%;
	padding:15px 10px;
	box-sizing:border-box;
	text-align:left;
	background: #eee;
}

.contactbox .form_table td{
	padding:15px 5% 15px 5%;
	text-align:left;
	vertical-align:middle;
	background:#fff;
}

.contactbox .form_table td p{
padding-bottom:0px;
}
.contactbox .form_table td p.fs11{
font-size:11px;
}

.contactbox .form_table option{
	height: 15px;
}

/* contents.css */
.area{
width:100%;
padding-top:10px;
}

.area div{
position: relative;
border-bottom:1px dotted #aaa;
padding:10px;
cursor:default;
}
.area div:hover{
background: #fafafa;
}
.area input{
position:absolute;
top:10px;
}


.area .sr_data *{
font-size: inherit;
padding:0;
float:none;
width: auto;
position:relative;
top: auto;
left: auto;
right: auto;
background:none;
border: none;
}

.area .sr_data{
margin-left:25px;
line-height:130%;
font-size:93%;
border: none;
margin-bottom:0;
padding:0;
}

.sr_data h4 {
    display: inline;
    line-height: 100%;
    color: #b10000;
    font-size: 153.9%;
    font-weight: bold;
    margin-right: 10px;
}

.area .sr_data .sr_data_l h4 a:hover{
text-decoration:none;
cursor:default;
}

.area .sr_data .sr_data_l p{
margin-left:0px;
font-size:93%;
line-height:130%;
}


.area .sr_data .sr_data_l h4 a{
color:#ff5700;
font-size:16px;
line-height:130%;
pointer-events: none;
text-decoration: none;
}

.must_td_con_cal .must_p::before,
.must_td_con_cal .any_p::before{
	padding: 3px 5px;
	margin-top: 7px;
	margin-right: 10px;
	color: #fff;
	border-radius: 3px;
}

.must_td_con_cal .must_p::before{
	content: "必 須";
	background: #dc6363;
}

.must_td_con_cal .any_p::before{
	content: "任 意";
	background: #ccc;
}

.must_td_con_cal input {
    position: relative;
    z-index: 500;
    background-color: transparent;
}

.must_td_con_cal div span{
	display: inline-block;
}

.must_td_con_cal div span select{
	margin-bottom: 10px;
}

.must_td_con_cal > div{
	margin-right: 10px;
	margin-bottom: 10px;
}

.must_td_con_cal > div div{
	margin-bottom: 10px;
	margin-right: 10px;
	display: inline-block;
}

.must_td_con_cal div{
	display: flex;
	flex-wrap: wrap;
}



.must_td_con_cal div p{
	margin-top: 10px;
	margin-bottom:0;
}

.must_td_address div{
	margin-bottom: 10px;
	
}

.contactbox .error{
display:none;
color:#f00;
font-weight:bold;
}

.contactbox .form_table label{
line-height:180%;
}

.thxFooter{
    position: absolute;
    width: 100%;
    bottom: 0;
}

#footer{
	background: #fff;
	padding: 20px 0;
	border-top: 1px solid #eee;
	/*color: white;*/
}

#footer_box02 {
    margin: 0px auto;

}

#footer_box02 div {
	text-align: center;
}

.must {
	position: relative;
	display:block;
}

.must::before{
	position: absolute;
	content:"必 須";
	right: 0;
	display: inline-block;
    padding: 3px 5px 1px 5px;
	box-sizing: border-box;
    border-radius: 3px;
    font-size: 12px;
    color: #fff;
    background: #dc6363;
	color: white;
}

input[type="text"], textarea,
.form_table td input[type=tel],
.form_table td input[type=email],
.form_table td textarea,
.form_table td select {
    border: 1px solid #ccc;
    font-size: 16px;
    padding: 10px;
    border-radius: 5px;
	box-sizing:border-box;
	background: #fff;
}

.thanks_box{
padding: 0 10px;
margin-top: 20px;

}

.thanks_box h2{
	font-size: 22px;
	text-align: center;
}

.thanks_box .btn01{
width:50%;
margin:40px auto 0px auto;
}
.thanks_box .btn01 a{
display:block;
background:#ed6d00;
color:#fff;
padding:10px;
text-decoration:none;
text-align:center;
}

.submit_btn button[type="submit"]{
	font-family:'Lucida Grande','Hiragino Kaku Gothic ProN',Meiryo, sans-serif;
	background: #380002;
	margin:0px auto;
	display:block;
	width:70%;
	border:none;
	color:#fff;
	padding:10px 20px 8px 20px;
	font-size:123.1%;
	text-decoration:none;
	box-sizing:border-box;
	cursor: pointer;
}

.check_p{
	text-align: center;
}

.check_p input[type="submit"],
input[type="button"]{
	padding:10px 20px 8px 20px;
	box-sizing:border-box;
	margin:0px auto;
	border:none;
	display:block;
	font-size:123.1%;
	margin-bottom: 10px;
	cursor: pointer;
}

input[type="button"]{
	width: 200px;
}

.check_p input[type="submit"]{
	background: #c00;
	color: #fff;
	font-size: 16px;
	margin: 10px auto 30px auto;
	width:70%;
}

/* mail.php */
#formWrap {
	margin:0 auto;
	color:#555;
	line-height:120%;
	font-size:16px;
}
p.error_messe{
	margin:10px 0;
	color:red;
	font-size: 16px;
}

#formWrap h3{
	text-align: center;
	font-size: 24px;
}

#formWrap h4{
	text-align: center;
	font-size: 16px;
	line-height: 1.6;
}


#formWrap > p{
	line-height: 1.4;
}

.repeat{
	margin-top: 10px;
}

.repeat > input + label{
	padding-left: 20px;
	position:relative;
	margin-right: 20px;
}

.repeat > input + label::before{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 15px;
	height: 15px;
	border: 1px solid #999;
	border-radius: 50%;
}

.repeat input:checked + label{
	color: #ed6d00;
}

.repeat input:checked + label::after{
	content: "";
	display: block;
	position: absolute;
	top: 3px;
	left: 3px;
	width: 11px;
	height: 11px;
	background: #ed6d00;
	border-radius: 50%;
}

.repeat input[type="radio"]{
	display: none;
}


/* メディアクエリ **************************************************************************************/
@media screen and (max-width:800px) {
.must_td_con_cal div{
	display: block;
}

.reserve_txt p{
	font-size:15px;
}

.raiten li{
	list-style-type:none;
	width:50%;

}

}

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

.head_logo{
	width:150px;
}

.reserve_txt p{
	font-size:13px;
}

#contents {
    margin: 30px auto 30px auto;
	padding: 0;
    box-sizing: border-box;
}

/* mail.php */
#formWrap {

	font-size:14px;
}


#contents > p{
	padding: 0 20px;
	font-size: 14px;
	line-height: 1.4;
}

.ttl02 div{
	padding: 0 10px;
	font-weight: bold;
}
	
.ttl02 {
    padding: 5px 0px;
    margin-bottom: 20px;
    font-size: 167%;
}

.contactbox table,
.contactbox th,
.contactbox td{
	border-collapse: collapse;
	border: none;
}

.contactbox .form_table th{
	display:block;
	width:100%;
	padding:10px 20px;
	border-bottom:none;
	text-align:left;
	font-weight: bold;
}

.contactbox .form_table td{
	display:block;
	padding:10px 20px;
	border-bottom:none;
	margin-bottom: 20px;
}

.must_td_con_cal > div div{
	display: block;
}

.must {
	display: inline-block;
	padding-right: 50px;
}

/* mail.php */
#formWrap h3{
	font-size: 20px;
}

}

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


.raiten li{
	list-style-type:none;
	width:100%;

}


#contents > p{
	padding: 0 10px;
}

.contactbox .form_table th,
.contactbox .form_table td{
	padding:10px;
}

input[type="text"], textarea,
.form_table td input[type=tel],
.form_table td input[type=email],
.form_table td textarea,
.form_table td select {
    font-size: 13px;
}

.must_td_shop select{
	width: 100%;
}

.form_table td textarea{
	width: 100%;
}

.thanks_box .btn01{
width:90%;
}

}


.cont_list{
	display:flex;
	flex-wrap:wrap;
}




.cont_list li{
	width:25%;
	list-style-type:none;
	font-size:15px;
}


@media screen and (max-width:1000px) {
	.cont_list li{
		width:30%;
		font-size:14px;
	}
}

@media screen and (max-width:480px) {
	.cont_list li{
		width:50%;
		font-size:13px;
	}
}
