@charset "utf-8";
/* CSS Document */
	
/****************************
	
	全ページ共通

	
****************************/

/* 背景を白に */
body {
	background:none!important;	
}
	
/* コンテンツの最大幅を800pxに */
#content {
	max-width:800px!important;
}
	
/* 戻るボタン TOP以下*/
#back {
	float:none;
	position:fixed;
	bottom:70px;
	left:5px;
}
	
#back img {
	width:40px;
	opacity:.8;
}
	
	
/**** フッター ****/
	
footer {
	background:#762F07;
}
	
footer table {
	background:none!important;
}
		
footer table td a{
	padding-top:10px!important;
	font-size:10px!important;
}
	
footer table td a img{
	width:30px!important;
}	


/**** content ****/

#content td {
	padding:0;
}	


/* ボタン */
.button {
	background:#00a3af!important;
	box-shadow: none!important;
	font-size:16px!important;
}

.button2 {
	padding:.8em 1em!important;
	border-radius:8px!important;
	background:#e67e22!important;
	box-shadow: none!important;
}



/**************************
	
	TOP & SEARCH
	
**************************/

	
/* TOP お知らせ */
#top #news_list {
	background:#fffbf0!important;
}

#news_list span {
	white-space: normal!important;
}
	
#news_list.column div > *{
		display:table-cell;
		vertical-align: top;
}
	
#news_list.column div .info_icon{
	width:26px;
	padding-right:5px;
}
	
#news_list.column div .info_icon img{
	width:26px;
	margin-top:10px;
}
	
#news_list .to-info {
	font-size:14px;
	text-align:right;
}

	
/* お気に入り自治体・協力店ボタン */

#onsale_list {
	margin	:2em 0 .5em!important;
	display:flex;
	gap:.5em;
	overflow:hidden;
}
	
.tabbutton {
	width:auto!important;
	height:auto!important;
	float:none!important;
	opacity:1!important;
}
	
.tabbutton .all , .tabbutton .around {
	line-height:normal!important;
	box-shadow: none!important;
}
	
.tabbutton > div {
	width:auto!important;
	height:auto!important;
	border-radius:8px !important;
	border:#ccc 2px solid!important;
	background:#ccc!important;
}
	
	
.tabbutton.selected > div{
	background:#fff!important;
	border:#df7163 2px solid!important;
}
	
.tabbutton > div > * {
	padding:.8em 1em!important;
	color:#fff!important;
	font-size:14px;
	font-weight:bold;
}
	
.tabbutton.selected > div > *{
	color:#df7163!important;
}


/* 商品 */
.products table:first-child {
	border-top:#666 1px dotted;
	padding-top:1em;
}
	
.products table {
	border-bottom:#666 1px dotted;
	padding-bottom:1em;
	margin-bottom:1em;
	border-radius:0!important;
}


/* 画像 */
	.product-img {
			width:46%!important;
	}
	
	.product-img + td > div{
		padding:0 0 0 10px;
	}
	
	#content td img, #shopDetail td img {
		width:100%;
		height:auto;
		aspect-ratio: 1 / 1;
	}
	
@media screen and (min-width:769px){
	.product-img {
			width:30%!important;
	}
	
	.product-img + td > div{
		padding:1em;
	}
	
}

/*商品名・店名のスタイル*/
.products h4 {
	line-height:1.4;
	margin:0 0 .4em 0!important;
}

/* ショップ名 (.shop_name) 商品詳細と同じ*/
h4.shop_name {
	position:relative;
	display:block;
	padding-left:30px!important;
	line-height:1.4;
}

h4.shop_name::before {
	position:absolute;
	top:0;
	left:0;
	content:'';
	display:inline-block;
	width:26px;
	height:24px;
	background:url("../img/shop03.png") no-repeat;
	background-position: center;
	background-size: contain;
}

/* 定休日 */
.closed-day {
	font-size:14px;
	margin-bottom:1em;
}


/* 所在地 */
.location {
	display:inline-block;
	margin:0.8em 0 0.5em;
	padding:.3em .5em;
	background:#fff;
	color:#666;
	font-size:12px;
	border-radius:3px;
}

/* 販売価格 */
.price {
	line-height:1.4;
	color:#f00;	
	margin:1em 0;
}

/* 割引 */
.price span {
	display:inline-block;
	padding:3px 10px;
	background:#f00;
	color:#fff!important;
}

/* カウンター */
	.counterArea {
		margin-top:1em;
		text-align:center!important;
	}
	



/**************************
	
	商品詳細
	
**************************/
/* 詳細ページの画像のtableにつけたクラス */
.detail_images {
	//margin-bottom:10px;
}

.detail_images td {
	width:50%;
}

/* ショップ名 (.shop_name)*/
h4.shop_name {
	position:relative;
	display:block;
	padding-left:30px;
	line-height:1.4;
}
h4.shop_name::before {
	position:absolute;
	top:0;
	left:0;
	content:'';
	display:inline-block;
	width:26px;
	height:24px;
	background:url("../img/shop03.png") no-repeat;
	background-position: center;
	background-size: contain;
}
	
/* 商品名 (.item_name) */
h4.item_name {
	position:relative;
	margin:3em 0 .5em;
	line-height:1.4;
}
	
