* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  color: rgb(107, 67, 40);
}

html {
  scroll-behavior: smooth;
}

body {
  font-weight: bold;
  text-decoration: none;
  list-style: none;
  font-family: "Zen Maru Gothic";
  font-size: 16px;
}

button {
  background-color: transparent;
  border: none;
}

/* 共通 */
.logo {
  display: flex;

  img {
    width: auto;
  }
}

.link {
  position: relative;
  text-align: center;
  border: 5px solid #ff8800;
  text-decoration: none;
  font-size: 18px;
  border-radius: 50px;
  width: 250px;
  height: 50px;
  margin: 20px auto 20px auto;
  background-color: white;

  &.link a {
    position: absolute;
    top: 0;
    left: -2%;
    padding-top: 7px;
    display: block;
    width: 100%;
    height: 100%;
    text-decoration: none;
    z-index: 1;
  }

  &.link a:after {
    content: "▶";
    position: absolute;
    top: 25%;
    right: 7%;
    font-size: 15px;
    z-index: 0;
  }

  &.link a:hover {
    transition: all 0.4s ease;
    opacity: 0.6;
  }
}

.title {
  position: relative;
  margin: 0 auto;
  border-bottom: 1px solid #6b4c32;
  font-size: 13px;
  display: flex;
  justify-content: center;
}

.title::before {
  position: absolute;
  bottom: -12px;
  left: -5px;
  font-size: 18px;
  content: "●";
}

.cross {
  position: relative;
  width: 30px;
  height: 30px;
  margin: auto;

  &.cross::before,
  &.cross::after {
    content: "";
    position: absolute;
    background-color: #6b4c32;
  }

  &.cross::before {
    top: 190%;
    left: -40%;
    width: 55px;
    height: 11px;
    transform: translateY(-50%);
    border-radius: 50px;
  }

  &.cross::after {
    top: 100%;
    left: 50%;
    width: 11px;
    height: 55px;
    transform: translateX(-50%);
    border-radius: 50px;
  }
}

/* アニメーション */
/* Header */
@keyframes purupuru {
  0% {
    transform: scale(1, 1) translate(0%, 0%);
  }

  2% {
    transform: scale(1, 1) translate(5%, 0%) skew(-10deg, 0deg);
  }

  3% {
    transform: scale(1, 1) translate(-10%, 0%) skew(15deg, 0deg);
  }

  4% {
    transform: scale(1, 1) translate(10%, 0%) skew(-15deg, 0deg);
  }

  4% {
    transform: scale(1, 1) translate(2%, 0%) skew(-5deg, 0deg);
  }

  5% {
    transform: scale(1, 1) translate(-2%, 0%) skew(5deg, 0deg);
  }

  6% {
    transform: scale(1, 1) translate(0%, 0%);
  }

  100% {
    transform: scale(1, 1) translate(0%, 0%);
  }
}

/* top */
@keyframes syabon1 {
  0% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-40px) scale(1.05) rotate(5deg);
  }

  100% {
    transform: translateY(0);
  }
}

@keyframes syabon2 {
  0% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-20px) translateX(20px) scale(0.95) rotate(5deg);
    opacity: 0.8;
  }

  100% {
    transform: translateY(0);
  }
}

@keyframes syabon3 {
  0% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-15px) translateX(-40px) scale(1.05) rotate(-20deg);
    opacity: 0.8;
  }

  100% {
    transform: translateY(0);
  }
}

/* selection */
@keyframes fadein {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

/* topmenu */
@keyframes powapowa {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.1) translateY(-10%);
  }

  100% {
    transform: scale(1);
  }
}

/* アニメーション end */

/* Header */
header {
  position: fixed;
  top: 0;
  z-index: 100;
  height: 10svh;
  width: 100%;

  #header {
    width: 100%;
    position: relative;
    display: flex;
    justify-content: space-between;
    border: 3px solid #ff8800;
    height: 10svh;
    background-color: white;
    z-index: 100;

    .header-title {
      font-size: 30px;
      display: flex;
      align-items: center;

      p {
        margin-bottom: 10px;
        font-size: 30px;
      }

      img {
        margin: 5px 10px 10px 10px;
        width: auto;
        height: 35px;
      }

      .header-icon {
        animation: purupuru 10s linear infinite;
      }
    }

    .line {
      display: flex;
      flex-direction: column;
      justify-content: center;
      margin-left: 50px;
      padding-right: 15px;
      gap: 10px;
      cursor: pointer;

      li {
        width: 40px;
        height: 3px;
        background-color: #6b4c32;
        list-style: none;
        transition: all 0.5s;
      }

      &.active {
        .line1 {
          transform: translateY(13px) rotate(40deg);
        }

        .line3 {
          transform: translateY(-13px) rotate(-40deg);
        }

        .line2 {
          opacity: 0;
        }
      }
    }

    .menu-list {
      display: none;
    }
  }

  #hamburger {
    margin: auto;
    width: auto;
    height: 90svh;
    z-index: 99;
    border: 3px solid #ff8800;
    background-image: url(../assets/img/nakamoto_BG.png);
    /* background-color: #fff7eee0; */
    background-size: 200px;
    background-size: cover;
    transform: translateY(-120%);
    transition: all ease-in-out 1.2s;

    &#hamburger.active {
      transition: all ease-in-out 1s;
      transform: translateY(0%);
    }

    .hamburger-list {
      height: 100%;
      width: auto;
      align-items: center;
      display: flex;
      justify-content: center;

      /* ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        li {
          list-style: none;
          margin: 38px auto;
          width: 220px;
          display: flex; */
      .humburger-contents {
        width: 70%;
        height: 70%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;

        a {
          border-bottom: 1px solid #6b4c32;
          display: flex;
          text-decoration: none;

          p {
            text-align: center;
            width: 130px;
            height: 30px;
            font-size: 20px;
            margin: 0 auto;
          }

          img {
            width: auto;
            height: 40px;
            margin: 0 auto;
            padding-bottom: 5px;
          }
        }
      }
    }
  }

  #hamburger .hamburger-list a {
    filter: blur(5px);
    opacity: 0;
    transition:
      filter 1s ease,
      opacity 1s ease;
  }

  #hamburger .hamburger-list a.active {
    filter: blur(0);
    opacity: 1;
  }
}

/* footer */
footer {
  background-image: url(../assets/img/モバイル中本.JPG);
  background-size: cover;
  padding: 10px 25px;
  width: 100%;

  #footer {
    width: auto;
    padding: 10px;
    background-color: rgba(255, 255, 255, 0.945);
    border: #ff8800 5px solid;

    .outer-container {
      height: 98%;
      width: auto;

      .footer-container {
        display: flex;
        flex-direction: column;
        justify-content: space-evenly;
        height: 100%;

        .footer-left {
          display: contents;

          .footer-title {
            margin: 15px 0;
            display: flex;
            justify-content: center;

            img {
              width: 45px;
              height: 36px;
            }
          }

          .address-wrapper {
            width: 230px;
            margin: auto;

            .address-tell {
              a {
                text-decoration: none;
                text-align: left;

                span {
                  font-size: 20px;
                }

                &:hover {
                  transition: all 0.4s ease;
                  opacity: 0.6;
                }
              }
            }
          }

          .footer-wrapper {
            width: 100%;
            height: auto;
            text-align: center;

            .footer-information {
              margin: 5px auto;
              width: 170px;
              border: #ff8800 2px solid;
              background-color: #fff9e6;
              border-radius: 5px;

              h3 {
                color: #ff8800;
              }
            }

            .table-mb {
              .table-title {
                padding: 0 20px;
                display: flex;
                justify-content: space-between;
                background-color: #fdf1e4;
                border-top: #6b4c32 1px solid;
                border-bottom: #6b4c32 1px solid;

                p {
                  span {
                    font-weight: normal;
                    font-size: 15px;
                  }
                }
              }

              table {
                th {
                  width: 150px;
                }

                td {
                  color: #ff8800;
                }
              }

              table:last-child {
                border-bottom: #6b4c32 1px solid;
                padding-bottom: 5px;
              }
            }

            .table-pc {
              display: none;
            }
          }
        }

        .footer-right {
          .footer-contents {
            margin-top: 15px;
            border-top: #6b4c32 3px solid;
            justify-content: space-evenly;
            text-align: center;
            display: flex;

            a {
              display: block;
              line-height: 45px;
              font-size: 16px;
              text-decoration: none;

              &:hover {
                transition: all 0.4s;
                opacity: 0.6;
              }
            }
          }
        }

        .footer-bottom {
          margin-top: auto;

          .return-top {
            display: block;
            position: relative;
            text-decoration: none;

            .return-arrow1 {
              position: relative;

              &.return-arrow1:before {
                z-index: 5;
                content: "";
                position: absolute;
                bottom: -12px;
                right: -23px;
                width: 15px;
                height: 4px;
                background-color: #6b4c32;
                border-radius: 10px;
                transform: rotate(60deg);
              }
            }

            .return-arrow2 {
              position: relative;

              &.return-arrow2:after {
                z-index: 5;
                content: "";
                position: absolute;
                bottom: -12px;
                right: -17px;
                width: 15px;
                height: 4px;
                background-color: #6b4c32;
                border-radius: 10px;
                transform: rotate(-60deg);
              }
            }

            &.return-top::before {
              content: "";
              position: absolute;
              bottom: -35px;
              right: -35px;
              width: 39px;
              height: 39px;
              padding-top: 2px;
              border: #ff8800 3px solid;
              border-radius: 50%;
              background-color: white;
            }
          }

          .return-top:hover {
            transform: translateY(-8px);
            transition: all 0.4s ease;
          }
        }
      }
    }

    .copyright {
      height: 2%;
      margin-top: auto;

      p {
        text-align: center;
        font-weight: normal;
        font-size: 10px;
      }
    }
  }
}

