@charset "utf-8";

/****************************************************************/
/****************************************************************/
/*                                                              */
/* 特集共通css                                                  */
/* 基本スタイル *************************************************/
/*                                                              */
/*                                                              */
/****************************************************************/

/****************************************************************/
/* 特集総合トップ ***********************************************/
#specials{}

#specials h1{
	font-size: 1.4em;
	line-height: 140%;
	margin: 0 0 24px 0;
	padding: 4px 12px;
}
#specials #living_specials > h2{
	margin: 0 0 16px 0 !important;
	padding: 4px 12px;
}
#specials #living_specials .r_sp ul{
	display: grid;
	gap: 16px 24px;
	grid-template-columns: repeat(2, 1fr);
}
#specials .r_sp ul li img.r_sp_bnr{
	width: 100% !important;
	height: auto !important;
	border-radius: 4px;
}




/****************************************************************/
/* 特集トップ ***************************************************/
/* 特集キャッチ */
#sp_top_catch{
	font-size: 1.3em;
	font-weight: bold;
	margin: 8px 0 24px 0;
	padding: 0;
	line-height: 150%;
}
/* 特集リード */
#sp_top_lead{
	line-height: 170%;
	margin-bottom: 32px;
}

/* 特集目次 */
.sp_top_index{
	border: 1px solid #666;
	padding: 8px;
	margin-bottom: 64px;
}
.sp_top_index span,
.sp_top_index ul li{ font-size: 0.8em; }
.sp_top_index .table-of-contents{ display:inherit }
.sp_top_index .show-area{
  cursor: pointer;
  color: #4680A9;
}

/* 特集GoogleMapによる一覧表示 */
.sp_top_map{
	margin-bottom: 24px;
	border: 4px solid #a9c319;
	box-sizing: border-box;
	border-radius: 2px;
}

/* 特集トップの一覧 */
.sp_shop_list{}

/* 特集トップの各店 */
.sp_list_shop{
	margin: 0 0 72px 0;
}


/* 特集トップの店舗名 */
.sp_top h2{
	font-size: 1.3em;
	padding: 0 0 0 12px;
	margin: 24px 0;
	border-left: 4px solid #333;
}
.sp_top h2 span{
	font-size: 0.8em;
}
/* 各店メインイメージ */
.sp_list_img{
	margin: 0 0 16px 0;
}

/* 各店キャッチ */
.sp_list_catch{
	font-size: 1.1em;
	font-weight: bold;
	margin: 0 0 8px 0;
	padding: 0;
	line-height: 150%;
}


/* ページ移動 ***************************************************/
.sp_paging .paging_previous,
.sp_paging .paging_next{
	box-sizing: border-box;
	border: 1px solid #ccc;
	border-radius: 4px;
}
.btn_blank{ border: none !important; }

.sp_paging ul{
	box-sizing: border-box;
	text-align: center;
	margin: 0;
	padding: 0;
	display: inline-block;
}
.sp_paging ul li{
	list-style: none;
	display: inline-block;
	padding: 8px 16px;
	margin: 0 4px;
	border: 1px solid #ccc;
	border-radius: 4px;
}
.sp_paging ul li.on_page{
	background: #f6f6f6;
	font-weight: bold;
}




/****************************************************************/
/* 店舗ページ ***************************************************/

/* 表示エリア */
#sp_cts{
	padding: 24px;
}

/* 特集タイトル *************************************************/
#sp_title{
	text-align: center;
	background: #eee;
	padding: 24px 24px 16px 24px;
}
#sp_title_main{
	font-size: 1.2em;
	font-weight: bold;
}
#sp_title_sub{
	font-size: 0.7em;
	font-weight: normal;
	line-height: 170%;
	padding: 3px 0 2px 0;
}

/* 店舗名 */
.sp_shop h1{
	font-size: 1.3em;
	padding: 0 0 0 12px;
	margin: 24px 16px;
	border-left: 4px solid #333;
}
.sp_shop h1 span{
	font-size: 0.8em;
}

/* 写真 */
#img_main{
	margin-bottom: 16px;
	clear: both;
}
.img_full{}
.img_full_caption,
.img_l_caption,
.img_m_caption{
	font-size: 0.8em;
	text-align: center;
}

