@charset "utf-8";
body{
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1.8;
	color: #333;
	margin: 0;
	padding: 0;
}

*{ margin:0; padding:0; overflow-wrap: break-word;}
li img{ vertical-align:top;}
img{ border:none;}
a{ color:#00A0C6;}

/* クリア */
.clearFix {min-height:1px;}
* html .clearFix {
  height:1px;
  /*¥*//*/
  height:auto;
  overflow:hidden;
  /**/
}
.clearFix:after {
  content:"."; 
  display:block; 
  height:0; 
  font-size:0;
  clear:both; 
  visibility:hidden;
}

/* ====================
共通
==================== */

.inner {
	width:100%;
	max-width:1200px;
	margin:0 auto;
	box-sizing:border-box;
	padding:0;
}
.inner-article {
	margin:0 10px;
}
.inner:after,.inner-article:after {
  content:"."; 
  display:block; 
  height:0; 
  font-size:0;
  clear:both; 
  visibility:hidden;
}
#top-image #top-msg,#upper-area-inner h2,#top-middle h2,
#top-map h2,#page-article h2 {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

/* ====================
ヘッダ
==================== */

#head-inner {
	width:100%;
	max-width:1200px;
	margin:0 auto;
	box-sizing:border-box;
	padding:10px 0;
	position: relative;
}
#head-inner:after {
  content:"."; 
  display:block; 
  height:0; 
  font-size:0;
  clear:both; 
  visibility:hidden;
}
#head-title {
	float: left;
	padding: 0 0 0 10px;
}
#head-title h1 {
	margin:0;
	line-height: 0;
	text-align: center;
	margin: 10px 0 0 0;
}
#head-title #title-sub {
	margin:0 0 0 0;
	font-family: 'Noto Serif JP', serif;
	font-size: 1.2em;
	font-weight: bold;
}
#head-inner a.lang-link {
	position: absolute;
	top:10px;
	right:10px;
	color:#333;
	display: inline-block;
	padding: 0 0 0 20px;
	text-decoration: none;
	background-image: url(../images/dot-blue.png);
	background-repeat: no-repeat;
	background-position: left center;
}
#head-inner a.lang-link:hover {
	color:#c00;
	text-decoration: underline;
	background-image: url(../images/dot-red.png);
}
#head-inner #head-telnum {
	position: absolute;
	right:0px;
	bottom:0px;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	text-align: center;
	line-height: 1.7em;
	padding: 5px 10px 5px 0;
}

/* ====================
グローバルナビ
==================== */

#toggle {
	display:none;
}
nav {
	background: -webkit-linear-gradient(#83879a,#999baa,#83879a);
	background: -o-linear-gradient(#83879a,#999baa,#83879a);
	background: linear-gradient(#83879a,#999baa,#83879a);
	padding:10px 0;
	position: relative;
}
nav ul {
	width:100%;
	max-width:1200px;
	margin:0 auto;
	box-sizing:border-box;
	display: table;
	table-layout: fixed;
	border-collapse: separate;
	border-spacing:10px 0;
	list-style: none;
}
nav ul li {
	display: table-cell;
}
nav ul li a {
	display: block;
	text-align: center;
	padding: 7px 0 3px 0;
	color: #fff;
	text-decoration: none;
	font-weight: bold;
	text-shadow:0 0 5px #000;
}
nav ul li a:hover {
	color: #333;
	background-color: #fff;
	text-decoration: none;
	text-shadow:none;
	border-radius: 5px 5px 0 0;
	box-shadow: 0 0 5px #000;
}
nav ul li a.page-on {
	color: #333;
	background-color: #fff;
	text-decoration: none;
	text-shadow:none;
	border-radius: 5px 5px 0 0;
	box-shadow: 0 0 5px #000;
}
nav #bottom-line {
	position: absolute;
	bottom:0;
	width: 100%;
	height: 10px;
	font-size: 0;
	background-color: #fff;
}

/* ====================
フッタ
==================== */

#footer {
	margin: 30px 0 0 0;
}
#footer #footer-upper {
	padding: 20px 0;
	background-color: #f0f0f0;
	display: table;
	width: 100%;
}
#footer-upper #footer-address,#footer-upper #footer-address-en,#footer-upper #footer-menu {
	display: table-cell;
	vertical-align: top;
}
#footer-upper #footer-address,#footer-upper #footer-address-en {
	padding: 0 0 0 10px;
	margin: 0;
}
#footer-upper #footer-address {
	width: 240px;
}
#footer-upper #footer-address-en {
	width: 300px;
}
#footer-upper #footer-menu {
	padding: 20px 0 0 50px;
}
#footer-menu ul {
	list-style: none;
	font-size: 0.9em;
}
#footer-menu ul li {
	float: left;
	margin: 0 30px 10px 0;
}
#footer-menu a {
	display: block;
	color: #333;
	text-decoration: none;
	padding: 0 0 0 15px;
	background-image: url(../images/dot-blue-s.png);
	background-repeat: no-repeat;
	background-position: left center;
}
#footer-menu a:hover {
	color: #c00;
	background-image: url(../images/dot-red-s.png);
	text-decoration: underline;
}
#footer #copy {
	color: #fff;
	font-size: 0.8em;
	text-align: center;
	background-color: #83879A;
	padding: 5px 0;
}

