@charset "utf-8";

/*
 * PC Contents
 */


/* ----------------------------- japan (home) */

#japan,
#japan a { color: #fff; overflow: hidden; }

/* ----------------------------- oversea (home) */

#oversea,
#oversea a { color: #fff; overflow: hidden; }

/* ----------------------------- foreign (home) */

#foreign,
#foreign a { color: #fff; overflow: hidden; }

/* ----------------------------- infos (home) */

#infos,
#infos a { color: #fff; overflow: hidden; }

/* ----------------------------- information (page) */
/* 不要かも */
#page,
#page a { color: #fff; }


.information {
	text-align: center;
	border-bottom: 1px #ccc dotted;
	padding: 44px 0;
}
.information h2 {
	font-size: 2.0rem;
	margin: 0 0 28px;
}
.information ul {
	letter-spacing: -0.4em;
}
.information ul li {
	display: inline-block;
	letter-spacing: normal;
	margin: 4px;
}
.information ul a {
	display: inline-block;
	min-width: 136px;
	color: #556677;
	border: 1px #ccc solid;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	font-size: 1.3rem;
	line-height: 1;
	padding: 12px;
}
.information ul a:hover {
	background: rgba(0,0,0,.6);
	color: #fff;
}

/* ----------------------------- reservation */

.reservation {
	text-align: center;
	padding: 44px 0;
}

#greeting .reservation {
	padding: 44px 0 0;
}

.reservation ul { margin: 0 0 24px; }
.reservation ul li { font-size: 1.6rem; }
.reservation ul li.catch {
	font-size: 1.3rem;
	margin: 0 0 12px;
}
.reservation ul li:last-child { margin: 8px 0 0; }
.reservation .telnum {
	color: #556677;
	font-family: Verdana, Geneva, sans-serif;
	line-height: 1;
}
.reservation ul li .telnum {
	font-size: 2.4rem;
}
.reservation ul li img + .telnum {
	font-size: 4.4rem;
}
.reservation ul li img {
	width: 3.2rem;
	height: auto;
	margin: 0 4px 0 0;
	vertical-align: baseline;
}

a.reservationBox {
	display: inline-block;
	color: #556677;
	border: 1px #ccc solid;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	font-size: 2.0rem;
	font-family: 'loraregular';
	line-height: 1;
	padding: 20px 40px;
}
a.reservationBox:hover {
	background: rgba(0,0,0,.6);
	color: #fff;
}
a.reservationBox span {
	font-size: 1.4rem;
	font-family:Verdana, Geneva, sans-serif;
	margin: 0 0 0 20px;
}
.reservation p {
	font-size: 1.8rem;
	vertical-align: middle;
	margin: 24px 0 0;
}
.reservation p img {
	width: 160px;
	height: auto;
	vertical-align: middle;
}
.reservation p span {
	margin: 0 0 0 12px;
}

/* ----------------------------- archive page ( > ul.flex-space-between.item2 ) */

.archive > ul > li {
	text-align: center;
	margin: 0 0 10px;
}
.archive > ul > li a {
	display: table;
	width: 98%;
	border: 1px #ccc solid;
	padding: 12px 32px;
	margin: 0 auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
    box-sizing: border-box;
	position:relative;
}
.archive > ul > li a:hover {
	background: #ccc;
	color: #fff;
}
.archive > ul > li a::after {
	font-family:"FontAwesome";
	content: "\f138";
	font-size: 2.0rem;
	position: absolute;
	top: 50%;
	margin-top: -10px;
}
.archive > ul > li a figure,
.archive > ul > li a h3 {
	display: table-cell;
	vertical-align: middle;
}
.archive > ul > li a figure {
	width: 120px;
}
.archive > ul > li a h3 {
	font-size: 1.6rem;
	line-height: 1.6;
	text-align: left;
	padding: 0 50px 0 24px;
}

/* ----------------------------- sitemap page ( > div.flex-space-between ) */

#stiemaps h2 {
	font-size: 1.4rem;
	border-bottom: 1px #ccc solid;
	padding: 0 0 6px;
	margin: 0 0 16px;
}
#stiemaps li {
	font-size: 1.2rem;
	border-bottom: 1px #ccc dotted;
	padding: 10px 0;
}
#stiemaps a::after {
	font-family:"FontAwesome";
	content: "\f138";
	margin: 0 0 0 4px;
}

/* ----------------------------- price */

.price-style {
	margin: 10px 0 0;
}
.innertable.price-style {
	margin: 24px 0 0;
}
.price-style h3.essential{
	margin: 20px 0 !important;
	font-size: 1.8rem !important;
}

.innertable.price-style > p {
	width: 240px;
}
.price-style .tablefixed,
.price-style .table-nonefixed {
	border: 1px #ccc solid;
}
.innertable.price-style .tablefixed,
.innertable.price-style .table-nonefixed {
	border-top: none;
	border-right: 1px #ccc solid;
	border-bottom: 1px #ccc solid;
	border-left: 1px #ccc solid;
}
.innertable.price-style > div > .tablefixed:first-child,
.innertable.price-style > div > .table-nonefixed:first-child {
	border-top: 1px #ccc solid;
}
.price-style .tablefixed li,
.price-style .table-nonefixed li {
	padding: 10px;
	line-height: 1.6;
}
.price-style .tablefixed li:first-child {
	border-right: 1px #ccc solid;
}
.price-style-cap {
	text-align:right;
	margin: 10px 0 0;
}