@charset "UTF-8";
@import url("reset.css");

/*
.zen-kaku-gothic-new-regular {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.roboto-<uniquifier> {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}
*/

body {
font-family: "Zen Kaku Gothic New", sans-serif;
background-image: url(../img/bg.png);
background-repeat: repeat;
background-size: cover;
color: #fff;
}

/* inner */
.inner { margin:0 auto; }
.inner.width-1100 { width:1100px; }


@media screen and (max-width:1100px) {
.inner { margin:0; }
.inner.width-1100 { width:100%; }	
}


.wrapper {
  overflow:  hidden;

}

main {
      min-height: calc( 100vh - 100px);
}

/*=======================================================
 header
 =======================================================*/

header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 60px;

  position: fixed;
  width: 100%;
  top: 0;
  z-index: 10000;

  mix-blend-mode: difference;
  isolation: isolate;
}

/* open時はブレンド解除 */
body.open header {
  mix-blend-mode: normal;
}

/* logo */
header .logo {
  padding: 0 0 0 20px;
}

header .logo img {
  height: 40px;
}

/* nav PC */
nav ul {
  margin: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

nav li {
  margin: 0 0 0 25px;
  list-style: none;
}

nav li:last-child {
  margin: 0 25px;
}

nav li a {
  color: #fff;
  font-family: "Roboto", sans-serif;
}

/* hover */
nav ul a:hover {
  opacity: 0.8;
}

/*========================
 PC animation（blur）
========================*/
@media screen and (min-width: 1081px) {

  #gloval-nav li {
    opacity: 0;
    filter: blur(10px);
    transform: translateY(30px);

    animation: navBlur 1s cubic-bezier(0.19, 1, 0.22, 1) forwards;
  }

  #gloval-nav li:nth-child(1) { animation-delay: 0s; }
  #gloval-nav li:nth-child(2) { animation-delay: .15s; }
  #gloval-nav li:nth-child(3) { animation-delay: .3s; }
  #gloval-nav li:nth-child(4) { animation-delay: .45s; }
  #gloval-nav li:nth-child(5) { animation-delay: .6s; }
  #gloval-nav li:nth-child(6) { animation-delay: .75s; }

  @keyframes navBlur {
    to {
      opacity: 1;
      filter: blur(0);
      transform: translateY(0);
    }
  }
}

/*========================
 SP hamburger
========================*/
@media screen and (max-width: 1080px) {

  header {
    height: 55px;
  }

  /* nav overlay */
  #gloval-nav {
    background: #000;
    color: #fff;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;

    z-index: 990;

    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;

    visibility: hidden;
    opacity: 0;

    transition: opacity .6s ease, visibility .6s ease;
  }

  #gloval-nav ul li a {
font-size: 26px;
    line-height: 2em;
  }
  body.open #gloval-nav {
    visibility: visible;
    opacity: 1;
  }

  #gloval-nav ul {
    display: block;
    list-style: none;
    margin: 0;
  }

  #gloval-nav ul li {
    width: 100%;
    opacity: 0;
    transform: translateX(200px);

    transition:
      transform .7s cubic-bezier(0.19, 1, 0.22, 1),
      opacity .5s ease;
  }

  body.open #gloval-nav ul li {
    opacity: 1;
    transform: translateX(0);
  }

  /* stagger */
  body.open #gloval-nav ul li:nth-child(1) { transition-delay: 0s; }
  body.open #gloval-nav ul li:nth-child(2) { transition-delay: .15s; }
  body.open #gloval-nav ul li:nth-child(3) { transition-delay: .3s; }
  body.open #gloval-nav ul li:nth-child(4) { transition-delay: .45s; }
  body.open #gloval-nav ul li:nth-child(5) { transition-delay: .6s; }
  body.open #gloval-nav ul li:nth-child(6) { transition-delay: .75s; }

  /* hamburger */
  #nav-toggle {
    padding-right: 10px;
    height: 32px;
    cursor: pointer;
    z-index: 1000;
  }

  #nav-toggle > div {
    position: relative;
    width: 36px;
  }

  #nav-toggle span {
    width: 90%;
    height: 1px;
    left: 0;
    display: block;
    background: #fff;
    position: absolute;

    transition: transform .6s ease-in-out, top .5s ease;
  }

  #nav-toggle span:nth-child(1) { top: 0; }
  #nav-toggle span:nth-child(2) { top: 12px; }
  #nav-toggle span:nth-child(3) { top: 24px; }

  .open #nav-toggle span {
    background: #F9F0E7;
  }

  .open #nav-toggle span:nth-child(1) {
    top: 15px;
    transform: rotate(45deg);
  }

  .open #nav-toggle span:nth-child(2) {
    width: 0;
    left: 50%;
  }

  .open #nav-toggle span:nth-child(3) {
    top: 15px;
    transform: rotate(-45deg);
  }

  /* open lock */
  .open {
    overflow: hidden;
  }
}
/*=======================================================
mainvisual
 =======================================================*/

.mainvisual {
width: 100%;
padding-top: 60px;
margin: 0 auto;
}

.mainvisual h1 img {
width: 100%;
height: auto;
}



/*=======================================================
section
 =======================================================*/

section {
  margin: 0 auto!important;
  width: 100%;
  max-width:1000px;
  padding: 130px 0 0!important;
}
section.sec {
    padding: 190px 0 0!important;
}

section h2 {
 color:#fff;
  font-size:8vw;
  margin: 0 auto 70px;
  font-family: "Roboto", sans-serif;
  text-align: center;
  font-weight: 400;

}
.split-text {
  overflow: hidden;
}

.split-text span {
  display: inline-block;
  opacity: 0;
  transform: translateY(20px);
  filter: blur(8px);
  transition: 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}

/* 発火状態 */
.split-text.is-active span {
  opacity: 1;
  transform: translateY(0);
  filter: blur(0);
}

section h3 {
  font-size:70px;
 text-align: center;
margin-bottom: 60px;

}

section .text {
  font-size: 18px;
  line-height: 1.8em;
  margin: 0 auto;
  text-align: left;
}

section .text#right {
	text-align: right;
	margin-top: 30px;
}

section .title {
  font-size: 36px;
  font-weight:500;
  text-align:center;
}

section .detail {
  font-size: 24px;
  font-weight:200;
  text-align:center;
  margin-bottom: 60px;
}


section .text .long {
  width: 200%;
}
section .text .long img {
  width: 54px;
  height: 1px;
  vertical-align: middle;
}

section.theater {
  margin: 0 auto;
  text-align:center;
}

section.theater img {
  width: 100%;
  max-width:600px;
  text-align:center;
  margin: 0 auto;
}


section.theater .frame {
  border: 1px solid #f9f0e7;
  padding: 60px 0;
  margin: 90px auto 0;
  width: 100%;
  max-width:843px;
}

section.theater .frame ul.list{
  margin: 0 auto 20px;
  padding: 0;
    display: table;
    margin: 0 auto;

}
section.theater .frame ul.list li {
  list-style: none;
  padding-left: 1.3em;
  text-indent: -1.3em;
  text-align: left;
  margin-bottom: 0;
  margin-top:0!important;
  font-size: 20px;
  line-height:36px;
}

section.theater .frame ul.list .pink {
  color: #f9f0e7;
}

section.ticket .ticketdetail {
  display:table;
  margin: 0 auto;
}

section .sales {
  font-size: 36px;
  font-weight:500;
  margin-bottom:20px;

}

section .date {
  font-size: 24px;
  font-weight:200;
  line-height:48px;

}
section .reservation {
  font-size: 20px;
  font-weight:500;
  line-height:36px;


}
section .url {
    margin-bottom:15px;
}
section .url a {
  font-size: 20px;
  font-weight:200;
  color:#f9f0e7;

}

section .caution {
  font-size: 14px;
  font-weight:200;

}


section article {
  margin-bottom:50px;
}


section.message {
  margin: 0 auto;
  text-align:center;
}
section.twitter {
  margin: 0 auto 130px!important;
  text-align:center!important;
  max-width:700px!important;
}

.timeline-Widget {
    max-width: 1200px;
    background-color: #fff;
    border-radius: 5px;
    margin: 0 auto;
}

footer .copy {
  text-align:center;
  font-size:12px;
  margin-bottom:30px;
}

