@import url("https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c&family=Noto+Serif+JP:wght@200..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
body {
  font-size: 16px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #0b0b0b; }

input,
button {
  font-size: 16px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #0b0b0b; }

.cta-btn {
  font-size: 1.5em;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 800; }

.side-fixed .text {
  font-weight: 600; }
  .side-fixed .text .num {
    font-size: 1.5em; }
.side-fixed .side-btn {
  font-size: 1.25em;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 800; }

#ticket-buy .text {
  font-size: 1.25em;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 600; }

.lead {
  font-size: 1.25em;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500; }

#event .event-list .item .head {
  font-size: 1.5em;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 600; }
#event .event-list .item .desc {
  font-size: 1.25em;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 600; }

#contents .pickup-flex .item p {
  font-weight: 800; }

#access .place {
  font-size: 1.25em;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 600; }

#qa .qa-list {
  font-size: 1.1em;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 600; }

.copy-right {
  font-size: 12px; }

@media screen and (max-width: 900px) {
  body {
    font-size: 14px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500; } }
@media screen and (max-width: 540px) {
  .lead {
    font-size: 13px;
    font-size: 13px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 600; }

  #ticket-buy .text {
    font-size: 16px; }

  .cta-btn {
    font-size: 18px; }

  #event .event-list .item .head {
    font-size: 15px; }
  #event .event-list .item .desc {
    font-size: 14px; }

  #contents .pickup-flex .item p {
    font-size: 11px; }

  #qa .qa-list {
    font-size: 14px; } }
html,
body {
  width: 100%;
  overflow-x: hidden; }

img {
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto; }

a {
  cursor: pointer; }

section {
  display: block;
  position: relative;
  z-index: 0;
  padding: 120px 0; }

.inner-wrap {
  padding: 0 1em;
  width: calc(100% - 2em);
  max-width: 1200px;
  margin: auto; }

.font-mp {
  font-family: "M PLUS Rounded 1c", sans-serif; }

#mv {
  padding: 0; }
  #mv .mv-top {
    position: relative; }
  #mv .mv-bg {
    width: 100%;
    height: 100vh;
    object-fit: cover; }
  #mv .mv-logo {
    position: absolute;
    top: 0;
    left: 0;
    max-width: 500px;
    width: calc(90% - 4em);
    padding: 2em;
    -webkit-filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.4));
    filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.4)); }
  #mv .mv-copy {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 10%;
    margin: auto;
    max-width: 1200px;
    width: calc(90% - 2em);
    border-top: solid 4px #fff;
    border-bottom: solid 4px #fff;
    padding: 1em;
    filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.6)); }
  #mv .mv-info {
    max-width: 1000px;
    width: calc(100% - 2em);
    margin: auto;
    padding: 120px 1em 0; }
  #mv .mv-open {
    margin-bottom: 2em; }
  #mv .mv-text {
    max-width: 600px;
    width: 100%;
    margin: 4em auto; }

