@charset "utf-8";

body {
  /* background-image: linear-gradient(180deg, #ffcc9e, #ff5b86); */
  /* background-image: linear-gradient(49deg, rgb(223 93 247 / 94%), rgba(254, 220, 64, 1)); */
  color: #333;
}

.global-nav {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    top: 0;
    position: fixed;
    z-index: 9999;
    padding: .5rem 2rem;
    color: #1a1818;
    background: #FFF;
    box-shadow: 0px 10px 10px -5px rgba(0,0,0,0.1);
}

.en-font {
    font-family: "menco", sans-serif;
    font-weight: 900;
    font-style: normal;
    letter-spacing: .14rem;
}

.nav-menu {
    font-size: medium;
    display: flex;
    justify-content: right;
}

.nav-item {
    margin: 0.7rem;
    color: #1a1818;  
}

.nav-menu li:nth-child a {
    text-decoration: none;
}


.mainvisual {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 0;
}


.mainvisual > img {
    width: 100%;
    max-width: 1250px;
    z-index: 6;
    padding: 4rem 2rem;
}

.head-logo {
    width: 30vw;
}

@media screen and (max-width: 1024px){
  .mainvisual > img {
    max-width: 77%;
    padding: 2rem 0 .5rem;
  }
}

@media screen and (max-width: 768px){

  .mainvisual > img {
    max-width: 98%;
    margin-right: -10px;
  }
  .head-logo {
    width: 50vw;
  }

}

/*アクティブクラスがついたら位置を0に*/
.nav-menu.panelactive{
    right: 0;
}

@media screen and (max-width: 768px){
/* ナビ */
.nav-menu{
    font-size: x-large;
    line-height: 3rem;
    position:fixed;
    display: block;
    z-index: 999;
    top:0;
    right: -120%;
    width:100%;
    height: 100vh;
    background:#FFF;
    transition: all 0.6s;
}

.nav-menu.panelactive{
    position: fixed;
    z-index: 999; 
    width: 100%;
    height: 100vh;
    margin: 0;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

.nav-menu ul {
    position: absolute;
    z-index: 999;
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);
}

.nav-menu li{
  list-style: none;
  text-align: center;
}

.openbtn1{
  position:fixed;
  z-index: 9999;
  right: 10px;
  cursor: pointer;
    width: 50px;
    height:50px;
}

.openbtn1 span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
    background-color: #666;
    width: 45%;
  }

.openbtn1 span:nth-of-type(1) {
  top:15px; 
}

.openbtn1 span:nth-of-type(2) {
  top:23px;
}

.openbtn1 span:nth-of-type(3) {
  top:31px;
}

.openbtn1.active span:nth-of-type(1) {
    top: 13px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}

.openbtn1.active span:nth-of-type(2) {
  opacity: 0;
}

.openbtn1.active span:nth-of-type(3){
    top: 25px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}
}

/*========= radiko ==========*/
.p-nav,
.p-nav__sub{
    position: fixed;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: auto;
    top: 0;
    background-color: rgba(55,55,55,0);
    z-index: 999;
    transition: all .3s;
}
.p-nav.active,
.p-nav__sub.active{
    background-color: rgba(55,55,55,.35);
    height: 100vh;
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(12px);
}
.p-nav > ul,
.p-nav__sub > ul{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    top: 0;
    right: 0;
    gap: 2px;
    margin: 30px 0 0 0;
    padding: 0;
    z-index: 999;
}
.p-nav > ul > li,
.p-nav__sub > ul > li{
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    height: 80px;
    max-height: 0;
    padding: 0 30px;
    background-color: #f5f5f5;
    color: #202020;
    list-style: none;
    transition: all .3s;
}
.p-nav.active > ul > li,
.p-nav__sub.active > ul > li{
    max-height: 80px;
}
.p-nav__inner{
    display: flex;
    align-items: center;
    text-align: left;
}
.p-nav__icon{
    display: flex;
    width: 60px;
    margin: 0 auto;
}
.p-nav__icon > img{
    max-width: 50px;
}
.p-nav__title{
    text-align: left;
    width: fit-content;
    font-size: 1.5rem;
    margin: 5px 0 0 0;
}
.p-nav__about{
    width: 140px;
    font-size: 1rem;
    margin: 5px 0 0 10px;
}

