@charset "UTF-8";
/* CSS Document */

/* //////////////////////////////////////////////////
[LAYOUT]
////////////////////////////////////////////////// */

.l-container{
    width:100%;
    margin: 0 auto;
}
.l-content{
    width: 100%;
    margin: 0 auto;
    position: relative;
}
.l-wrap{
    width:100%;
    margin: 0 auto;
    position: relative;
    background: #616060;
    position: relative;
    background-image: url(/hp2/wp-content/themes/ginza-caviar/images/img_BackGround2.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    color: #fff;
    background-attachment: fixed;	
}
.l-wrap-inner{
    width:100%;
    margin: 0 auto;
    position: relative;
}
.l-wrap-content{
    width: 90%;
    margin: 0 auto;
    padding: 140px 0;
}
.l-wrap-contentM{
    width: 60%;
    margin: 0 auto;
    padding: 140px 0;
}
#movie .l-wrap-content{
    max-width: 1100px;
}


@media only screen and (max-width: 767px){
    
    .l-container{
    }
    .l-content{
    }
    .l-wrap{
		background-attachment: scroll;
    }
    .l-wrap-inner{
    }
    .l-wrap-content{
        width: 90%;
        padding: 50px 0;
    }
}

/* //////////////////////////////////////////////////
[COMMON]
////////////////////////////////////////////////// */
h2 {
    font-size: 5rem;
    margin-top: -7px;
    margin-bottom: 60px;
    line-height: 1;
    font-family: "Cormorant";
}
h3{font-size: 2rem; font-weight: bold;}
h4{font-size: 4rem;} 
.times{font-family: "Cormorant";}
.bg-gray{
	background: #303030;
    position: relative;
    background-image: url(/hp2/wp-content/themes/ginza-caviar/images/img_BackGround1.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}
.bg-black {
    background: #000000;
    position: relative;
}
.tbdR{
    /*padding-right: 20px;*/
    /*border-right: 6px solid #5e5853;*/
    /*border-right: 6px solid #fff;*/
    /*line-height: 1;*/
}
.floatR_text {
    padding-left: 80px;
}
.tbdL{
    /*padding-left: 20px;*/
    /*border-left: 6px solid #fff;*/
    /*line-height: 1;*/
}
.photo img{width:100%; height: auto;}
.floatbox{width:48%;text-align:left;}
.floatbox p{margin-bottom: 40px;}
.l-wrap-content p:last-child{margin-bottom: 0px;}
.floatboxM{width:100% !important;}

/**ネガティブマージン**/
.negative{padding-top: 100px; margin-top: -100px;}
.negatop{margin-top: -100px;}


@media only screen and (max-width: 767px){
    
    h2{font-size: 3rem; margin-bottom: 20px;}
    h3{font-size: 1.6rem;}
    .floatbox{width:100%; float: none !important;}
    .floatbox p{margin-bottom: 10px;}
    .tar{text-align: left !important;}
	.tac{text-align: center !important;}
    .tbdR{padding-right: 0; border-right: none;}
}

/* //////////////////////////////////////////////////
[STYLE]
////////////////////////////////////////////////// */

/**MAINVISUAL**/
.mainvisual{
    width:100%;
    height: 100vh;
    background: #000;
    position: relative;
    background-image: url(../images/mainvisual.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}
.mainvisual-inner{
    position: relative;
    height: 100vh;
}
.mainvisual h1{
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    opacity: 0;
    width: 50%;
    max-width: 300px;
}
.mainvisual h1 img{
    width: 100%;
}

.timeline {
    position: absolute;
    bottom: 26px;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    padding: 10px;
    box-sizing: border-box;
    width: 1100px;
    max-width: 100%;
}
.timeline p {
    display: inline-block;
    color: #fff;
    font-family: "Cormorant";
    font-size: 3rem;
    vertical-align: top;
    line-height: 1;
    margin-right: 20px;
    margin-bottom: 13px;
}
.timeline .list{
    display: inline-block;
    color: #fff;
    vertical-align: top;

    font-weight: 100;
}
.timeline .list dl{
    margin-bottom: 10px;
}
.timeline .list dl dt{
    display: inline-block;
    color: #fff;
    vertical-align: top;
    margin-right: 10px;
}
.timeline .list dl dd{
    display: inline-block;
    color: #fff;
    vertical-align: top;
}

.timeline .news{
    display: inline-block;
    color: #fff !important;
    vertical-align: top;
    font-size: 1.6rem;
    font-weight: 100;
	line-height: 0.8;
}

@media only screen and (max-width: 767px){
    .mainvisual{
        height: 90vh;
    }
	.mainvisual h1 {
    	top: 37%;
	}
    .mainvisual-inner{
        height: 90vh;
    }

    .timeline{
        width: 92%;
        padding: 5px;
    }
    .timeline p{
        display: block;
        font-size: 1.4rem;
        margin-right: 0;
        margin-bottom: 10px;    
    }
    .timeline .list{
        display: block;
        vertical-align: top;
    }
    .timeline .list dl{
        margin-bottom: 5px;
    }
	.timeline .list dl dt {
    	margin-right: 0;
    	margin-bottom: -1px;
    	display: block;
	}
	.timeline .list dl dd {
    	display: block;
    	margin-bottom: 10px;
	}

}


/**MENU**/
.course{
    padding: 60px 40px;
}
.course .dinner-course{
    margin-top: 40px;
}
.course ul{
    margin-bottom: 5px;
}
.course ul li{
    position: relative;
    padding-left: 20px;
    margin-bottom:10px;
}
.course ul li::before{
    content: "";
    position: absolute;
    width: 10px;
    height: 1px;
    background:#5e5853;
    top: 50%;
    left: 0;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    
}
.course small{
    display: block;
}

@media only screen and (max-width: 767px){
    
    .course{
        padding: 30px 20px;
        margin-bottom: 10px;
    }
    .course .dinner-course{
        margin-top: 20px;
    }

}



/**TOPICS**/
.l-wrap#topics {
    padding: 100px 0 55px;
}
#topics section {
    max-width: 1100px;
    width: 85%;
    margin: 0 auto;
    padding: 35px 40px;
    background: rgba(0, 0, 0, 0.2);
    margin-bottom: 45px;
    box-sizing: border-box;
}
#topics h2{
	text-align:center;	
}
#topics h3 {
    margin-bottom: 28px;
    text-align: center;
	 font-size: 2.2rem;
    font-weight: normal;
    line-height: 2;
}


