*,
*:after,
*::before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.bt-menu {
	position:fixed;
	z-index :100;
	bottom  :60px;
	left    :0;
	width   :100%;
	height  :auto;
}

.bt-overlay {display:none;}

.bt-menu-trigger {
	position:fixed;
	right   :20px;
	bottom  :10px;
	z-index :100;
	display :block;
	width   :50px;
	height  :50px;
	cursor  :pointer;
}

.bt-menu-trigger span {
	position: absolute;
	top    :50%;
	left   :0;
	display:block;
	width  :100%;
	height :4px;
	background-color: #fff;
	font-size: 0px;
	-webkit-touch-callout: none;
	  -webkit-user-select: none;
	   -khtml-user-select: none;
	     -moz-user-select: none;
	      -ms-user-select: none;
	          user-select: none;
	   -webkit-transition: background-color 0.3s;
	           transition: background-color 0.3s;
}

.bt-menu-trigger span,
.bt-menu-trigger span:before,
.bt-menu-trigger span:after{box-shadow:1px 1px 1px 1px rgba(0,0,0,0.3);}
.bt-menu-open .bt-menu-trigger span {background-color: transparent;box-shadow:none;}

.bt-menu-trigger span:before,
.bt-menu-trigger span:after {
	position: absolute;
	left  : 0;
	width : 100%;
	height: 100%;
	background: #fff;
	content: '';
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}

.bt-menu-trigger span:before {
	-webkit-transform: translateY(-250%);
	transform: translateY(-250%);
}

.bt-menu-trigger span:after {
	-webkit-transform: translateY(250%);
	transform: translateY(250%);
}

.bt-menu-open .bt-menu-trigger span:before {
	-webkit-transform: translateY(0) rotate(45deg);
	transform: translateY(0) rotate(45deg);
}

.bt-menu-open .bt-menu-trigger span:after {
	-webkit-transform: translateY(0) rotate(-45deg);
	transform: translateY(0) rotate(-45deg);
}

/* Show Room Title */
#bt-menu h1{
	position:fixed;
	z-index:10;
	top :15px;
	left:15px;
	font-size:21px;
	color:#ffffff;
	line-height:30px;
	font-weight:normal;
	font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	text-shadow:
		 1px  0px 0px rgba(0,0,0,0.75),
		-1px  0px 0px rgba(0,0,0,0.75),
		 0px  1px 0px rgba(0,0,0,0.75),
		 0px -1px 0px rgba(0,0,0,0.75),
		 1px  1px 0px rgba(0,0,0,0.75),
		-1px  1px 0px rgba(0,0,0,0.75),
		 1px -1px 0px rgba(0,0,0,0.75),
		-1px -1px 0px rgba(0,0,0,0.75),
		-1px -1px 2px rgba(0,0,0,0.5);
	opacity:0;
}

#bt-menu.bt-menu-open h1{
	opacity:1;
	right:240px;
	-webkit-transition:-webkit-transform 0.3s, opacity 0.3s 0.1s;
	        transition:        transform 0.3s, opacity 0.3s;
	-webkit-transform :translate3d(0,0,0);
	        transform :translate3d(0,0,0);
}

/* Map */
.bt-menu .map{
	position:fixed;
	top     :  15px;
	right   :-200px;
	-webkit-transform: translate3d(500%,0,0);
	        transform: translate3d(500%,0,0);
}
.bt-menu .map img{display:block;}

.bt-menu.bt-menu-open .map{
	right   :15px;
	-webkit-transition:-webkit-transform 0.3s, opacity 0.3s 0.1s;
	        transition:        transform 0.3s, opacity 0.3s;
	-webkit-transform :translate3d(0,0,0);
	        transform :translate3d(0,0,0);
}

