@charset "UTF-8";
/****************************************

	共通パーツ

*****************************************/
/*水色*/
/*オレンジ*/
html, body {
	min-width: 1280px;
}
body {
	min-width: 320px;
	line-height: 1.7;
	font-size: 1.2rem;
	color: #000;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  }

body, p, strong, label, input, textarea {
	font-family: "メイリオ","ＭＳ Ｐゴシック",Helvetica,Sans-Serif;
}

a {
	color: #000;
}

a:hover {
	opacity: .8;
}

.bold {
	font-weight: bold;
}

.base-width, .page {
	width: 980px;
	margin-left: auto;
	margin-right: auto;
}

.main {
	position: relative;
}

.header {
	padding: 20px 0 0;
}

.header-id-area {
	border-bottom: 1px solid #c6c6c6;
	padding: 0 0 35px;
}

.header-inner {
	position: relative;
	width: 980px;
	margin: 0 auto;
}

.header-descr, .header-logo {
	text-align: center;
}

.header-descr {
	letter-spacing: 0.06em;
	font-size: 1rem;
	color: #c6c6c6;
}

.header-logo-area {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-webkit-justify-content: flex-end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	margin: 15px 0 0;
}

.header-logo {
	padding: 5px 0 0;
}

/*検索フォーム*/
.header-search {
	width: 300px;
	margin: 0 0 0 68px;
}

.header-search input {
	height: 30px;
	outline: 0;
	border: 1px solid #c6c6c6;
}

.header-search input[type="text"] {
	width: 245px;
	background: #eeeeee;
	padding: 5px;
	color: #666666;
}

.header-search input[type="submit"] {
	width: 56px;
	margin: 0 0 0 -1px;
	-webkit-appearance: none;
	-moz-appearance: none;
	background: #666666;
	font-size: 1.2rem;
	color: #fff;
}

.header-util {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

/*パンくずリスト*/
.header-bc {
	margin-right: auto;
	padding: 20px 0 0;
}

.header-bc li, .header-sns li {
	display: inline-block;
}

.header-bc li:after {
	content: ">";
	padding: 0 10px;
	color: #dedede;
}

.header-bc li:last-of-type:after {
	content: "";
	padding: 0;
}

/*お気に入りに追加ボタン*/
.header-btn-fav {
	display: table;
	width: 150px;
	margin: 0 0 0 4px;
	background: #0094f1;
	text-align: center;
}

.header-btn-fav a {
	display: table-cell;
	color: #fff;
	height: 30px;
	vertical-align: middle;
}

.header-btn-fav:hover {
	background: none;
	box-shadow: 0 0 0 1px #0094f1 inset;
	color: #0094f1;
}

.header-btn-fav a:hover {
	color: #0094f1;
}

/****************************************

	ホテル詳細ページ

*****************************************/
/*グローバルナビ*/
.detail-nav {
	position: relative;
	margin-top: 18px;
}

.detail-nav:before, .detail-nav:after {
	content: "";
	position: absolute;
	top: 0;
	z-index: 2000;
	display: block;
	background: #fff;
	width: calc( 50% - 490px);
	height: 100%;
}

.detail-nav:before {
	left: 0;
}

.detail-nav:after {
	right: 0;
}

.header-fix {
	position: relative;
}

.header-fix.fixed {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100000;
	width: 100%;
	margin: 0;
	background: #fff;
}

.detail-nav-inner {
	position: relative;
	z-index: 1000;
	width: 980px;
	margin: 0 auto;
}

.detail-nav ul {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	overflow: visible;
	width: 980px;
	margin: 0 auto;
}

.detail-nav li {
	position: relative;
	display: table;
	width: 110px;
}

.detail-nav li a:after {
	content: "";
	position: absolute;
	display: inline-block;
	right: -3px;
	top: 0;
	left: 0;
	width: 1px;
	height: 29px;
	border-right: 1px dotted #aaaaaa;
}

.detail-nav li:first-child a:after {
	content: "";
	display: none;
}

.detail-nav li a {
	position: relative;
	display: table-cell;
	width: 110px;
	height: 35px;
	vertical-align: middle;
	text-align: center;
	font-size: 1.4rem;
}

.detail-nav .direction a {
	display: block;
	position: absolute;
	z-index: 100;
	background: #fff;
	width: 110px;
	height: 29px;
	line-height: 29px;
	font-size: 1.1rem;
	text-align: center;
	top: 0;
}

.detail-nav .direction a:hover {
	opacity: 1;
}

.detail-nav .direction .back {
	background: url(../img/nav-arrow-left.png) left center no-repeat #fff;
}

.detail-nav .direction .more {
	background: url(../img/nav-arrow-right.png) right center no-repeat #fff;
}

.detail-nav .direction .back {
	left: 0;
	display: none;
}

.detail-nav .direction .more {
	right: 0;
}

#magic-line {
	overflow: visible !important;
	position: absolute;
	bottom: 0;
	height: 3px;
}

.detail-nav #magic-line {
	width: 104px;
	background: #0094f1;
}