.side-fixed {
  position: fixed;
  z-index: 100;
  right: 1em;
  bottom: 1em;
  background: #ffc107;
  border: solid 2px #000b4d;
  padding: 0.5em;
  border-radius: 10px; }
  .side-fixed .text {
    position: relative;
    text-align: center;
    padding: 0 1em;
    margin: 0 1em 0.25em; }
    .side-fixed .text .num {
      padding: 0 2px; }
    .side-fixed .text::before {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 2px;
      height: 70%;
      background: #000;
      transform: rotate(-25deg); }
    .side-fixed .text::after {
      content: "";
      position: absolute;
      right: 0;
      bottom: 0;
      width: 2px;
      height: 70%;
      background: #000;
      transform: rotate(25deg); }
  .side-fixed .side-btn {
    display: block;
    width: calc(100% - 2em - 6px);
    background: #fff;
    color: #000b4d;
    padding: 0.5em 1em;
    text-align: center;
    border: solid 2px #000b4d;
    border-radius: 10px; }
    .side-fixed .side-btn:hover {
      background: #000b4d;
      color: #fff; }
  .side-fixed .close-btn {
    cursor: pointer;
    position: absolute;
    top: -0.7em;
    left: -0.7em;
    width: 30px;
    height: 30px;
    background: #000b4d;
    color: #fff;
    border-radius: 50%;
    text-align: center;
    line-height: 28px;
    font-weight: 800; }

.wave {
  position: relative;
  top: 80px;
  width: 200%;
  height: 100%; }

.wave-path {
  animation: wave-move 4s linear infinite; }

@keyframes wave-move {
  from {
    transform: translateX(0); }
  to {
    transform: translateX(-640px); } }
.lead {
  text-align: center; }

.beer-area {
  position: relative; }
  .beer-area .circles {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: -1; }
  .beer-area li {
    display: block;
    position: absolute;
    bottom: -120px;
    background: rgba(255, 255, 255, 0.6);
    border-radius: 50%;
    animation: awaawa 4s linear infinite; }
  .beer-area li:nth-child(1) {
    left: 5%;
    width: 80px;
    height: 80px;
    animation-delay: 0s; }
  .beer-area li:nth-child(2) {
    left: 15%;
    width: 30px;
    height: 30px;
    animation-delay: 1.5s; }
  .beer-area li:nth-child(3) {
    left: 20%;
    width: 60px;
    height: 60px;
    animation-delay: 3s; }
  .beer-area li:nth-child(4) {
    left: 80%;
    width: 60px;
    height: 60px;
    animation-delay: 1s; }
  .beer-area li:nth-child(5) {
    left: 85%;
    width: 90px;
    height: 90px;
    animation-delay: 2.5s; }
  .beer-area li:nth-child(6) {
    left: 95%;
    width: 40px;
    height: 40px;
    animation-delay: 4s; }
@keyframes awaawa {
  0% {
    top: 100%;
    opacity: 0; }
  10% {
    opacity: 0; }
  90% {
    opacity: 1; }
  100% {
    top: 0;
    opacity: 0; } }
#ticket-buy {
  background: #ffc107;
  padding: 60px 0 40px; }
  #ticket-buy .heading {
    max-width: 700px;
    width: 100%;
    margin: auto; }
  #ticket-buy .text {
    text-align: center;
    text-shadow: 0 0 6px #fff;
    padding: 2em 1em;
    color: #000b4d;
    width: fit-content;
    margin: 0em auto 1em;
    line-height: 2;
    -webkit-text-stroke: 3px white;
    paint-order: stroke; }
  #ticket-buy .cta-btn {
    display: block;
    max-width: calc(500px - 2em - 6px);
    width: calc(100% - 2em - 6px);
    margin: auto;
    padding: 0.8em 1em;
    background: #fff;
    color: #000b4d;
    text-align: center;
    border-radius: 2em;
    border: solid 3px #000b4d;
    box-shadow: 0 6px 0 0 #000b4d;
    position: relative;
    top: -4px;
    transition: 0.2s; }
    #ticket-buy .cta-btn:hover {
      top: 0;
      box-shadow: 0 0 0 0 #000b4d; }

.container {
  max-width: calc(1000px - 2em);
  width: calc(100% - 2em);
  margin: auto;
  background: #fff;
  padding: 4em 1em;
  border-radius: 40px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2); }

.sec-heading {
  max-width: 700px;
  width: 100%;
  margin: auto; }

#event {
  padding: 40px 0;
  background: #ffc107; }
  #event .lead {
    padding: 2em 0;
    line-height: 1.8; }
  #event .event-list {
    box-sizing: border-box;
    max-width: 900px;
    width: 100%;
    margin: auto;
    padding: 1em 2em;
    border-radius: 40px;
    background: #fff1cb; }
    #event .event-list .item {
      display: flex;
      align-items: center;
      padding: 1em 0;
      border-bottom: dashed 1px #000b4d; }
      #event .event-list .item:last-of-type {
        border: none; }
      #event .event-list .item .head {
        min-width: calc(200px - 2em);
        width: 20%;
        background: #ffc107;
        padding: 1em;
        position: relative;
        clip-path: polygon(0 0, 70% 0, 85% 50%, 70% 100%, 0 100%);
        margin-right: 3%; }
        #event .event-list .item .head::before {
          content: "";
          position: absolute;
          right: 30%;
          top: 50%;
          transform: translateY(-50%);
          width: 10px;
          height: 10px;
          border-radius: 10px;
          background: #fff;
          border: solid 2px #000b4d; }

