@charset "utf-8";
/*==================================
SWITCH DOT LINE WebCoreSystem-CSS
Ver.2.0
Edit:2021 -
LastUpdate:2021
==================================*/
/* FONTS */
/*
NitalagoRuika 06
font-family: nitalago-ruika,sans-serif;
font-weight: 100;
font-style: normal;

Kinto Sans Bold
font-family: kinto-sans, sans-serif;
font-weight: 700;
font-style: normal;

Kinto Sans Medium
font-family: kinto-sans, sans-serif;
font-weight: 500;
font-style: normal;

Kinto Sans Regular
font-family: kinto-sans, sans-serif;
font-weight: 400;
font-style: normal;

VDL-LineG R
font-family: vdl-lineg, sans-serif;
font-weight: 400;
font-style: normal;
*/

/*==================================
*** CORE ***
==================================*/
html {
  font-size: 15px;
  overflow: auto;
}

body {
  min-height: 100vh;
  padding: 0;
  margin: 0;
  background-color: #000;
  line-height: 160%;
  color: #c9c9c9;
  text-align: center;
  letter-spacing: 0.06em !important;
  font-feature-settings: "palt" 1;
  overflow: hidden;
  overflow-wrap: break-word;
  animation: fadeIn 2s ease 0s 1 normal;
  -webkit-text-size-adjust: 100%;
}

a img {
  border: none;
}

article {
  display: block;
  padding: 0;
  margin: 0;
}

section {
  margin: 0;
}

.inner_block {
  display: block;
  padding: 15px 30px;
  margin: 15px 0;
  border: 1px solid #9c9c9c;
}

/* CONTENT ANIMATION */
.scroll_ani {
  opacity: 0.1;
}

.content_fade {
  opacity: 0.1;
  animation: fadein_content 1s ease 0s 1 forwards;
}

@keyframes fadein_content {
  0%,
  30% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/*==================================
LAYOUT - EDIT
==================================*/
article {
  padding: 0;
  background-image: url(../common/bg_content.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-attachment: fixed;
}

section {
  padding: 150px 0 45px 0;
  margin: 0;
  border-top: 1px solid #1c1c1c;
}

section#content_blank {
  padding: 1px 0;
  margin: 0;
  border: none;
}

/* section:first-of-type {
  border-top: none;
} */

.device_width {
  max-width: 920px;
  padding: 0 30px;
  margin: 0 auto 60px auto;
  text-align: center;
}

/*==================================
INTRO ANIMATION
==================================*/
#intro_ani {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100vw;
  height: 100vh;
  padding: 0;
  position: fixed;
  top: 0;
  left: 0;
  overflow: hidden;
  z-index: 200;
  animation: fixed 4.2s ease 0s 1 forwards;
}

#intro_ani .logo_outline {
  width: 50%;
  height: 100%;
  background-image: url(../common/mainlogo-outline.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 25%;
  z-index: 230;
  animation: logo_outline 3.5s ease 0s 1 forwards;
}

#intro_ani .logo_glow {
  width: 50%;
  height: 100%;
  background-image: url(../common/mainlogo.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 25%;
  z-index: 220;
  animation: logo_glow 3.6s ease 0s 1 forwards;
}

#intro_ani .shutter_top {
  width: 100vw;
  height: 50vh;
  background-color: #000;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 210;
  animation: shutter 4.2s ease 0s 1 forwards;
}

#intro_ani .shutter_bottom {
  width: 100vw;
  height: 50vh;
  background-color: #000;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 210;
  animation: shutter 4.2s ease 0s 1 forwards;
}

/* intro_ani */
@keyframes fade_element {
  0%,
  80% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fixed {
  0%,
  99% {
    height: 100vh;
    opacity: 1;
  }
  100% {
    height: 0;
    opacity: 0;
  }
}

@keyframes shutter {
  0% {
    height: 50vh;
    opacity: 1;
  }
  70% {
    height: 50vh;
    opacity: 1;
  }
  90% {
    height: 0vh;
    opacity: 0.8;
  }
  100% {
    height: 0vh;
    opacity: 0;
  }
}

@keyframes logo_outline {
  0% {
    opacity: 0;
  }
  5% {
    opacity: 1;
  }
  60% {
    opacity: 1;
  }
  65%,
  99% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}

@keyframes logo_glow {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  65% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  85%,
  99% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}

/*==================================
FIXED HEADER
==================================*/
a#head_update {
  display: block;
  width: 130px;
  height: 50px;
  padding: 0;
  text-align: center;
  line-height: 50px;
  background-image: url(../common/tab_update.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: fixed;
  right: 0;
  top: 15px;
  transition: 0.4s;
  z-index: 310;
  animation: fade_element 4.2s ease 0s 1 forwards;
}

/* #top-index a#head_update {
  animation: fade_element 4.2s ease 0s 1 forwards;
} */

a:hover#head_update {
  background-image: url(../common/tab_update-over.png);
}

/* MENU ICON */
a#menu_icon {
  display: none;
}

/*==================================
FOOTER
==================================*/
/* BASIC */
footer {
  display: block;
  padding: 60px 0;
  margin: 0;
  background-color: #000;
  color: #a8a8a8;
  border-bottom: 0;
  border-left: 0;
  border-right: 0;
  border-top: 1px solid #000;
  border-image: linear-gradient(to right, #00c8ff 0%, #ff3899 100%);
  border-image-slice: 1;
}

ul.banner_area {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding: 0;
  margin: 0;
  list-style: none;
}

ul.banner_area li {
  display: block;
  width: 240px;
  height: 48px;
  padding: 0;
  margin: 0 10px;
}

ul.banner_area li a {
  display: block;
}

ul.banner_area li a img {
  display: block;
  width: 100%;
  height: auto;
}

ul.banner_area li a:hover {
  box-shadow: -3px -3px 6px #ff3899, 3px 3px 6px #00c8ff;
}

/*==================================
SNS ICON
==================================*/
ul.sns_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding: 75px 0 0 0;
  margin: 45px 0 15px 0;
  list-style: none;
  background-image: url(../common/footer_logo.png);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: 200px;
}

ul.sns_list li {
  display: block;
  width: 60px;
  height: 50px;
  padding: 0;
  margin: 0 5px;
}

ul.sns_list li a {
  display: block;
  width: 60px;
  height: 60px;
  padding: 0;
  margin: 0;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 30px;
  transition: 0.4s;
}

ul.sns_list li a.twitter {
  background-image: url(../common/snsicon-tw_white.png);
}

ul.sns_list li a:hover.twitter {
  background-image: url(../common/snsicon-tw.png);
}

ul.sns_list li a.facebook {
  background-image: url(../common/snsicon-fb_white.png);
}

ul.sns_list li a:hover.facebook {
  background-image: url(../common/snsicon-fb.png);
}

ul.sns_list li a.instagram {
  background-image: url(../common/snsicon-inst_white.png);
}

ul.sns_list li a:hover.instagram {
  background-image: url(../common/snsicon-inst.png);
}

ul.sns_list li a.youtube {
  background-image: url(../common/snsicon-yt_white.png);
}

ul.sns_list li a:hover.youtube {
  background-image: url(../common/snsicon-yt.png);
}

ul.sns_list li a.line {
  background-image: url(../common/snsicon-line_white.png);
}

