@charset "utf-8";
/* CSS Document */
@media all{

#christmaslunch #firstview{
	width: 100%;
	height: 56vw;
	position: relative;
}
	#firstview .fvimage{
		z-index: -1;
	}
#firstview .fvimage li{
	height: 56vw;
	margin: 0;
}
	#firstview .fvimage li img{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	
	#christmaslunch #title{
		padding: 80px 0;
		background: url("/common/images/texture_gry.jpg");
	}
	#christmaslunch #title .fvbox{
		font-size: 4rem;
		width: 100%;
		text-align: center;
	}
	#christmaslunch #title .fvbox h1{
		font-size: 4rem;
		letter-spacing: .1em;
	}
	#christmaslunch #title .fvbox .h1sub{
		font-size: 2rem;
		letter-spacing: .6em;
		margin-bottom: .5em;
	}
	#christmaslunch #title .fvbox .date{
		font-size: 2.5rem;
		margin-bottom: 1em;
	}
	
	#dscrptn{
		padding: 100px 0;
		text-align: center;
	}
	#dscrptn .concept{
		margin-bottom: 80px;
	}
	#dscrptn h2{
		font-size: 2.6rem;
		letter-spacing: .5em;
		margin-bottom: 2em;
	}
	#dscrptn .text{
		font-size: 1.7rem;
		line-height: 2.2em;
	}
	#dscrptn .chef{
		width: calc(100% - 80px);
		max-width: 1000px;
		margin: 0 auto;
		display: flex;
	}
	#dscrptn .chef .textbox{
		width: 65%;
		padding-right: 2em ;
		box-sizing: border-box;
		text-align: justify;
	}
	#dscrptn .chef .image{
		width: 35%;
	}
	#dscrptn .ryourichou{
		width: calc(100% - 80px);
		max-width: 620px;
		margin: 0 auto;
		display: flex;
	}
	#dscrptn .ryourichou .image{
		width: 45%;
	}
	#dscrptn .ryourichou .textbox{
		width: 55%;
		padding: 1.5em 0 0 6em;
		box-sizing: border-box;
		text-align: justify;
	}
	#dscrptn .ryourichou .textbox .text{		
		font-size: 1.2rem;
		line-height: 2em;
	}
	#dscrptn .ryourichou .textbox .degree{
		font-size: 1.4rem;
		margin-bottom: 0.3rem;
	}
	#dscrptn .ryourichou .textbox .name{
		font-size: 3rem;
		margin-bottom: 0.5rem;
	}
	
	
	#menuarea,
	#option{
		width: 100%;
		background: url("/common/images/texture_grn.jpg");
		color: #fff;
	}
	#menuarea{
		padding: 100px 0 20px;
	}
	#option{
		padding: 0 0 80px;
	}
	#menuarea h2,
	#option h2{
		font-size: 2.6rem;
		margin-bottom: 40px;
		text-align: center;
	}
	.menubox{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		font-size: 1.5rem;
	}
	#menuarea .menubox{
		width: calc(100% - 40px);
		max-width: 1000px;
	}
	#option .menubox{
		width: calc(100% - 70px);
		max-width: 1000px;
	}
	.menubox h3{
		display: block;
		width: 100%;
		font-size: 2rem;
		margin-bottom: 1em;
		text-align: center;
	}
	.menubox .photos{
		width: 100%;
	}
	.menubox .shinagaki dl{
		display: flex;
		flex-wrap: wrap;
	}
	.menubox .shinagaki dd{
		width: 100%;
		text-align: left;
		letter-spacing: .1em;
		margin-bottom: 1em;
	}
	.menubox .photos ul{
		display: flex;
		flex-wrap: wrap;
	}
	.menubox .photos li{
		width: 50%;
		padding: 2px;
		box-sizing: border-box;
	}
	.menubox .photos.pcphoto li,
	.menubox .photos.spphoto li{
		width: 100%;
	}
	.menubox .shinagaki .text{
		text-align: justify;
		margin-bottom: 1em;
	}
	.menubox .shinagaki .menu{
		line-height: 2;
	}
	#option .present{
		width: 400px;
		margin: 0 auto 150px;
		text-align: center;
	}
	#option .present .text{	
		font-size: 1.8rem;
	}
	#option .present .image{	
		width: 100%;
		margin-bottom: 5px;
		position: relative;
	}
	#option .present .image::after{
		position: absolute;
		content: "※写真はイメージ";
		bottom: 2px;
		right: 5px;
		color: #000;
	}
	#option .present .subtext{	
		font-size: 1.4rem;
		line-height: 1.3;
	}
	#option .present .subtext span{
		font-size: 1.8rem;
	}
	#option .menubox ul{
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-around;
	}
	#option .menubox ul li{
		width: calc(100% / 3 - 10px);
		margin-bottom: 10px;
	}
	
	#privateroom h2{
		font-size: 2.6rem;
		margin-bottom: 0.5em;
	}
	#privateroom .h2sub{
		font-size: 1.5rem;
		margin-bottom: 40px;
	}
	#privateroom{
		padding: 120px 0 80px;
		background: url("/common/images/texture_bge.jpg");
		text-align: center;
	}
	#privateroom ul.koshitsu{
		width: calc(100% - 40px);
		max-width: 1048px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
	}
	#privateroom ul.koshitsu li{
		width: calc(100% / 3);
		padding: 0 14px;
		box-sizing: border-box;
		margin-bottom: 80px;
	}
	#privateroom ul.koshitsu li .image{
		margin-bottom: 15px;
	}
	#privateroom ul.koshitsu li .name{
		font-size: 2rem;
		margin-bottom: 0.5em;
	}
	#privateroom ul.koshitsu li .text{
		font-size: 1.2rem;
	}
	
	#reservation{
		padding: 80px 0;
		box-sizing: border-box;
		background: #4b6647;
		color: #fff;
	}
	#reservation > div{
		padding-bottom: 80px;
	}
	#reservation h2{
		font-size: 2.6rem;
		margin-bottom: 1em;
		text-align: center;
	}
	#reservation .date{
		width: calc(100% - 40px);
		max-width: 900px;
		margin: 0 auto 4em;
		display: flex;
		flex-wrap: wrap;
		font-size: 2.4rem;
		text-align: right;
	}
	#reservation .date li{
		width: calc(100% / 5);
		box-sizing: border-box;
		margin-bottom: .5em;
	}
	#reservation .note p{
		font-size: 2rem;
		margin-bottom: 1em;
		text-align: center;
	}
