@charset "UTF-8";
/* CSS Document */
/* btn ----------------------------*/

/* btnarea */
.btnarea {
	display: flex;
}
.btnarea.btn-center {
	justify-content: center;
}
.btnarea.btn-right {
	justify-content: flex-end;
}

.btn {
	display: inline-block;
	vertical-align: middle;
	width: 100%;
	cursor: pointer;
	overflow: hidden;
	position: relative;
	border-radius: 2px;
}

/* ボタンの幅：デザイン案に合わせて編集 */
.btnW-s {
	max-width: 160px;
}
.btnW-m {
	max-width: 215px;	
}
.btnW-l {
	max-width: 240px;
}
.btnW-ll {
	max-width: 280px;
}
@media (max-width: 480px) {
	.btnW-s,.btnW-m,.btnW-l {
		max-width: none;
	}	
}

/* ボタンの高さ：デザイン案に合わせて編集 */
.btnH-s {
	height: 40px;	
}
.btnH-m {
	height: 55px;
}
.btnH-l {
	height: 70px;
}
.btnH-ll {
	height: 80px;
}


/* ボタンの色：デザイン案に合わせて編集 */
.btn.btnC-green01{
	color: #fff;
	background-color: #024503; /* 濃い緑 */
}
.btn.btnC-green02{
	color: #fff;
	background-color: #48760c; /* 薄い緑 */	
}
.btn.btnC-purple{
	color: #fff;
	background-color: #480775; /* 紫 */	
}

.btn.btnC-green01:before,
.btn.btnC-green02:before,
.btn.btnC-purple:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(255,255,255,0.1);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	opacity: 0;
	visibility: hidden;
	transition: opacity ease 0.28s, visibility ease 0.28s;
}

.btn.btnC-green01:hover:before,
.btn.btnC-green02:hover:before,
.btn.btnC-purple:hover:before {
	opacity: 1;
	visibility: visible;
}

@media (max-width: 480px) {
	.btn.btnC-green01:before,
	.btn.btnC-green02:before,
	.btn.btnC-purple:before {
		display: none;
	}
}


.btn.btn-line {
	border: 1px solid rgba(0,0,0,0.3);
	background-color: transparent;
}
.btn.btn-line:hover {
	background-color: #fff;
}

