@charset "UTF-8";

/* !Clearfix
---------------------------------------------------------- */
#map_navi,
.area_detail01,
#shop_wrap01,
#shop_pic ul,
.ico_list01 {
	display: block;
	min-height: 1%;
}

#map_navi:after,
.area_detail01:after,
#shop_wrap01:after,
#shop_pic ul:after,
.ico_list01:after {
	clear: both;
	content:".";
	display: block;
	height: 0;
	visibility: hidden;
}

* html #map_navi,
* html .area_detail01,
* html #shop_wrap01,
* html #shop_pic ul,
* html .ico_list01 {
	height: 1%;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}

/* !共通
---------------------------------------------------------- */
.h2_basic02 {
	margin: 0 0 8px 0;
}

/* main */
#main {
	width: 100%;
	font-size: 1.2rem;
}
	#main article {
		margin: 0 0 45px 0;
	}

/* ico_list01 */
#main .ico_list01 {
	margin: 5px 0 0 0;
}
	#main .ico_list01 li {
		display: block;
		float: left;
		margin: 5px 10px 0 0;
		padding: 0 4px 0 4px;
		background: #f0f0f0;
		color: #444444;
		font-size: 1rem;
	}

@media screen and (min-width:1024px) {
.h2_basic02 {
	margin: 0 0 34px 0;
	padding: 0 0 10px 0;
	border-bottom: 2px solid #dedede;
}

/* breadcrumb */
#breadcrumb {
	width: 940px;
	margin: 0 auto;
}

/* main */
#main {
	float: none;
	width: 940px;
	margin: 0 auto;
	font-size: 1.6rem;
}
	#main article {
		margin: 0 0 0 0;
	}

/* ico_list01 */
#main .ico_list01 {
	margin: 4px 0 0 0;
}
	#main .ico_list01 li {
		margin: 10px 10px 0 0;
		font-size: 1.2rem;
	}
}

/* !店舗案内
---------------------------------------------------------- */
		#map_wrap01 {
			position: relative;
			max-width: 580px;
			margin: 0 auto;
		}
			#map_wrap01 .map_btn01 a {
				position: absolute;
				padding: 2px 6px 1px 6px;
				font-size: 1.1rem;
			}
			#map_wrap01 .map01 {
				top: 61%;
				left: 72%;
			}
			#map_wrap01 .map02 {
				top: 65%;
				left: 36%;
			}
			#map_wrap01 .map03 {
				top: 28%;
				right: 0;
			}
			#map_wrap01 .map04 {
				top: 51%;
				left: 41%;
			}
			#map_wrap01 .map05 {
				top: 56%;
				left: 8%;
			}
			#map_wrap01 .map06 {
				top: 78%;
				left: 0;
			}
			#shop_list01 dl {
				margin: 14px 0 0 0;
			}
					#shop_list01 dt a:before {
						display: inline-block;
						float: left;
						content: "";
						width: 0.4em;
						height: 0.4em;
						margin: 0.5em 0.4em 0 0;
						border-top: 2px solid #ffb400;
						border-right: 2px solid #ffb400;
						-webkit-transform: rotate(45deg);
						-ms-transform: rotate(45deg);
						transform: rotate(45deg);
					}
				#shop_list01 dd {
					margin: 4px 0 0 12px;
				}
.shopguide #main h3 {
	margin: 34px 0 15px 0;
	padding: 5px 0 3px 0;
	border-top: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	font-weight: bold;
	font-size: 1.4rem;
}
.shopguide #main h4 {
	margin: 20px 0 10px 0;
	padding: 3px 10px 1px 10px;
	background: #f0f0f0;
	font-weight: bold;
	font-size: 1.4rem;
}
		.area_detail01 .wrap01 {
			position: relative;
			margin: 10px 0 0 0;
			padding: 10px 10px 15px 15px;
			border: 1px solid #dedede;
			font-size: 1rem;
		}
		.area_detail01 .wrap01 h5 {
			margin: 0 0 3px 0;
			font-weight: bold;
			font-size: 1.4rem;
		}
.shopguide #main .btn_wrap01 .btn_basic01 {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	background: none;
	border: none;
}
.shopguide #main .btn_wrap01 .btn_basic01:before {
	display: inline-block;
	position: absolute;
	top: 44%;
	right: 10px;
	content: "";
	width: 0.4em;
	height: 0.4em;
	right: 10px;
	margin: 0.5em 0.4em 0 0;
	border-top: 2px solid #444444;
	border-right: 2px solid #444444;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
	.shopguide #main .btn_wrap01 span {
		display: none;
	}