#brewery {
  padding: 40px 0;
  background: #ffc107; }
  #brewery .lead {
    padding: 2em 0;
    line-height: 1.8; }
  #brewery .brewery-list {
    max-width: 800px;
    width: 100%;
    margin: 0 auto 4em;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px; }
    #brewery .brewery-list .item {
      display: block;
      box-shadow: 2px 2px 4px 2px rgba(0, 0, 0, 0.2);
      transition: 0.2s; }
      #brewery .brewery-list .item:hover {
        opacity: 0.7; }
  #brewery .cta-btn {
    display: block;
    max-width: calc(400px - 2em - 6px);
    width: calc(100% - 2em - 6px);
    margin: auto;
    padding: 0.5em 1em;
    background: #000b4d;
    color: #fff;
    text-align: center;
    border-radius: 2em;
    border: solid 3px #000b4d; }
    #brewery .cta-btn:hover {
      background: #fff;
      color: #000b4d; }

#contents {
  padding: 40px 0 120px;
  background: #ffc107; }
  #contents .lead {
    padding: 2em 0;
    line-height: 1.8; }
  #contents .pickup-head {
    display: block;
    max-width: 180px;
    width: 40%;
    margin: auto;
    background: #ffce48;
    padding: 20px 60px 10px;
    border: solid 4px #000b4d;
    border-radius: 40px;
    position: relative;
    top: 74px; }
  #contents .pickup-flex {
    max-width: 900px;
    width: 100%;
    margin: 2em auto 0;
    display: flex;
    justify-content: space-between;
    border: solid 4px #000b4d;
    padding: 6em 2em 2em;
    box-sizing: border-box;
    border-radius: 40px;
    background: #b0f0fd; }
    #contents .pickup-flex .item {
      width: 30%; }
      #contents .pickup-flex .item p {
        padding-top: 1em;
        text-align: center;
        color: #000b4d; }

.cont-slider {
  max-width: 900px;
  width: 100%;
  margin: 0 auto; }
  .cont-slider .swiper-wrapper {
    transition-timing-function: linear !important; }
  .cont-slider .swiper-slide {
    box-sizing: border-box;
    border-radius: 1em;
    overflow: hidden; }

#access iframe {
  display: block;
  max-width: 800px;
  width: 100%;
  margin: 2em auto; }
#access .access-text {
  max-width: 800px;
  width: 100%;
  margin: auto; }
#access .place {
  border-bottom: solid 2px #ffc107;
  margin-bottom: 1em;
  padding-bottom: 4px; }
#access .station p {
  padding-bottom: 0.5em; }

#qa {
  background: #9ddaff; }
  #qa .qa-list {
    max-width: 800px;
    width: 100%;
    margin: 2em auto 0; }
    #qa .qa-list .item {
      background: #ffc107;
      border-radius: 10px;
      margin-bottom: 1.15em; }
      #qa .qa-list .item .qa-q {
        padding: 1em;
        border-radius: 10px;
        display: flex;
        align-items: center;
        cursor: pointer; }
        #qa .qa-list .item .qa-q .qq {
          display: inline-block;
          background: #fff;
          height: 2.5em;
          width: 2.5em;
          border-radius: 50%;
          text-align: center;
          line-height: 2.4em;
          margin-right: 2%;
          border: solid 2px #000b4d;
          color: #000b4d; }
        #qa .qa-list .item .qa-q .qa-kigou {
          display: inline-block;
          width: 28px;
          height: 16px;
          margin-left: auto;
          position: relative;
          transition: all 0.2s; }
          #qa .qa-list .item .qa-q .qa-kigou::before, #qa .qa-list .item .qa-q .qa-kigou::after {
            content: "";
            position: absolute;
            bottom: 0;
            left: calc(50% - 2px);
            width: 0.25em;
            height: 1em;
            background: #000b4d;
            transform-origin: 50% calc(100% - 1.8px);
            border-radius: 2px; }
          #qa .qa-list .item .qa-q .qa-kigou::before {
            transform: rotate(45deg); }
          #qa .qa-list .item .qa-q .qa-kigou::after {
            transform: rotate(-45deg); }
        #qa .qa-list .item .qa-q.active .qa-kigou {
          transform: rotate(180deg); }
      #qa .qa-list .item .qa-a {
        display: none;
        background: #fff;
        padding: 1em;
        border-radius: 0 0 10px 10px; }