/* ====================
トップページ
==================== */

/* スライドショー */
#top-image {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	position:relative;
}
#top-image #slide-area {
	display:block;
	margin: 20px 0 0 0;
	padding:0;
	text-align:center;
}
#top-image #slide-area img {
	width:100%;
	height:auto;
}
#slide-area ul {
	list-style:none;
}
#slide-area img {
}
#top-image #top-msg {
	position:absolute;
	top:50px;
	right:0px;
	z-index:5000;
	color:#000;
	background-color: rgba(255,255,255,0.8);
	font-size:1.8em;
	font-weight:bold;
	padding:15px 30px;
	border-left:solid 5px #00A0C6;
}

/* 記事 */
#top-upper {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	background-color: #F1F0ED;
}
#top-upper #upper-inner {
	width:100%;
	max-width:1200px;
	margin:0 auto;
	box-sizing:border-box;
	padding:0;
	position: relative;
	height: 300px;
}
#top-upper #upper-inner:after {
  content:"."; 
  display:block; 
  height:0; 
  font-size:0;
  clear:both; 
  visibility:hidden;
}
#upper-inner #upper-area {
	position: absolute;
	bottom: 0px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	width: 80%;
	background-color: #F1F0ED;
}
#upper-area #upper-area-inner {
	background-color: #fff;
	margin: 20px;
	padding: 10px 20px;
}
#upper-area-inner h2,#top-middle h2,#top-map h2 {
	color: #00A0C6;
	font-weight: bold;
	font-size:1.5em;
	border-bottom: solid 1px #00A0C6;
	text-align: center;
	margin: 0 0 1em 0;
}
#upper-area-inner h2 {
	display: block;
}
#upper-area-inner h2 br {
display: none;
}
#upper-article {
	display: table;
}
#upper-article #upper-img,#upper-article #upper-txt {
display: table-cell;
vertical-align: top;
}
#upper-article #upper-txt {
	padding: 0 50px 0 0;
	font-size: 1.1em;
}
#upper-txt p {
	margin: 0 0 0.5em 0;
}
#upper-article #upper-img {
	width: 220px;
	font-size: 0.9em;
	background-color: #EBEFF1;
	padding: 20px;
}
#upper-article #upper-img img {
	margin:20px 0 0 0;
}

#top-middle {
	padding: 50px 0;
	background-color: #fff;
}
#top-middle h2,#top-map h2 {
	display: inline-block;
	padding: 0 30px;
}
#top-middle-menu {
	display: flex;
}
#top-middle-menu a {
	display: block;
	background-color:#fafafa;
	width: 24%;
	margin: 0 0.5%;
	position: relative;
}
#top-middle-menu a.en-menu {
	width: 32%;
}
#top-middle-menu a img {
	width: 100%;
	height: auto;
    -webkit-filter:brightness(0.7);
    -moz-filter:brightness(0.7);
    -ms-filter:brightness(0.7);
    filter:brightness(0.7);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
