@charset "UTF-8";

body{
    margin:0;
    font-family: "Hiragino Sans","Noto Sans JP",sans-serif;
    background-color:  #f9f1e8;
    overflow-x: hidden;
}

header {
    
    padding: 150px 0;
    text-align: center;
  
}



  

  .header-top{
    position: relative;
    display: inline-block;
  }

  .star {
    position: absolute;
    width: 50%;
    height: auto;
    animation: twinkle 3s infinite ease-in-out;
    width: 35px;
    height: 35px;
    z-index: 2;
  }
  
  
  @keyframes twinkle {
    0%, 100% { opacity: 0.5; transform: scale(1); }
    50% { opacity: 1; transform: scale(1.2); }
  }
  
 
  
  

  .logo {
    position: absolute;
    display: block;
    top: 20%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 250px;
    height: auto;
    animation: fade-in 6s;
    animation-fill-mode: forwards;
    margin:0 auto;
    display: block;

  }

  @keyframes fade-in{
    from{
        opacity: 0;
    }
    to{
        opacity: 1;
    }
  }

  
  
  .mitanuki {
   position: absolute;
    top:27%;
   left: 57%; 
   transform: translate(45%,-10%);
    width:140px;    
    height: auto;
    z-index: 1;
  


  }

.date {
    position: absolute;
    top: 60%;
    left: 50%;
    transform: translate(-55%,280%);
    font-size: 16px;
    text-align: center;
    

    background: #F5B6A5;
    color: white;
    font-weight: 700;
    padding: 6px 14px;
    border-radius: 10px;
    box-shadow: 0 6px 18px rgba(255,105,180,0.12);
    font-size: 16px;
    position: relative;
    z-index: 1;
    right:5px;
    clip-path:polygon(2% 0,100% 0,98% 100%,0 100%);
    border-radius: 0%;

    
}