ul.sns_list li a:hover.line {
  background-image: url(../common/snsicon-line.png);
}

/*==================================
ANCHOR LINK
==================================*/
.anchor {
  display: block;
  padding-top: 120px !important;
  margin-top: -120px !important;
  position: absolute;
}

/*==================================
MAINVISUAL
==================================*/
#mainvisual {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  height: 100vh;
  min-height: 800px;
  padding: 0;
  margin: 0;
  position: relative;
  overflow: hidden;
  background-color: #000;
  background-image: url(../common/mainvisual.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: 100%;
  border-bottom: 1px solid #1c1c1c;
}

/* LOGO */
h1.mainlogo {
  width: 50%;
  height: 100%;
  background-image: url(../common/mainlogo.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 25%;
  z-index: 10;
}

/*==================================
SUB NAV FIXED
==================================*/
#index-sub_nav-fixed {
  margin: 0;
  width: 100vw;
  position: relative;
  z-index: 300;
  top: -35vh;
  animation: fade_element 4.2s ease 0s 1 forwards;
}

/* #top-index #index-sub_nav-fixed {
  animation: fade_element 4.2s ease 0s 1 forwards;
} */

#index-sub_nav-fixed div {
  padding: 30px 0;
  margin: 0;
  left: 0;
  overflow-y: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
  -webkit-overflow-scrolling: touch;
  position: absolute;
  width: 100vw;
}

#index-sub_nav-fixed div::-webkit-scrollbar {
  display: none;
}

#index-sub_nav-fixed ul {
  display: table;
  padding: 0;
  margin: 0 auto;
  text-align: center;
  scrollbar-width: none;
}

#index-sub_nav-fixed li {
  display: table-cell;
  padding: 0 15px;
  margin: 0;
}

#index-sub_nav-fixed li a {
  display: block;
  white-space: nowrap;
}

#index-sub_nav-fixed li a:hover {
  text-decoration: none;
}

#index-sub_nav-fixed.fixed {
  position: fixed;
  top: 0;
}

#index-sub_nav-fixed.fixed div {
  /* background: linear-gradient(rgba(0, 0, 0, 1) 10%, rgba(0, 0, 0, 0) 90%); */
  background-color: rgba(0, 0, 0, 0.8);
  transition: 1s;
}

/* 隣接するタグに高さ分を追加 */
/* #index-sub_nav-fixed.fixed + section {
  margin-top: 45px;
} */

/*==================================
IMG & MOV RATIO
==================================*/
/* EMBED VIDEO */
.embed_video,
.embed_img {
  margin: 0 auto 60px auto;
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  background-color: #2c2c2c;
  border: 1px solid #151515;
  border-radius: 10px;
}

.embed_video iframe,
.embed_img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* IMG 16:9 */
.embed_img.ratio-16_9 {
  padding-bottom: 56.25%;
}

/* IMG 3:2 */
.embed_img.ratio-3_2 {
  padding-bottom: 66.6666%;
}

/* IMG 4:3 */
.embed_img.ratio-4_3 {
  padding-bottom: 75%;
}

/* IMG 1:1 */
.embed_img.ratio_1_1 {
  padding-bottom: 100%;
}

/* IMG ALIGN */
.img_align_left {
  max-width: 40%;
  height: auto;
  padding: 0;
  margin: 15px 20px 15px 0;
  float: left;
}

.img_align_right {
  max-width: 40%;
  height: auto;
  padding: 0;
  margin: 15px 0 15px 20px;
  float: right;
}

/*==================================
BTN
==================================*/
/* BTN PAGETOP */
.fixed_pagetop {
  display: block;
  width: 60px;
  height: 60px;
  padding: 0;
  margin: 0;
  /* background-color: rgba(255, 0, 0, 0.8); */
  background-image: url(../common/icon-up.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 40px;
  position: fixed;
  right: 0; /* with sidebar */
  bottom: 30px;
  z-index: 100;
}

/* BTN BORDER INLINE */
a.btn_border {
  padding: 0 0 5px 0;
  color: #f3f3f3;
  transition: 0.2s;
}

a:hover.btn_border {
  color: #f3f3f3;
  text-decoration: none;
  text-shadow: -2px -2px 8px #ff3899, 2px 2px 8px #00c8ff;
}

/* BTN BORDER BLOCK */
a.btn_border_block {
  display: block;
  min-width: 320px;
  padding: 10px 30px;
  color: #f3f3f3;
  background-color: rgba(0, 0, 0, 0.2);
  border: 2px solid #f3f3f3;
  box-shadow: -2px -2px 4px #ff3899, 2px 2px 4px #00c8ff;
  text-shadow: -1px -1px 6px #ff3899, 1px 1px 6px #00c8ff;
  transition: 0.4s;
}

a:hover.btn_border_block {
  background-color: #f3f3f3;
  color: #000;
  text-shadow: none;
  text-decoration: none;
}

.acc_body a.btn_border_block {
  width: 320px;
  margin: 20px auto;
}

.btn_center.wide {
  margin: 5px 0 10px 0;
}

.btn_center.wide a.btn_border_block {
  width: 100%;
}

/* BTN CENTER */
.btn_center {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  padding: 10px 0;
  margin: 15px 0;
}

.acc_body .btn_center {
  display: block;
  padding: 0;
}

/* BTN NEXT */
a.btn_next {
  display: block;
  width: 60px;
  height: 60px;
  padding: 0;
  margin: 45px auto 0 auto;
  background-image: url(../common/btn_scroll.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#mainvisual a.btn_next {
  position: absolute;
  /* bottom: 10%; */
  bottom: 30px;
  z-index: 250;
  animation: fade_element 4.2s ease 0s 1 forwards;
}

#mainvisual .btn_center {
  position: absolute;
  /* bottom: 20%; */
  bottom: 130px;
  z-index: 250;
  animation: fade_element 4.2s ease 0s 1 forwards;
}

#mainvisual .btn_center a {
  width: 430px;
  margin: 0 10px;
}

/*==================================
TABLE
==================================*/
.table_block {
  display: block;
  padding: 0;
  margin: 30px 0;
}

table {
  width: 100%;
  table-layout: fixed;
  padding: 0;
  margin: 0;
  border-collapse: collapse;
}

table th,
table td {
  padding: 15px;
  border: 1px solid #c9c9c9;
  text-align: center;
}

table th {
  background-color: rgba(0, 0, 0, 0.05);
}

/* table td:hover {
  background-color: rgb(255, 254, 238);
} */

/* TH横向き */
table.horizontal th:first-of-type,
table.horizontal td:first-of-type {
  border-left: none !important;
}

table.horizontal th:last-of-type,
table.horizontal td:last-of-type {
  border-right: none !important;
}

/* TH縦向き */
table.vertical th {
  border-left: none !important;
  width: 30%;
}

table.vertical td {
  text-align: left;
}

table.vertical td:last-of-type {
  border-right: none !important;
}

/*==================================
ACCORDION
==================================*/
.accordion {
  display: block;
  padding: 0;
  margin: 30px 0 60px 0;
}

.acc_ttl {
  display: block;
  padding: 30px 15px;
  margin: 0;
  cursor: pointer;
}

/* .acc_ttl.selected {

} */

