@charset "utf-8";

/* ----- Index -----

1. Reset & Common
2. Header
3. Section
	3-01. Ginza
	3-02. Video
	3-03. Suppon
	3-04. Luxury Food
	3-05. Toru Eguchi
	3-06. Set menu
4. Footer

----- */


/* ========================================

	1. Reset & Common

======================================== */
body{
	margin: 0;
	min-width: inherit;
}
html {
  font-size: 62.5%;
  height: 100%;
}
.wrap{
	overflow: hidden;
}
h1, h2, h3, h4, h5, h6, p, li, th, td, dt, dd, strong,span,button {
    color: #000;
	font-family: "Lora","Noto Serif JP", "serif";
	font-size: 1.6rem;
	line-height: 2;
	letter-spacing: 2px;
}
p{
	font-size: 1.6rem;
}
p.button a{
	color: #000;
	font-size: 2.0rem;
	transition : 1s;
}
p.button a:hover{
	background: #000;
	color: #FCC731;
	border: 1px solid #FCC731;
}
.pc_none {
    display: none;
}

.sp_none {
	display: block;
}
.inner{
    width: 1200px;
	margin: 0 auto;
}
.inner_kasou{
    width: 600px;
	margin: 0 auto;
}
.img_left,.img_right{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
}
.img_left{
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
.caution,.kasou p.caution{
	color: rgba(255,59,48,1);
}
.kasou{
	background: #000;
}
.kasou p{
	color: #fff;
}
@media screen and (max-width: 750px) {
	
	.pc_none {
		display: block;
	}
	
	.sp_none {
		display: none;
	}
	
    .inner,.inner_kasou{
		width: 95%;
		margin: 0 auto;
		box-sizing: border-box;
	}
}
@media screen and (min-width:768px) and ( max-width:1024px) {
	section{
		padding: 0 15px;
		box-sizing: border-box;
	}
	.inner{
		width: inherit;
		margin: 0 15px;
	}
	img{
		max-width: 100%;
		height: auto;
	}
}
/* ========================================

	2. Header

======================================== 
*/
header{
	position: relative;
	height: 100vh;
}
.kasou header{
	margin: 30px auto;
	height: inherit;
}
.kasou header a{
	color: #fff;
	text-decoration: underline;
}
h1{
	position: absolute;
	top: 40px;
	left: 48px;
}
header .button a{
	display: inline-block;
	background: rgb(255,220,112);
	background: linear-gradient(90deg, rgba(255,220,112,1) 0%, rgba(252,199,49,1) 100%);
	padding: 10px 60px;
	position: absolute;
	top: 40px;
	right: 48px;
	border: 1px solid #FCC731
}
header figure{
	position: absolute;
	bottom: 20px;
	left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	z-index: 1;
}
header div.video_area{
    position: absolute;
    z-index: -1;/*最背面に設定*/
    top: 0;
    right:0;
    left:0;
    bottom:0;
    overflow: hidden;
}
header video{
	position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    /*縦横幅指定*/
    width: 177.77777778vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
    height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
    min-height: 100%;
    min-width: 100%;
}
@media screen and (max-width: 750px) {
	header{
		height: 100vw;
	}
	h1{
		top: 10px;
		left: 4px;
	}
	h1 img{
		width: 100px;
	}
	header .button{
		padding: 4px 20px; 
		top: 10px;
		right: 20px;
		font-size: 1.6rem;
	}
	
	header figure img{
		max-width: 100%;
	}
}
/*
========================================

	3. Section

======================================== */

/* ----- 3-01. Ginza ----- */
#Ginza{
	background: #000;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	align-items: center;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
#Ginza div,#Ginza figure{
	width: 50%;
}
#Ginza figure img{
	width: 100%;
	height: auto;
}
#Ginza .text_area{
	padding: 0 0 0 20%;
}
#Ginza h2,#Video h2,#LuxuryFood h2{
	color: #fff;
	font-size: 3.0rem;
	line-height: 1;
	padding-bottom: 10px;	border-bottom: solid 1px #927C5C;
	margin-bottom: 10px;
}
#Ginza h2 span.title,#Video h2 span.title,#LuxuryFood h2 span.title{
	display: block;
	color: #927C5C;
	font-size: 1.4rem;
}
#Ginza h2 span,#Video h2 span{
	color: #fff;
	font-size: 2.0rem;
}
#Ginza p,#LuxuryFood p{
	color: #fff;
}
@media screen and (min-width:768px) and ( max-width:1024px) {
	#Ginza .text_area{
		padding: 100px 0 0 10%;
		width: 80%;
	}
}
@media screen and (max-width: 750px) {
	#Ginza{
		padding: 60px 0;
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		flex-direction: column;
	}
	#Ginza div, #Ginza figure{
		width: 80%;
	}
	#Ginza figure{
		order: 1;
	}
	#Ginza div{
		order: 2;
	}
	#Ginza .text_area{
		padding: 0;
		width: 100%;
	}
}
/* ----- 3-01. Ginza ----- */