.ft-bnr {
  padding: 80px 0 40px; }
  .ft-bnr .cta-bnr {
    display: block;
    max-width: 600px;
    width: 90%;
    margin: auto;
    box-shadow: 2px 2px 8px 2px rgba(0, 0, 0, 0.2);
    border-radius: 10px; }
    .ft-bnr .cta-bnr img {
      border-radius: 10px; }

footer {
  padding: 80px 0 20px;
  background: #ffc107; }
  footer .sns-list {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 250px;
    width: 100%;
    margin: 0 auto 4em; }
    footer .sns-list .sns {
      width: 20%; }
  footer .copy-right {
    text-align: center; }

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

  .lead {
    text-align: left;
    max-width: 600px;
    width: fit-content;
    margin: auto; }

  footer {
    padding: 60px 0 160px; }

  .wave {
    top: 60px; } }
@media screen and (max-width: 540px) {
  section {
    padding: 40px 0; }

  .side-fixed {
    right: 0;
    bottom: 0; }

  #mv .mv-logo {
    width: calc(80% - 2em);
    padding: 14px;
    -webkit-filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.4));
    filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.4)); }
  #mv .mv-bg {
    height: 70vh; }
  #mv .mv-copy {
    bottom: 0;
    width: calc(100% - 2em);
    border: none;
    background: #000b4d;
    filter: none; }
  #mv .mv-info {
    padding: 40px 14px 0; }
  #mv .mv-open {
    margin-bottom: 16px; }
  #mv .mv-text {
    width: 80%;
    margin: 28px auto 0; }

  .wave {
    top: 40px; }

  .beer-area li:nth-child(1) {
    width: 40px;
    height: 40px; }
  .beer-area li:nth-child(2) {
    width: 15px;
    height: 15px; }
  .beer-area li:nth-child(3) {
    width: 30px;
    height: 30px; }
  .beer-area li:nth-child(4) {
    width: 30px;
    height: 30px; }
  .beer-area li:nth-child(5) {
    width: 45px;
    height: 45px; }
  .beer-area li:nth-child(6) {
    width: 20px;
    height: 20px; }

  .container {
    border-radius: 20px;
    padding: 2em 1em; }

  #ticket-buy {
    padding: 60px 0 40px; }
    #ticket-buy .text {
      -webkit-text-stroke: 2px white;
      text-shadow: 0 0 4px rgba(255, 255, 255, 0.6); }

  #event {
    padding: 20px 0; }
    #event .lead {
      padding: 1.5em 0.3em 2em; }
    #event .event-list {
      border-radius: 20px;
      padding: 8px 10px; }
      #event .event-list .item .head {
        min-width: 100px;
        padding: 15px 0 15px 10px;
        margin-right: 0; }
        #event .event-list .item .head::before {
          width: 6px;
          height: 6px;
          border: solid 1px #000b4d; }

  #brewery {
    padding: 10px 0 20px; }
    #brewery .lead {
      padding: 1.5em 0.3em 2em; }
    #brewery .brewery-list {
      margin: 0 auto 30px;
      grid-template-columns: repeat(2, 1fr); }

  #contents {
    padding: 10px 0 40px; }
    #contents .lead {
      padding: 1.5em 0.3em 2em; }
    #contents .pickup-head {
      max-width: 120px;
      width: 25%;
      padding: 12px 40px 8px;
      border: solid 2px #000b4d;
      top: 25px; }
    #contents .pickup-flex {
      margin: 0 auto;
      border-radius: 20px;
      border: solid 2px #000b4d;
      padding: 40px 12px 16px; }

  .ft-bnr {
    padding: 40px 0 0; } }

/*# sourceMappingURL=style.css.map */