.acc_ttl span {
  display: block;
  margin: 0 30px;
  background-image: url(../common/icon-plus.png);
  background-position: right center;
  background-repeat: no-repeat;
  background-size: 24px;
}

.acc_ttl.selected span {
  background-image: url(../common/icon-minus.png);
}

.acc_body {
  display: block;
  padding: 0 45px 45px 45px;
  margin: -15px 0 0 0;
}

.acc_body p:first-of-type {
  padding-top: 0;
}

/*==================================
EMBED TWITTER
==================================*/
#twitter_area {
  /* height: 60vh; */
  height: 480px;
  margin: 0 auto 30px auto;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0);
}

/*==================================
SLIDE
==================================*/
/* MULTI 3 */
.multi_slider3 {
  padding: 0;
  margin: 0 0 60px 0;
  text-align: center;
  position: absolute;
  background-color: #000;
}

.multi_slider3 img {
  display: inline-block;
  width: 100%;
  height: auto;
  padding: 0;
  margin: 0;
  position: relative;
  overflow: hidden;
}

/* SLICK COMMON */
.slick-slide {
  position: relative;
  margin: 0 15px;
  transition: all ease-in-out 1s;
  opacity: 0.3;
}

/* .slick-active {
  opacity: 0.3;
} */

.slick-current {
  opacity: 1;
}

button.slick-arrow {
  width: 45px;
  height: 90px;
  z-index: 100;
}

.cast_slide .slick-list {
  padding: 0 !important;
  margin: 0 -15% !important;
}

.mov_slide .slick-list {
  padding: 0 !important;
  margin: 0 -50% !important;
}

/* Dots */
.slick-dots {
  display: block;
  width: 100%;
  padding: 0;
  margin: 15px 0 0 0;
  list-style: none;
  text-align: center;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 6px;
  padding: 0;
  border: 1px solid #9c9c9c;
  border-radius: 50%;
  background-color: #f3f3f3;
  cursor: pointer;
}

.slick-dots li.slick-active {
  background-color: #9c9c9c;
}

.slick-dots li button {
  display: block;
  width: 12px;
  height: 12px;
  padding: 0;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
}

.slick-prev {
  width: 60px;
  height: 60px;
  background-color: rgba(0, 0, 0, 1);
  background-image: url(../common/icon-left.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 45px;
  box-shadow: -3px -3px 10px #ff3899, 3px 3px 10px #00c8ff;
  transition: 0.4s;
  position: absolute;
  top: calc(50% - 30px);
  left: 0;
  margin: 0;
  padding: 0;
  cursor: pointer;
  border-radius: 0 3px 3px 0;
  z-index: 100;
}

.slick-next {
  width: 60px;
  height: 60px;
  background-color: rgba(0, 0, 0, 1);
  background-image: url(../common/icon-right.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 45px;
  box-shadow: -3px -3px 10px #ff3899, 3px 3px 10px #00c8ff;
  transition: 0.4s;
  position: absolute;
  top: calc(50% - 30px);
  right: 0;
  margin: 0;
  padding: 0;
  cursor: pointer;
  border-radius: 3px 0 0 3px;
  z-index: 100;
}

/*==================================
  lity.css
  ==================================*/
/* CUSTOMIZE */
.modal_content {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding: 15px 30px;
  background-color: #f3f3f3;
}

#window_menu .modal_content {
  width: calc(100vw - 180px);
  height: calc(100vh - 180px);
}

/*! Lity * Copyright (c) 2016 Jan Sorgalla; Licensed MIT */
.lity {
  z-index: 9990;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  white-space: nowrap;
  background: rgba(0, 0, 0, 0.9);
  outline: none !important;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.lity.lity-opened {
  opacity: 1;
}
.lity.lity-closed {
  opacity: 0;
}
.lity * {
  box-sizing: border-box;
}
.lity-wrap {
  z-index: 9990;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  text-align: center;
  outline: none !important;
  overflow: auto;
}
.lity-wrap:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -0.25em;
}
.lity-loader {
  z-index: 9991;
  color: #f3f3f3;
  position: absolute;
  top: 50%;
  margin-top: -0.8em;
  width: 100%;
  text-align: center;
  font-size: 14px;
  font-family: Arial, Helvetica, sans-serif;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.lity-loading .lity-loader {
  opacity: 1;
}
.lity-container {
  z-index: 9992;
  position: relative;
  text-align: left;
  vertical-align: middle;
  display: inline-block;
  white-space: normal;
  max-width: 100%;
  max-height: 100%;
  outline: none !important;
}
.lity-content {
  z-index: 9993;
  width: 100%;
  transform: scale(1);
  transition: transform 0.3s ease;
}
.lity-loading .lity-content,
.lity-closed .lity-content {
  transform: scale(0.8);
}
.lity-content:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  /* box-shadow: 0 0 30px rgba(0, 0, 0, 0.6); */
}
.lity-close {
  z-index: 9994;
  width: 35px;
  height: 35px;
  position: fixed;
  right: 0;
  top: 0;
  -webkit-appearance: none;
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  padding: 0;
  color: #f3f3f3;
  font-style: normal;
  font-size: 35px;
  font-family: Arial, Baskerville, monospace;
  line-height: 35px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  border: 0;
  background: none;
  outline: none;
  box-shadow: none;
}
.lity-close::-moz-focus-inner {
  border: 0;
  padding: 0;
}
.lity-close:hover,
.lity-close:focus,
.lity-close:active,
.lity-close:visited {
  text-decoration: none;
  text-align: center;
  padding: 0;
  color: #f3f3f3;
  font-style: normal;
  font-size: 35px;
  font-family: Arial, Baskerville, monospace;
  line-height: 35px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  border: 0;
  background: none;
  outline: none;
  box-shadow: none;
}
.lity-close:active {
  top: 1px;
}
.lity-image img {
  max-width: 100%;
  display: block;
  line-height: 0;
  border: 0;
}
.lity-iframe .lity-container,
.lity-youtube .lity-container,
.lity-vimeo .lity-container,
.lity-facebookvideo .lity-container,
.lity-googlemaps .lity-container {
  width: 100%;
  max-width: 964px;
}
.lity-iframe-container {
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  overflow: auto;
  pointer-events: auto;
  transform: translateZ(0);
  -webkit-overflow-scrolling: touch;
}
.lity-iframe-container iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
}
.lity-hide {
  display: none;
}

/* EDIT LITY */
.lity-close {
  width: 80px;
  height: 80px;
  right: calc(50% - 40px);
  top: calc(100vh - 120px);
  color: #000;
  font-family: "kinto-sans", sans-serif;
  font-size: 60px;
  font-weight: 400;
  text-shadow: -2px -2px 6px #ff3899, 2px 2px 6px #00c8ff;
  transition: 0.2s;
}

.lity-close:hover,
.lity-close:focus,
.lity-close:active,
.lity-close:visited {
  width: 80px;
  height: 80px;
  right: calc(50% - 40px);
  top: calc(100vh - 120px);
  color: #fff;
  font-family: "kinto-sans", sans-serif;
  font-size: 60px;
  font-weight: 400;
  text-shadow: -2px -2px 6px #ff3899, 2px 2px 6px #00c8ff;
}