@media screen and (max-width:1000px) {
section {
  margin: 0 auto!important;
  width: 100%;
  max-width:1000px;
  padding: 130px 30px 0!important;
}
section.sec {
    padding: 190px 30px 0!important;
}

}
@media screen and (max-width:768px) {

section {
  margin: 0 auto!important;
  width: 100%;
  max-width:1000px;
  padding: 40px 15px 0!important;
}
section.sec {
    padding: 90px 15px 0!important;
}


section h2 {
  font-size:10vw;
  margin: 0 auto 20px;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: center;
  font-weight: 400;

}

section h3 {
  font-size:26px;

 text-align: center;
margin-bottom: 30px;

}

section .text {
  font-size: 14px;
  line-height: 30px;
  display: table;
  margin: 0 auto;
}
section .text#right {
	text-align: right;
	margin-top: 20px;
}


section .title {
  font-size: 22px;
  font-weight:400;
  text-align:center;
}

section .detail {
  font-size:18px;
  font-weight:200;
  text-align:center;
  margin-bottom: 30px;
}


section .text .long {
  width: 200%;
}
section .text .long img {
  width: 54px;
  height: 1px;
  vertical-align: middle;
}

section.theater {
  margin: 0 auto;
  text-align:center;
}

section.theater img {
  width: 90%;
  max-width:600px;
  text-align:center;
  margin: 0 auto;
}


section.theater .frame {
  border: 1px solid #f9f0e7;
  padding: 20px;
  margin: 30px auto 0;
  width: 100%;
  max-width:843px;
}

section.theater .frame ul.list{
  margin: 0 auto 20px;
  padding: 0;
    display: table;
    margin: 0 auto;

}
section.theater .frame ul.list li {
  list-style: none;
  padding-left: 1.3em;
  text-indent: -1.3em;
  text-align: left;
  margin-bottom: 0;
  margin-top:0!important;
  font-size: 14px;
  line-height:18px;
  margin-bottom:5px;
}

section.theater .frame ul.list .pink {
  color: #f9f0e7;
}

section.ticket .ticketdetail {
  display:table;
  margin: 0 auto;
}

section .sales {
  font-size: 20px;
  font-weight:500;
  margin-bottom:10px;

}

section .date {
  font-size: 16px;
  font-weight:200;
  line-height:30px;

}
section .reservation {
  font-size: 14px;
  font-weight:500;
  line-height:22px;


}
section .url {
    margin-bottom:15px;
}
section .url a {
  font-size: 14px;
  font-weight:200;
  color:#f9f0e7;

}

section .caution {
  font-size: 14px;
  font-weight:200;

}


section article {
  margin-bottom:40px;
}


section.message {
  margin: 0 auto;
  text-align:center;
}
section.twitter {
  margin: 0 auto 40px!important;
  text-align:center!important;
  width: 100%;


}

.timeline-Widget {
    max-width: 700px!important;
    background-color: #fff;
    border-radius: 5px;
    margin: 0 auto!important;
  text-align:center!important;
}

footer .copy {
  text-align:center;
  font-size:12px;
  margin-bottom:30px;
}
     #video {
        top:0;
        width: 100%;
        height: 100%;
        background: #000;/*背景を黒で表示*/
        }
}


/*=======================================================
stage
 =======================================================*/

.stage .date {
  text-align:center;
  font-size:30px;
    vertical-align:middle;
  font-weight: 400;
}

.stage .date .large {
  text-align:center;
  font-size:42px;
}

.stage .date .hall {
  text-align:center;
  color: #000;
  background:#ca427d;
  display:inline;
  padding:5px 10px;
  margin-left: 5px;
  vertical-align:middle;
  font-weight: 300;
}

.stage .position {
  text-align:center;
  font-size: 36px;
  display:table;
  margin: 40px auto 20px;
  line-height: 50px;
  font-weight: 500;
}

.stage .castname {
text-align:center;
font-size: 50px;
display:table;
margin:0 auto;

  font-weight: 200;
}



.stage .hoshitori{
  text-align: center;
  margin: 50px auto;
}
.stage .hoshitori img {
  width: 100%;
}


.stage .osaka{
  text-align: center;
  margin: 50px auto;
}
.stage .osaka img {
  width: 100%;
  max-width: 400px;
  height: auto;
}
.stage .kyoto{
  text-align: center;
  margin: 50px auto;
}
.stage .kyoto img {
  width: 100%;
  max-width: 300px;
  height: auto;
}
.stage .ishikawa{
  text-align: center;
  margin: 50px auto;
}
.stage .ishikawa img {
  width: 100%;
  max-width: 200px;
  height: auto;
}




@media screen and (max-width:768px) {


.stage .date {
    font-size: 16px;
    font-weight: 200;
    line-height: 30px;
    margin-top: 20px;
}
.stage .date .large {
  text-align: center;
  font-size: 32px;
}
.stage .hoshitori {
  text-align:center;
  margin: 30px auto;
  }

.stage .hoshitori img {
width: 100%;
margin: 0 auto;
}

.stage .osaka{
  text-align: center;
  margin: 30px auto;
}
.stage .osaka img {
  width: 40%;
  max-width: 400px;
  height: auto;
}
.stage .kyoto{
  text-align: center;
  margin: 30px auto;
}
.stage .kyoto img {
  width: 30%;
  max-width: 300px;
  height: auto;
}
.stage .ishikawa{
  text-align: center;
  margin: 30px auto 50px;
}
.stage .ishikawa img {
  width: 20%;
  max-width: 200px;
  height: auto;
}	
	
	
	
	
.stage .position {
  text-align:center;
  font-size: 20px;
  display:table;
  margin: 40px auto 10px;
  line-height: 50px;
  font-weight: 500;
}

.stage .castname {
text-align:center;
font-size: 30px;
display:table;
margin:0 auto;
  font-weight: 200;
}

}


/*=======================================================
cast
 =======================================================*/


section.cast ul.castlist {
	display:flex;
	justify-content:center;
	align-items:flex-start;
	flex-wrap:wrap;
margin: 0 auto;
width: 100%;
max-width: 1000px;
	
}

section.cast ul.castlist li {
	width: 32%;
	margin-right:2%;
	margin-bottom:40px;

}
section.cast ul.castlist li:nth-child(3n) {
  margin-right: 0;
}
section.cast ul.castlist li img {
  width: 100%;
  height: auto;
}
section.cast .name {
	text-align: center;
	font-size: 20px;
}
.castlist li {
  opacity: 0;
  clip-path: inset(0 100% 0 0);
  will-change: clip-path, opacity;
}
@media screen and (max-width:768px) {
section.cast ul.castlist li {
	width: 48%;
	margin-right:2%;
	margin-bottom:40px;

}
section.cast ul.castlist li:nth-child(3n) {
	margin-right:0;
}
section.cast ul.castlist li:nth-child(2n) {
  margin-right: 0;
}

section.cast .name {
	text-align: center;
	font-size: 16px;
}
}
.modal_pic {
  position: fixed;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  transition: 0.4s ease;
  z-index: 9999;
}

.modal_pic.is-open {
  opacity: 1;
  pointer-events: auto;
}

/* 黒背景は後ろ */
.modal_pic-bg {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.8);
  z-index: 1;
}

/* 画像は前に出す */
.modal_pic-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  max-width: 80%;
  max-height: 80%;
  z-index: 2;
}

.modal_pic-inner img {
  width: 100%;
  height: auto;
  display: block;
}
.modal_pic-prev,
.modal_pic-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  background: none;
  border: none;
  color: #fff;
  font-size: 40px;
  cursor: pointer;
}

.modal_pic-prev {
  left: 20px;
}

.modal_pic-next {
  right: 20px;
}

/* =========================
   スマホ時だけ大きくする
========================= */
@media screen and (max-width:768px) {

  .modal_pic-inner {
    max-width: 95%;
    max-height: 90%;
  }

}
/*=======================================================
staff
 =======================================================*/

 .staff .position {
  text-align:center;
  font-size: 38px;
  display:table;
  margin: 40px auto 20px;
  line-height: 50px;
  font-weight: 500;
}

.staff .castname {
  text-align:center;
  font-size: 24px;
  display:table;
  margin:0 auto 30px;

}



.staff .cast {
  text-align:center;
  font-size: 30px;
  display:table;
  margin: 40px auto 0;
  line-height: 50px;
  font-weight: 200;
}



