.pc {
  display: none;
}
.sp {
  display: block;
}
.l-contents {
  padding: 0 0 16vw;
}
.l-contents .inner {
  padding: 17.33vw 5.33vw 8vw;
  width: 90%;
  box-sizing: border-box;
}
.l-contents section {
  padding: 21.33vw 0 0;
}
.l-contents section + section,
.l-contents section#about {
  margin-top: 0;
}

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(26.67vw);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes UpAnime {
  from {
    opacity: 1;
	transform: translateY(0);
  }
  to {
    opacity: 0;
	transform: translateY(-26.67vw);
  }
}
@keyframes DownAnime {
  from {
    opacity: 0;
    transform: translateY(-26.67vw);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* 共通タイトル */
.title-container {
  top: -12vw;
  width: 90vw;
  height: 23vw;
  background-image: url(../../img/sp/bg-title.png);
}
.title-container .title-inner h2 {
  font-size: 7.47vw;
}
.title-container .title-inner p {
  margin-top: 0.53vw;
  font-size: 3.47vw;
}

/* ヘッダー */
.sp-header {
  display: none;
}
.sp-header.active {
  display: inline-block;
}
.sp-header {
  width: 100%;
  position: fixed;
  top: 0;
  z-index: 1000;
  padding: 8vw;
  box-sizing: border-box;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow-y: auto;
  background-color: #262626;
}
.sp-header .inner {
  text-align: center;
}
.sp-header .logo {
  width: 67.33vw;
  margin: 0 auto;
}
.sp-header .sns-link ul li {
  width: 8.8vw;
  height: auto;
}
.sp-header .globalnav {
  margin-top: 6.66vw;
}
.sp-header .globalnav li {
  border-top: 0.27vw solid #ffffff;
  padding: 7vw 0;
}
.sp-header .globalnav li:last-of-type {
  border-bottom: 0.27vw solid #ffffff;
}
.sp-header .globalnav li a {
  font-size: 5.33vw;
  color: #fff;
}
.sp-header .sns-link {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 8vw;
}
.sp-header .sns-link p {
  font-size: 2.933vw;
  color: #fff;
  padding-right: 0.666vw;
}
.sp-header .sns-link ul {
  display: flex;
  justify-content: center;
  align-items: center;
}
.sp-header .sns-link ul li {
  padding: 0 2vw;
}

/* 言語切り替え */
.langbuttons {
  color: #fff;
  font-size: 5.2vw;
  margin-top: 5.333vw;
}

/* ハンバーガーメニュー */
.openbtn1-container {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 2000;
}
.openbtn1{
  position: relative;
  background:#262626;
  cursor: pointer;
  width: 16vw;
  height: 16vw;
}
.openbtn1 span{
  display: inline-block;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  height: 1.07vw;
  background: #fff;
  width: 8vw;
  transition: all .4s;
  }
.openbtn1 span:nth-of-type(1) {
  top: 4vw;
}
.openbtn1 span:nth-of-type(2) {
  top: 7.47vw;
}
.openbtn1 span:nth-of-type(3) {
  bottom: 4vw;
}
.openbtn1.active span:nth-of-type(1) {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
}
.openbtn1.active span:nth-of-type(2) {
  opacity: 0;
}
.openbtn1.active span:nth-of-type(3){
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}

/* メインビジュアル */
main {
  padding-top: 0;
}
.mainvisual {
  background-image: url(../../img/sp/bg-mainvisual.jpg);
  height: 189.33vw;
}
.mainvisual.en {
  background-image: url(../../img/sp/bg-mainvisual_en.jpg);
}
.mainvisual .mvTitle {
  display: none;
}
.mainvisual .notice {
  width: 100%;
  height: 20vw;
  bottom: -20vw;
  left: 0;
  padding: 5.33vw 16vw 5.33vw 6.66vw;
}
.mainvisual .notice .title {
  font-size: 3.2vw;
}
.mainvisual .notice .js-modal-open {
  max-width: 100%;
  font-size: 2.93vw;
  margin-top: 2.66vw;
}
.mainvisual .logo {
    top: 5.33vw;
    right: 2.67vw;
    width: 21.33vw;
}
.mvLink {
  left: 5.33vw;
  bottom: 5.33vw;
}
.mvLink a {
  padding: 2.67vw 0;
  width: 37.33vw;
  font-size: 4.27vw;
}

/* お知らせ */
.l-contents .news {
  padding: 8vw 0;
}
.l-contents .news .inner {
  display: block;
  width: 90%;
}
.news .inner {
  width: 90%;
  margin: 0 auto;
  display: block;
}
.news .title {
  display: flex;
  justify-content: center;
  align-items: center;
}
.news .title h2 {
  font-size: 5.6vw;
}
.news .title p {
  font-size: 3.73vw;
  margin-top: 0;
  margin-left: 4vw;
}
.news dl {
  width: 100%;
  margin-top: 8vw;
}
.news dl dt,
.news dl dd {
  width: 100%;
  font-size: 3.73vw;
  float: none;
}
.news dl .news-item + .news-item dt {
  border-top: 0.27vw dashed #fff;
}
.news dl .news-item + .news-item dd {
  border-top: none;
}
.news dl .news-item:first-child dt {
  padding: 0 2.66vw 3.33vw;
}
.news dl .news-item dt {
  padding: 3.33vw 2.66vw;
}
.news dl .news-item dd {
  padding: 0 2.66vw 3.33vw;
}

/* ABOUT */
#about h3 {
  font-size: 4.27vw;
  line-height: 1.7;
}
#about h3.en{
  font-size: 4vw;
}
#about h4 {
  margin-bottom: 5.33vw;
  font-size: 5.6vw;
}
#about .description {
  margin: 8vw auto;
  width: auto;
  font-size: 3.73vw;
}
#about .description .description-text {
  width: auto;
}
/* movie */
#about .movie-container img {
  width: 80vw;
}
#about .movie-container p {
  margin-top: 5.333vw;
  font-size: 2.8vw;
  line-height: 150%;
}
#movie {
  margin-top: -60vw;
  padding-top: 60vw;
}
.youtube {
  width: 100%;
  height: calc(100vw * 0.5625);
}