/* 広告キャッチ */
#sp_catch{
	font-size: 1.3em;
	font-weight: bold;
	margin: 0 0 32px 0;
	padding: 0;
	line-height: 150%;
}

/* 日付とタグ */
.sp_meta{
	margin-bottom: 32px;
}
.sp_meta .date,
.sp_meta .area{
	font-size: 0.8em;
	float: left;
	width: 30%;
	box-sizing: border-box;
	padding-top: 1px;
}
.sp_meta ul.tags{
	font-size: 0.7em;
	text-align: right;
	float: right;
	width: 70%;
	box-sizing: border-box;
	list-style: none;
	padding: 0;
}
.sp_meta ul.tags li{
	display: inline;
	margin: 0 4px;
	padding: 2px 12px;
	border: 1px solid #ccc;
	border-radius: 12px;
}
.sp_meta ul.tags li.coupon{
	color: #093;
	font-weight: bold;
	border-color: #093;
	background: none;
}
/* 写真2以降 */
#sp_img2,
#sp_img3,
#sp_img4,
#ss_img1,
#ss_img2{
	margin-bottom: 24px;
}

/* フリースペース */
.sp_fs{
	background: #fff6e6;
	border: 1px dotted #ccc;
	border-radius: 4px;
	padding: 8px;
	margin: 0 0 16px 0;
}
.sp_fs_title{
	font-weight: bold;
	color: #f60;
}

/* 情報スペース */
#sp_info_space{
	border-top: 1px dotted #ccc;
	margin: 24px 0 40px 0;
	padding-top: 16px;
}


/* 地図 *********************************************************/
.sp_map_area{
	margin-bottom: 40px;
}
#sp_map{
	width: 100%;
	height: 360px;
	margin-bottom: 24px;
	border: 1px solid #ccc;
}

.map_button,
.next_button,
.prev_button{
	width: 80%;
	box-sizing: border-box;
	margin: 0 auto 24px auto;
	padding: 12px;
	color: #fff;
	font-weight: bold;
	background: #333;
	border-radius: 4px;
	text-align: center;
}
.map_button a,
.next_button a,
.prev_button a{
	display: block;
}


/****************************************************************/
/* 店舗データ ***************************************************/
.sp_shop_data{
	border-top: 1px solid #ccc;
	padding: 8px 0;
	margin-bottom: 40px;
}