/* ボタン内容 */
.btn-cont {
	display: flex;
/*	flex-wrap: wrap;*/
	align-items: center;
	justify-content: center;
	width: 100%;
/*	padding: 0 30px;*/
	line-height: 1.2;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.btn-arrow .btn-cont,
.btn-exit .btn-cont {
	padding: 0 50px 0 30px;
}

@media (max-width: 480px) {
	.btn-cont {
		padding: 0 15px;
	}
	.btn-arrow .btn-cont,
	.btn-exit .btn-cont {
		padding: 0 30px 0 15px;
	}
}

/* ボタンアイコン */
.btn-icon {
	display: block;
	padding-left: 15px;
}
.btn-icon .icon-pdf {
	width: 13px;
	height: 16px;
}

/* ボタン矢印：デザイン案に合わせて編集 */
/* 丸矢印(小) */
.btn-arrow {
	display: block;
	width: 17px;
	height: 17px;
	background-color: transparent;
	border-radius: 100%;
	border: 1px solid currentColor;
	position: relative;
}
.btn-arrow:before {
	content: "";
	display: block;
	width: 7px; 
	height: 7px;
	border-top: 1px solid;
	border-right: 1px solid;
	border-color: currentColor;
	position: absolute;
	top: 4px;
	right: 4px;
	transform: rotate(45deg);
}
.btn-arrow:after {
	content: "";
	display: block;
	width: 7px;
	height: 1px;
	background-color: currentColor;
	position: absolute;
	top: 7px;
	left: 4px;
}
.btn:hover .btn-arrow:before {
}
@media (max-width: 480px) {
	.btn-arrow:before {
	}
	.btn:hover .btn-arrow:before {
	}	
}

/* 丸矢印(大) */
.btn-arrow-l {
	display: block;
	width: 31px;
	height: 31px;
	background-color: transparent;
	border-radius: 100%;
	border: 1px solid currentColor;
	position: relative;
}
.btn-arrow-l:before {
	content: "";
	display: block;
	width: 9px; 
	height: 9px;
	border-top: 1px solid;
	border-right: 1px solid;
	border-color: currentColor;
	position: absolute;
	top: 10px;
	right: 10px;
	transform: rotate(45deg);
}
.btn-arrow-l:after {
	content: "";
	display: block;
	width: 11px;
	height: 1px;
	background-color: currentColor;
	position: absolute;
	top: 14px;
	left: 9px;
}


/* 丸矢印(小)：下向き */
.btn-arrow-d {
	display: block;
	width: 17px;
	height: 17px;
	background-color: transparent;
	border-radius: 100%;
	border: 1px solid currentColor;
	position: relative;
	transform: rotate(90deg);
}
.btn-arrow-d:before {
	content: "";
	display: block;
	width: 7px; 
	height: 7px;
	border-top: 1px solid;
	border-right: 1px solid;
	border-color: currentColor;
	position: absolute;
	top: 4px;
	right: 4px;
	transform: rotate(45deg);
}
.btn-arrow-d:after {
	content: "";
	display: block;
	width: 7px;
	height: 1px;
	background-color: currentColor;
	position: absolute;
	top: 7px;
	left: 4px;
}

/* 外部リンクアイコン：デザイン案に合わせて編集 */
.btn-exit {
	display: block;
	width: 13px;
	height: 13px;
	position: relative;
}
.btn-exit:before,
.btn-exit:after {
	content: "";
	display: block;
	border-color: currentColor;
	position: absolute;
	top: 50%;
}
.btn-exit:before {
	width: 10px;
	height: 10px;
	border: 2px solid;
	right: 0;
	margin-top: -7px;
}
.btn-exit:after {
	width: 10px;
	height: 10px;
	border-left: 1px solid;
	border-bottom: 1px solid;
	right: 3px;
	margin-top: -4px;
}
@media (max-width: 480px) {
	.btn-exit:before {
		right: 15px;
	}
	.btn-exit:after {
		right: 18px;
	}
}

/* ボタンテキスト */
.btn-txt {
	display: block;
	white-space: nowrap;
}

/* 電話番号ボタン */
.btn-tel {
	line-height: 1.2;
	cursor: auto;
}
@media (-ms-high-contrast: none) {
	.btn-tel {
		line-height: 1;
	}
}
.btn-tel a.sp-tel {
	display: block;
	color: #fff;
	
}
.btn-tel span.sp-tel {
	display: block;
	width: 100%;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.btn-tel .btn-icon-tel img {
	display: block;
	width: 14px;
	height: 17px;
	margin-right: 5px;
}


/* 丸矢印(小)：緑背景 ----------------------------*/
.link-arrow-g {
	display: block;
	width: 17px;
	height: 17px;
	background-color: #024503;
	border-radius: 100%;
	border: 1px solid #024503;
	position: relative;
}
.link-arrow-g:before {
	content: "";
	display: block;
	width: 7px; 
	height: 7px;
	border-top: 1px solid;
	border-right: 1px solid;
	border-color: #fff;
	position: absolute;
	top: 4px;
	right: 4px;
	transform: rotate(45deg);
}
.link-arrow-g:after {
	content: "";
	display: block;
	width: 7px;
	height: 1px;
	background-color: #fff;
	position: absolute;
	top: 7px;
	left: 4px;
}

/* 背景色 ----------------------------*/
.bg-beige {
	background-color: #efebdd;
}
.bg-wht {
	background-color: #fff;	
}
.bg-pink {
	background-color: #f3e9e3;
}


/* 背景画像 ------------------------------------------ */
.bg-img {
	width: 100%;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center 50%;
	position: relative;
	/* background-imageは各々のcssで指定 */
}
.bg-img.box-fix {
	height: 400px;	/* 高さを指定 */	
}
.bg-img.box-auto {
	height: auto;	/* 高さは内部コンテンツに従う */
}
.bg-img .box-cont {
	width: 100%;
	z-index: 1;	
}
.bg-img.box-fix .box-cont {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
.bg-img.box-auto .box-cont {
	position: relative;
}

@media (max-width: 480px) {
	.bg-img.box-fix {
		height: 200px;	/* 高さを指定 */	
	}
}

/* 共通見出し */
.common-headline {
	background-image: url(../img/common/bg-paper.jpg);
}
.common-headline.bg-img.box-fix{
	height: 200px;
}
@media (max-width: 480px) {
	.common-headline.bg-img.box-fix{
		height:	100px;
	}
} 


/* 季節プラン */
.ban-season {
	overflow: hidden;
}
#home .ban-season {
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
}
.ban-season a {
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
}
.ban-season a:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-image: url(../img/common/ban-winter2020.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center 50%;
	position: absolute;
	top: 0;
	left: 0;
	transition: transform ease 0.5s;
}

.ban-season a:hover:before {
	transform: scale(1.03);
}

.ban-season a:after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.3);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.ban-season.box-fix {
	height: 300px;	/* 高さを指定 */	
}
#home .ban-season.box-fix {
	height: 360px;	/* 高さを指定 */	
}
@media (max-width: 768px) {
    #home .ban-season.box-fix {
	   height: 300px;	/* 高さを指定 */	
    }
}
@media (max-width: 480px) {
    #home .ban-season.box-fix {
	   height: 280px;	/* 高さを指定 */	
    }
}
.ban-season .box-cont {
	z-index: 2;
}
.ban-season .txt-box {
	line-height: 1.2;
}
@media (max-width: 480px) {
    .ban-season .btnarea .btn {
        max-width: 60%;
    }
}