.detail-nav .baloon {
	min-width: 320px;
	display: none;
	position: absolute;
	right: -20px;
	top: 26px;
	z-index: 500;
	padding: 10px;
}

.detail-nav .baloon .inner {
	background: #fff;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
	border-radius: 5px;
	padding: 20px;
	height: 100%;
	width: 100%;
}

.detail-nav li:hover .baloon {
	display: block;
}

.detail-nav .coupon .title {
	display: block;
	font-size: 2rem;
	font-weight: bold;
}

.detail-nav .coupon .inner {
	padding: 30px;
	width: 700px;
	font-size: 1.5rem;
	line-height: 1.8;
}

.detail-nav .coupon p {
	margin: 10px 0 0;
}

.detail-nav .reserve .baloon {
	text-align: center;
}

.detail-nav .reserve .title {
	display: block;
	font-size: 1.6rem;
}

.detail-nav .detail-tel {
	display: inline-block;
	margin: 5px 0 0;
	padding: 0 0 0 40px;
	font-size: 2.7rem;
	background: url(../img/icon-reserve.png) 0 2px no-repeat;
	background-size: 30px auto;
}

/*スライダー*/
.detail .slider-area {
	margin: 24px 0 0;
}

.wideslider {
	width: 100%;
	text-align: left;
	position: relative;
	overflow: hidden;
	-webkit-transition: .3s;
	transition: .3s;
}

.wideslider ul,
.wideslider ul li {
	float: left;
	display: inline;
	overflow: hidden;
}

.wideslider ul li img {
	width: 100%;
	display: none;
}

.wideslider_base {
	top: 0;
	position: absolute;
}

.wideslider_wrap {
	top: 0;
	position: absolute;
	overflow: hidden;
}

.slider_prev,
.slider_next {
	top: 0;
	overflow: hidden;
	position: absolute;
	z-index: 100;
	cursor: pointer;
}

.slider_prev {
	background: -webkit-linear-gradient(right, rgba(255, 255, 255, 0.5) 0%, white 100%);
	background: linear-gradient(to left, rgba(255, 255, 255, 0.5) 0%, white 100%);
}

.slider_next {
	background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0.5) 0%, white 100%);
	background: linear-gradient(to right, rgba(255, 255, 255, 0.5) 0%, white 100%);
}

.slider-area .pagination {
	bottom: 23px;
	left: 0;
	width: 100%;
	height: 15px;
	margin: 0;
	text-align: center;
	position: absolute;
	z-index: 200;
}

.slider-area .pagination a {
	margin: 0 5px;
	width: 11px;
	height: 11px;
	display: inline-block;
	overflow: hidden;
	border-radius: 100px;
	border: 1px solid #fff;
	background: none;
}

.slider-area .pagination a.active {
	background: #fff;
	filter: alpha(opacity=100) !important;
	-moz-opacity: 1 !important;
	opacity: 1 !important;
}

/*スライダー用clearfix*/
.wideslider ul:after {
	content: ".";
	height: 0;
	clear: both;
	display: block;
	visibility: hidden;
}

.wideslider ul {
	display: inline-block;
	overflow: hidden;
}

/*詳細情報*/
.detail-content {
	margin-top: 18px;
}