.lity-container {
  max-width: calc(100% - 120px);
  max-height: calc(100% - 120px);
}

/*==================================
*** ORIGINAL DESIGN ***
==================================*/
/* カラーボーダー */
.cb_t-odd {
  border-bottom: 0;
  border-top: 2px solid #000;
  border-image: linear-gradient(to right, #000 0%, #00c8ff 20%, #ff3899 80%, #000 100%);
  border-image-slice: 1;
}

.cb_t-even {
  border-bottom: 0;
  border-top: 2px solid #000;
  border-image: linear-gradient(to right, #000 0%, #ff3899 20%, #00c8ff 80%, #000 100%);
  border-image-slice: 1;
}

.accordion {
  border-top: 0;
  border-bottom: 2px solid #000;
  border-image: linear-gradient(to right, #000 0%, #ff3899 20%, #00c8ff 80%, #000 100%);
  border-image-slice: 1;
}

#content_news .news_entry {
  border-bottom: 0;
  border-top: 2px solid #000;
  border-image: linear-gradient(to right, #000 0%, #00c8ff 20%, #ff3899 80%, #000 100%);
  border-image-slice: 1;
}

#content_news .news_entry:nth-child(2n) {
  border-bottom: 0;
  border-top: 2px solid #000;
  border-image: linear-gradient(to right, #000 0%, #ff3899 20%, #00c8ff 80%, #000 100%);
  border-image-slice: 1;
}

#content_news .news_entry:first-of-type {
  border: none;
}

/* ニュース・ツイッター */
#separate {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  width: 980px;
  margin: 0 auto 105px auto;
}

#separate a.btn_border_block {
  width: calc(100% - 40px);
  margin: 0 20px;
}

#content_news {
  width: calc(50% - 20px);
  padding-bottom: 0;
  margin: 0 20px 0 0;
  border-top: none;
}

#content_twitter {
  width: calc(50% - 20px);
  padding-bottom: 0;
  margin: 0 0 0 20px;
  border-top: none;
}

#content_news .news_area {
  height: 480px;
  margin: 0 auto 30px auto;
  overflow: auto;
}

#content_news .news_entry {
  display: block;
  padding: 30px 15px;
  text-align: left;
}

#content_news .news_entry h4,
#content_news-archives .news_entry h4 {
  margin: 5px 0 10px 0;
  font-size: 1.16rem;
  font-weight: 700;
  color: #fff;
  text-shadow: -2px -2px 6px #ff3899, 2px 2px 6px #00c8ff;
}

#content_news .news_entry h4 a,
#content_news-archives .news_entry h4 a {
  text-decoration: underline;
}

#content_news .news_entry .date,
#content_news-archives .news_entry .date {
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  text-shadow: -2px -2px 6px #ff3899, 2px 2px 6px #00c8ff;
}

#content_news .news_entry p a,
#content_news-archives .news_entry p a {
  transition: 0.4s;
}

#content_news .news_entry p a:hover,
#content_news-archives .news_entry p a:hover {
  color: #fff;
  text-shadow: -2px -2px 6px #ff3899, 2px 2px 6px #00c8ff;
  text-decoration: none;
}

/* ニュースアーカイブ */
#content_news-archives .news_area {
  display: block;
  text-align: left;
}

#content_news-archives .news_area .news_entry {
  display: block;
  /* width: 480px; */
  padding: 45px 60px 40px 60px;
  margin: 30px 120px;
  text-align: left;
  background-color: rgba(0, 0, 0, 0.8);
  box-shadow: -5px -5px 10px rgba(255, 56, 153, 0.2), 5px 5px 10px rgba(0, 200, 255, 0.2);
  border-radius: 15px;
}

#content_news-archives .news_area .news_entry:nth-child(2n) {
  box-shadow: -5px -5px 10px rgba(0, 200, 255, 0.2), 5px 5px 10px rgba(255, 56, 153, 0.2);
}

/* イントロダクション */
#content_introduction .read_text {
  margin: 0;
}

#content_introduction .btn_center {
  margin-top: 30px;
}

/* キャスト/スタッフ */
#content_cast_staff .name_list:first-of-type {
  margin-bottom: 30px;
}

#content_cast_staff .name_list ul {
  padding: 0;
  margin: 0 0 1.5rem 0;
  list-style: none;
}

#content_cast_staff .name_list ul li {
  padding: 0;
  margin: 4px 0;
}

#content_cast_staff .name_list ul li a.btn_border_block {
  display: inline-block;
  min-width: 100px;
  padding: 0 15px;
  margin: 5px 0;
  border-radius: 30px;
  font-size: 1rem;
}

.comment_detail {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 600px;
  padding: 45px 60px;
  background-color: #000;
  border-radius: 4px;
  box-shadow: -3px -3px 10px #ff3899, 3px 3px 10px #00c8ff;
  font-size: 1.1rem;
}

.comment_detail.photo-urashimasakatasen {
  background-image: url(../common/photo-urashimasakatasen.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: 600px;
  padding-top: 450px;
}

/* 注意書き */
.notice {
  display: block;
  /* width: 480px; */
  padding: 40px 60px;
  margin: 60px 120px;
  text-align: left;
  background-color: rgba(0, 0, 0, 0.8);
  box-shadow: -5px -5px 10px rgba(255, 56, 153, 0.2), 5px 5px 10px rgba(0, 200, 255, 0.2);
  border-radius: 15px;
}

/* スケジュール */
.schedule_inner {
  padding: 30px 0;
  margin-top: 30px;
}

.schedule_inner h4 {
  color: #a8a8a8;
  margin: 0;
}

.schedule_graphic-tokyo {
  display: block;
  width: 702px;
  height: 390px;
  padding: 0;
  margin: 30px auto 15px auto;
  background-image: url(../common/schedule-tokyo.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.schedule_graphic-osaka {
  display: block;
  width: 702px;
  height: 195px;
  padding: 0;
  margin: 30px auto 15px auto;
  background-image: url(../common/schedule-osaka.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.schedule_inner.doublecast {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding: 15px 0;
  margin: 0 0 45px 0;
}

.schedule_icon-a {
  display: block;
  padding: 20px 0 20px 60px;
  margin: 0 0 0 30px;
  background-image: url(../common/schedule_icon-a.png);
  background-position: left center;
  background-repeat: no-repeat;
  background-size: 52px;
}

.schedule_icon-b {
  display: block;
  padding: 20px 0 20px 60px;
  margin: 0 0 0 30px;
  background-image: url(../common/schedule_icon-b.png);
  background-position: left center;
  background-repeat: no-repeat;
  background-size: 52px;
}

/* 公演実施に関する重要なお知らせ */
#covid_info {
  padding-top: 120px !important;
}

#covid_info div {
  padding: 30px 90px;
  margin-top: 30px;
  text-align: left;
}

/* グッズ */
#content_ticket_goods .device_width {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  min-height: 30vh;
}

/* ハンコセンター */
#about_area ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: left;
  align-items: center;
  padding: 10px 0 60px 0;
  margin: 0;
  list-style: none;
}

#about_area ul li {
  padding: 0;
  margin: 2px;
  width: 226px;
  height: 226px;
  background-color: #0e0e0e;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
}

#about_area ul li.blank {
  background-image: none !important;
  opacity: 0.8;
}

