@charset "UTF-8";
.page-wrapper *:where(:not(iframe, canvas, img, svg, video ,.splide):not(svg *, .splide *)) {
  all: unset;
  display: revert;
}
.page-wrapper *,
.page-wrapper *::before,
.page-wrapper *::after {
  color: #231815;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.page-wrapper ol,
.page-wrapper ul {
  list-style: none;
}
.page-wrapper table {
  border-collapse: collapse;
}
.page-wrapper a {
  cursor: pointer;
}
.page-wrapper a {
  -webkit-transform: 0.3s;
          transform: 0.3s;
  text-decoration: none;
}
.page-wrapper a:hover {
  opacity: 0.8;
}
@media (min-width: 768px) {
  .page-wrapper .pc-only {
    display: block;
  }
  .page-wrapper .sp-only {
    display: none;
  }
}
@media (max-width: 767.9999px) {
  .page-wrapper .pc-only {
    display: none;
  }
  .page-wrapper .sp-only {
    display: block;
  }
}
/* ↑ コンテンツ部分設定 */


/* ↓ 特集 */
.l-container {
  font-family: "Noto Sans JP", sans-serif;
}

.screen-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip:rect(0, 0, 0 ,0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.cloud {
  position: relative;
}

.cloud::before {
  content: "";
  width: 121.9vw;
  height: 36.3vw;
  position: absolute;
  top: -18.1vw;
  left: 50%;
  transform: translateX(-50%);
  background: url("../img/cloud.svg") no-repeat center / contain;
}

.keyvisual {
  position: relative;
  z-index: 0;
}

.keyvisual::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #FCF9CE;
  z-index: -1;
}

.keyvisual__inner {
  padding: 16px 0 13.6vw;
}

.announcement {
  margin-top: 6.7vw;
}

.announcement::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #ffffff;
  z-index: 0;
}

.announcement__inner {
  padding: 0 17px 27.2vw;
  text-align: center;
  position: relative;
  z-index: 1;
}

.announcement__inner::before,
.announcement__inner::after {
  content: "";
  width: 71px;
  height: 248px;
  position: absolute;
  top: 11px;
}

.announcement__inner::before {
  left: -20px;
  top: -10px;
  background: url("../img/cracker-left.svg") no-repeat center / contain;
}

.announcement__inner::after {
  right: -20px;
  top: -10px;
  background: url("../img/cracker-right.svg") no-repeat center / contain;
}

.announcement__title {
  margin: -4px auto 0;
  width: fit-content;
  font-family: "Inter", sans-serif;
  font-weight: bold;
  font-size: 28px;
  line-height: 37px;
  color: #003A8E;
  position: relative;
}

.announcement__title::before,
.announcement__title::after {
  content: "";
  position: absolute;
  width: 28px;
  height: 1px;
  bottom:17px;
  background: #575757;
}

.announcement__title::before {
  left: -30px;
  transform: rotate(42deg);
}

.announcement__title::after {
  right: -30px;
  transform: rotate(-42deg);
}

.announcement__text {
  font-weight: 500;
  font-size: 16px;
  line-height: 35px;
  color: #575757;
}

.recruitment {
  z-index: 0;
}

.recruitment::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #FCF9CE;
  z-index: -1;
}

.cloud2::before {
  top: -13.6vw;
  background: url("../img/cloud-yellow.svg") no-repeat center / contain;
  z-index: -2;
}

.recruitment__inner {
  padding: 0 17px 28vw;
  text-align: center;
}

.recruitment__title {
  padding: 53px 0 0 8px;
  font-weight: bold;
  font-size: 30px;
  line-height: 36px;
  color: #DD458C;
  position: relative;
}

.recruitment__title::before {
  content: "";
  width: 318px;
  height: 96px;
  position: absolute;
  top: -3px;
  left: 50%;
  transform: translateX(-50%);
  background: url("../img/tent.svg") no-repeat center / contain;
}

