@charset "utf-8";




/* ページ内リンク関連
****************************************************************************/
#page_menu li{
	min-width: 24.5%;
}
@media screen and (max-width: 979px) {
}
@media screen and (max-width: 768px) {
	#page_menu li{
		min-width: 49.5%;
	}
}
@media screen and (max-width: 620px) {
}
@media screen and (max-width: 479px) {
}

/* 一覧
****************************************************************/
.shop_list{
	text-align: left;
	color: #353535;
}
.shop_list li{
	padding: 20px 0;
	border-bottom: 1px solid #353535;
	display: table;
}

.shop_list .photo{
	width: 22%;
	text-align: center;
	display: table-cell;
	vertical-align: top;
}
.shop_list .photo img{
	margin: 0 auto;
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}
.shop_list .txt{
	padding: 0 0 0 2%;
	width: 76%;
	display: table-cell;
	vertical-align: middle;
}
.shop_list .shopname{
	padding: 10px 0 5px 0;
	font-size: 16px;
	font-weight: bold;
	border-bottom: 1px solid #c2c2c2;
}
.shop_list .txt .shopname a{
	text-decoration: none;
	color: #353535;
}
.shop_list .txt .shopname a:hover{
	text-decoration: underline;
}

.shop_list .shop_adrs{
	float: left;
}
.shop_list .shop_time{
	float: right;
}
.shop_list .txt p{
	padding: 5px 15px;
	display: inline-block;
	min-width: 8em;
}
.shop_list .ttl{
	padding: 5px 20px 5px 40px;
	background-color: #ccc;
	background-position: left 10px center;
	background-repeat: no-repeat;
	font-weight: normal;
	display: inline-block;
}
.shop_list .shop_adrs .ttl{
	background-image: url(../../img/shops/icon_map.png);
}
.shop_list .shop_time .ttl{
	background-image: url(../../img/shops/icon_time.png);
}

/* ボタン */
.shop_list .btn_detail {
	margin-top: 10px;
	text-align: right;
	display: block;
}
.shop_list .btn_detail a{
	margin: 0 0 0 auto;
	padding: 5px 35px 5px 20px;
	text-decoration: none;
	background: #333333 url(../../img/common/arrow_right_white.png) no-repeat right 15px center;
	display: inline-block;
	color: #FFF;
}

@media screen and (max-width: 979px) {
}
@media screen and (max-width: 820px) {
	.shop_list .shop_adrs,
	.shop_list .shop_time{
		margin-bottom: 7px;
		float: none;
	}
	.shop_list .ttl{
		width: 5em;
	}
	.shop_list .txt p{
		padding: 5px;
		min-width: inherit;
	}
}
@media screen and (max-width: 768px) {
}
@media screen and (max-width: 620px) {
}
@media screen and (max-width: 479px) {
	.shop_list li,
	.shop_list .photo,
	.shop_list .txt{
		width: 100%;
		display: block;
	}
	.shop_list .txt{
		padding: 0;
	}
	.shop_list .btn_detail {
		text-align: center;
	}
}

/* 店舗詳細
****************************************************************/
.shop_detail{
	font-size: 14px;
}
.shop_detail .frameShopTitle{
	margin-bottom: 10px;
	width: 100%;
	height: 280px;
	position: relative;
	overflow: hidden;
	background: #001c4e;
}
.shop_detail .frameShopTitle .shop_img{
	position: absolute;
	top: 0;
	right: 0;
	width: 650px;
	height: auto;
	display: block;
}
.shop_detail .frameShopTitle .frame{
	position: absolute;
	top: -60px;
	left: -20px;
	width: 54.5%;
	height: 150%;
	background: #001c4e;
	color: #FFF;
	transform:rotate(9deg);
}
.shop_detail .frameShopTitle .frame .txt{
	padding: 140px 30px 0 100px;
	transform:rotate(-9deg);
}
.shop_detail .frameShopTitle .frame .txt h2{
	font-size: 30px;
}
.shop_detail .frameShopTitle .frame .txt .sns_icon{
	margin-top: 20px;
	text-align: center;
}
.shop_detail .frameShopTitle .frame .txt .sns_icon li{
	margin: 5px;
	display: inline-block;
}