/* ----- 3-02. Video ----- */
#Video{
	padding: 100px 0;
	background: url(images/video_bk.png) ;
}
#Video video{
	width: 100%;
	height: auto;
}
#Video .text_area{
	width: 530px;
	margin: 0 auto;
}
#Video h2{
	margin-top: 40px;
	text-align: center;
}
#Video p,#Suppon p{
	color: #fff;
	text-align: left;
}
@media screen and (max-width: 750px) {
	#Video{
		padding: 60px 0;
		text-align: center;
	}
	#Video video{
		width: 80%;
	}
	#Video .text_area{
		width: 80%;
	}
}
/* ----- 3-02. Video ----- */

/* ----- 3-03. Suppon ----- */
#Suppon{
	padding: 180px 0;
	background: url(images/suppon.jpg)no-repeat;
	background-size: cover;
}
#Suppon .inner div{
	width: 530px;
	margin-left: auto;
}
#Suppon h2{
	color: #fff;
	font-size: 3.0rem;
	line-height: 1;
	padding-bottom: 10px;	border-bottom: solid 1px #fff;
	margin-bottom: 10px;
	text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.6);
}
#Suppon h2 span.title{
	display: block;
	color: #fff;
	font-size: 1.4rem;
}
#Suppon h2 span{
	color: #fff;
	font-size: 2.0rem;
}
#Suppon p{
	text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.6);
}
@media screen and (max-width: 750px) {
    #Suppon{
		padding: 200px 10px 20px;
		box-sizing: border-box;
	}
	#Suppon .inner div{
		width: 90%;
		margin: 0 auto;
	}
}
/* ----- 3-04. Suppon ----- */

/* ----- 3-04. LuxuryFood ----- */
#LuxuryFood{
	padding: 100px 0;
	background: #000;
}
#LuxuryFood h2,#Setmenu h2{
	width: 530px;
	margin: 0 auto;
	text-align: center;
}
#LuxuryFood h2 span{
	display: block;
	color: #fff;
	font-size: 2.0rem;
}
#LuxuryFood h3{
	margin-top: 20px;
	color: #fff;
	text-align: center;
	width: 300px;
}
#LuxuryFood p{
	text-align: center;
	margin-bottom: 50px;
}
/*mo-dal*/
.modal-content {
    position:fixed;
    display:none;
    z-index:2;
    margin: 0 10px;
    padding-bottom:23px;
    background:#fff;
}

.modal-content p {
    margin:0;
    padding:0;
}

.modal-overlay {
    z-index:1;
    display:none;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:120%;
    background-color:rgba(0,0,0,0.75);
}

.modal-open:hover {
    cursor:pointer;
    color:#f00;
}

.modal-close:hover {
    cursor:pointer;
    opacity: 0.5 ;
}
.modal-overlay {
    z-index:2; /*デモではheader,footerをz-index:1にしたので それより上げています*/
    display:none; /*jsでフェードインされるまでdisplay:none*/
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100vh; /*100vhでビューポートの高さいっぱいになります*/
    background-color:rgba(0,0,0,.5)} /*これは好きな色・透明度で*/
