@charset "utf-8";




body {
    font-family: "Tsukushi A Round Gothic Bold",
    "Kiwi Maru","YakuHanJP", "transat", "Zen Maru Gothic", ”Yu Gothic Medium”, "游ゴシック体", "Yu Gothic", "YuGothic", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "Osaka", "MS Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 1em;
    color: #333333;
    line-height:1.8em;
    }


 .taitle{
    position: relative;
    height: 230vw;
    margin: 0px;
}

.wrapper {
    width: 75vw;
    margin: 0 auto;
    color: #e98e9c;
  }
  
  .hero-image {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    position: relative;
    width: 100%;
    height: 95vh;
    background-size: cover;
    p {
      font-size: 32px;
    }
  }
  
  .scroll {
    position: absolute;
    bottom: 25%;
    width: 3em;
    height: 1em;
    cursor: pointer;
    text-decoration: none;
    color: #e98e9c;
    right: 115px;
    span {
      font-size: 12px;
      color: #e98e9c;
      text-align: center;
    }
  }
  
  .arrow {
    position: absolute;
    top: 1.25em;
    left: 1em;
    animation: 2s arrow-animation infinite ease-in-out;
    width: 0;
    height: 5em;
    border: .5px solid #e98e9c;
    &::after {
      content: '';
      display: block;
      position: absolute;
      top: 100%;
      left: -2px;
      width: 1px;
      height: 10px;
      border-top: 10px solid #e98e9c;
      border-left: 2px solid transparent;
      border-right: 2px solid transparent;
    }
  }
  
  @keyframes arrow-animation {
    0% {
      height: 1em;
    }
    66% {
      height: 5em;
    }
  }
  
  
    h2 {
      margin-bottom: 2em;
      text-align: center;
      font-size: 24px;
      letter-spacing: .1em;
      &::after {
        content: '';
        display: block;
        width: 10%;
        height: 2px;
        margin-top: .5em;
        margin-left: 45%;
        background: #F5F5F5;
      }
    }
    
  


body {
    display: block;
    margin: 0px;
}

  



  #logo a {
    
    border-radius: 2px;
    background-color: var(--main-bg-color);
    background-image: url(images/logo_gateau.png);
    background-size: 92%;
    background-position: center;
    box-shadow: var(--shadow);
    height: 80px;
    width: 140px;
    background-repeat: no-repeat;
    box-sizing: inherit;
}


.block {
    display: block;
}

#menu_icon {
    margin: auto;
    height: 50px;
    width: 75px;
    padding-top: 7px;
    margin-right: 20px;
}

#nav_button {
    position: absolute;
    z-index: 3;
}

button, input, select, textarea {
    background-color: transparent;
    border-style: none;
}

button, select {
    text-transform: none;
}

button {
    overflow: visible;

}
button, input, optgroup, select, textarea {
    font: inherit;
}




.taitle{
    background-image: url(images/haikei1.png);
        background-repeat: no-repeat;
        background-position: center top;
        background-size: 100% auto;
    }



    .story1{
        background-image: url(images/haikei7.png);
            background-repeat: no-repeat;
            background-position: center top;
            background-size: 100% auto;
        }


    .story1{
            position: relative;
            height: 240vw;
        }

        .konayuki {
            left: 0;
            right: 0;
            position: absolute;
            margin-top: 50px;
            width: 100vw;
          }

        
          img.yuki3{
            right: 0;
            position: absolute;
            margin-top: 45px;
          }




        .story2{
            background-image: url(images/haikei3.png);
                background-repeat: no-repeat;
                background-position: center top;
                background-size: 100% auto;
            }
    
    
        .story2{
                position: relative;
                height: 240vw;
            }


         .story3{
                background-image: url(images/haikei4.png);
                    background-repeat: no-repeat;
                    background-position: center top;
                    background-size: 100% auto;
                }
        
        
         .story3{
                    position: relative;
                    height: 195vw;}



          .story4{
                        background-image: url(images/haikei9.png);
                            background-repeat: no-repeat;
                            background-position: center top;
                            background-size: 100% auto;
                        }
                
                
         .story4{
                            position: relative;
                            height: 240vw;}

                            
         .syouhin{
                                background-image: url(images/haikei10.png);
                                    background-repeat: no-repeat;
                                    background-position: center top;
                                    background-size: 100% auto;
                                    position: relative;
                                    height: 420vw;
                                }                           
        





.container{
    padding: 0;
    margin: 0;
    font-style: normal;
    font-weight: normal;
    outline: 0;
    border: none;
    background: none;
    overflow: hidden;
    }

    .header__title.header-title{
     height: 80px;
    width: 140px;
    background-repeat: no-repeat;
    box-sizing: inherit;
    padding-top: 0px;
    margin-left: 20px;
    }

    .header{
        position: fixed;
        width: 100%;
        height: 50px;
        z-index: 9999;
        top: 0;
        left: 0;
        right: 0;
        z-index: 999;}


        

   