#top-middle-menu a:hover img {
    -webkit-filter:brightness(1.0);
    -moz-filter:brightness(1.0);
    -ms-filter:brightness(1.0);
    filter:brightness(1.0);
}
#top-middle-menu a p {
	position: absolute;
	top: 50%;
	left: 0px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	width: 100%;
	background-color: rgba(255,255,255,0.8);
	text-decoration: none;
	text-align: center;
	color:#333;
	padding: 10px 0;
	font-weight:bold;
	font-size:1.2em;
}

#top-map {
}
#top-map iframe {
	width: 100%;
	height: 350px;
}

/* ====================
下層ページ
==================== */
#bread-crumb {
	font-size:0.9em;
	padding:10px;
}
#page-article {
	padding:20px 0 30px 0;
}
#page-article #title-area {
	margin:0 0 2em 0;
	text-align:center;
}
#page-article h2 {
	display:inline-block;
	font-size:1.7em;
	font-weight:bold;
	color:#00A0C6;
	border-bottom:solid 2px #00A0C6;
	padding:0 20px;
}
#page-article h3 {
	font-size:1.3em;
	font-weight:bold;
	color:#00A0C6;
	border-bottom:solid 1px #00A0C6;
	margin:1em 0;
}
#page-article h4 {
	font-size:1.2em;
	font-weight:bold;
	color:#00A0C6;
	margin:0.5em 0;
}
#page-article p {
	margin:0 0 0.5em 0;
}
.article-line {
	display:table;
	width:100%;
}
.article-line .article-line-txt,.article-line .article-line-img {
	display:table-cell;
	vertical-align:top;
}
.article-line .article-line-img {
	width:240px;
	padding:0 20px;
}
.article-line .article-line-map {
	width:450px;
	padding:0 20px;
}
.article-line .article-line-img img,.article-line .article-line-map img {
	width:100%;
	height:auto;
}

/* アクセス・周辺案内 */
#spot-pc {
	text-align:center;
}
#spot-sp {
	display:none;
}
.etc-spot {
	display:table;
	width:auto;
	margin:1em 0;
	padding:15px;
}
.etc-spot .etc-spot-img,.etc-spot .etc-spot-txt {
	display:table-cell;
	vertical-align:top;
}
.etc-spot .etc-spot-img {
	width:150px;
	padding:0 20px 0 0;
}
.etc-spot .etc-spot-txt {
	padding:0 20px 0 0;
}

/* お部屋・館内のご案内 */
.setsubi-line {
	display:table;
	width:100%;
}
.setsubi-line .setsubi-line-txt,.setsubi-line .setsubi-line-img {
	display:table-cell;
	vertical-align:top;
}
.setsubi-line .setsubi-line-img {
	width:300px;
	padding:0 0 0 30px;
}
.setsubi-line-img img {
	width:100%;
	height:auto;
}
.setsubi-line-img ul {
	list-style:none;
}
.setsubi-line-img ul:after {
  content:"."; 
  display:block; 
  height:0; 
  font-size:0;
  clear:both; 
  visibility:hidden;
}
.setsubi-line-img ul li {
	text-align:center;
	margin:0 0 20px 0;
}

dl.setsubi {
}
dl.setsubi dt {
	float:left;
	font-weight:bold;
}
dl.setsubi dd {
	margin:0 0 0 6em;
}

/* 周辺情報 */
.spot-line {
	margin:1em 0;
	display:flex;
	flex-wrap: wrap;
}
.spot-line a {
	display:block;
	width:48%;
	margin:0 2% 20px 0; 
	color:#333;
	text-decoration:none;
	box-sizing: border-box;
	padding:20px;
	border:1px solid #ccc;
	background-color:#fff;
}
.spot-line a:hover {
	box-shadow: 0 0 5px rgba(0,0,0,0.5);
}
.spot-line a h5 {
	font-size:1.1em;
	font-weight:bold;
	background-color:#f0f0f0;
	padding:5px;
	margin:0 0 0.5em 0;
}
.spot-line a .spot-img {
	text-align:center;
	margin:0 0 0.5em 0;
}

