@charset "utf-8";

/* おすすめ情報（回遊ボタン） */
#kaiyu_banner {
	position: fixed;
	left: 10px;
	bottom: 10px;
	z-index: 90;
}

.kaiyu_box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
	border: 1px solid #cccccc;
	background: #ffffff;
	color: #000000;
	border-radius: 60px;
	-webkit-box-sizing: content-box;
	        box-sizing: content-box;
}
#kaiyu_banner.open .kaiyu_box {
	border-radius: 60px 20px 20px 60px;
}

.kaiyu_ttl {
	width: 120px;
	height: 120px;
}
#btn_kaiyu_open {
	display: block;
	width: 120px;
	height: 150px;
	margin: 0px;
	padding: 0px;
	border: none;
	background: none;
	color: inherit;
	line-height: 1;
	position: relative;
	top: -30px;
}

#btn_kaiyu_open img {
	max-width: 100%;
	height: auto;
}
#btn_kaiyu_open span.open,
#btn_kaiyu_open span.close {
	position: absolute;
	bottom: 15px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
	-webkit-transition: left 0.5s;
	-o-transition: left 0.5s;
	transition: left 0.5s;
}
#btn_kaiyu_open span.close {
	display: none;
}

#btn_kaiyu_open:hover span.open {
	left: calc(50% + 10px);
}
#btn_kaiyu_open:hover span.close {
	left: calc(50% - 10px);
}

#kaiyu_banner.open #btn_kaiyu_open span.open {
	display: none;
}
#kaiyu_banner.open #btn_kaiyu_open span.close {
	display: block;
}

.kaiyu_list {
	display: none;
	max-width: calc(100vw - 200px);
	border-radius: 0px 20px 20px 0px;
	overflow: hidden;
}
#kaiyu_banner.open .kaiyu_list {
	display: block;
}

.kaiyu_list_box {
	padding: 20px;
}
.kaiyu_list_box2 {
	margin: 0px;
	padding: 0px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}
.kaiyu_list_box2 a {
	display: inline-block;
	vertical-align: top;
	width: 190px;
	max-width: calc(100% - 20px);
	margin: 10px;
}
.kaiyu_list_box2 img {
	width: 100%;
	height: auto;
	vertical-align: top;
}

/* キーボード操作 */
#btn_kaiyu_close {
	display: block;
	width: 0px;
	height: 0px;
	margin: 0px;
	padding: 0px;
	border: none;
	background: none;
	color: inherit;
	text-align: left;
	text-indent: -9999em;
	overflow: hidden;
	position: absolute;
	bottom: 0px;
	right: 0px;
}


/* ==================================================
スマートフォン
================================================== */
@media screen and (max-width: 1080px) {

	#kaiyu_banner {
		display: none;
		position: fixed;
		top: auto;
		left: 0px;
		right: 0px;
		bottom: 0px;
		z-index: 998;
		border: 5px solid #20486e;
		border-bottom-width: 75px;
		background: #f6f6f6;
		width: 100%;
		max-height: 100vh;
		max-height: 100dvh;
		overflow-y: auto;
		-ms-scroll-chaining: none;
		    overscroll-behavior: none;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		padding: 35px 25px;
		-webkit-box-shadow: 0px 0px 100vh 100vh rgba(0,0,0,0.75);
		        box-shadow: 0px 0px 100vh 100vh rgba(0,0,0,0.75);
	}
	@media screen and (max-width: 370px) {
		#kaiyu_banner {
			padding: 35px 10px;
		}
	}
	.spm_kaiyu_open #kaiyu_banner {
		display: block;
	}

	.kaiyu_box,
	#kaiyu_banner.open .kaiyu_box {
		display: block;
		border: none;
		background: none;
		color: inherit;
		border-radius: 0px;
	}

	.kaiyu_ttl,
	#btn_kaiyu_close {
		display: none !important;
	}

	.kaiyu_list,
	#kaiyu_banner.open .kaiyu_list {
		display: block;
		max-width: none;
		border-radius: 0px;
	}

	.kaiyu_list_box {
		padding: 0px;
	}
	.kaiyu_list_box2 {
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}

}
/* ==================================================
スマートフォン ここまで
================================================== */