@charset "utf-8";

/* ========================================
menu.css
------------------------------------------

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

/* ---------------------------------------- 
 - .section共通
---------------------------------------- */
#Contents .section {
    width: 100%;
    padding-top: 0;
    margin-top: 0;
}
@media screen and (max-width: 768px) {
#Contents .section {
    width: 100%;
    /*padding-top: 80px;
    margin-top: -80px;*/
	padding-top: 0;
    margin-top: 0;
}
}

@keyframes sectionFadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes sectionAnimeDown {
    0% {
        -webkit-transform: translate(0, -60px);
        transform: translate(0, -60px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        opacity: 1;
    }
}
@keyframes sectionAnimeUp {
    0% {
        -webkit-transform: translate(0, 60px);
        transform: translate(0, 60px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        opacity: 1;
    }
}
@keyframes sectionAnimeLeftIn {
    0% {
        -webkit-transform: translate(-60px, 0);
        transform: translate(-60px, 0);
        opacity: 0;
    }
    100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        opacity: 1;
    }
}
@keyframes sectionAnimeRightIn {
    0% {
        -webkit-transform: translate(60px, 0);
        transform: translate(60px, 0);
        opacity: 0;
    }
    100% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        opacity: 1;
    }
}

/* ---------------------------------------- 
 - #Lunch
---------------------------------------- */
#Contents #Lunch {
    padding-top: 120px;
    margin-top: -60px;
    padding-bottom: 30px;
    background: #fff;
}
#Contents #Lunch .wrapper {
	padding-left: 0;
	padding-right: 0;
	margin-bottom: 80px;
}
#Contents #Lunch .wrapper h2 {
    background: #595757;
    color: #fff;
    display: inline-block;
    font-size: 24px;
    line-height: 1;
    letter-spacing: 0.2em;
    margin-bottom: 40px;
    padding: 8px 15px 10px 70px;
}
#Contents #Lunch .wrapper .column .col-inner {
    display: flex;
        justify-content: space-between;
    line-height: 1.74;
    opacity: 1;/*初期非表示*/
	padding-left: 60px;
	padding-right: 60px;
}
#Contents #Lunch .wrapper .column .col-inner p.photo {
    width: 44.09%;
}
#Contents #Lunch .wrapper .column .col-inner p.photo span:first-of-type {
    margin-bottom: 100px;
}
#Contents #Lunch .wrapper .column .col-inner p.photo span {
    display: block;
}
#Contents #Lunch .wrapper .column .col-inner .priceBox {
    font-size: 26px;
    width: 51.14%;
}
#Contents #Lunch .wrapper .column .col-inner .priceBox dl {
    margin-bottom: 1em;
}
#Contents #Lunch .wrapper .column .col-inner .priceBox dl dd {
    display: flex;
        justify-content: space-between;
}
#Contents #Lunch .wrapper .column .col-inner .priceBox dl dd span {
    display: block;
}
@media screen and (max-width: 768px) {
#Contents #Lunch {
    /*padding-top: 80px;
    margin-top: -40px;*/
	padding-top: 0;
    margin-top: 0;
}
#Contents #Lunch .wrapper {
	margin-bottom: 40px;
}
#Contents #Lunch .wrapper h2 {
    font-size: 16px;
    line-height: 1.2;
    margin-bottom: 40px;
    padding: 8px 15px 10px 20px;
}
#Contents #Lunch .wrapper .column .col-inner {
    display: block;
    opacity: 1;/*初期非表示*/
	padding-left: 20px;
	padding-right: 20px;
}
#Contents #Lunch .wrapper .column .col-inner p.photo {
    width: 100%;
}
#Contents #Lunch .wrapper .column .col-inner p.photo span:first-of-type {
    margin-bottom: 2em;
}
#Contents #Lunch .wrapper .column .col-inner p.photo span:last-of-type {
    margin-bottom: 2em;
}
#Contents #Lunch .wrapper .column .col-inner ul li {
    margin-bottom: 35px;
    width: 100%;
}
#Contents #Lunch .wrapper .column .col-inner .priceBox {
    font-size: 20px;
    width: 100%;
}
}
/* ---------------------------------------- 
 - #Course
---------------------------------------- */
#Contents #Course {
    /*padding-top: 120px;
    margin-top: -120px;*/
}
#Contents #Course .wrapper {
	padding-left: 0;
	padding-right: 0;
}
#Contents #Course .wrapper h2 {
    background: #595757;
    color: #fff;
    display: inline-block;
    font-size: 24px;
    line-height: 1;
    letter-spacing: 0.2em;
    margin-bottom: 40px;
    padding: 8px 15px 10px 40px;
}
#Contents #Course .wrapper .column .col-inner {
    opacity: 1;/*初期非表示*/
	padding-left: 60px;
	padding-right: 60px;
    padding-bottom: 25px;
}
#Contents #Course .wrapper .column .col-inner dl {
    margin-bottom: 30px;
}
#Contents #Course .wrapper .column .col-inner dl dt {
    display: flex;
        justify-content: space-between;
    line-height: 1;
    font-size: 42px;
    font-weight: bold;
    margin-bottom: 30px;
}
#Contents #Course .wrapper .column .col-inner p.photo {
    margin-bottom: 30px;
}
#Contents #Course .wrapper .column .col-inner .courseCase {
    display: flex;
        justify-content: space-between;
}
#Contents #Course .wrapper .column .col-inner .courseCase p.case {
    font-size: 27px;
    line-height: 1.7;
    width: 19%;
}
#Contents #Course .wrapper .column .col-inner .courseCase .courseCaseInner {
    width: 67.05%;
}
#Contents #Course .wrapper .column .col-inner .courseCase .courseCaseInner ul.imageBox {
    display: flex;
        justify-content: flex-end;
        flex-wrap: wrap;
    margin-bottom: 15px;
}
#Contents #Course .wrapper .column .col-inner .courseCase .courseCaseInner ul.imageBox li:nth-of-type(1) {
    margin-right: 3.9%;
    width: 33.13%;
}
#Contents #Course .wrapper .column .col-inner .courseCase .courseCaseInner ul.imageBox li:nth-of-type(2) {
    margin-bottom: 30px;
    width: 49.74%;
}
#Contents #Course .wrapper .column .col-inner .courseCase .courseCaseInner ul.imageBox li:nth-of-type(3) {
    margin-right: 3.9%;
    width: 30.67%;
}
#Contents #Course .wrapper .column .col-inner .courseCase .courseCaseInner ul.imageBox li:nth-of-type(4) {
    margin-right: 3.9%;
    width: 30.67%;
}
#Contents #Course .wrapper .column .col-inner .courseCase .courseCaseInner ul.imageBox li:nth-of-type(5) {
    width: 30.67%;
}
#Contents #Course .wrapper .column .col-inner .courseCase .courseCaseInner p {
    font-size: 17px;
    text-align: right;
}


