@charset "utf-8";
/*
Theme Name: Lightning Pro Child
Theme URI:
Template: lightning-pro
Description:
Author:
Tags:
Version: 0.0.0
*/

@import url('https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap');

/*
// <uniquifier>: Use a unique and descriptive class name
// <weight>: Use a value from 100 to 900

.jost-<uniquifier> {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

// <uniquifier>: Use a unique and descriptive class name
// <weight>: Use a value from 200 to 900

// <uniquifier>: Use a unique and descriptive class name
// <weight>: Use a value from 100 to 900

.noto-sans-jp-<uniquifier> {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

.noto-serif-jp-<uniquifier> {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

*/

body{
  font-family: "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

.home .siteHeader{
  position:fixed;
  background:none;
  box-shadow:none;
}
@media (min-width: 992px) {
/*  .home .siteHeader {
    top: 32px;
  }*/
}

.home .siteContent{
  padding-top:0;
}

@media (min-width: 992px) {
/*  .header_scrolled.home .siteHeader {
    top: 32px;
  }*/
}


.siteFooter{
  border:0;
  background:#000;
}

.copySection{
  color:#FFF;
}

ul#footersns{
  padding:0;
  list-style:none;
  display:flex;
  justify-content:center;
  align-items:center;
}

ul#footersns li{
  padding:0px 8px;
}

.siteHeadContainer{
  padding-right:0;
}
#gMenu_outer #menu-header-nav li:last-child a{
  background:#000;
  color:#FFF;
  padding-left:30px;
  padding-right:30px;
}

.gMenu_outer nav{
  display:block;
}

.device-pc .gMenu > li > a{
  padding-top:23px;
  padding-bottom:23px;
}

.gMenu > li::before{
  border:0;
}


.page-header_pageTitle span{
  background:#FFF;
  padding:5px 35px;
  color:#231815;
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  text-align:center;
  font-size:46px;
}

/* scroll reset */

.home.header_scrolled .siteHeader{
  background:#FFF;
}

.header_scrolled .gMenu_outer{
  position:static;
  width:initial;
  width:auto;
  clear:none;
  box-shadow:none;
}

.header_scrolled .navbar-header{
  margin-bottom:0;
}

.header_scrolled .gMenu_outer nav{
  width:initial;
  width:auto;
  padding:0;
}

.header_scrolled .gMenu > li{
  border:0;
}




h2{
  border:none;
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  text-align:center;
  font-size:46px;

}

.gradationback{
  background: rgb(254,179,0);
  background: linear-gradient(90deg, rgba(254,179,0,1) 0%, rgba(234,126,64,1) 30%, rgba(231,66,145,1) 70%);
  color:#FFF;
}

.gradationback h2{
  color:#FFF;
}

.font26{
  font-size:26px;
}

.font24{
  font-size:24px;
}

#main{
  position:relative;
}

#main #mainback{
  width:100%;
}

#main #mainlogo{
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%); /* Safari用 */
  transform: translate(-50%, -50%);
}



.news_time{
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size:14px;
  color:#231815;
}

.news_term{
  font-size:13px;
  line-height:1;
  padding:5px 20px;
  margin:0px 20px;
  background:#231815;
  color:#FFF;
}

.news_link{
  color:#1d1d1f;
}

ul.topnews{
  list-style:none;
  padding:0;
}

ul.topnews li{
  border-bottom:0.5px solid #d9d9d9;
  padding:10px 0px;
}

ul.topnews li a{
  color:#e74291;
}



.map {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 75%; /* 比率を4:3に固定 */
}
 
.map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.support_title{
  font-size:18px;
  font-weight:bold;
  text-align:center;
  position: relative;
  margin-bottom:30px;
}


.support_title:after{
  content:"";
  width:30px;
  height:1px;
  background:#000;
  position:absolute;
  bottom:-10px;
  left: 50%;
  -webkit-transform: translateX(-50%); /* Safari用 */
  transform: translateX(-50%);

}


.support_name{
  font-size:16px;
  font-weight:bold;
  text-align:center;
}