/* top-img */
.header-img {
  position: absolute;
  object-fit: cover;
  border-radius: 50%;
}

/* 1ページ目 */
/* TopPage */

main {
  margin-top: 10svh;

  #main-top {
    .maintop-img {
      width: 100%;
      height: calc(90svh - 68px);
      background-image: url(../assets/img/7c7cc090015b08f14a9c9a8efbec619daf204495.png);
      background-color: rgba(253, 223, 159, 0.6);
      position: relative;
      overflow: hidden;

      .img1 {
        box-shadow: #ff880077 -20px -20px;
        top: 7%;
        left: 10%;
        width: 120px;
        height: 120px;
        animation: syabon1 15s linear infinite;
      }

      .img2 {
        box-shadow: #ffa60093 -25px -25px;
        top: 12%;
        right: -10%;
        width: 210px;
        height: 210px;
        animation: syabon2 12s linear infinite;
      }

      .img3 {
        box-shadow: #ffbf008e -10px 0;
        bottom: 37%;
        left: 22%;
        width: 100px;
        height: 100px;
        animation: syabon1 16s linear infinite;
      }

      .img4 {
        box-shadow: #ff88008a -18px -18px;
        bottom: 0%;
        left: -4%;
        width: 100px;
        height: 100px;
        animation: syabon2 15s linear infinite;
      }

      .img5 {
        box-shadow: #f5ff6eb2 -20px -10px;
        bottom: 0%;
        right: 10%;
        width: 180px;
        height: 180px;
        animation: syabon3 14s linear infinite;
      }
    }

    .maintop-bottom {
      width: auto;
      border: 3px solid chocolate;
      display: flex;
      justify-content: center;
      align-items: center;

      h1 {
        text-align: center;
        font-size: 18px;

        span {
          font-size: 24px;
          color: rgb(255, 157, 29);
        }

        br {
          display: block;
        }
      }

      img {
        padding-top: 10px;
        padding-left: 10px;
        width: auto;
        height: 50px;
      }
    }
  }

  /* About */
  #about {
    width: 100%;
    height: auto;
    background-image: url(../assets/img/19181605647dc9951b1993e356a81683682c18b0コピーmb版.JPG);
    background-size: cover;
    background-repeat: no-repeat;
    padding: 40px 0;

    .about-container {
      margin: auto;
      background-color: rgba(255, 255, 255, 0.7);
      width: 90%;
      height: auto;
      border: 3px solid chocolate;

      .title {
        width: 300px;
        opacity: 0;

        &.show {
          opacity: 1;
          animation: fadein 2s ease-in-out;
        }

        h2 {
          padding-top: 15px;
          font-size: 22px;
          margin-right: 5px;
        }

        img {
          margin-top: 17px;
          width: 40px;
          height: 30px;
        }
      }

      .about-text {
        margin: 5%;
        opacity: 0;
        transform: translateY(-50px);
        transition:
          opacity 1s ease-out,
          transform 1s ease-out;

        &.show {
          opacity: 1;
          transform: translateY(0);
        }

        p {
          padding-left: 8px;
          line-height: 28px;
          text-align: left;
          font-size: 18px;

          br {
            display: none;
          }
        }
      }

      .about-icon {
        position: relative;
        width: 100%;
        height: 100px;
        opacity: 0;
        transform: translateY(-50px);
        transition:
          opacity 1s ease-out,
          transform 1s ease-out;

        &.show {
          opacity: 1;
          transform: translateY(0);
        }

        .human {
          position: absolute;
          width: 100px;
          top: 45%;
          left: 50%;
          transform: translate(-50%, -50%);
        }

        .heart {
          width: 20px;
          position: absolute;
          top: 47%;
          left: 50%;
          transform: translate(-50%, -50%);
        }
      }
    }
  }

  /* Selection */

  #selection {
    background-image: url(../assets/img/水玉カラー背景モバイル.png);
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 100%;
    padding-bottom: 50px;

    .title {
      padding-top: 30px;
      width: 330px;

      &.show {
        animation: fadein 3s;
      }

      h2 {
        padding-top: 10px;
        padding-left: 10px;

        span {
          font-size: 25px;
          color: #ff8800;
        }
      }

      img {
        margin-left: 10px;
        margin-top: 7px;
        height: 35px;
      }
    }

    .selection-container {
      width: 100%;
      height: 100%;
      .selection-wrapper {
        position: relative;
        width: 290px;
        height: 250px;
        margin: 60px auto;
        border-bottom: 3px solid #ff8800;
        border-left: 3px solid #ff8800;
        border-right: 3px solid #ff8800;
        background-color: white;
        opacity: 0;
        transform: translateY(-50px);
        transition:
          opacity 1s ease-out,
          transform 1s ease-out;
        &.selection-wrapper:last-child {
          margin-bottom: 0;
        }

        &.show {
          opacity: 1;
          transform: translateY(0);
        }

        .selection-head {
          width: 290px;
          position: absolute;
          top: -8%;
          left: -1%;
          height: 35px;
          background-color: #ff8800;
          outline: 2px solid white;
          outline-offset: -5px;
          border-radius: 50px;

          h3 {
            margin-top: 6px;
            font-size: 15px;
            text-align: center;
            color: white;
          }
        }

        .selection-contents {
          padding: 30px 35px;
          height: 100%;
          display: flex;
          flex-direction: column;
          justify-content: space-between;
          align-items: center;
          p {
            font-weight: normal;
            font-size: 15px;

            span {
              font-weight: bold;
              font-size: 18px;
            }
          }

          .hand-img1 {
            position: relative;
            padding-top: 15px;
            display: flex;
            justify-content: center;
            height: 100%;

            .left-hand {
              position: absolute;
              right: 40px;
              height: 70%;
              margin-top: 10px;
              width: 40px;
            }

            .hand-heart {
              height: 70%;
              margin-bottom: 10px;
              width: 57px;
            }

            .right-hand {
              position: absolute;
              left: 40px;
              height: 70%;
              margin-top: 10px;
              width: 40px;
            }
          }

          .hand-img2 {
            padding-top: 15px;
            margin: 0 auto;

            img {
              height: 90%;
              width: 42px;
            }
          }

          .hand-img3 {
            padding-top: 15px;
            margin: 0 auto;
            img {
              height: 100%;
              width: 54px;
            }
          }
        }
      }
    }
  }

  /* Topmenu */
  .topmenu {
    border: 7px solid #ff8800;
    padding: 30px 50px;
    background-image: url(../assets/img/8b551479fcbee8e343107dbf229adfe0a7d708d1.png);
    background-color: rgba(255, 255, 255, 0.5);
    background-size: cover;
    width: auto;
    height: 2400px;

    .title {
      width: 220px;

      h2 {
        padding-top: 15px;
        padding-bottom: 5px;
        font-size: 20px;
      }

      img {
        margin-top: 10px;
        margin-left: 12px;
        width: auto;
        height: 36px;
      }
    }

    .topmenu-container {
      .topmenu-wrapper {
        margin: 50px auto;
        width: auto;
        height: 354px;
        text-align: center;
        opacity: 0;
        transition: opacity 1s ease-out;

        &.show {
          opacity: 1;
        }

        img {
          width: 230px;
          height: 230px;
          border-radius: 10px;
          object-fit: cover;
        }

        h3 {
          position: relative;
          margin: 20px;
          text-align: center;

          .dot {
            margin: 0 20px;
            font-size: 13px;
            color: #6b4c32;
          }

          .dot.orange-dot {
            color: #ff8800;
          }
        }
      }

      .topmenu-wrapper:last-child {
        margin-bottom: 40px;
      }
    }

    .submenu-title {
      display: flex;
      justify-content: center;
      margin-top: 100px;

      p {
        font-size: 20px;
      }

      img {
        margin-left: 10px;
        width: 30px;
        object-fit: cover;
      }
    }

    .submenu-container {
      width: 100%;
      height: 550px;
      position: relative;

      .sub-menu {
        opacity: 0;
        transition: opacity 1s ease-out;

        &.show {
          opacity: 1;
        }

        img {
          position: absolute;
          z-index: 5;
          top: 10px;
          left: -50px;
          width: 277px;
          height: 139px;
          border-radius: 0 100px 100px 0;
          object-fit: cover;
          opacity: 0;
          transform: translateX(-150px);
          transition:
            opacity 1s ease-out,
            transform 1s ease-out;

          &.show {
            opacity: 1;
            transform: translateX(0);
          }
        }

        h3 {
          position: absolute;
          z-index: 5;
          top: 30%;
          right: 0;
          width: 204px;
          height: 49px;
          font-size: 15px;
          letter-spacing: 1px;
          color: white;
          background-color: #6b4c32;
          border-radius: 50%;
          text-align: center;
          padding-top: 14px;
          margin-right: -30px;
        }
      }

      .submenu-wrapper {
        z-index: 1;
        position: absolute;
        bottom: 0;
        left: 5%;
        background-color: white;
        margin: 20px auto 40px auto;
        border: 5px solid #ff8800;
        width: 241px;
        height: 363px;
        line-height: 38px;
        border-radius: 100%;
        opacity: 0;
        transition: opacity 1s ease-out;

        &.show {
          opacity: 1;
        }

        .submenu-contents {
          p {
            text-align: center;
            font-weight: bold;
            font-size: 16px;
          }

          &.submenu-contents:first-child {
            margin-top: 55px;
          }
        }
      }
    }

    .topmenu-bottom {
      .topmenu-bottomtext {
        margin-top: 40px;
        animation: powapowa 3s ease-in-out infinite;

        p {
          font-weight: bold;
          text-align: center;
          font-size: 16px;

          span {
            font-size: 20px;
            color: #ff8800;

            .time {
              margin-top: 50px;
              font-size: 22px;
            }
          }
        }
      }

      .topmenu-bottomface {
        display: flex;
        justify-content: center;
        margin-top: 35px;

        img {
          width: 60px;
          height: 60px;
        }
      }
    }
  }

  /* Notice */
  .notice {
    background-image: url(../assets/img/水玉カラー背景モバイル.png);
    width: auto;
    height: 90svh;
    padding: 30px;

    .title {
      margin: 0 auto 40px auto;
      width: 200px;

      img {
        margin-top: -3px;
        margin-left: 15px;
        padding-bottom: 5px;
        width: 35px;
      }
    }

    .topnotice-container {
      height: 353px;

      .tab-container {
        display: flex;
        justify-content: space-evenly;

        .tab {
          cursor: pointer;
          height: 30px;
          padding-top: 3px;
          text-align: center;
          width: 100%;
          font-weight: bold;
          border-bottom: 1px solid #6b4c32;
        }

        span:hover {
          transition: all 0.4s ease;
          opacity: 0.6;
        }

        .active {
          background-color: white;
          border-top: 1px solid #6b4c32;
          border-right: 1px solid #6b4c32;
          border-left: 1px solid #6b4c32;
          border-bottom: none;
          border-radius: 20px 20px 0 0;
        }
      }

      .notice-wrapper {
        contain: paint;

        .notice-parcel {
          display: flex;
          padding: 0 20px;

          p {
            font-size: 16px;
            font-weight: bold;
          }

          .notice-border {
            text-align: center;
            width: 100px;
            height: 32px;
            border: 2px solid #ff8800;
            border-radius: 10px;
            margin-top: -7px;
            background-color: #fff7e0e0;
          }
        }

        .notice-text {
          cursor: pointer;
          list-style: none;
          width: 100%;
          padding-top: 30px;
          border-bottom: 1px solid #6b4c32;

          a {
            font-size: 16px;
            text-decoration: none;
            position: relative;
            display: inline-block;
            padding-top: 3px;
            margin-bottom: 10px;

            time {
              margin-right: 1em;
            }
          }

          a::after {
            content: "▶";
            padding-left: 1em;
          }

          a:hover {
            opacity: 0.6;
          }
        }
      }

      .notice-wrapper.active {
        border-bottom: 1px solid #6b4c32;
      }
    }
  }

  /* Staff */
  .staff {
    font-weight: bold;
    border: 7px solid #ff8800;
    background-image: url(../assets/img/8b551479fcbee8e343107dbf229adfe0a7d708d1.png);
    background-color: rgba(255, 255, 255, 0);
    background-blend-mode: lighten;
    background-size: cover;
    padding: 30px;

    .title {
      margin: 10px auto 0 auto;
      width: 200px;
      padding-bottom: 5px;
      position: relative;

      img {
        margin-left: 10px;
        margin-top: -5px;
        width: 50px;
        height: 35px;
      }
    }

    .topstaff-container {
      text-align: center;

      .staff-wrapper {
        border-bottom: 3px solid #6b4c32;
        opacity: 0;
        transform: translateY(-30px);
        transition:
          opacity 1s ease-out,
          transform 1s ease-out;

        &.show {
          opacity: 1;
          transform: translateY(0);
        }

        img {
          margin-top: 40px;
          width: 250px;
          height: 250px;
          object-fit: cover;
          border-radius: 25px;
        }

        h3 {
          margin-top: 15px;
        }

        p {
          width: 17em;
          margin-bottom: 15px;
        }
      }
    }

    .link {
      margin: 40px auto 10px auto;
      width: 280px;
    }
  }

  /* Feedback */
  .feedback {
    background-image: url(../assets/img/水玉カラー背景モバイル.png);
    padding: 15px 20px 0 20px;
    height: 90svh;

    .title {
      width: 190px;
      margin: 5px auto 35px auto;

      img {
        width: 30px;
        height: 30px;
        margin-left: 15px;
        margin-bottom: 5px;
      }
    }

    #topfeedback-swiper {
      height: auto;
      overflow: hidden;

      .topfeedback-container {
        transition: transform 0.5s ease;

        .swiper-slide {
          height: auto;

          .feedback-wrapper {
            background-color: white;
            padding: 20px 30px;
            border-radius: 15px;
            box-shadow: #a0a0a0a4 1px 2px 3px 1px;
            text-align: center;

            img {
              width: 170px;
              height: 170px;
            }

            p {
              text-align: left;

              br {
                display: none;
              }
            }

            .small-print {
              font-weight: normal;
              margin-top: 20px;
            }
          }
        }
      }

      .feedback-btn {
        margin: auto;
        width: 300px;
        display: flex;
        justify-content: center;

        .btn {
          cursor: pointer;
          position: relative;
          margin: 10px;
          height: 20px;
          color: #d9d9d9;

          &:hover {
            transition: all 0.4s ease;
            opacity: 0.6;
          }

          &.left-arrow::after {
            font-family: sans-serif;
            content: "←";
            color: #ff8800;
            padding: 0 15px;
            font-size: 28px;
          }

          &.right-arrow::after {
            font-family: sans-serif;
            content: "→";
            color: #ff8800;
            padding: 0 15px;
            font-size: 28px;
          }

          &.swiper-pagination {
            margin-top: 30px;
          }
        }

        .swiper-pagination {
          .swiper-pagination-bullet {
            margin: 0 10px;
            width: 15px;
            height: 15px;
          }
        }

        .swiper-button-disabled {
          opacity: 0.4;
          cursor: default;
        }
      }
    }

    #topfeedback-swiper .swiper-wrapper {
      height: auto;
    }

    span {
      &.swiper-pagination-bullet {
        width: 20px;
        height: 20px;

        &.swiper-pagination-bullet-active {
          background-color: #ff8800;
        }
      }
    }
  }

  /* access */
  .access {
    padding: 10px 20px;
    background-image: url(../assets/img/7c7cc090015b08f14a9c9a8efbec619daf204495.png);
    background-size: cover;
    background-color: rgba(253, 223, 159, 0.6);

    .access-left {
      .title {
        width: 160px;

        img {
          margin-top: 0;
          margin-left: 10px;
          margin-bottom: 5px;
          width: 25px;
          height: 30px;
        }
      }

      .topaccess-container {
        text-align: center;
        border-bottom: #6b4c32 1px solid;

        .access-wrapper {
          margin: 18px 0;
          opacity: 0;
          transform: translateY(-50px);
          transition:
            opacity 1s ease-out,
            transform 1s ease-out;

          &.show {
            opacity: 1;
            transform: translateY(0);
          }

          p {
            font-size: 14;
          }
        }

        .access-pclink {
          display: none;
        }
      }
    }

    .access-right {
      .access-center {
        position: relative;
        display: flex;
        margin: 15px 0;

        .mapmark {
          background-color: #6b4c32;
          border-radius: 50%;
          width: 50px;
          height: 50px;
          text-align: center;

          p {
            padding-top: 15px;
            font-size: 15px;
            color: white;
          }
        }

        .access-arrow {
          position: absolute;
          bottom: 0%;
          right: 0%;
        }
      }

      .map-small {
        border: #6b4c32 2px solid;
        border-radius: 15px;
        width: 334px;
        height: 234px;

        iframe {
          border-radius: 15px;
          display: block;
          width: 100%;
          height: 100%;
        }
      }

      .map-normal {
        display: none;
      }
    }

    .link {
      margin-bottom: 15px;
    }
  }
}

