@charset "UTF-8";



/* ------------------------------
    area_ttl
------------------------------ */

.area_ttl {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
/*	justify-content: center;*/
	align-items: center;
	height: 240px;
	background: url(../img/restaurant/bg_restaurant.jpg) no-repeat;
	background-size: cover;
}

.area_ttl .ttl_page {
	text-align: center;
	font-weight: 200;
	font-size: 4.14rem;
	color: #fff;
}

@media screen and (max-width: 768px) {
	.area_ttl {
		height: 120px;
	}
	.area_ttl .ttl_page {
		font-size: 1.8rem;
	}
}


/* -----------------------------------------------
    arc_restaurant
----------------------------------------------- */

.txt_first {
	padding: 80px 0 40px;
	text-align: center;
	font-size: 2.8rem;
	font-weight: 200;
	line-height: 1.75;
}

.arc_restaurant .ttl_rest {
	text-align: center;
	font-size: 6rem;
	letter-spacing: 0.26em;
	margin-bottom: 20px;
	padding-bottom: 50px;
	background: url(../img/common/bg_cross01.png) 0 bottom repeat-x;
	margin-top: 30px;
}

.arc_restaurant .txt_time {
	text-align: center;
	font-size: 2.8rem;
	letter-spacing: 0.16em;
}

.arc_restaurant .txt_lead {
	width: 600px;
	margin: 70px auto 0;
	font-size: 1.7rem;
	line-height: 1.7;
	padding-left: 1.5em;
}

.arc_restaurant .txt_lead span {
	display: block;
	font-size: 1.4rem;
	line-height: 1.7;
	margin-top: 1em;
	font-weight: 500;
}

/* ------------------------------
    sec_dish
------------------------------ */

.sec_dish .inner {
	padding: 80px 0 100px;
}

.sec_dish + .sec_dish .inner {
	border-top: 1px solid #330014;
}

.sec_dish .ttl_dish {
	margin-bottom: 40px;
	text-align: center;
}

.sec_dish .ttl_dish .inner_ttl {
	display: inline-block;
	font-size: 3.6rem;
	vertical-align: middle;
	font-weight: 200;
}

.sec_dish .ttl_dish .inner_ttl:before,
.sec_dish .ttl_dish .inner_ttl:after {
	content: "";
	display: inline-block;
	width: 30px;
	height: 30px;
	vertical-align: middle;
	background: url(../img/common/ico_checker01.svg);
}

.sec_dish .ttl_dish .inner_ttl:before {
	margin-right: 35px;
}

.sec_dish .ttl_dish .inner_ttl:after {
	margin-left: 35px;
}

.sec_dish .box_dish {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}

.sec_dish .box_dish .box_img figure {
	margin: 0;
}

.sec_dish .box_dish .box_txt {
	width: 397px;
	background: url(../img/common/bg_cross.png) #330014 50% 50%;
	padding: 45px;
}

.sec_dish .box_dish .box_txt .txt {
	color: #fff;
	font-size: 1.7rem;
	line-height: 2.58;
}

.morning .sec_dish .box_dish {
	display: block;
}

.morning .sec_dish .box_dish .box_img {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}

.morning .sec_dish .box_dish .box_txt {
	width: 100%;
	margin-top: 10px;
}

