@charset "UTF-8";

@media screen and (max-width: 768px) {
/*------------ CONTENT共通 ------------*/
	.main.concept {
	  background: url(../images/concept/mv.jpg) no-repeat center top;
	  background-size: cover;
	}
	.main.lunch {
	  background: url(../images/lunch/mv_r2.jpg) no-repeat center top;
	  background-size: cover;
	}
	.main.dinner {
	  background: url(../images/dinner/mv_r2.jpg) no-repeat center top;
	  background-size: cover;
	}
	.main.party {
	  background: url(../images/floor/mv.jpg?v20231124) no-repeat center top;
	  background-size: cover;
	}
	.main h2 {
		margin-top: -45px;
	}
	.main h2 span.ttl {
		font-size: 38px;
	}
	.main h2 span.sub {
      font-size: 15px;
	}
	.container {
		padding: 30px 0;
	}
	.main_text {
		font-size: 120%;
		margin-bottom: 30px;
		line-height: 2;
		padding: 0 40px;
	}
	#concept .main_text {
		font-size: 120%;
	}
	#lunch .page_btn li {
		width: 36%;
	}
	#lunch .page_btn li.week3day{
		width: 36%;
	}
	#lunch .page_btn li.week2day{
		width: 36%;
	}
	.page_btn li a {
		width: 220px;
		font-size: 14px;
		padding: 14px 16px 14px 0;
	}
	#lunch .page_btn li:nth-child(4) a {
		padding: 20px 16px 20px 0;
	}
	#lunch .page_btn li.week3day a {
		padding: 15px 16px 20px 0;
	}
	#lunch .page_btn li.week2day a {
		padding: 15px 16px 20px 0;
	}
	/*------------ 共通レイアウト ------------*/
	.content_box,
	.content_box02,
	.dinner_drink .content_box {	
	  width: 100%;
	  max-width: 400px;
	  height: auto;
	  margin: 0 auto 50px;
	}
	.content_box__image,
	.content_box02 .content_box__image,
	.dinner_drink .content_box__image {
	  position: relative;
	  width: 100%;
	}
	.content_box__text,
	.content_box02 .content_box__text,
	.dinner_drink .content_box__text {
		width: 100%;
		padding: 10px 40px 15px 30px;
		position: relative;
		top: auto;
		left: auto;
		margin: 0 auto;
		transform: none;
	}
	#lunch .content_box__text {
		padding: 10px 10px 15px 20px;
	}
	.dinner_drink .content_box__text {
		padding: 10px 10px 15px 20px;
	}
	.content_box__small .content_box__text {
		font-size: 90%;
		padding: 10px 20px 15px 20px;
	}
	.content_box__text h3,
	.content_box__text h4 {
		font-size: 18px;
		margin-bottom: 10px;
	}
	.content_box__small span {
		top: 5px;
		right: 10px;
	}
	.content_box__text p {
		font-size: 13px;
		line-height: 1.8;
	}
	.content_box__small .content_box__text p {
		font-size: 12px;
		line-height: 1.6;
	}
	/*------------ LUNCH/DINNER ------------*/
	.menu_wrapper {
		width: calc(100% - 30px);
		padding: 20px 30px;
	}
	.content_section {
		margin-bottom: 40px;
	}
	.content_section h3 {
		font-size: 24px;
	}
	.content_section h3 span.limited {
		font-size: 13px;
		letter-spacing: 0;
		position: absolute;
   		left: calc(100% + 1em);
	}
	.content_section h4 {
		font-size: 120%;
	}
	.content_section__image {
		width: 100%;
		max-width: 400px;
	}
	.content_section__text {
		font-size: 13px;
		width: auto;
	}
	ul.item_l {
		width: 100%;
	}
	ul.item_l li {
		margin-bottom: 30px;
	}
	.item_image {
		width: 250px;
		float: none;
		margin: 0 auto 10px;
	}
	ul.item_l li:nth-child(2n) .item_image {
		float: none;
	}
	.item_text {
		width: auto;
		float: none;
		padding: 0;
	}
	ul.item_l li:nth-child(2n) .item_text {
		float: none;
		padding: 0;
	}
	.item_text .item_text__name {
		margin-bottom: 0.5em;
		text-align: center;
	}
	.price {
		position: relative;
		right: auto;
	}
	.item_text .item_text__point {
		font-size: 13px;
		max-width: 400px;
		margin: 0 auto;
	}
	.item {
		/*width: 270px;*/
		width: 240px;
		margin: 0 auto 40px;
		text-align: left;
	}
	.item li {
		margin-bottom: 1em;
		position: relative;
	}
	.item li dd {
		position: absolute;
		right: 0;
		top: 0;
		text-align: right;
	}
	.lunch_setmenu {
		width: 240px;
	}
	.lunch_setmenu h4{
		text-align: center;
	}
	.lunch_setmenu li {
		margin-bottom: 1em;
		/*text-align: center;*/
		text-align: left;
	}
	.lunch_setmenu li dt {
		padding: 15px 20px;
		margin-bottom: 0.2em;
	}
	.lunch_setmenu li dd {
		display: block;
		margin-left: 0;
	}
	.menu_section {
		margin-top: 2em;
		position: relative;
	}
	.head_label {
		top: -1.4em;
		left: 50%;
		margin-left: -2em;
		font-size: 90%;
	}
	.menu_section .content_section__text {
		font-size: 13px;
	}
	.menu_section .item {
		width: 270px;
	}
	.winelist .menu_section .item {
		width: 270px;
	}
	.position_left,
	.position_right {
		display: block;
		margin: 0 auto;
		width: auto;
	}
	.menu_box {
		width: 100%;
	}
	.course_list {
		width: auto;
	}
	.course_list li dd {
		margin-left: 2em;
	}
	.price_box {
		padding: 10px 0 10px 15px;
	}
	.mb-84 {
		margin-bottom: 0px;
	}
	.mb-81 {
		margin-top: 0px;
	}
