@charset "UTF-8";

.inner {
  max-width: 100%;
  padding: 0 3.7333vw;
}

/**********************************************************
 * header
 **********************************************************/
header {
  height: 18.6667vw;
  background-color: #0F4B3C;
  z-index: 100;
}
header .menu_trigger {
  position: fixed;
  top: 5.3333vw;
  left: 50%;
  width: 13.8667vw;
  height: 8.2667vw;
  transform: translateX(-50%);
  cursor: pointer;
  z-index: 102;
}
header .menu_trigger .menu_line {
  position: relative;
  width: 100%;
  height: 100%;
}
header .menu_trigger span {
  position: absolute;
  left: 0;
  display: block;
  width: 13.8667vw;
  height: 0.8vw;
  background-color: #C09C46;
  transition: top .3s, transform .3s, opacity .3s;
}
header .menu_trigger span:nth-child(1) {
  top: 0;
}
header .menu_trigger span:nth-child(2) {
  top: 3.7333vw;
}
header .menu_trigger span:nth-child(3) {
  top: 7.4667vw;
}
header .menu_trigger.active span:nth-child(1) {
  top: 3.7333vw;
  transform: rotate(32deg);
}
header .menu_trigger.active span:nth-child(2) {
  opacity: 0;
}
header .menu_trigger.active span:nth-child(3) {
  top: 3.7333vw;
  transform: rotate(-32deg);
}
header .nav_global {
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100dvh;
  min-height: 100vh;
  padding-bottom: 28.2667vw;
  background-color: #006b36;
  opacity: 0;
  visibility: hidden;
  transition: opacity .25s, visibility .25s;
  z-index: 101;
}
header .nav_global.active {
  opacity: 1;
  visibility: visible;
}
header .nav_global ul {
  display: block;
  width: calc(100% - 16vw);
  font-size: 6.4vw;
  font-weight: 700;
  line-height: 1;
}
header .nav_global ul li {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 20vw;
  padding: 0;
  border-bottom: solid 0.2667vw #C09C46;
}
header .nav_global ul li + li {
  border-left: 0;
}
header .nav_global ul li:last-child {
  border-bottom: 0;
}
header .nav_global ul li a {
  color: #C09C46;
}
header .nav_global > img {
  position: absolute;
  left: 50%;
  bottom: 15.4667vw;
  width: 33.8667vw;
  transform: translateX(-50%);
}

/**********************************************************
 * main
 **********************************************************/
main {
  margin-top: 18.6667vw;
}
main section {
  border-bottom-width: 10.1333vw;
}
main .title_section {
  gap: 4.8vw 0;
}
main .title_section img {
  width: 57.3333vw;
}
main .title_section .ja {
  padding-top: 4.8vw;
  font-size: 4.8vw;
}
main .title_section .ja::before {
  width: 18.6667vw;
  height: 0.5333vw;
}

#kv picture,
#kv img {
  display: block;
  width: 100%;
}

#about {
  padding: 19.2vw 0 19.7333vw;
}
#about .title_section .ja {
  font-size: 5.8667vw;
}
#about .content_about {
  margin-top: 10.1333vw;
}
#about .content_about .text_about {
  text-align: left;
  font-size: 4vw;
  font-weight: 700;
  line-height: 1.9;
}

#info {
  padding: 18.6667vw 0 22.6667vw;
}
#info .title_content {
  font-size: 8vw;
  margin-top: 13.8667vw;
  padding: 0 .9em;
}
#info .content_info {
  margin-top: 11.2vw;
}
#info .list_info {
  display: flex;
  flex-direction: column;
  gap: 10.1333vw;
  width: 100%;
}
#info .list_info li {
  width: 100%;
  padding: 0 3.7333vw;
}
#info .list_info li + li {
  margin-top: 0;
}
#info .list_info li .title_area {
  height: 1.75em;
  font-size: 7.4667vw;
  border-width: 0.5333vw 0;
}
#info .list_info li .date {
  font-size: 11.7333vw;
  margin-top: .26em;
}
#info .list_info li .time {
  font-size: 3.4667vw;
  margin-top: .5em;
}
#info .list_info li .venue {
  font-size: 5.6vw;
  line-height: 1.4;
  margin-top: .2em;
}
#info .list_info li .title_contact,
#info .list_info li .contact {
  font-size: 3.2vw;
  line-height: 1.45;
}
#info .list_info li .title_contact {
  margin-top: .7em;
}
#info .note_info {
  display: block;
  margin-top: 10.1333vw;
  padding: 0 2.1333vw;
  font-size: 2.9333vw;
  line-height: 1.5;
}
#info .note_info li {
  text-align: center;
}
#info .content_ticket {
  margin-top: 5.3333vw;
}
#info .box_ticket {
  border-top-width: 1.3333vw;
  padding: 11.2vw 3.7333vw;
}
#info .box_ticket .comingsoon {
  font-size: 4.2667vw;
}
#info .text_ticket {
  font-size: 4.8vw;
  line-height: 1.6;
  padding: 0 2.1333vw;
}
#info .note_ticket {
  display: block;
  margin-top: 2.6667vw;
  padding: 0 2.1333vw;
  font-size: 2.9333vw;
  line-height: 1.5;
}
#info .note_ticket li {
  text-align: center;
}
#info .list_playguide {
  display: block;
  margin-top: 8vw;
  padding: 0 6.9333vw;
}
#info .list_playguide li + li {
  margin-top: 4.8vw;
}
#info .list_playguide a {
  width: 100%;
  height: 3.2em;
  font-size: 4.2667vw;
  border-radius: 1.6em;
}
#info .box_pre {
  justify-content: flex-start;
  gap: 1.8667vw;
  width: calc(100% - 3.2vw);
  height: 40vw;
  margin-top: 11.2vw;
  padding-top: 7.2vw;
  border-radius: 4vw;
}
#info .box_pre::before {
  top: auto;
  bottom: 6.4vw;
  left: 50%;
  width: 6.9333vw;
  height: 7.2vw;
  transform: translateX(-50%);
}
#info .box_pre .titel_pre {
  font-size: 5.8667vw;
}
#info .box_pre .text_pre {
  font-size: 3.7333vw;
}