.tab{
  margin: 0 auto;
}

.tab-list{
  display: flex;
}

.tab-list-item{
  width: 50%;
  text-align: center;
  padding: 8px 0;
  cursor: pointer;
  background:rgba(0,0,0,0.2);
  color:#9fa0a0;
  border:none;

  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size:26px;


}

.is-btn-active{
  background:rgba(231,66,145,1);
  font-weight: bold;
  color:#FFF;
}

.tab-contents{
  display: none;
  padding: 20px;
}

.is-contents-active{
  display: block;
}

#lineup h3,#drinkfood h3,#support h3,#ticket h3 {
    border: none;
    font-family: "Jost", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    text-align: center;
    font-size: 36px;
}{
  border:none;
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  text-align:center;
  font-size:36px;
}

#lineup h3:after,#drinkfood h3:after,#support h3:after,#ticket h3:after{
  display:none;
}

.lineupline{
  border-bottom:0.25px solid #9fa0a0;
  padding-top:60px;
}

.artist{
  display:flex;
  flex-wrap: wrap;
  justify-content: center;
}

.artist > div{
  width:33%;
  padding:10px;
}

.talkshow{
  display:flex;
  flex-wrap: wrap;
  justify-content: center;
}

.talkshow > div{
  width:33%;
  padding:10px;
}


.mc{
  display:flex;
  flex-wrap: wrap;
  justify-content: center;
}

.mc > div{
  width:25%;
  padding:10px;
}

.pr{
  display:flex;
  flex-wrap: wrap;
  justify-content: center;
}

.pr > div{
  width:25%;
  padding:10px;
}

.food{
  display:flex;
  flex-wrap: wrap;
  justify-content: center;
}

.food > div{
  width:20%;
  padding:20px;
  margin-bottom:20px;
}


.assistant{
  display:flex;
  flex-wrap: wrap;
  justify-content: center;
}

.assistant > div{
  width:20%;
  padding:10px;
}

.sponser{
  display:flex;
  flex-wrap: wrap;
  justify-content: center;
}

.sponser > div{
  width:25%;
  padding:10px;
}


a.more{
  background:#231815;
  color:#FFF;
  display:inline-block;
  padding:10px 50px;
  border:2px solid #231815;
  transition:.3s;
}

a.more:hover{
  background:#fff;
  color:#231815;
  text-decoration:none;
  transition:.3s;
}


.caution_title{
  font-size:20px;
  font-weight:bold;
  border-bottom:1px solid #000;
  padding:10px 0px;
  margin-bottom:20px;
}

ul.cautions{
  padding-left: 20px;
}

table.tickettable{
  border-top:1px solid #898989;
  border-left:1px solid #898989;
}


table.tickettable th{
  background:#efefef;
}

table.tickettable th,
table.tickettable td{
  border-right:1px solid #898989;
  border-bottom:1px solid #898989;
  font-size:16px;
}


a.ticketlink{
  background:#e74291;
  color:#FFF;
  display:block;
  padding:10px 10px;
  border:2px solid #e74291;
  transition:.3s;
  text-align:center;
  font-size:20px;
  border-radius:3px;
}

a.ticketlink:hover{
  background:#fff;
  color:#e74291;
  text-decoration:none;
  transition:.3s;
}


@media (max-width: 576px) {

h2 {
    font-size: 38px;
}

h3 {
    font-size: 32px;
}

.font26 {
    font-size: 20px;
}

.font26 {
    font-size: 18px;
}

.tab-contents {
    display: none;
    padding: 0px;
}

.artist > div {
    width: 33%;
    padding: 5px;
}


.siteHeader_logo {
padding: 10px 45px;
}

.vk-mobile-nav-menu-btn {
    position: fixed;
    top: 10px;
    left: 5px;
    z-index: 2100;
    overflow: hidden;
    border: none; 
    border-radius: 2px;
    width: 40px;
    height: 40px;
    cursor: pointer;
    text-indent: -9999px;
    background-size: 24px 24px;
    transition: border-color .5s ease-out;
}


}