#about_area ul li a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  transition: 0.4s;
  position: relative;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

#about_area ul li a:hover {
  text-decoration: none;
  background-color: rgba(0, 0, 0, 0.6);
  border-radius: 4px;
  box-shadow: -3px -3px 10px #ff3899, 3px 3px 10px #00c8ff;
  z-index: 3;
  transform: scale(1.02);
}

#about_area ul li a .label_new {
  width: 90px;
  height: 90px;
  background-image: url(../common/aboutnew.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 2;
}

#about_area ul li:nth-of-type(1) {
  background-image: url(../common/aboutnum-01.png);
}

#about_area ul li:nth-of-type(2) {
  background-image: url(../common/aboutnum-02.png);
}

#about_area ul li:nth-of-type(3) {
  background-image: url(../common/aboutnum-03.png);
}

#about_area ul li:nth-of-type(4) {
  background-image: url(../common/aboutnum-04.png);
}

#about_area ul li:nth-of-type(5) {
  background-image: url(../common/aboutnum-05.png);
}

#about_area ul li:nth-of-type(6) {
  background-image: url(../common/aboutnum-06.png);
}

#about_area ul li:nth-of-type(7) {
  background-image: url(../common/aboutnum-07.png);
}

#about_area ul li:nth-of-type(8) {
  background-image: url(../common/aboutnum-08.png);
}

#about_area ul li:nth-of-type(9) {
  background-image: url(../common/aboutnum-09.png);
}

#about_area ul li:nth-of-type(10) {
  background-image: url(../common/aboutnum-10.png);
}

#about_area ul li:nth-of-type(11) {
  background-image: url(../common/aboutnum-11.png);
}

#about_area ul li:nth-of-type(12) {
  background-image: url(../common/aboutnum-12.png);
}

#about_area ul li:nth-of-type(13) {
  background-image: url(../common/aboutnum-13.png);
}

#about_area ul li:nth-of-type(14) {
  background-image: url(../common/aboutnum-14.png);
}

#about_area ul li:nth-of-type(15) {
  background-image: url(../common/aboutnum-15.png);
}

#about_area ul li:nth-of-type(16) {
  background-image: url(../common/aboutnum-16.png);
}

#about_area ul li:nth-of-type(1) a {
  background-image: url(../common/abouttext-01.png);
}

#about_area ul li:nth-of-type(1) a:hover {
  background-image: url(../common/abouttext-01hover.png);
}

#about_area ul li:nth-of-type(2) a {
  background-image: url(../common/abouttext-02.png);
}

#about_area ul li:nth-of-type(2) a:hover {
  background-image: url(../common/abouttext-02hover.png);
}

#about_area ul li:nth-of-type(3) a {
  background-image: url(../common/abouttext-03.png);
}

#about_area ul li:nth-of-type(3) a:hover {
  background-image: url(../common/abouttext-03hover.png);
}

#about_area ul li:nth-of-type(4) a {
  background-image: url(../common/abouttext-04.png);
}

#about_area ul li:nth-of-type(4) a:hover {
  background-image: url(../common/abouttext-04hover.png);
}

#about_area ul li:nth-of-type(5) a {
  background-image: url(../common/abouttext-05.png);
}

#about_area ul li:nth-of-type(5) a:hover {
  background-image: url(../common/abouttext-05hover.png);
}

#about_area ul li:nth-of-type(6) a {
  background-image: url(../common/abouttext-06.png);
}

#about_area ul li:nth-of-type(6) a:hover {
  background-image: url(../common/abouttext-06hover.png);
}

#about_area ul li:nth-of-type(7) a {
  background-image: url(../common/abouttext-07.png);
}

#about_area ul li:nth-of-type(7) a:hover {
  background-image: url(../common/abouttext-07hover.png);
}

#about_area ul li:nth-of-type(8) a {
  background-image: url(../common/abouttext-08.png);
}

#about_area ul li:nth-of-type(8) a:hover {
  background-image: url(../common/abouttext-08hover.png);
}

#about_area ul li:nth-of-type(9) a {
  background-image: url(../common/abouttext-09.png);
}

#about_area ul li:nth-of-type(9) a:hover {
  background-image: url(../common/abouttext-09hover.png);
}

#about_area ul li:nth-of-type(10) a {
  background-image: url(../common/abouttext-10.png);
}

#about_area ul li:nth-of-type(10) a:hover {
  background-image: url(../common/abouttext-10hover.png);
}

#about_area ul li:nth-of-type(11) a {
  background-image: url(../common/abouttext-11.png);
}

#about_area ul li:nth-of-type(11) a:hover {
  background-image: url(../common/abouttext-11hover.png);
}

#about_area ul li:nth-of-type(12) a {
  background-image: url(../common/abouttext-12.png);
}

#about_area ul li:nth-of-type(12) a:hover {
  background-image: url(../common/abouttext-12hover.png);
}

#about_area ul li:nth-of-type(13) a {
  background-image: url(../common/abouttext-13.png);
}

#about_area ul li:nth-of-type(13) a:hover {
  background-image: url(../common/abouttext-13hover.png);
}

#about_area ul li:nth-of-type(14) a {
  background-image: url(../common/abouttext-14.png);
}

#about_area ul li:nth-of-type(14) a:hover {
  background-image: url(../common/abouttext-14hover.png);
}

#about_area ul li:nth-of-type(15) a {
  background-image: url(../common/abouttext-15.png);
}

#about_area ul li:nth-of-type(15) a:hover {
  background-image: url(../common/abouttext-15hover.png);
}

#about_area ul li:nth-of-type(16) a {
  background-image: url(../common/abouttext-16.png);
}

#about_area ul li:nth-of-type(16) a:hover {
  background-image: url(../common/abouttext-16hover.png);
}

.keyword_detail {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  max-width: 650px;
  padding: 45px;
  background-color: #000;
  border-radius: 4px;
  box-shadow: -3px -3px 10px #ff3899, 3px 3px 10px #00c8ff;
  background-position: center 15px;
  background-repeat: no-repeat;
  background-size: 220px;
  text-align: center;
}

.keyword_detail.illust-s {
  padding-right: 180px;
  background-image: url(../common/about_illust-s.png);
  background-position: right 15px;
  background-size: 180px;
}

.keyword_detail.illust-u {
  padding-right: 180px;
  background-image: url(../common/about_illust-u.png);
  background-position: right 15px;
  background-size: 180px;
}

.keyword_detail.illust {
  width: 720px;
  max-width: 720px;
  padding-left: 100px;
  padding-right: 30px;
  background-image: url(../common/about_illust.png);
  background-position: left center;
  background-size: 720px;
  background-color: #120000;
}

.keyword_detail.about_cast-tomoyokurosawa {
  padding-top: 230px;
  background-image: url(../common/about_cast-tomoyokurosawa.jpg);
}

.keyword_detail.about_cast-leonagatsuma {
  padding-top: 230px;
  background-image: url(../common/about_cast-leonagatsuma.jpg);
}

.keyword_detail.about_cast-harutosakuraba {
  padding-top: 230px;
  background-image: url(../common/about_cast-harutosakuraba.jpg);
}

.keyword_detail.about_cast-youkikkawa {
  padding-top: 230px;
  background-image: url(../common/about_cast-youkikkawa.jpg);
}