/* 2ページ目 */
/*　Menu */
main {
  #menu {
    .top {
      border-bottom: #ff8800 5px solid;
      border-left: #ff8800 5px solid;
      border-right: #ff8800 5px solid;

      .top-img {
        width: auto;
        height: 89.5svh;
        background-image: url(../assets/img/7c7cc090015b08f14a9c9a8efbec619daf204495.png);
        background-color: rgba(253, 223, 159, 0.6);
        background-blend-mode: lighten;
        overflow: hidden;
        position: relative;

        .top-title {
          top: 40%;
          z-index: 90;
          position: relative;
          display: flex;
          justify-content: center;
          width: 300px;
          height: 80px;
          margin: 0 auto 0 auto;

          .title-dot {
            &.title-dot::after {
              content: "●";
              position: absolute;
              top: -15%;
              left: -5%;
            }

            &.title-dot::before {
              content: "●";
              position: absolute;
              bottom: -14%;
              right: -5%;
            }
          }

          h1 {
            margin-top: 15px;
            font-size: 30px;
            font-weight: bolder;
          }

          img {
            margin-top: 10px;
            margin-left: 10px;
            width: 60px;
            height: 60px;
          }

          &.top-title::after {
            content: "";
            border-top: #6b4c32 1px solid;
            position: absolute;
            width: 280px;
            top: 0%;
            left: 0%;
          }

          &.top-title::before {
            content: "";
            border-bottom: #6b4c32 1px solid;
            position: absolute;
            width: 280px;
            bottom: 0%;
            right: 0%;
          }
        }
      }

      .img3 {
        box-shadow: #ffbf008e -15px 0;
        top: 13%;
        left: 10%;
        width: 110px;
        height: 110px;
        animation: syabon1 15s linear infinite;
      }

      .img4 {
        box-shadow: #ff88008a -18px -18px;
        bottom: 0%;
        left: 12%;
        width: 190px;
        height: 190px;
        animation: syabon2 11s linear infinite;
      }

      .img5 {
        box-shadow: #f5ff6eb2 -20px -10px;
        top: 15%;
        right: 6%;
        width: 130px;
        height: 130px;
        animation: syabon3 13s linear infinite;
      }
    }

    .menu-container {
      padding: 0 10px;
      background-image: url(../assets/img/018eb50ee72381405e1f824e226ced1225c36282.jpg);
      background-color: rgba(255, 255, 255, 0.5);
      background-size: cover;

      p {
        span {
          font-size: 20px;
        }
      }

      .title {
        padding-top: 30px;
        margin-bottom: 30px;
        width: 280px;

        h2 {
          padding-top: 10px;
          padding-left: 10px;
          position: relative;
          font-size: 25px;
        }

        img {
          margin: 5px 0 3px 10px;
          width: 45px;
        }
      }

      .right-alignment {
        display: inline-block;
        margin: 0 auto;

        p {
          text-align: right;
        }
      }

      .menu-uppre {
        .menu-wrapper {
          border-radius: 10px;
          padding: 110px 25px 30px 25px;
          width: 100%;
          height: auto;
          margin-top: 130px;
          text-align: center;
          background-color: white;
          position: relative;

          img {
            position: absolute;
            top: -20%;
            left: 30%;
            width: 150px;
            height: 150px;
            object-fit: cover;
            border-radius: 50%;
          }

          .wrapper-contents {
            margin: 10px 0;
          }

          .price {
            opacity: 0;
            transform: translateX(-10px);
            transition:
              opacity 1s ease-out,
              transform 1s ease-out;

            &.show {
              opacity: 1;
              transform: translateX(0);
            }
          }

          .text-big {
            font-weight: bolder;
            font-size: 22px;
          }

          .menu-item {
            align-items: center;

            h3 {
              .dot {
                margin: 0 20px;
                font-size: 13px;
                color: #6b4c32;
              }

              .dot.orange-dot {
                color: #ff8800;
              }
            }

            #seikotsu,
            #shinkyu,
            #houmon {
              scroll-margin-top: 40svh;
            }
          }

          .pc-only {
            display: none;
          }

          .yellow-contents {
            margin-bottom: 15px;
            p {
              margin: 5px 0;
            }
          }

          .text-orange {
            p {
              color: #ff8800;
              padding: 0 5px;
              margin-bottom: 15px;

              br {
                display: block;
              }
            }
          }
        }

        .orange {
          border: #ff8800 3px solid;

          img {
            z-index: 1;
            box-shadow: #ff8800 -30px -30px 0 -10px;
          }

          h3 {
            .dot.orange-dot {
              color: #ff8800;
            }
          }
        }

        .yellow {
          border: #dae549 3px solid;

          img {
            box-shadow: #dae549 -30px -30px 0 -10px;
          }

          h3 {
            .dot.orange-dot {
              color: #dae549;
            }
          }
        }

        .lightorange {
          border: #ffae00 3px solid;

          img {
            box-shadow: #ffae00 -30px -30px 0 -10px;
          }

          h3 {
            .dot.orange-dot {
              color: #ffae00;
            }
          }
        }

        .lightgreen {
          border: #fff600 3px solid;

          img {
            box-shadow: #fff600 -30px -30px 0 -10px;
          }

          h3 {
            .dot.orange-dot {
              color: #fff600;
            }
          }
        }

        .middle-text {
          margin: 30px;
          text-align: center;

          p {
            text-align: left;

            br {
              display: none;
            }
          }
        }
      }

      .menu-lower {
        padding: 40px;

        .submenu-title {
          display: flex;
          justify-content: center;
          margin: 100px 0 20px 0;

          p {
            font-size: 20px;
          }

          #choitashi {
            scroll-margin-top: 15svh;
          }

          img {
            margin-left: 10px;
            width: 25px;
            object-fit: cover;
          }
        }
        .Caution {
          text-align: center;
          margin: 20px 0 30px 0;
          p {
            font-size: 18px;
          }
        }

        .sub-menu {
          position: relative;
          width: auto;
          height: 50px;

          h3 {
            position: absolute;
            top: 0%;
            right: 50%;
            width: 204px;
            height: 50px;
            font-size: 15px;
            letter-spacing: 1px;
            color: white;
            background-color: #6b4c32;
            border-radius: 50%;
            text-align: center;
            padding-top: 14px;
            translate: 50%;
          }
        }

        .menu-wrapper2 {
          width: 100%;

          .menu-parcel {
            height: auto;
            border-radius: 10px;
            padding: 100px 25px 30px 25px;
            width: auto;
            margin-top: 200px;
            text-align: center;
            border: #ff8800 5px solid;
            background-color: white;
            position: relative;

            img {
              position: absolute;
              top: -110px;
              left: 50%;
              transform: translateX(-50%);
              width: 200px;
              height: 200px;
              object-fit: cover;
              border-radius: 20px;
            }

            .menu-item {
              align-items: center;
              display: inline-flex;
              justify-content: center;

              h3 {
                .dot {
                  font-size: 13px;
                  color: black;
                }

                .dot:first-child {
                  margin-right: 15px;
                }

                .dot:last-child {
                  margin-left: 15px;
                }

                .dot.orange-dot {
                  color: #ff8800;
                }
              }
            }

            .wrapper-contents {
              margin: 10px 0;
            }

            .price {
              opacity: 0;
              transform: translateX(-10px);
              transition:
                opacity 1s ease-out,
                transform 1s ease-out;

              &.show {
                opacity: 1;
                transform: translateX(0);
              }
            }
          }
        }

        .special-menu {
          margin-top: 100px;
          border-radius: 30px;
          height: 50px;
          background-color: #ff8800;

          p {
            text-align: center;
            padding-top: 10px;
            color: white;
            font-size: 18px;
          }
        }
      }
    }
  }
}

