@charset "utf-8";

/*-------------------------------------- 共通 */

img {
    max-width: 100%;
    height: auto;
    width: auto;
}
img.w100{
    width:100%;
    height:auto;
}
.sp {
    display: none;
}
.serif{
    font-family: 'Noto Serif JP', serif;
}
.pink{
    color:#9f5574;
}
.container {
    width: 90%;
    min-width:1080px;
    margin: 0 auto;
    /*background:#FFF;*/
    position: relative;
    z-index: 10;
    /*font-feature-settings: "palt";*/
}

.container-inner {
    width:940px;
    margin: 0 auto;
    padding: 30px 0;
}


.under-header {
    padding-top: 60px;
}
/* loading image */
.loading {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 55555;
    background-color: #e4d9d8;
    display: flex;
    align-items: center;
    justify-content: center;
    animation: fadeOut 1.5s 2.5s forwards;
  }
  
  @keyframes fadeOut {
    0% {
      opacity: 1;
    }
  
    100% {
      opacity: 0;
      visibility: hidden;
    }
  }
  
  .loading__logo {
    opacity: 0;
    animation: logo_fade 2s 0.5s forwards;
    width: 200px;
  }
  
  @keyframes logo_fade {
    0% {
      opacity: 0;
      transform: translateY(20px);
    }
  
    60% {
      opacity: 1;
      transform: translateY(0);
    }
  
    100% {
      opacity: 0;
    }
  }

/*----------------------------
scroll_up ｜下から上へ出現
----------------------------*/
.scroll_up {
    transition: 0.8s ease-in-out;
    transform: translateY(30px);
    opacity: 0;
}
.scroll_up.on {
    transform: translateY(0);
    opacity: 1.0;
}
  
/*----------------------------
  scroll_left ｜左から出現
----------------------------*/
.scroll_left {
    -webkit-transition: 0.8s ease-in-out;
    -moz-transition: 0.8s ease-in-out;
    -o-transition: 0.8s ease-in-out;
    transition: 0.8s ease-in-out;
    transform: translateX(-30px);
    opacity: 0;
    filter: alpha(opacity=0);
    -moz-opacity: 0;
}
.scroll_left.on {
    opacity: 1.0;
    filter: alpha(opacity=100);
    -moz-opacity: 1.0;
    transform: translateX(0);
}
  
/*----------------------------
  scroll_right ｜右から出現
----------------------------*/
.scroll_right {
    -webkit-transition: 0.8s ease-in-out;
    -moz-transition: 0.8s ease-in-out;
    -o-transition: 0.8s ease-in-out;
    transition: 0.8s ease-in-out;
    transform: translateX(30px);
    opacity: 0;
    filter: alpha(opacity=0);
    -moz-opacity: 0;
}
.scroll_right.on {
    opacity: 1.0;
    filter: alpha(opacity=100);
    -moz-opacity: 1.0;
    transform: translateX(0);
}

  /*表示の時間をずらす*/
.timing02 {transition-delay: .4s;}
.timing03 {transition-delay: .6s;}
.timing04 {transition-delay: .8s;}
.timing05 {transition-delay: 1s;}

  
/*-------------------------------------- header */
header{
    position:fixed;
    background:#FFF;
    width: 100%;
    z-index: 5000;
    top:0;
}
header .container-inner{
    width:90%;
    min-width: 900px;
    margin: 0 auto;
    padding:10px 0 ;
    display: flex;
    justify-content: space-between;
}
header .container-inner.sp{
    display:none;
}
/*header ul.nav{
    position: relative;
    display: flex;
    justify-content: space-between;
}*/
header ul.nav li,
header p a{
    font-family: "EB Garamond", 'Noto Sans JP', serif;
    font-weight: 400;
    font-optical-sizing: auto;
    font-style: normal;
    font-size:18px;
    margin:0 10px;
    letter-spacing:0.04em;
}
.header-logo{
    width:210px;
    height:auto;
}
/* dropdown */
.nav > li.menu__single {
    position: relative;
}

li.menu__single ul.menu__second-level {
    position: absolute;
    top: 30px;
    left:-20px;
    width: auto;
    background: #FFF;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    border-left:1px solid #999;
    border-right:1px solid #999;
    border-bottom:1px solid #999;
}

