@charset "UTF-8";
.mapboxgl-canvas-container {
	z-index: 2;
	position: absolute;
}
.mapboxgl-popup {
	z-index: 3;
	position: absolute;
}
.mapboxgl-control-container {
	z-index: 4;
	position: relative;
}
#info-window {
	width: 100%;
	min-width: 300px;
	color: #333;
	overflow: hidden;
}
#info-window .photo {
	float: left;
	margin-right: 8px;
}
#info-window .shop-name {
	margin-bottom: 3px;
}
#info-window .name {
	font-size: 12px;
	font-weight: bold;
	line-height: 110%;
}
#info-window .branch {
	font-size: 11px;
	line-height: 100%;
	margin-top: 2px;
}
#info-window .address, #info-window .tel {
	font-size: 11px;
	line-height: 120%;
}
#info-window .stat {
	font-size: 11px;
	line-height: 12px;
}
#info-window .point {
	color: #f93;
}
#map-book {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}
#map-main {
	width: calc(100% - 10px - 200px);
	margin-right: 10px;
	position: relative;
}
#map-main, #map-sidebar {
	height: 500px;
}
#map {
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
}
#map-sidebar {
	width: 200px;
	table-layout: fixed;
	border-collapse: collapse;
}
#map-sidebar .pack {
	padding: 8px;
	background: #f6f6f6;
}
#map-sidebar .ad {
	vertical-align: top;
	height: 174px;
}
#map-stars {
	padding-bottom: 6px;
}
#map-stars ul {
	height: 100%;
	overflow-y: scroll;
	overflow-x: hidden;
}
#map-stars li {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
	width: 100%;
	font-size: 11px;
}
#map-stars li i {
	cursor: pointer;
	width: 16px;
	height: 16px;
	display: inline-block;
	color: #e9ae0b;
	text-align: left;
}
#map-icon-info {
	height: 100px;
}
#map-icon-info .title {
	font-weight: bold;
	margin-bottom: 2px;
}
#map-icon-info table {
	margin-bottom: 6px;
	font-size: 10px;
}
#map-icon-info .icons {
	display: flex;
}
#map-icon-info .icons li {
	text-align: center;
}
#map-icon-info .icons img {
	width: 20px;
	height: auto;
	margin-bottom: 2px;
}
#map-icon-info .icons p {
	line-height: 120%;
	font-size: 10px;
}
#color-pattern {
	width: 100%;
	height: 16px;
}

#marker-info {
	padding: 10px;
	border-radius: 0 0 8px 8px;
	background: #dec672;
	text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.5);
	font-size: 11px;
	border-top: 1px solid #b3a25e;
	margin-bottom: 10px;
}
#marker-info table {
	width: 380px;
}
#marker-info td.high, #marker-info td.low {
	font-size: 12px;
	padding-top: 4px;
}
#marker-info td.high {
	text-align: left;
}
#marker-info td.low {
	text-align: right;
}
#marker-info table, #marker-info .icon {
	float: left;
}
#marker-info .icon {
	margin-left: 40px;
}
#marker-info .icon img {
	width: 24px;
	height: auto;
}
#marker-info .icon p {
	font-size: 12px;
	margin-left: 4px;
	display: inline;
	vertical-align: middle;
}
#btn-map-pref {
	display: inline-block;
	border-radius: 5px;
	padding: 6px;
	border: 1px solid rgba(0, 0, 0, 0.1);
	background: #fff;
	color: #666;
	box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.1);
	font-size: 18px;
	position: absolute;
	right: 10px;
	bottom: 10px;
	z-index: 2;
}
#btn-map-pref:hover {
	background: #f1f1f1;
}
#info-window .photo img {
	width: 80px;
	height: 80px;
}
#map-barrier {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
	background: #000;
	z-index:4;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}
#map-pref {
	z-index: 100;
	width: 460px;
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	z-index:5;
	padding: 20px;
	border-radius: 8px;
	background: #fff;
}