/* プログラム */
#setlist {
  margin-top: -60vw;
  margin-bottom: 10vw;
  padding-top: 60vw;
  font-size: 4.27vw;
}
#setlist h4 {
  font-size: 5.6vw;
}
.setlist-list {
  margin: 8vw auto 0;
  width: auto;
}
#setlist .setlist-list li {
  line-height: 1.5;
}
#setlist .setlist-list span {
  font-size: 3.73vw;
}
#setlist .note {
  font-size: 3.2vw;
}

/* スライダー */
.slider-container {
  margin-top: 20vw;
}
.slider-container h4 {
  font-size: 5.6vw;
}
.slider-container .caption {
  font-size: 2.4vw;
  line-height: 1.5;
  margin-top: 7.333vw;
}
.slider {
  width: 86%;
  margin: 8vw auto 0;
}
.slick-prev,
.slick-next {
  top: 44%;
}
.slick-prev {
  width: 8.666vw;
  height: 12vw;
  left: -4vw;
}
.slick-next {
  width: 8.666vw;
  height: 12vw;
  right: -4vw;
}
.slick-dots {
  margin-top: 6.666vw;
}
.slick-dots li {
  display: inline-block;
  margin: 0 1.333vw;
}
.slick-dots button {
  width: 10vw;
  height: 0.8vw;
}

/* MESSAGE */
#message .contents .name {
  padding: 2.67vw 0;
  width: auto;
  font-size: 3.73vw;
}
#message .contents .text {
  width: auto;
  font-size: 3.73vw;
}

/* OUTLINE */
#outline h3 {
  font-size: 4.27vw;
}
#outline h3 span {
  font-size: 3.2vw;
}
#outline .information {
  width: auto;
  font-size: 3.73vw;
}
#outline .information dt {
  padding-left: 0;
  font-size:22px;
  margin-bottom:4vw;
}
#outline .information dd {
  padding-left: 0;
  font-size:20px;
  margin-bottom:10vw;
}
#outline .information-access dd {
  font-size: 3.73vw;
}
#outline .outline-contact,
#outline .outline-info{
  text-align: left;
  font-size: 3.4vw;
}
#outline .contact {
  margin-top: 6.666vw;
}
#outline .contact .title {
  font-size: 2.8vw;
}
#outline .contact .company {
  font-size: 2.8vw;
  margin-top: 1.666vw;
}
#outline .contact .link {
  font-size: 3.2vw;
  margin-top: 2.666vw;
}
#outline .contact .note {
  font-size: 3.2vw;
  margin-top: 2.666vw;
}
#outline .map {
  width: 100%;
  height: 0;
  padding-top: 75%; /* 比率を4:3に固定 */
}
#outline .map iframe {
  position: absolute;
  top: 0;
  left: 0;
}
#outline .mapLink {
  margin: 2.67vw auto 5.33vw;
  font-size: 3.2vw;
}
#outline .file_link {
  font-size: 3.2vw;
}

/* SCHEDULE */
#schedule .information {
  margin-bottom: 8vw;
}
#schedule .live-title {
  font-size: 6vw;
}
#schedule .information-item {
  font-size: 3.73vw;
  letter-spacing: 0.05em;
}
#schedule .information dd.en {
  font-size: 3.73vw;
}
#schedule .note {
  font-size: 3.2vw;
}