/* 3ページ目 */
/* Staff */
main {
  #staff {
    .top {
      border-bottom: #ff8800 5px solid;
      border-left: #ff8800 5px solid;
      border-right: #ff8800 5px solid;

      .top-img {
        width: auto;
        height: 89.5svh;
        background-image: url(../assets/img/7c7cc090015b08f14a9c9a8efbec619daf204495.png);
        background-color: rgba(253, 223, 159, 0.6);
        overflow: hidden;
        position: relative;

        .top-title {
          top: 40%;
          z-index: 90;
          position: relative;
          display: flex;
          justify-content: center;
          width: 300px;
          height: 80px;
          margin: 0 auto 0 auto;

          .title-dot {
            &.title-dot::after {
              content: "●";
              position: absolute;
              top: -15%;
              left: -5%;
            }

            &.title-dot::before {
              content: "●";
              position: absolute;
              bottom: -14%;
              right: -5%;
            }
          }

          h1 {
            margin-top: 15px;
            font-size: 35px;
            font-weight: bolder;
          }

          img {
            margin-top: 17px;
            margin-left: 10px;
            width: auto;
            height: 50px;
          }

          &.top-title::after {
            content: "";
            border-top: #6b4c32 1px solid;
            position: absolute;
            width: 280px;
            top: 0%;
            left: 0%;
          }

          &.top-title::before {
            content: "";
            border-bottom: #6b4c32 1px solid;
            position: absolute;
            width: 280px;
            bottom: 0%;
            right: 0%;
          }
        }
      }

      .img3 {
        box-shadow: #ffbf008e -15px 0;
        top: 7%;
        left: 10%;
        width: 190px;
        height: 190px;
        animation: syabon1 11s linear infinite;
      }

      .img4 {
        box-shadow: #ff88008a -18px -18px;
        bottom: 0%;
        left: 12%;
        width: 110px;
        height: 110px;
        animation: syabon2 13s linear infinite;
      }

      .img5 {
        box-shadow: #f5ff6eb2 -20px -10px;
        bottom: 11%;
        right: 6%;
        width: 150px;
        height: 150px;
        animation: syabon3 15s linear infinite;
      }
    }
  }

  .staff-container {
    background-image: url(../assets/img/8b551479fcbee8e343107dbf229adfe0a7d708d1.png);
    background-color: rgba(255, 255, 255, 0.5);
    background-size: cover;
    width: auto;
    height: 100%;
    .title {
      width: 260px;
      padding-top: 40px;
      margin: 0 auto 60px auto;

      h2 {
        font-size: 25px;
      }

      img {
        margin-bottom: 3px;
        margin-left: 10px;
        width: auto;
        height: 35px;
      }
    }

    .staff-wrapper {
      padding-bottom: 150px;
      
      .staff-contents {
        height: 100%;
        margin: 20px 20px 0 20px;
        display: flex;

        img {
          width: 80px;
          height: 80px;
          border-radius: 200px;
          box-shadow: #ff8800 -10px -10px;
          object-fit: fill;
          margin-right: 10px;
        }

        p {
          margin-bottom: 10px;
        }
      }
    }
  }
}