/* panels-list ------------------------------------------ */
.panels-list {
	display: flex;
	flex-wrap: wrap;
}

.panels-list.interval-30 {
	width: calc(100% + 30px);
	margin: 0 -15px;
}
.panels-list.interval-20 {
	width: calc(100% + 10px);
	margin: 0 -5px;
}

.panels-list.interval-30.line-xs-1 .sbox-panels {
	width: calc(100% - 30px);
}
.panels-list.interval-20.line-xs-1 .sbox-panels {
	width: calc(100% - 20px);
}

.panels-list.interval-30.line-xs-2 .sbox-panels {
	width: calc(50% - 30px);
}
.panels-list.interval-20.line-xs-2 .sbox-panels {
	width: calc(50% - 20px);
}

.panels-list.interval-30.line-xs-3 .sbox-panels {
	width: calc(33.333333% - 30px);
}
.panels-list.interval-20.line-xs-3 .sbox-panels {
	width: calc(33.333333% - 20px);
}

.panels-list.interval-30.line-xs-4 .sbox-panels {
	width: calc(25% - 30px);
}
.panels-list.interval-20.line-xs-4 .sbox-panels {
	width: calc(25% - 20px);
}

.panels-list.interval-30.line-xs-5 .sbox-panels {
	width: calc(20% - 30px);
}
.panels-list.interval-20.line-xs-5 .sbox-panels {
	width: calc(20% - 20px);
}

.panels-list.interval-30 .sbox-panels {
	margin: 0 15px;	
}
.panels-list.interval-20 .sbox-panels {
	margin: 0 10px;	
}

.panels-list .sbox-panels a {
	display: block;
}