#tablecheck .nextpage{
	display: block;
	width: calc(100% - 40px);
	max-width: 450px;
	margin: 0 auto 40px;
	font-size: 1.6rem;
	padding: 0.5em;
	box-sizing: border-box;
	text-align: center;
	background: #a57a43;
	color: #fff;
}
	.address dl{
		font-size: 2rem;
		width: 26em;
		display: flex;
		flex-wrap: wrap;
		margin: 0 auto;
	}
	.address dd{
		width: calc(100% - 6em);
	}
	.address dd a{
		color: #fff;
	}
	
}

@media screen and (max-width: 567px){

	#christmaslunch #firstview .hachiyoutei{
		position: absolute;
		bottom: 5vw;
		left: 5vw;
		width: 50px;
		height: auto;
		filter: drop-shadow(0 0 5px rgba(0,0,0,.6));
	}
	#christmaslunch #firstview .tategaki{
		position: absolute;
		top: 5vw;
		right: 10vw;
		font-size: 1.2rem;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
		text-orientation: upright;
		color: #fff;
		filter: drop-shadow(0 0 5px rgba(0,0,0,.6));
	}
	#christmaslunch #firstview .text{
		position: absolute;
		bottom: 5vw;
		left: 20vw;
		font-size: 1.1rem;
		line-height: 1.5;
		color: #fff;
		filter: drop-shadow(0 0 5px rgba(0,0,0,.6));
	}
	#christmaslunch #firstview .text span{
		display: block;
		text-indent: 5em;
	}
	
	#christmaslunch #title{
		padding: 20px 0;
	}
	#christmaslunch #title .fvbox .date{
		margin-bottom: 0.3em;
	}
	#christmaslunch #title .fvbox h1{
		font-size: 1.5rem;
		letter-spacing: .3em;
	}
	#christmaslunch #title .fvbox .h1sub{
		font-size: 1.2rem;
		letter-spacing: .1em;
	}
	
	#dscrptn{
		padding: 80px 0;
		text-align: center;
	}
	#dscrptn h2{
		font-size: 1.8rem;
	}
	#dscrptn .text{
		font-size: 1.1rem;
		line-height: 2em;
	}
	#dscrptn .chef,
	#dscrptn .ryourichou{
		flex-wrap: wrap;
	}
	#dscrptn .chef .image,
	#dscrptn .ryourichou .image{
		width: 100%;
	}
	#dscrptn .chef .textbox{
		width: 100%;
		padding: 0 0 2em;
		box-sizing: border-box;
	}
	#dscrptn .ryourichou .textbox{
		width: 100%;
		padding: 2em 0 0;
		box-sizing: border-box;
	}
	#dscrptn .ryourichou .textbox .degree{
		font-size: 1rem;
		margin-bottom: 0.1rem;
		text-align: center;
	}
	#dscrptn .ryourichou .textbox .name{
		font-size: 2.2rem;
		margin-bottom: 0;
		text-align: center;
	}
	#dscrptn .ryourichou .textbox .ename{
		font-size: 1rem;
		margin-bottom: 1em;
		text-align: center;
	}
	#dscrptn .ryourichou .textbox .text{
		font-size: 1rem;
	}
	
	#option h2{
		font-size: 2rem;
		margin-bottom: 20px;
	}
	.menubox{
		width: calc(100% - 30px);
		margin: 0 auto 50px;
		font-size: 1.2rem;
	}
	.menubox h3{
		font-size: 1.5rem;
	}
	.menubox .photos{
		padding-bottom: 20px;
	}
	.menubox .shinagaki{
		padding: 0 20px;
		box-sizing: border-box;
	}
	.menubox .shinagaki dl{
		display: flex;
		flex-wrap: wrap;
	}
	.menubox .shinagaki dt{
		width: 100%;
		text-align: left;
		letter-spacing: 0.1em;
	}
	.menubox .shinagaki dd{
		width: 100%;
		letter-spacing: .1em;
		margin-bottom: 1em;
	}
	.menubox .shinagaki .text{
		margin-bottom: 5em;
	}
	#option .present {
		width: calc(100% - 80px);
		max-width: 300px;
		margin: 0 auto 50px;
	}
	#option .present .text{
		font-size: 1.3rem;
	}
	#option .present .subtext{
		font-size: 1rem;
	}
	#option .menubox ul li{
		width: calc(100% / 2 - 10px);
	}
	#reservation > div {
    padding-bottom: 50px;
}
	#reservation .date{
		width: calc(100% - 40px);
		margin: 0 auto 2em;
		font-size: 1.6rem;
		text-align: right;
	}
	#reservation .date li{
		width: calc(100% / 2);
		box-sizing: border-box;
		margin-bottom: .5em;
	}
	#reservation .note p{
		font-size: 1.2rem;
		margin-bottom: 1em;
		text-align: center;
	}
	#privateroom{
		padding: 60px 0 120px;
	}
	#privateroom ul.koshitsu li{
		width: 100%;
		margin-bottom: 50px;
	}
	
	#reservation{
		padding: 80px 40px 0;
	}
	#reservation h2{
		font-size: 1.7rem;
	}
	.price dl,
	.time dl{
		width: 100%;
		margin: 0;
	}
	.price dt,
	.time dt{
		width: 100%;
		font-size: 1.6rem;
	}
	.price dd,
	.time dd{
		width: 100%;
		font-size: 1.8rem;
		margin-bottom: 1em;
	}
	.price .subtext{
		font-size: 1rem;
		text-align: left;
		text-indent: -1em;
		padding-left: 1em;
		box-sizing: border-box;
	}
	.parking .text{
		text-align: left;
	}
	.time dd span{
		display: block;
		font-size: 1.3rem;
		margin-bottom: 1em;
	}
	.parking .subtext{
		font-size: 1.2rem;
		text-align: left;
	}
	.parking .image{
		width: 100%;
	}
	.note li{
		font-size: 1.3rem;
	}
	.address dl{
		font-size: 1.5rem;
		width: 100%;
		margin: 0;
	}
	.address dt{
		width: 100%;
		text-align: left;
		margin-bottom: 0.5em;
	}
	.address dt:first-child{
		letter-spacing: 1em;
	}
	.address dd{
		width: 100%;
		margin-bottom: 2em;
	}
	
}