@media screen and (min-width:480px) {
			#map_wrap01 .map_btn01 a {
				padding: 3px 10px 3px 10px;
				font-size: 1.2rem;
			}
			#map_wrap01 .map01 {
				top: 61%;
				left: 72%;
			}
			#map_wrap01 .map02 {
				top: 67%;
				left: 40%;
			}
			#map_wrap01 .map03 {
				top: 33%;
				right: 10%;
			}
			#map_wrap01 .map04 {
				top: 51%;
				left: 46%;
			}
			#map_wrap01 .map05 {
				top: 59%;
				left: 18%;
			}
			#map_wrap01 .map06 {
				top: 78%;
				left: 3%;
			}
}

@media screen and (min-width:640px) {
			#map_wrap01 .map_btn01 a {
				padding: 3px 10px 3px 10px;
				font-size: 1.6rem;
			}
			#map_wrap01 .map01 {
				top: 62%;
				left: 72%;
			}
			#map_wrap01 .map02 {
				top: 67%;
				left: 39%;
			}
			#map_wrap01 .map03 {
				top: 36%;
				left: 62%;
				right: auto;
			}
			#map_wrap01 .map04 {
				top: 53%;
				left: 47%;
			}
			#map_wrap01 .map05 {
				top: 59%;
				left: 17%;
			}
			#map_wrap01 .map06 {
				top: 81%;
				left: 6%;
			}
}

@media screen and (min-width:1024px) {
.shopguide #main h3 {
	margin: 82px 0 15px 0;
	padding: 8px 0 7px 0;
	font-size: 2.6rem;
}
.shopguide #area01 h3 {
	margin: 41px 0 15px 0;
}
.shopguide #main h4 {
	margin: 30px 0 20px 0;
	padding: 4px 10px 3px 10px;
	font-size: 1.6rem;
}
	#main #map_wrap01 {
		float: left;
		width: 580px;
	}
	#main #shop_list01 {
		float: left;
		margin: 0 0 0 14px;
		font-size: 1.4rem;
	}
		#main #shop_list01 dl {
			padding: 0 0 15px 0;
		}
		.area_detail01 .wrap01 {
			float: left;
			box-sizing: border-box;
			width: 32%;
			margin: 13px 2% 0 0;
			padding: 15px 20px 20px 20px;
			font-size: 1.2rem;
		}
		.area_detail01 .wrap01:nth-child(3n) {
			margin: 13px 0 0 0;
		}
		.area_detail01 .wrap01 h5 {
			margin: 0 0 11px 0;
			font-size: 1.6rem;
		}
			.shopguide #main .btn_wrap01 {
				margin: 20px 0 0 0;
				text-align: right;
			}
				.shopguide #main .btn_wrap01 .btn_basic01 {
					display: inline-block;
					position: relative;
					padding: 0 16px 0 15px;
					top: auto;
					left: auto;
					width: auto;
					height: auto;
					background: #ffd553;
					border: 2px solid #ffd553;
					font-size: 1.6rem;
				}
				.shopguide #main .btn_wrap01 .btn_basic01:hover {
					background: #ffffff;
				}
				.shopguide #main .btn_wrap01 .btn_basic01:before {
					position: relative;
					top: auto;
					right: auto;
					float: left;
					margin: 0.45em 0.5em 0 0;
					border-top: 2px solid #ffffff;
					border-right: 2px solid #ffffff;
				}
				.shopguide #main .btn_wrap01 .btn_basic01:hover:before {
					border-top: 2px solid #ffb400;
					border-right: 2px solid #ffb400;
				}
					.shopguide #main .btn_wrap01 span {
						display: inline;
					}
}

/* !店舗詳細
---------------------------------------------------------- */
.shop_detail .txt_wrap01,
.shop_detail #businesshours_parking,
.shop_detail #shop_access {
	font-size: 1.4rem;
}
#shop_wrap01 {
	margin: 0 0 13px 0;
}
#shop_pic .mainImage {
	border: 1px solid #dedede;
}
#shop_pic ul {
	max-width: 512px;
	margin: 0 0 15px 0;
}
	#shop_pic li {
		float: left;
		width: 17%;
		max-width: 100px;
		margin: 3.75% 0 0 3.75%;
	}
	#shop_pic li:first-child {
		margin: 3.75% 0 0 0;
	}
		#shop_pic li img {
			opacity: 0.6;
			border: 1px solid #dedede;
			cursor: pointer;
		}
		#shop_pic .activeimg {
			opacity: 1;
		}