.main {
    padding: 60px 20px;
    background-color: #f9f1e8;
    background-position: center;
     background-image: 
    repeating-linear-gradient( 90deg,rgba(172,42,62,0.15),rgba(172,42,62,0.15) 1px, transparent 1px,transparent 15px),
    repeating-linear-gradient( 0deg, rgba(172,42,62,0.15) ,rgba(172,42,62,0.15)1px, #f9f1e8 1px,#f9f1e8 20px);

}


          
  .menu {
   max-width:250px;
   position: relative;
   margin-top: -70px;
  }    

  
  .menu-box1,
  .menu-box2,
  .menu-box3 {
    width: 65%;
    padding: 20px;
    border-radius: 50px; 
    background: #fff;
    text-align: center;
    position: relative;
    opacity: 0;
    box-sizing: border-box;
    max-width: 400px;
    transform: translateX(100px) translateY(50px);
    animation: fadeIn 1.5s ease forwards;
}
 
@keyframes fadeIn {
  from {
    opacity: 0;
    transform:translateX(100px) translateY(50px);
  }
  to {
    opacity: 1;
    transform: translateX(100px)translateY(0);
  }
}
  
  

  .menu-box1 {
    border: 4px solid #ED7F9C;
    color: #ED7F9C;
    margin: 60px auto ;
    transform: translateX(100px) !important; 
    margin-top: -10px;

  }
  .menu-box1 img {
    position: absolute;
    bottom: -50px;
    left: -150px;
    width: 280px;
    height: auto;


  }
  
  
  .menu-box2 {
    border: 4px solid #E4BE61;
    color: #E4BE61;
    margin: 60px auto ;
    transform: translateX(-100px) !important;
    padding-bottom:20px;
    
    
}
 

  

  .menu-box2 img {
    position: absolute;
    bottom: -80px;
    right: -150px;
    width: 280px;
    height: auto;
  }
  

  .menu-box3 {
    border: 4px solid #93ADC4;
    color: #93ADC4;
    margin: 60px auto;
    transform: translateX(100px) !important;
    
  }
  .menu-box3 img {
    position: absolute;
    bottom: -50px;
    left: -150px;
    width: 320px;
    height: auto;
  }

  
 
  .logo2{
    display: block;
    width:100px;
    margin: 0 auto;
  }

.star1 {  top: 5%;  left: 10%;}
.star2 {  top: 20%; left: 5%; }
.star3 {  top: 23%; left: 20%; }
.star4 {  top: 18%; left: 25%; }
.star5 {  top: 33%; left: 10%; }
.star6 {  top: 10%; left: 63%; }
.star7 {  top: 3%; left: 93%; }
.star8 {  top: 20%; left: 80%; }
.star9 {  top: 35%; left: 83%; }
.star10 { top:4%; left: 74%; }

 
  @media (max-width: 768px) {
    header {
      padding: 100px 0;
    }
    .logo {
      width: 200px;
    }
    .mitanuki {
      width: 100px;
      left: 55%;
    }
    .date {
      font-size: 14px;
      display: block;
      margin: 0 auto 20px auto;
    }

   .menu {
   max-width:250px;
   position: relative;
   margin-top: -70px;
   margin-left: -12%;
   }  

    .menu-box {
      width: 90%;
      max-width: 350px;
      margin: 30px 67px;
      padding: 25px 20px;
      border-radius: 40px;
      transform: none !important;
    }
  
  .menu-box1 {
    border: 4px solid #ED7F9C;
    color: #ED7F9C;
    margin: 60px 12px ;
    transform: translateX(100px) !important; 
    margin-top: -10px;

  }
  .menu-box1 img {
    position: absolute;
    bottom: -50px;
    left: -60%;
    width: 100%;
    height: auto;
    top:9%;
}
  .menu-box2 {
    border: 4px solid #E4BE61;
    color: #E4BE61;
    margin: 60px 115px ;
    transform: translateX(-100px) !important;
    padding-bottom:20px;
    
    
}
 

  

  .menu-box2 img {
    position: absolute;
    bottom: -80px;
    right: -65%;
    width: 100%;
    height: auto;
    top:10%;
  }
  .menu-box3 {
    border: 4px solid #93ADC4;
    color: #93ADC4;
    margin: 60px -2px ;
    transform: translateX(100px) !important; 
    margin-top: -10px;

  }
  .menu-box3 img {
    position: absolute;
    bottom: -70px;
    left:-66%;
    width: 130%;
    height: auto;
    top:3%;
  }
h2{
  font-size: 17px;
}
h4{
  font-size: 14px;
}
h5{
  font-size: 11px;
}

   .star1 { top: 5%; left: 8%; }
    .star2 { top: 12%; left: 5%; }
    .star3 { top: 23%; left: 13%; }
    .star4 { top: 10%; left: 25%; }
    .star5 { top: 15%; left: 18%; }
    .star6 { top: 8%; left: 65%; }
    .star7 { top: 3%; left: 92%; }
    .star8 { top: 5%; left: 80%; }
    .star9 { top: 25%; left: 92%; }
    .star10 { top: 15%; left: 85%; }
  }

  @media (max-width: 480px) {
    header {
      padding: 100px 0;
    }
    .logo {
      width: 200px;
    }
    .mitanuki {
      width: 100px;
      left: 55%;
    }
    .date {
      font-size: 14px;
      display: block;
      margin: 0 auto 20px 15px;
    }
    .menu-box {
      width: 90%;
      max-width: 350px;
      margin: 30px auto;
      padding: 25px 20px;
      border-radius: 40px;
      transform: none !important;
    }
  

    .menu-box img {
      width: 100%;
      max-width: 250px;
    
    }

  .star{
    width: 32px;
    height: 32px;
  }
  
.star1 {  top: 5%;  left: 10%;}
.star2 {  top: 26%; left: 5%; }
.star3 {  top: 20%; left: 15%; }
.star4 {  top: 13%; left: 6%; }
.star5 {  top: 37%; left: 18%; }
.star6 {  top: 16%; left: 88%; }
.star7 {  top: 3%; left: 93%; }
.star8 {  top: 26%; left: 80%; }
.star9 {  top: 39%; left: 89%; }
.star10 { top:4%; left: 74%; }
  }
  
  /* 💻 PC時 左右余白の調整 */
  @media (min-width: 769px) {
    .menu-box.left {
      margin-left: 60px;
    }
    .menu-box.right {
      margin-right: 60px;
    }
    body{
    margin:0;
    font-family: "Hiragino Sans","Noto Sans JP",sans-serif;
    background-color:  #f9f1e8;
    overflow-x: hidden;
}

header {
    
    padding: 150px 0;
    text-align: center;
  
}



  

  .header-top{
    position: relative;
    display: inline-block;
  }

  .star {
    position: absolute;
    width: 50%;
    height: auto;
    animation: twinkle 3s infinite ease-in-out;
    width: 35px;
    height: 35px;
    z-index: 2;
  }
  
  
  @keyframes twinkle {
    0%, 100% { opacity: 0.5; transform: scale(1); }
    50% { opacity: 1; transform: scale(1.2); }
  }
  
 
  
  

  .logo {
    position: absolute;
    display: block;
    top: 20%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 250px;
    height: auto;
    animation: fade-in 6s;
    animation-fill-mode: forwards;
    margin:0 auto;
    display: block;

  }

  @keyframes fade-in{
    from{
        opacity: 0;
    }
    to{
        opacity: 1;
    }
  }

  
  
  .mitanuki {
   position: absolute;
    top:27%;
   left: 57%; 
   transform: translate(45%,-10%);
    width:140px;    
    height: auto;
    z-index: 1;
  


  }

.date {
    position: absolute;
    top: 60%;
    left: 50%;
    transform: translate(-55%,280%);
    font-size: 16px;
    text-align: center;
    

    background: #F5B6A5;
    color: white;
    font-weight: 700;
    padding: 6px 14px;
    border-radius: 10px;
    box-shadow: 0 6px 18px rgba(255,105,180,0.12);
    font-size: 16px;
    position: relative;
    z-index: 1;
    right:5px;
    clip-path:polygon(2% 0,100% 0,98% 100%,0 100%);
    border-radius: 0%;

    
}

.main {
    padding: 60px 20px;
    background-color: #f9f1e8;
    background-position: center;
     background-image: 
    repeating-linear-gradient( 90deg,rgba(172,42,62,0.15),rgba(172,42,62,0.15) 1px, transparent 1px,transparent 15px),
    repeating-linear-gradient( 0deg, rgba(172,42,62,0.15) ,rgba(172,42,62,0.15)1px, #f9f1e8 1px,#f9f1e8 20px);

}


          
  .menu {
   max-width:250px;
   position: relative;
   margin-top: -70px;
  }    

  
  .menu-box1,
  .menu-box2,
  .menu-box3 {
    width: 65%;
    padding: 20px;
    border-radius: 50px; 
    background: #fff;
    text-align: center;
    position: relative;
    opacity: 0;
    box-sizing: border-box;
    max-width: 400px;
    transform: translateX(100px) translateY(50px);
    animation: fadeIn 1.5s ease forwards;
}
 
@keyframes fadeIn {
  from {
    opacity: 0;
    transform:translateX(100px) translateY(50px);
  }
  to {
    opacity: 1;
    transform: translateX(100px)translateY(0);
  }
}
  
  

  .menu-box1 {
    border: 4px solid #ED7F9C;
    color: #ED7F9C;
    margin: 60px auto ;
    transform: translateX(100px) !important; 
    margin-top: -10px;

  }
  .menu-box1 img {
    position: absolute;
    bottom: -50px;
    left: -150px;
    width: 280px;
    height: auto;


  }
  
  
  .menu-box2 {
    border: 4px solid #E4BE61;
    color: #E4BE61;
    margin: 60px auto ;
    transform: translateX(-100px) !important;
    padding-bottom:20px;
    
    
}
 

  

  .menu-box2 img {
    position: absolute;
    bottom: -80px;
    right: -150px;
    width: 280px;
    height: auto;
  }
  

  .menu-box3 {
    border: 4px solid #93ADC4;
    color: #93ADC4;
    margin: 60px auto;
    transform: translateX(100px) !important;
    
  }
  .menu-box3 img {
    position: absolute;
    bottom: -50px;
    left: -150px;
    width: 320px;
    height: auto;
  }

  
 
  .logo2{
    display: block;
    width:100px;
    margin: 0 auto;
  }

.star1 {  top: 5%;  left: 10%;}
.star2 {  top: 20%; left: 5%; }
.star3 {  top: 23%; left: 20%; }
.star4 {  top: 18%; left: 25%; }
.star5 {  top: 33%; left: 10%; }
.star6 {  top: 10%; left: 63%; }
.star7 {  top: 3%; left: 93%; }
.star8 {  top: 20%; left: 80%; }
.star9 {  top: 35%; left: 83%; }
.star10 { top:4%; left: 74%; }

 

  }