.detail-dist {
	font-size: 1.2rem;
}

.detail-name {
	position: relative;
	font-family: "Times", "Times New Roman", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝B", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	font-size: 2.4rem;
	letter-spacing: .1em;
}

.detail-name.r18:after {
	content: "";
	position: absolute;
	left: 295px;
	top: 10px;
	display: block;
	width: 192px;
	height: 21px;
	background: url(../img/icon-r18.png) 0 0 no-repeat;
	margin: 0 0 0 2px;
}

.detail-info-item {
	background-repeat: no-repeat;
	background-position: 0 0;
	display: inline-block;
	margin: 0 0 0 16px;
	padding: 0 0 0 22px;
	letter-spacing: 0.16em;
}

.detail-info-item:first-child {
	margin: 0;
	padding: 0;
}

.detail-info-item:nth-child(2) {
	margin: 0 0 0 17px;
}

.detail-rate {
	letter-spacing: 0.08em;
}

.detail-rate img {
	position: relative;
	top: -1px;
	vertical-align: middle;
}

.detail-tel {
	background-image: url(../img/icon-tel.png);
}

.detail-group {
	background-image: url(../img/icon-group.png);
	text-decoration: underline;
}

.detail-hp {
	background-image: url(../img/icon-hp.png);
	text-decoration: underline;
}

.detail-hp:hover, .detail-group:hover {
	text-decoration: none;
}

.detail-feature {
	margin: 21px 0 0;
}

.detail-feature li {
	display: inline-block;
	width: 110px;
	height: 20px;
	background: #191919;
	text-align: center;
	color: #fff;
}

.detail-feature li.active {
	background: #a6a72d;
}

.detail-feature li:nth-child(n+2) {
	margin: 0 0 0 6px;
}

.detail-explain-area {
	margin: 20px 0 0;
	font-size: 1.4rem;
}

.detail-copy {
	display: block;
	font-weight: bold;
	color: #8f8f8f;
}

.detail-explain {
	margin: 15px 0 0;
}

/*SNSエリア*/
.tab-btn {
	cursor: pointer;
}

.tab-btn.active {
	cursor: default;
}

.tab-content {
	display: none;
}

.tab-contents:first-child, .tab-content.active {
	display: block;
}

.detail-sns {
	margin: 15px 0 0;
}