/* 宿泊のご予約 */
ul.yoyaku-list {
	list-style:none;
	margin:0 0 20px 0;
}
ul.yoyaku-list li {
	margin:0 0 10px 0;
}
ul.yoyaku-list a {
	display: inline-block;
	padding: 5px 10px 5px 30px;
	background-color: #00A0C6;
	color: #FFF;
	text-decoration: none;
	border-radius: 5px;
	background-image: url(../images/dot-wh-blue.png);
	background-repeat: no-repeat;
	background-position: 5px center;
}
ul.yoyaku-list a:hover {
	background-color: #900;
	background-image: url(../images/dot-wh-red.png);
}
ul.qr-list {
	list-style:none;
	margin:0 0 30px 0;
}
ul.qr-list:after {
  content:"."; 
  display:block; 
  height:0; 
  font-size:0;
  clear:both; 
  visibility:hidden;
}
ul.qr-list li {
	float:left;
	margin:0 30px 0 0;
	text-align:center;
	font-size:0.9em;
}
.reserve-tel {
	background-color:#f0f0f0;
	padding:15px;
	display:inline-block;
	font-size:1.2em;
}


/* ====================
ページの先頭へ
==================== */

.pagetop{
	position:fixed;
	bottom:-80px;right:10px;
	opacity:0.6;-moz-opacity:0.6;filter:alpha(opacity=60);/* ie6.7 */-ms-filter:"alpha(opacity=60)";/* ie 8 */
	z-index:10000;
}
.pagetop a{
	display:block;
	width:50px;height:50px;
	background-color:#555;
	text-align:center;
	color:#fff;
	font-size:110%;
	line-height:35px;
	text-decoration:none;
	border-radius:5px;}

/* ====================
汎用
==================== */
.txt-80 {
	font-size: 0.8em;
}
.txt-90 {
	font-size: 0.9em;
}
.txt-120 {
	font-size: 1.2em;
}
.txt-150 {
	font-size: 1.5em;
}
.txt-160 {
	font-size: 1.6em;
}
.txt-180 {
	font-size: 1.8em;
}
.txt-200 {
	font-size: 2.0em;
}
.txt-blue {
	color:#00A0C6;
}

.margin-b20 {
	margin-bottom:20px;
}
.padding-10 {
	padding:10px;
}

.bg-gray {
	background-color:#f0f0f0;
}

a.block-link {
	display: inline-block;
	padding: 0 0 0 20px;
	background-image: url(../images/dot-blue.png);
	background-repeat: no-repeat;
	background-position: left center;
	text-decoration:none;
	
}
.place-left {
	text-align: left !important;
}
.place-center {
	text-align: center;
}
.place-right {
	text-align: right;
}
ul.normal-dot,ul.normal-dot-narrow {
	list-style:square;
}
ul.normal-dot li {
	margin:0 0 10px 30px;
}
ul.normal-dot-narrow li {
	margin:0 0 5px 30px;
}

ul.icon-dot-blue {
	list-style-image: url(../images/dot-blue.png);
	list-style-type: none;
}
ul.icon-dot-blue li {
	margin:0 0 10px 30px;
}

.small-menu {
	margin:0 0;
	text-align:right;
}
.small-menu a {
	display:inline-block;
	background-color:#f0f0f0;
	color:#333;
	text-decoration:none;
	padding:5px 10px;
	margin:0 0 0 5px;
	border-radius:5px 5px 0 0;
}
.small-menu a:hover {
	background-color:#00A0C6;
	color:#fff;
	text-decoration:none;
}
.small-menu a.page-on {
	background-color:#00A0C6;
	color:#fff;
	text-decoration:none;
}

.border-table {
}
.border-table table {
	width:100%;
	border-collapse:collapse;
}
.border-table table th,.border-table table td {
	border:solid 1px #85899C;
	padding:5px 10px;
	vertical-align:top;
}
.border-table table th {
	font-weight: bold;
	color: #FFF;
	background-color: #A5A7B4;
}
.border-table table td {
	text-align:center;
}