@media screen and (max-width: 360px) {
		.price_box dl dt {
			float: none;
		}
		.price_box dl dd {
			line-height: 1;
			margin-left: 0;
			margin-bottom: 1em;
		}
	}
	.menu_bg {
		display: block;
		padding: 2em 0 1em;
	}
	.plus {
		margin: 20px auto;
		transform: scale(0.7);
	}
	.buffet_menu {
		margin-top: 0;
	}
	.column_container {
		float: none;
		margin: 0;
	}
	/*------------ PARTY/FLOOR ------------*/
	.floor_section h3 {
		font-size: 2.5em;
	}
	.floor_section h3 span:after {
		height: 14px;
	}
	.floor_section .main_text {
		font-size: 100%;
		padding: 0 40px;
		margin-bottom: 30px;
	}
	.party_menu {
		width: calc(100% - 30px);
    	padding: 20px;
		display: inherit;
		margin: 0 auto 20px;
	}
	.party_menu__image {
		width: auto;
		margin-right: 0;
		display: inherit;
	}
	.party_menu__text {
		width: auto;
    	padding: 0 10px;
	}
	.party_menu__text p.font_small {
		text-align: left;
	}
	.party_drink {
		padding: 20px 30px 10px;
		width: calc(100% - 30px);
	}
	.floor_section .tax_text {
		right: 20px;
	}
	.floor_map {		
		width: calc(100% - 30px);
		padding: 10px 20px 15px;
		margin-bottom: 30px;
	}
	/*.floor_image {
		margin-top: 20px;
	}
	.floor_image  li {
		margin-bottom: 20px;
	}
	.floor_image  li img {
		width: 80%;
		height: auto;
	}*/
}
@media screen and (max-width: 667px) {
	/*------------ PARTY/FLOOR ------------*/
	.floor_image {
		width: calc(100% - 30px);
	}
	.floor_image  li {
		width: 80%;
		min-width: 250px;
		margin-bottom: 15px;
	}
	.floor_image  li:nth-child(2) {
		margin-top: 0;
	}
}
@media screen and (max-width: 450px) {
	#lunch .page_btn li.page_btn_li2.week3day {
		width: 70%;
	}		
	#lunch .page_btn li.page_btn_li2.week2day {
		width: 70%;
	}		
}
@media screen and (max-width: 359px) {
	/*------------ LUNCH/DINNER ------------*/
	.menu_section {
		transform: scale(0.85);
		transform-origin: left center;
	}
}