section.staff ul.stafflist {
  display:flex;
  justify-content:center;
  align-items: center;
  margin: 0 auto;
  width: 100%;

  font-size: 22px;
	flex-wrap: wrap;
	margin-bottom: 30px;
}

section.staff ul.stafflist li.left {
width: 48%;
	text-align: right;
}
section.staff ul.stafflist li.center {
width: 4%;
text-align: center;
margin: 0;
}
section.staff ul.stafflist li.right {
width: 48%;
}

.staff ul.list_center {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  font-size: 18px;
  margin-bottom: 30px;
}
.staff ul.list_center li {
 line-height: 30px;
}

.staff ul.list_center li.left {
  width: calc( 50% - 20px );
  text-align: right;

}


.staff ul.list_center li.line {
  width: 40px;
  text-align: center;
}

.staff ul.list_center li.line img {
  vertical-align: middle;
  width: 30px;
}


.staff ul.list_center li.right {
  width: calc( 50% - 20px );
  text-align: left;

}


@media screen and (max-width:768px) {

.staff .position {
    text-align: center;
    font-size: 22px;
    display: table;
    margin: 0 auto;
    line-height: 50px;
    font-weight: 500;
}

.staff .castname {
  text-align:center;
  font-size: 20px;
  display:table;
  margin:0 auto 20px;
}
	section.staff ul.stafflist {
  font-size: 14px;
	margin-bottom: 20px;
align-items: self-start;
}

section.staff ul.stafflist li.left {
width: 48%;
	text-align: right;
}
section.staff ul.stafflist li.center {
width: 4%;
text-align: center;
margin: 0;
}
section.staff ul.stafflist li.right {
width: 48%;
}
}

/*=======================================================
animation and effects
 =======================================================*/
.fadein {
  opacity : 0;
  transform: translateY(20px);
  transition: all 1s;
}


/*_______________________________

schedule
_______________________________*/

section.schedule {
  width: 100%;
  margin: 0 auto;
  max-width: 1000px;
  text-align: center;
  padding: 120px 0;
  }
  


section.schedule .card {
  font-size: 24px;
  text-align: center;
  margin-bottom: 10px;
  }

section.schedule .card .small {
	font-size: 18px;
}
  
  section.schedule .date  {
    font-size: 24px;
    margin-bottom: 10px;
    text-align: center;
    letter-spacing: 0.05em;
    font-weight: 400;
    }
    section.schedule .date .number  {
      font-size: 36px;
      margin-bottom: 30px;
      text-align: center;
    font-family: "Roboto", sans-serif;
    font-weight: 400;
      }
  
  section.schedule .hall  {
      font-size: 24px;
      margin-bottom: 40px;
      text-align: center;
      }
      section.schedule .hall .small  {
        font-size: 18px;
        margin-bottom: 20px;
        text-align: center;
  
        }
        section.schedule .hall .map  {     
          text-align: center;
          color: #000;
          background: linear-gradient(-20deg, #969fa9 0%, #d4dbe1 50%, #a7b0ba 100%);
          display: inline;
          padding: 2px 10px;
          margin-left: 5px;
          vertical-align: middle;
          font-weight: 500;
          font-size: 20px;
          border-radius: 0;
        }

        section.schedule .textbox {
          display: table;
          margin: 0 auto 60px;
        }
        section.schedule .textbox img {
          width: 100%;
          height: auto;
        }
        section.schedule ul.caution {
          margin: 0 auto 20px;
          padding: 0;
          color: #fff!important;
          line-height: 24px;
        }
        section.schedule ul.caution li {
          list-style: none;
          padding-left: 1em;
          text-indent: -1em;
          text-align: left;
          margin-bottom: 0;
          color: #fff!important;
          font-size:16px;
        }
section.schedule {
  text-align: center;
}

section.schedule .schedule_box {
  position: relative;
  width: fit-content;
  margin: 0 auto;
  padding: 45px 50px;

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,0.04),
      rgba(255,255,255,0)
    ),
    #111;

  border: 1px solid rgba(255,255,255,0.15);

  box-shadow:
    0 10px 30px rgba(0,0,0,0.5);

  text-align: left;
  overflow: hidden;
}

/* 左上三角 */
section.schedule .schedule_box::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;

  width: 0;
  height: 0;

  border-top: 40px solid #888;
  border-right: 40px solid transparent;
}

/* 右下三角 */
section.schedule .schedule_box::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;

  width: 0;
  height: 0;

  border-bottom: 40px solid #888;
  border-left: 40px solid transparent;
}

/* 親を中央寄せ */
section.schedule {
  text-align: center;
}
section.schedule .title {
  font-size: 18px;
  text-align: left;
  font-weight: bold;
  }
section.schedule .text {
  font-size: 16px;
  text-align: left;
  margin-bottom: 20px;
  }

section.schedule #nospace {
	margin-bottom: 0;
}

 section.schedule .txt  {
          font-size: 16px;
          text-align: left;
			 line-height: 26px;
width: 100%;
}

section.schedule .txt#mb  {
	margin-bottom: 30px;
}

section.schedule .caution {
  text-indent: -1em;
  padding-left: 1em;
font-size: 14px;
}


section.schedule .frame ul.talk li {
        list-style: none;
        padding-left: 1.2em;
        text-indent: -1.2em;
        text-align: left;
	font-size: 16px;
	line-height: 28px;
	}
	
section.schedule ul.schedulelist li:nth-child(51) {
width: 100%;
border:none;
}
section.schedule ul.schedulelist li:nth-child(52) {
            display: none;
}
section.schedule ul.schedulelist li:nth-child(53) {
            display: none;
}
section.schedule ul.schedulelist li:nth-child(54) {
            display: none;
}
section.schedule ul.schedulelist li:nth-child(55) {
            display: none;
}