.keyword_detail.about_cast-ryotahirono {
  padding-top: 230px;
  background-image: url(../common/about_cast-ryotahirono.jpg);
}

.keyword_detail.about_cast-reohonda {
  padding-top: 230px;
  background-image: url(../common/about_cast-reohonda.jpg);
}

.keyword_detail.about_cast-jinaoki {
  padding-top: 230px;
  background-image: url(../common/about_cast-jinaoki.jpg);
}

/*==================================
GOODS
==================================*/
#content_goods .notice {
  width: 600px;
  padding: 15px 60px;
  margin: 15px auto 30px auto;
}

#content_goods .notice table th {
  width: 20%;
  text-align: right;
  border: none;
  border-top: 1px solid #1c1c1c;
  text-shadow: -2px -2px 6px #ff3899, 2px 2px 6px #00c8ff;
  color: #f3f3f3;
  font-size: 1.1rem;
}

#content_goods .notice table td {
  text-align: left;
  border: none;
  border-top: 1px solid #1c1c1c;
}

#content_goods .notice table tr:first-of-type th,
#content_goods .notice table tr:first-of-type td {
  border-top: none;
}

#content_goods .notice table a {
  text-decoration: underline;
  transition: 0.2s;
}

#content_goods .notice table a:hover {
  text-shadow: -2px -2px 6px #ff3899, 2px 2px 6px #00c8ff;
  color: #f3f3f3;
}

#content_goods .notice .btn_center {
  margin: 20px auto 15px auto;
}

#content_goods .notice a.btn_border_block {
  width: 100%;
  text-align: center;
}

#goods_area {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.goods_item {
  display: block;
  width: 720px;
  padding: 0;
  margin: 30px 0;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.8);
  box-shadow: -5px -5px 10px rgb(255 56 153 / 20%), 5px 5px 10px rgb(0 200 255 / 20%);
  border-radius: 15px;
}

.item_detail {
  display: block;
  padding: 20px 30px 30px 30px;
  margin: 0;
}

.item_detail h4 {
  margin: 0 0 5px 0;
  text-shadow: -2px -2px 6px #ff3899, 2px 2px 6px #00c8ff;
  color: #f3f3f3;
  font-size: 1.5rem;
}

.item_detail .price {
  padding: 0;
  margin: 0 0 15px 0;
  text-shadow: -2px -2px 6px #ff3899, 2px 2px 6px #00c8ff;
  color: #f3f3f3;
  font-size: 1.3rem;
}

.item_detail .detail {
  padding: 2px 0;
}

.item_image {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding: 30px 10px;
  margin: 0;
  background-color: #f6f6f6;
  border-radius: 15px 15px 0 0;
  list-style: none;
}

.item_image li {
  display: block;
  padding: 0;
  margin: 0 15px;
  color: #5c5c5c;
  font-size: 0.9rem;
  font-style: italic;
}

.item_image li span {
  display: block;
  width: 320px;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: 100%;
}

.item_image li .goods-01 {
  width: 320px;
  height: 450px;
  background-image: url(../common/goods-01.jpg);
}

.item_image.goods-02 li span {
  padding: 150px 0 0 0;
  margin: 10px 0;
}

.item_image li span.goods-02-01 {
  background-image: url(../common/goods-02-01.jpg);
}

.item_image li span.goods-02-02 {
  background-image: url(../common/goods-02-02.jpg);
}

.item_image li span.goods-02-03 {
  background-image: url(../common/goods-02-03.jpg);
}

.item_image li span.goods-02-04 {
  background-image: url(../common/goods-02-04.jpg);
}

.item_image li span.goods-02-05 {
  background-image: url(../common/goods-02-05.jpg);
}

.item_image li span.goods-02-06 {
  background-image: url(../common/goods-02-06.jpg);
}

.item_image li span.goods-02-07 {
  background-image: url(../common/goods-02-07.jpg);
}

.item_image li span.goods-02-08 {
  background-image: url(../common/goods-02-08.jpg);
}

.item_image li span.goods-02-09 {
  background-image: url(../common/goods-02-09.jpg);
}

.item_image li span.goods-02-10 {
  background-image: url(../common/goods-02-10.jpg);
}

.item_image.goods-03 {
  padding: 30px 50px;
}

.item_image.goods-03 li {
  margin: 0 10px;
}

.item_image.goods-03 li span {
  width: 100px;
  padding: 235px 0 0 0;
  margin: 12px 0;
  line-height: 150%;
}

.item_image li span.goods-03-01 {
  background-image: url(../common/goods-03-01.jpg);
}

.item_image li span.goods-03-02 {
  background-image: url(../common/goods-03-02.jpg);
}

.item_image li span.goods-03-03 {
  background-image: url(../common/goods-03-03.jpg);
}

.item_image li span.goods-03-04 {
  background-image: url(../common/goods-03-04.jpg);
}

.item_image li span.goods-03-05 {
  background-image: url(../common/goods-03-05.jpg);
}

.item_image li span.goods-03-06 {
  background-image: url(../common/goods-03-06.jpg);
}

.item_image li span.goods-03-07 {
  background-image: url(../common/goods-03-07.jpg);
}

.item_image li span.goods-03-08 {
  background-image: url(../common/goods-03-08.jpg);
}

.item_image li span.goods-03-09 {
  background-image: url(../common/goods-03-09.jpg);
}

.item_image li span.goods-03-10 {
  background-image: url(../common/goods-03-10.jpg);
}

.item_image.goods-04 li.blank {
  width: 320px;
}

.item_image.goods-04 li span {
  padding: 150px 0 0 0;
  margin: 10px 0;
}

.item_image li span.goods-04-01 {
  background-image: url(../common/goods-04-01.jpg);
}

.item_image li span.goods-04-02 {
  background-image: url(../common/goods-04-02.jpg);
}

.item_image li span.goods-04-03 {
  background-image: url(../common/goods-04-03.jpg);
}

.item_image li span.goods-04-04 {
  background-image: url(../common/goods-04-04.jpg);
}

.item_image li span.goods-04-05 {
  background-image: url(../common/goods-04-05.jpg);
}

.item_image li span.goods-04-06 {
  background-image: url(../common/goods-04-06.jpg);
}

.item_image li span.goods-04-07 {
  background-image: url(../common/goods-04-07.jpg);
}

.item_image.goods-05 li span {
  width: 320px;
  height: 360px;
  margin: 10px 0;
}

.item_image li span.goods-05-01 {
  background-image: url(../common/goods-05-01.jpg);
}

.item_image li span.goods-05-02 {
  background-image: url(../common/goods-05-02.jpg);
}

.item_image li .goods-06 {
  width: 320px;
  height: 360px;
  background-image: url(../common/goods-06.jpg);
}

.item_image li .goods-07-01 {
  width: 320px;
  height: 460px;
  background-image: url(../common/news_animate.jpg);
}

.item_image li .goods-07-02 {
  width: 320px;
  height: 460px;
  background-image: url(../common/news_amazon.jpg);
}


/* Blu-ray */
#content_goods .no_img .item_detail {
  padding: 40px 30px 30px 30px;
}

#content_goods .item_table {
  width: 100%;
  padding: 30px 0 0 0;
  margin: 0 auto;
  border-bottom: 1px solid #1c1c1c;
}