@media screen and (min-width: 568px) and (max-width: 1024px){

	#christmaslunch #firstview .hachiyoutei{
		position: absolute;
		bottom: 5vw;
		left: 5vw;
		width: 80px;
		height: auto;
		filter: drop-shadow(0 0 5px rgba(0,0,0,.6));
	}
	#christmaslunch #firstview .tategaki{
		position: absolute;
		top: 5vw;
		right: 5vw;
		font-size: 3rem;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
		text-orientation: upright;
		color: #fff;
		filter: drop-shadow(0 0 5px rgba(0,0,0,.6));
	}
	#christmaslunch #firstview .text{
		position: absolute;
		bottom: 7vw;
		left: 20vw;
		font-size: 2rem;
		line-height: 1.5;
		color: #fff;
		filter: drop-shadow(0 0 5px rgba(0,0,0,.6));
	}
	#christmaslunch #firstview .text span{
		display: block;
		text-indent: 5em;
	}
	
	#christmaslunch #title .fvbox h1{
		font-size: 3rem;
	}
	#christmaslunch #title .fvbox .h1sub{
		font-size: 1.5rem;
	}
	
	.menubox{
		margin: 0 auto 80px;
	}
	.menubox .shinagaki{
		padding: 0 16vw;
		box-sizing: border-box;
	}
	.menubox .photos{
		padding-bottom: 20px;
	}
	.menubox .photos li{
		padding: 5px;
		box-sizing: border-box;
	}
	.menubox .photos.spphoto li{
		padding: 0 16vw;
	}
	.menubox .shinagaki dt{
		width: 100%;
		box-sizing: border-box;
	}
	#reservation .date{
		max-width: 600px;
		font-size: 1.8rem;
	}
	.address dt{
		width: 7em;
		padding-right: 2em;
		box-sizing: border-box;
		text-align-last: justify;
	}
	
}