a.modal-open:hover {cursor:pointer} /*カーソルをポインタに*/
.modal-content {
    position:fixed;
	width: 100%;
    display:none; /*jsでフェードインされるまでdisplay:none*/
    z-index:3; /*オーバーレイより上に*/
    padding:50px 0;
	margin: 0 auto;
	background: rgba(0,0,0,0.7);
}
.modal-content img {max-width:100%;max-height:75vh}
.modal-content h1 {font-size:120%; margin-bottom:0.5em}
.modal-content p { text-align:center;font-size: 1.6rem;}
.modal-content span{
	color: #fff;
}
#LuxuryFood .modal-content p {
	text-align:center;
	font-size: 1.6rem;
	margin: 0 auto 10px;
	color: #fff;
	width: 387px;
}
a.modal-close { /*クローズボタンは何でも好きなスタイルでOK*/
    position:absolute;
    top: 10px;
    right: calc(50% - 300px);
    color:#7d7d7d;
    font-size:1.8rem;
    line-height:1;
    text-decoration:none;
	padding: 10px 27px 0px 0;
}
	
a.modal-close:hover {cursor:pointer} /*カーソルをポインタに*/
/*--modal--*/
#LuxuryFood .modal-content p.modal_t{
	width: 600px;
}

@media screen and (min-width:1025px) and ( max-width:1280px) {
	a.modal-close { 
		top: 60px;
	}
	#LuxuryFood .modal-content p.modal_t{
		overflow: scroll;
		height: 120px;
	}
}
@media screen and (min-width:768px) and ( max-width:1024px) {
	a.modal-close { 
		padding: 40px 27px 0px 0;
	}
	.slick-slide {
		margin-left: 20px;
	}
	#LuxuryFood h3{
		width: 100%;
	}
	a.modal-close {
		top: 60px;
	}
	#LuxuryFood .modal-content p.modal_t{
		overflow: scroll;
		height: 120px;
	}
}
@media screen and (max-width: 750px) {
	a.modal-close { 
		right:10px;
		top: 40px;
	}
		
	#LuxuryFood{
		padding: 80px 0;
	}
	#LuxuryFood h2, #Setmenu h2{
		width: 80%;
	}
	#LuxuryFood p{
		width: 80%;
		margin: 0 auto 30px;
	}
	.slick-slide img{
		width: 80%
	}
	#LuxuryFood h3{
		width: 80%;
	}
	#LuxuryFood .modal-content{
		width: 100%;
	}
	.modal-content p > img{
		display: inline-block;
		padding-top: 50px;
	}
	.modal-content {
		padding: 20px 0;
		height: 100vh;
	}
	.modal-content img{
		width: 100%;
	}
	#LuxuryFood .modal-content p{
		width: 75%;
	}
	a.modal-close {
		position: absolute;
		top: 40px;
		right: 10px;
		color: #fff;
		font-size: 1.8rem;
		line-height: 1;
		text-decoration: none;
		padding: 10px 5px 0px 0;
	}
	.modal-content a img{
		width: 20px;
		display: inline-block;
		margin-top: 20px;
	}
	#LuxuryFood .modal-content p.modal_t{
		width: 90%;
		overflow: scroll;
		height: 20vh;
	}
}
/* ----- 3-04. LuxuryFood ----- */

/* ----- 3-05. Toru Eguchi ----- */
#ToruEguchi{
	padding: 100px 0;
	background: url(images/torueguchi_bk.png) repeat-y;
}
#ToruEguchi .inner{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
#ToruEguchi .inner div{
	width: 530px;
	margin-left: 60px;
}
#ToruEguchi h2{
	color: #000;
	font-size: 3.0rem;
	border-bottom: 1px solid #927C5C;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