.txt_wrap01 {
	margin: 10px 0 0 0;
}
	.txt_wrap01 p {
		margin: 0 0 22px 0;
	}

/* favorite_wrap */
.favorite_wrap {
	margin-bottom: 30px;
}
.favorite_wrap > *:first-child {
	margin-bottom: 10px;
}

.fb-share-button {
	line-height: 0;
}
/* btn_favorite01 */
.btn_favorite01 {
	width: 100%;
	font-size: 1.6rem;
	padding-left: 25px;
	padding-right: 25px;
}
/* btn_favorite01 追加済み */
span.btn_favorite01 {
	display: inline-block;
	box-sizing: border-box;
	width: 100%;
	background: #ffffff;
	font-size: 1.6rem;
	text-align: center;
	cursor: auto;
	color: #000;
}
.btn_favorite01:before {
	width: 26px;
	height: 23px;
	margin: 0 0.5em -0.3em 0;
}
	#businesshours_parking dt {
		margin: 0 -10px 0 -10px;
		padding: 5px 10px 5px 10px;
		background: #f0f0f0;
		border-top: 1px solid #dedede;
		border-bottom: 1px solid #dedede;
		font-weight: bold;
	}
	#businesshours_parking dd {
		padding: 15px 0 15px 0;
	}
		#businesshours_parking li {
			margin: 22px 0 0 0;
		}
#shop_access dl {
	margin: 0 0 13px 0;
}
	#shop_access dt {
		margin: 0 -10px 0 -10px;
		padding: 25px 10px 10px 10px;
		border-top: 1px solid #dedede;
		font-weight: bold;
	}

@media screen and (min-width:1024px) {
.shop_detail .txt_wrap01,
.shop_detail #shop_access {
	font-size: 1.6rem;
}
#shop_wrap01 {
	margin: 0 0 25px 0;
}
#shop_pic {
	float: left;
	max-width: 376px;
	margin: 0 0 0 0;
}
#detail_txt01 {
	float: right;
	max-width: 523px;
}
.shop_detail #main .ico_list01 {
	margin: 0 0 0 0;
}
.shop_detail #main .ico_list01 li {
	margin: 0 5px 10px 0;
}
	#businesshours_parking dl {
		display: table;
		width: 100%;
	}
		#businesshours_parking dt,
		#businesshours_parking dd {
			display: table-cell;
			border: 1px solid #dedede;
			border-top: none;
			padding: 10px 40px 10px 40px;
		}
		#businesshours_parking dl:first-child dt,
		#businesshours_parking dl:first-child dd {
			border-top: 1px solid #dedede;
		}
		#businesshours_parking dt {
			width: 27%;
			margin: 0 0 0 0;
			border-right: none;
			background: #f0f0f0;
			font-weight: bold;
		}
		#businesshours_parking dd {
			width: 73%;
		}
#shop_access dl {
	display: table;
	margin: 34px 0 12px 0;
}
	#shop_access dt,
	#shop_access dd {
		display: table-cell;
	}
	#shop_access dt {
			width: 110px;
			margin: 0 0 0 0;
			padding: 0 0 0 0;
			border-top: none;
	}
	#shop_access iframe {
		height: 300px;
	}

	/* favorite_wrap */
	.favorite_wrap {
		margin-bottom: 0;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-justify-content: space-between;
		-ms-justify-content: space-between;
		justify-content: space-between;
		-webkit-align-items: center;
		-ms-align-items: center;
		align-items: center;
	}
	.favorite_wrap > *:first-child {
		margin-bottom: 0;
	}
}

.favorite_shop_sns_wrap {
	display: table;

	margin: 0;
	padding: 0;

}
.favorite_shop_sns_wrap ul {
	display: table-cell;
	vertical-align: middle;
}
.favorite_shop_sns_wrap ul li {
	display: inline-block;
	margin: 0 0 0 5px;
	vertical-align: top;
}
.favorite_shop_sns_wrap ul li:first-child {
	margin: 0 0 0 0;
	padding: 3px 0 0 0;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.favorite_shop_sns_wrap ul li:first-child:hover {
	opacity: 0.75 !important;
}
.favorite_shop_sns_wrap .fa-facebook-official {
	color: #3b579d;
	font-size: 35px;
}
.favorite_shop_sns_wrap .fa-twitter {
	color: #55acee;
	font-size: 37px;
}
.favorite_shop_sns_wrap p {
	display: table-cell;
	vertical-align: middle;
}
.favorite_shop_sns_wrap p button {
	width: 100%;
	font-size: 1.2rem;
}
