
/* 店舗一覧 */
.e_list{
	margin-bottom:70px;
}
.e_list > li{
	border: 5px solid #FBD8A4;
	padding:10px;
	display:flex;
	justify-content: space-between;
	margin-bottom:10px;
}

.search + form{
	margin: 35px 0 0px;
}

.page_view,
.page_view p,
.page_view div{
	text-align:center;
}
.side{
	width:300px;
	overflow: hidden;
	margin:0 0 0px;
}
.side .label{
	display:block;
}
.side .label p{
	background:#FBD8A4;
	width:30%;
	text-align:center;
}
.side .img_box{
	margin-top:10px;
}
.side .img_box img{
	display:block;
	width:100%;
	min-width:100%;
	margin-bottom:10px;
}
.side .main_img{
	margin-top:0px;
}
.side .main_img img{
	width: auto;
	min-width: auto;
	max-width: 100%;
}
.side .sub_area{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
	.side .sub_area:after{
		content:"";
		display:inline-block;
		width:30%;
	}
.side .sub_area li{
	width:30%;
}

.calendar{
	width: 230px;
	margin: 0 auto;
}
.calendar p{
	color:#F62E00;
	text-align:center;
	font-weight:bold;
}
.calendar table{
	width:100%;
	border:1px solid #F89900;
}
.calendar tr{
	border-bottom:1px solid #F89900;
}
.calendar th,
.calendar td{
	text-align:center;
}
.calendar td span,
.calendar td a{
	display:block;
	color:#F62E00;
}
.calendar .month,
.calendar ul{
	background:#F89900;
	color:#fff;
	text-align:center;
	padding: 6px 0;
}
.calendar .month a{
	color:#fff;
}

.e_info{
	width:calc(100% - 310px);
}
.e_info .shop_logo{
	max-height:100px;
	margin: 0 0 5px;
}
.e_info h2{
	font-size:20px;
	padding:0;
	margin-bottom:0px;
}
.e_info h2 a{
	color:#2600FD;
	border-bottom:1px solid #2600FD;
}
.e_info dl{
	margin: 0px 12px 10px 4px;
	height: 125px;
	overflow: hidden;
	position: relative;
}
	.e_info dl:after{
		content: "";
		display: block;
		position: absolute;
		bottom: 0;
		height: 22px;
		width: 100%;
		background: -moz-linear-gradient(top,  rgba(255,255,255,0) 0%, rgba(255,255,255,0.62) 27%, rgba(255,255,255,1) 100%);
		background: -webkit-linear-gradient(top,  rgba(255,255,255,0) 0%,rgba(255,255,255,0.62) 27%,rgba(255,255,255,1) 100%);
		background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,0.62) 27%,rgba(255,255,255,1) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=0 );
	}
.e_info dt{
	color: #F62E00;
	font-weight: bold;
	background: #FDE9D2;
	padding: 0 20px;
	margin: 0 0 0px;
	border-radius: 5px;
	text-align: center;
}

.e_info dd{
	margin:0 0 0px 10px;
}
a.to_detail{
	display: inline-block;
	background: #F62E00;
	color: #fff;
	padding: 0px 10px;
	font-size: 14px;
	border-radius: 7px;
	float: right;
	margin: 0 0 0px;
}
	a.to_detail:hover{
		background:#F7A241;
	}

a.tel {
	font-weight: bold;
}

.e_info dd a.tel:before {
	content: none;
}

.list_map {
	width: 45%;
}
.list_map > iframe{
	width: 100%;
}

/* 表示切替ボタン */
.line_btn{
	margin: 0 0 10px;
	text-align: right;
}
.line_btn button{
	background:none;
	margin-left:15px;
}

p.error{
	margin:30px 0;
	font-size:20px;
	text-align:center;
}

/*リスト表示*/
.e_info_group {
	display: flex;
	flex-wrap: wrap;
}

.e_info_group dt {
	color: #000000;
	background: #FFFFFF;
	padding: 0;
	font-weight: normal;
	text-align: left;
}

/* 店舗一覧　グリッド表示 */
ul.grid{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
	ul.grid:after{
		content:"";
		display:block;
		width:32%;
	}
ul.grid li{
	width:32%;
	height: auto;
	align-content: flex-start;
	position: relative;
}
ul.grid .side{
	height:150px;
	display: flex;
	align-items: center;
	justify-content: center;
}
ul.grid .side .main_img a{
	height: 150px;
	display: flex;
	justify-content: center;
}
ul.grid .side .main_img img{
	width: auto;
	min-width: auto;
	max-width: 100%;
	height: auto;
	align-self: center;
}
ul.grid .e_info{
	width:100%;
}
ul.grid .e_info dd{
	margin-left:0;
}
ul.grid .e_info h2{
	font-size:17px;
	min-height:30px;
}
ul.grid .e_info_group {
	display: block;
}
ul.grid .e_info dl{
	height:100px;
	margin:0 0 10px;
	width: 100%;
}
ul.grid .list_map {
	width: 100%;
}
ul.grid a.to_detail{
	float:none;
	position: absolute;
	bottom: 10px;
	right: 10px;
}

ul.grid .list_map {
	margin-bottom: 25px;
}

@media screen and ( max-width:1024px) {

	.e_list{
		display:flex;
		flex-wrap:wrap;
		justify-content: space-between;
	}
	.e_list > li{
		width:100%;
	}
	.e_info h2{
		padding-top:0;
	}
	.side{
		order: inherit;
		width: 43%;
	}
	.e_info{
		width: calc(100% - 44%);
	}
	.e_info dl {
		margin: 5px 0 5px;
	}
	.e_info dd{
		padding-right: 10px;
	}
	a.to_detail{
		padding:0px 10px;
	}
	.e_list{
		margin-bottom:0;
	}

	.side .label{
		margin-bottom:0;
	}

	/* グリッド */
	ul.grid .side{
		width:100%;
	}
	ul.grid .side .main_img{
		height:auto;
	}
	ul.grid .e_info{
		height:auto;
	}

	a.to_detail{
		position: relative;
		float: right;
	}
	.e_info dl:after{
		height:50px;
	}

}

@media screen and ( min-width:600px) {
	a[href^="tel:"] {
		pointer-events: none;
	}
}

@media screen and ( max-width:599px) {

	.line_btn{
		display:none;
	}

	.e_list > li{
		width:100%!important;
	}

	.list_map > iframe {
		width: 100%;
	}

	ul.grid a.to_detail {
		position: relative;
		float: right;
	}
}

@media screen and ( max-width:480px){

	.side{
		width:100%;
	}
	.e_info{
		width:100%;
	}
	.e_info dl{
		margin: 5px 0 10px;
	}
	.e_info dd{
		margin-left:0;
	}
	.e_list > li{
		height:auto;
		flex-direction: column;
	}
}
