@charset "utf-8";

#fl_btn {
	cursor: pointer;

    position: fixed;
    bottom: 50px;
    right: 50px;

	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: center;

	width: 180px;
    height: 180px;
    background: rgba(95 175 160 / 0.75);
    border: 3px solid rgba(95 175 160 / 0.75);
    border-radius: 100%;
}
	

#restaurant-head {
	width: 90%;
	max-width: 1240px;
	margin: 0 auto !important;
}

	#restaurant-head > div:nth-child(1) {
		margin-bottom: 3.00rem !important;
		text-align: center;
	}

		#restaurant-head > div:nth-child(1) > h2 {
			margin-bottom: 0.75rem !important;
			color: rgba(150 150 150/ 1.00);
			font-size: 3.00rem;
		}

		#restaurant-head > div:nth-child(1) p:nth-child(3){
			margin-bottom: 0.50rem !important;
			font-size: 2.00rem;
		}



	#head-info ul {
		display: flex;
		flex-wrap: nowrap;
		justify-content: center; /* space-between; */

		margin-bottom: 2.00rem !important;
	}

		#head-info ul li {
			max-width: calc(100% / 4 - 7px);
			width: calc(100% / 4 - 7px);
			padding: 10px !important;
			margin-right: 7px !important;
			margin-left: 7px !important;
			margin-bottom: 10px !important;
			
			background: rgba(250 250 250/ 1.00);
			border-radius: 3px;
		}

			#head-info ul li.no_info {
				background: none;
				border: none;
			}

		#head-info ul li > dl > dt > h3 {
			font-size: 1.35rem;
			color: rgb(220, 53, 69);
			text-align: center;
		}

		#head-info ul li > dl figure {
			margin: 0.75rem 0 !important;
		}

		#head-info ul li > dl figure img {
			width: 100%;
		}

		#head-info ul li > dl .txt_l {
			margin-bottom: 0.15rem !important;
			font-size: 1.25rem;
		}

		#head-info ul li > dl .txt_m {
			margin-bottom: 0.15rem !important;
			font-size: 1.10rem;
		}

		#head-info ul li > dl .txt_s {
			margin-bottom: 0.15rem !important;
			font-size: 0.90rem;
		}

		#head-info ul li > dl a {
			background: white;
			border: 1px solid rgba(220 105 140 / 0.80);
			color: rgba(220 105 140 / 0.80);
		}

		#head-info ul li > dl a:hover {
			background: rgba(220 105 140 / 0.80);
			color: white;
		}


#tokuten {
	width: 80%;
	margin-right: auto !important;
	margin-left: auto !important;
}

	#tokuten > ul {
		display: flex;
		margin-bottom: 1.00rem !important;
	}

		#tokuten > ul > li:nth-child(1) {
			width: 150px;
		}

			#tokuten > ul > li:nth-child(1) {
				width: 150px;
			}

			#tokuten > ul > li:nth-child(2) {
				width: calc(100% - 150px);
			}

				#tokuten > ul > li:nth-child(1) img {
					width: 100%;
				}

				#tokuten > ul > li:nth-child(2) > ol {
					padding-bottom: 0.50rem !important;
					border-top: 1px solid rgba(220 220 220/ 1.00);
					margin: 0 auto !important;
				}

					#tokuten > ul > li:nth-child(2) > ol > li {
						padding-top: 0.75rem !important;
						padding-bottom: 0.75rem !important;
						border-bottom: 1px solid rgba(220 220 220/ 1.00);
					}

				#tokuten > ul > li:nth-child(2) img {
					max-width: 200px;
				}

.restaurant_banner_frame {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 80%;
	margin: 0 auto 2.00rem auto !important;
}

	.restaurant_banner_frame li {
		width: calc(100% / 2 - 5px);
		margin-bottom: 10px !important;
	}

		.restaurant_banner_frame li img {
			width: 100%;
		}

[id^=menu_list] {
	width: 90%;
	max-width: 1240px;
	margin: 0 auto !important;
}