li.menu__single:hover ul.menu__second-level {
    top: 42px;
    visibility: visible;
    opacity: 1;
}
ul.menu__second-level {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
    padding:0;
}
.menu__second-level li {
    border-top: 1px solid #999;
    margin:0 !important;
}
.menu__second-level li a{
    display: block;
    padding:5px 15px;
    width:170px;
    text-align: center;
}
.menu__second-level li a small{
    font-size:62%;
}
/* dropdown */
header ul.nav,
header ul.sns{
    margin-top:10px;
    display: flex;
    justify-content: flex-start;
}
header ul.nav{
    width:65%;
    justify-content: flex-end;
}
header div div{
    display: flex;
    justify-content:space-between;
    width:100px;
}
/*header ul.nav li,
header ul.sns li{
    width:auto;
}*/
/*header p{
 text-align: right;
 width:100%;
}*/
header ul.sns img,
header p a img{
    max-width:inherit;
    width:30px;
    height:30px;
    margin:0 5px;
}


/*-------------------------------------- footer */

footer{
    padding:0 0 20px 0;
}
footer p{
    font-size:14px;
    line-height:2;
    text-align: right;
}
#page-top {
    bottom: 20px;
    position: fixed;
    right: 20px;
    z-index: 20;
}

#page-top a {
    font-size: 24px;
    color: #231815;
}


/*  共通  */
h1{
    font-family: "EB Garamond", 'Noto Sans JP', serif;
    font-size:54px;
    color:#b3b3b3;
    letter-spacing:0.05em;
    text-align: center;
    margin-top:130px;
}
.btn{
    background:#666;
}
.btn img{
    width:70px;
    height:auto;
    display:inline-block;
    margin-top:-4px;
}
.btn-sm{
    font-size:12px;
}
.btn-sm img{
    width:52px;
    height:auto;
    display:inline-block;
    margin-top:-3px;
}


/**********************************************************各ページ**/

/*-------------------------------------- index */