@media (min-width: 768px) {
	.panels-list.interval-30.line-sm-1 .sbox-panels {
		width: calc(100% - 30px);
	}
	.panels-list.interval-20.line-sm-1 .sbox-panels {
		width: calc(100% - 20px);
	}
	
	.panels-list.interval-30.line-sm-2 .sbox-panels {
		width: calc(50% - 30px);
	}
	.panels-list.interval-20.line-sm-2 .sbox-panels {
		width: calc(50% - 20px);
	}
	
	.panels-list.interval-30.line-sm-3 .sbox-panels {
		width: calc(33.333333% - 30px);
	}
	.panels-list.interval-20.line-sm-3 .sbox-panels {
		width: calc(33.333333% - 20px);
	}
	
	.panels-list.interval-30.line-sm-4 .sbox-panels {
		width: calc(25% - 30px);
	}
	.panels-list.interval-20.line-sm-4 .sbox-panels {
		width: calc(25% - 20px);
	}
	
	.panels-list.interval-30.line-sm-5 .sbox-panels {
		width: calc(20% - 30px);
	}		
	.panels-list.interval-20.line-sm-5 .sbox-panels {
		width: calc(20% - 20px);
	}		
}
@media (min-width: 1024px) {
	.panels-list.interval-30.line-md-1 .sbox-panels {
		width: calc(100% - 30px);
	}
	.panels-list.interval-20.line-md-1 .sbox-panels {
		width: calc(100% - 20px);
	}
	
	.panels-list.interval-30.line-md-2 .sbox-panels {
		width: calc(50% - 30px);
	}
	.panels-list.interval-20.line-md-2 .sbox-panels {
		width: calc(50% - 20px);
	}

	.panels-list.interval-30.line-md-3 .sbox-panels {
		width: calc(33.333333% - 30px);
	}
	.panels-list.interval-20.line-md-3 .sbox-panels {
		width: calc(33.333333% - 20px);
	}

	.panels-list.interval-30.line-md-4 .sbox-panels {
		width: calc(25% - 30px);
	}
	.panels-list.interval-20.line-md-4 .sbox-panels {
		width: calc(25% - 20px);
	}
	
	.panels-list.interval-30.line-md-5 .sbox-panels {
		width: calc(20% - 30px);
	}		
	.panels-list.interval-20.line-md-5 .sbox-panels {
		width: calc(20% - 20px);
	}		

}
@media (min-width: 1200px) {
	.panels-list.interval-30.line-lg-1 .sbox-panels {
		width: calc(100% - 30px);
	}
	.panels-list.interval-20.line-lg-1 .sbox-panels {
		width: calc(100% - 20px);
	}
	
	.panels-list.interval-30.line-lg-2 .sbox-panels {
		width: calc(50% - 30px);
	}
	.panels-list.interval-20.line-lg-2 .sbox-panels {
		width: calc(50% - 20px);
	}
	
	.panels-list.interval-30.line-lg-3 .sbox-panels {
		width: calc(33.333333% - 30px);
	}
	.panels-list.interval-20.line-lg-3 .sbox-panels {
		width: calc(33.333333% - 20px);
	}

	.panels-list.interval-30.line-lg-4 .sbox-panels {
		width: calc(25% - 30px);
	}
	.panels-list.interval-20.line-lg-4 .sbox-panels {
		width: calc(25% - 20px);
	}

	.panels-list.interval-30.line-lg-5 .sbox-panels {
		width: calc(20% - 30px);
	}
	.panels-list.interval-20.line-lg-5 .sbox-panels {
		width: calc(20% - 20px);
	}
}
@media (max-width: 480px) {
	.panels-list.interval-30 {
		width: calc(100% + 20px);
		margin: 0 -10px;
	}
	.panels-list.interval-20 {
		width: calc(100% + 10px);
		margin: 0 -5px;
	}

	.panels-list.interval-30 .sbox-panels {
		margin: 0 10px;
	}
	.panels-list.interval-20 .sbox-panels {
		margin: 0 5px;
	}
	
	.panels-list.interval-30.line-xs-1 .sbox-panels {
		width: calc(100% - 20px);
	}
	.panels-list.interval-20.line-xs-1 .sbox-panels {
		width: calc(100% - 10px);
	}
	
	.panels-list.interval-30.line-xs-2 .sbox-panels {
		width: calc(50% - 20px);
	}
	.panels-list.interval-20.line-xs-2 .sbox-panels {
		width: calc(50% - 10px);
	}

	.panels-list.interval-30.line-xs-3 .sbox-panels {
		width: calc(33.333333% - 20px);
	}
	.panels-list.interval-20.line-xs-3 .sbox-panels {
		width: calc(33.333333% - 10px);
	}

	.panels-list.interval-30.line-xs-4 .sbox-panels {
		width: calc(25% - 20px);
	}
	.panels-list.interval-20.line-xs-4 .sbox-panels {
		width: calc(25% - 10px);
	}

	.panels-list.interval-30.line-xs-5 .sbox-panels {
		width: calc(20% - 20px);
	}
	.panels-list.interval-20.line-xs-5 .sbox-panels {
		width: calc(20% - 10px);
	}
}

/* col-img */
.panels-list .sbox-panels .col-img {
	overflow: hidden;	
}
.panels-list .sbox-panels .col-img img {
	transition: transform ease 0.28s;	
}
.panels-list .sbox-panels a:hover .col-img img {
	transform: scale(1.1);
}

/* col-txt */
.panels-list .sbox-panels .col-txt {
	position: relative;
	padding: 0 0 20px 0;
}