#menber {
  padding: 17.3333vw 0 19.2vw;
}
#menber .content_menber {
  margin-top: 5.8667vw;
}
#menber .list_menber {
  gap: 7.4667vw 0;
  width: 100%;
}
#menber .list_menber li {
  display: block;
  border-top-width: 1.3333vw;
  padding: 7.2vw 4vw 7.7333vw;
}
#menber .list_menber li .text {
  align-items: center;
  gap: 2.1333vw 0;
  width: 100%;
  padding-right: 0;
  text-align: center;
}
#menber .list_menber li .text .position {
  font-size: 4.2667vw;
}
#menber .list_menber li .text .name_ja {
  font-size: 7.4667vw;
  line-height: 1.25;
}
#menber .list_menber li .text .name_en {
  font-size: 5.3333vw;
  line-height: 1.05;
}
#menber .list_menber li .image {
  width: 100%;
  margin-top: 4.5333vw;
}
#menber .list_menber li .image img {
  display: block;
  width: 100%;
}
#menber .list_menber li .profile p {
  margin-top: 5.6vw;
  font-size: 3.7333vw;
  line-height: 1.7;
}
#menber .list_menber_other {
  display: block;
  width: 100%;
  margin-top: 7.4667vw;
  padding: 7.4667vw 4vw 8.2667vw;
}
#menber .list_menber_other li {
  gap: 2.1333vw;
  width: 100%;
}
#menber .list_menber_other li + li {
  margin-top: 6.4vw;
}
#menber .list_menber_other li .instruments {
  font-size: 4.2667vw;
}
#menber .list_menber_other li .name {
  font-size: 7.4667vw;
}

#goods {
  padding: 17.3333vw 0 18.6667vw;
}
#goods .content_goods {
  margin-top: 7.4667vw;
}
#goods .box_goods {
  border-top-width: 1.3333vw;
  padding: 11.2vw 3.7333vw;
}
#goods .box_goods .comingsoon {
  font-size: 4.2667vw;
}
#goods .introduction {
  gap: 4.8vw 0;
  margin: 9.0667vw 0;
}
#goods .introduction .title_introduction {
  text-align: center;
  font-size: 5.3333vw;
  line-height: 1.35;
}
#goods .introduction .text_introduction {
  font-size: 3.7333vw;
  line-height: 1.6;
}
#goods .introduction .note_introduction {
  display: block;
  text-align: center;
  font-size: 3.4667vw;
  line-height: 1.55;
}
#goods .box_goods .title_box {
  font-size: 5.8667vw;
}
#goods .box_goods .text_box {
  font-size: 3.7333vw;
  line-height: 1.5;
  margin: 3.2vw 0;
}
#goods .box_goods .goods_pre-sale {
  width: 100%;
  border-spacing: 0.2667vw 1.3333vw;
}
#goods .box_goods .goods_pre-sale th,
#goods .box_goods .goods_pre-sale td {
  font-size: 3.7333vw;
  padding: .85em .75em;
}
#goods .list_goods {
  gap: 6.9333vw 0;
  width: 100%;
  margin-top: 8.5333vw;
}
#goods .list_goods li {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  padding: 7.7333vw 4vw 8vw;
}
#goods .list_goods li .text_goods {
  display: contents;
}
#goods .list_goods li .text_goods .title_goods {
  order: 1;
  text-align: center;
  font-size: 7.7333vw;
}
#goods .list_goods li .text_goods .price_goods {
  order: 2;
  text-align: center;
  font-size: 4.5333vw;
  margin-top: 2.1333vw;
}
#goods .list_goods li img {
  order: 3;
  width: 100%;
  margin-top: 5.8667vw;
}
#goods .list_goods li .text_goods .description_goods {
  order: 4;
  font-size: 3.7333vw;
  line-height: 1.65;
  margin-top: 5.3333vw;
}

/**********************************************************
 * footer
 **********************************************************/
footer {
  padding: 11.4667vw 0;
}
footer .inner {
  padding: 0 6.9333vw;
}
footer .list_production {
  display: block;
  text-align: center;
  font-size: 3.2vw;
  line-height: 1.8;
  margin-bottom: 2.6667vw;
}
footer .copyright {
  font-size: 2.6667vw;
}