@media screen and (max-width: 979px) {
	.shop_detail .frameShopTitle .frame .txt{
		padding: 140px 30px 0 60px;
	}
}
@media screen and (max-width: 768px) {
.shop_detail .frameShopTitle .frame{
	width: 60%;
}
	.shop_detail .frameShopTitle .frame .txt{
		padding: 140px 30px 0 30px;
	}
	.shop_detail .frameShopTitle .frame .txt h2{
		font-size: 24px;
	}
}
@media screen and (max-width: 620px) {
	.shop_detail .frameShopTitle .frame .txt h2 span{
		display: block;
	}
}
@media screen and (max-width: 479px) {
	.shop_detail .frameShopTitle{
		height: auto;
		position: static;
	}
	.shop_detail .frameShopTitle .shop_img{
		position: static;
		height: auto;
	}
	
	.shop_detail .frameShopTitle .frame{
		position: static;
		top: 0px;
		left: 0;
		width: 100%;
		height: auto;
	}
	.shop_detail .frameShopTitle .frame .txt{
		padding: 20px;
	}
	.shop_detail .frameShopTitle .frame .txt h2 span{
		display: inline-block;
	}
}

.frameShopInformation{
	margin-top: 30px;
}
.frameShopInformation h3{
	margin-bottom: 10px;
	font-size: 24px;
	font-weight: normal;
}
.frameShopInformation .frameInfo{
	width: 58%;
	float: left;
}
.frameShopInformation .framePhoto{
	width: 41%;
	float: right;
}
.frameShopInformation .framePhoto img{
	width: 49%;
	height: auto;
	display: inline-block;
}
.frameShopInformation .framePhoto img.shop_img{
	width: 100%;
	height: auto;
	display: inline-block;
}

.frameShopInformation table.line_btm{
	border-top: 1px solid #d7d7d7;
}
.frameShopInformation table.line_btm th{
	padding-left: 50px;
	font-weight: normal;
	vertical-align: top;
	background-position:  left 20px top 18px;
	background-repeat: no-repeat;
}
.frameShopInformation table.line_btm th.i_map{
	background-image: url(../../img/shops/icon_map.png);
}
.frameShopInformation table.line_btm th.i_tel{
	background-image: url(../../img/shops/icon_tel.png);
}
.frameShopInformation table.line_btm th.i_fax{
	background-image: url(../../img/shops/icon_fax.png);
}
.frameShopInformation table.line_btm th.i_time{
	background-image: url(../../img/shops/icon_time.png);
	background-position:  left 20px top 16px;
}
.frameShopInformation table.line_btm th.i_item{
	background-image: url(../../img/shops/icon_item.png);
	background-position:  left 20px top 17px;
}

.frameMap{
	margin: 25px 0 15px 0;
	width: 100%;
	height: 500px;
	border: 1px solid #7f7f7f;
}
.frameMap iframe{
	width: 100%;
	height: 100%;
}


@media screen and (max-width: 979px) {
}
@media screen and (max-width: 768px) {
	.frameShopInformation .frameInfo,
	.frameShopInformation .framePhoto{
		margin-bottom: 20px;
		width: 100%;
		float: none;
	}
	.frameShopInformation .framePhoto img{
		width: 24%;
	}
}
@media screen and (max-width: 620px) {
	.frameShopInformation table.line_btm th{
		background-position:  left 5px top 18px;
		padding-left: 30px;
	}
	.frameShopInformation table.line_btm th.i_time{
		background-position:  left 5px top 16px;
	}
	.frameShopInformation table.line_btm th.i_item{
		background-position:  left 5px top 17px;
	}
	.frameShopInformation .framePhoto img{
		width: 49%;
	}
}
@media screen and (max-width: 479px) {
}