section.schedule ul.schedulelist .txt {
	font-size: 16px;
}

         
         
  @media screen and (max-width:1350px) {
    section.schedule {
    padding:120px 30px;
  }}


  @media screen and (max-width:935px) {
section.schedule ul.schedulelist li .castname {
          padding: 5px 5px;
          background: #65a4f6;
          display: inline-block;
          vertical-align: middle;
          width: 100%;
          max-width: 150px;
          margin-left: 5px;
          height: 40px;
          color: #000;
          font-weight: normal;
          font-size: 15px;
          background: linear-gradient(-20deg, #dad2c6 0%, #f6f6f6 100%);
        }
        section.schedule ul.schedulelist li .castname2 {
          padding: 5px 5px;
          background: #edc960;
          display: inline-block;
          vertical-align: middle;
          width: 100%;
              max-width: 150px;
          margin-left: 5px;
          height: 40px;
          color: #000;
          font-weight: normal;
          font-size: 15px;
          background: linear-gradient(-20deg, #969fa9 0%, #d4dbe1 50%, #a7b0ba 100%);
        }
} 
  @media screen and (max-width:805px) {

section.schedule ul.schedulelist li .castname {
          padding: 5px 5px;
          background: #65a4f6;
          display: inline-block;
          vertical-align: middle;
          width: 100%;
          max-width: 140px;
          margin-left: 5px;
          height: 40px;
          color: #000;
          font-weight: normal;
          font-size: 14px;
          background: linear-gradient(-20deg, #dad2c6 0%, #f6f6f6 100%);
        }
        section.schedule ul.schedulelist li .castname2 {
          padding: 5px 5px;
          background: #edc960;
          display: inline-block;
          vertical-align: middle;
          width: 100%;
              max-width: 140px;
          margin-left: 5px;
          height: 40px;
          color: #000;
          font-weight: normal;
          font-size: 14px;
          background: linear-gradient(-20deg, #969fa9 0%, #d4dbe1 50%, #a7b0ba 100%);
        }
	  section.schedule ul.schedulelist li {
    width: calc(50% - 145px);
    font-size: 16px;
    line-height: 44px;
    border-right: 1px dotted #969fa9;
    border-bottom: 1px dotted #969fa9;
    text-align: center;
    font-weight: bold;
    padding: 5px;
    color: #000;
}
    section.schedule ul.schedulelist li .castname {
        padding: 5px 5px;
        background: #65a4f6;
        display: inline-block;
        vertical-align: middle;
        width: 100%;
        max-width: 140px;
        margin-left: 0;
        height: 40px;
        color: #000;
        font-weight: normal;
        font-size: 14px;
        background: linear-gradient(-20deg, #dad2c6 0%, #f6f6f6 100%);
    }
	      section.schedule ul.schedulelist li .castname2 {
        padding: 5px 5px;
        background: #edc960;
        display: inline-block;
        vertical-align: middle;
        width: 100%;
        max-width: 140px;
        margin-left: 0;
        height: 40px;
        color: #000;
        font-weight: normal;
        font-size: 14px;
        background: linear-gradient(-20deg, #969fa9 0%, #d4dbe1 50%, #a7b0ba 100%);
    }
} 
  @media screen and (max-width:768px) {
    section.schedule {
    padding:80px 15px 40px;
  }

section.schedule .schedule_box {
    position: relative;
    width: fit-content;
    margin: 0 auto;
    padding: 20px 15px;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0)), #111;
    border: 1px solid rgba(255, 255, 255, 0.15);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    text-align: left;
    overflow: hidden;
}
section.schedule .stage {
  font-size: 24px;
  text-align: center;
  margin-bottom: 10px;
}

section.schedule .date  {
  font-size: 16px;
  margin-bottom: 10px;
  text-align: center;
  letter-spacing: 0.05em;
  }
  section.schedule .date .number  {
    font-size: 22px;
    margin-bottom: 30px;
    text-align: center;
    }
section.schedule .hall .map {
    text-align: center;
    color: #000;
    background: #969fa9;
    display: inline;
    padding: 2px 5px;
    margin-left: 5px;
    vertical-align: middle;
    font-weight: 500;
    font-size: 14px;
}
    section.schedule .hall  {
  font-size: 20px;
  margin-bottom: 20px;
  text-align: center;
  }
  section.schedule .title {
    font-size: 16px;
    text-align: left;
    margin-bottom: 0;
}

section.schedule ul.caution {
          margin: 0 auto 20px;
          padding: 0;
          color: #fff!important;
          line-height: 22px;
        }
        section.schedule ul.caution li {
          list-style: none;
          padding-left: 1em;
          text-indent: -1em;
          text-align: left;
          margin-bottom: 0;
          color: #fff!important;
          font-size:14px;
        }
	section.schedule .card {
    font-size: 18px;
    text-align: center;
    margin-bottom: 10px;
}
	  
	  section.schedule .card .small {
		  font-size: 14px;
	  } 
	  
  section.schedule .text  {
    font-size: 16px;

    }
  section.schedule .hall .small  {
    font-size: 14px;
    margin-bottom: 20px;
    text-align: center;

    }
  section.schedule .textbox {
    display: table;
    margin: 0 auto;
  }

section.schedule ul.schedulelist {
  padding: 5px;
}

section.schedule ul.schedulelist li.time {
	width: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
}
section.schedule ul.schedulelist li.time2 {
	width: 40px;
}



	  
section.schedule ul.schedulelist li.date {
width: 80px;
font-size: 12px;
line-height: 34px;
font-weight: bold;
text-align: right;
padding-left: 0;
padding-right: 5px;
    line-height: 24px;
    display: flex;
  justify-content: center;
  align-items: center;
}

section.schedule ul.schedulelist li {width: calc( 50% - 80px );font-size: 12px;line-height: 24px;/* border-right: 1px dotted #fff; *//* border-bottom: 1px solid #fff; */text-align:left;font-weight: bold;padding: 5px;}


section.schedule ul.schedulelist li .castname {
  padding:3px;
  display: inline-block;
  vertical-align: middle;
  line-height: 10px;
  margin-bottom: 0;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  font-size: 12px;
}
	  section.schedule ul.schedulelist li .castname2 {
  padding: 3px;
  display: inline-block;
  vertical-align: middle;
  line-height: 10px;
  margin-bottom: 0;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  font-size: 12px;
}
	  
	  section.schedule ul.schedulelist li .castname#spacing {
  line-height: 16px;
  display: flex;
  align-items: center;
}

	  	  section.schedule ul.schedulelist li .castname2#spacing {
  line-height: 16px;
  display: flex;
  align-items: center;
}

	  
section.schedule ul.schedulelist li img {
height: 15px;
vertical-align: middle;
font-size: 16px;
margin-right: 4px;
}

section.schedule ul.schedulelist li:nth-child(22) {
        
  width: calc( 100% - 80px );
  line-height: 40px;
  text-align: center;
border-right: none;
}

	  
section.schedule .frame {
  padding: 15px;
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
}
section.schedule .frame .title {
	font-size: 16px;
	line-height: 26px;
	margin-bottom: 0;
}

section.schedule .text  {
          font-size: 14px;
          text-align: left;
			 line-height: 22px;
	display: block;
}
	  
	  
 section.schedule .txt  {
          font-size: 14px;
          text-align: left;
			 line-height: 20px;
}
section.schedule .txt#mb  {
	margin-bottom: 20px;
}

section.schedule .caution {
text-indent: -0.9em;
 padding-left: 0.9em;
font-size: 12px;
text-align: left;
}




section.schedule .frame ul.talk li {
        list-style: none;
        padding-left: 0.9em;
        text-indent: -0.9em;
        text-align: left;
	font-size: 14px;
	line-height: 22px;
	margin-bottom: 5px;
	} 
	  section.schedule ul.schedulelist li:nth-child(46), section.schedule ul.schedulelist li:nth-child(47), section.schedule ul.schedulelist li:nth-child(48), section.schedule ul.schedulelist li:nth-child(49), section.schedule ul.schedulelist li:nth-child(50){
border-bottom: none;
}
section.schedule ul.schedulelist .txt {
	font-size: 14px;
}
}

/*=======================================================
ticket
 =======================================================*/

.ticket {
  text-align: center;
}


.ticket#streaming {
    width: 100%;
    margin: 0 auto;
    max-width: 1000px;
    text-align: center;
    padding: 120px 0;
}

.ticket#music {
    width: 100%;
    margin: 0 auto;
    max-width: 100%;
    text-align: center;
    padding: 120px 30px;
}


.ticket h4 {
  text-align: center;
  font-size: 24px;

}

.ticket h4 {
  font-size:24px;
 text-align: center;
margin-bottom: 20px;
display: inline-block;
}






.ticket h4:not(:first-child) {
margin-top: 50px;

}


.ticket h4.head-border {
    display: flex;
    align-items: center;
	white-space: nowrap;
}
 
.ticket h4.head-border:before,
.ticket h4.head-border:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #969fa9;
    position: static;
    display: flex;
}
 
.ticket h4.head-border:before {
    margin-right: 1rem;
}
 
.ticket h4.head-border:after {
    margin-left: 1rem;
}

.ticket .large {
  text-align: center;
  font-size: 30px;
  line-height:28px;

}

.ticket .kind {
  text-align: center;
  font-size: 28px;
  line-height:28px;
  color:#969fa9;
  font-weight: bold;
margin-bottom: 20px;
}

.ticket .kind#streaming {
margin-top: 50px;
}

.ticket .large2 {
  text-align: center;
  font-size: 30px;
  line-height:28px;
  margin-bottom: 10px;
}

.ticket .large_s {
  text-align: center;
  font-size: 30px;
  margin-bottom: 20px;
  line-height:28px;
}

.ticket .large_s#tell a {
  font-size: 16px;
}


.ticket .large_s .small {
  font-size: 16px;
}


.ticket .large .small {
  font-size: 16px;
}

.ticket .large2 .small {
  font-size: 16px;
}

.ticket .small_b {
  font-size: 16px;
  margin-bottom: 30px;
  text-align: center;
}

.ticket .kome {
  text-align:center;
  font-size: 16px;
}

.ticket .kome_s {
  text-align:center;
  font-size: 16px;
  margin-bottom: 20px;
}
.ticket ul.list {
margin: 0 auto 30px;
padding: 0;
width: 100%;
  font-weight: normal;
margin-bottom: 30px;
}

.ticket ul.list li {
list-style: none;
padding-left: 1.1em;
text-indent: -1.1em;
text-align: left;
font-size:16px;
line-height:28px;
width: 100%;
}


.ticket .salesbox {
  display: table;
  margin: 0 auto;
    width: 100%;
    max-width: 590px;
}

.ticket .salesbox#stream {
  display: table;
  margin: 0 auto;
    width: 100%;
    max-width: 580px;
}


.ticket .ticketbox {
  display: table;
  margin: 0 auto;
    width: 100%;
    max-width: 400px;
}

