@charset "UTF-8";
/* ----------------------------------------------------------------
    intro
  ----------------------------------------------------------------- */
body.home .wrap {
 overflow: hidden;
}
body #bg-movie {
 overflow: hidden;
 position: fixed;
 pointer-events: none;
 top: 0;
 width: 100%;
 z-index: -9999;
}
.video {
 height: 100vh;
 overflow: hidden;
 position: absolute;
 width: 100%;
 z-index: -999;
}
.video .intro-copy {
 color: #fff;
 font-family: 'Noto Serif JP', serif;
 font-size: 24px;
 font-weight: 700;
 letter-spacing: 0.7em;
 /*-webkit-writing-mode: vertical-rl;
 -ms-writing-mode: tb-rl;*/
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
 /*writing-mode: vertical-rl;*/
 white-space: nowrap;
}
.video .intro-copy {
 display: block;
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
 width: 200px;
}
.video .intro-copy img {
 width: 100%;
}
.video .intro-copy2 {
 display: block;
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
 width: 300px;
}
.video .intro-copy2 img {
 width: 100%;
}
.video-wrap {
 position: absolute;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
 overflow: hidden;
}
#bg-video {
 position: absolute;
 top: 50%;
 left: 50%;
 object-fit: cover;
 transform: translate(-50%, -50%);
 width: 100%;
 height: 100%;
 z-index: -9999;
}
#bg-video_sp {
 position: fixed;
 top: 50%;
 left: 50%;
 object-fit: cover;
 transform: translate(-50%, -50%);
 width: 100%;
 height: 100%;
 z-index: -99999;
}
/* IE対応 */
@media screen\0 {
 .video {
  display: none;
 }
}
@media only screen and (max-width: 1024px) {
 .video {
  position: fixed;
 }
 .video .logo {
  width: 66.6%;
 }
}
@media only screen and (max-width: 767px) {
 .video {
  position: absolute;
 }
 .video .logo {
  width: 90%;
 }
}
/* ----------------------------------------------------------------
   home
  ----------------------------------------------------------------- */