#topics p {
    text-align: center;
}
#topics .menu-food p {
    line-height: 1.4;
    text-align: left;
}
#topics .topics_renew h3{
	margin-bottom:0;
}
#topics .topics_renew a{
    color: #FFF;
}
#topics .topics_renew a:hover{
    opacity:0.8;
}
.topics-more{
    font-size: 15px;
    transform: translate(10px, -2px);
    display: inline-block;
}



/*メニュー表*/

.caviar-menu h4{
	position:relative;
	 width: fit-content;
    margin: 44px auto 20px;
	    color: #b39765;
	font-size: 2rem;
}

.caviar-menu h4:before,
.caviar-menu  h4:after{
	/*content:"";
	position:absolute;
	top:0;
	bottom:0;
	margin:auto;
	width:80px;
	height:1px;
	background-color:#fff;
	background-color:#b39765;*/
}

.caviar-menu  h4:before{
	left:-100px;
}
.caviar-menu  h4:after{
	right:-100px;
}

.menu-list--container {
    margin-top: 10px;
	   /*border: solid 1px #fff;*/
     /*padding: 25px 20px;*/
}

.menu-fee h4,
.menu-open h4{
	margin:0 auto 20px;
}
.menu-name {
    display: flex;
    margin-bottom: 30px;
    border-bottom: 1px solid #737373;
    width: fit-content;
    margin: 0 auto 23px;
    padding-bottom: 6px;
    font-size: 1.6rem;
    align-items: center;
}
.menu-name--ja {
    margin-right: 20px;
}
.menu-name--en {
    font-size: 11px;
    letter-spacing: 0.1em;
    padding-top: 3px;
}
.menu_topics1{
	
}
.menu-list--or {
    text-align: center;
    margin-bottom: -1px;
    margin-top: -11px;
}

#topics .caviar-menu {
    padding: 40px 35px 29px;
}
#topics p.menu-caution {
    text-align: center;
    font-size: 14px;
    margin-top: 33px;
    color: #ffffff;
}
.menu-food {
    margin-bottom: 55px;
    margin-top: -7px;
}

.menu-fee{
	    margin-bottom: 0px;
}

.menu-fee{
	    border: none;
}

.menu-fee .menu-name--ja {
    margin-right: 0px;
}

.menu-fee .menu-name {
	flex-direction: column;
    max-width: 100%;
	border: none;
}