#content_goods .item_table table th {
  width: 20%;
  text-align: right;
  border: none;
  border-top: 1px solid #1c1c1c;
  text-shadow: -2px -2px 6px #ff3899, 2px 2px 6px #00c8ff;
  color: #f3f3f3;
  font-size: 1.1rem;
}

#content_goods .item_table table td {
  padding: 15px 10px 15px 30px;
  text-align: left;
  border: none;
  border-top: 1px solid #1c1c1c;
}

#content_goods .item_table table a {
  text-decoration: underline;
  transition: 0.2s;
}

#content_goods .item_table table a:hover {
  text-shadow: -2px -2px 6px #ff3899, 2px 2px 6px #00c8ff;
  color: #f3f3f3;
}

#content_goods .item_table table td h5 {
  margin: 12px 0 0 0;
  font-weight: 600;
  color: #f3f3f3;
}

#content_goods .item_table table td h5:first-of-type {
  margin: 3px 0 0 0;
}

#content_goods .item_detail .btn_center {
  padding: 0;
}

#content_goods .item_detail .btn_center a.btn_border_block {
  margin-top: 20px;
}

/*==================================
CAST
==================================*/
.cast_img {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  transition: 0.4s;
}

.cast_name {
  width: 100%;
  height: 0;
  padding-top: 38.1%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  left: 0;
  bottom: -1px;
}

.cast-tomoyokurosawa {
  background-image: url(../common/cast-tomoyokurosawa.jpg);
  cursor: alias;
}

.slick-current.cast-tomoyokurosawa:hover {
  background-image: url(../common/cast-tomoyokurosawa-over.jpg);
}

.cast-tomoyokurosawa .cast_name {
  background-image: url(../common/cast-tomoyokurosawa.png);
}

.cast-jinaoki {
  background-image: url(../common/cast-jinaoki.jpg);
  cursor: alias;
}

.slick-current.cast-jinaoki:hover {
  background-image: url(../common/cast-jinaoki-over.jpg);
}

.cast-jinaoki .cast_name {
  background-image: url(../common/cast-jinaoki.png);
}

.cast-leonagatsuma {
  background-image: url(../common/cast-leonagatsuma.jpg);
  cursor: alias;
}

.slick-current.cast-leonagatsuma:hover {
  background-image: url(../common/cast-leonagatsuma-over.jpg);
}

.cast-leonagatsuma .cast_name {
  background-image: url(../common/cast-leonagatsuma.png);
}

.cast-youkikkawa {
  background-image: url(../common/cast-youkikkawa.jpg);
  cursor: alias;
}

.slick-current.cast-youkikkawa:hover {
  background-image: url(../common/cast-youkikkawa-over.jpg);
}

.cast-youkikkawa .cast_name {
  background-image: url(../common/cast-youkikkawa.png);
}

.cast-ryotahirono {
  background-image: url(../common/cast-ryotahirono.jpg);
  cursor: alias;
}

.slick-current.cast-ryotahirono:hover {
  background-image: url(../common/cast-ryotahirono-over.jpg);
}

.cast-ryotahirono .cast_name {
  background-image: url(../common/cast-ryotahirono.png);
}

.cast-harutosakuraba {
  background-image: url(../common/cast-harutosakuraba.jpg);
  cursor: alias;
}

.slick-current.cast-harutosakuraba:hover {
  background-image: url(../common/cast-harutosakuraba-over.jpg);
}

.cast-harutosakuraba .cast_name {
  background-image: url(../common/cast-harutosakuraba.png);
}

.cast-sena {
  background-image: url(../common/cast-sena.jpg);
  cursor: alias;
}

.slick-current.cast-sena:hover {
  background-image: url(../common/cast-sena-over.jpg);
}

.cast-sena .cast_name {
  background-image: url(../common/cast-sena.png);
}

.cast-takaosakuma {
  background-image: url(../common/cast-takaosakuma.jpg);
  cursor: alias;
}

.slick-current.cast-takaosakuma:hover {
  background-image: url(../common/cast-takaosakuma-over.jpg);
}

.cast-takaosakuma .cast_name {
  background-image: url(../common/cast-takaosakuma.png);
}

.cast-reohonda {
  background-image: url(../common/cast-reohonda.jpg);
  cursor: alias;
}

.slick-current.cast-reohonda:hover {
  background-image: url(../common/cast-reohonda-over.jpg);
}

.cast-reohonda .cast_name {
  background-image: url(../common/cast-reohonda.png);
}

.cast-mitsurukarahashi {
  background-image: url(../common/cast-mitsurukarahashi.jpg);
  cursor: alias;
}

.slick-current.cast-mitsurukarahashi:hover {
  background-image: url(../common/cast-mitsurukarahashi-over.jpg);
}

.cast-mitsurukarahashi .cast_name {
  background-image: url(../common/cast-mitsurukarahashi.png);
}

.cast-toyotaka {
  background-image: url(../common/cast-toyotaka.jpg);
}

.cast-toyotaka .cast_name {
  background-image: url(../common/cast-toyotaka.png);
}

.cast-ryo {
  background-image: url(../common/cast-ryo.jpg);
}

.cast-ryo .cast_name {
  background-image: url(../common/cast-ryo.png);
}

.cast-hilomu {
  background-image: url(../common/cast-hilomu.jpg);
}

.cast-hilomu .cast_name {
  background-image: url(../common/cast-hilomu.png);
}

.cast-dolton {
  background-image: url(../common/cast-dolton.jpg);
}

.cast-dolton .cast_name {
  background-image: url(../common/cast-dolton.png);
}

.cast-kenta {
  background-image: url(../common/cast-kenta.jpg);
}

.cast-kenta .cast_name {
  background-image: url(../common/cast-kenta.png);
}

.cast-kimutaku {
  background-image: url(../common/cast-kimutaku.jpg);
}

.cast-kimutaku .cast_name {
  background-image: url(../common/cast-kimutaku.png);
}

.cast-brother1 {
  background-image: url(../common/cast-brother1.jpg);
  cursor: alias;
}

.slick-current.cast-brother1:hover {
  background-image: url(../common/cast-brother-over.jpg);
}

.cast-brother1 .cast_name {
  background-image: url(../common/cast-brother1.png);
}

.cast-brother2 {
  background-image: url(../common/cast-brother2.jpg);
  cursor: alias;
}

.slick-current.cast-brother2:hover {
  background-image: url(../common/cast-brother-over.jpg);
}

.cast-brother2 .cast_name {
  background-image: url(../common/cast-brother2.png);
}

.cast-sister1 {
  background-image: url(../common/cast-sister1.jpg);
  cursor: alias;
}

.slick-current.cast-sister1:hover {
  background-image: url(../common/cast-sister-over.jpg);
}

.cast-sister1 .cast_name {
  background-image: url(../common/cast-sister1.png);
}

.cast-sister2 {
  background-image: url(../common/cast-sister2.jpg);
  cursor: alias;
}

.slick-current.cast-sister2:hover {
  background-image: url(../common/cast-sister-over.jpg);
}

.cast-sister2 .cast_name {
  background-image: url(../common/cast-sister2.png);
}

/*==================================
INFO
==================================*/
#content_information h3 {
  margin-bottom: 0;
}