/*afterword*/
#Contents #Course .wrapper .column .col-inner p.afterword {
    color: #fff;
    text-align: center;
}
@media screen and (max-width: 768px) {
#Contents #Course .wrapper {
    margin-top: -40px;
}
#Contents #Course .wrapper h2 {
    font-size: 16px;
    line-height: 1.2;
    margin-bottom: 40px;
    padding: 8px 15px 10px 20px;
}
#Contents #Course .wrapper .column .col-inner {
    opacity: 1;/*初期非表示*/
	padding-left: 20px;
	padding-right: 20px;
    padding-bottom: 25px;
}
#Contents #Course .wrapper .column .col-inner ul.imageBox {
    margin-bottom: 40px;
}
#Contents #Course .wrapper .column .col-inner dl {
    display: block;
        align-items: center;
    margin-bottom: 20px;
}
#Contents #Course .wrapper .column .col-inner dl dt {
    display: block;
    font-size: 20px;
    line-height: 1.2;
    margin-bottom: 20px;
    text-align: left;
    width: 100%;
}
#Contents #Course .wrapper .column .col-inner dl dt span {
    display: block;
}
#Contents #Course .wrapper .column .col-inner dl dd {
    padding-left: 0;
    width: 100%;
}
#Contents #Course .wrapper .column .col-inner .courseCase p.case {
    font-size: 20px;
    width: 40%;
}
#Contents #Course .wrapper .column .col-inner .courseCase .courseCaseInner ul.imageBox {
    display: flex;
        justify-content: flex-end;
        flex-wrap: wrap;
    margin-bottom: 15px;
}
#Contents #Course .wrapper .column .col-inner .courseCase .courseCaseInner ul.imageBox li:nth-of-type(1) {
    margin-right: 0;
    margin-bottom: 10px;
    width: 100%;
}
#Contents #Course .wrapper .column .col-inner .courseCase .courseCaseInner ul.imageBox li:nth-of-type(2) {
    margin-bottom: 10px;
    width: 100%;
}
#Contents #Course .wrapper .column .col-inner .courseCase .courseCaseInner ul.imageBox li:nth-of-type(3) {
    margin-right: 0;
    margin-bottom: 10px;
    width: 100%;
}
#Contents #Course .wrapper .column .col-inner .courseCase .courseCaseInner ul.imageBox li:nth-of-type(4) {
    margin-right: 0;
    margin-bottom: 10px;
    width: 100%;
}
#Contents #Course .wrapper .column .col-inner .courseCase .courseCaseInner ul.imageBox li:nth-of-type(5) {
    width: 100%;
}
#Contents #Course .wrapper .column .col-inner .courseCase .courseCaseInner p {
    font-size: 17px;
    text-align: right;
}
}