.recruitment__contents {
  padding-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.recruitment__content {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.link {
  padding: 8px 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #DD458C;
  border-radius: 6px;
  font-weight: 500;
  font-size: 14px;
  line-height: 20px;
  color: #ffffff;
}

.cloud3 {
}

.cloud3::before {
  top: -14.6vw;
  z-index: -2;
}

.program {
  z-index: 0;
}

.program::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #ffffff;
  z-index: -1;
}

.program__inner {
  padding: 0 13px;
  text-align: center;
}

.program__title {
  width: fit-content;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 1px;
  position: relative;
}

.program__title::before,
.program__title::after {
  content: "";
  width: 52px;
  height: 53px;
  position: absolute;
}

.program__title::before {
  top: -6px;
  left: -59px;
  width: 51px;
  height: 65px;
  background: url("../img/bar-left.svg") no-repeat center / contain;
}

.program__title::after {
  top: 6px;
  width: 52px;
  height: 53px;
  right: -59px;
  background: url("../img/bar-right.svg") no-repeat center / contain;
}

.program__title-sub {
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color:#575757;
}

.program__title-main {
  font-family: "Inter", sans-serif;
  font-weight: bold;
  font-size: 35px;
  line-height: 43px;
  color:#575757;
}

.program__contents {
  padding-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.program__content {
  border: 2px solid #F69420;
  border-radius: 15px;
  box-shadow: 0 1px 3px rgba(246, 148, 32, 1);
  background: #ffffff;
}

.schedule {
  padding: 8px 0;
  background: #F69420;
  border-radius: 11px 11px 0 0;
  display: flex;
  flex-direction: column;
  gap: 1px;
}

.day,
.date,
.date span {
  color: #ffffff;
}

.date,
.date span {
  font-weight: bold;
  line-height: 31px;
}

.day {
  font-weight: 500;
  font-size: 13px;
  line-height: 18px;
}

.date {
  font-size: 24px;
}

.date span {
  font-size: 15px;
}

.artist {
  padding: 20px 13px 0;
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 3px;
}

.artist1 {
  padding: 20px 70px 0;
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 3px;
}

.lineups {
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.outdoor,
.indoor {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
  position: relative;
}

.outdoor::before,
.indoor::before {
  content: "";
  width: 100%;
  height: 11px;
  position: absolute;
  bottom: -18px;
  left: 0;
  background: url("../img/wave-line.svg") no-repeat center / contain;
}

.sun-img {
  width: 28px;
}

.shop-img {
  width: 33px;
}

.outdoor span,
.indoor span {
  font-weight: 500;
  font-size: 18px;
  line-height: 25px;
  color: #575757;
}

.lineup__list {
  padding-top: 22px;
  border-bottom: 1px solid rgba(87, 87, 87, 0.3);
}

.lineup__item {
  background: #FCECD8;
  padding: 10px 0 6px;
  justify-content: center;
  align-items: center;
  font-weight: 500;
  font-size: 14px;
  line-height: 19px;
  color: #575757;
}

.lineup__item2 {
  background: #FFF4E8;
  border-top: 1px solid rgba(87, 87, 87, 0.3);
  border-bottom: 1px solid rgba(87, 87, 87, 0.3);
}
.lineup__title{
  font-weight: 800;
}
.program__content2 {
  border: 2px solid #DD458C;
  box-shadow: 0 1px 3px rgba(221, 69, 140, 1);
}

.schedule2 {
  background: #DD458C;
}

.lineup__item3 {
  border-bottom: none;
}

.outdoor2::before,
.indoor2::before {
  background: url("../img/wave-line-pink.svg") no-repeat center / contain;
}

.lineup__item4 {
  background: #F6C7DD;
}

.lineup__item5 {
  background: #F6EAF0;
  border-top: 1px solid rgba(87, 87, 87, 0.3);
  border-bottom: 1px solid rgba(87, 87, 87, 0.3);
}

.program__content3 {
  border: 2px solid #003A8E;
  box-shadow: 0 1px 3px rgba(0, 58, 142, 1);
}

.schedule3 {
  background: #003A8E;
}

.outdoor3::before,
.indoor3::before {
  background: url("../img/wave-line-blue.svg") no-repeat center / contain;
}

.lineup__item6 {
  background: #C4DCFF;
}

.lineup__item7 {
  background: #E9F2FF;
  border-top: 1px solid rgba(87, 87, 87, 0.3);
}

.cloud4::before {
  top: -15.7vw;
  background: url("../img/cloud-yellow.svg") no-repeat center / contain;
  z-index: -2;
}

.mc {
  margin-top: 29vw;
  z-index: 0;
}

.mc::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #FCF9CE;
  z-index: -1;
}

.mc__inner {
  padding: 0 13px 32.2vw;
  text-align: center;
}

.mc__title {
  width: fit-content;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 1px;
  position: relative;
}

.mc__title::before,
.mc__title::after {
  content: "";
  width: 52px;
  height: 53px;
  position: absolute;
  top: 6px;
}

.mc__title::before {
  left: -59px;
  background: url("../img/bar-left.svg") no-repeat center / contain;
}

.mc__title::after {
  right: -59px;
  background: url("../img/bar-right.svg") no-repeat center / contain;
}

.mc__title-sub {
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color:#575757;
}

.mc__title-main {
  font-family: "Inter", sans-serif;
  font-weight: bold;
  font-size: 35px;
  line-height: 43px;
  color:#575757;
}

.mc__contents {
  padding-top: 29px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.mc__content {
  border: 2px solid #F69420;
  border-radius: 15px;
  box-shadow: 0 1px 3px rgba(246, 148, 32, 1);
  background: #ffffff;
}

.mc__images {
  padding: 20px;
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 10px;
}

.mc__image {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.name {
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: #575757;
}

.mc__content2 {
  border: 2px solid #DD458C;
  box-shadow: 0 1px 3px rgba(221, 69, 140, 1);
}

.mc__content3 {
  border: 2px solid #003A8E;
  box-shadow: 0 1px 3px rgba(0, 58, 142, 1);
}

.cloud6::before {
  top: -13.3vw;
}

.message {
  margin-top: -21px;
}

.message::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #ffffff;
  z-index: 0;
}

.message__inner {
  padding: 0 13px 50px;
  text-align: center;
  position: relative;
  z-index: 1;
}

.message__inner::before,
.message__inner::after {
  content: "";
  width: 63px;
  height: 259px;
  position: absolute;
  top: 125px;
}

.message__inner::before {
  left: -1px;
  background: url("../img/decoration-left.svg") no-repeat center / contain;
}

.message__inner::after {
  right: -1px;
  background: url("../img/decoration-right.svg") no-repeat center / contain;
}

.message__text {
  padding-top: 33px;
  font-weight: 500;
  font-size: 15px;
  line-height: 36px;
  color: #575757;
}

@media (min-width: 768px) {
  .cloud::before {
    width: 457px;
    height: 136px;
    top: -68px;
  }

  .keyvisual__inner {
    padding-bottom: 51px;
  }

  .announcement {
    margin-top: 25px;
  }

  .announcement__inner {
    padding-bottom: 102px;
  }

  .cloud2::before {
    top: -51px;
  }

  .recruitment__inner {
    padding-bottom: 105px;
  }

  .cloud3::before {
    top: -55px;
  }

  .cloud4::before {
    top: -59px;
  }

  .mc {
    margin-top: 109px;
  }

  .mc__inner {
    padding-bottom: 121px;
  }

  .cloud6::before {
    top: -50px;
  }
}