h1{
        
        display: block;
    
        background-size: 100% auto;
        width: 30vw;
        height: 18vw;
        }



 




     
 




a {
    color: inherit;
}

img {
    max-width: 100%;
    height: auto;
    background-size: cover;
    background-repeat: no-repeat;
    font-style: italic;
    vertical-align: middle;

    shape-margin: .75rem;
}

img.yama1 {
    bottom: 0;
    right: 0;
    position: absolute;
    width: auto;
    height: 200px;
}

img.yama2 {
    bottom: 0;
    position: absolute;
    width: auto;
    height: 130px;}





.sp-show {
  display: none;
}

@media screen and (max-width: 768px) {
  .sp-show {
    display: block;
  }
  .sp-none {
    display: none;
  }
} 


p{
margin: 0; 
}



._t1 {
    position: absolute;
    bottom: 240px;
    right: 20px;
    line-height: 57px;
    text-align: center;
    color: #5F706F;
    font-size: 20px;}
    



._t2 {
    position: absolute;
    bottom: 402px;
    right: 22px;
    text-align: right;
    line-height: 56px;
    color: #5F706F;
    transform: rotate(1deg);
    font-size: 20px;
    }

 ._t3 {
    position: absolute;
    bottom: 281px;
    right: 30px;
    text-align: right;
    color: #5F706F;
    line-height: 56px;
    transform: rotate(358deg);
    font-size: 20px;
}

._t4{
    position: absolute;
    bottom: 636px;
    right: 20px;
    color: #5F706F;
    text-align: right;
    line-height: 56px;
    transform: rotate(1deg);
    font-size: 20px;
}

    

._t5 {
    position: absolute;
    bottom: 800px;
    right: 129px;
    text-align: center;
    line-height: 442px;
    color: #ffffff;
    font-size: 14px;
}

._t6 {
    position: absolute;
    bottom: 945px;
    right: 94px;
    text-align: center;
    color: #5F706F;
    font-size: 17px;
}

._t7 {
    position: absolute;
    bottom: 1387px;
    right: 47px;
    text-align: center;
    color: #5F706F;
    font-size: 17px;
}


._t8 {
    position: absolute;
    text-align: left;
    color: #705f5f;
    font-size: 29px;
    bottom: 124px;
    right: 336px;
}
    


._t9 {
    position: absolute;
    text-align: left;
    color: #705f5f;
    font-size: 29px;
    bottom: 150px;
    right: 721.5px;
    
}




._t11 {
    position: absolute;
    bottom: 700px;
    right: 195px;
    text-align: left;
    color: #705f5f;
    font-size: 25px;
    bottom: 37px;
    right: 640px;
    
}

._t12 {
    position: absolute;
    bottom: 530px;
    right: 20px;
    text-align: right;
    line-height: 56px;
    transform: rotate(1deg);
    color: #e98e9c;
    font-size: 20px;
    
}
    


._t13 {
    position: absolute;
    bottom: 410px;
    right: 20px;
    text-align: right;
    line-height: 56px;
    transform: rotate(1deg);
    color: #5F706F;
    font-size: 20px;
    
}


._t14 {
    
    position: absolute;
    bottom: 420px;
    right: 114px;
    text-align: right;
    line-height: 56px;
    color: #e98e9c91;
    font-size: 15px;
    font-family: 'Cormorant Infant', 'Shippori Mincho B1', serif;
    letter-spacing: 3px;
}

._t15 {
    position: absolute;
    text-align: left;
    color: #705f5f;
    font-size: 16px;
    bottom: 199px;
    right: 698px;
    
}

._t16 {
    position: absolute;
    text-align: left;
    color: #705f5f;
    font-size: 16px;
    bottom: 200px;
    right: 429px;
    
}

._t17 {
    position: absolute;
    text-align: left;
    color: #705f5f;
    font-size: 16px;
    bottom: 200px;
    right: 68px;
    
}

._t18 {
    position: absolute;
    text-align: left;
    color: #705f5f;
    font-size: 29px;
    bottom: 130px;
    right: 130px;
    
}

._t19 {
    position: absolute;
    bottom: 700px;
    right: 195px;
    text-align: left;
    color: #705f5f;
    font-size: 25px;
    bottom: 37px;
    right: 20px;
    
}

._t20{
    position: absolute;
    bottom: 700px;
    right: 195px;
    text-align: left;
    color: #705f5f;
    font-size: 25px;
    bottom: 37px;
    right: 320px;
}

._t21{
    position: absolute;
    text-align: left;
    color: #ac376a;
    font-size: 14px;
    bottom: 310px;
    right: 100px;
}


 
 .santa  {
    object-fit: cover;
    left: 10px;
    position: absolute;
    width: auto;
    height: 700px;
    bottom: 872px;
    z-index:2;
 }