h4.item_name::before {
	position:absolute;
	top:-2.4em;
	left:0;
	content:'出品商品';
	font-size:14px;
	display:inline-block;
	padding:.3em .5em;
	background:#ccc;
	color:#fff;
}

#reservations_list h4.item_name::before {
	display:none;
}
	
/* お気に入り */
form.favorite_button {
 	margin:0.5em 0;
	text-align:right;
} 
	
.favorite {
	padding:.3em 1em;
	font-size:10px;
	color:#f00 !important;
	background:#fff;
	border:#f00 2px solid;
	text-decoration:none!important;
	border-radius: 8px;
	width:100px;
	display:inline-block;
	text-align:center;
}
.favorite.on {
	background:#ccc;
	color:#fff !important;
	border:#ccc 2px solid;
}
	
/* 住所 */
	a.shop_address {
		position:relative;
		display:block;
		padding-left:30px;
		margin-top:1em;
		font-size:14px;
	}
	
	a.shop_address::before {
		position:absolute;
		top:0;
		left:0;
		content:'';
		display:inline-block;
		width:26px;
		height:20px;
		background:url("../img/location02.png") no-repeat;
		background-position: center;
		background-size: contain;		
	}
	
/* 商品詳細 */
.item_detail strong {
	color:#f00;
}
	
.item_detail div {
		margin-bottom:.3em;
}

	
/* 営業時間 */
.open_hours {
	padding:1em;
	background:rgba(250,250,250,1);
	border-radius:5px;
	font-weight:bold;
	border:#ccc 1px solid;
}
	
.open_hours div {
		margin-bottom:1em;
}
	
.open_hours div span{
	position:relative;
	display:block;
	margin-bottom:.3em;
	padding-left:23px;
	font-weight:normal;
}
	
.open_hours div span::before{
	content:'';
	position:absolute;
	top:1px;
	left:0;
	display:block;
	width:20px;
	height:20px;
	background:url("../img/check-rbox02.png");
	background-position: center;
	background-size:cover;
}


/**************************
	
	お知らせ一覧
	
**************************/

/* news-list */	
	#news_list.column div{
		display:table;
		margin-bottom:.5em;
		padding-bottom:.5em;
		border-bottom:#ccc 1px dotted;
		font-size:14px;
	}
	
	#news_list.column div:last-child{
		border-bottom:none;		
	}
	
	#news_list.column div > *{
		display:table-cell;
		vertical-align: top;
	}
	#news_list.column div .info_icon{
		width:26px;
		padding-right:5px;
	}
	
	#news_list span {
		font-size:14px;
	}
	
	#news_list.column div strong {
		display:block;
		font-size:14px;
	}
	

	@media screen and (max-width:640px){
		#news_list span {
			white-space:normal;
		}
	}


/**************************
	
	検索
	
**************************/
	
.search-wrap {
	border:#ccc 1px solid;
	padding:1em .5em!important;
	border-radius:5px;
}

#searchForm > strong {
	display:block;
	margin-bottom:.5em;
}

.tags a {
	display:inline-block;
	margin-bottom:.5em;
	padding:.8em 1em !important;
	background:#df7163!important;
	color:#fff;
	text-decoration:none;
	border-radius:8px !important;
	line-height:normal!important;
	font-size:14px;
	opacity:0.7;
}

input#keyword {
	padding:.5em;
}

input#keyword + div strong {
	position:relative;
	display:inline-block;
	margin-top:1em;
	padding:.5em;
	background:#eee;
	font-size:14px;
	border-radius:5px;
	color:#666;
}

input#keyword + div strong::before {
	content:'';
	position:absolute;
	top:-.8em;
	left:48%;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent transparent #eee transparent;
	border-width: 0px 10px 17.32px 10px;
}

#menu{
	position:fixed;
	width:100%;
	padding:0 1em;
	background-color:#762F07;
	display:none;
	align-items:center!important;
	justify-content: center;
	height: calc(var(--vh, 1vh) * 100)!important;
color: white;
  line-height: 1.5em;
  flex-direction: column;
}	
	
#menu ul{
	position:static!important;
	display: flex;
	flex-wrap:wrap;
width: 800px;
  max-width: 100%;
	margin:0 auto;
	padding:1em!important;
box-sizing: border-box;
  height: auto;
  overflow: auto;
}	

#appVersion{
width: 800px;
  max-width: calc(100% - 5em);
  text-align:right;
}
	
#menu ul li{
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-weight: 400;
	width:48%!important;
	height:auto!important;
	aspect-ratio:auto!important;
	text-align:left!important;
	margin-bottom:2em!important;
}
	
#menu ul li a {
	display:flex!important;
	align-items:center!important;
	border-radius:0!important;
	background:none!important;
height: 100%;
  width: 100%;
  background-color: white;
  color: #666 !important;
  font-size:14px;
  line-height: 1.2em;
  letter-spacing: 0;
  border-radius: 30%;
  position: relative;
	}

#menu ul li a div {
	position:static;
	display:inline!important;
	height:auto!important;
	font-weight:bold;
	line-height:1.2;
	font-size:16px;
	margin-left:.8em;
	color:#fff!important;
}
	
#menu ul li a img {
	width:24px;
}

#menu a {
  text-decoration: none;
  overflow: hidden;
}

