
header{
  width: 100%;
  background: #FFF;
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
.header_wrap {

  width:300px;
  
}

.header_wrap img.logo{

  width:180px;
  margin:60px auto 60px;
  display: block;
  object-fit: cover;
animation: animationZoom1 20s ease-in-out forwards;
}

@keyframes animationZoom1 {
  100% { transform:scale(1.11)} 
  }
  @keyframes animationZoom2 {
  50% { transform:scale(1.2)} 
  }
  
header ul.menu {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  padding: 0 80px;
  gap: 40px;
  align-items: center;
}
header ul.menu li{
  width:100%;
}
header ul.menu li a{
  font-size:1.8rem
}
img.visual{
  width:calc(100% - 300px);
  height: 100svh;
  object-fit: cover;
}

header .square{
  width:400px;
  background-color: var(--brand-color);
  padding:40px;
  position: absolute;
  right: 40px;
  bottom: -120px;
  z-index: 2;
}
header .square .reservation{
  width:100%;
  font-size: 2.0rem;
  text-align: center;
  margin-bottom:10px

}
header .square .tel{
  width:100%;
  font-size: 2.8rem;
  margin-bottom:20px;
  text-align: center;
  letter-spacing: 0.4rem;
}
header .square p{
  width:100%;
  font-size: 1.4rem;
  margin-bottom:20px;
  text-align: center;
}
header .square p:last-child{
  width:100%;
  font-size: 1.2rem
}
/*ハンバーガー*/
header input[type=checkbox] {
  display: none; 
  
}

input[type=checkbox]:checked ~ #overlay {
  visibility: visible; 
}

input[type=checkbox]:checked ~ #overlay-button:hover span, input[type=checkbox]:checked ~ #overlay-button span {
  background: transparent;
  
  
}
input[type=checkbox]:checked ~ #overlay-button span:before {
  transform: rotate(45deg) translate(7px, 7px);

}
input[type=checkbox]:checked ~ #overlay-button span:after {
  transform: rotate(-45deg) translate(7px, -7px);
}
#overlay-button {
  position: fixed;
  left: 1em;
  top: 1.2rem;
  padding: 34px 20px;
  z-index: 5;
  cursor: pointer;
  user-select: none;
  background: var(--brand-color);
  
}
header.scrolled #overlay-button {

  
}
#overlay-button span {
  height: 2px;
  width: 40px;
  border-radius: 2px;
  background-color: #FFF;
  position: relative;
  display: block;
  transition: all .2s ease-in-out;
}
header.scrolled #overlay-button span{
  background-color: #FFF;;
}
#overlay-button span:before {
  top: -14px;
  visibility: visible;
}
#overlay-button span:after {
  top: 14px;
}
#overlay-button span:before, #overlay-button span:after {
  height: 2px;
  width: 40px;
  border-radius: 2px;
  background-color: #FFF;
  position: absolute;
  content: "";
  transition: all .2s ease-in-out;
}
#overlay-button:hover span, #overlay-button:hover span:before, #overlay-button:hover span:after {
  background: #FFF;
}



#overlay {
  height: 100vh;
  width: 100vw;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 4;
  visibility: hidden;
  position: fixed;
  left: 0;
}
#overlay.active {

}

header #overlay ul{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  padding-top: 120px;
  
}
header #overlay ul li{
  text-align: center;
  width: 100%;
  padding: 0 4%;
}
header #overlay ul li a{
  font-size: 2.4rem;
  line-height: 120%;
  font-weight: 700;
  color:#FFF;
}
header #overlay ul li a span{
  color:var(--brand-color);
  font-size: 1.4rem;
}
/*ハンバーガー*/