.w-100 {
	width: 100%;	
}

	#menu_list_main > ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

		#menu_list_main img {
			box-shadow: 0px 10px 10px -3px rgba(0 0 0 / 0.90);
		}

		#menu_list_main > ul > li {
			width: 49%;
			width: calc(100% / 2 - 25px);
			margin-bottom: 70px !important;
			border-radius: 5px;
		}

			.menu_info article > ul > li:not(:last-child) {
				padding-bottom: 0.50rem !important;
				margin-bottom: 0.50rem !important;
				border-bottom: 1px solid rgba(220 220 220/ 1.00);
			}

			.menu_info article > ul > li > strong {
				margin-right: 1.00rem !important;
			}

			.menu_info article > ul > li > .gup strong {
				color: rgba(95 175 160 /1.00);
			}

				#menu_list_main article > ul.disp_inline {
					display: flex;
					flex-wrap: wrap;
				}

					#menu_list_main article > ul.disp_inline > li {
						margin-right: 1.00rem !important;
					}

					.menu_info article > ul.border_none > li {
						border: none;
					}

					.menu_info article > ul.short > li {
						text-align: center;
					}

					.menu_info.sec {
						margin-top: 1.00rem !important;
						border-top: 1px solid rgba(220 220 220/ 1.00);
					}

						#menu_list_main > ul > li > ol > li:nth-child(1) figure {
							margin-bottom: 1rem !important;
						}

						#menu_list_main > ul > li > ol > li img {
							width: 100%;
						}



						#menu_list_main > ul > li > ol.row {
							display: flex;
							flex-wrap: nowrap;
							justify-content: space-between;
						}

							#menu_list_main > ul > li > ol.row > li:nth-child(1) {
								width: 60%;
							}

							#menu_list_main > ul > li > ol.row > li:nth-child(2) {
								width: calc(40% - 30px);
							}

						#menu_list_main > ul > li > ol.row-rev {
							display: flex;
							flex-direction: row-reverse;
							flex-wrap: nowrap;
							justify-content: space-between;
						}

							#menu_list_main > ul > li > ol.row-rev > li:nth-child(1) {
								width: 60%;
							}

							#menu_list_main > ul > li > ol.row-rev > li:nth-child(2) {
								width: calc(40% - 30px);
							}


							#menu_list_main > ul > li > ol.col {
								display: flex;
								flex-direction: column;
							}

#menu_list_main {
	
}


.rsv_req {
	width: 90%;
	padding: 0.25rem !important;
	margin: 0.75rem auto !important;
	border: 1px solid rgba(220 105 140 / 1.00);
	color: rgba(220 105 140 / 1.00);
	font-size: 0.90rem;
}

.menu_info section h3 {
	display: flex !important;
	flex-direction: column !important;

	margin-bottom: 1.50rem !important;
	text-align: center;
}

	.menu_info section h3 > span {
		font-size: 1.00rem;
	}

	.menu_info section h3 > strong {
		margin: 0.75rem auto 0.50rem !important;

		color: rgba(220 105 140 / 1.00);
		font-size: 2.00rem;
	}

	.menu_info section h3 > i {
		font-size: 1.75rem;
	}

	.menu_info section h3 > i::after {
		content: "円";
		font-size: 1.25rem;
	}

	.menu_info section h3 > em {
		font-size: 1.15rem;
	}




#menu_list_main > ul > li article > ul.adjust {
	display: inline-flex;
}

#menu_list_main article ul.adjust li {
	margin-right: auto !important;
	margin-left: auto !important;
}








#restaurant-foot {
	width: 90%;
	max-width: 1240px;
	margin: 3.00rem auto 0 !important;
}

	#restaurant-foot > * {
		margin-bottom: 3.00rem !important;
	}

		#restaurant-foot > * > h2 {
			margin: 2.00rem 0 !important;
			text-align: center;
		}

		#restaurant-foot > * > article {
			display: flex;
			justify-content: space-between;
		}

			#for_kids > article > dl {
				display: flex;
				justify-content: space-between;

				width: calc(100% / 2 - 10px);
			}

				#for_kids > article > dl > dt {
					width: 60%;
				}

					#for_kids > article > dl > dt img {
						width: 100%;
					}

				#for_kids > article > dl > dd {
					width: calc(40% - 30px);
				}

					#for_kids > article > dl > dd > p {
						display: flex;
						flex-direction: column;
					}

						#for_kids > article > dl > dd > p > strong {
							font-size: 1.75rem;
							font-weight: bold;
						}

						#for_kids > article > dl > dd > p > i {
							font-size: 1.75rem;
							font-weight: bold;
						}

							#for_kids > article > dl > dd > p > i::after {
								content: "円";
								font-size: 1.25rem;
							}

					#for_kids > article > dl > dd > ul > li {
						font-size: 0.90rem;
					}