/* 4ページ目 */
/* Notice */
main {
  #notice {
    .top {
      border-bottom: #ff8800 5px solid;
      border-left: #ff8800 5px solid;
      border-right: #ff8800 5px solid;

      .top-img {
        width: auto;
        height: 89.5svh;
        background-image: url(../assets/img/7c7cc090015b08f14a9c9a8efbec619daf204495.png);
        background-color: rgba(253, 223, 159, 0.6);
        overflow: hidden;
        position: relative;

        .top-title {
          top: 40%;
          z-index: 90;
          position: relative;
          display: flex;
          justify-content: center;
          width: 300px;
          height: 80px;
          margin: 0 auto 0 auto;

          .title-dot {
            &.title-dot::after {
              content: "●";
              position: absolute;
              top: -15%;
              left: -5%;
            }

            &.title-dot::before {
              content: "●";
              position: absolute;
              bottom: -14%;
              right: -5%;
            }
          }

          h1 {
            margin-top: 15px;
            font-size: 35px;
            font-weight: bolder;
          }

          img {
            margin-top: 10px;
            margin-left: 20px;
            width: 55px;
            height: 60px;
          }

          &.top-title::after {
            content: "";
            border-top: #6b4c32 1px solid;
            position: absolute;
            width: 280px;
            top: 0%;
            left: 0%;
          }

          &.top-title::before {
            content: "";
            border-bottom: #6b4c32 1px solid;
            position: absolute;
            width: 280px;
            bottom: 0%;
            right: 0%;
          }
        }
      }

      .img3 {
        box-shadow: #ffbf008e -15px 0;
        top: 8%;
        right: 7%;
        width: 200px;
        height: 200px;
        animation: syabon1 11s linear infinite;
      }

      .img4 {
        box-shadow: #ff88008a -18px -18px;
        bottom: 14%;
        left: 10%;
        width: 120px;
        height: 120px;
        animation: syabon2 13s linear infinite;
      }

      .img5 {
        box-shadow: #f5ff6eb2 -20px -10px;
        bottom: 1%;
        right: 3%;
        width: 160px;
        height: 160px;
        animation: syabon3 15s linear infinite;
      }
    }

    #notice-container {
      scroll-margin-top: 50px;
      background-image: url(../assets/img/水玉カラー背景モバイル.png);
      width: auto;
      padding: 30px;

      .title {
        margin: 0 auto 40px auto;
        width: 160px;

        h2 {
          margin-left: 15px;
        }

        img {
          margin-bottom: 3px;
          padding-left: 10px;
          margin-top: -5px;
          width: 50px;
          height: 100%;
        }
      }

      .notice-main {
        margin-top: 10svh;
        width: 100%;
        height: auto;

        #notice-swiper {
          .swiper-wrapper {
            height: auto;
            opacity: 0;
            transform: translateY(-10px);
            transition:
              opacity 1s ease-out,
              transform 1s ease-out;

            &.show {
              opacity: 1;
              transform: translateY(0);
            }

            .notice-upper {
              .notice-contents {
                margin: 30px 0 20px 0;
                border-bottom: 1px solid #6b4c32;

                &.active {
                  display: block;
                }

                .notice-parcel {
                  display: flex;
                  justify-content: center;
                  gap: 1em;

                  .date {
                    font-size: 20px;
                    font-weight: bold;
                  }

                  .notice-border {
                    text-align: center;
                    width: 100px;
                    height: 32px;
                    border: 2px solid #ff8800;
                    border-radius: 10px;
                    margin-top: -2px;
                    background-color: #fff7e0e0;
                  }
                }

                .notice-text {
                  height: 35px;
                  margin-top: 10px;
                  display: inline-block;

                  a {
                    position: relative;
                    padding-top: 5px;
                    padding-left: 10px;
                    font-size: 16px;
                    cursor: pointer;
                    text-decoration: none;

                    &:hover {
                      transition: all 0.4s ease;
                      opacity: 0.6;
                    }

                    &.text {
                      overflow: hidden;
                      white-space: nowrap;
                      text-overflow: ellipsis;
                    }

                    &.icon {
                      flex-shrink: 0;
                      margin-left: 0.25em;
                    }
                  }
                }
              }
            }

            .active {
              display: block;
            }
          }

          .notice-btn {
            margin: 10px auto 0 auto;
            width: 250px;
            display: flex;
            justify-content: center;

            .swiper-button-prev,
            .swiper-button-next,
            .swiper-pagination {
              color: #6b4c32;
              position: relative;
              cursor: pointer;
            }

            .swiper-button-prev svg,
            .swiper-button-next svg {
              display: none;
            }

            .swiper-button-prev::after,
            .swiper-button-next::after {
              font-size: 20px;
              margin-top: 10px;
            }

            .swiper-button-prev::after {
              content: "◀";
            }

            .swiper-button-next::after {
              content: "▶";
            }

            .swiper-pagination {
              .swiper-pagination-bullet {
                margin: 0 9px;
                font-size: 25px;
                width: 27px;
                height: 27px;
                line-height: 24px;
                cursor: pointer;
                opacity: 1;
                color: #6b4c32;
                background: none;

                &:hover {
                  transition: all 0.4s ease;
                  opacity: 0.6;
                }
              }

              .swiper-pagination-bullet-active {
                background-color: #ff8800;
              }
            }
          }
        }

        .notice-lower {
          width: 100%;
          margin-top: 25px;
          border-top: #6b4c32 1px solid;

          .notice-wrapper {
            .notice-parcel {
              text-align: center;
              margin-top: 50px;
              width: 300px;
              opacity: 0;
              transform: translateY(-10px);
              transition:
                opacity 1s ease-out,
                transform 1s ease-out;

              &.show {
                opacity: 1;
                transform: translateY(0);
              }

              .notice-item {
                display: inline-flex;
                justify-content: center;

                h3 {
                  font-size: 20px;

                  .dot {
                    font-size: 17px;
                    color: #6b4c32;
                  }

                  .dot:first-child {
                    margin-right: 15px;
                  }

                  .dot:last-child {
                    margin-left: 15px;
                  }

                  .dot.orange-dot {
                    color: #ff8800;
                  }
                }
              }

              a,
              button {
                padding-left: 20px;
              }
            }

            .notice-tab {
              font-size: 20px;
              border-bottom: #6b4c32 1px solid;
              width: 200px;
              text-align: center;
              margin: 17px auto;
              padding-bottom: 5px;
              cursor: pointer;
              text-decoration: none;
              display: block;

              &:hover {
                transition: all 0.4s ease;
                opacity: 0.6;
              }

              &.active {
                opacity: 0.5;
                /* グレーアウト表示 */
                cursor: default;
                /* 無効風に見せるだけ */
              }
            }

            .btn {
              border: #ff8800 2px solid;
              border-radius: 20px;
              background-color: #fff7e0e0;
              color: #6b4c32;
              font-size: 16px;
              width: 120px;
              height: 35px;
              margin-top: 0;
              padding-bottom: 2px;
              cursor: pointer;
              font-weight: bold;
              transition:
                transform 0.1s ease,
                box-shadow 0.1s ease;
              box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);

              &:hover {
                transform: translateY(-1px);
                box-shadow: 0 6px 10px rgba(0, 0, 0, 0.25);
                opacity: 1;
              }

              &:active {
                transform: translateY(1px);
                box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
                opacity: 0.6;
              }
            }

            .all {
              margin: 25px auto 30px auto;
              font-size: 21px;
              width: 170px;
              height: 43px;
              padding-top: 3px;
            }

            .date-button {
              display: flex;
              flex-wrap: wrap;
              justify-content: center;
              text-align: center;
              align-items: center;
            }
          }

          .accordion-wrapper {
            margin-top: 20px;
            margin-bottom: 10px;
            display: flex;
            flex-wrap: wrap;
            justify-content: center;

            .accordion-menu {
              display: none;

              a {
                display: block;
                border-bottom: #6b4c32 1px solid;
                cursor: pointer;
                letter-spacing: 8px;
                line-height: 30px;
                font-size: 17px;
                text-align: center;
                text-decoration: none;

                &:hover {
                  transition: all 0.4s ease;
                  opacity: 0.6;
                }
              }

              &.active {
                display: flex;
                flex-wrap: wrap;
                justify-content: space-evenly;
              }
            }
          }
        }
      }
    }
  }
}