.ticket .ticketbox ul.caution {
margin: 0 auto 20px;
    padding: 0;
}
.ticket .ticketbox ul.caution li {
list-style: none;
    padding-left: 1.3em;
    text-indent: -1.3em;
    text-align: left;
    font-size: 16px;
}

.ticket .salesbox.autowdth {
  display: table;
  margin: 0 auto;
  width: auto;
}

.ticket .salesbox a {
  color:#ccc;
}

.ticket .salesbox .button {
    background: linear-gradient(-20deg, #969fa9 0%, #d4dbe1 50%, #a7b0ba 100%);
    color:#000;
    border-radius: 0;
    font-size: 18px;
    position: relative;
    place-items: center;
    line-height: 36px;
    margin: 10px 0;
}
.ticket .salesbox .button a {
	color: #000;
}



.ticket .salesbox .button:after {
	position: absolute;display: block;content: "";
	top: 9px;
	width: 1em;
	height: 1em;background: no-repeat center url(../img/icon_arrow_r.svg);
	background-size: contain;
	-webkit-transition: .2s;
	transition: .2s;
	right: 10px;}
.ticket .salesbox .button#bottom {
margin-bottom: 40px;
}
.ticket .salesbox .title {
  font-weight: 400;
  font-size: 24px;
}
.ticket .salesbox .subtitle {
  font-size: 20px;
  margin-bottom: 13px;
  text-align:left;
}

.ticket .salesbox .subtitle2 {
  font-size: 20px;
  margin-bottom: 40px;
  text-align:left;
}

.ticket .salesbox .subtitle3 {
    font-size: 20px;
    margin-bottom: 30px;
    text-align: center;
}

.ticket .salesbox #nospace {
	margin-bottom: 0;
}

.ticket .salesbox .marker-border{
    background:linear-gradient(transparent 80%, #c9bc9c 0%);
}

.ticket .salesbox ul.caution {
        margin: 0 auto 40px;
        padding: 0;
    }

.ticket .salesbox ul.caution li {
        list-style: none;
        padding-left: 1em;
        text-indent: -1em;
        text-align: left;
        font-size: 16px;
    }


.ticket  ul.membership {
	        margin: 0 auto 40px;
        padding: 0;
	text-align: left;
	width: 100%;
	max-width: 650px;
	margin: 0 auto 30px;
}
.ticket  ul.membership li {
        list-style: none;
        padding-left: 1em;
        text-indent: -1em;
        text-align: left;
        font-size: 16px;
    }
section.ticket .frame {
  background: rgba(255, 255, 255, 0.1);
  padding: 30px;
  width: 100%;
  margin: 60px auto 0;
  width: 100%;
  /*display: flex;
  flex-wrap: wrap;*/
max-width: 1000px;
  /* margin: 0 auto 50px; */
  border: 1px solid #d7c079;
  /* padding: 20px; */
  /* box-shadow: 0 0 8px #d7c079; */
  /* background: linear-gradient(-20deg, #969fa9 0%, #d4dbe1 50%, #a7b0ba 100%); */
  background-color: #fff;
  background-repeat: no-repeat;
  background-image: url(../img/corner.svg),  url(../img/corner2.svg), url(../img/corner4.svg), url(../img/corner3.svg);
  background-position: top left, top right, bottom left, bottom right;
  color: #000;
}

section.ticket .frame#streaming {
max-width: 600px;
}



section.ticket .frame .title {
font-size: 20px;
/* text-shadow: 0px 0px 10px rgba(113, 192, 197, 1); */
text-align: left;
}
section.ticket .frame .lead {
	text-align: center;
	font-size: 24px;
}

section.ticket .frame .lead#mt {
	padding-top: 30px;
}

section.ticket .frame .title {
font-size: 18px;
width: 100%;
font-weight: bold;
text-align: center;
margin-bottom: 20px;
}
section.ticket .frame .text {
font-size: 16px;
line-height: 28px;
padding-bottom:10px;
margin-bottom: 20px;
width: 100%;
}
section.ticket .frame .red {
color: #cc0000;
}
section.ticket .frame .transparent {
color: transparent;
}

section.ticket #mb {
margin-bottom: 20px;
}
section.ticket hr {
color:#969fa9;
width: 100%;
margin: 20px 0;
}
section.ticket .text  {
  font-size: 20px;
  text-align: left;
line-height: 28px;
}

section.ticket .txt  {
  font-size: 16px;
  text-align: left;
line-height: 26px;
}

section.ticket .txt#mb  {
margin-bottom: 20px;
}

section.ticket .caution {
text-indent: -1em;
padding-left: 1em;
font-size: 14px;
}
section.ticket .frame ul {
	margin-bottom: 20px;
}
section.ticket .frame ul#last {
	margin-bottom: 0;
}

section.ticket .frame ul.talk {
	width: 100%;
}

section.ticket .frame ul.talk a {
	color: #d7c079;
}

section.ticket .frame ul.talk .indent {
  text-indent: -1em;
  padding-left: 1em;
}

section.ticket .frame ul.talk#nospace {
	margin-bottom: 0;
}

section.ticket .frame ul.talk li {
        list-style: none;
        padding-left: 1.2em;
        text-indent: -1.2em;
        text-align: left;
	font-size: 16px;
	line-height: 28px;
	}

.ticket .frame .button {
    background: linear-gradient(-20deg, #969fa9 0%, #d4dbe1 50%, #a7b0ba 100%);
	color:#000;
	border-radius: 10px;
	font-size: 18px;
	position: relative;
	place-items: center;
	line-height: 36px;
width: 100%;
max-width: 540px;
    margin: 30px auto 0;
}
.ticket .button a {
	color: #000;
}



.ticket .frame .button:after {
	position: absolute;display: block;content: "";
	top: 9px;
	width: 1em;
	height: 1em;background: no-repeat center url(../img/icon_arrow_r.svg);
	background-size: contain;
	-webkit-transition: .2s;
	transition: .2s;
	right: 10px;}
.ticket .salesbox .button#bottom {
margin-bottom: 40px;
}

.ticket .frame#streaming .button {
	margin-bottom: 30px;
	margin-top: 0;
}
section.ticket .frame .gold {
	color: #d7c079;
}

@media screen and (max-width:1350px) {
      section.ticket {
      padding: 0 30px 120px;
}

section.ticket#streaming {
        padding: 120px 30px;
    }

}

    .ticket h4 {
      text-align: center;
      font-size: 24px;
    
    }
    @media screen and (max-width:1024px) { 
    .ticket h4 {
      font-size:24px;
     text-align: center;
    margin-bottom: 20px;
    display: inline-block;
    }
}

  
    


@media screen and (max-width:768px) {
  section.ticket {
    padding:30px 15px;
  }
  section.ticket#streaming {
        padding: 80px 15px 40px;
    }
	
.ticket#music {
        padding: 80px 15px 40px;
}




.ticket  ul.membership {
	margin: 0 auto 20px;
}
.ticket ul.membership li {
    font-size: 14px;
}
.ticket .salesbox .button {
    background: linear-gradient(-20deg, #969fa9 0%, #d4dbe1 50%, #a7b0ba 100%);
    color: #000;
    border-radius: 0;
    font-size: 16px;
    position: relative;
    place-items: center;
    line-height: 33px;
    margin: 10px 0;
}
.ticket .salesbox .button#bottom {
margin-bottom: 30px;
}
.ticket h4 {
  font-size:16px;
  text-align: center;
 margin: 0 auto 20px;
}

.ticket h4:after {
  display: none;
}


.ticket h4:not(:first-child) {
margin-top: 50px;

}


.ticket h4.head-border {
    display: flex;
    align-items: center;
	justify-content: center;
    padding: 0;
white-space: nowrap;
}
 
.ticket h4.head-border:before,
.ticket h4.head-border:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    position: static;
    display: flex;
}



	
	

.ticket .date {
  text-align:center;
  font-size:14px;
    vertical-align:middle;
  font-weight: 200;
}

.ticket .date .large {
  text-align:center;
  font-size:18px;
}

.ticket .date .hall {
  text-align:center;
  color: #000;
  background:#ccc;
  display:inline;
  padding:3px 10px;
  margin-left: 5px;
  vertical-align:bottom;
  font-weight: 300;
}
.ticket h3 {
  text-align: center;
  font-size: 18px;

}