/* slider ------------------------------------------ */
.slidearea .slider-img {
	position: relative;
}
.slidearea .slider-img .caption {
	display: block;
	width: 100%;
	padding: 10px 15px;
	background-color: rgba(0,0,0,0.4);
	line-height: 1;
	text-align: right;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 1;
}

@media (max-width: 480px) {
	.slidearea .slider-img img {
		height: 220px;
	}
}

/* box-room ------------------------------------------ */
.box-room .room-cont {
	display: flex;
	flex-wrap: wrap;
}
.box-room .room-cont .left-col {
	width: 12.5%;
	padding-left: 2%;
}
.box-room .room-cont .left-col .ttl {
	position: relative;
	line-height: 1;
	-ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
}
.box-room .room-cont .left-col .ttl .txt-combine {
	-webkit-text-combine: horizontal;
	-ms-text-combine-horizontal: all;
	text-combine-upright: all;
}
@media (-ms-high-contrast: none) {
	.box-room .room-cont .left-col .ttl {
		padding-right: 14px;
	}
}
.box-room .room-cont .left-col .ttl:before {
	content: "";
	display: block;
	width: 1px;
	height: 80px;
	background-color: #48760c;
	position: absolute;
	left: 50%;
	top: -100px;
	z-index: 1;	
}
.box-room .room-cont .right-col {
	width: 87.5%;
}
.box-room .room-cont .right-col .room-info,
.hall-cont .room-info {
	flex: 1;
}
.box-room .room-cont .right-col .room-info .list,
.hall-cont .room-info .list {
	display: table;
	table-layout: auto;
	width: 100%;
}
.box-room .room-cont .right-col .room-info .list dt,
.box-room .room-cont .right-col .room-info .list dd,
.hall-cont .room-info .list dt,
.hall-cont .room-info .list dd {
	display: table-cell;
	vertical-align: top;
}
.box-room .room-cont .right-col .room-info .list dt,
.hall-cont .room-info .list dt {
	width: 80px;
	position: relative;
}
.box-room .room-cont .right-col .room-info .list dt:before,
.hall-cont .room-info .list dt:before {
	content: "：";
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1;
}
.box-room .room-cont .right-col .layout {
	width: 40%;
	max-width: 400px;
	margin-left: 5%;
}
.box-room .room-cont .right-col .layout .layout-img {
	position: relative;
	margin-bottom: 5px;
}
.box-room .room-cont .right-col .layout .layout-img a {
	position: relative;
	transition: none;
	transition-delay: 0s;
}
.box-room .room-cont .right-col .layout .layout-img a .plus {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	background-color: rgba(0,0,0,0.1);
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 1;
}
.box-room .room-cont .right-col .layout .layout-img a .plus span {
	display: block;
	width: 15px;
	height: 15px;
	position: relative;
}
.box-room .room-cont .right-col .layout .layout-img a .plus span:before,
.box-room .room-cont .right-col .layout .layout-img a .plus span:after {
	content: "";
	display: block;
	background-color: rgba(0,0,0,0.5);
	position: absolute;
	z-index: 1;
}
.box-room .room-cont .right-col .layout .layout-img a .plus span:before {
	width: 15px;
	height: 1px;
	top: 7px;
	left: 0;
}
.box-room .room-cont .right-col .layout .layout-img a .plus span:after {
	width: 1px;
	height: 15px;
	top: 0;
	left: 7px;
}
.box-room .room-cont .right-col .layout .layout-img:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	border: 1px solid rgba(0,0,0,0.3);
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
}
.box-room .room-cont .right-col .layout .layout-img img {
	background-size: auto 90%;
	transition: none;
}
.box-room .room-cont .right-col .layout .img-select {
	text-align: right;
}
.box-room .room-cont .right-col .layout .img-select .slick-track {
	display: flex;
	justify-content: flex-end;
	width: 100% !important; /* js制御 */
	transform: translate3d(0,0,0) !important /* js制御 */;
}
.box-room .room-cont .right-col .layout .img-select .selector {
	display: inline-block;
	vertical-align: middle;
	min-width: 65px;
	width: auto !important; /* js制御 */
	padding: 3px 0;
	background-color: #b3c598;
	line-height: 1;
	text-align: center;
	white-space: nowrap;
	cursor: pointer;
}
.box-room .room-cont .right-col .layout .img-select .selector:not(:first-child) {
	margin-left: 10px;
}
.box-room .room-cont .right-col .layout .img-select .selector.slick-current {
	background-color: #48760c;
}
.box-room .room-cont .right-col .btnarea .btn:not(:first-child) {
	margin-left: 10px;
}

