@charset 'UTF-8';

body {
  background: linear-gradient(270deg, #c4f5ff, #f8f6e1); 
  background-size: 200% 200%; 
  animation: gradientAnimation 5s infinite alternate;
} 
@keyframes gradientAnimation { 0% { background-position: 0% 50%; } 100% { background-position: 100% 50%; } 
} 

.button .button-inner {
  background: #86c2d8;
  color: #FFF;
}
.cautions li,
.reserve_list li {
  list-style: none; 
  padding-left: 1.2em;
  text-indent: -1.2em; 
}

.cautions li::before,
.reserve_list li::before {
  content: "・";
  margin-right: 0.5em;
}

.reserve_list li:not(:first-child),
.caution_list li:not(:first-child){
margin-top: .5em;
}

.reserve_list li:nth-child(16) {
margin-top: 2.5em;
}
.reserve_box {
  margin-top: 40px;
}
.reserve_btn {
  margin-top: 40px;
  margin-bottom: 40px;
  position: relative;
}
.reserve_btn::after {
  position: absolute;
  content: "";
  mask-image: url(../img/ico_01.svg);
  width: 16px;
  aspect-ratio: 1 /1 ;
  background: #fff;
  mask-position: center;
  mask-size: cover;
  mask-repeat: no-repeat;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  transition: all .2s ease;
}
.txtb {
  font-weight: 700;
  font-size: 1.5rem;
}
.descriptiontxt span {
    font-size: 1.5rem;
}

h3 {
  color:#2eaedd;
}
.disc_btn {
  padding: 1em 4em;
}


@media only screen and (max-width: 767px) {
    nav ul {
        grid-template-columns: repeat(1, 1fr);
         gap: 0;
    }
}