.menu-fee .menu-name--ja{
	display:flex;
	justify-content: space-between;
}
.menu_topics_1 {
    display: flex;
    max-width: fit-content;
    margin: 0 auto;
}
.menu_topics_1 .left {
    margin-right: 65px;
    text-align: right;
}

.menu_topics_1 .right{
    text-align: right;
}
.menu_topics_1 .left p:nth-of-type(1){

}
.menu_topics_1 .left p:nth-of-type(2){
    width: 100%;
}
.menu_topics_1 .right p:nth-of-type(1){

}
.menu_topics_1 .right p:nth-of-type(2){
    width: 100%;
}
.menu-fee .menu-name--en{
		text-align: right;
	}

.fee-lead {
    margin-bottom: 25px;
}

#topics .fee-lead p{
	text-align:center;
}

.menu-open div{
    display: flex;
    margin: 0 auto;
    width: fit-content;
}
.menu-open p{
	text-align:center;
}
.menu-open p:first-of-type{
	margin-right:65px;
}
.menu-list--or span{
	font-size:12px;
}
.menu-homardbreton {
    border-bottom: 0;
    margin-bottom: -2px !important;
}

.pc-center{
	text-align:center;
}

@media only screen and (max-width: 767px){
	
	.pc-center{
	text-align:initial;
}
	
	.topics-more{
		display: none!important;
	}

	.caviar-menu h4 {
        font-size: 1.4rem;
        margin: 26px auto 20px;
    }
	
	.menu-name {
        flex-direction: column;
        width: 100%;
        font-size: 1.3rem;
        margin: 0 auto 7px;
	}
	#topics .menu-food p{
		text-align: center;
	}
    #topics .menu-name--ja {
        margin-right: 0;
        line-height: 1.5 !important;
        height: initial !important;
        overflow: inherit !important;
        margin-bottom: 4px;
        font-size: 13px;
        width: 100%;
        text-align: center;
	    white-space: nowrap;
    }
	.menu-rossini{
		letter-spacing: -0.1em;
	}
    .menu-name--en {
        line-height: 1.5 !important;
        height: initial !important;
        overflow: inherit !important;
        margin-bottom: 10px;
        font-size: 10px;
        width: 100%;
        text-align: center;
    }
    .menu-list--or {
        height: initial !important;
        overflow: inherit !important;
        font-size: 1.2rem;
        margin-bottom: 4px;
        margin-top: -12px;
    }
	.menu-no-border{
		border:none;
	}
	.fee-lead p{
		height:initial !important;
		overflow: inherit !important;
		margin-bottom: 7px;
        line-height: 1.8 !important;
	}
	.fee-lead p:last-of-type{
		font-size:13px;	
	}
    #topics .caviar-menu {
        padding: 24px;
    }
	
		.menu-fee .menu-name--ja{
		/*display:flex;
		justify-content: space-between;*/
		margin-bottom: 10px;
	}
	
	/*.menu-fee .menu-name--en{
		text-align: right;
	}*/
	
	.menu-open p{
		height:initial !important;
	}
	
	.menu-open {
    	margin-bottom: 35px;
	}	
	.menu_topics_1 {
		flex-direction: column;
	}
    .menu-caution {
        font-size: 12px;
        margin-top: 15px;
        line-height: 1.6 !important;
    }

}


/**MOVIE**/
#caviar .l-wrap-content {
    width: 90%;
    margin: 0 auto;
    padding: 140px 0;
}
#movie h2{
    text-align: center;
}
.link_winelist {
    font-size: 1.8rem;
    width: 220px;
    border: double 2px #fff;
    padding: 1em 1em;
    margin: 1em 0 0 80px;
    color: #fff;
    text-align: center;
}





/**ACCESS**/
.map {
    position: relative;
    width: 100%;
    margin-top: 0px;
}
.map:before {
    content:"";
    display: block;
    padding-top: 75%;
}
.map #Gmap{
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}



@media only screen and (max-width: 767px){
	.l-wrap#topics {
    	padding: 50px 0 40px;
	}
	#caviar .l-wrap-content {
    	padding: 50px 0;
	}
	.link_winelist{
    	margin: 0;
    	font-size: 1.6rem;
		margin: 40px auto;
	}
	.floatR_text {
    	padding-left: 0px;
	}
	.map{
		margin-top:20px;
	}
}


