@charset "utf-8";
body {
	font-size: 1.5em;
}
/* ===============================================================
       basic elements
=============================================================== */
.spContents {
	display: none;
}
.inner2 {
	width: 80%;
	margin: auto;
}

/* ===============================================================
       contents
=============================================================== */
#contants {
	margin: 50px auto 80px auto;
	width: 1100px;
}
.section {
	margin-bottom: 70px;
}
.section ul .column {
	margin: 0 5% 0 0;
	display: block;
}
.section ul .column:nth-child(2n) {
	margin-right: 0;
}
.section ul .column::after {
	content: "";
	display: block;
	clear: both;
}
.column2 .column {
	width: 47.5%;
	margin: 0 5% 0 0;
}
.column2 .column:nth-child(2n) {
	margin-right: 0;
}
.txtArea1 {
	width: 55%;
}
.imgArea1 {
	width: 40%;
}


/* ----------- 見出し ----------- */
.ttl1 {
	margin: 0 auto 1.5em auto;
	background-size: 306px;
	font-size: 24px;
	height: 78px;
	line-height: 78px;
}
.ttl2 {
	font-size: 24px;
}
.ttl3 {
	font-size: 16px;
	background-size: 34px;
	padding: 0 0 2px 45px;
	line-height: 34px;
	height: 34px;
	margin-bottom: 20px;
}
.ttl4 {
	font-size: 20px;
	margin-bottom: 1em;
}
.ttlPrice {
	height: 50px;
	margin-bottom: 30px;
}
.ttlPrice img {
	height: 20px;
	margin-top: 15px;
}
.txt1 {
	font-size: 18px;
	margin-bottom: 5px;
}
.txt2 {
	font-size: 18px;
	margin-bottom: 5px;
}


/* ----------- table ----------- */
.price .priceArea {
	margin-bottom: 50px;
}
.price table {
	background: #fff;
	border: solid 1px #ffcfcb;
	width: 100%;
}
.price table th {
	padding: 8px 20px;
	border: solid 1px #ffcfcb;
	width: 60%;
	text-align: left;
}
.price table th h5 {
	font-weight: bold;
	position: relative;
	padding-left: 25px;
}
.price table th h5:before {
	content: "●";
	position: absolute;
	left: 0;
}
.price table th .menuCaption {
	position: relative;
	margin-bottom: 0px !important;
	padding: 0 0 0 1.5em;
}
.price table th .menuCaption::before {
	position: absolute;
	content: "※";
	margin-left: -1.5em;
}
.price table td {
	padding: 8px 20px;
	border: solid 1px #ffcfcb;
	width: 40%;
	vertical-align: middle;
}
.tbl1 {
	width: 100%;
	border: solid 1px #ffcfcb;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background-color: #fff;
	margin-bottom: 30px;
}
.tbl1 th, .tbl1 td {
	border: solid 1px #ffcfcb;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 8px 20px;
	text-align: left;
}
.tbl1 th {
	width: 30%;
	background-color: #ffe3e1;
}
.priceArea .flexbox {
	justify-content: space-between;
}
.price_block {
	width: 70%;
}
.price_image {
	width: 25%;
}


/* ----------- box ----------- */
.box1 {
	padding: 20px 30px;
}
.box2 {
	padding: 20px 30px;
}
.box3 {
	padding: 20px 30px;
}


/*
===============================================================
       header
=============================================================== */
#header {
	width: 100%;
	position: absolute;
	top: 0;
	position: relative;
	text-align: center;
}
.head_inner {
	padding-top: 10px;
}
.siteName {
	font-size: 12px;
	font-weight: normal;
	margin-bottom: 25px;
}
.headLogo {
	height: 60px;
	width: 187px;
	margin: auto;
	margin-bottom: 25px;
}

/* ----------- nav ----------- */
.headerNavArea {
	width: 100%;
	background: #fff;
	margin-top: 0;
	border-top-width: 1px;
	border-bottom-width: 1px;
	border-top-style: solid;
	border-bottom-style: solid;
	border-top-color: #ffcfcb;
	border-bottom-color: #ffcfcb;
}
.headNav {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 70px;
	width: 90%;
	margin: 0 auto;
	font-size: 14px;
}
.headNav li {
	margin: 0 12px;
}
.headNav li a {
	padding: 4px 10px;
	border-radius: 50px;
}
.headNav li a:hover {
	background: #ffe6e3;
	color: #523f26;
}
.headNav .home {
	font-size: 18px;
}
.clone-nav {
	position: fixed;
	top: -1px;
	left: 0;
	z-index: 100;
	width: 100%;
	-webkit-transition: .3s;
	transition: .3s;
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
	background: #fff;
	border-bottom: 1px solid #e9e9e9;
}
.is-show {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}
.btn__reservation {
	width: 100px;
	position: fixed;
	top: 20px;
	right: 15px;
	z-index: 1000;
}

@media screen and (min-width: 1039px) and (max-width: 1454px) {
	.headNav {
		font-size: 13px;
	}
	.headNav li {
		margin: 0 10px;
	}
	.headNav li a {
		padding: 4px 8px;
	}
}


/* ===============================================================
       footer
=============================================================== */
#pagetop a {
	width: 84px;
	height: 84px;
	display: block;
	background: url(img/common/pagetop.png);
	position: fixed;
	right: 15px;
	bottom: 10px;
}
#footer {
	width: 100%;
	text-align: center;
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee;
}
#footer .footInner {
	width: 90%;
	max-width: 1300px;
	padding: 20px 0;
}
#footer .footLogo_Area {
	min-height: 60px;
	position: relative;
	width: 86%;
	margin: 0 auto;
}
#footer .footInner .footLogo {
	position: absolute;
	width: 170px;
	left: 0px;
	top: 0px;
}
#footer .footInner h2 {
	font-size: 13px;
	position: absolute;
	left: 220px;
	top: 20px;
}

/* ----------- nav ----------- */
.footNav {
	display: flex;
	justify-content: center;
	margin: 20px 0 40px 0;
	font-size: 13px;
}
.footNav li {
	margin: 0 12px;
}
.footNav li a {
	padding: 4px 10px;
	border-radius: 100px;
}
.footNav li a:hover {
	background-color: #ffe6e3;
	color: #523f26;
}
.footNav .home {
	font-size: 18px;
}
.footContactArea {
	width: 1200px;
	padding: 15px;
	background-color: #ffe6e3;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin: auto;
}
.footContactArea li {
	display: inline;
	margin: 0 20px;
	font-size: 16px;
	font-weight: bold;
}

.footContactArea li.tel2 i {
	font-size: 18px;
}
.footContactArea li.lineIcn {
	background-image: url(../img/common/line.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 16px;
	padding-left: 22px;
}
.copyright {
	width: 100%;
	background-color: #fffbf4;
	padding: 15px;
	margin-bottom: 0;
}