img.tyoko {
    bottom: 210px;
    right:575px;
    position: absolute;
    width: auto;
    height: 330px;
}

img.edamame {
    bottom: 190px;
    right: 233px;
    position: absolute;
    width: auto;
    height: 330px;
}


img.hakuginsanta{
bottom: 180px;
    left: 546px;
    position: absolute;
    width: auto;
    height: 330px;
}


.yazirushi {
    bottom: 1040px;
    right: 180px;
    position: absolute;
    width: auto;
    height: 70px;
    z-index:3;
}



.yazirushi2 {
    bottom: 1316px;
    right: 180px;
    position: absolute;
    width: auto;
    height: 70px;
    z-index: 3;
    transform: rotate(180deg);
}


.hyokkori {
    bottom: 1231px;
    left: 240px;
    position: absolute;
    width: auto;
    height: 200px;
    z-index: 3;
    transform: rotate(3deg);
}



.tedukuri {
    bottom: 780px;
    right: 60px;
    position: absolute;
    width: auto;
    height: 70px;
    z-index: 3;
}

.tedukuri {
    animation: shake 3s infinite;
    transform: rotate(10deg);
}

@keyframes shake {
    50% {
        transform: rotate(-20deg);
    }

    100% {
        transform: rotate(20deg);
    }
}

.hukidashi {
    bottom: 60px;
    right: 230px;
    position: absolute;
    width: auto;
    height: 200px;
    z-index: 3;
    transform: rotate(359deg);
}



.hukidashi {
    animation: shake 3s infinite;
    transform: rotate(10deg);
}

.nakami {
    position: relative;
    width: 100%;
    overflow: hidden;
    top: 1020px;
  }

  .Box-nakami {
    display: flex;
    width: fit-content;
    transition: transform 0.3s ease;
    transform: translateX(0);
  }

  .Box {
    flex-shrink: 0;
    width: 300px;
    height: 500px;
    margin-right: 10px;
    border-radius: 10px;
    background-color: #ffbec8;
  }

  .Arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
    background-color: #e98e9c;
    color: #fff;
    font-size: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
  }

  .Arrow.left {
    left: 0;
  }

  .Arrow.right {
    right: 0;
  }

  .Hide {
    display: none;
  }

  
  .saigo{
    background-image: url(images/haikei11.png);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100% auto;
    position: relative;
    height: 270vw;}

    img.inst {
    right: 220px;
    position: absolute;
    width: auto;
    height: 150px;
    bottom: 473.6px;
    z-index: 3;
    }

    img.x {
    bottom: 479px;
    right: 110px;
    position: absolute;
    width: auto;
    height: 150px;
    z-index: 3;
    }

    img.shop {
        right: 0;
        position: absolute;
        width: auto;
        height: 150px;
        bottom: 479px;
        z-index: 3;
    }

    img.x {
    bottom: 479px;
    right: 110px;
    position: absolute;
    width: auto;
    height: 150px;
    z-index: 3;
    }

    img.click {
    bottom: 123px;
    right: 116px;
    position: absolute;
    width: auto;
    height: 150px;
    z-index: 3;
        }

    img.hag {
            right: 60px;
    position: absolute;
    width: auto;
    height: 150px;
    bottom: 800px;
    z-index: 3;
    animation: shake 3s infinite;
    transform: rotate(10deg);
        }

    

    .love
    {
    right: 0;
    position: absolute;
    height: 600px;
    top: 6500px;
    object-fit: cover;
    object-position: center center;
    width: 100%;
    height: 657px;
    z-index: 2;
    }

    .hukidashi2
    {
        right: 2px;
    position: absolute;
    width: auto;
    height: 370px;
    top: 6633px;
    }


.snow {
    /*雪の色*/
    color: snow;
    /*雪の大きさ*/
    font-size: 10px;
    /*初期位置*/
    position: fixed;
    top: -5%;
    /*雪を適当な幅で降らせる*/
    text-shadow:
    5vw   -100px 2px,
    10vw  -400px 3px,
    20vw  -500px 4px,
    30vw  -580px 1px,
    39vw  -250px 2px,
    42vw  -340px 5px,
    56vw  -150px 2px,
    63vw  -180px 0,
    78vw  -220px 4px,
    86vw  -320px 9px,
    94vw  -170px 7px;
    /*雪アニメーション1*/
    animation: roll 5s linear infinite;
  }
    /*2つめの雪アニメーション*/
  .snow2nd{animation: anim 8s linear infinite;}
  
  @keyframes roll {
      0% {transform:rotate(0deg);}
     90% {opacity:1;}
     100% {transform:rotate(20deg);top:100%;opacity:0;}
  }
  @keyframes anim {
    100% {color:transparent;top:150%;}
  }





  


    





  