#to_banquet {
	display: flex;
	justify-content: space-between;
}

	#to_banquet > figure {
		width: calc(100% / 4 - 10px);
	}

		#to_banquet > figure img {
			width: 100%;
		}

	#to_banquet > section {
		width: calc(100% / 4 * 3 - 10px);
	}

		#to_banquet > section > h2 {
			margin-bottom: 1.25rem !important;
		}

		#to_banquet > section > article > p {
			margin-bottom: 1.00rem !important;
			font-size: 1.10rem;
		}

		#to_banquet > section > article > ul > li {
			padding-left: 1.00rem !important;
			margin-bottom: 0.50rem !important;
			font-size: 0.90rem;
			text-indent: -1.00rem;
		}

			#to_banquet > section > article > ul > li:last-child {
				padding: 1rem !important;
				/* text-align: center; */
				text-indent: 0;
			}

				#to_banquet > section > article > ul > li a {
					display: inline;
					margin: 0 5px !important;
					background: white;
					border: 1px solid rgba(220 105 140 / 0.80);
					color: rgba(220 105 140 / 0.80);
				}

				#to_banquet > section > article > ul > li a:hover {
					background: rgba(220 105 140 / 0.80);
					color: white;
				}

				#to_banquet > section > article > ul > li:last-child > a:nth-child(1) {
					text-align: right;
				}

				#to_banquet > section > article > ul > li:last-child > a:nth-child(2) {
					text-align: left;
				}
#course-lyon,
#course-koiki,
#course-season_kaiseki {
	width: 87% !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

@media screen and (max-width: 767px) {
	#to_banquet {
		display: flex;
		flex-direction:column-reverse;
	}

		#to_banquet > figure,
		#to_banquet > section {
			width: 100%;
			margin-bottom: 1.00rem !important;
		}

}





@media screen and (max-width: 960px) {
	#course-lyon,
	#course-koiki,
	#course-season_kaiseki {
		width: 100% !important;
	}

	#head-info {
		width: 100%;
	}

		#head-info > ul > li {
			max-width: calc(100% / 2 - 20px);
		}

	#for_kids > article > dl {
		flex-direction: column;
		justify-content: start;
	}

		#for_kids > article > dl > dt,
		#for_kids > article > dl > dd {
			width: 100%;
		}

			#for_kids > article > dl > dd > p {
				flex-direction: row;
				align-items: baseline;
			}

				#for_kids > article > dl > dd > p *:nth-child(1) {
					margin-right: 0.75rem !important;
				}

	
}

@media screen and (max-width: 600px) {
	#head-info > ul > li {
		max-width: 100%;
	}


	#for_kids > article {
		flex-wrap: wrap;
	}

		#for_kids > article > dl {
			width: 100%;
			margin-bottom: 70px !important;
			border: 1px solid rgba(95 175 160 / 0.75);
			border-radius: 3px;
		}

			#for_kids > article > dl > dd {
				padding: 20px !important;
			}

}


			#items_for_celebrating > article > dl {
				width: calc(100% / 4 - 10px);
			}

				#items_for_celebrating > article > dl > dt {
					margin-bottom: 1.00rem !important;
				}

					#items_for_celebrating > article > dl > dt > h3 > img {
						width: 100%;
					}

					#items_for_celebrating > article > dl > dd > * {
						margin-bottom: 1.00rem !important;
					}

					#items_for_celebrating > article > dl > dd > .title {
						font-size: 1.25rem;
					}

					#items_for_celebrating > article > dl > dd > .comment {
						font-size: 0.90rem;
					}

@media screen and (max-width: 960px) {
	#items_for_celebrating > article {
		flex-wrap: wrap;
	}

		#items_for_celebrating > article > dl {
			width: calc(100% / 2 - 10px);
		}

	
}

@media screen and (max-width: 600px) {
	#items_for_celebrating > article > dl {
		width: 100%;
	}

	
}


.sub_imgs {
	display: flex;
	justify-content: space-between;
}

.sub_imgs._2in3 {
	display: flex;
	justify-content: start;
}

.sub_imgs > figure {
	width: calc(100% / 3 - 10px);
	margin-top: 1.00rem !important; 
}

.sub_imgs._2p > figure {
	width: calc(100% / 2 - 10px);
	margin-top: 1.00rem !important;
}

.sub_imgs._2in3 > figure {
	width: calc(100% / 3 - 10px);
	margin-top: 1.00rem !important;
	margin-right: 1.00rem !important;
}


.sub_imgs figcaption {
	margin-top: 0.75rem !important; 
	font-size: 0.85rem;
}

.s_plate {
	padding-left: 1.00rem !important;
	margin-top: 1.00rem !important;
}


.gup {
	display: inline-block;
	padding: 0.75rem !important;
	margin: 1.00rem 1.00rem 1.00rem 1.00rem !important;
	background: rgba(250 250 250/ 1.00);
	border-radius: 3px;
/*
	border: 1px solid rgba(95 175 160/ 0.8);
	box-shadow: 0px 10px 10px -3px rgba(0 0 0 / 0.70);
*/
}