.sp_shop_data h2{
	text-align: center;
	font-weight: normal;
	letter-spacing: 2px;
	font-size: 1.2em;
	padding: 16px 0;
}
table.shop_data{
	font-size: 0.9em;
}
table.shop_data th,
table.shop_data td{
	box-sizing: border-box;
	padding: 16px 0;
	vertical-align: top;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
table.shop_data th{
	width: 30%;
	padding-right: 8px;
	text-align: left;
	font-weight: normal;
}
table.shop_data td{
	width: 70%;
}

.sp_shop_ask{
	margin: 0 8px;
	font-size: 0.8em;
	line-height: 150%;
}


/* クーポン *****************************************************/
/* サマリー */
.cpn_summary{
	font-size: small;
	background-color: #ffc;
	color: #900;
	margin: 4px 0;
  padding: 0 8px;
	border-top: 1px dotted #a0b300;
	border-bottom: 1px dotted #a0b300;
}
.cpn_summary strong{
	background:url(../image/IcoCoupon23.gif) 0 center no-repeat;
	padding:0 0 0 28px;
}
/* クーポン券面 */
.coupon{
	text-align: center;
	border: 2px solid #ccc;
	margin: 0 0 16px 0;
	padding: 32px 16px 8px 16px;
	background: url("../image/sp_cpn_bg920.gif") 0 0 no-repeat;
	background-size: 230px 56px;
}
.cpn_use{
	margin: 16px;
	text-align: center;
	font-size: 0.8em;
}
.cpn_title{
	font-weight: bold;
	margin-bottom: 8px;
}
.cpn_detail,
.cpn_howto{
	border-top: 1px solid #ccc;
	padding: 8px 16px;
	text-align: left;
	font-size: 0.8em;
	line-height: 150%;
}
.cpn_shopname{
	font-size: 0.9em;
	margin-bottom: 4px;
	font-weight: bold;
}
.cpn_period{
	font-size: 0.8em;
	background: #f0f0f0;
	margin: 0 -16px -8px -16px;
	padding: 2px 4px 0 4px;
}

/* 特集トップに戻る *********************************************/
.btn_backto_sptop{
	width: 80%;
	box-sizing: border-box;
	margin: 0 auto 24px auto;
	padding: 12px;
	background: #fff;
	border-radius: 4px;
	text-align: center;
	border: 1px solid #ccc;
}
.btn_backto_sptop a{
	text-decoration: none;
	display: block;
}
.btn_backto_sptop i{
	font-size: 1.3em;
	color: #666;
}
.next_button i,
.prev_button i{	font-size: 1.3em; }
.btn_backto_sptop i.fa-copy,
.next_button i.fa-copy{ float: left; }
.btn_backto_sptop i.fa-chevron-right,
.next_button i.fa-chevron-right{ float: right; }
.prev_button i.fa-chevron-left{ float: left; }




/* 掲載店一覧（サイドバー）**************************************/
.r_sp_list{
	background: #e3f0f0;
	border-radius: 4px;
	padding: 6px 6px 12px 6px;
	margin: 0 0 40px 0;
}
.r_sp_list dt{
	background: #36a9ac;
	border-radius: 3px;
	padding: 8px;
	margin: 0 0 8px 0;
	color: #fff;
	font-weight: bold;
}
.r_sp_list dd{
	margin: 0;
	padding: 8px 8px;
	border-bottom: 1px dotted #136769;
}
.r_sp_list dd span{
	font-size: 0.8em;
}


/****************************************************************/
/****************************************************************/
/*                                                              */
/*                                                              */
/* レスポンシブ ◆750px以下(スマートフォン)◆  ******************/
/*                                                              */
/*                                                              */
/****************************************************************/
@media only screen and ( max-width: 750px) {

/* ページ移動 ***************************************************/
	.sp_paging{
		margin: 32px 0 64px 0;
	}
	.sp_paging ul{
		width: 80%;
	}
	.sp_paging .paging_previous,
	.sp_paging .paging_next{
		width: 10%;
		padding: 8px 4px;
		margin: 0;
		text-align: center;
	}		


/* 本文 *********************************************************/
	.sp_desc{
		line-height: 170%;
	}

/****************************************************************/
/* 店舗データ ***************************************************/
	table.shop_data{
		margin: 0 8px 16px 8px;
		width: calc(100% - 16px);
	}
	table.shop_data th,
	table.shop_data td{
		padding: 16px 0;
	}
	table.shop_data th{
		width: 30%;
		padding-right: 8px;
		text-align: left;
		font-weight: normal;
	}
	table.shop_data td{
		width: 70%;
	}


/* クーポン *****************************************************/
	#coupon_area{
		margin-bottom: 40px;
	}

}


/****************************************************************/
/****************************************************************/
/*                                                              */
/*                                                              */
/* レスポンシブ ◆751px以上(PC)◆   *****************************/
/*                                                              */
/*                                                              */
/****************************************************************/

@media print, screen and ( min-width: 751px) {

/* ページ移動 ***************************************************/
	.sp_paging{
		margin: 64px 0;
	}
	.sp_paging ul{
		width: 70%;
	}
	.sp_paging i.fa-chevron-right{ margin-left: 8px; }
	.sp_paging i.fa-chevron-left{ margin-right: 8px; }
	.sp_paging .paging_previous{ text-align: left; }
	.sp_paging .paging_next{ text-align: right; }
	.sp_paging .paging_previous,
	.sp_paging .paging_next{
		width: 15%;
		padding: 8px 16px;
		margin: 0;
	}	

/* 本文 *********************************************************/
	.sp_desc{
		line-height: 200%;
	}

/****************************************************************/
/* 店舗データ ***************************************************/
	.sp_shop_data{
		width: 672px;
		padding: 0 24px;
		box-sizing: border-box;		
	}
	table.shop_data{
		width: 100%;
		box-sizing: border-box;
	}
	table.shop_data th,
	table.shop_data td{
		padding: 16px 8px;
	}	
	table.shop_data th{
		width: 20%;
		text-align: left;
	}
	table.shop_data td{
		width: 80%;
	}

/* クーポン *****************************************************/
	#coupon_area{
		width: 654px;
		box-sizing: border-box;
		margin: 0 auto 40px auto;
	}




}