#ToruEguchi h2 span.title{
	display: block;
	font-size: 1.4rem;
	line-height: 0.5;
}
@media screen and (max-width: 750px) {
	#ToruEguchi{
		padding: 60px 0;
	}
	#ToruEguchi img{
		width: 100%;
	}
	#ToruEguchi .inner{
		width: 80%;
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		flex-direction: column;
	}
	#ToruEguchi div, #ToruEguchi figure{
		width: 100%;
	}
	#ToruEguchi figure{
		order: 1;
	}
	#ToruEguchi div{
		order: 2;
	}
	#ToruEguchi .text_area{
		padding: 0;
		width: 100%;
	}
	#ToruEguchi .inner div{
		margin-top: 20px;
		width: 100%;
		margin-left: 0;
	}
	#ToruEguchi h2{
		text-align: center;
	}
}
/* ----- 3-05. Toru Eguchi ----- */

/* ----- 3-06. Set menu ----- */
#Setmenu{
	padding: 100px 0 60px;
	background: url(images/bk.png);
}
#Setmenu h2{
	color: #fff;
	font-size: 3.0rem;
	border-bottom: 1px solid #927C5C;
}
#Setmenu h2 span.title{
	display: block;
	color: #927C5C;
	font-size: 1.4rem;
	text-align: center;
	line-height: 0.5;
}
.title_p{
	color: #fff;
	text-align: center;
}
.df{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	align-items: center;
}
.price{
	width: 530px;
	text-align: center;
}
.price p{
	color: #fff;
	text-align: left;
	margin-bottom: 30px;
}
.price div p:nth-child(2){
	color: #927C5C;
	font-size: 3.6rem;
	text-align: right;
	border-bottom: 1px solid #927C5C;
	margin-bottom: 20px;
}
.price div p:nth-child(2) span{
	color: #927C5C;
	font-size: 2.6rem;
	font-family: sans-serif;
	font-weight: bold;
}
#Setmenu .price p.button{
	text-align: right;
}
p.button a{
	display: inline-block;
	text-align: center;
	border: 1px solid #FCC731;
	background: rgb(255,220,112);
	background: linear-gradient(90deg, rgba(255,220,112,1) 0%, rgba(252,199,49,1) 100%);
	padding: 10px 60px;
}
header .button a{
	top: 15px;
	right: 15px;
}
p.button a {
	padding: 3px 30px;
	font-size: 1.8rem;
}
@media screen and (max-width: 750px) {
	#Setmenu{
		padding: 60px 0;
		background-size: cover;
	}
	.df{
		display: block;
	}
	.df img{
		width: 100%;
	}
	.price{
		width: 80%;
		margin: 0 auto;
	}
	.price p:nth-child(2){
		text-align: center;
	}
	#Setmenu .price p.button{
		text-align: center;
	}
}
/* ----- 3-06. Set menu ----- */

/*
========================================

	4. Footer

======================================== */

footer{
	background: #000;
}
footer .inner{
	padding: 100px 0 60px;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	border-bottom: 1px solid #927C5C;
}
footer ul li{
	margin-bottom: 10px;
}
footer strong{
	color: #fff;
	font-weight: bold;
}
footer img{
	width: 155px;
}
footer figure{
	margin-bottom: 20px;
}
footer .inner div,footer .inner ul{
	width: 50%;
}
footer .inner div{
	text-align: center;
}
footer .inner ul li p{
	color: #fff;
}
footer > p{
	font-size: 1.3rem;
	color: #fff;
	text-align: center;
	padding: 10px 0;
}
footer a{
	color: #fff;
}
@media screen and (max-width: 750px) {
	footer .inner{
		padding: 40px 0 20px;
		display: block;
	}
	
	footer .inner > div{
		margin: 0 auto 20px;
	} 
	footer img{
		width: 60%;
	}
	footer .inner ul{
		width: 80%;
		margin: 0 auto;
	}
}
/*
========================================

	kasou

======================================== */
.kasou h2{
	color: #fff;
	font-size: 2.4rem;
	margin: 30px auto;
	padding-bottom: 10px;
    border-bottom: solid 1px #927C5C;
}
.kasou p{
	margin-top: 10px;
}