/**RESERVATION**/
.reservebtn{
    margin-top: 50px;
}
.reservebtn p{
    width:380px;
    margin: 0 auto;
}
.reservebtn p a{
    display: block;
    width: 100%;
    padding: 20px 0;
    border: 1px solid #5e5853;
    -moz-transition: 0.3s ease-in-out;
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.reservebtn p a:hover{
    background:#5e5853;
    color: #fff;
}

@media only screen and (max-width: 767px){
    
    .reservebtn p{
        width:80%;
    }

}


/**GALLERY**/
.gallery-inner ul{
    width: 100%;
}
.gallery-inner ul li{
    position: relative;
    width: 25%;
    float: left;
}
.gallery-inner ul li:before{
    content:"";
    display: block;
    padding-top: 75%;
}
.gallery-inner ul li div{
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    overflow: hidden;
}
.gallery-inner ul li div p{
    width: 100%;
    height: 100%;
}
.gallery-inner ul li p img{
    position: relative;
    top: 50%;
    left: 50%;
    width: auto;
    height: 100%;
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}

@media only screen and (max-width: 767px){
    
    .gallery-inner ul li{
        width: 50%;
    }

}



/**NEWS**/

.mainvisual.pagesize{
    height: 60vh;
    background-image: url(../images/img-news.jpg);
}
.mainvisual.pagesize .mainvisual-inner{
    height: 60vh;
}

.archive-list{
    width:80%;
    max-width: 960px;
    margin: 0 auto;
}
article{
    padding-bottom: 100px;
}
article .n-title{
    /*border-bottom: #5e5853 solid 1px;*/
    border-bottom: #fff solid 1px;
    padding-bottom: 20px;
    margin-bottom: 60px;
    text-align: left;
}
article .n-title .date{
    font-size: 2rem;
    margin-right: 40px;
    display: inline-block;
    vertical-align: top;
    font-weight: bold;
}
article .n-title h1{
    font-size: 2rem;
    display: inline-block;
    vertical-align: top;
    font-weight: bold;
}
article .n-content {
    line-height: 2.1;
}
article .n-content p{
    margin-bottom: 10px;
}
article .n-content img{
    margin: 20px auto;
    max-width: 100%;
    display: block;
}
article .n-content h1{
    font-size: 1.8rem;
    font-weight: bold;
    margin-bottom: 20px;
}
article .n-content h2{
    font-size: 1.8rem;
    font-weight: bold;
    margin-bottom: 20px;
}

.archive-pager{
    width:80%;
    max-width: 960px;
    margin: 0 auto;
    text-align: center;
}

a.page-numbers,
.archive-pager .current{
	background:rgba(0,0,0,0);
	border:solid 1px rgba(0,0,0,0.1);
	padding:5px 8px;
	margin:0 2px;
}
a.page-numbers:hover{
	background:rgba(0,0,0,0.02);
}
.archive-pager .current{
	background:rgba(0,0,0,1);
	border:solid 1px rgba(0,0,0,1);
	color:rgba(255,255,255,1);
}

@media only screen and (max-width: 767px){
	#topics section {
    	max-width: 1200px;
    	width: 90%;
    	margin: 0 auto 20px;
    	padding: 24px;
    	box-sizing: border-box;
	}
	#topics h3 {
    	margin-bottom: 12px;
    	text-align: center;
    	font-size: 1.6rem;
    	line-height: 1.7;
	}
	#topics section.topics_renew{
    	padding: 24px 0;
	}
	.topics_renew p {
    	height: 130px;
    	overflow: scroll;
	}
	.topics_renew a span.sp_only {
		display:inline;
	}
	.topics-deta{
        display: inline-block;
        margin-bottom: 6px;
	}
    .mainvisual.pagesize{
        height: 30vh;
    }
    .mainvisual.pagesize .mainvisual-inner{
        height: 30vh;
    }
    .mainvisual.pagesize h1{
        max-width: 140px;
    }

    .archive-list{
        width:92%;
        max-width: 92%;
    }
    article{
        padding-bottom: 40px;
    }
    article .n-title{
        padding-bottom: 10px;
        margin-bottom: 30px;
    }
    article .n-title .date{
        font-size: 1.4rem;
        display: block;
        margin-right: 20px;
    }
    article .n-title h1{
        font-size: 1.4rem;
        display: block;
    }
    article .n-content p{
        margin-bottom: 5px;
    }
    article .n-content img{
        margin: 20px auto;
    }
    article .n-content h1{
        font-size: 1.4rem;
        margin-bottom: 10px;
    }
    article .n-content h2{
        font-size: 1.4rem;
        margin-bottom: 10px;
    }
	.menu-food {
		margin-bottom: 50px;
	}
    .archive-pager{
        width:92%;
        max-width: 92%;
    }

}