#menu_list_main h1 + p {
	margin-top: 1.00rem !important;
	text-align: center
}








	#list-drinks * {
		font-family: serif;
		font-size: 1.00rem;
	}

	#list-drinks img {
		width: 100%;
		margin-bottom: 1.00rem !important;
	}

	#list-drinks {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;

		box-sizing: border-box;
		width: 100%;
		max-width: 1224px;
		padding: 0 20px !important;
		margin: 2.00rem auto !important;

		line-height: 1.35;
	}

	#list-drinks > ul {
		width: calc(50% - 20px);
	}

	/* (super) */
	#list-drinks > ul > li.grps {
	}

	/* [] */
	#list-drinks > ul > li.grps > dl.grp_one {
		
	}

	/* [].id */
	#list-drinks > ul > li.grps > dl.grp_one > dt > h4[id^=grp_id_] {
		display: flex;
		align-items: center;
		justify-content: center;

		height: 3.00rem;
		padding: 2.50rem !important;
		border-bottom: 2px solid rgba(200 200 200/ 1.00);

		font-size: 2.00rem;
	}

	/* [].sub[] */
	#list-drinks  ol.subs {
	}

	/* [].sub[].* */
	#list-drinks   li.sub_one {
	}

	#list-drinks   li.sub_one > dl.sub {
	}

	#list-drinks  .sub-ttl h5 {
		padding: 0.75rem 0 !important;
		font-size: 1.25rem;
		text-align: center;
	}

	/* [].sub[].items[] grpに属する商品群 */
	#list-drinks   ul.sub-items {
		
	}

	/* [].sub[].items[].() 商品枠 */
	#list-drinks   ul.sub-items > li {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;

		padding: 0.25rem 0 0.25rem 0 !important;
		margin-bottom: 0.25rem !important;
		border-bottom: 1px dotted rgba(200 200 200/ 1.00);
	}

	/* [].sub[].items[].name 商品名 */
	#list-drinks   h6.items-name {
		min-width: 65%;

	}

	/* [].sub[].items[].detail[] 商品の容量及び価格の大枠 */
	#list-drinks   ul.detail {
		width: 32%;
		max-width: 9.00rem;
		margin-left: auto !important;
	}

	/* [].sub[].items[].detail[] 商品の容量及び価格の小枠 */
	#list-drinks   ul.detail > li {
		display: flex;
		justify-content: space-between;
	}

	/* [].sub[].items[].detail[].cap 容量/識別子 */
	#list-drinks   i.cap{
		width: calc(50% - 3px);
		max-width: 3.00rem;
		text-align: center;

		border: 1px solid green;
	}

	/* [].sub[].items[].detail[].price 価格 */
	#list-drinks   b.price {
		width calc(50% - 3px);
		max-width: 6.00rem;
		text-align: right;

		border: 1px solid blue;
	}

	/* [].sub[].items[].exp */
	#list-drinks   p.exp {
		width: 100%;
		/*padding-top: 0.50rem !important;*/

		font-size: 0.85rem;
	}





@media screen and (max-width: 960px) {
	#list-drinks {
		flex-direction: column;
		padding: 0 !important;
	}

	#list-drinks > ul {
		width: 100%;
	}
	#restaurant-head > div:nth-child(2) ul {
		flex-wrap: wrap;
	}

		#restaurant-head > div:nth-child(2) ul li {
			width: calc(100% / 2 - 7px);
		}

	#tokuten {
		width: 100%;
	}

	#menu_list_main > ul > li {
		width: 100%;
		border: 1px solid rgba(220 105 140 / 0.50);
	}

		#menu_list_main > ul > li > ol {
			flex-direction: column !important;
		}

		#menu_list_main > ul > li > ol.row > li:nth-child(1),
		#menu_list_main > ul > li > ol.row > li:nth-child(2),
		#menu_list_main > ul > li > ol.row-rev > li:nth-child(1),
		#menu_list_main > ul > li > ol.row-rev > li:nth-child(2) {
			width: 100%;
			margin-bottom: 2.50rem !important;
		}

	.menu_info article {
		padding: 20px !important;
	}


}


@media screen and (max-width: 600px) {
	#restaurant-head > div:nth-child(2) ul li {
		width: 100%;
	}

	#tokuten ul {
		flex-direction: column;
	}

		#tokuten > ul > li:nth-child(2)  {
			width: 100%;
		}
}