@media (max-width: 991px) {
	.box-room .room-cont .right-col .btnarea {
		flex-wrap: wrap;
	}
	.box-room .room-cont .right-col .btnarea .btn:not(:last-child) {
		margin-bottom: 10px;
	}
	.box-room .room-cont .right-col .btnarea .btn:not(:first-child) {
		margin-left: 0;
	}
}

@media (max-width: 767px) {
	.box-room .room-cont .right-col .room-info {
		flex: auto;
		margin-bottom: 25px;
	}
	.box-room .room-cont .right-col .layout {
		width: 100%;
		max-width: 400px;
		margin: 0 auto;
	}
}

@media (max-width: 480px) {
	.box-room .room-cont .left-col {
		width: 100%;
		padding-left: 0;
	}
	.box-room .room-cont .left-col .ttl {
		-ms-writing-mode: lr-tb;
	    -webkit-writing-mode: horizontal-tb;
	    writing-mode: horizontal-tb;
		padding-bottom: 30px;
	}
	.box-room .room-cont .left-col .ttl:before {
		width: 40px;
		height: 1px;
		left: 0;
		top: auto;
		bottom: 15px;
	}
	.box-room .room-cont .right-col {
		width: 100%;
	}
	.box-room .room-cont .right-col .room-info .list dt {
		width: 75px;
	}
	.box-room .room-cont .right-col .btnarea .btn .btn-cont .btn-txt {
		white-space: normal;
	}
}

#biyuu .box-room .room-cont .left-col .ttl:before {
	background-color: #fff;
}
#biyuu .box-room .room-cont .right-col .layout .layout-img:before {
	border: 1px solid rgba(255,255,255,0.3);
}
#biyuu .box-room .room-cont .right-col .layout .layout-img a .plus {
	background-color: rgba(255,255,255,0.1);
}
#biyuu .box-room .room-cont .right-col .layout .layout-img a .plus span:before,
#biyuu .box-room .room-cont .right-col .layout .layout-img a .plus span:after {
	background-color: rgba(255,255,255,0.5);
}

/* generic-table ------------------------------------------ */
.generic-table {
	width: 100%;
}
.generic-table .table-item {
	display: flex;
	width: 100%;
}
.generic-table .table-item:not(:last-child) {
	margin-bottom: 2px;
}
.generic-table .table-item dt,
.generic-table .table-item dd {
	padding: 17px 5%;	/* 余白調整 */
	line-height: 2;
	position: relative;
}
.generic-table .table-item dt {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 20%;		/* 幅指定 */
	background-color: #dad4c0;
}
.generic-table .table-item dd {
	margin-left: 2px;
	flex: 1;
	position: relative;
	/* 背景色はclass="bg-xx" */
}
@media (max-width: 767px) {
	.generic-table .table-item {
		flex-wrap: wrap;
	}
	.generic-table .table-item dt,
	.generic-table .table-item dd {
		padding: 13px 5%;	/* 余白調整 */
	}
	.generic-table .table-item dt {
		width: 100%;
	}
	.generic-table .table-item dd {
		flex: none;
		width: 100%;
		margin-left: 0;
		margin-top: 2px;
	}
}
@media (max-width: 480px) {
	.generic-table .table-item dt,
	.generic-table .table-item dd {
		padding: 8px 5%;
	}
}

/* amenity-list ------------------------------------------ */
.amenity-list {
	padding: 30px 0;
	display: flex;
	line-height: 1.2;
}
#biyuu .amenity-list {
	border-top: 1px solid rgba(255,255,255,0.3);
	border-bottom: 1px solid rgba(255,255,255,0.3);
}
.amenity-list .left-col {
	border-right: 1px solid rgba(0,0,0,0.3);
/*	width: 17%;
	max-width: 200px;*/
}
#biyuu .amenity-list .left-col {
	border-right: 1px solid rgba(255,255,255,0.3);
}
.amenity-list .left-col span {
	padding: 5px 15px;
}
.amenity-list .right-col {
	flex: 1;
	padding-left: 30px;
}
.amenity-list .list-item {
	display: flex;
	flex-wrap: wrap;
}
.amenity-list .list-item li {
	padding: 5px 35px 5px 0;
}
@media (max-width: 991px) {
	.amenity-list .left-col {
		width: 150px;
	}	
}