@media screen and (min-width: 769px){
    .p-nav{
        display: flex;
        justify-content: space-between;
        align-items: center;
        height: auto;
        top: 160px;
    }
    .p-nav__sub{
        display: flex;
        justify-content: space-between;
        align-items: center;
        height: auto;
        top: 0;
    }
    .p-nav > ul{
        position: fixed;
        width: 110px;
        top: 130px;
        right: 0;
        gap: 10px;
    }
    .p-nav__sub > ul{
        position: fixed;
        width: 110px;
        top: 0;
        right: 0;
        gap: 10px;
    }
    .p-nav > ul > li,
    .p-nav__sub > ul > li{
        justify-content: center;
        width: 110px;
        height: 115px;
        max-height: unset;
        padding: 0;
        border-radius: 5px 0 0 5px;
        cursor: pointer;
    }
    .p-nav__inner{
        display: block;
        text-align: center;
    }
    .p-nav__icon > img{
        max-width: unset;
        max-height: 30px;
        margin: 0 auto;
    }
    .p-nav__title{
        text-align: center;
        width: 100%;
        margin: 5px 0 0 0;
        font-size: .9rem;
    }
    .p-nav__about{
        width: fit-content;
        margin: 5px 0 0 0;
        font-size: .8rem;
        font-weight: bold;
    }
    .p-nav__menu{
        display: none;
    }
}



/*========= title ===============*/

.catch-copy {
  font-size: 1.4rem;
  line-height: 3rem;
}
.sub-title {
  font-size: 1.4rem;
  color: #161616;/*文字色*/
  border-bottom: solid 2px #161616;/*下線*/
  text-align: center;
  display: inline-block;
}
.text-artist {
  font-size: 1rem;
  letter-spacing: .1rem;
  padding: 1.6rem .3rem;
  margin: auto;
}
.text-time {
  color:  #161616;
  font-size: medium;
  letter-spacing: .07rem;
  position: relative;
  line-height: 1.4;
  padding:0.03em 2.2em;
  display: inline-block;
  top:0;
}
.text-time:before, .text-time:after { 
  position: absolute;
  top: 0;
  content:'';
  width: 7px;
  height: 100%;
  display: inline-block;
}
.text-time:before {
  border-left: solid 2px #161616;
  border-top: solid 2px #161616;
  border-bottom: solid 2px #161616;
  left: 0;
}
.text-time:after {
  content: '';
  border-top: solid 2px #161616;
  border-right: solid 2px #161616;
  border-bottom: solid 2px #161616;
  right: 0;
}

.text-price {
  font-size: 1.5rem;
  line-height: 3rem;
}
.text-store {
  font-size: 1.2rem;
  color: #161616;
}
.text-menu {
  letter-spacing: 1px;
  font-size: small;
  line-height: 1.4rem;
}
.text-report {
  line-height: 1.8rem;
  letter-spacing: 0.09rem;
  font-size: medium;
}

@media screen and (max-width: 768px){
  .catch-copy {
    font-size: 1rem;
    line-height: 2rem;
    margin: 0 .9rem;
  }
  .text-artist {
    font-size: 0.7rem;
    letter-spacing: .06rem;
  }
  .text-time {
    font-size: 1rem;
  }
  .text-time:before, .text-time:after{
    width: 5px;
  }
  .text-store {
    font-size: 1.1rem;
  }
  .text-menu {
    font-size: .8rem;
    line-height: 1.6rem;
  }
  .text-report {
    line-height: 1.3rem;
    letter-spacing: 0.1rem;
    font-size: small;
  }
}




/*========= news/info ==========*/
#info {
  background: linear-gradient(222deg, #4f757e, #5b7d7c, #1e5088);
  color: #fff;
}

#info a {
  color: #fff;
  text-decoration: underline;
}

.table_list {
  list-style: none;
  padding: 0;
  margin: 0;
}


#info {
padding: 50px 0;
}

.info-inner {
width: 80%;
margin: 0 auto;
padding: 0 0 100px;
}


/* ここからがニュース記事のCSS */

.table_list {
margin: 0 15%;
}

.table_list_item {
padding: 25px 0;
border-bottom: 1px solid #E6E6E6;
}

.table_list_item:first-child {
border-top: 1px solid #E6E6E6;
}
.table_list_item a {
position: relative;
display: flex;
padding-right: 30px;
}

.table_list_date {
letter-spacing: .1rem;
font-size: 15px;
margin: 0 15px;
display: grid;
grid-template-columns: .5fr 2fr;
}


@media screen and (max-width: 1024px) {
  .table_list_item a {
      display: block;
  }
}

@media screen and (max-width: 769px) {
  .table_list {
    margin: 0;
  }
  .table_list_item a  {
      font-size: 14px;
  }
  .table_list_date {
    grid-template-columns: 1fr;
    text-align: center;
  }

}
@media screen and (max-width: 480px) {
  .table_list_item a {
      padding-right: 0;
  }
}


