@media print,screen and (max-width:767px){ 

body{min-width:320px;}

.pc{
	display:none !important;
}

.spc{
	display:inline !important;
}

#header{
	
	height:36px;
	padding:10px 0;
	text-align:center;
}

h1{
	/*width:calc(100% - 28px);*/
	width:100%;
	margin:0;
	padding:0;
	font-size:16px;
	line-height:36px;
}



#header h1 img{vertical-align: middle;width:36px;}

#about p{
	font-size:14px;
	line-height:24px;
}


.step{
	font-size: 8px;
    	padding: 0px 2px;
    	line-height: 18px;
}


#special h2,#shop_list h2{
	font-size:24px;
}

#shop_list li{
	font-size:16px;
	padding-right:8px;
}

#shop_list li a{
	font-size:14px;
}

.shops{
	width:98%;
	text-align:center;
}

.shops img{
	width:80%;
	height:auto;
	aspect-ratio: attr(width) / attr(height);
	margin:0 auto;
	content-visibility: auto;
	contain-intrinsic-size: 100px;
}

.shops_detail{
	float:none;
	width:80%;
	margin:0 auto;
	padding:10px;
	text-align:left;
	background-image:none;
}

.subs{
	font-size:16px;
}

.snames{
	font-size:24px;
	line-height:28px;
	padding-bottom:10px;
}

.shops_detail dt{
	width:40px;
}

.shops_detail dd{
	font-size:16px;
	line-height:34px;
	margin-left:55px;
	padding-top:0px;
}

.icons{
	width:40px;
	font-size:12px;
	margin-bottom:2px;
	margin-top:0px;
}

.button{
	width:80%;
	margin:0 auto;
	margin-top:10px;
	padding:5px;
}

.button a{
	font-size:16px;
}

.button a::after {
	top:6px;
	right:-70px;
}

#caution{
	width:80%;
}

/* ?{?g???y?[?W */

#mains slick-slide{
	width:100%;
}

#main_s {
	width:100%;
}

#main_s .subs{
	font-size:16px;
}

#main_s .snames{
	font-size:24px;
	line-height:28px;
	padding-bottom:10px;
}

.shopname{
	padding-left:10px;
	padding-right:10px;
}

.honbun{
	font-size:18px;
	padding:20px 10px 20px 10px;
	line-height: 28px;
}

#tab_box{
	width:90%;
	margin:0 auto;
}

.tab{
	width:50%;
}

.photos{
	width:100%;
}

.photos p{
	font-size: 16px;	
}

.photos h3,.detail h3{
	font-size:24px;
}

#mains .photos a{
	width:100%;
}

#mains .photos a:nth-child(odd) {
    margin-right: 0px;
}

.detail dd{
	font-size:16px;
	margin-left:0px;
	line-height: 32px;
}

.detail{
	width:calc(90% - 20px);
	padding:5px 10px 10px 10px;
}

#abouts{
	width:calc(90% - 20px);
	font-size:18px;
}

#abouts a{
	width:50%;
}

#mains .button{
	width:60%;
}

#foote{
	height:auto;
}

.mt30{
	margin-top:20px;
}

.up-arrow {
  width: 24px;
  height: 24px;
}

.up-arrow::before {
  width: 4px;
  height: 4px;
  top: 10px;
  left:9px;

}

.pagetop{
	margin:0 35px 59px 0;
}

}

@media print,screen and (max-width:321px){ 
	h1{
		font-size:16px;
	}
}