/* Noticeからlinkジャンプのみ */
/* topic */
main {
  #topic {
    .top {
      border-bottom: #ff8800 5px solid;
      border-left: #ff8800 5px solid;
      border-right: #ff8800 5px solid;

      .top-img {
        width: auto;
        height: 89.5svh;
        background-image: url(../assets/img/7c7cc090015b08f14a9c9a8efbec619daf204495.png);
        background-color: rgba(253, 223, 159, 0.6);
        overflow: hidden;
        position: relative;

        .top-title {
          top: 40%;
          z-index: 90;
          position: relative;
          display: flex;
          justify-content: center;
          width: 300px;
          height: 80px;
          margin: 0 auto 0 auto;

          .title-dot {
            &.title-dot::after {
              content: "●";
              position: absolute;
              top: -15%;
              left: -5%;
            }

            &.title-dot::before {
              content: "●";
              position: absolute;
              bottom: -14%;
              right: -5%;
            }
          }

          h1 {
            margin-top: 15px;
            font-size: 35px;
            font-weight: bolder;
          }

          img {
            margin-top: 0px;
            margin-left: 15px;
            width: 60px;
            height: 70px;
          }

          &.top-title::after {
            content: "";
            border-top: #6b4c32 1px solid;
            position: absolute;
            width: 280px;
            top: 0%;
            left: 0%;
          }

          &.top-title::before {
            content: "";
            border-bottom: #6b4c32 1px solid;
            position: absolute;
            width: 280px;
            bottom: 0%;
            right: 0%;
          }
        }
      }

      .img3 {
        box-shadow: #ffbf008e -15px 0;
        top: 8%;
        right: 7%;
        width: 200px;
        height: 200px;
        animation: syabon1 11s linear infinite;
      }

      .img4 {
        box-shadow: #ff88008a -18px -18px;
        bottom: 14%;
        left: 10%;
        width: 120px;
        height: 120px;
        animation: syabon2 13s linear infinite;
      }

      .img5 {
        box-shadow: #f5ff6eb2 -20px -10px;
        bottom: 1%;
        right: 3%;
        width: 160px;
        height: 160px;
        animation: syabon3 15s linear infinite;
      }
    }

    .topic-container {
      scroll-margin-top: 50px;
      background-image: url(../assets/img/水玉カラー背景モバイル.png);
      width: auto;
      padding: 30px;

      .title {
        margin: 0 auto 40px auto;
        width: 160px;

        h2 {
          margin-left: 15px;
          padding-top: 11px;
          font-size: 25px;
        }

        img {
          margin-bottom: 5px;
          padding-left: 10px;
          width: 45px;
          height: 50px;
        }
      }

      .topic-section {
        .topic-wrapper {
          width: 100%;
          height: auto;

          .topic-flex {
            .topic-contents {
              margin: 30px 0 40px 0;
              position: relative;

              .topic-img {
                width: 100%;
                height: auto;

                img {
                  width: 100%;
                  object-fit: contain;
                  margin: 30px 0;
                  border-radius: 60px 0 60px 0;
                  box-shadow: #ff8800 15px -15px;
                }
              }

              .date {
                background-color: #6b4c32;
                width: 50px;
                height: 50px;
                position: absolute;
                top: -50px;
                left: 0;
                border-radius: 50px;

                p {
                  text-align: center;
                  padding-top: 12px;
                  color: white;
                }
              }

              .text-title {
                width: 300px;
                height: auto;
                padding: 0 20px;
                border-bottom: #6b4c32 1px solid;
                position: relative;
                margin: auto;

                &.text-title::after {
                  content: "●";
                  position: absolute;
                  bottom: -10px;
                  left: -5px;
                }

                &.text-title::before {
                  content: "●";
                  position: absolute;
                  bottom: -10px;
                  right: -5px;
                  color: #ff8800;
                }
              }

              .topic-text {
                margin-top: 10px;

                p {
                  padding-top: 5px;
                  padding-left: 10px;
                  word-break: break-all;
                }
              }
            }
          }

          .topic-link {
            position: relative;
            text-align: center;
            border: 5px solid #ff8800;
            text-decoration: none;
            font-size: 18px;
            border-radius: 50px;
            margin: 20px auto 20px auto;
            background-color: white;
            width: 250px;
            height: 50px;
            padding-left: 30px;

            &.topic-link a {
              position: absolute;
              top: 0;
              right: -2%;
              padding-top: 7px;
              display: block;
              width: 100%;
              height: 100%;
              text-decoration: none;
              z-index: 1;
            }

            &.topic-link a::before {
              content: "◀";
              position: absolute;
              top: 25%;
              left: 4%;
              font-size: 15px;
              z-index: 0;
            }
          }
        }

        .topic-wrapper2 {
          width: 100%;
          margin-top: 50px;
          padding-top: 50px;
          border-top: #6b4c32 1px solid;
          text-align: center;

          .accordion-wrapper {
            margin-top: 20px;
            margin-bottom: 10px;
            display: flex;
            flex-wrap: wrap;
            justify-content: center;

            .accordion-menu {
              display: none;

              a {
                display: block;
                border-bottom: #6b4c32 1px solid;
                cursor: pointer;
                letter-spacing: 8px;
                line-height: 30px;
                font-size: 17px;
                text-align: center;
                text-decoration: none;
              }
            }
          }

          .notice-tab {
            font-size: 20px;
            border-bottom: #6b4c32 1px solid;
            width: 200px;
            text-align: center;
            margin: 17px auto;
            padding-bottom: 5px;
            cursor: pointer;
            text-decoration: none;
            display: block;
          }

          .btn {
            border: #ff8800 2px solid;
            border-radius: 20px;
            background-color: #fff7e0e0;
            color: #6b4c32;
            font-size: 16px;
            width: 120px;
            height: 35px;
            margin-top: 0;
            padding-bottom: 2px;
            cursor: pointer;
            font-weight: bold;
            transition:
              transform 0.1s ease,
              box-shadow 0.1s ease;
            box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
          }

          .all {
            margin: 25px auto 30px auto;
            font-size: 21px;
            width: 170px;
            height: 43px;
            padding-top: 3px;
          }

          .topic-parcel {
            text-align: center;
            margin-bottom: 50px;

            .topic-item {
              align-items: center;
              display: inline-flex;
              justify-content: center;

              h3 {
                font-size: 20px;

                .dot {
                  font-size: 17px;
                  color: #6b4c32;
                }

                .dot:first-child {
                  margin-right: 15px;
                }

                .dot:last-child {
                  margin-left: 15px;
                }

                .dot.orange-dot {
                  color: #ff8800;
                }
              }
            }

            a,
            button {
              display: block;
              text-decoration: none;
              font-size: 20px;
              border-bottom: #6b4c32 1px solid;
              width: 200px;
              text-align: center;
              margin: 17px auto;
              padding-bottom: 5px;
              cursor: pointer;

              &:hover {
                transition: all 0.4s ease;
                opacity: 0.6;
              }
            }
          }
        }
      }
    }
  }
}