.arrow {
  width: 25px;
  height: 1px;
  background: #FFF;
  position: absolute;
  top: 50%;
  right: 0;
}

.arrow::after {
  content: "";
  display: block;
  width: 6px;
  height: 1px;
  background: #FFF;
  transform: rotate(45deg);
  position: absolute;
  right: 0px;
  bottom: 2px;
}


@media screen and (max-width: 1024px) {
    .news_list_item a {
        display: block;
    }
}

@media screen and (max-width: 769px) {
    .news_list_item a  {
        font-size: 14px;
    }


}
@media screen and (max-width: 480px) {
    .arrow {
        display: none;
    }
    .news_list_item a {
        padding-right: 0;
    }
}

/*========= live =========*/

.img-artist {
  position: relative;
  border: solid 1px #161616;
  border-radius: 8px;
}
.artist-content {
  padding: 0rem 1.5rem;
}

/*========= ticket ==========*/
.ticket-content {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.ticket-inner {
  padding: .8rem;
  margin: .8rem;
  border: 3px solid #161616;
  border-radius: .3rem;
  background: #fff;
  letter-spacing: .13rem;
  min-height: 300px; /*0611追記 */
}

.ticket-inner img {
border: 1px solid #eee;
}

/* menu */
.details {
  background-color: white;
}
.summary {
  cursor: pointer;
  font-weight: bold;
  padding: 10px 0px 10px 0px;
}
.menu {
  overflow: hidden;
}
.menuInner {
  padding: 0 20px;
}


@media screen and (max-width: 769px) {
  .ticket-content {
    grid-template-columns: 1fr;
  }
  .ticket-inner {
    margin: .8rem 1.5rem;
    font-size: .9rem;
  }
  .ticket-inner img {
    max-height: 180px;
  }
  
}

/*
[S Code]
*/
.s-code {
	display:none;
	}
	
	#s-code .inner-frame {
	padding:12px 10px;
	}
	
	#s-code .scd-form {
	position: relative;
	margin:0 0 .5em;
	}
	#s-code .scd-form dt {
	width:100%;
	min-height:32px;
	padding:1px;
	background-color:#333;
	position:relative;
	padding-right:36px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-ms-box-sizing:border-box;
	-o-box-sizing:border-box;
	}
	#s-code .scd-form dt input {
	width:100%;
	min-height:32px;
	border:none;
	background:#FFF;
	padding:3px 12px;
	font-size:.9em;
	font-weight:normal;
	border-radius:0;
	-webkit-border-radius:0;
	-moz-border-radius:0;
	-ms-border-radius:0;
	-o-border-radius:0;
	}
	#s-code .scd-form dd {
	width:36px;
	max-height:32px;
	padding:1px;
	background:none;
	background:#333;
	position:absolute;
	top:0;
	right:0;
	overflow:hidden;
	}
	#s-code .scd-form dd button {
	width:100%;
	height:32px;
	padding:0;
	margin:0;
	border:0;
	cursor:pointer;
	background:#333;
	}
	#s-code .scd-form dd button img {
	max-height:28px;
	margin:0;
	padding:0;
	}
	
	@media screen and (min-width:901px) and (max-width:1199px) {
	#s-code .scd-form dt {
	min-height:28px;
	padding-right:28px;
	}
	#s-code .scd-form dt input {
	min-height:28px;
	padding:3px 8px;
	font-size:.8em;
	}
	#s-code .scd-form dd {
	width:28px;
	max-height:28px;
	padding:1px;
	}
	#s-code .scd-form dd button {
	height:28px;
	}
	
	}
	
	
	@media screen and (min-width:641px) and (max-width:900px) {
	#s-code .inner-frame {
	width:100%;
	padding:8px 10px;
	display:table;
	}
	
	#s-code .form-box {
	margin:0;
	display:table-cell;
	vertical-align:middle;
	}
	
	#s-code .scd-form {
	position: relative;
	margin:0;
	}
	
	}
	
	@media screen and (max-width:640px) {
	#s-code .inner-frame {
	width:100%;
	padding:8px 10px;
	display:table;
	}
	
	#s-code .form-box {
	width:auto;
	display:table-cell;
	vertical-align:middle;
	}
	
	#s-code .scd-form {
	position:relative;
	 margin:0;
	}
	
	#s-code .scd-form dt input {
	min-height:38px;
	padding:3px 8px;
	font-size:.9em;
	}
	#s-code .scd-form dd {
	width:38px;
	max-height:40px;
	padding:0;
	}
	#s-code .scd-form dd button {
	height:40px;
	}
	
	}
	
	
	@media screen and (max-width:480px) {
	#s-code .inner-frame {
	padding:8px 5px;
	}
	
	#s-code .scd-form dt {
	min-height:36px;
	padding-right:36px;
	}
	#s-code .scd-form dt input {
	min-height:36px;
	padding:2px 8px;
	font-size:.95em;
	}
	#s-code .scd-form dd {
	width:36px;
	height:38px;
	padding:0;
	}
	#s-code .scd-form dd button {
	max-height:38px;
	}
	
	}
	
	
	@media screen and (max-width:320px) {
	#s-code .inner-frame {
	padding:7px 5px;
	}
	
	}