.detail-sns-btn {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.detail-sns .btn {
	width: 320px;
	height: 40px;
	line-height: 40px;
	background: #aaa;
	text-align: center;
	font-family: "Times", "Times New Roman", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝B", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	letter-spacing: 0.06em;
	font-size: 1.4rem;
	color: #fff;
}

.detail-sns .btn:hover {
	background: #777;
}

.detail-sns .btn.active {
	background: #666;
}

.detail-sns .btn:before {
	position: relative;
	top: -1px;
	font-size: 1rem;
	color: #fff;
	vertical-align: middle;
}

.detail-sns .btn:before {
	content: "▼ ";
}

.detail-sns .btn.active:before {
	content: "▲ ";
}

.detail-sec-title span,
.detail-sec-stretchTitle span {
	display: inline-block;
	margin: 0 10px 0 0;
	letter-spacing: .134em;
	font-family: "Times", "Times New Roman", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝B", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.detail-sec-title span {
	font-size: 2.6rem;
}

.detail-sec-stretchTitle span {
	font-size: 2.3rem;
	-webkit-transform: scale(1, 2);
	-ms-transform: scale(1, 1.2);
	transform: scale(1, 1.2);
}

.detail-sec-title .btn-more {
	position: relative;
	top: -4px;
	background: #0094f1;
	color: #fff;
	font-size: 1rem;
	padding: 2px 10px;
}

/*フォトギャラリー*/
.detail-photo {
	margin: 35px 0 0;
}

.detail-photo-btn, .detail-sort-btn {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-size: 1.4rem;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}

.detail-sort-btn {
	margin-left: 20px;
}

.detail-sort-btn .active {
	color: #f3b134;
	text-decoration: underline;
}

.detail-photo .tab-btn {
	width: 60px;
	margin: 0 0 0 15px;
	text-align: center;
	-webkit-transition: .3s;
	transition: .3s;
	box-shadow: 0 -3px 0 transparent inset;
}

.detail-photo .tab-btn.active, .detail-photo .tab-btn:hover {
	box-shadow: 0 -3px 0 #666 inset;
}

.detail-photo .magic-line {
	width: 60px;
}

.detail-title-area {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.gallery .detail-title-area {
	border-bottom: 1px solid #e0e0e0;
}

.detail-title-area > *:nth-last-child(1) {
	margin-left: auto;
}

.detail-index .detail-title-area {
	border: none;
}

.detail-photo .wannago {
	margin: 9px 0 0;
	border: 1px solid #0094f1;
}

.detail-photo-list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.detail-photo-list li {
	width: 188px;
	margin-left: 10px;
}

.detail-photo-list li:nth-child(5n-4) {
	margin-left: 0;
}

.detail-photo-list li:nth-child(n+6) {
	margin-top: 25px;
}

.detail-photo-list a {
	display: block;
}

.detail-photo-list .wannago {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	line-height: 27px;
	background: #fff;
	border: 1px solid #0094f1;
}

.detail-photo-content {
	margin: 16px 0 0;
}

.detail-photo-list .assertion {
	position: relative;
	width: 97px;
	height: 27px;
	padding: 0 0 0 6px;
	background: #0094f1;
	font-size: 1.1rem;
	font-weight: bold;
	color: #fff;
}

.detail-photo-list .wannago.added {
	border-color: #ddd;
}

.detail-photo-list .added .assertion {
	background: #ddd;
}

.detail-photo-list .added .assertion:after {
	border-color: transparent transparent transparent #ddd;
}

.detail-photo-list .assertion:after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: -10px;
	width: 0;
	height: 0;
	margin: -6px 0 0;
	border-style: solid;
	border-width: 6px 0 6px 10px;
	border-color: transparent transparent transparent #0094f1;
}

.detail-photo-list .point {
	width: calc( 100% - 97px);
	text-align: center;
}

.detail-photo-list p {
	margin: 8px 0 0;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-size: 1.1rem;
	color: #777;
}

.detail-photo.ranking .thumb {
	position: relative;
}

.detail-photo.ranking .rank {
	position: absolute;
	width: 24px;
	height: 24px;
	left: 4px;
	bottom: 4px;
}

.detail-photo.gallery .rank {
	display: none;
}

/*店舗からのメッセージ*/
.detail-message {
	position: relative;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: cover;
	margin: 45px 0 0;
	padding: 50px 0 50px;
}

.detail-message:before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.6);
}

.detail-message .message {
	position: relative;
	z-index: 10;
	width: 980px;
	height: 400px;
	margin: 0 auto;
	overflow-y: scroll;
	letter-spacing: .05em;
}

.detail-message, .detail-message p {
	font-family: "Times", "Times New Roman", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝B", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	color: #fff;
}

.detail-message h3 {
	text-align: center;
	font-size: 1.8rem;
	margin: 0 0 45px;
}

.detail-message p {
	font-size: 1.4rem;
	margin: 25px 0 0;
	line-height: 2;
}

/*レビュー*/
.detail-review {
	margin: 45px 0 0;
}

.detail-review-list {
	border: 1px solid #0094f1;
}

.detail-total-area {
	margin: 15px 0 0;
}

.detail-review-post h3 {
	font-family: "Times", "Times New Roman", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝B", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.detail-review-post .info {
	margin: 15px 0 0;
	border-bottom: 1px solid #d1d1d1;
}

.detail-review-post .reply {
	margin: 25px 0 0;
}

.detail-review-post .reply-title {
	margin: 8px 0 0;
	font-size: 1.6rem;
}

.detail-review-post .reply-message {
	margin: 0;
	padding: 20px;
	background: #f3f3f3;
}

.detail-review-list .post-item-inner {
	padding: 30px 15px;
}

.detail-review-list .post-item {
	margin: 0;
}

.detail-review-list .post-item:first-child {
	padding: 0;
}

.detail-review-list .post-item:nth-child(n+2) {
	padding: 0 0 0;
	border-top: 1px solid #0094f1;
}