/* ---------------------------------------- 
 - #Drink
---------------------------------------- */
#Contents #Drink {
    padding-bottom: 50px;
}
#Contents #Drink .column {
    margin-bottom: 30px;
}
#Contents #Drink .column .wrapper {
    background: url("../images/menu/drink_img_pc.jpg") right top no-repeat;
    background-size: cover;
    height: 290px;
	padding-left: 0;
	padding-right: 0;
}
#Contents #Drink .column .wrapper .col-inner dl {
    color: #fff;
    padding: 20px 0;
}
#Contents #Drink .column .wrapper .col-inner dl dt {
    font-size: 27px;
    margin-bottom: 10px;
    padding-left: 30px;
}
#Contents #Drink .column .wrapper .col-inner dl dd {
    font-size: 20px;
    line-height: 1.75;
    padding-left: 50px;
}
#Contents #Drink .column .wrapper .col-inner p img {
    width: 100%;
}
#Contents #Drink .wrapper .column {
    background: transparent;
    margin-bottom: 0;
}
#Contents #Drink .wrapper .column ul.drinkImages {
    display: flex;
        justify-content: space-between;
}
#Contents #Drink .wrapper .column ul.drinkImages li {
    width: 22.22%;
    max-width: 200px;
}
#Contents #Drink .wrapper .column ul.drinkImages li img {
    width: 100%;
}
@media screen and (max-width: 768px) {
#Contents #Drink .column .wrapper {
    background: url("../common/images/bg_sp.jpg") right top no-repeat;
    background-size: cover;
    height: inherit;
	padding-left: 20px;
	padding-right: 20px;
    padding-bottom: 20px;
}
#Contents #Drink .column .wrapper .col-inner dl {
    padding: 20px 0 15px;
}
#Contents #Drink .column .wrapper .col-inner dl dt {
    font-size: 20px;
    margin-bottom: 10px;
    padding-left: 0;
}
#Contents #Drink .column .wrapper .col-inner dl dd {
    font-size: 16px;
    padding-left: 10px;
}
#Contents #Drink .column .wrapper .col-inner p img {
    width: 100%;
}
#Contents #Drink .wrapper .column ul.drinkImages {
    display: flex;
        flex-wrap: wrap;
}
#Contents #Drink .wrapper .column ul.drinkImages li {
    width: 48%;
    max-width: inherit;
    margin-bottom: 10px;
}
#Contents #Drink .column .wrapper .col-inner p {
    width: 100%;
}
}

/* ---------------------------------------- 
 - #Loading
---------------------------------------- */
#Loading {
    width: 80px;
    height: auto;
}
#Loading img {
    width: 80px;
    height: auto;
}
/* 基本設定（背景やレイアウト） */
#LoadingWrapper  {
    position: fixed;
    top: 0; left: 0;
    z-index: 1000;
    background-color: #231815;
    display: flex;
    width: 100vw;
    height: 100vh;
    justify-content: space-around;
    align-items: center;
}
@keyframes fadeOut {
    0% {
        transform: scale(1);
        opacity:0.3;
    }
    50% {
        transform: scale(1);
        opacity:1;
    }
    100% {
        transform: scale(1);
        opacity:0.3;
    }
}
.loadingFade {
    animation-name: fadeOut;
    animation-duration: 2s;
    animation-iteration-count: infinite;
}