.ticket h3 {
  font-size:18px;
 text-align: center;
margin-bottom: 20px;

}

.ticket h3:not(:first-child) {
margin-top: 40px;

}


.ticket h3.head-border {
    display: flex;
    align-items: center;
}
 
  
.ticket h3.head-border:before,
.ticket h3.head-border:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #ccc;
}
 
.ticket h3.head-border:before {
    margin-right: 1rem;
}
 
.ticket h3.head-border:after {
    margin-left: 1rem;
}

.ticket .large {
  text-align: center;
  font-size: 18px;
  line-height:22px;
}
  
.ticket .large2 {
  text-align: center;
  font-size: 18px;
  line-height:22px;
}
  
.ticket .large_s {
  text-align: center;
  font-size: 18px;
  line-height:22px;
}
  
.ticket .large_s .small {
  font-size: 14px;
}

.ticket .large2 .small {
  font-size: 14px;
}

.ticket .large .small {
  font-size: 14px;
}
.ticket .small_b {
  font-size: 14px;
  margin-bottom: 20px;
}

.ticket .kome {
  text-align:center;
  font-size: 12px;
}
  
.ticket .kome_s {
  text-align:center;
  font-size: 12px;
}
.ticket ul.list {
margin: 0 auto 30px;
padding: 0;
width: 100%;
  font-weight: normal;
margin-bottom: 30px;
}

.ticket ul.list li {
list-style: none;
padding-left: 1.1em;
text-indent: -1.1em;
text-align: left;
font-size:14px;
line-height:28px;
width: 100%;
}

.ticket .salesbox {
  display: table;
  margin: 0 auto;
}


.ticket .salesbox .title {
  font-weight: 400;
  font-size: 18px;
}
.ticket .salesbox .subtitle {
  font-size: 14px;
  margin-bottom: 0;
  text-align:left;
}
.ticket .salesbox .subtitle2 {
  font-size: 14px;
  margin-bottom: 30px;
  text-align:left;
}
.ticket .salesbox .subtitle3 {
  font-size: 14px;
  margin-bottom:20px;
    text-align: center;
}

.ticket .salesbox .marker-border{
    background:linear-gradient(transparent 80%, #c9bc9c 0%);
}
  .ticket .salesbox ul.caution {
        margin: 0 auto 30px;
        padding: 0;

    }

.ticket .salesbox ul.caution li {
        list-style: none;
        padding-left: 1em;
        text-indent: -1em;
        text-align: left;
        font-size: 14px;
    }
	
	


.ticket .ticketbox ul.caution {
        margin: 0 auto 20px;
        padding: 0;
}
.ticket .ticketbox ul.caution li {
        list-style: none;
        padding-left: 1em;
        text-indent: -1em;
        text-align: left;
        font-size: 14px;
}

section.ticket .frame {
padding: 15px;
max-width: 800px;
width: 100%;
margin: 40px auto 0;
}
section.ticket .frame .title {
font-size: 16px;
line-height: 26px;
margin-bottom: 0;
}

section.ticket .text  {
  font-size: 14px;
  text-align: left;
line-height: 28px;
}


section.ticket .txt  {
  font-size: 14px;
  text-align: left;
line-height: 20px;
}
section.ticket .txt#mb  {
margin-bottom: 20px;
}

section.ticket .caution {
text-indent: -0.9em;
padding-left: 0.9em;
font-size: 12px;
text-align: left;
}
	
	
section.ticket .frame ul.talk li {
        list-style: none;
        padding-left: 0.9em;
        text-indent: -0.9em;
        text-align: left;
        font-size: 14px;
        line-height: 22px;
        margin-bottom: 5px;
    }
section.ticket .frame .lead {
	text-align: center;
	font-size: 18px;
}
section.ticket .frame .lead#mt {
	padding-top: 20px;
}
section.ticket .frame .text {
    font-size: 14px;
    line-height: 24px;
    padding-bottom: 10px;
    margin-bottom: 20px;
    width: 100%;
}
.ticket .frame .button {
        background: linear-gradient(-20deg, #969fa9 0%, #d4dbe1 50%, #a7b0ba 100%);
        color: #000;
        border-radius: 10px;
        font-size: 16px;
        position: relative;
        place-items: center;
        line-height: 33px;
        margin: 10px 0;
    }
.ticket .kind {
    font-size: 20px;
    line-height: 22px;

}
.ticket .kind#streaiming {
margin-top: 40px;
}
}

@media screen and (max-width:394px) {
 section.ticket h2:before {
content: "";
width: 340px;
height: 60px;
display: block;
position: absolute;
top: calc(50% - 30px);
left: 50%;
transform: translateX(-50%);
background-image: url(../img/star_g_wide.svg);
background-position: center;
background-repeat: no-repeat;
background-size: 100% 100%;
pointer-events: none;
margin: 0;
    }

.ticket h4.head-border {
    display: flex;
    align-items: center;
	justify-content: center;
    padding: 0;
white-space: nowrap;
}
 
.ticket h4.head-border:before,
.ticket h4.head-border:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    position: static;
    display: flex;
}



}
  

/* modal */
*{
  margin: 0;
  padding: 0;

}

.modal_box {

  margin: 50px auto 0;
  max-width: 1000px;
}

.modal_txt {
  margin-bottom:20px;
  text-align:center;
  padding: 10px;
  border: 1px solid #ccc;
	color: #fff;
  border: 1px solid #969fa9;
}

.modal_txt a {
	color: #969fa9;
}

/* モーダル全体(背景＋本体) */
.modal{
  display: none;
  position: fixed;
  top: 0;
  height: 100vh;
  width: 100%;
	z-index:99999999;
}

/* モーダル背景 */
.modal-bg{
  position: absolute;
  height: 100vh;
  width: 100%;
  background: rgba(0, 0, 0, 0.8);
}

/* モーダル本体 */
.modal-content{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  overflow: scroll; /* はみ出た部分はスクロールさせる */
  height: 80%;/* これが無いと「overflow:scroll」が利かない */
  width: 80%;/* これが無いと「overflow:scroll」が利かない */

  padding: 40px;
}

.modal-content a {
color: #ccc;
}

.modal-content .title {
  font-weight:bold;
  margin: 30px 0;
  text-align:center;
  color: #fff;
}
.modal-content .subtitle {
margin-bottom:20px;
font-size:14px;
color: #fff;
}

.modal-content .txt {
  margin-bottom:20px;
  font-size:14px;
text-align: left;
}
.modal-content .txt2 {
  font-size:14px;
text-align: left;
}

.modal-content ul.caution {
  margin: 0 auto 20px;
  padding: 0;
  color: #fff!important;
}
.modal-content ul.caution li {
  list-style: none;
  padding-left: 1em;
  text-indent: -1em;
  text-align: left;
  margin-bottom: 10px;
  color: #fff!important;
    font-size:14px;
}
.modal-content ul.caution#nospace {
  margin: 0 auto;
}

.js-modal-close {
  float: right!important;
}
	
	.modal-content a {
		color: #969fa9!important;
	}
	

/* モーダルウィンドウ表示中に記事本体を固定 */
body.fixed {
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
}



@media screen and (max-width: 768px) {
.modal_box {
  margin: 40px auto 0;
    padding: 0;
}
.modal-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    overflow: scroll;
    height: 90%;
    width: 90%;
    padding: 0;
}


.modal_txt {
  margin-bottom:20px;
  font-size:14px;
}
.modal-content ul.caution li {

    margin-bottom: 5px;
    color: #fff !important;
    font-size: 14px;
}
}
/*=======================================================
news
 =======================================================*/


/*アコーディオン全体*/




.news .accordion-area{
    list-style: none;
    width: 100%;
    max-width: 900px;
    margin:0 auto;

}
.news .accordion-area li {
	margin-bottom: 15px;
}

.news .accordion-area h1 {
	font-size: 24px;
	font-weight: bold;
	text-align: left;

}
.news .accordion-area h2 {
	font-size: 22px;
	font-weight: bold;
	text-align: left;
	margin-bottom: 0;
}
.news .accordion-area h3 {
	font-size: 20px;
	font-weight: bold;
	text-align: left;
}

.news .accordion-area h4 {
	font-size: 18px;
	font-weight: bold;
	text-align: left;
	margin-bottom: 0;
}
.news .accordion-area h5 {
	font-size: 16px;
	font-weight: bold;
}
.news .accordion-area h6 {
	font-size: 14px;
	font-weight: bold;
}
.news .accordion-area p {
	font-size: 16px;
	
}
.news .accordion-area .box ol li {
list-style: decimal;
}

