@charset "utf-8";
/* 余白 */
.w-container {
    width: 1200px;
    margin: auto;
}
/* 全体 */
body::before{/*iOSではbodyに直接背景を設定するとfixedがうまく作動しないので疑似要素に指定しています。*/
    content: "";
    display:block;
    position:fixed;
    top:0;
    left:0;
    z-index:-1;
    width:100%;
    height:100%;
    background-repeat:no-repeat;
    background-position:50% 100%;
    background-image:url(../img/common/background-img.jpg);
    background-size:cover;
    }
p,dl { 
    font-family: "Zen Maru Gothic", serif;
    font-weight: bold;
    line-height: 1.5rem;
    font-size: 16px;
}
h2, h3 {
    text-align: center;
    margin-bottom: 3rem;
}
.taberogu {
    color: #f08a30;
}
.shop-img3 img {
    border-radius: 80px;
    margin-bottom: 6rem;
}
.shop-text {
    font-size: 20px;
    color: #233773;
}

.shop-container::after {
    content: url(../img/access/kasumi.png);
    position: absolute;
    top: 442px;
    left: -38px;
}

.shop-container::before {
    content: url(../img/access/kasumi.png);
    position: absolute;
    top: 644px;
    left: 400px;
}

.img-container img {
    min-width: 450px;
}

.shop-container {
    position: relative;
}

.img-container2 {
    display: none;
}
/* 店舗情報 */
.shop {
    margin-bottom: 3rem;
    padding-top: 8rem;
}
.shop-container {
    display: flex;
    gap: 2rem;
}
.shop-title {
    display: flex;
    align-items: end;
    padding-bottom: 2rem;
}
dl {
    display: flex;
    flex-wrap: wrap;
    max-width: 650px;
  }
  dt {
    width: 30%;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 3px dotted rgba(199, 168, 57, 0.5);
  }
  
  dd {
    width: 70%;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 3px dotted rgba(199, 168, 57, 0.5);
  }
  .shop-main {
    background-color: rgba(255, 255, 255, 0.5);
    padding: 4rem;
    border-radius: 80px;
  }

 .insta {
    margin-left: 10px;
    color: #da10da;
 }

 .line {
    margin-left: 10px;
    color: #06b42f;
 }

  /* .shop-img1::after {
    content: url(../img/access/kasumi.png);
    position: absolute;
    bottom: 0;
    left: 100px;
  } */
/* アクセス */
iframe {
    display: block;
    width: 100%;
    height: 420px;
    border-radius: 80px;
    margin-bottom: 2rem;
}
.access {
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: rgba(255, 255, 255, 0.5);
    padding: 3rem;
    border-radius: 80px;
    margin-bottom: 170px;
    
}
.usagi-area{
    height: 200px;
    max-height: 200px;
    width:100%;
    position: relative;
}

.usagi{
    position: absolute;
    background-image:url(../img/access/148684.png);
    background-repeat:no-repeat;
    background-size: contain;
    width:100px;
    height:100px;
    right: 0;
    top: 50%;
    animation: usagi-move-01 10s 1 forwards;
}


@keyframes usagi-move-01 {
    0% {
        right: 0;
        top: 30%;
        opacity: 0;
    }
    10%{
        right: 0;
        top: 50%;
        opacity: 1;
    }
    15% {
        right: 0;
        top: 50%;
    }
    30% {
        background-image:url(../img/access/148639.png);
        right: 10%;
        top: 30%;
    }
    40% {
        background-image:url(../img/access/148684.png);
        right: 20%;
        top: 50%;
    }
    50% {
        background-image:url(../img/access/148639.png);
        right: 30%;
        top: 30%;
    }
    60%{
        background-image:url(../img/access/148684.png);
        right: 40%;
        top: 50%;
    }
    70%{
        background-image:url(../img/access/148639.png);
        right: 50%;
        top: 30%;
    }
    80%{
        background-image:url(../img/access/148684.png);
        right: 60%;
        top: 50%;
    }
    90%{
        background-image:url(../img/access/148639.png);
        right: 65%;
        top: 30%;
    }

    100% {
        background-image:url(../img/index/usagi.png);
        right: 65%;
        top: 50%;
    }
  }

/* モバイル */
@media (max-width: 800px) {
    h2, h3 {
        text-align: center;
        margin-bottom: 1rem;
    }
    .img-container {
        display: none;
    }
    .w-container {
        width: 350px;
        margin: auto;
    }
    dl {
        display: flex;
        flex-wrap: wrap;
        max-width: 100%;
        font-size: 13px;
      }
      .shop {
        margin-bottom: 1rem;
    }
    .img-container2 {
        display: inline;
        display: flex;
        gap: 0.5rem;
    }
    .img-container2 img{
        border-radius: 80px;
        margin-bottom: 3rem;
    }
    .shop-img3 img {
        border-radius: 80px;
        margin-bottom: 1rem;
    }

    .shop-container::after {
        top: 900px;
        left: 215px;
    }

    .shop-container::before {
        top: 1223px;
        left: -35px;
    }


    .shop-main {
        background-color: rgba(255, 255, 255, 0.5);
        padding: 2rem;
        border-radius: 80px;
      }
    .access {
        margin-bottom: 180px;
    } 
}