/* 5ページ目 */
/* Feedback */
main {
  #feedback {
    .top {
      border-bottom: #ff8800 5px solid;
      border-left: #ff8800 5px solid;
      border-right: #ff8800 5px solid;

      .top-img {
        width: auto;
        height: 89.5svh;
        background-image: url(../assets/img/7c7cc090015b08f14a9c9a8efbec619daf204495.png);
        background-color: rgba(253, 223, 159, 0.6);
        overflow: hidden;
        position: relative;

        .top-title {
          top: 40%;
          z-index: 90;
          position: relative;
          display: flex;
          justify-content: center;
          width: 300px;
          height: 80px;
          margin: 0 auto 0 auto;

          .title-dot {
            &.title-dot::after {
              content: "●";
              position: absolute;
              top: -15%;
              left: -5%;
            }

            &.title-dot::before {
              content: "●";
              position: absolute;
              bottom: -14%;
              right: -5%;
            }
          }

          h1 {
            margin-top: 15px;
            font-size: 35px;
            font-weight: bolder;
          }

          img {
            margin-top: 20px;
            margin-left: 20px;
            width: auto;
            height: 45px;
          }

          &.top-title::after {
            content: "";
            border-top: #6b4c32 1px solid;
            position: absolute;
            width: 280px;
            top: 0%;
            left: 0%;
          }

          &.top-title::before {
            content: "";
            border-bottom: #6b4c32 1px solid;
            position: absolute;
            width: 280px;
            bottom: 0%;
            right: 0%;
          }
        }
      }

      .img3 {
        box-shadow: #ffbf008e -20px -15px;
        top: 13%;
        left: 10%;
        width: 150px;
        height: 150px;
        animation: syabon1 15s linear infinite;
      }

      .img4 {
        box-shadow: #ff88008a -10px -5px;
        top: 8%;
        right: 5%;
        width: 110px;
        height: 110px;
        animation: syabon2 12s linear infinite;
      }

      .img5 {
        box-shadow: #f5ff6eb2 -20px -10px;
        bottom: 2%;
        right: 6%;
        width: 200px;
        height: 200px;
        animation: syabon3 10s linear infinite;
      }
    }

    .feedback-container {
      padding: 0 40px;
      background-image: url(../assets/img/水玉カラー背景モバイル.png);

      p {
        span {
          font-size: 20px;
        }
      }

      .title {
        padding-top: 30px;
        width: 230px;

        h2 {
          padding-bottom: 5px;

          font-size: 25px;
        }

        img {
          padding-left: 10px;
          margin-top: 1px;
          width: 45px;
          height: 100%;
          padding-bottom: 3px;
        }
      }

      #feedback-swiper {
        width: 100%;
        height: auto;

        .swiper-wrapper {
          .feedback-wrapper {
            padding: 0 30px;
            background-color: white;
            border-radius: 30px;
            box-shadow: rgba(0, 0, 0, 0.363) 2px 10px 5px 0px;
            padding: 40px 25px;
            margin-top: 60px;
            width: 100%;
            height: auto;

            .feedback-upper {
              text-align: center;

              img {
                width: 150px;
                height: 150px;
                object-fit: cover;
                margin-bottom: 10px;
              }
            }

            .feedback-lower {
              .feedback-age {
                p {
                  padding-top: 30px;
                }
              }
            }
          }
        }
      }

      .feedback-btn {
        margin: 30px auto 0 auto;
        padding-bottom: 40px;
        width: a;
        display: flex;
        justify-content: center;
        align-items: center;

        .btn {
          cursor: pointer;
          color: #6b4c32;
          position: relative;

          &.btn:hover {
            opacity: 0.6;
          }

          &.left-arrow::after {
            content: "◀";
            color: #6b4c32;
            padding: 0 15px;
            font-size: 20px;
          }

          &.right-arrow::after {
            content: "▶";
            color: #6b4c32;
            padding: 0 15px;
            font-size: 20px;
          }
        }

        .swiper-button-disabled {
          opacity: 0.4;
          cursor: default;
        }

        .swiper-pagination {
          .swiper-pagination-bullet {
            margin: 25px 10px 0 10px;
          }
        }
      }
    }

    span {
      width: 15px;
      height: 15px;

      &.swiper-pagination-bullet {
        font-size: 20px;

        &.swiper-pagination-bullet-active {
          background-color: #ff8800;
        }
      }
    }
  }
}