@media (max-width: 767px) {
	.amenity-list {
		padding: 0 20px;
		flex-wrap: wrap;
	}
	#biyuu .amenity-list {
		border-top: none;
		border-bottom: none;
	}
	.amenity-list .left-col {
		width: 100%;
		max-width: none;
		border-right: none;
		border-bottom: 1px solid rgba(0,0,0,0.3);
		padding: 0;
		text-align: left;
	}
	#biyuu .amenity-list .left-col {
		border-right: none;
		border-bottom: 1px solid rgba(255,255,255,0.3);
	}
	.amenity-list .left-col span {
		padding: 15px 0 10px;
	}
	.amenity-list .right-col {
		flex: 100%;
		padding: 10px 0;
	}
}

@media (max-width: 480px) {
	.amenity-list .list-item li {
		width: 100%;
		padding-right: 0;
	}
}


/* notice-list ------------------------------------------ */
.notice li {
    padding-left: 1em;
    text-indent: -1em;
    line-height: 1.5;
    padding-bottom: 5px;
}
p.notice {
    padding-left: 1em;
    text-indent: -1em;
    line-height: 1.5;
}


/* footer ----------------------------*/
.site-footer {
	background: url(../img/common/bg-footer.jpg) center center no-repeat;
	background-size: cover;
	letter-spacing: 0;
}
.site-footer .fcont-left {
	width: calc(100% - 160px);
}
.site-footer .fcont-right {
	width: 160px;
}
@media (max-width: 640px) {
	.site-footer .fcont-left {
		width: 100%;
		order: 2;
	}
	.site-footer .fcont-right {
		order: 1;
        width: 100%;
	}
    .site-footer .fcont-right #tripad .TA_cdsratingsonlynarrow .cdsROW {
        width: 100%;
    }
}

/* 会社情報 */
.site-footer .f-info {
}
.site-footer .f-info > * {
	display: block;
}
.site-footer .f-info .fbox-cname > * {
	display: block;
	line-height: 1;
}
.site-footer .f-info .fbox-cname .flogo-img img {
	width: 151px;
	height: 58px;
}


/* f-add */
.site-footer .f-info .f-add > * {
	display: inline-block;
	vertical-align: middle;
}
.site-footer .f-info .f-add address {
	margin-right: 10px;
}

/* MAP */
.site-footer .to-gmap a {
	padding: 2px 15px;
	background-color: #000;
	color: #fff;
	line-height: 1;
}
.site-footer .to-gmap a:hover {
	background-color: #333;
}


/* f-telfax */
.site-footer .f-info .f-telfax > * {
	display: inline-block;
	vertical-align: bottom;
}
.site-footer .f-info .f-telfax .btn {
	margin-right: 5px;
	max-width: 400px;
}
.site-footer .f-info .f-telfax .btn .btn-txt span {
	display: inline-block;
	vertical-align: baseline;
	padding-left: 20px;
}
@media (max-width: 480px) {
	.site-footer .f-info .f-telfax .btn {
		margin-right: 0;
		max-width: none;
		height: 50px;
	}
	.site-footer .f-info .f-telfax .btn .btn-txt {
		font-size: 2.6rem;
		line-height: 1;
	}
	.site-footer .f-info .f-telfax .btn .btn-txt span {
		display: block;
		padding-left: 0;
		text-align: center;
	}
}

/* SNSアイコン */
.site-footer .f-SNS {
	display: table;
	table-layout: auto;
	margin-left: -7px;
	padding: 13px 0;
}
.site-footer .f-SNS .sns-icon {
	display: table-cell;
	vertical-align: middle;
}
.site-footer .f-SNS .sns-icon a {
	display: block;
	padding: 7px;
	line-height: 1;
}
.site-footer .f-SNS .sns-icon a:hover {
	opacity: 0.8;
}
.site-footer .f-SNS .sns-icon img {
	width: 30px;
	height: 30px;
}
.site-footer .f-SNS .ico-facebook {
	
}
.site-footer .f-SNS .ico-instagram{
	
}
.site-footer .f-SNS .ico-twitter{
	
}