/* TICKET */
#ticket {
  font-size: 3.73vw;
}
#ticket h3.contents-title {
  font-size: 4.27vw;
}
#ticket .contents-table th {
  display: block;
  margin-bottom: 0.5em;
  width: auto;
  text-align: center;
  font-size: 3.73vw;
}
#ticket .note,
.playguide-contact {
  font-size: 2.67vw;
}
#ticket .contents-table td .ticket-price,
#ticket .contents-table td .ticket-price span,
#ticket .contents-table td .playguide-title {
  font-size: 4.8vw;
}
#ticket .contents-table.delivery td .ticket-price,
#ticket .contents-table.delivery .area td,
#ticket .contents-table.delivery .period td,
#ticket .contents-table.delivery .archive td,
#ticket .contents-table.delivery .url td,
#ticket .contents-table.delivery .contactus td {
  text-align: center;
}
#ticket .contents-table.delivery .area td,
#ticket .contents-table.delivery .period td,
#ticket .contents-table.delivery .archive td,
#ticket .contents-table.delivery .url td,
#ticket .contents-table.delivery .contactus td {
  display: block;
}
#ticket .contents-table td .playguide-title {
  text-align: center;
}
#ticket .link-play-guide a {
  display: block;
  margin: 0 auto;
  width: 90%;
  line-height: 1.5;
  border-radius: 7.93vw;
}
.playguide-schedule {
  margin: .5em auto 1em;
  font-size: 4.8vw;
}
.playguide-contact {
  text-align: center;
}
.playguide-link-note {
  font-size: 3.73vw;
}
.ticket-link {
  margin: 0.5em 0 1em;
}
#ticket h4 {
  margin: 5.33vw 0 1em;
  font-size: 4.8vw;
}
#ticket h4 + p {
  line-height: 2;
}

/* CAST */
#cast .guest iframe {
  margin: 0 auto 13.33vw;
}
#cast .cast-title {
  margin: 8vw 0 4vw;
  padding: 1.6vw 3.2vw 3.2vw;
  width: auto;
  font-size: 3.73vw;
  line-height: 1.5;
}
#cast .cast-title.capjams-title,
#cast .cast-title.guest-title {
  margin: 8vw 0 4vw;
}
#cast .cast-title.mc-title {
  margin: 13.33vw 0 4vw;
}
#cast .cast-title.mc-title,
#cast .cast-title.guest-title {
  font-size: 3.73vw;
}
#cast .cast-title img {
  width: 50%;
}
#cast .cast-item {
  padding: 5.33vw 0;
}
#cast .cast-item:first-child {
  padding: 0 0 5.33vw;
}
#cast .cast-item .instrument {
  margin-bottom: 2.67vw;
  font-size: 3.2vw;
}
#cast .cast-item .name {
  font-size: 3.73vw;
}
#cast .capjams,
#cast .mc-detail,
#cast .guest-detail {
  display: block;
  width: auto;
}
#cast .mc + .mc,
#cast .guest + .guest {
  margin-top: 2em;
}
#cast .capjams .capjams-img,
#cast .mc .mc-img,
#cast .guest .guest-img {
  flex-basis: auto;
}
#cast .capjams .capjams-img {
  margin-bottom: 2.67vw;
}
#cast .mc .mc-img,
#cast .guest .guest-img {
  margin: 0 auto 3em;
  width: 60%;
}
#cast .capjams .capjams-text,
#cast .mc .mc-text,
#cast .guest .guest-text {
  flex-basis: auto;
  font-size: 3.2vw;
}
#cast .mc .role,
#cast .guest .role {
  margin-bottom: 2.67vw;
  font-size: 3.2vw;
}
#cast .mc .name,
#cast .guest .name {
  font-size: 3.73vw;
}
#cast .mc-about.en .name,
#cast .mc .job,
#cast .guest-about.en .name,
#cast .guest .job {
  font-size: 3.2vw;
  letter-spacing: 0.05em;
}
#cast .mc-about.en .name {
  margin: 0 0 1em;
  font-size: 3.73vw;
}
#cast .guest-about.en .name {
  font-size: 3.73vw;
}
#cast .mc .job {
  margin: 1em 0;
}
#cast .guest .job {
  margin: .5em 0 1em;
}
#cast .comment {
  font-size: 3.2vw;
}

/* GOODS */
#goods .contents p.copy {
  font-size: 3.2vw;
  text-align: left;
}
#goods .contents p.note {
  font-size: 2.67vw;
}
#goods h3 {
  font-size: 6.666vw;
}
#goods .contents {
	/* margin:0 10vw; */
  margin: 0 auto;
  width: 80vw;
}
#goods h3.contents-title{
  font-size:5vw;
}
#goods ul.goodslist li{
  width: 100%;
  margin-right:0%;
  margin-bottom:50px;
}
#goods ul.goodslist li h3{
  font-size: 4.666vw;
    margin: 3vw auto;
}
#goods ul.goodslist li .price{
  font-size: 3.5vw;
    margin: 2vw;
}
/* #goods ul.goodslist li .goods_txt{
  font-size: 4vw;
    margin: 2vw;
} */
/* #goods ul.goodslist li .size{
  font-size: 3.5vw;
  margin: 10px 0;
} */

/* Twitter */
#twitter .tag {
  font-size: 3.2vw;
  text-align: center;
  line-height: 2;
}

/* footer */
footer .company {
  font-size: 2.67vw;
}
footer .link-container {
  width: 100%;
  display: block;
  margin: 9.333vw auto 0;
}
footer .link-container li {
  width: 100%;
}
footer .link-container li + li {
  margin-top: 4vw;
}
footer .copyright {
  margin-top: 0;
  padding: 5vw 0;
  font-size: 2.8vw;
  line-height: 1.6;
}

#page_top p {
  font-size: 3.2vw;
  margin-top: 2vw;
}
#page_top img {
  width: 20vw;
}