@media screen and (min-width: 1025px), print{

	#christmaslunch #firstview .hachiyoutei{
		position: absolute;
		bottom: 5vw;
		left: 5vw;
		width: 100px;
		height: auto;
		filter: drop-shadow(0 0 5px rgba(0,0,0,.6));
	}
	#christmaslunch #firstview .tategaki{
		position: absolute;
		top: 5vw;
		right: 5vw;
		font-size: 4rem;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
		text-orientation: upright;
		color: #fff;
		filter: drop-shadow(0 0 5px rgba(0,0,0,.6));
	}
	#christmaslunch #firstview .text{
		position: absolute;
		bottom: 10vw;
		left: 20vw;
		font-size: 3rem;
		line-height: 1.5;
		color: #fff;
		filter: drop-shadow(0 0 5px rgba(0,0,0,.6));
	}
	#christmaslunch #firstview .text span{
		display: block;
		text-indent: 5em;
	}
	
	.menubox{
		margin: 0 auto 80px;
	}
	#menuarea .menubox .shinagaki{
		width: 32em;
	}
	#option .menubox .shinagaki{
		width: 17em;
	}
	.menubox .photos{
		width: 100%;
	}
	#menuarea .menubox .photos.spphoto{
		width: calc(100% - 32em);
	}
	#option .menubox .photos.spphoto{
		width: calc(100% - 17em);
	}
	.menubox .photos li{
		padding: 8px;
		box-sizing: border-box;
	}
	.menubox .photos.spphoto li{
		padding: 0 40px 0 0;
	}
	.menubox .shinagaki dt{
		width: 100%;
		box-sizing: border-box;
	}
	.address dt{
		width: 6em;
		padding-right: 2em;
		box-sizing: border-box;
		text-align-last: justify;
	}
	
}