.detail-total {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.detail .right-link {
	padding: 26px 0 0;
	margin-left: auto;
	letter-spacing: 0.25em;
}

.detail .right-link a {
	color: #0094f1;
	text-decoration: underline;
}

.detail-total-title,
.detail-total-reviewTitle {
	width: 113px;
	height: 60px;
	background: #0094f1;
	line-height: 60px;
	text-align: center;
	color: #fff;
}

.detail-total-reviewTitle {
	width: 200px;
	font-size: 2.2rem;
}

.list-pagination {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin: 20px 0 40px;
}

.list-pagination a, .list-pagination span {
	display: block;
	background: #0094f1;
	margin: 0 2px;
	width: 30px;
	height: 30px;
	line-height: 30px;
	text-align: center;
	color: #fff;
}

.list-pagination span {
	background: #666;
}

.note-plainText {
	margin: 20px 0 50px;
}

.rating-star i {
	position: relative;
	display: inline-block;
	overflow: hidden;
}

.rating-star i span {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 100%;
	height: 100%;
}

.rating-star .bar {
	width: 0%;
	background: #f1a400;
}

.rating-star .icon {
	z-index: 10;
	background: url(../img/star.png) 0 0 no-repeat;
	background-size: 100% 100%;
}

.detail-total .total-star {
	padding: 20px 0 0 16px;
}

.detail-total .total-point {
	padding: 14px 0 0 12px;
}

.detail-total .total-point {
	font-size: 3.6rem;
	color: #f1a400;
	vertical-align: bottom;
	line-height: .6;
}

.detail-total-area .total-items {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	padding: 12px 10px 8px;
	border: 1px solid #0094f1;
}

.detail-total-area .total-items li:nth-child(n+2) {
	margin: 0 0 0 24px;
}

.detail-total-area .total-items .title {
	font-size: 1.2rem;
}

.detail-total-area .total-items .point {
	margin: 0 0 0 10px;
	line-height: 1;
	font-size: 1.8rem;
}

.detail-total-area .stars img {
	vertical-align: middle;
}

/*クチコミ投稿内容*/
.detail-review-post {
	margin: 10px 0 0;
}

.detail-review-post h5 {
	font-family: "Times", "Times New Roman", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝B", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	font-size: 2.2rem;
	letter-spacing: 0.08em;
}

.detail-review-post .post-item {
	margin: 13px 0 0;
}

.detail-review-post .post-item h1 {
	letter-spacing: .23em;
}

.detail-review-post .post-item .name {
	font-size: 1.8rem;
	font-weight: bold;
	color: #8f8f8f;
}

.detail-review-post .post-meta {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.detail-review-post .post-meta time {
	display: inline-block;
	margin-left: auto;
	letter-spacing: .23em;
	font-size: 1.4rem;
}

.detail-review-post .post-meta .message {
	width: 140px;
	height: 16px;
	padding: 0 5px;
	line-height: 16px;
	background: #666666;
	margin: 6px 0 0 7px;
	text-align: center;
	letter-spacing: .13em;
	font-size: 1rem;
	color: #fff;
}

.detail-review-post .post-icon-area {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.detail-review-post .post-icon {
	width: 80px;
	height: 80px;
	background: #ccc;
}

.detail-review-post .post-meta-area {
	width: calc( 100% - 100px);
	margin: 0 0 0 20px;
}

/*スクロールバー装飾*/
.detail-message .message:hover .jspDrag {
	background: rgba(255, 255, 255, 0.3) !important;
}

.jspScrollable {
	outline: 0 !important;
}

.jspVerticalBar {
	width: 2px !important;
}

.jspDrag {
	background: transparent !important;
	-webkit-transition: .3s;
	transition: .3s;
}

.jspTrack {
	background: transparent !important;
}

.jspVerticalBar {
	background: transparent !important;
}

.jspVerticalBar, .jspTrack, .jspDrag {
	border-radius: 10px;
}

.detail-review-post .stars {
	margin: 15px 0 0;
}

.detail-review-post .stars .total {
	display: inline-block;
	font-size: 1.8rem;
	line-height: 1;
}

.detail-review-post .stars .items {
	display: inline-block;
}

.detail-review-post .stars .items span {
	letter-spacing: .1em;
	margin: 0 0 0 15px;
}

.detail-review-post .stars .total img {
	vertical-align: middle;
}

.detail-review-post p {
	margin: 16px 0 0;
	font-size: 1.4rem;
	letter-spacing: .1em;
}

.detail-review-post + .detail-review-post {
	margin: 23px 0 0;
	padding: 5px 0 0;
	border-top: 1px solid #d1d1d1;
}

/*基本情報*/
.detail-base {
	margin: 35px 0 0;
	padding: 14px 0 0;
	border-top: 1px solid #c6c6c6;
	background: #eee;
}

.detail-base-table {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 100%;
	margin: 5px 0 0;
	padding: 1px 0;
}

.detail-base-table .cell {
	padding: 21px 18px 13px;
	width: calc( 50% - 2px);
	border-bottom: 1px solid #c9c9c9;
	text-align: center;
}

.detail-base-table.bottom {
	border-top: 1px solid #c9c9c9;
	margin: 20px 0 0;
}

.detail-base-table.bottom .cell {
	padding: 17px 18px 18px;
}

.detail-base-table .cell:nth-child(2n) {
	border-left: 1px solid #c9c9c9;
}

.detail-base h4, .title-line {
	text-align: center;
	font-size: 2.1rem;
	background: url(../img/base-line.png) center bottom no-repeat;
	font-family: "Times", "Times New Roman", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝B", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.detail-base-table .cell p {
	margin: 19px 0 0;
	line-height: 2.2;
	letter-spacing: .08em;
	font-size: 1.4rem;
}

.detail-base-list {
	padding: 13px 0;
}

.detail-base-list .where {
	margin: 12px 0 0;
	text-align: center;
	font-size: 1rem;
	letter-spacing: .14em;
}

.detail-base-list .where > div {
	display: inline-block;
}

.detail-base-list.amenity .all span {
	color: #0094f1;
}

.detail-base-list.amenity .part span {
	color: #7cc8f7;
}

.detail-base-list.amenity .no span {
	color: #dddddd;
}

.detail-base-list.amenity .cell li {
	background: #dddddd;
}

.detail-base-list.amenity .cell .all {
	background: #0094f1;
}

.detail-base-list.amenity .cell .part {
	background: #7cc8f7;
}

.detail-base-list.shop .all span {
	color: #f1a604;
}

.detail-base-list.shop .part span {
	color: #f7ce7e;
}

.detail-base-list.shop .no span {
	color: #dddddd;
}

.detail-base-list.shop .cell li {
	background: #dddddd;
}

.detail-base-list.shop .cell .all {
	background: #f1a604;
}

.detail-base-list.shop .cell .part {
	background: #f7ce7e;
}

.detail-base-list .cell {
	margin: 16px 0 0;
}

.detail-base-list .cell h5 {
	font-size: 1.8rem;
	margin: 0 0 0 10px;
}

.detail-base-list .cell ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 16px 0 0;
}

.detail-base-list .cell li {
	width: 109px;
	height: 20px;
	line-height: 20px;
	text-align: center;
	color: #fff;
}

.detail-base-list .cell li {
	margin: 0 0 0 12px;
}

.detail-base-list .cell li:nth-child(n+9) {
	margin-top: 20px;
}

.detail-base-list p {
	margin: 16px 0 0 10px;
	line-height: 2;
	font-size: 1.4rem;
}

.detail-base-list.shop {
	margin: 38px 0 0;
	border-top: 1px solid #c9c9c9;
}

/*料金表*/
.detail-price {
	margin: 45px 0 0;
	font-size: 1.4rem;
	letter-spacing: .08em;
}

.detail-index .detail-price {
	margin: 20px 0 0;
}

.detail-price .note {
	margin: 23px 0 0;
}

.cell .note {
	text-align: center;
}

.detail-price-list {
	margin: 13px 0 0;
	padding: 0 10px;
}

.detail-price-list li {
	line-height: 2.1;
}

.detail-price h4 {
	font-size: 1.8rem;
}

/*クーポン*/
.detail-coupon {
	margin: 45px 0 0;
}

.detail-coupon-btn {
	display: block;
	background: #0094f1;
	padding: 8px 20px;
	line-height: 32px;
	font-size: 1.5rem;
	color: #fff;
}

.detail-coupon-text {
	padding: 20px;
	border: 1px solid #0094f1;
	line-height: 1.8;
	font-size: 1.4rem;
}

.detail-coupon-btn:before {
	content: "";
	display: inline-block;
	width: 30px;
	height: 30px;
	background: url(../img/icon-print.png) 0 center no-repeat;
	vertical-align: middle;
}

.detail-coupon-notice {
	margin: 20px 0 0;
}

.detail-coupon-notice h4 {
	display: inline-block;
	background: #000;
	color: #fff;
	padding: 0 10px;
	font-size: 1.2rem;
}

.detail-coupon-notice p {
	margin: 7px 0 0;
}

.detail-coupon-map {
	margin: 30px 0 0;
}

.detail-info-table th, .detail-info-table td {
	margin: 15px 0 0;
	padding: 10px 0;
	border-bottom: 1px solid #b9b9b9;
}

.detail-info-table span {
	font-weight: bold;
}

.detail-coupon-cta {
	width: 260px;
	margin: 40px auto 0;
	text-align: center;
}

/*アクセス*/
.detail-access {
	margin: 45px 0 0;
}

.detail-access-map {
	margin: 15px 0 0;
}

/*近くのホテル*/
.detail-nearby {
	margin: 60px 0 0;
	padding: 12px 0 0;
	border-top: 1px solid #c9c9c9;
}

.detail-index .detail-nearby {
	margin: 12px 0 0;
}

.detail-photo-content .name-area {
	text-align: center;
	margin: 7px 0 0;
	padding: 0 5px;
}

.detail-photo-content .name {
	font-size: 14px;
	height: 46px;
}

.detail-photo-content .area {
	font-size: 1rem;
}

/*footer*/
.footer {
	margin: 84px 0 0;
	border-top: 1px solid #0094f1;
	color: #fff;
}

.footer ul a {
	color: #fff;
	text-decoration: none;
	border-bottom: .99px dotted #fff;
	padding-bottom: 0.2rem;
	opacity; 0.6;
}
.footer-inner {
	position: relative;
	width: 980px;
	margin: 0 auto;
	padding: 40px 0 0;
}

.fixed-btn {
	position: fixed;
	z-index: 2000000;
	right: 0;
	top: 50%;
	height: 250px;
	margin: -125px 0 0;
}

.fixed-btn .favorite.added:after,
.fixed-btn a {
	-webkit-writing-mode: tb-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	　-moz-writing-mode: vertical-rl;
	　-o-writing-mode: vertical-rl;
	　-webkit-writing-mode: vertical-rl;
	vertical-align: middle;
	text-align: center;
	letter-spacing: .1em;
}

.fixed-btn a {
	display: block;
	width: 48px;
	line-height: 48px;
	height: 120px;
	font-size: 12px;
	font-weight: normal;
}

.fixed-btn .favorite {
	position: relative;
	background: #0094f1;
	color: #fff;
}

.fixed-btn .favorite:hover, .fixed-btn .favorite.active {
	background: #fff;
	box-shadow: 0 0 0 1px #0094f1 inset;
	color: #0094f1;
	opacity: 1;
}
.fav-message{
	position: absolute;
	display: none;
	width: 55px;
	height: 250px;
	padding: 5px;
	left: -75px;
	border-radius: 100px;
	font-size: 1.1rem;
	color: #fff;
	opacity: 0;
	-webkit-animation: fadeIn 3s 1 ease;
	animation: fadeIn 3s 1 ease;
}
.fav-message:after{
	content: "";
	position: absolute;
	display: block;
	right: -15px;
	top: 48px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 12px 0 12px 20px;
	border-color: transparent transparent transparent #f1a400;
}
.fav-message-added {background: #f1a400;}
.fav-message-added:after {border-color: transparent transparent transparent #f1a400;}
.fav-message-deleted {background: #555;}
.fav-message-deleted:after {border-color: transparent transparent transparent #555;}

@-webkit-keyframes fadeIn {
	0% {
		opacity: 0;
		z-index: 1;
		display: block;
		pointer-events: none;
	}
	40% {
		opacity: 1;
	}
	80% {
		opacity: 1;
	}
	99% {
		opacity: 0;
	}
	100% {
		z-index: -10;
		display: none;
		pointer-events: default;
	}
}

@keyframes fadeIn {
	0% {
		opacity: 0;
		z-index: 1;
		display: block;
		pointer-events: none;
	}
	40% {
		opacity: 1;
	}
	80% {
		opacity: 1;
	}
	99% {
		opacity: 0;
	}
	100% {
		z-index: -10;
		display: none;
		pointer-events: default;
	}
}

.fixed-btn .history {
	margin: 10px 0 0;
	background: #7cc8f7;
	color: #fff;
	top: 228px;
}

.fixed-btn .history:hover, .fixed-btn .history.active {
	background: #fff;
	box-shadow: 0 0 0 1px #0094f1 inset;
	color: #7cc8f7;
	opacity: 1;
}

.pagetop {
	position: absolute;
	top: -39px;
	right: 0;
	display: block;
	background: #0094f1;
	width: 179px;
	height: 39px;
	line-height: 40px;
	text-align: center;
	color: #fff;
	font-size: 1.4rem;
}

.pagetop:hover {
	background: none;
	box-shadow: 0 0 0 1px #0094f1 inset;
	color: #0094f1;
}

.footer ul {
	text-align: center;
}

.footer-area li, .footer-util li {
	display: inline-block;
	font-size: 1.1rem;
}

.footer-area ul:nth-of-type(n+2) {
	margin: 13px 0 0;
}

.footer-area .pref li:after,
.footer-area .sub-area li:after {
	content: "|";
	display: inline-block;
	padding: 0 15px;
}

.footer-area .pref li:last-child:after,
.footer-area .sub-area li:last-child:after {
	content: "";
	padding: 0;
}

.footer-util {
	margin: 15px 0 0;
}

.footer .notice {
	margin: 44px 0 0;
}

.footer .copyright {
	margin: 10px 0 0;
}

.copyright, .footer .notice {
	text-align: center;
	font-size: .9rem;
}

.modal-area {
	display: none;
}

.modal-area, .modal-filter {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1000000000000;
	width: 100%;
	height: 100%;
}

.modal-area {
	position: fixed;
}

.modal-filter {
	position: absolute;
	z-index: 1000;
	background: rgba(0, 0, 0, 0.9);
}

.modal-inner {
	position: relative;
	z-index: 2000;
}

.modal-inner {
	position: absolute;
	top: 10%;
	left: 50%;
	margin: 0 0 0 -490px;
	width: 980px;
}

.modal-title-area {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}

.modal-close-btn {
	margin-left: auto;
	width: 30px;
	height: 30px;
	line-height: 30px;
	text-align: center;
	font-size: 2rem;
	font-weight: bold;
	color: rgba(255, 255, 255, 0.7);
	border: 1px solid rgba(255, 255, 255, 0.7);
	cursor: pointer;
}

.modal-close-btn:hover {
	color: #fff;
}

.modal-title {
	font-size: 3rem;
	font-family: "Times", "Times New Roman", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝B", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	color: rgba(255, 255, 255, 0.7);
}

.modal-image-area {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin: 10px 0 0;
}

.modal-main {
	width: 810px;
	height: 560px;
	overflow: hidden;
}

.modal-nav {
	position: relative;
	width: 145px;
	height: 560px;
	overflow: hidden;
}

.modal-nav ul {
	position: absolute;
}

.modal-nav li {
	margin: 0 0 21px;
	height: 91px;
}

.modal-nav .active {
	opacity: .5;
}

.modal-area img {
	width: 100%;
}

.modal-text {
	margin: 10px 0 0;
	line-height: 2.2;
	letter-spacing: 0.05em;
	font-size: 1.4rem;
	color: #fff;
}