.news .accordion-area .box ul li {
    list-style: disc;
}

.news .accordion-area section {
  border: 1px solid #fff;
  padding:0;
}

.news .accordion-area .contents_wrap {
  padding:0!important;
}

/*アコーディオンタイトル*/

.news .title {
    position: relative;/*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    font-size:1rem;
    font-weight: normal;
    padding: 3% 6% 3% 3%;
    transition: all .5s ease;
  color: #fff;
  text-align: left;
  margin-bottom:0;
}

/*アイコンの＋と×*/

.news .title::before,

.news .title::after{
    position: absolute;
    content:'';
    width: 15px;
    height: 2px;
    background-color: #fff;
    
}

.news .title::before{
    top:48%;
    right: 30px;
    transform: rotate(0deg);
    
}

.news .title::after{    
    top:48%;
    right: 30px;
    transform: rotate(90deg);

}
/*　closeというクラスがついたら形状変化　*/

.news .title.close::before{
  transform: rotate(45deg);
}

.news .title.close::after{
  transform: rotate(-45deg);
}

/*アコーディオンで現れるエリア*/
.news .box {
    display: none;/*はじめは非表示*/
    /*background: #f3f3f3;*/
	color: #fff;
  margin: 0;
    padding: 0 3% 3% 3%;
  text-align: left;
}
.news .box .text {
	color: #fff;
  text-align: left;
  margin-bottom:20px;
  font-size: 16px;
  line-height: 24px;
  display: block;
}
.news .box .text#right {
	text-align: right;
}
.news .box .lead {
	color: #fff;
  text-align: left;
  margin-bottom:0;
  font-size: 14px;
}

.news ul.lists {
  list-style: none;
  margin-bottom: 20px;
	color: #fff;
  text-align: left;
  font-size: 14px;
  line-height: 24px;
}
.news ul.lists li {
  position: relative;
  padding-left: 16px;
}
.news ul.lists li:before {
  content: "・";
  left: 0;
  position: absolute;
}



.news ul.caution {
  list-style: none;
  margin-bottom: 20px;
  color:  #fff;
  text-align: left;
  font-size: 14px;
  line-height: 24px;
}
.news ul.caution li {
  position: relative;
  padding-left: 16px;
}
.news ul.caution li:before {
 content: "※";
  left: 0;
  position: absolute;
}

.news ul.caution {
  list-style: none;
  margin-bottom: 20px;
  color:  #fff;
  text-align: left;
  font-size: 14px;
  line-height: 22px;
}
.news ul.caution li {
  position: relative;
  padding-left: 16px;
  margin: 0;
}
.news ul.caution li:before {
  content: "※";
  left: 0;
  position: absolute;
}


.news .indent {
  font-size: 14px;
  padding-left: 14px;
  text-indent: -14px;
  margin-bottom:0;
}

.news a {
    color: #a7b0ba;
}
.contents_btn {
  color: #000;
  cursor:pointer;
  text-align: center;
}

.news ul.newslist {
  width: 100%;
  display:flex;
  justify-content:left;
  align-items:left;
}

.news ul.newslist li:nth-child(odd) {
  width: 100px;
  justify-content:left;
 align-items: flex-start;
}
.news ul.newslist li:nth-child(even) {
  width: calc( 100% - 100px );

}
@media screen and (max-width:768px) {
  .news ul.newslist {
  display: flex;
  flex-wrap: wrap;
}
.news ul.newslist li {
  line-height:  24px;
  padding:  30px 0;
  border-bottom:  1px solid #fff;

}
.news .title::before {
    top: 48%;
    right: 20px;
    transform: rotate(0deg);
}
.news .title::after {
    top: 48%;
    right: 20px;
    transform: rotate(90deg);
}
.news ul.newslist li a {
  text-decoration: none;
  color: #F9F0E7;
}
.news ul.newslist li:nth-child(odd) {
width:  100%;
color:  #fff;
  border-bottom:  none!important;
      padding: 0;
}

.news ul.newslist li:nth-child(even) {
width:  100%;
color:  #fff;
      padding: 0;
      border-bottom:  none!important;
}
.news .box .text {
  color: #fff;
  text-align: left;
  margin-bottom:20px;
  font-size: 14px;
  line-height: 24px;
  display: block;
}
.news .title {
    position: relative;/*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    font-weight: normal;
    padding: 10px 40px 10px 10px;
    transition: all .5s ease;
  color: #fff;
  text-align: left;
  margin-bottom:0;
font-size: 14px;
}

.news .accordion-area h1 {
	font-size: 22px;
	font-weight: bold;
	text-align: left;

}
.news .accordion-area h2 {
	font-size: 20px;
	font-weight: bold;
	text-align: left;
	margin-bottom: 0;
}
.news .accordion-area h3 {
	font-size: 18px;
	font-weight: bold;
	text-align: left;
}

.news .accordion-area h4 {
	font-size: 16px;
	font-weight: bold;
	text-align: left;
	margin-bottom: 0;
}
.news .accordion-area h5 {
	font-size: 14px;
	font-weight: bold;
}
.news .accordion-area h6 {
	font-size: 12px;
	font-weight: bold;
}
.news .accordion-area p {
	font-size: 14px;
	
}
}

/* ====================================

btn

======================================= */

.center {
  margin:  50px auto 130px;
  text-align: center;
}

.btn {
    line-height: 18px;
    font-size: 24px;
    text-decoration: none;
    font-weight: bold;
    /*background:#324EB3;*/
    border: 1px solid #ed9047;
    padding: 20px 0;
    text-align: center;
    position: relative;
    transition: .3s;
    width: 320px;
    color:#ed9047;

    display: inline-block;
    font-weight: 400;
}

.btn:after {
    content: url(../img/arrow.svg);
    position: absolute;
    top: 28%;
    right: 15px;
    margin: auto;
}

.btn:hover {

    color: #ed9047!important;
}

.btn:hover:after {
    content: url(../img/arrow.svg);
    position: absolute;
    top: 30%;
    right: 10px;
    margin: auto;
    animation: slidein 1s infinite;
}


@media screen and (max-width: 768px) {
.center {
  margin:  30px auto;
  text-align: center;
}
  .btn {
    line-height: 18px;
    font-size: 18px;
    text-decoration: none;
    font-weight: bold;
    /*background:#324EB3;*/
    border: 1px solid #F9F0E7;
    color: #F9F0E7!important;
    padding: 12px 0;
    text-align: center;
    position: relative;
    transition: .3s;
    width: 90%;


    display: inline-block;
    font-weight: 400;
}

.btn:after {
    content: url(../img/arrow.svg);
    position: absolute;
    top: 30%;
    right: 15px;
    margin: auto;
}

.btn:hover {

    color: #fff!important;
}

.btn:hover:after {
    content: url(../img/arrow.svg);
    position: absolute;
    top: 30%;
    right: 10px;
    margin: auto;
    animation: slidein 1s infinite;
}

}


.archive ul.archivelist {
  display:flex;
  justify-content:center;
  align-items: center;
  margin: 0 auto 80px;
  width: 100%;
  max-width: 1000px;
  flex-wrap: wrap;
}


.archive ul.archivelist li {
width: 31%;
margin-right: 3.5%;

}

.archive ul.archivelist li:nth-child(3n) {
margin-right: 0;
}



/* sns */

ul.sns {
  padding: 25px 0 10px;
  max-width: 800px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: 0 auto;
}

ul.sns li {
  font-family: 'Lato', sans-serif;
    font-size: 16px;
    line-height: 30px;
    font-weight:100;
    margin-right: 15px;
  }
ul.sns li:last-child {
  
      margin-right: 0;
    }
  

ul.sns img {
      margin:0 5px;
	width: 30px;
	height: auto;
      }
  ul.sns .fa-brands {
        font-weight: 400;
        font-size: 30px;
}


/*=======================================================
guidance
 =======================================================*/
section.guidance {
width: 100%;
	max-width: 1000px;
}
section.guidance .pic_goods {
	margin-bottom:30px;
}
section.guidance#second {
	padding-top: 20px!important;
	
}

section.guidance .title {
	text-align: left;
	font-size: 18px;
	margin-bottom: 30px;
}

section.guidance .subtitle {
	text-align: left;
	font-size: 16px;
	margin-bottom: 0;
	font-weight: bold;
}



section.guidance .txt {
	text-align: left;
	font-size: 16px;
	margin-bottom: 20px;
	line-height: 24px;
}
section.guidance .txt2 {
	text-align: left;
	font-size: 16px;
	line-height: 24px;
}
section.guidance .txt3 {
	text-align: left;
	font-size: 16px;
	margin-bottom: 30px;
	line-height: 26px;
}

section.guidance .txt_b {
		text-align: left;
	font-size: 16px;
	margin-bottom: 20px;
	line-height: 24px;
	font-weight:bold;
}


section.guidance .red {
	text-align: left;
	font-size: 16px;
	margin-bottom: 0;
	color:#ccc;
}


section.guidance .txt_nospace{
	text-align: left;
	font-size: 16px;
	margin-bottom: 0;
}
section.guidance  ul.caution {
    margin: 0 auto 20px;

	
}

section.guidance  ul.caution#nospace {
    margin: 0 auto;

	
}
section.guidance  ul.caution li {
        list-style: none;
        padding-left: 1.2em;
        text-indent: -1.2em;
        text-align: left;
        margin-bottom: 0;
        color: #000!important;
        font-size: 16px;
    }