/* ナビゲーション */
.site-footer .f-nav.nav-center {
	text-align: center;
}
.site-footer .f-nav.nav-right {
	text-align: right;
}
.site-footer .f-nav .list {
	letter-spacing: -0.4em;
}
.site-footer .f-nav .list li {
	display: inline-block;
	vertical-align: middle;
	letter-spacing: 0em;
	line-height: 1;
	border-right: 1px solid #333;
}
.site-footer .f-nav .list li:first-child {
	border-left: 1px solid #333;
}
.site-footer .f-nav .list li a {
	white-space: nowrap;
	padding: 0 15px;
	color: #333;
}
.site-footer .f-nav .list li a:hover {
	color: #000;
}

@media (max-width: 640px) {
	.site-footer .f-nav {
		display: block;
	}
	.site-footer .f-nav.nav-center,
	.site-footer .f-nav.nav-right {
		text-align: left;
	}
	.site-footer .f-nav .list li {
		width: 50%;
		margin-bottom: 3px;
	}
	.site-footer .f-nav .list li:nth-child(odd) {
		border-left: 1px solid #333;
	}
	.site-footer .f-nav .list li a {
		display: block;
		padding: 10px;
		white-space: normal;
	}
}

@media (max-width: 480px) {
	.site-footer .f-nav .list li {
		width: 100%;
		border-left: none;
		border-bottom: 1px solid #333;
		border-right: none;
	}
	.site-footer .f-nav .list li:nth-child(odd) {
		border-left: none;
	}
	.site-footer .f-nav .list li:first-child {
		border-top: 1px solid #333;
	}

}

/* tripadvisor */
.cdsROW.cx_brand_refresh .logo img {
	height: 24px;
	padding: 0 !important;
}

/* toTop ----------------------------*/
#toTop {
	position: fixed;
	width: 70px;
	height: 70px;
	bottom: 0;
	right: 0;
	color: #fff;
	cursor: pointer;
	display: none;
	z-index: 999;
	text-align: center;
	background: #024503;
	animation: toTop-animation 0.3s ease forwards;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}
#toTop > span {
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 20px;
	height: 20px;
	border: solid #fff;
	transform: translate(-50%, -20%) rotate(-45deg);
	border-width: 2px 2px 0 0;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}
#toTop:hover > span {
	top: 30%;
}
@media screen and (max-width: 480px) {
	#toTop {
		width: 50px;
		height: 50px;
	}
	#toTop > i {
		line-height: 50px;
		font-size: 2.0rem;
	}
}

@keyframes toTop-animation {
	from{
		opacity: 0;
		transform: translateY(101%);
		-webkit-transform: translateY(101%);
	}
	to{
		opacity: 1;
		transform: translateY(0);
		-webkit-transform: translateY(0);
	}
}

@-webkit-keyframes toTop-animation {
    from {
        opacity: 0;
		-webkit-transform: translateY(101%);
        transform: translateY(101%);
    }
    to {
        opacity: 1;
		-webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

/* trip_ai_container */
#trip_ai_container {
	left: auto !important;
    right: 15px !important;
	top: 70px;
}

@media (max-width: 767px) {
	#trip_ai_container {
	}
}
@media (max-width: 480px) {
	#trip_ai_container {
	    top: 60px;
	}
}

/*talkappibot*/
.talkappibot #talkappi-chat-icon {
    right: 20px !important;
    top: 75px !important;
    z-index: 1;
}

.talkappibot #talkappi-chat-greeting {
    right: 120px !important;
    top: 85px !important; 
    z-index: 1;
}

#live-chat {
    right: 0px !important;   
}





/* 共通アニメーション
========================= */
/* fade in ----------------------------------------*/
.fadein {
  opacity : 0.0;
  transform : translate(0, 50px);
  transition : 800ms;
}
.fadein.activein {
  opacity : 1;
  transform : translate(0, 0px);
}

/* show order ----------------------------------------*/
#showOrder01 .order-box {
	transform: translateX(-10%);
	opacity: 0;
	transition : 100ms;
}