@media screen and (max-width: 768px) {
	.txt_first {
		padding: 10% 0 5%;
		font-size: 1.7rem;
	}

	.arc_restaurant .ttl_rest {
		font-size: 3.6rem;
		margin-bottom: 3%;
		padding-bottom: 8%;
		margin-top: 5%;
	}

	.arc_restaurant .txt_time {
		font-size: 1.7rem;
	}

	.arc_restaurant .txt_lead {
		width: 92%;
		margin: 6% auto 0;
		font-size: 1.7rem;
		padding-left: 0;
	}

	.arc_restaurant .txt_lead span {
		font-size: 1.2rem;
	}
	
	
	.sec_dish .inner {
		padding: 10% 0 13%;
	}
	.sec_dish .ttl_dish {
		margin-bottom: 6%;
	}
	.sec_dish .ttl_dish .inner_ttl {
		font-size: 2.2rem;
	}
	.sec_dish.syabusyabu .ttl_dish .inner_ttl {
		line-height: 1.4;
		position: relative;
	}
	.sec_dish.syabusyabu .ttl_dish .inner_ttl:before,
	.sec_dish.syabusyabu .ttl_dish .inner_ttl:after{
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
	}
	.sec_dish.syabusyabu .ttl_dish .inner_ttl:before{
		left: -36px;
	}
	.sec_dish.syabusyabu .ttl_dish .inner_ttl:after{
		right: -36px;
	}
	
	.sec_dish .ttl_dish .inner_ttl:before,
	.sec_dish .ttl_dish .inner_ttl:after {
		width: 22px;
		height: 22px;
		background-size: contain;
	}
	.sec_dish .ttl_dish .inner_ttl:before {
		margin-right: 1.2em;
	}
	.sec_dish .ttl_dish .inner_ttl:after {
		margin-left: 1.2em;
	}

	.sec_dish .box_dish {
		display: block;
	}

	.sec_dish .box_dish .box_img figure {
		margin: 0;
	}

	.sec_dish .box_dish .box_txt {
		width: 100%;
		padding: 5%;
		margin-top: 10px;
	}

	.sec_dish .box_dish .box_txt .txt {
		font-size: 1.25rem;
	}

	.morning .sec_dish .box_dish {
		display: block;
	}

	.morning .sec_dish .box_dish .box_img figure{
		width: 50%;
	}
}


/* -----------------------------------------------
    arc_private
----------------------------------------------- */

.arc_private .area_ttl {
	background: url(../img/restaurant/bg_private.jpg) no-repeat center bottom;
	background-size: cover;
	height: auto;
	padding: 80px 0 0;
	height: 760px;
	display: block;
	margin-bottom: 120px;
}

.arc_private .area_ttl .inner {
	position: relative;
	height: 100%;
}

.arc_private .area_ttl .box_txt {
	width: 530px;
}

.arc_private .area_ttl .box_txt * {
	color: #fff;
}

.arc_private .area_ttl .box_txt .ttl_copy {
	font-size: 2.3rem;
	font-weight: 200;
	border: 1px solid #fff;
	width: 500px;
	height: 50px;
	line-height: 50px;
	text-align: center;
}

.arc_private .area_ttl .box_txt .ttl_private {
	font-size: 6.2rem;
	letter-spacing: 0.14em;
	margin-bottom: .5em;
}

.arc_private .area_ttl .box_txt .ttl_private span {
	font-size: 3.7rem;
	font-weight: 200;
	letter-spacing: 0.15em;
}

.arc_private .area_ttl .box_txt .txt_lead {
	font-size: 1.7rem;
	line-height: 2.58;
	letter-spacing: 0.03em;
}

.arc_private .area_ttl .box_img {
	width: 100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	position: absolute;
	bottom: -118px;
}

.arc_private .area_ttl .box_img figure {
	margin: 0;
}


/* ------------------------------
    sec_private
------------------------------ */

.sec_private {
	padding: 100px 0 140px;
}

.sec_private .ttl_sec {
	margin-bottom: 40px;
	text-align: center;
}

.sec_private .ttl_sec .inner_txt {
	display: inline-block;
	font-size: 3.6rem;
	vertical-align: middle;
	font-weight: 200;
}

.sec_private .ttl_sec .inner_txt:before,
.sec_private .ttl_sec .inner_txt:after {
	content: "";
	display: inline-block;
	width: 30px;
	height: 30px;
	vertical-align: middle;
	background: url(../img/common/ico_checker01.svg);
}

.sec_private .ttl_sec .inner_txt:before {
	margin-right: 35px;
}