.bt-menu .map .pins          {position:absolute;top:0;left:0;}
.bt-menu .map .pins li       {position:absolute;display:inline-block;}
.bt-menu .map .pins li a     {opacity:0.5;display:block;width:40px;height:40px;background:url(../map/pin_off.png) no-repeat;-webkit-transition : opacity 0.3s ease; transition : opacity 0.3s ease;}
.bt-menu .map .pins li a span{display:none;}
.bt-menu .map .pins li a:hover span {
	position:fixed;
	bottom  :  0px;
	left    :  0px;
	right   :  0px;
	display :block;
	padding :5px 15px;
	background:rgba(0,0,0,0.75);
	color   :#fff;
}
.bt-menu .map .floorBtn{
	position:absolute;
	left :20px;
	bottom:32px;
}
.bt-menu .map .floorBtn a{
	display:block;
	width:92px;
	height:36px;
	background-repeat:no-repeat;
	text-indent:-9999em;
}

/* １階のページが表示されている時に「２階へ」ボタン表示 */
.bt-menu .map.f01 .floorBtn a      {background:url(../map/f02_off.png);}
.bt-menu .map.f01 .floorBtn a:hover{background:url(../map/f02_on.png);}
/* ２階のページが表示されている時に「１階へ」ボタン表示 */
.bt-menu .map.f02 .floorBtn a      {background:url(../map/f01_off.png);}
.bt-menu .map.f02 .floorBtn a:hover{background:url(../map/f01_on.png);}

/* ピンの設定はbase.css */

/* Thumb List */
.bt-menu ul.thumbList {
	position: fixed;
	right     :0;
	left      :0;
	bottom    :70px;
	margin    :0;
	padding   :10px 80px 10px 10px;
	list-style:none;

	background-color: rgba(0,0,0,0);
	-webkit-transition:background-color 0.3s, height 0s 0.3s;
	        transition:background-color 0.3s, height 0s 0.3s;

}

.bt-menu.bt-menu-open ul.thumbList {
	background-color: rgba(0,0,0,0.3);
	-webkit-transition:background-color 0.3s;
	        transition:background-color 0.3s;
}

.bt-menu ul.thumbList li{
	position   :relative;
	display    :inline-block;
	visibility :hidden;
	width      :120px;
	height     :60px;
	font-size  :0px;
	line-height:60px;
	opacity    :0;
	-webkit-transition: -webkit-transform 0.3s, opacity 0.2s, visibility 0s 0.3s;
	        transition: transform 0.3s, opacity 0.2s, visibility 0s 0.3s;
}

.bt-menu ul.thumbList li{
	-webkit-transform: translate3d(500%,0,0);
	transform: translate3d(500%,0,0);
}


.bt-menu.bt-menu-open ul.thumbList li {
	visibility: visible;
	opacity: 1;
	-webkit-transition: -webkit-transform 0.3s, opacity 0.3s 0.1s;
	transition: transform 0.3s, opacity 0.3s;
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
}

.bt-menu ul.thumbList li a {
	position:relative;
	display: block;
	color: transparent;
	text-decoration: none;
	opacity:0.5;
	padding:2px;
	border:solid 1px transparent;
	transition: transform 0.3s, opacity 0.2s, visibility 0s 0.3s;
}

.bt-menu ul.thumbList li img{display: block;width:100%;height:auto;}

.bt-menu ul.thumbList li a.current,
.bt-menu ul.thumbList li a:hover {opacity:1;border-color:#f0f0f0;}


.bt-menu ul.thumbList li a span{
	position:absolute;
	top   :2px;
	right :2px;
	bottom:2px;
	left  :2px;
	display:block;
	padding:10px;
	background:#000;
	font-size:13px;
	color:#fff;
	line-height:1.2em;
	opacity:0;
	-webkit-transition: 0.2s ease-in-out;
	   -moz-transition: 0.2s ease-in-out;
	     -o-transition: 0.2s ease-in-out;
	        transition: 0.2s ease-in-out;
}

.bt-menu ul.thumbList li a:hover span{
	opacity:0.8;
}

@media screen and (max-height: 31.125em) {
	.bt-menu ul.thumbList li a:before {font-size: 32px;}
	.bt-menu ul.thumbList li {width: 60px;}
}

@media screen and (max-device-width:599px) {
	.map                         {display:none;}
	#bottomLine                  {bottom:120px;height:50px;}
	#bottomLine h1               {font-size:24px;line-height:36px;}
	#bottomLine .thumbList li img{width:100px;height:50px;}
}