/* チケットバナー */
.bnrarea .bnr-01 {
 animation-name: stylie-transform-keyframes;
 animation-duration: 2500ms;
 animation-delay: 0ms;
 animation-timing-function: linear;
 animation-iteration-count: infinite;
}
@keyframes stylie-transform-keyframes {
 0% {
  transform: translate(0px, 0px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 1.67% {
  transform: translate(0px, -0.0179px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 3.33% {
  transform: translate(0px, -0.0676px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 5% {
  transform: translate(0px, -0.1431px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 6.67% {
  transform: translate(0px, -0.2385px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 8.33% {
  transform: translate(0px, -0.3476px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 10% {
  transform: translate(0px, -0.4645px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 11.67% {
  transform: translate(0px, -0.5832px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 13.33% {
  transform: translate(0px, -0.6977px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 15% {
  transform: translate(0px, -0.802px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 16.67% {
  transform: translate(0px, -0.8901px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 18.33% {
  transform: translate(0px, -0.9559px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 20% {
  transform: translate(0px, -0.9935px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 21.67% {
  transform: translate(0px, -0.9969px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 23.33% {
  transform: translate(0px, -0.9601px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 25% {
  transform: translate(0px, -0.877px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 26.67% {
  transform: translate(0px, -0.7417px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 28.33% {
  transform: translate(0px, -0.5481px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 30% {
  transform: translate(0px, -0.2903px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 31.67% {
  transform: translate(0px, 0.0378px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 33.33% {
  transform: translate(0px, 0.4421px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 35% {
  transform: translate(0px, 0.9287px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 36.67% {
  transform: translate(0px, 1.5035px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 38.33% {
  transform: translate(0px, 2.1726px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 40% {
  transform: translate(0px, 2.942px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 41.67% {
  transform: translate(0px, 3.8176px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 43.33% {
  transform: translate(0px, 4.8055px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 45% {
  transform: translate(0px, 5.9117px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 46.67% {
  transform: translate(0px, 7.1422px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 48.33% {
  transform: translate(0px, 8.503px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
 50% {
  transform: translate(0px, 10px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
  animation-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75);
 }
 100% {
  transform: translate(0px, 0px) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) translate(0, -8px);
 }
}
.bnrarea .bnr-01 img {
 width: 100%;
}
.bnrarea .bnr-01 img:hover {
 opacity: 0.8;
}
.bnrarea {
 margin: 0 0 0 0;
 position: absolute;
 bottom: 70px;
 right: 63px;
 width: 140px;
 z-index: 100;
}
.page-ticket .bnrarea {
 margin: 0 0 0 0;
 position: fixed;
 bottom: 0px;
 right: 63px;
 width: 140px;
 z-index: 100;
}
/* スクロールダウン */
body.home .arrowWrap {
 position: fixed;
 right: 1%;
 bottom: 35px;
 height: 150px;
 z-index: 99999;
}
body.home .arrowInner p {
 color: #ba79b1;
 font-family: minion-3-display, serif;
 font-size: 14px;
 font-style: normal;
 font-weight: 700;
 letter-spacing: 0.1em;
 text-align: end;
 -webkit-transform: rotate(90deg);
 transform: rotate(90deg);
}
body.home .arrow {
 background-color: #666;
 display: block;
 width: 1px;
 height: 107px;
 margin: 26px auto 0;
 position: relative;
 overflow: hidden;
}
body.home .arrow::before {
 animation: arrow 2.5s ease-in-out infinite normal;
 -webkit-animation: arrow 2.5s ease-in-out infinite normal;
 display: block;
 content: '';
 width: 1px;
 height: 107px;
 margin: 26px auto 0;
 background: linear-gradient(to bottom, #e14fad 0%, #ba79b1 50%, #B7F8DB 100%);
 position: absolute;
 bottom: 0;
 left: 0;
}
@keyframes arrow {
 0% {
  transform: translateY(-100%);
 }
 100% {
  transform: translateY(100%);
 }
}
@-webkit-keyframes arrow {
 0% {
  transform: translateY(-100%);
 }
 100% {
  transform: translateY(100%);
 }
}
body.home .keyimg {
 background-color: #f7f7f4;
 box-sizing: content-box;
 height: calc(100vh - 70px);
 padding: 0 5%;
 position: relative;
 width: 90%;
 z-index: -100;
}
body.home .bkg-item {
 height: 100%;
 /*min-width: 598px;*/
 mix-blend-mode: multiply;
 position: absolute;
 left: 50%;
 margin-left: 175px;
 margin-top: -35px;
 top: 0;
 width: 73vh;
 z-index: -1;
}
body.home .bkg-item img {
 position: relative;
 width: 100%;
}
body.home .op-item {
 max-width: 1134px;
 position: absolute;
 top: 50%;
 text-align: center;
 transform: translateY(-50%) translateX(0%); /*要素の大きさの半分ずつを戻す*/
 width: calc(60% - 0px);
}
body.home .title {
 margin: 0 auto;
 width: 70vh;
}
body.home .main-info {
 margin: 0 auto;
 width: 70vh;
}
body.home .schedule {
 color: #ba79b1;
 display: block;
 font-family: YakuHanMP, 'Noto Serif JP', serif;
 font-weight: 700;
}
body.home .schedule table {
 margin: 0 auto;
 width: 80%;
}
body.home .schedule .date {
 font-size: 2.0vw;
 padding: 0 0% 0 0;
 text-align: left;
 width: 43%;
}
body.home .schedule .date-sub {
 font-size: 1.5vw;
}
body.home .schedule .place {
 font-family: YakuHanMP, 'Noto Serif JP', serif;
 font-size: 1.6vw;
 padding: 0 0 0.5% 0;
 text-align: left;
 width: 57%;
}
body.home .schedule .time {
 font-size: 1.0vw;
 padding: 0 0 1% 0;
 text-align: left;
}
.btn a:hover {
 background-color: #000;
 transition: 0.5s;
}
body.home .cast {
 color: #000;
 display: inline-block;
 font-family: YakuHanMP, 'Noto Serif JP', serif;
 font-weight: 700;
 margin: 2% auto 0;
}
body.home .cast .part {
 font-family: 'Noto Sans JP', sans-serif;
 font-size: 1.0vw;
}
body.home .cast .actor-sub {
 font-size: 1.0vw;
}
body.home .cast .actor {
 font-size: 1.6vw;
 line-height: 1.3;
 padding: 2% 0 0;
 text-align: center;
}
/*@media only screen and (min-width: 1864px) {
 body.home .schedule .date {
  font-size: 37.28px;
 }
 body.home .schedule .date-sub {
  font-size: 27.96px;
 }
 body.home .schedule .place {
  font-family: YakuHanMP, 'Noto Serif JP', serif;
  font-size: 29.824px;
 }
 body.home .schedule .time {
  font-size: 18.64px;
 }
 body.home .cast .part {
  font-size: 18.64px;
 }
 body.home .cast .actor-sub {
  font-size: 18.64px;
 }
 body.home .cast .actor {
  font-size: 29.824px;
 }
}
@media only screen and (max-height: 988px) {
 body.home .keyimg {
  overflow: hidden;
 }
 body.home .title {
  margin: 0% auto 0.66vh;
  width: 90vh;
 }
 body.home .schedule table {
  margin: 0 auto;
  width: 79vh;
 }
 body.home .cast {
  color: #000;
  display: inline-block;
  font-family: YakuHanMP, 'Noto Serif JP', serif;
  font-weight: 700;
  margin: 0.4vh auto 0;
 }
 body.home .schedule .date {
  font-size: 3.6vh;
 }
 body.home .schedule .date-sub {
  font-size: 2.7vh;
 }
 body.home .schedule .place {
  font-size: 2.88vh;
 }
 body.home .schedule .time {
  font-size: 1.8vh;
 }
 body.home .cast .part {
  font-size: 1.8vh;
 }
 body.home .cast .actor-sub {
  font-size: 1.8vh;
 }
 body.home .cast .actor {
  font-size: 2.88vh;
 }
}*/
@media only screen and (max-width: 1024px) {
 .bnrarea {
  margin: 0 0 0 0;
  position: absolute;
  bottom: 0px;
  right: 8px;
  width: 63px;
  z-index: 100;
 }
 body.home .keyimg {
  height: 1250px
 }
 body.home .bkg-item {
  height: 100%;
  mix-blend-mode: multiply;
  position: absolut;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 10px;
  margin-left: -250px;
  top: 163px;
  width: 558px;
  z-index: -1;
 }
 body.home .bkg-item img {
  width: 100%;
 }
 body.home .op-item {
  left: 0%;
  top: 20px;
  transform: translateY(0%) translateX(0%);
  width: calc(100% - 0px);
  height: 100%;
 }
 body.home .title {
  margin: 0 auto;
  max-width: 692px;
 }
 body.home .main-info {
  background-color: rgba(0, 0, 0, 0.5);
  box-sizing: content-box;
  margin: 413px auto 0;
  padding: 20px;
  position: static;
  width: 642px;
 }
 body.home .schedule {
  color: #ba79b1;
  display: block;
  font-family: YakuHanMP, 'Noto Serif JP', serif;
  font-weight: 700;
 }
 body.home .schedule table {
  width: 100%;
 }
 body.home .schedule .date {
  font-size: 30px;
 }
 body.home .schedule .date-sub {
  font-size: 20px;
 }
 body.home .schedule .time {
  font-size: 12px;
 }
 body.home .schedule .place {
  font-size: 24px;
 }
 body.home .cast {
  color: #fff;
  margin: 0 auto
 }
 body.home .cast .part {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 2vw;
 }
 body.home .cast .actor-sub {
  font-size: 16px;
 }
 body.home .cast .actor {
  font-size: 24px;
  line-height: 1.3;
  padding: 2% 0 0;
 }
}
@media only screen and (max-width: 767px) {
 body.home .keyimg {
  margin-top: 0px;
  height: calc(100vh - 0px);
  padding: 0;
  position: relative;
  width: 100%;
 }
 .video .intro-copy {
  width: 100px;
 }
 .video .intro-copy2 {
  width: 150px;
 }
 body.home .bkg-item {
  height: 100%;
  min-width: 90%;
  mix-blend-mode: multiply;
  position: absolute;
  left: 0%;
  margin-left: 10%;
  top: 125px;
  width: 90%;
  z-index: -1;
 }
 body.home .bkg-item img {
  width: 100%;
 }
 body.home .op-item {
  height: 100%;
  margin: 0 auto;
  position: static;
  text-align: center;
  width: 100%;
 }
 body.home .title {
  width: 90%;
  margin: 0% auto;
  padding-top: 25px;
 }
 body.home .main-info {
  bottom: 3.3%;
  box-sizing: content-box;
  margin: 203px auto 0;
  padding: 5% 0;
  position: absolute;
  left: 5%;
  width: 90%;
 }
 body.home .schedule {
  margin: 0 auto;
  width: 306px;
 }
 body.home .schedule .date {
  font-size: 14px;
  width: 40%
 }
 body.home .schedule .date-sub {
  font-size: 10px;
 }
 body.home .schedule .place {
  font-size: 12px;
  width: 60%;
 }
 body.home .cast .part {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 10px;
 }
 body.home .cast .actor-sub {
  font-size: 10px;
 }
 body.home .cast .actor {
  font-size: 12px;
  line-height: 1.3;
  padding: 2% 0 0;
 }
}
@media only screen and (max-width: 360px) {
 body.home .keyimg {
  margin-top: 25px;
  height: 750px;
  position: relative;
  width: 350px;
 }
 body.home .bkg-item {
  height: 100%;
  mix-blend-mode: multiply;
  position: absolute;
  left: 0%;
  margin-left: 10%;
  top: 50px;
  width: 90%;
  z-index: -1;
 }
 body.home .bkg-item img {
  width: 100%;
 }
 body.home .op-item {
  height: 100%;
  margin: 0 auto;
  position: static;
  text-align: center;
  width: 100%;
 }
 body.home .title {
  width: 90%;
  margin: 0% auto;
 }
 body.home .main-info {
  margin: 403px auto 0;
  position: static;
 }
 body.home .schedule .date {
  font-size: 12px;
  width: 40%
 }
 body.home .schedule .date-sub {
  font-size: 10px;
 }
 body.home .schedule .place {
  font-size: 12px;
  width: 60%;
 }
 body.home .btn a {
  font-size: 3vw;
  margin: 10px auto 0;
  padding: 10px 45px;
 }
 body.home .cast .part {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 2vw;
 }
 body.home .cast .actor-sub {
  font-size: 3vw;
 }
 body.home .cast .actor {
  font-size: 3.3vw;
  line-height: 1.3;
  padding: 2% 0 0;
 }
}
/* intro */
body.home .intro {
 background: linear-gradient(180deg, rgba(0, 0, 0, 0.0) 0%, rgba(0, 0, 0, 0.45) 50%, rgba(0, 0, 0, 0.9) 100%);
 margin: 0 auto;
}
body.home .intro .intro-main {
 margin: 0 auto;
 max-width: 1100px;
 width: 90%;
}
body.home .intro .catch {
 font-family: YakuHanMP, 'Noto Serif JP', serif;
 font-weight: 700;
 font-size: 2vw;
 color: #ba79b1;
 line-height: 1.75;
 padding-top: 5%;
 text-align: center;
}
body.home .intro .info-detail {
 margin-top: 1%;
 width: 100%;
}
body.home .intro .info-comment {
 width: 100%;
 margin: 2% auto 0;
}
body.home .intro .text {
 color: #fff;
 font-family: YakuHanMP, serif;
 font-size: 20px;
 line-height: 3;
 margin-top: 5%;
 text-align: justify;
 width: 100%
}
body.home .intro .sign {
 color: #fff;
 font-family: YakuHanMP, 'Noto Serif JP', serif;
 font-weight: 700;
 font-size: 24px;
 margin: 5% auto 0;
 text-align: right;
 width: 90%
}
body.home .intro .sec-contact {
 font-size: 16px;
 margin: 2.5% auto 0;
 text-align: center;
 width: 90%
}
body.home .intro .sec-contact a {
 color: #ba79b1;
 font-family: YakuHanMP, 'Noto Serif JP', serif;
 font-size: 16px;
 font-weight: 700;
 display: inline-block;
 position: relative;
 padding: 13px 72px 13px 16px;
 padding: 1.3rem 7.2rem 1.3rem 1.6rem;
}
body.home .intro .sec-contact a::before {
 display: block;
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
 border: 1px solid #989699;
 width: calc(100% - 4px);
 height: calc(100% - 6px);
 content: "";
}
body.home .intro .sec-contact a::after {
 display: block;
 position: absolute;
 top: 50%;
 right: -13px;
 right: -1.3rem;
 -webkit-transform: translate(0, -50%);
 transform: translate(0, -50%);
 -webkit-transition: width 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
 transition: width 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
 border-bottom: 1px solid #ba79b1;
 width: 70px;
 width: 7rem;
 height: 1px;
 height: 0.1rem;
 content: "";
}
body.home .intro .sec-contact a:hover {
 padding: 13px 59px 13px 29px;
 padding: 1.3rem 5.9rem 1.3rem 2.9rem;
 transition: 1s;
}
body.home .intro .sec-contact a:hover::after {
 right: -26px;
 right: -2.6rem;
 transition: 1s;
}
body.home .trailer {
 width: 100%;
}
body.home footer {
 margin-top: 0;
}
@media only screen and (max-width: 1024px) {
 body.home .intro {
  padding: 10% 0 0;
 }
 body.home .intro .intro-main {
  margin: 0 auto;
  padding-left: 0%;
  width: 90%;
 }
 body.home .intro .catch {
  font-size: 24px;
  margin-top: 2%;
 }
 body.home .intro .info-detail {
  display: block;
  width: 100%;
 }
 body.home .intro .info-comment {
  width: 100%;
  margin: 0;
 }
 body.home .intro .text {
  font-size: 14px;
  line-height: 2;
  margin-top: 5%;
  width: 100%
 }
 body.home .intro .sign {
  font-size: 16px;
 }
 body.home .intro .trailer {
  height: 0;
  margin: 5% 0 0 0%;
  width: 100%;
 }
}
@media only screen and (max-width: 767px) {
 body.home .intro .intro-main {
  margin: 0 auto;
  padding-left: 0%;
  width: 90%;
 }
 body.home .intro .catch {
  font-size: 6vw;
  margin-top: 2%;
 }
 body.home .intro .info-detail {
  display: block;
  width: 100%;
 }
 body.home .intro .info-comment {
  width: 100%;
  margin: 0;
 }
 body.home .intro .text {
  font-size: 14px;
  line-height: 2;
  margin-top: 5%;
  width: 100%
 }
 body.home .intro .sign {
  font-size: 16px;
 }
 body.home .intro .trailer {
  margin: 10% 0 0 0%;
  width: 100%;
 }
}
body.home .sec-sns {
 margin: 3.3% auto 0;
 width: 100%;
}
body.home .sec-sns .sec-title {
 font-size: 18px;
 text-align: center;
}
body.home .sns-list {
 align-items: center;
 display: flex;
 justify-content: space-between;
 margin: 1% auto 0;
 width: 240px;
}
body.home .sec-sns .icon {
 width: 45px;
}
body.home .sec-sns .icon :hover {
 opacity: 0.8;
}
body.home .sec-bnr {
 margin: 7.5% auto;
 padding-left: 7.5%;
 width: 100%;
}
body.home .sec-bnr .sec-title {
 font-size: 48px;
}
body.home .bnr-list {
 display: flex;
 margin-top: 2%;
 width: 100%;
}
body.home .sec-bnr .bnr {
 margin-right: 1%;
 width: 32.3%;
}
body.home .sec-bnr img {
 width: 100%;
}
body.home .sec-bnr img:hover {
 opacity: 0.8;
}
@media only screen and (max-width: 768px) {
 body.home .sec-bnr {
  margin: 5% auto;
  padding-left: 0%;
  width: 90%;
 }
 body.home .sec-bnr .sec-title {
  font-size: 30px;
 }
 body.home .bnr-list {
  display: block;
 }
 body.home .sec-bnr .bnr {
  margin-bottom: 1%;
  width: 100%;
 }
 body.home .sec-bnr .bnr:last-child {
  margin-bottom: 0%;
 }
}
body.home .sec-insta {
 margin: 10% 0;
}
body.home .sec-insta .sec-title {
 font-size: 48px;
}
body.home .gallery {
 align-items: center;
 display: flex;
 flex-wrap: wrap;
 font-size: 0;
 margin: 2% auto 0;
 max-width: 1200px;
 width: 90%;
}
body.home .gallery li {
 margin: 0.25%;
 width: 19.5%;
 max-height: 234px;
 overflow: hidden;
}
body.home .sponcer {
 background-color: #000;
 margin-top: 10%;
 padding: 15px 0;
}
body.home .sponcer-list {
 align-items: center;
 display: flex;
 font-size: 0;
 margin: 0 auto;
 max-width: 1200px;
 justify-content: space-between;
 width: 90%;
}
body.home .kyousan {
 color: #fff;
 font-family: YakuHanMP, 'Noto Serif JP', serif;
 font-weight: 700;
 font-size: 14px;
 letter-spacing: 0.125em;
 line-height: 0;
}
body.home .tikejam {
 width: 9%
}
body.home .kai {
 width: 3.5%
}
body.home .kose {
 width: 9%
}
body.home .daiwa {
 width: 13%
}
body.home .loewe {
 width: 6%
}
body.home .his {
 width: 3.5%
}
body.home .godiva {
 width: 7%
}
body.home .mikimoto {
 width: 11%
}
@media only screen and (max-width: 768px) {
 body.home .sec-insta .sec-title {
  font-size: 30px;
  margin-bottom: 5%;
 }
 body.home .gallery li {
  display: inline-block;
  margin: 0.25%;
  width: 49.5%;
 }
 body.home .sec-sns {
  margin: 10% auto 0;
 }
 body.home .intro .sec-contact {
  margin: 5% auto 0;
 }
 body.home .sponcer {
  padding: 30px 0;
  margin-top: 10%;
 }
 body.home .sponcer-list {
  flex-wrap: wrap;
  font-size: 0;
  justify-content: space-between;
  width: 90%;
 }
 body.home .kyousan {
  margin-bottom: 30px;
  text-align: center;
  width: 100%;
 }
 body.home .tikejam {
  margin: 0 30%;
  padding: 0 0 40px 0;
  width: 40%
 }
 body.home .kai {
  padding: 0 0 20px 0;
  width: 13.3%
 }
 body.home .kose {
  padding: 0 0% 20px 0;
  width: 28.3%
 }
 body.home .daiwa {
  padding: 0 0 20px 0;
  width: 39.2%
 }
 body.home .loewe {
  width: 19.3%
 }
 body.home .his {
  width: 10.3%
 }
 body.home .godiva {
  width: 19%
 }
 body.home .mikimoto {
  width: 31.3%
 }
}
/* ----------------------------------------------------------------
   news
  ----------------------------------------------------------------- */
/*body.page-news {
  background-image: url("../img/home/bkg_revers2.jpg");
  background-position: top 0 right -200px;
  background-repeat: repeat-y;
  background-size: 1074px;
}*/
body.page-news .news-item {
 border-top: 1px dotted #333;
 padding: 70px 0;
}
body.page-news .news-item:last-child {
 border-bottom: 1px dotted #333;
}
body.page-news .news-date {
 color: #ba79b1;
 font-size: 18px;
}
body.page-news .news-tit {
 font-family: YakuHanMP, 'Noto Serif JP', serif;
 font-size: 27px;
 font-weight: 700;
 line-height: 1.5;
 margin-top: 10px;
}
body.page-news .news-txt {
 font-size: 18px;
 line-height: 2;
 margin-top: 30px;
}
body.page-news .news-txt h6 {
 margin-top: 5%;
}
body.page-news .news-txt .news-cap {
 font-size: 16px;
}
body.page-news .news-txt .news-cap a {
 text-decoration: underline;
}
body.page-news .news-txt .news-cap a:hover {
 text-decoration: none;
}
body.page-news .news-txt .news-pg-info {
 border: 1px solid #fff;
 margin-top: 5%;
 padding: 0 5% 5%;
}
body.page-news .news-link {
 font-size: 18px;
 margin-top: 40px;
}
body.page-news .news-link a {
 color: #ba79b1;
 text-decoration: underline;
}
body.page-news .news-link a:hover {
 text-decoration: none;
}
body.page-news .bnr {
 margin-top: 40px;
 opacity: 0.6;
 width: 49%;
}
body.page-news .bnr2 {
 margin-top: 40px;
 width: 65.6%;
}
body.page-news .bnr img:hover {
}
body.page-news-detail .page-title {
 font-size: 45px;
}
body.page-news-detail .news-item {
 border: none;
 padding: 0 0 0;
}
body.page-news-detail .news-item:last-child {
 border-bottom: none;
}
body.page-news-detail .message-txt {
 margin: 0 auto;
 max-width: 1000px;
}
body.page-news-detail .message-name {
 margin: 5% 0;
 text-align: right;
}
body.page-news-detail .orijinal-txt {
 text-align: right;
}
body.page-news-detail .sub-navi {
 border-top: 1px dotted #ccc;
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-weight: 700;
 display: flex;
 justify-content: space-between;
 margin: 5% auto;
 max-width: 1000px;
 padding-top: 5%;
 width: 90%;
}
body.page-news-detail .sub-navi .btn-ticket {
 background-color: #ba79b1;
 color: #ddd;
 font-size: 1.5vw;
 text-align: center;
 width: 32.3%;
}
body.page-news-detail .sub-navi .btn-ticket a {
 display: inline-block;
 padding: 20px 0;
 width: 100%;
}
body.page-news-detail .sub-navi .off {
 background-color: #000;
 border: 1px solid #ba79b1;
 color: #ba79b1;
}
body.page-news-detail .sub-navi .off:hover {
 background-color: #ba79b1;
 transition: 0.5s;
}

body.page-news .pg-benefit {
 padding-top: 50px;
}
body.page-news .benefit-detail {
 margin-top: 20px;
}
body.page-news .benefit-detail .benefit {
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-weight: bold;
 margin-top: 20px;
}
body.page-news .benefit-detail .benefit-img {
 align-items: center;
 display: flex;
 flex-wrap: wrap;
 justify-content: flex-start;
 width: 100%;
}
body.page-news .benefit-detail .benefit-img-kai {
 justify-content: space-between;
}
body.page-news .benefit-detail .benefit-img img {
 margin-top: 10px;
 width: 49%;
}
body.page-news .benefit-detail .detail {
 line-height: 1.5;
 margin-top: 10px;
}
body.page-news .bnr-sponcer {
 margin: 0 0 40px;
}
body.page-newsd .news-item {
 margin: 0 auto;
 max-width: 1000px;
}
body.page-news .sub-navi {
 width: 100%;
}

@media only screen and (max-width: 768px) {
 body.page-news .news-date {
  font-size: 20px;
 }
 body.page-news .news-tit {
  font-size: 24px;
 }
 body.page-news .news-txt {
  font-size: 16px;
 }
 body.page-news .news-link {
  font-size: 16px;
 }
 body.page-news .bnr {
  width: 100%;
 }
 body.page-news .bnr2 {
 width: 100%;
}
 body.page-news-detail .message-txt {
  font-size: 3.5vw;
 }
 body.page-news-detail .sub-navi .btn-ticket {
  font-size: 2vw;
 }
}
/* ----------------------------------------------------------------
   cast
  ----------------------------------------------------------------- */
/*body.page-cast {
  background-image: url("../img/home/bkg_revers2.jpg");
  background-position: top 0 right -200px;
  background-repeat: repeat-y;
  background-size: 1074px;
}*/
body.page-cast .page-contents {
 width: 100%;
}
body.page-cast .plofile {
 align-items: center;
 display: flex;
 justify-content: space-between;
 margin-top: 5%;
 text-align: justify;
}
body.page-cast .plof-detail {
 line-height: 2.0;
}
body.page-cast .plof-name {
 font-family: YakuHanMP, 'Noto Serif JP', serif;
 font-size: 30px;
 font-weight: 700;
 line-height: 1.25;
 margin-bottom: 5%;
}
body.page-cast .part {
 font-family: -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
 font-weight: 400;
 font-size: 18px;
}
body.page-cast .maincast .plof-pic {
 width: 33.3%;
}
body.page-cast .maincast .plof-text {
 width: 61.6%;
}
body.page-cast .maincast .plof-detail {
 font-size: 16px;
 text-align: justify;
}
body.page-cast .subcast .plof-detail {
 font-size: 16px;
}
body.page-cast .subcast .plof-pic {
 width: 25%;
}
body.page-cast .subcast .plof-text {
 width: 70%;
}
body.page-cast .subcast .terroir .plof-pic {
 width: 100%;
}
body.page-cast .subcast .terroir .plof-name {
 margin-bottom: 2%;
}
body.page-cast .subcast .terroir .plof-text {
 width: 100%;
}
body.page-cast .subcast .terroir .member {
 font-size: 20px;
}
body.page-cast .furitsuke {
 align-items: flex-start;
 display: flex;
 justify-content: space-between;
}
body.page-cast .furitsuke .plofile {
 width: 48%;
}
body.page-cast .furitsuke .plof-text {
 width: 100%;
}
body.page-cast .furitsuke .plof-name {
 font-size: 24px;
}
body.page-cast .furitsuke .plof-detail {
 font-size: 14px;
 line-height: 2.0;
}
body.page-cast .staff {
 margin-top: 5%;
}
body.page-cast .staff .plofile {
 align-items: center;
 display: flex;
 justify-content: center;
 margin-top: 1%;
}
body.page-cast .staff .plof-part {
 font-size: 20px;
 text-align: right;
}
body.page-cast .staff .plof-name {
 font-size: 20px;
 margin: 1.5% 1%;
 text-align: left;
}
body.page-cast .staff .plof-cast {
 display: block;
 margin: 2% auto;
}
body.page-cast .staff .plof-cast .plof-part {
 text-align: center;
}
body.page-cast .staff .plof-cast .plof-name {
 line-height: 1.0;
 text-align: center;
}
body.page-cast .staff .plof-cast .mnt {
 line-height: 1.25;
}
body.page-cast .staff .plof-cast .member {
 font-size: 16px;
}
/*@media screen and (-webkit-min-device-pixel-ratio:2), (min-resolution: 2dppx) {
  body.page-cast {
    background-image: url("../img/home/bkg_revers2.jpg");
  }
}*/
@media only screen and (max-width: 768px) {
 body.page-cast .plofile {
  display: block;
  margin: 10% auto 0;
 }
 body.page-cast .plof-name {
  text-align: center;
 }
 body.page-cast .plof-pic {
  margin: 0 auto 5%;
 }
 body.page-cast .maincast .plof-pic {
  width: 100%;
 }
 body.page-cast .maincast .plof-text {
  width: 100%;
 }
 body.page-cast .maincast .plof-name {
  font-size: 22px;
  margin-bottom: 5%;
 }
 body.page-cast .part {
  font-size: 16px;
 }
 body.page-cast .maincast .plof-detail {
  font-size: 14px;
  margin: 0 auto;
  width: 90%;
 }
 body.page-cast .subcast {
  margin: 10% auto 0;
  width: 90%;
 }
 body.page-cast .subcast .plof-pic {
  width: 100%;
 }
 body.page-cast .subcast .plof-text {
  width: 100%;
 }
 body.page-cast .subcast .plof-name {
  font-size: 24px;
  margin-bottom: 5%;
 }
 body.page-cast .subcast .plof-detail {
  font-size: 14px;
 }
 body.page-cast .subcast .terroir .plof-name {
  margin-bottom: 5%;
 }
 body.page-cast .subcast .terroir .member {
  font-size: 16px;
 }
 body.page-cast .furitsuke {
  display: block;
  margin: 10% auto 0;
  width: 90%;
 }
 body.page-cast .furitsuke .plofile {
  width: 100%;
 }
 body.page-cast .staff .plofile {
  margin: 2% 0;
 }
 body.page-cast .staff .plof-block {
  display: block;
  margin-top: 5%;
 }
 body.page-cast .staff .plof-last {
  display: block;
  margin-top: 10%;
  margin-bottom: 10%;
 }
 body.page-cast .staff .plof-part {
  font-size: 16px;
 }
 body.page-cast .staff .plof-name {
  font-size: 16px;
 }
 body.page-cast .staff .plof-block .plof-part {
  text-align: center;
 }
 body.page-cast .staff .plof-block .plof-name {
  margin: 1.5% 0 3% 0;
  text-align: center;
 }
 body.page-cast .staff .plof-cast .member {
  font-size: 12px;
 }
}
body.page-ticket .sub-navi {
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-weight: 700;
 font-size: 24px;
 display: flex;
 justify-content: space-between;
 margin-bottom: 2.5%;
 width: 100%;
}
body.page-ticket .sub-navi .btn-ticket {
 background-color: #ba79b1;
 color: #ddd;
 font-size: 1.5vw;
 text-align: center;
 width: 24%;
}
body.page-ticket .sub-navi .btn-ticket a {
 display: inline-block;
 padding: 20px 0;
 width: 100%;
}
body.page-ticket .sub-navi .off {
 background-color: #000;
 color: #ba79b1;
}
body.page-ticket .total-contact {
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-weight: 700;
 font-size: 24px;
 margin-bottom: 2.5%;
 text-align: center;
}
body.page-ticket .sub-navi .off:hover {
 background-color: #ba79b1;
 transition: 0.5s;
}
/* ----------------------------------------------------------------
   ticket
  ----------------------------------------------------------------- */
body.page-ticket .total-contact {
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-weight: 700;
 font-size: 24px;
 margin-bottom: 2.5%;
 text-align: center;
}
body.page-ticket .sec-contact {
 font-size: 16px;
 margin: 5% auto 0;
 text-align: center;
 width: 90%
}
body.page-ticket .sec-contact .contact {
 margin: 0;
}
body.page-ticket .sec-contact a {
 color: #ba79b1;
 font-family: YakuHanMP, 'Noto Serif JP', serif;
 font-size: 16px;
 font-weight: 700;
 display: inline-block;
 position: relative;
 padding: 13px 72px 13px 16px;
 padding: 1.3rem 7.2rem 1.3rem 1.6rem;
}
body.page-ticket .sec-contact a::before {
 display: block;
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
 border: 1px solid #989699;
 width: calc(100% - 0px);
 height: calc(100% - 6px);
 content: "";
}
body.page-ticket .sec-contact a::after {
 display: block;
 position: absolute;
 top: 50%;
 right: -13px;
 right: -1.3rem;
 -webkit-transform: translate(0, -50%);
 transform: translate(0, -50%);
 -webkit-transition: width 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
 transition: width 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
 border-bottom: 1px solid #ba79b1;
 width: 70px;
 width: 7rem;
 height: 1px;
 height: 0.1rem;
 content: "";
}
body.page-ticket .sec-contact a:hover {
 padding: 13px 59px 13px 29px;
 padding: 1.3rem 5.9rem 1.3rem 2.9rem;
 transition: 1s;
}
body.page-ticket .sec-contact a:hover::after {
 right: -26px;
 right: -2.6rem;
 transition: 1s;
}
body.page-ticket .seat-tit {
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-weight: 700;
 font-size: 24px;
 margin-top: 5%;
 text-align: center;
}
body.page-ticket .btn-seat {
 align-items: center;
 display: flex;
 justify-content: space-between;
 margin-top: 20px;
}
body.page-ticket .btn-seat a {
 background-color: #000;
 border: 1px solid #ba79b1;
 color: #ddd;
 display: block;
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-size: 1.5vw;
 font-weight: 700;
 text-align: center;
 padding: 20px 0;
 width: 24%;
}
body.page-ticket .btn-seat a:hover {
 background-color: #ba79b1;
 color: #ddd;
}
body.page-ticket .schedule-wrap {
 display: flex;
 margin-top: 5%;
}
body.page-ticket .map {
 width: 50%;
}
body.page-ticket .map img {
 background-color: #fff;
 border: 1px solid #bbb;
 padding: 5%;
}
body.page-ticket .schedule-item {
 width: 50%;
}
body.page-ticket .schedule-tbl {
 width: 95%;
}
body.page-ticket .tbl-tit {
 background-color: #ba79b1;
 border: 1px solid #bbb;
 font-size: 20px;
 font-weight: bold;
 padding: 20px;
 text-align: center;
 vertical-align: middle;
 width: 25%;
}
body.page-ticket .tbl-item {
 background-color: #fff;
 border: 1px solid #bbb;
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-weight: 700;
 font-size: 24px;
 padding: 20px;
 vertical-align: middle;
}
body.page-ticket .tbl-sub {
 font-size: 16px;
}
body.page-ticket .access {
 font-size: 20px;
 font-weight: bold;
 margin-top: 30px;
}
body.page-ticket .handicap {
 margin-top: 20px;
}
body.page-ticket .handicap-ttl {
 color: #ba79b1;
 font-size: 20px;
}
body.page-ticket .handicap-list {
 font-size: 16px;
 line-height: 1.5;
 margin-top: 10px;
}
body.page-ticket .handicap-contact {
 font-size: 14px;
 line-height: 1.5;
 margin-top: 10px;
}
body.page-ticket .handicap-contact span {
 font-size: 16px;
 font-weight: bold;
}
body.page-ticket .handicap a {
 text-decoration: underline
}
body.page-ticket .handicap a:hover {
 text-decoration: none;
}
body.page-ticket .sec-ticket {
 margin-top: 5%;
}
body.page-ticket .price-item {
 align-items: stretch;
 border: solid #ccc;
 border-width: 1px 0 0 0;
 display: flex;
 justify-content: center;
 width: 100%;
}
body.page-ticket .price-item:nth-child(3) {
 border-width: 1px 0 1px 0;
}
body.page-ticket .ticket-tbl {
 background-color: #fff;
 border: 1px solid #bbb;
 font-size: 20px;
 width: 100%;
}
body.page-ticket .ticket-guide .ticket-tbl thead {
 border: 1px solid #bbb;
 background-color: #ba79b1;
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-size: 16px;
 padding: 15px 0;
}
body.page-ticket .ticket-guide .ticket-tbl th {
 border: 1px solid #bbb;
 font-weight: normal;
 padding: 15px 0;
 vertical-align: middle;
}
body.page-ticket .ticket-guide .ticket-tbl td {
 border: 1px solid #bbb;
 text-align: center;
 padding: 15px 0;
 vertical-align: middle;
}
body.page-ticket .ticket-guide .ticket-tbl td.tbl-price {
 border-bottom: 0px;
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-size: 24px;
 line-height: 1;
}
body.page-ticket .ticket-guide .ticket-tbl td.tbl-benefit {
 border-top: 0px;
 font-size: 16px;
 line-height: 1.5;
 padding: 0 15px 15px;
 text-align: center;
}
body.page-ticket .ticket-guide .ticket-tbl td.tbl-benefit span {
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-weight: bold;
}
body.page-ticket .ticket-guide .ticket-tbl td.tbl-benefit .sponcer-link {
 color: #333;
 text-decoration: underline;
}
body.page-ticket .ticket-guide .ticket-tbl td.tbl-benefit .sponcer-link:hover {
 text-decoration: none;
}
body.page-ticket .caption {
 font-size: 16px;
 margin-top: 20px;
 text-align: center;
}
body.page-ticket .pg-wrap {
 padding-top: 5%;
}
body.page-ticket #pg {
 padding-top: 70px;
}
body.page-ticket .pg-catch {
 color: #ba79b1;
 font-family: YakuHanMP, 'Noto Serif JP', serif;
 font-weight: 700;
 font-size: 36px;
 font-style: normal;
 padding-top: 5%;
 text-align: center;
}
body.page-ticket .senkou-notice {
 border: 1px solid #bbb;
 display: block;
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 padding: 40px 0;
 line-height: 2;
 margin: 40px auto 35px;
 text-align: center;
}
body.page-ticket .order {
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 padding-top: 40px;
 margin: 20px auto 0;
}
body.page-ticket .order .order-cate {
 color: #ba79b1;
 font-size: 24px;
 font-weight: bold;
 padding: 5px;
 text-align: right;
 vertical-align: middle;
}
body.page-ticket .order .order-time {
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-weight: 700;
 font-size: 24px;
 padding: 5px;
 text-align: left;
 vertical-align: middle;
}
body.page-ticket .order-first {
 align-items: stretch;
 display: flex;
 justify-content: space-between;
 margin-top: 10px;
}
body.page-ticket .order-first .window {
 background-color: #fff;
 border: 1px solid #bbb;
 padding: 5% 2.5%;
 text-align: center;
 width: 49%;
}
body.page-ticket .order-first .last-window {
 opacity: 0.4;
}
 body.page-ticket .pg-senkou {
  border-top: 1px solid #bbb;
  padding-top: 0;
 }

body.page-ticket .pg-senkou a {
 color: #333;
 text-decoration: underline;
}
body.page-ticket .pg-wrap a:hover {
 text-decoration: none;
}
body.page-ticket .order-first .order-cate {
 color: #ba79b1;
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-weight: 700;
 font-size: 20px;
 padding: 0 0 5px;
 text-align: center;
}
body.page-ticket .order-first2 .order-cate {
 color: #ba79b1;
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-weight: 700;
 font-size: 20px;
 padding: 10px 0 5px;
 text-align: center;
}
body.page-ticket .order-first .order-time {
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-weight: 700;
 font-size: 20px;
 line-height: 1.5;
 padding: 0 0 5px;
}
body.page-ticket .pg-tbl {
 margin-top: 20px;
 width: 100%;
 color: #ddd;
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-size: 24px;
 text-align: center;
}
body.page-ticket .pg-guide .pg-tbl {
 width: 100%;
}
body.page-ticket .pg-guide .tbl-item a {
 color: #333;
}
body.page-ticket .pg-guide .tbl-item a:hover {
 text-decoration: underline;
}
body.page-ticket .pg-theater {
 margin: 40px auto 0;
}
body.page-ticket .pg-theater .order-cate {
 color: #ba79b1;
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-weight: 700;
 font-size: 20px;
 padding: 0 0 10px;
 text-align: center;
}
body.page-ticket .pg-theater .order-time {
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-weight: 700;
 font-size: 20px;
 margin-top: 10px;
 text-align: center;
}
body.page-ticket .pg-theater .order-time2 {
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-weight: 700;
 font-size: 16px;
 line-height: 1.75;
 margin: 10px auto 0;
 max-width: 750px;
 text-align: center;
 width: 100%;
}
body.page-ticket .pg-theater .order-time3 {
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-weight: 700;
 font-size: 20px;
 margin-top: 20px;
 text-align: center;
}
body.page-ticket .pg-theater a {
 color: #333;
 font-weight: 400;
 font-family: -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
 text-decoration: underline;
}
body.page-ticket .pg-theater a:hover {
 color: #333;
 text-decoration: none;
}
body.page-ticket .pg-benefit {
 padding-top: 50px;
}
body.page-ticket .benefit-tit {
 color: #ba79b1;
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-size: 20px;
 padding-bottom: 20px;
 text-align: center;
}
body.page-ticket .benefit-detail {
 border: 1px solid #bbb;
 margin-top: 20px;
 padding: 5%;
}
body.page-ticket .benefit-detail .benefit {
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-weight: bold;
 margin-top: 20px;
}
body.page-ticket .benefit-detail .benefit-img {
 align-items: center;
 display: flex;
 flex-wrap: wrap;
 justify-content: flex-start;
 width: 100%;
}
body.page-ticket .benefit-detail .benefit-img-kai {
 justify-content: space-between;
}
body.page-ticket .benefit-detail .benefit-img img {
 margin-top: 10px;
 margin-right: 1%;
 width: 32.3%;
}
body.page-ticket .benefit-detail .benefit-img-suntory {
 justify-content: flex-start;
}
body.page-ticket .benefit-detail .detail {
 line-height: 1.5;
 margin-top: 10px;
}
body.page-ticket .pg-notice {
 border: 1px solid #bbb;
 margin-top: 70px;
 padding: 5%;
}
@media only screen and (max-width: 768px) {
 body.page-ticket .total-contact {
  font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
  font-weight: 700;
  font-size: 3.5vw;
  margin: 5% 0;
  text-align: center;
 }
 body.page-ticket .btn-seat a {
  font-size: 14px;
 }
 body.page-ticket .schedule-wrap {
  display: block;
 }
 body.page-ticket .map {
  margin-top: 5%;
  width: 100%;
 }
 body.page-ticket .schedule-item {
  width: 100%;
 }
 body.page-ticket .schedule-tbl {
  width: 100%;
 }
 body.page-ticket .tbl-tit {
  display: block;
  font-size: 16px;
  padding: 10px;
  width: 100%;
 }
 body.page-ticket .tbl-item {
  display: block;
  font-size: 16px;
  padding: 10px 0;
  text-align: center;
  width: 100%;
 }
 body.page-ticket .tbl-sub {
  font-size: 12px;
  margin: 10px 0;
 }
 body.page-ticket .access {
  font-size: 3.5vw;
  text-align: center;
 }
 body.page-ticket .handicap {
  text-align: center;
 }
 body.page-ticket .handicap-ttl {
  font-size: 3.5vw;
 }
 body.page-ticket .handicap-list {
  font-size: 3.5vw;
 }
 body.page-ticket .sec-ticket {
  border: 1px solid #ddd;
  margin-top: 0;
  padding: 0;
 }
 body.page-ticket .sec-ticket .sec-title {
  font-size: 30px;
 }
 body.page-ticket .price {
  font-size: 24px;
  text-align: center;
 }
 body.page-ticket .ticket-tbl {
  font-size: 16px;
 }
 body.page-ticket .ticket-guide .ticket-tbl thead {
  font-size: 14px;
  padding: 10px 0;
 }
 body.page-ticket .ticket-guide .ticket-tbl th {
  font-size: 12px;
  padding: 10px 0;
 }
 body.page-ticket .ticket-guide .ticket-tbl td {
  font-size: 14px;
  padding: 10px 0;
 }
 body.page-ticket .ticket-guide .ticket-tbl td.tbl-price {
  font-size: 20px;
  padding: 10px;
  text-align: left;
 }
 body.page-ticket .ticket-guide .ticket-tbl td.tbl-benefit {
  font-size: 12px;
  padding: 0 10px 10px;
  text-align: left;
 }
 body.page-ticket .seat-tit {
  font-size: 20px;
 }
 body.page-ticket .btn-seat {
  margin-top: 10px;
 }
 body.page-ticket .caption {
  font-size: 12px;
  margin-top: 10px;
  text-align: center;
 }
 body.page-ticket .pg-senkou {
  padding-bottom: 5%;
 }
 body.page-ticket .pg-catch {
  font-size: 20px;
 }
 body.page-ticket .senkou-notice {
  font-size: 14px;
  padding: 5% 2.5%;
  margin: 5% auto;
 }
 body.page-ticket .order {
  margin: 0 auto;
  width: 100%;
 }
 body.page-ticket .order-first {
  display: block;
 }
 body.page-ticket .order-first .window {
  width: 100%;
 }
 body.page-ticket .order-first .last-window {
  margin-bottom: 2.5%;
 }
 body.page-ticket .order .order-cate {
  display: block;
  font-size: 16px;
  padding: 10px 5px 0px;
  text-align: center;
  width: 100%;
 }
 body.page-ticket .order .order-time {
  display: block;
  font-size: 16px;
  padding: 10px 5px;
  text-align: center;
  width: 100%;
 }
 body.page-ticket .order-first .order-cate {
  font-size: 16px;
 }
 body.page-ticket .order-first .order-time {
  font-size: 16px;
 }
 body.page-ticket .pg-theater {
  margin: 40px auto 0;
 }
 body.page-ticket .pg-theater .order-cate {
  color: #ba79b1;
  font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
  font-weight: 700;
  font-size: 16px;
  padding: 0 0 10px;
  text-align: center;
 }
 body.page-ticket .pg-theater .order-time {
  font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
  font-weight: 700;
  font-size: 16px;
  text-align: center;
 }
 body.page-ticket .pg-theater .order-time {
  font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
  font-weight: 700;
  font-size: 16px;
  text-align: center;
 }
 body.page-ticket .pg-theater .order-time2 {
  font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
  font-weight: 700;
  font-size: 14px;
  line-height: 1.75;
  margin-top: 10px;
  text-align: center;
 }
 body.page-ticket .pg-benefit {
  margin-top: 5%;
 }
 body.page-ticket .benefit-tit {
  color: #ba79b1;
  font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
  font-size: 16px;
  padding-bottom: 0px;
  text-align: center;
 }
 body.page-ticket .benefit-detail {
  border: 1px solid #bbb;
  font-size: 12px;
  margin-top: 20px;
  padding: 5%;
 }
 body.page-ticket .benefit-detail .benefit {
  font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
  font-weight: bold;
  margin-top: 20px;
 }
 body.page-ticket .benefit-detail .detail {
  line-height: 1.5;
  margin-top: 10px;
 }
 body.page-ticket .benefit-detail .benefit-img img {
 width: 100%;
}
 body.page-ticket .pg-notice {
  font-size: 12px;
  padding: 5%;
 }
}
body.page-sibiu .page-title {
 font-size: 45px;
}
body.page-sibiu .jp {
 border-bottom: 1px solid #fff;
 margin-bottom: 50px;
 padding-bottom: 50px;
}
body.page-sibiu .map {
 line-height: 2;
}
body.page-sibiu .map h6 {
 font-size: 24px;
}
body.page-sibiu .map p {
 word-break: normal;
 text-align: justify;
}
body.page-sibiu .ticket {
 font-size: 20px;
 line-height: 1.5;
 margin-top: 20px;
 text-align: left;
}
body.page-sibiu .ticket a {
 text-decoration: underline;
}
body.page-sibiu .ticket a:hover {
 text-decoration: none;
}
@media only screen and (max-width: 768px) {
 body.page-sibiu .page-title {
  font-size: 30px;
  line-height: 1.25;
 }
}
@media only screen and (max-width: 1300px) {
 .hidden-1300 {
  display: none !important;
 }
}
/* ----------------------------------------------------------------
   前回購入者特典ページ
  ----------------------------------------------------------------- */
body.page-ticket-pre .page-contents {
 margin: 5% auto 0;
 max-width: 1000px;
 width: 90%;
}
body.page-ticket-pre .pg-wrap {
 border-top: 0px solid #bbb;
 margin-top: 0%;
}
body.page-ticket-pre .pg-catch {
 padding: 0 0 5%;
}
body.page-ticket-pre .news-txt {
 font-size: 18px;
 line-height: 2;
 margin-bottom: 5%;
}
body.page-ticket-pre .news-txt h6 {
 margin-top: 5%;
}
body.page-ticket-pre .news-txt .news-cap {
 font-size: 16px;
}
body.page-ticket-pre .news-txt .news-cap a {
 text-decoration: underline;
}
body.page-ticket-pre .news-txt .news-cap a:hover {
 text-decoration: none;
}
body.page-ticket-pre .news-txt .news-pg-info {
 border: 1px solid #fff;
 margin-top: 5%;
 padding: 0 5% 5%;
}
body.page-ticket-pre .pg-tbl {
 margin-top: 10px;
 width: 100%;
 color: #333;
 font-family: YakuHanMP, 'Noto Sans JP', sans-serif;
 font-size: 24px;
 text-align: center;
}
body.page-ticket-pre a {
 color: #333;
 text-decoration: underline;
}
body.page-ticket-pre a:hover {
 color: #333;
 text-decoration: none;
}
body.page-ticket-pre .order-first .window {
 background-color: #fff;
 border: 1px solid #bbb;
 padding: 5% 2.5%;
 text-align: center;
 width: 100%;
}
@media only screen and (max-width: 768px) {
 body.page-ticket-pre .pg-catch {
  padding: 5% 0 5%;
 }
 body.page-ticket-pre .news-txt {
  font-size: 14px;
  line-height: 2;
  margin-bottom: 5%;
 }
 body.page-ticket-pre .senkou-notice {
  font-size: 14px;
  padding: 5%;
  margin: 0% auto 5%;
  text-align: left;
 }
}
/* ----------------------------------------------------------------
   contact
  ----------------------------------------------------------------- */
body.page-contact .page-contents {
 width: 100%;
}
body.page-contact .sec-contact {
 margin: 0 auto;
 max-width: 1000px;
 width: 100%;
}
.googleform-wrapper {
 position: relative;
 width: 100%;
 height: 1282px;
 overflow-y: scroll;
}
.googleform-wrapper iframe {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
}
@media only screen and (max-width: 768px) {}