.sec_private .ttl_sec .inner_txt:after {
	margin-left: 35px;
}

.sec_private .txt_lead {
	font-size: 1.7rem;
	text-align: center;
	line-height: 2.58;
	margin-bottom: 50px;
}

.sec_private .box_private {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}
.sec_private .box_private + .box_private{
	margin-top: 85px;
}
.sec_private .box_private .box_img{
	padding-top: 8px;
}
.sec_private .box_private .box_img figure {
	margin: 0;
}

.sec_private .box_private .box_txt {
	width: 558px;
}

.sec_private .box_private .box_txt .ttl {
	font-size: 2.5rem;
	line-height: 1.68;
	font-weight: 200;
	letter-spacing: 0.05em;
}
.sec_private .box_private .box_txt .txt {
	font-size: 1.7rem;
	line-height: 2.58;
	margin-top: .5em;
}
.sec_private .box_private .box_note{
	margin-top: 40px;
	border-top: 1px solid;
	border-bottom: 1px solid;
	padding: 15px 0;
}
.sec_private .box_private .box_note .txt01,
.sec_private .box_private .box_note .list_note li{
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.75;
	letter-spacing: 0.1em;
}
.sec_private .box_private .box_note .txt02{
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.7;
	margin-top: 1em;
	letter-spacing: 0.1em;
}


@media screen and (max-width: 768px) {
	.arc_private .area_ttl {
		padding: 40px 0 0;
		height: auto;
		min-height: 320px;
		margin-bottom: 8%;
	}
	.arc_private .area_ttl .inner{
		min-height: 320px;
	}
	.arc_private .area_ttl .box_txt {
		width: 100%;
	}
	.arc_private .area_ttl .box_txt .ttl_copy {
		font-size: 1.4rem;
		width: auto;
		max-width: 300px;
		height: 40px;
		line-height: 40px;
	}

	.arc_private .area_ttl .box_txt .ttl_private {
		font-size: 3.7rem;
	}

	.arc_private .area_ttl .box_txt .ttl_private span {
		font-size: 2.3rem;
	}

	.arc_private .area_ttl .box_txt .txt_lead {
		font-size: 1.25rem;
		max-width: 310px;
	}

	.arc_private .area_ttl .box_img {
		bottom: -10vw;
	}
	.arc_private .area_ttl .box_img figure{
		width: 33%;
	}
	
	.sec_private {
		padding: 11% 0;
	}

	.sec_private .ttl_sec {
		margin-bottom: 6%;
	}

	.sec_private .ttl_sec .inner_txt {
		font-size: 2.2rem;
	}

	.sec_private .ttl_sec .inner_txt:before,
	.sec_private .ttl_sec .inner_txt:after {
		width: 22px;
		height: 22px;
		background-size: contain;
	}

	.sec_private .ttl_sec .inner_txt:before {
		margin-right: 1.2em;
	}

	.sec_private .ttl_sec .inner_txt:after {
		margin-right: 1.2em;
	}

	.sec_private .txt_lead {
		font-size: 1.25rem;
		margin-bottom: 8%;
	}

	.sec_private .box_private {
		display: block;
	}
	.sec_private .box_private + .box_private{
		margin-top: 13%;
	}
	.sec_private .box_private .box_img{
		padding-top: 5%;
		text-align: center;
	}

	.sec_private .box_private .box_txt {
		width: 100%;
	}

	.sec_private .box_private .box_txt .ttl {
		font-size: 1.8rem;
	}
	.sec_private .box_private .box_txt .txt {
		font-size: 1.25rem;
	}
	.sec_private .box_private .box_note{
		margin-top: 4%;
	}
	.sec_private .box_private .box_note .txt01,
	.sec_private .box_private .box_note .list_note li{
		font-size: 1.2rem;
	}
	.sec_private .box_private .box_note .txt02{
		font-size: 1rem;
	}
}