.gold{
    color:#8b701c;
}
#index .wrap{
    padding-top:50px;
}
#index h2,
#index h3{
    color:#8b701c;
    font-family: "EB Garamond", 'Noto Serif JP', serif;
    letter-spacing: 0.05em;
}
#index h2{
    font-size:60px;
}
#index h5{
    font-family: "EB Garamond";
    font-size:50px;
    line-height:1;
    color:#888888;
    letter-spacing: 0.5px;
}
.hero>img{
    width:100%;
    height:auto;
}
.hero div{
    position:absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
.hero div img{
    width:310px;
    height:auto;
}
.slider {
    display: block;
    width: 100%;
    content: "";
    height: 0;
    padding-top: calc(7 / 12 * 100%);
    position: relative;
}

.intro .container{
    background:url(../images/top/bg01.png) no-repeat;
    background-size:contain;
}
.intro .container-inner{
    position:relative;
}
.intro h4{
    margin-top:20px;
}
.intro p{
    width:460px;
    text-align: justify;
}
.intro .container-inner>img{
    position:absolute;
    top:40px;
    right:0;
    width:480px;
    height:auto;
}
.intro02 p{
    width:750px;
    text-align: justify;
}

/* top メニュー紹介　*/
.top-menu{
    background:#eae4d1;
}
.top-menu p{
    width:530px;
    text-align: justify;
}
.top-curry{
    position:relative;
}
.top-curry h4{
    width:630px;
    padding-left:270px;
}
.top-curry p{
    width:630px;
    padding-left:270px;
}
.top-curry .container>h5{
    position:absolute;
    top:-300px;
    right:30px;
    z-index:2;
}
.top-curry .container>img{
    position:absolute;
    bottom:0;
    right:-100px;
    width:40%;
}
.top-food{
    background:#eae4d1;
}
.top-food{
    display: flex;
}
.top-food div:first-child{
    width:50%;
    background:url(../images/top/202507/hambarger.jpg) no-repeat;
    background-size:cover;
    padding-top:20px;
}
.top-food div:first-child h5,
.top-food div:first-child p{
    padding-left:100px;
    width:90%;
    text-align: justify;
}
.top-food div:last-child{
    width:50%;
}
.top-food div:last-child h4,
.top-food div:last-child p{
    padding-left:40px;
    width:80%;
    text-align: justify;
}
.top-calzone{
    position:relative;
    background:url(../images/top/bg02.png) no-repeat left;
    background-size:contain;
    height:500px;
}
.top-calzone div{
    width:65%;
    text-align: right;
    padding-top:90px;
}
@media screen and (max-width: 1270px){
        .top-calzone div{
        width:55%;
        text-align: right;
        padding-top:90px;
    } 
}
@media screen and (max-width: 980px){
        .top-calzone div{
        width:48%;
        text-align: right;
        padding-top:90px;
    } 
}
.top-calzone img{
    position:absolute;
    top:0;
    right:0;
    height:500px;
    z-index:-1;
}
.top-sweets-drink{
    background:#eae4d1;
    position:relative;
}
.top-sweets-drink>img{
    position:relative;
    z-index:1;
    width:100%;
    height:auto;
}
.top-sweets-drink .container-inner{
    position:absolute;
    z-index:5;
    top:0;
    left:80px;
    width:54%;
}
.craft-cola{
    position:absolute;
    bottom:20px;
    left:33%;
    width:60%;
    z-index:5;
}
/* 1300px */
@media screen and (max-width: 1300px){
    .top-sweets-drink .container-inner {
        left: 0;
        width: 62%;
    }
    .top-sweets-drink .container-inner h4,
    .top-sweets-drink .container-inner h5,
    .top-sweets-drink .container-inner p,
    .craft-cola h4,
    .craft-cola p{
        width:90%;
        margin:0 auto;
    }
    .top-sweets-drink .container-inner h5{
        margin-top:-20px;
    }
    .top-sweets-drink .container-inner h4,
    .top-sweets-drink .container-inner p,
    .craft-cola h4,
    .craft-cola p{
        margin-top:10px;
    }
    .craft-cola{
        left:30%;
        width:70%;
    }
}
@media screen and (max-width: 1120px){
    .top-sweets-drink{
        background:#eae4d1;
        position:relative;
    }
    .top-sweets-drink>img{
        display:none;
    }
    .top-sweets-drink img.sp{
        display:block;
        width:100%;
    }
    .top-sweets-drink .container-inner{
        position:inherit;
        z-index:5;
        top:inherit;
        left:inherit;
        width:100%;
        padding:40px 0 0 0;
    }
    .top-sweets-drink .container-inner h4,
    .top-sweets-drink .container-inner h5,
    .top-sweets-drink .container-inner p,
    .craft-cola h4,
    .craft-cola p{
        width:90%;
        margin:0 auto;
    }
    .top-sweets-drink .container-inner h4,
    .top-sweets-drink .container-inner p,
    .craft-cola h4,
    .craft-cola p{
        margin-top:20px;
    }
    .craft-cola{
        position:inherit;
        bottom:inherit;
        left:inherit;
        width:100%;
        z-index:5;
    }
}
.top-drink{
    display: flex;
    justify-content:center;
    align-items:center;
}
.top-drink div{
    width:45%;
    text-align: right;
    padding-right:20px;
}
.top-drink div p{
    width:350px;
    float:right;
    text-align: justify;
}
.top-drink img{
    width:55%;
}
.top-menu-link{
    background:#eae4d1;
}
.top-menu-link .container-inner{
    text-align: right;
}
.top-access{
    background:url(../images/top/bg03.png) no-repeat;
    background-size:contain;
    text-align: center;
}
#index .top-access h3{
    color:#000;
    font-size:40px;
}
.top-access .container-inner{
    text-align: right;
}
.top-access iframe{
    width:75%;
    height:600px;
}
.shop-info{
    background:#EEEEEE;
}
.shop-info .container{
    display:flex;
    justify-content: center;
    align-items: center;
}
.shop-info .container div,
.shop-info .container>img{
    width:50%;
    text-align: center;
}
.shop-info .container div p img{
    width:200px;
}
#index .family h3{
    font-family: "EB Garamond";
    color:#000;
    text-align: center;
    font-size:36px;
    margin:30px 0 20px 0;
}
.concept{
    background:url(../images/top/bg04.png) repeat-y;
    background-size:100%;
    padding:60px 0;
}
#index .concept h2{
    font-size:24px;
}
.concept div{
    width:730px;
    margin:0 auto;
}

/*-------------------------------------- menu */
#menu section{
    padding-top:200px;
}