#caution a {
  text-decoration: underline;
}

#caution {
  letter-spacing: .03rem;
  padding: 0 .7rem;
}

/*========= goods ==========*/

.goods-title {
    background: #161616;
    padding: 1.3rem;
    text-align: center;
    font-weight: bold;
    font-size: 1.3rem;
    color: #FFF;
}
.goods-subtitle{
  font-weight: bold;
}
.goods-content {
    border: #eee 1px solid;
    letter-spacing: .1rem;
    padding: .5rem 1.5rem;
    margin-top: 0;
    background: rgb(255 255 255 / 85%);
    color: #333;
    min-height: 235px;
}

.goods_info {
  margin: 2em auto 0;
  }
  
  .goods_info p span {
  display: inline-block;
  }
  
  .goods_type {
  width: 100%;
  max-width: 960px;
  margin: 0 auto 0;
  display: flex;
  flex-direction: column;
  }
  
  
  .goods_info dl {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  gap: 0 1em;
  padding: 2em 1em;
  border-bottom: solid .1em #FFF;
  font-weight: bold;
  }
  
  .goods_info dl:first-child {
  border-top: solid .1em #FFF;
  }
  
  .goods_info dl dt {
  font-size: 1.5rem;
  text-align: left;
  }
  
  .goods_info dl dt span {
  font-size: 1.2rem;
  margin: .2em 0 0;
  display: block;
  }
  
  .goods_info dl dd {
  font-size: 2.8rem;
  min-width: 300px;
  position: relative;
  text-align: end;
  margin-inline-start: auto;
  }

  .goods_info dl dd span {
    font-size: medium;
  }

@media screen and (max-width: 769px) {
  .goods_info dl dd {
    font-size: 2.4rem;
    text-align: left;
  }
  .goods_info dl {
    display: block;
  }
}
@media screen and (max-width: 300px) {
  .goods_info dl dd {
    min-width: auto;
  }
}



/*========= designer ==========*/

@media screen and (max-width: 769px) {
#designer div {
 text-align: center; 
}
}

/*========= button ==========*/

a.btn-gradient {
  color: #fff;
  font-size: medium;
  border-radius: 10px;
  background: linear-gradient(222deg, #69afe1, #79b0b9, #3d77b7);
  box-shadow: 2px 2px 5px 2px rgba(119, 119, 119, 0.3);
  width: 70%;
  max-width: 335px;
  }
  
  a.btn-gradient:hover {
    -webkit-transform: translate(0, -2px);
    transform: translate(0, -2px);
    color: #fff;
    -webkit-box-shadow: 0 8px 15px rgba(0, 0, 0, .2);
    box-shadow: 0 8px 15px rgba(0, 0, 0, .2);
  }

.btn-gray {
  color: #fff;
  border-radius: 10px;
  background-color: #898989;
  cursor: auto;
  }

  @media screen and (max-width: 769px) {
  a.btn-gradient {
    width: 100%;
  }
}


/*========= cl-text ==========*/

.cl-bl {
    color: #161616;
}

.cl-wt {
  color: #fff;
}

.cl-gr {
  background: linear-gradient(90deg, #4158D0, #C850C0 30%, #b7904a);
  background: -webkit-linear-gradient(0deg, #4158D0, #C850C0 30%, #b7904a);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.cl-gr-anime {
  display: block;
  background: linear-gradient(45deg, #4158D0 16%, #C850C0 57%, #FFCC70 90%);
  background: -webkit-linear-gradient(45deg, #4158D0 16%, #C850C0 57%, #FFCC70 90%);
  background-size: 300% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: gradientEffect 2.5s infinite alternate;
}
 
@keyframes gradientEffect {
  from {background-position: left}
  to {background-position: right}
}



/*========= footer ==========*/


.banner-flex {
    justify-content: center;
}