/* 6ページ目 */
/* Access */
main {
  #access {
    .top {
      border-bottom: #ff8800 5px solid;
      border-left: #ff8800 5px solid;
      border-right: #ff8800 5px solid;

      .top-img {
        width: auto;
        height: 89.5svh;
        background-image: url(../assets/img/7c7cc090015b08f14a9c9a8efbec619daf204495.png);
        background-color: rgba(253, 223, 159, 0.6);
        overflow: hidden;
        position: relative;

        .top-title {
          top: 40%;
          z-index: 90;
          position: relative;
          display: flex;
          justify-content: center;
          width: 300px;
          height: 80px;
          margin: 0 auto 0 auto;

          .title-dot {
            &.title-dot::after {
              content: "●";
              position: absolute;
              top: -15%;
              left: -5%;
            }

            &.title-dot::before {
              content: "●";
              position: absolute;
              bottom: -14%;
              right: -5%;
            }
          }

          h1 {
            margin-top: 15px;
            font-size: 35px;
            font-weight: bolder;
          }

          img {
            margin-top: 20px;
            margin-left: 20px;
            width: auto;
            height: 45px;
          }

          &.top-title::after {
            content: "";
            border-top: #6b4c32 1px solid;
            position: absolute;
            width: 280px;
            top: 0%;
            left: 0%;
          }

          &.top-title::before {
            content: "";
            border-bottom: #6b4c32 1px solid;
            position: absolute;
            width: 280px;
            bottom: 0%;
            right: 0%;
          }
        }
      }

      .img3 {
        box-shadow: #ffbf008e -15px -10px;
        top: 12%;
        right: 8%;
        width: 160px;
        height: 160px;
        animation: syabon1 14s linear infinite;
      }

      .img4 {
        box-shadow: #ff88008a -10px -15px;
        top: 8%;
        left: 5%;
        width: 120px;
        height: 120px;
        animation: syabon2 17s linear infinite;
      }

      .img5 {
        box-shadow: #f5ff6eb2 -20px -20px;
        bottom: 1%;
        left: 10%;
        width: 200px;
        height: 200px;
        animation: syabon2 12s linear infinite;
      }
    }

    .access-container {
      padding-bottom: 50px;
      background-image: url(../assets/img/8b551479fcbee8e343107dbf229adfe0a7d708d1.png);
      background-color: rgba(255, 255, 255, 0.5);
      background-size: cover;

      .title {
        padding-top: 30px;
        width: 200px;

        h2 {
          padding-left: 10px;
          font-size: 25px;
        }

        img {
          margin-left: 5px;
          margin-top: 5px;
          width: 25px;
          height: 30px;
        }
      }

      .mb-only {
        .sub-title {
          display: flex;
          justify-content: center;
          margin: 40px 0 20px 0;

          h3 {
            font-size: 25px;
          }

          img {
            margin-top: 5px;
            width: 30px;
            height: 30px;
          }
        }

        .access-wrapper {
          .station {
            img {
              margin: 20px auto;
              object-fit: cover;
              width: 90%;
              display: none;
            }

            summary {
              list-style: none;
              cursor: pointer;
              display: inline;

              p {
                position: relative;
                display: inline;

                span {
                  font-size: 23px;
                  color: #ff8800;
                }

                span:first-child {
                  font-size: 12px;
                  margin-left: 5px;
                }
              }
            }

            summary::-webkit-details-marker {
              display: none;
            }

            summary::after {
              margin-left: 5px;
              content: "▶";
            }

            details[open] summary::after {
              margin-left: 5px;
              content: "▼";
            }

            summary::-webkit-details-marker {
              display: none;
            }
          }

          .active {
            video {
              display: block;
              width: 100%;
              height: calc(100% - 24px);
            }
          }

          .access-address {
            margin-top: 20px;
            padding-left: 20px;
          }
        }
      }

      .pc-only {
        display: none;
      }

      .detailed-route {
        display: none;

        .route-container {
          position: fixed;
          top: 0;
          left: 0;
          width: 100%;
          height: 100svh;
          align-items: center;
          padding-top: 50px;
          z-index: 999;
          transition: opacity 0.3s ease;
          background-color: rgba(0, 0, 0, 0.7);

          .title {
            margin-bottom: 50px;
            width: 300px;
            color: white;
            border-bottom: white 1px solid;

            h3 {
              padding-top: 7px;
              padding-right: 10px;
              font-size: 20px;
              color: white;
            }

            img {
              width: 35px;
              height: auto;
              color: white;
            }
          }

          .route-swiper {
            overflow: visible;
            width: 95%;
            height: auto;
            max-width: 1200px;

            .route-img {
              img {
                height: 45svh;
                object-fit: cover;
              }
            }

            .arrow-left {
              position: absolute;
              bottom: 50%;
              left: -2%;
              width: 50px;
              height: 50px;
              color: white;
              font-size: 100px;
              text-align: left;
              border: white 1px solid;
              border-radius: 50%;
              cursor: pointer;
              z-index: 100;

              &.swiper-button-disabled {
                opacity: 0.6;
              }

              &::before {
                content: "◀";
                position: absolute;
                bottom: 8%;
                left: 14%;
                color: white;
                font-size: 30px;
              }

              &:hover {
                transition: all 0.4s ease;
                opacity: 0.6;
              }
            }

            .arrow-right {
              position: absolute;
              bottom: 50%;
              right: -2%;
              width: 50px;
              height: 50px;
              color: white;
              font-size: 100px;
              text-align: right;
              border: white 1px solid;
              border-radius: 50%;
              cursor: pointer;
              z-index: 100;

              &.swiper-button-disabled {
                opacity: 0.6;
              }

              &::after {
                content: "▶";
                position: absolute;
                bottom: 8%;
                right: 14%;
                color: white;
                font-size: 30px;
              }

              &:hover {
                transition: all 0.4s ease;
                opacity: 0.6;
              }
            }

            .route-roll {
              margin-top: 20px;
              text-align: center;
              cursor: pointer;

              &.active {
                color: #ff8800;
              }

              &:hover {
                transition: all 0.4s ease;
                opacity: 0.6;
              }
            }
          }

          .close-btn {
            display: flex;
            justify-content: center;
            margin-top: 20px;
            cursor: pointer;

            .close-cross {
              font-size: 28px;
              padding-left: 10px;
              width: 50px;
              height: 50px;
              background-color: white;
              border: #ff8800 3px solid;
              border-radius: 50%;
            }

            p {
              padding-left: 10px;
              font-size: 30px;
              color: white;
            }

            &.close-btn .close-cross,
            &.close-btn p {
              transition: opacity 0.4s ease;
            }

            &.close-btn:hover .close-cross,
            &.close-btn:hover p {
              opacity: 0.7;
            }
          }
        }
      }

      .active {
        display: block;
      }

      .access-wrapper2 {
        padding: 15px 40px;

        .background-image {
          width: 100%;
          height: 200px;
          border-radius: 20px;
          margin-bottom: 30px;
          position: relative;
          opacity: 0;
          transform: translateX(-10px);
          transition:
            opacity 1s ease-out,
            transform 1s ease-out;

          &.show {
            opacity: 1;
            transform: translateX(0);
          }

          .access-route {
            cursor: pointer;
            width: 100.5%;
            height: 50px;
            border: #ff8800 3px solid;
            border-radius: 50px;
            background-color: #fff9e6;
            position: absolute;
            bottom: -2px;
            left: -1px;

            p {
              padding-top: 8px;
              text-align: center;
              font-size: 17px;
            }
          }

          &.imasato {
            background-image: url(../assets/img/今里.png);
            background-size: cover;
            background-position: center;
          }

          &.tamatsukuri {
            background-image: url(../assets/img/玉造.png);
            background-size: cover;
            background-position: center;
          }

          &.midoribashi {
            background-image: url(../assets/img/緑橋.png);
            background-size: cover;
            background-position: center;
          }
        }
      }
    }

    span {
      &.swiper-pagination-bullet {
        width: 12px;
        height: 12px;
        background-color: white;
        opacity: 1;

        &.swiper-pagination-bullet-active {
          background-color: #ff8800;
        }
      }
    }
  }

  /* Access内共通 */
  .sub-title {
    display: flex;
    justify-content: center;
    margin: 70px 0 40px 0;

    img {
      margin-left: 5px;
      width: 30px;
      height: 30px;
      margin-top: 4px;
    }
  }

  .border-top {
    border-top: #6b4c32 8px solid;
    width: 250px;
    border-radius: 30px;
    margin-bottom: 30px;
    opacity: 0;
    transition: opacity 1s ease-out;

    &.show {
      opacity: 1;
    }
  }

  .border-bottom {
    border-bottom: #6b4c32 8px solid;
    max-width: 250px;
    width: 100%;
    border-radius: 30px;
    margin-top: 30px;
    margin-left: auto;
    opacity: 0;
    transition: opacity 1s ease-out;

    &.show {
      opacity: 1;
    }
  }
}