section.guidance a {
color:#cd2570;
}

section.guidance .enphasize {
	font-weight: bold;
}

section.guidance .enphasize.red {
	color: #ff0000;
	margin-bottom: 30px;
}

@media screen and (max-width:768px) {
	
section.guidance .title {
	text-align: left;
	font-size: 16px;
	margin-bottom: 20px;
}

section.guidance .subtitle {
	text-align: left;
	font-size: 14px;
	margin-bottom: 0;
	font-weight: bold;
}



section.guidance .txt {
	text-align: left;
	font-size: 14px;
	margin-bottom: 20px;
}
section.guidance .txt2 {
	text-align: left;
	font-size: 14px;

}
section.guidance .txt2 {
	text-align: left;
	font-size: 14px;
	margin-bottom: 20px;
}
	section.guidance .txt_b {
	text-align: left;
	font-size: 14px;
	margin-bottom: 20px;
	font-weight:bold;
}

section.guidance .txt_nospace{
	text-align: left;
	font-size: 14px;
	margin-bottom: 0;
}
section.guidance  ul.caution {
    margin: 0 auto 20px;

	
}
section.guidance  ul.caution li {
        list-style: none;
        padding-left: 1em;
        text-indent: -1em;
        text-align: left;
        margin-bottom: 0;
        color: #000!important;
        font-size: 14px;
    }
section.guidance a {
color: #cd2570;;
}
}

/*アコーディオン全体*/
.ticket .accordion-area{
    list-style: none;
    width: 100%;
    max-width: 800px;
    margin:0 auto;
}


.ticket .accordion-area li{
    margin: 0;
}

.ticket .accordion-area li section {
	margin: 0 0 40px 0;
}

.ticket .accordion-area li section#top {
	margin: 40px 0 40px 0;
}


/*アコーディオンタイトル*/
.ticket .accordion-area .titles {
position: relative;
    cursor: pointer;
    font-size: 16px;
    font-weight: normal;
    padding: 0;
    transition: all .5s ease;
    text-align: center;
    margin-bottom: 30px;
    background: #cd2570;
    color: #fff;
    padding: 5px 0;
    border-radius: 10px;
    width: 100%;
	max-width: 630px;
    margin: 0 auto 40px;

	
}
.ticket .accordion-area .titles .arrow {
    position: absolute;
    background-color: #fff;
    width: 12px;
    height: 10.4px;
    top: 12px;
    margin-left: 5px;
    -webkit-clip-path: polygon(0 0, 50% 100%, 100% 0);
    clip-path: polygon(0 0, 50% 100%, 100% 0);
    transition: .5s;
		right: 15px;
}
	
.ticket .accordion-area .titles:hover .arrow {
    background-color: #fff;
}

.ticket .accordion-area .titles.close .arrow {
    transform: rotate(180deg);
    transform-origin: center 4.5px;
}


	
.ticket .accordion-area .title .small {
	font-size: 16px;
}


.ticket .accordion-area .box .subtitle {
  font-size: 20px;
	line-height: 30px;
  margin-bottom: 0;
  text-align:left;
	color: #000;
}

.ticket .accordion-area .box ul.caution {
        margin: 0 auto 30px;
        padding: 0;
    }

.ticket .accordion-area .box ul.caution#topspace {
	margin-top:30px;
}

.ticket .accordion-area .box ul.caution#nospace {
        margin: 0 auto;
        padding: 0;
    }

.ticket .accordion-area .box ul.caution li {
        list-style: none;
        padding-left: 1em;
        text-indent: -1em;
        text-align: left;
        font-size: 16px;
	line-height: 24px;
    }
/*　closeというクラスがついたら形状変化　*/

.ticket .title.close::before{
  transform: rotate(45deg);
}

.ticket .title.close::after{
  transform: rotate(-45deg);
}

/*アコーディオンで現れるエリア*/
.ticket .box {
    display: none;/*はじめは非表示*/
  margin: 0;
    padding: 0;
	text-align: left;
	width: 100%;
	background: transparent;
}

@media screen and (max-width:768px) {
.ticket .accordion-area .box ul.caution li {
    list-style: none;
    padding-left: 1em;
    text-indent: -1em;
    text-align: left;
    font-size: 14px;
    line-height: 18px;
}
    .ticket .salesbox .subtitle {
        font-size: 14px;
        margin-bottom: 20px;
        text-align: left;
		line-height: 18px;
    }
.ticket .accordion-area .titles {

    font-size: 14px;

}
}
/*=======================================================
movie
=======================================================*/

.movie {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
}

.movie .title {
	font-size: 30px;
	text-align: center;
	margin-top: 30px;
}
.movie .text {
	font-size: 18px;
	text-align: center;
}

.movie-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
}

.movie-wrap iframe {
  width: 100%;
  height: 100%;
}

section.movie ul.list_center {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  font-size: 18px;
  margin-bottom: 30px;
}
section.movie ul.list_center li {
 line-height: 30px;
}

section.movie ul.list_center li.left {
  width: calc( 50% - 20px );
  text-align: right;

}


section.movie ul.list_center li.line {
  width: 40px;
  text-align: center;
}

section.movie ul.list_center li.line img {
  vertical-align: middle;
  width: 30px;
}


section.movie ul.list_center li.right {
  width: calc( 50% - 20px );
  text-align: left;

}

.movie .button {
    background: linear-gradient(-20deg, #969fa9 0%, #d4dbe1 50%, #a7b0ba 100%);
    color:#000;
    border-radius: 0;
    font-size: 18px;
    position: relative;
    place-items: center;
    line-height: 36px;
    margin: 10px 0;
	max-width: 400px;
	text-align: center;
	margin: 0 auto;
}
.movie .button a {
	color: #000;
}



.movie .button:after {
	position: absolute;display: block;content: "";
	top: 9px;
	width: 1em;
	height: 1em;background: no-repeat center url(../img/icon_arrow_r.svg);
	background-size: contain;
	-webkit-transition: .2s;
	transition: .2s;
	right: 10px;}
.ticket .salesbox .button#bottom {
margin-bottom: 40px;
}
.movie-wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.movie-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
}
.movie-wrap video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.movie-wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  overflow: hidden;
}

.movie-wrap video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 1260px) {
  .movie {
    padding: 0 30px;
  }
}

@media screen and (max-width: 768px) {
  .movie {
    padding: 0 15px;
  }
.movie .button {
    background: linear-gradient(-20deg, #969fa9 0%, #d4dbe1 50%, #a7b0ba 100%);
    color: #000;
    border-radius: 0;
    font-size: 16px;
    position: relative;
    place-items: center;
    line-height: 33px;
    margin: 10px 0;
	max-width: 100%;
}
.movie .button#bottom {
margin-bottom: 30px;
}
}

#wp-block-themeisle-blocks-advanced-heading-84bfa495 {
	color: #fff!important;
    font-family: DM Serif Display;
    font-weight: 400;
    font-style: normal;
    text-transform: none;
    font-size: 80px;
    --text-align: center;
    --text-align-tablet: center;
    --text-align-mobile: center;
}