#content_information h3 span {
  display: block;
  font-size: 1.3rem;
}

#content_information .info_area {
  display: block;
  text-align: left;
}

#content_information .inner_section {
  display: block;
  padding: 45px 55px;
  margin: 40px 120px;
  text-align: left;
  background-color: rgba(0, 0, 0, 0.8);
  box-shadow: -5px -5px 10px rgba(255, 56, 153, 0.2), 5px 5px 10px rgba(0, 200, 255, 0.2);
  border-radius: 15px;
}

#content_information .inner_section a {
  text-decoration: underline;
  transition: 0.4s;
}

#content_information .inner_section a:hover {
  text-shadow: -1px -1px 6px #ff3899, 1px 1px 6px #00c8ff;
}

#content_information .inner_section .update_txt {
  padding: 0;
  margin: -15px 0 30px 0;
  text-align: right;
  font-size: 0.9rem;
  font-style: italic;
}

#content_information .inner_section a.btn_border_block {
  text-align: center;
  text-decoration: none;
  text-shadow: none;
}

#content_information .inner_section h4 {
  margin: 45px 0 2px 0;
  text-shadow: -1px -1px 6px #ff3899, 1px 1px 6px #00c8ff;
}

#content_information .inner_section h4.no_margin {
  margin: 0 0 5px 0;
}

#content_information .inner_section h5 {
  padding: 0 0 5px 0;
  margin: 30px 0 10px 0;
  border-bottom: 1px solid #1c1c1c;
  font-weight: 700;
}

#content_information .inner_section .caption {
  padding: 1px 0;
}

#content_information .inner_section ul {
  padding: 5px 0 0 0;
  margin: 0;
}

#content_information .inner_section ul li {
  padding: 0;
  margin: 0 0 8px 15px;
  line-height: 150%;
}

#content_information .inner_section ul ul {
  padding: 15px 20px 10px 20px;
  margin: 10px 0;
  border: 1px solid #1c1c1c;
  font-size: 0.9rem;
  border-radius: 10px;
}

#content_information .inner_section table {
  padding: 0;
  margin: 5px 0 0 0;
  border-bottom: 1px solid #1c1c1c;
}

#content_information .inner_section table th {
  width: 20%;
  text-align: center;
  border: none;
  border-top: 1px solid #1c1c1c;
  border-right: 1px solid #1c1c1c;
  /* text-shadow: -2px -2px 6px #ff3899, 2px 2px 6px #00c8ff; */
  color: #f3f3f3;
}

#content_information .inner_section table td {
  text-align: left;
  border: none;
  border-top: 1px solid #1c1c1c;
}

#content_information .inner_section table td strong {
  display: block;
  margin-top: 5px;
  color: #fff;
  font-size: 1.1rem;
}

/*==================================
COUNTDOWN
==================================*/
.countdown {
  width: 100%;
  padding: 60px 0 90px 0;
  margin: 0;
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0));
}

.cdtime-container {
  display: flex;
  justify-content: center;
  font-family: vdl-lineg, sans-serif;
  font-weight: 400;
  font-style: normal;
  line-height: 100%;
  text-shadow: -2px -2px 8px #ff3899, 2px 2px 8px #ff3899;
}

.cdtime {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100px;
  padding: 0;
  margin: 0;
  font-size: 0.4rem;
  letter-spacing: 0.2em;
  color: rgba(255, 255, 255, 0.5);
  /* background-color: rgba(0, 0, 0, 0.2); */
}

.cdtime.width-half {
  width: 60px;
}

.cdtime-num {
  font-size: 2.8rem;
  letter-spacing: 0.15em;
  margin-bottom: 25px;
  color: rgba(255, 255, 255, 0.75);
}

/*==================================
MOV
==================================*/
.slide_mov img {
  border-radius: 6px;
}

.btn_play {
  width: 180px;
  height: 180px;
  background-image: url(../common/btn_play.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  left: calc(50% - 90px);
  top: calc(50% - 90px);
}

/*==================================
TEXT
==================================*/
body {
  font-family: "kinto-sans", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 500;
  font-style: normal;
}

h1,
h2,
h3,
h4 {
  padding: 0;
  margin: 0;
  line-height: 140%;
}

p {
  line-height: 160% !important;
  padding: 5px 0;
  margin: 0;
}

a {
  color: #f3f3f3;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

.caption {
  display: block;
  font-size: 0.84rem !important;
  font-weight: 400;
}

.inline_caption {
  display: inline;
  font-size: 0.84rem !important;
  font-weight: 400;
}

h2 {
  font-size: 3.6rem;
  font-family: nitalago-ruika, sans-serif;
  font-weight: 100;
  font-style: normal;
  padding: 0;
  margin: 0 0 45px 0;
  color: #000;
  text-shadow: -3px -3px 8px #ff3899, 3px 3px 8px #00c8ff;
}

h2 br {
  display: none;
}

h3 {
  font-size: 2.6rem;
  font-family: nitalago-ruika, sans-serif;
  font-weight: 100;
  font-style: normal;
  margin: 0 0 15px 0;
  color: #f3f3f3;
  text-shadow: -2px -2px 8px #ff3899, 2px 2px 8px #00c8ff;
}

h4 {
  font-size: 1.3rem;
  font-weight: 700;
  font-style: normal;
  margin: 0 0 15px 0;
  color: #f3f3f3;
}

h5 {
  font-size: 1.1rem;
  font-weight: 500;
  line-height: 160%;
  margin: 15px 0 0 0;
  color: #f3f3f3;
}

.acc_body h5 {
  font-size: 1.2rem;
  font-weight: 700;
  margin: 30px 0 -10px 0;
}

.schedule_inner h5 {
  font-size: 1.6rem;
  font-weight: 700;
  margin: 5px 0 0 0;
}

footer .copyright {
  font-size: 0.8rem;
}

a.btn_border,
a.btn_border_block {
  font-weight: 700;
}

.read_text p {
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 180% !important;
}

#content_cast_staff .name_list ul {
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 180% !important;
}

#content_cast_staff .name_list ul li.small {
  font-size: 1.1rem;
  margin: 2px 0;
}

#content_cast_staff .name_list ul li .caption {
  font-size: 80% !important;
}

.acc_ttl {
  font-size: 1.6rem;
}

.acc_body p {
  font-size: 1.1rem;
  line-height: 180% !important;
  padding: 0;
  margin: 0;
}

#index-sub_nav-fixed li a {
  font-size: 1.1rem;
  font-family: nitalago-ruika, sans-serif;
  font-weight: 100;
  font-style: normal;
  margin: 0;
  color: #fff;
  text-shadow: -2px -2px 6px #ff3899, 2px 2px 6px #00c8ff;
}

.notice h4 {
  font-size: 1.4rem;
  margin-top: 10px;
  text-shadow: -2px -2px 6px #ff3899, 2px 2px 6px #00c8ff;
}

/*==================================
Tablet portrait
==================================*/
@media only screen and (min-device-width: 768px) and (max-device-width: 1023px) and (orientation: portrait) {
}

/*==========================================*/
.fix {
  overflow: hidden;
  zoom: 1;
}

.none {
  display: none;
}

.display_sp {
  display: none !important;
}

.display_pc {
  display: block !important;
}
