/* CSS Document */

.page_kodawari .tate_set h2{font-size: min(35px,max(26px,3.5vw));}
.kodawari_set{
	display: flex;
	justify-content: center;
}
.kodawari_set:not(.nopic){
	padding: min(100px,max(60px,10vw)) 0;
	gap: max(40px,min(5.5vw,calc(1vw * 40 / 3.75))) 30px;
}
.kodawari_set .tate_set{margin: 0 auto;}
.kodawari_p{position: relative;}
.kodawari_p .caution{
	position: absolute;
	bottom:0.5em;
	left:0.75em;
	font-size: 0.7rem;
}
.kodawari_p img[src*="_p05."] + .caution{color: #FFF;}
@media screen and (max-width: 999px) {
	.kodawari_set,
	.kodawari_p.Wbase{max-width: 680px!important;}
	.kodawari_set{
		text-align: justify;
		flex-direction: column;
		align-items: center;
	}	
	.kodawari_set > *{width: 100%;}
	.kodawari_set .kodawari_p{order:1;}	
	.kodawari_set img{max-height: calc(1vw * 240 / 3.75);}
	.kodawari_set .tate_set{
		order:2;		
		padding-left: min(10%,calc(1vw * 30 / 3.75));
	}
}

.menu_jump{display: flex;}
.menu_jump a{
	border-right: solid 1px #b3b3b3;	
	width: 1em;
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.menu_jump + .btn_set{
	margin-top: min(50px,max(40px,5vw));
	gap: min(25px,max(15px,2.5vw));
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.menu_jump + .btn_set a{
	border: solid 1px #b3b3b3;
	width: min(305px,max(280px,30.5vw));
	max-width: 100%;
	height: min(50px,max(45px,5vw));
	font-size: min(17px,max(15px,1.7vw));
	display: flex;
	justify-content: center;
	align-items: center;
}
.menu_jump + .btn_set a:hover{
	background-color: #000;
	color: #FFF;
}
.menu_title_set{
	padding-top: min(100px,max(60px,10vw));
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.menu_title_set img[src*="shachihoko"]{width:min(93px,max(74px,9.3vw));}
.menu_title_set h2{}
.menu_title_set img + h2{margin-top: 0.75em;}
.menu_title_set h2 span{
	text-align: justify;
	text-align-last: justify;
	min-width: 2.5em;
}
.menu_title_set h2 + *{
	white-space: pre-wrap;
	font-size: min(19px,max(16px,1.9vw));
	line-height: 2em;
	margin-top: 1em;
}
.menu_title_set h2 + * sup{font-size: 0.5em;}
.menu_title_set h2 + * font{
	font-size: min(15px,max(12px,1.5vw));
	line-height: 1.6em;
	display: inline-block;
	margin-top: 0.5em;
}
.menu_title_set h2 + * a{text-decoration: underline;}
.menu_list{margin-top: min(100px,10%);}
.menu_list:last-child{padding-bottom: min(100px,max(55px,10vw));}
.menu_list ul{
	gap:90px calc(1% * 40 / 11);
	display: flex;
	flex-wrap: wrap;
}
.menu_list.col2 ul{justify-content: space-between;}
.menu_list li{
	display: flex;
	flex-direction: column;
}
.menu_list.col2 li{width:calc(1% * 528 / 11);}
.menu_list.col2 li:first-child:last-child{margin: auto;}
.menu_list.col3 li{width:calc(1% * 340 / 11);}
.menu_style a{
	position: relative;
	width:100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.menu_style a img{width:100%;}
.menu_style a .maru{
	background-color: #333;
	color:#FFF;
	font-size: min(14px,max(8.5px,1.4vw));
	font-weight: 700;
	line-height: calc(1em * 16 / 14);
	text-align: center;
	white-space: pre-wrap;
	border-radius: 100%;
	position: absolute;
	top:1em;
	left:1em;
	width:6em;
	height:6em;
	display: flex;
	justify-content: center;
	align-items: center;
}
.menu_style a .maru.br2{line-height: calc(1em * 18 / 14);}
.menu_style a .kome{
	text-align: left;
	/* font-size: min(16px, max(12px, 1.6vw)); */
	font-size: 0.8rem;
	position: absolute;
	bottom: 0.5em;
	left: 0.75em;
}
.menu_style h3{
	font-size: min(24px, max(16px, 2.4vw));
	margin: 1em auto 0.75em;
	display: flex;
	justify-content: center;
}
.menu_style h3 span{margin-right: -0.5em;}
.menu_style .text{
	text-align: justify;
	margin-bottom: auto;
}
.menu_style .text .k,
.menu_style .price + .k{
	font-size: 0.875em;
	margin-top: 0.125em;
}
.menu_style .price{
	text-align: right;
	font-size: min(20px, max(16px, 2vw));
	margin-top: 0.5em;
}
.menu_style .price font{font-size: 0.75em;}
.menu_style .price + .k{text-align: right;}
.menu_caution{
	font-size: min(15px, max(12px, 1.5vw));
	gap: 0.25em 0.5em;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.menu_style .price.ver2{}
.menu_style .price.ver2 span.flex{max-width: 10em; display: inline-flex; flex-wrap: wrap; justify-content: space-between;}
.menu_style .price.ver2 span.flex .type{font-size: 0.75em; min-width: 5em; display: flex; align-items: center; justify-content: flex-end;}
.menu_style .price.ver2 span.flex div{width: 100%;}
.menu_caution li{
	text-indent: -1em;
	padding-left: 1em;
	text-align: justify;
}
@media screen and (min-width: 1000px) {
	.menu_jump{
		margin-top: 45px;
		height: 70px;
	}
	.menu_jump a{font-size: 17px;}
	.menu_jump a:first-child{border-left: solid 1px #b3b3b3;}
	.menu_jump a > div{font-size: 14px;}
	.menu_pop{display: none;}
}
@media screen and (max-width: 999px) {
	.menu_jump{
		margin-top: 50px;
		width: min(305px,max(280px,30.5vw));
		gap: 20px 0;
		flex-wrap: wrap;
	}
	.menu_jump a{
		width: 40%;
		height: 45px;
		font-size: 14px;
	}
	.menu_jump a:nth-child(2n+1){border-left: solid 1px #b3b3b3;}
	.menu_jump a > div{font-size: 12px;}
	.menu_list ul{gap:min(90px,max(25px,calc(1vw * 25 / 3.75))) 0;}
	.menu_list.col3 ul{justify-content: space-between;}
	.menu_list.col2 li{width:100%;}
	.menu_list.col3 li{width:calc(1% * 162 / 3.4);}
	.menu_list li a{cursor: pointer;}
	.menu_list li a .maru{
		top: min(1em,calc(1vw * 5 / 3.75));
		left:min(1em,calc(1vw * 5 / 3.75));
	}
	.menu_list li h3{margin-bottom: auto;}
	.menu_list li .text{display: none;}
	.menu_list li .price{text-align: center;}
	.menu_pop .dark{
		display: none;
		position: fixed;
		top:0;
		left:0;
		width:100%;
		height:100%;
		z-index: 1010;
		background-color: rgba(51,51,51,0.8);
	}
	.menu_pop .inner{
		width:100%;
		height:100%;
		padding: 0 calc(1% * 22.5 / 3.75);
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.menu_pop .frame{
		position: relative;
		width: 100%;
		background-color: #FFF;
		border-radius: 5px;
		display: flex;
		flex-direction: column;
	}
	.menu_pop .frame .close{
		position: absolute;
		top: 3px;
		right: 3px;
		width: 29px;
		height: 29px;
		z-index: 2;
		cursor: pointer;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.menu_pop .frame .close::before,
	.menu_pop .frame .close::after{
		content: '';
		display: block;
		width:100%;
		height:1px;
		background-color: #999;
		position: absolute;
	}
	.menu_pop .frame .close::before{transform: rotate(45deg);}
	.menu_pop .frame .close::after{transform: rotate(-45deg);}
	.menu_pop .frame .clone{padding: calc(1% * 35 / 3.3) calc(1% * 35 / 3.3) calc(1% * 25 / 3.3);}
	.menu_pop a .maru{font-size: min(14px, max(11px, 1.4vw));}
	.menu_pop h3{
		font-size: min(24px, max(20px, 2.4vw));
		margin: 0.5em 0 0.25em;
	}
	.menu_pop .price{margin-top: 0.25em;}
	.menu_caution{flex-direction: column;}
	.menu_caution li{width:100%;}
}


.news_list{text-align: justify;}
ul.news_list{border-top: solid 1px #b3b3b3;}
.news_list li,
.news_list .dc{
	display: flex;
	align-items: flex-start;
}
.news_list li{
	border-bottom: solid 1px #b3b3b3;
	padding: 1.5em 0;
}
.news_list *{line-height: min(26px,max(23px,2.6vw));}
.news_list .d{width: min(130px,max(100px,13vw));}
.news_list .c{width: min(195px,max(172px,19.5vw));}
.news_list .c > *{
	background-color: #000;
	color:#FFF;
	font-size: min(15px,max(13px,1.5vw));
	text-align: center;
}
.news_list li .t{
	padding-left: 1.5em;
	flex-grow: 1;
}
div.news_list h2{
	border-bottom: solid 1px #d7d7d7;
	padding-bottom: 1em;
	margin: 1em 0;
	line-height: calc(1em * 6 / 5);
}
div.news_list .text{line-height: max(30px,calc(1em * 29 / 16));}
div.news_list .text.news_dt{}
div.news_list .text.news_dt b{font-size: 1.25em; line-height: 2em; display: inline-block;}
div.news_list .text.news_dt span[indent]{text-indent: -1em; padding-left: 1em;}
div.news_list .photo,
div.news_list .photo.noimg > *{
	display: flex;
	justify-content: center;
	align-items: center;
}
div.news_list .photo{margin-top: min(60px,max(20px,min(6vw,calc(1vw * 20 / 3.75)) ));}
div.news_list .photo:not(:last-child){margin-bottom: min(60px,max(20px,min(6vw,calc(1vw * 20 / 3.75)) ));}
div.news_list .photo.noimg > *{
	width:540px;
	max-width: 100%;
	height:333px;
	background-color: #cccccc;
}
@media screen and (max-width: 999px) {
	.news_list li{
		gap: 1em;
		flex-direction: column;
	}
	.news_list li .t{padding-left: 0;}
}


*[class*="shop_list"]{text-align: left;}
*[class*="shop_list"] > *{
	display: flex;
	justify-content: space-between;
}
.shop_list > *:nth-child(n+2){
	border-top: solid 1px #b3b3b3;
	margin-top: min(75px,max(45px,7.5vw));
	padding-top: min(67px,max(45px,6.7vw));
}
.shop_list > * > *{max-width: 100%;}
.shop_list .L{width:430px;}
.shop_list .R{width:550px;}
*[class*="shop_list"] .btn_map,
*[class*="shop_list"] .btn_mo a,
*[class*="shop_list"] .photo,
.shop_list .btn_rec,
.shop_list .btn_rec a{
	display: flex;
	justify-content: center;
	align-items: center;
}
*[class*="shop_list"] h2{line-height: calc(1em * 6 / 5);}
*[class*="shop_list"] h2 .mini{font-size: min(21px,max(16px,2.1vw));}
*[class*="shop_list"] h2 + *{
	line-height: calc(1em * 29 / 16);
	margin-top: 1em;
}
*[class*="shop_list"] .btn_map{border: solid 1px #000;}
.shop_list .btn_map{
	width: min(125px,max(100px,12.5vw));
	font-size: min(14px,max(11px,1.4vw));
	margin: 0.5em 0;
}
.order_shop_list .btn_map{
	min-height: min(40px,max(30px,4vw));
	font-size: min(16px,max(13.6px,1.6vw));
}
.shop_list .btn_mo a,
.shop_list .btn_rec a{
	width:min(250px,max(200px,25vw));
	height:min(40px,max(32px,4vw));
	font-size: min(14px,max(12px,1.4vw));
}
.shop_list .btn_mo{margin-top: min(30px,max(25px,3vw));}
*[class*="shop_list"] .btn_mo a{
	color:#FFF;
	background-color: #000;
	text-align: center;
}
.order_shop_list .btn_mo a{
	min-height: min(110px,max(80px,11vw));
	font-size: min(21px,max(16px,2.1vw));
}
*[class*="shop_list"] .photo{width:100%;}
.shop_list .photo{
	margin-top: 35px;	
	min-height:min(290px,max(230px,29vw));
}
*[class*="shop_list"] .photo.noimg{
	line-height: 1em;
	color: #FFF;
	background-color: #b3b3b3;
	gap: calc(1em * 4 / 3);
	flex-direction: column;
}
.shop_list .photo.noimg{font-size: min(18px,max(14px,1.8vw));}
.order_shop_list .photo.noimg{font-size: 12px;}
.shop_list .photo.noimg img[src*="logo-f."]{
	width:232px;
	max-width: max(184px,23.2vw);
}
.order_shop_list .photo.noimg img[src*="logo-f."]{	
	width:calc(1% * 149 / 2.75);
	max-width: 149px;
}
.shop_list .R table{
	border: none;
	border-top: solid 1px #b3b3b3;
	border-collapse: collapse;	
}
.shop_list .R table tr > *{
	border-bottom: solid 1px #b3b3b3;
	font-size: min(15px,max(13px,1.5vw));
	/* line-height: calc(1em * 4 / 3); */
	line-height: min(20px,max(17px,2vw));
	/* padding: calc(1em * 10.5 / 15) 1em; */
	padding: min(10.5px,max(7px,1.05vw)) 1em;
	text-align: justify;
	vertical-align: middle;
}
.shop_list .R table th{
	width:min(131px,max(105px,13.1vw));
	background-color: #e6e6e6;
	font-weight: 500;
}
.shop_list .btn_rec{margin-top: min(43px,max(33px,4.3vw));}
.shop_list .btn_rec a{border: solid 1px #b3b3b3;}
@media screen and (min-width: 1000px) {
	.shop_list .L{max-width:43%;}
	.shop_list .R{max-width:55%;}
}
@media screen and (max-width: 999px) {
	.shop_list > *{
		gap:35px;
		flex-direction: column;
		align-items: center;
	}
}

.order_catch{
	text-align: justify;
	font-size: min(21px,max(16px,2.1vw));
}
.order_shop_list{margin-top: min(60px,max(30px,6vw));}
.order_shop_list > *{border: solid 1px #b3b3b3;}
.order_shop_list > *:nth-child(n+2){
	margin-top: min(75px,max(45px,7.5vw));
}
.order_shop_list .R{
	gap: 25px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
@media screen and (min-width: 1000px) {
	.order_shop_list > *{
		min-height: 255px;
		padding: 34px calc(1% * 44 / 11);
		padding-right: calc(1% * 52 / 11);
	}
	.order_shop_list .L{
		width:285px;
		min-width:285px;
	}
	.order_shop_list .photo{
		width:275px;
		min-width:275px;
		margin-right: 2vw;
	}
	.order_shop_list .photo img{min-height:100%;}
	.order_shop_list .R{
		margin-left:auto;
		width:350px;
		max-width:100%;
	}
}
@media screen and (max-width: 999px) {
	.order_shop_list > *{
		padding: 25px calc(1% * 26.5 / 3.4) 30px;
		gap:33px;
		flex-direction: column;
		align-items: center;
	}
	.order_shop_list > * > *{
		width:100%;
		/* max-width: 285px; */
	}
	.order_shop_list .photo.noimg{min-height: 192px;}
	.order_shop_list .photo.noimg img[src*="logo-f."]{	
		width:154px;
		max-width: none;
	}
}

.order_conf_frame{
	margin: min(40px,max(28px,4vw)) auto 0;
	padding: min(30px,max(24px,3vw)) 0;
	border: solid 1px #b3b3b3;
	width: min(750px,max(340px,75vw));
	max-width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.order_conf_frame h2,
.order_conf_frame h2 *{line-height: calc(1em * 54 / 45);}
.order_conf_frame h2{
	color: #c1272d;
	font-size: min(45px, max(34px, 4.5vw));
}
.order_conf_frame h2 > div{font-size: min(31.5px, max(24px, 3.15vw));}
.order_conf_frame .text{
	text-align: left;
	font-size: min(18px,max(15px,1.8vw));
	margin-top: 1.5em;
	padding: 0 24px;
}
.order_conf_frame .text > *{
	gap: 0 0.5em;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.order_conf_btn_title{
	margin: 1.5em auto min(40px,max(1em,4vw));
	font-weight: 700;
}
.order_conf_btn{
	width: min(450px,max(340px,45vw));
	max-width: 100%;
	gap: min(40px,max(28px,4vw));
	display: flex;
	flex-direction: column;
}
.order_conf_btn a{
	min-height: min(82px,max(55px,8.2vw));
	font-size: min(21px,max(16px,2.1vw));
	font-weight: 700;
	color:#FFF;
	background-color: #b3b3b3;
	display: flex;
	justify-content: center;
	align-items: center;
}
.order_conf_btn a.red{background-color: #c1272d;}
.order_conf_map{
	margin: min(82px,max(45px,8.2vw)) auto 0;
	position: relative;
	width: min(750px,max(340px,75vw));
	max-width: 100%;
	height: min(400px,max(260px,40vw));
	display: flex;
	justify-content: center;
	align-items: center;
}
.order_conf_map iframe{
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
}
@media screen and (max-width: 999px) {
	.order_conf_frame .text > * span:nth-child(1){width:100%;}
}