@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover; }

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1;
  overflow-x: hidden; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-spacing: 0;
  border-collapse: collapse; }

body, html {
  margin: 0px;
  width: 100%;
  padding: 0px;
  height: 100%;
  color: #5b6275;
  font-size: 16px;
  font-weight: 300;
  position: relative;
  font-family: 'Roboto', serif; }

.clearFix {
  clear: both;
  float: none !important; }

.hide {
  display: none; }

.noScroll {
  overflow: hidden; }

.cage {
  margin: 0 auto;
  padding: 0 20px; }

.flex {
  display: flex;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex; }

.flexC {
  display: flex;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.animate {
  transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  -webkit-transition: 0.5s ease-in-out; }

input, textarea, select {
  border: 0;
  width: 100%;
  display: block;
  border-radius: 0;
  font-size: 0.85rem;
  padding: 15px 15px;
  letter-spacing: 1px;
  border-style: solid;
  background: transparent;
  -webkit-appearance: none;
  -webkit-border-radius: 0px;
  border-bottom: 1px solid #cccccc;
  focus-outline: none;
  focus-outline-style: none;
  focus-outline-color: transparent; }

a {
  text-decoration: none; }

.checkbox {
  margin: 0 15px 25px 0;
  display: inline-block; }
  .checkbox [type="checkbox"]:not(:checked),
  .checkbox [type="checkbox"]:checked {
    left: -9999px;
    position: absolute; }
  .checkbox [type="checkbox"]:not(:checked) + label,
  .checkbox [type="checkbox"]:checked + label {
    color: #818181;
    cursor: pointer;
    position: relative;
    padding-left: 25px;
    font-size: 0.8rem; }
  .checkbox [type="checkbox"]:not(:checked) + label:before,
  .checkbox [type="checkbox"]:checked + label:before {
    left: 0;
    top: 0;
    content: '';
    width: 14px;
    height: 14px;
    position: absolute;
    border: 1px solid #cccccc; }
  .checkbox [type="checkbox"]:not(:checked) + label:after,
  .checkbox [type="checkbox"]:checked + label:after {
    left: 0;
    top: -2px;
    position: absolute;
    -webkit-transition: all .2s;
    -o-transition: all .2s;
    transition: all .2s;
    content: url("../img/check.png"); }
  .checkbox [type="checkbox"]:not(:checked) + label:after {
    opacity: 0;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0); }
  .checkbox [type="checkbox"]:checked + label:after {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1); }

body a[href^="tel:"] {
  color: inherit;
  text-decoration: none;
  pointer-events: none; }

body .SPView {
  display: none; }

body ruby rt {
  font-size: 8px;
  line-height: 8px; }

body canvas#Splash {
  opacity: 1;
  width: 100vw;
  height: 100vh;
  z-index: 10000;
  position: fixed;
  pointer-events: none;
  background-color: white;
  -webkit-transform: translateZ(999px);
  transform: translateZ(999px);
  transition: 2s ease-in-out;
  -o-transition: 2s ease-in-out;
  -moz-transition: 2s ease-in-out;
  -webkit-transition: 2s ease-in-out;
  -webkit-transition-delay: 3s;
  -o-transition-delay: 3s;
  transition-delay: 3s; }

body .safa canvas#Splash {
  -webkit-animation: blurIn 2s ease forwards;
  animation: blurIn 2s ease forwards; }

@keyframes blurIn {
  0% {
    -webkit-filter: blur(60px);
    filter: blur(60px); }
  100% {
    -webkit-filter: blur(0px);
    filter: blur(0px); } }

@-webkit-keyframes blurIn {
  0% {
    -webkit-filter: blur(60px);
    filter: blur(60px); }
  100% {
    -webkit-filter: blur(0px);
    filter: blur(0px); } }

body .cage {
  padding: 0 60px; }

body .paperBG {
  background-size: 100% 100%;
  background-image: url("../../../assets/img/paperBG.jpg"); }

body .sectionTitle {
  color: #5b6275;
  display: table;
  margin: 0 auto 50px auto;
  font-size: 35px;
  letter-spacing: 2px;
  text-align: center; }
  body .sectionTitle span.small {
    font-size: 22px;
    line-height: 38px;
    display: table-cell;
    vertical-align: middle; }
  body .sectionTitle span {
    opacity: 0;
    -webkit-filter: blur(1.5rem);
    filter: blur(1.5rem);
    display: inline-block;
    -webkit-transform: translate(-94px, -68px) rotate(17deg) scaleX(1.62) scaleY(1.4) skewX(34deg) skewY(3deg);
    -ms-transform: translate(-94px, -68px) rotate(17deg) scaleX(1.62) scaleY(1.4) skewX(34deg) skewY(3deg);
    transform: translate(-94px, -68px) rotate(17deg) scaleX(1.62) scaleY(1.4) skewX(34deg) skewY(3deg); }

body .ShowTitle span, body .triggleTitle span {
  opacity: 0;
  -webkit-filter: blur(1.5rem);
  filter: blur(1.5rem);
  display: inline-block;
  font-family: 'Shippori Mincho';
  -webkit-transform: translate(-94px, -68px) rotate(17deg) scaleX(1.62) scaleY(1.4) skewX(34deg) skewY(3deg);
  -ms-transform: translate(-94px, -68px) rotate(17deg) scaleX(1.62) scaleY(1.4) skewX(34deg) skewY(3deg);
  transform: translate(-94px, -68px) rotate(17deg) scaleX(1.62) scaleY(1.4) skewX(34deg) skewY(3deg); }

body .ShowTitle.show span, body .triggleTitle.show span {
  -webkit-animation: bigtextDrop 1s ease forwards;
  animation: bigtextDrop 1s ease forwards; }
  body .ShowTitle.show span:nth-child(2), body .triggleTitle.show span:nth-child(2) {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s; }
  body .ShowTitle.show span:nth-child(3), body .triggleTitle.show span:nth-child(3) {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s; }
  body .ShowTitle.show span:nth-child(4), body .triggleTitle.show span:nth-child(4) {
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s; }
  body .ShowTitle.show span:nth-child(5), body .triggleTitle.show span:nth-child(5) {
    -webkit-animation-delay: 0.55s;
    animation-delay: 0.55s; }
  body .ShowTitle.show span:nth-child(6), body .triggleTitle.show span:nth-child(6) {
    -webkit-animation-delay: 0.66s;
    animation-delay: 0.66s; }
  body .ShowTitle.show span:nth-child(7), body .triggleTitle.show span:nth-child(7) {
    -webkit-animation-delay: 0.79s;
    animation-delay: 0.79s; }
  body .ShowTitle.show span:nth-child(8), body .triggleTitle.show span:nth-child(8) {
    -webkit-animation-delay: 0.9s;
    animation-delay: 0.9s; }
  body .ShowTitle.show span:nth-child(9), body .triggleTitle.show span:nth-child(9) {
    -webkit-animation-delay: 1s;
    animation-delay: 1s; }
  body .ShowTitle.show span:nth-child(10), body .triggleTitle.show span:nth-child(10) {
    -webkit-animation-delay: 1.1s;
    animation-delay: 1.1s; }
  body .ShowTitle.show span:nth-child(11), body .triggleTitle.show span:nth-child(11) {
    -webkit-animation-delay: 1.19s;
    animation-delay: 1.19s; }
  body .ShowTitle.show span:nth-child(12), body .triggleTitle.show span:nth-child(12) {
    -webkit-animation-delay: 1.27s;
    animation-delay: 1.27s; }
  body .ShowTitle.show span:nth-child(13), body .triggleTitle.show span:nth-child(13) {
    -webkit-animation-delay: 1.34s;
    animation-delay: 1.34s; }
  body .ShowTitle.show span:nth-child(14), body .triggleTitle.show span:nth-child(14) {
    -webkit-animation-delay: 1.46s;
    animation-delay: 1.46s; }
  body .ShowTitle.show span:nth-child(15), body .triggleTitle.show span:nth-child(15) {
    -webkit-animation-delay: 1.5s;
    animation-delay: 1.5s; }
  body .ShowTitle.show span:nth-child(16), body .triggleTitle.show span:nth-child(16) {
    -webkit-animation-delay: 1.56s;
    animation-delay: 1.56s; }
  body .ShowTitle.show span:nth-child(17), body .triggleTitle.show span:nth-child(17) {
    -webkit-animation-delay: 1.59s;
    animation-delay: 1.59s; }
  body .ShowTitle.show span:nth-child(18), body .triggleTitle.show span:nth-child(18) {
    -webkit-animation-delay: 1.64s;
    animation-delay: 1.64s; }
  body .ShowTitle.show span:nth-child(19), body .triggleTitle.show span:nth-child(19) {
    -webkit-animation-delay: 1.67s;
    animation-delay: 1.67s; }
  body .ShowTitle.show span:nth-child(20), body .triggleTitle.show span:nth-child(20) {
    -webkit-animation-delay: 1.71s;
    animation-delay: 1.71s; }
  body .ShowTitle.show span:nth-child(21), body .triggleTitle.show span:nth-child(21) {
    -webkit-animation-delay: 1.79s;
    animation-delay: 1.79s; }
  body .ShowTitle.show span:nth-child(22), body .triggleTitle.show span:nth-child(22) {
    -webkit-animation-delay: 1.77s;
    animation-delay: 1.77s; }
  body .ShowTitle.show span:nth-child(23), body .triggleTitle.show span:nth-child(23) {
    -webkit-animation-delay: 1.8s;
    animation-delay: 1.8s; }
  body .ShowTitle.show span:nth-child(24), body .triggleTitle.show span:nth-child(24) {
    -webkit-animation-delay: 1.83s;
    animation-delay: 1.83s; }
  body .ShowTitle.show span:nth-child(25), body .triggleTitle.show span:nth-child(25) {
    -webkit-animation-delay: 1.85s;
    animation-delay: 1.85s; }
  body .ShowTitle.show span:nth-child(26), body .triggleTitle.show span:nth-child(26) {
    -webkit-animation-delay: 1.89s;
    animation-delay: 1.89s; }
  body .ShowTitle.show span:nth-child(27), body .triggleTitle.show span:nth-child(27) {
    -webkit-animation-delay: 1.90s;
    animation-delay: 1.90s; }
  body .ShowTitle.show span:nth-child(28), body .triggleTitle.show span:nth-child(28) {
    -webkit-animation-delay: 1.92s;
    animation-delay: 1.92s; }

body .copy_box {
  text-align: center; }
  body .copy_box span {
    opacity: 0;
    -webkit-filter: blur(1.5rem);
    filter: blur(1.5rem);
    display: inline-block;
    font-family: 'Shippori Mincho';
    -webkit-transform: translate(-94px, -68px) rotate(17deg) scaleX(1.62) scaleY(1.4) skewX(34deg) skewY(3deg);
    -ms-transform: translate(-94px, -68px) rotate(17deg) scaleX(1.62) scaleY(1.4) skewX(34deg) skewY(3deg);
    transform: translate(-94px, -68px) rotate(17deg) scaleX(1.62) scaleY(1.4) skewX(34deg) skewY(3deg); }
  body .copy_box.show span {
    -webkit-animation: bigtextDrop 1s ease forwards;
    animation: bigtextDrop 1s ease forwards; }
  body .copy_box.show:nth-child(1) span:nth-child(2) {
    -webkit-animation-delay: 0.1s;
    animation-delay: 0.1s; }
  body .copy_box.show:nth-child(1) span:nth-child(3) {
    -webkit-animation-delay: 0.15s;
    animation-delay: 0.15s; }
  body .copy_box.show:nth-child(1) span:nth-child(4) {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s; }
  body .copy_box.show:nth-child(1) span:nth-child(5) {
    -webkit-animation-delay: 0.25s;
    animation-delay: 0.25s; }
  body .copy_box.show:nth-child(1) span:nth-child(6) {
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s; }
  body .copy_box.show:nth-child(1) span:nth-child(7) {
    -webkit-animation-delay: 0.33s;
    animation-delay: 0.33s; }
  body .copy_box.show:nth-child(1) span:nth-child(8) {
    -webkit-animation-delay: 0.36s;
    animation-delay: 0.36s; }
  body .copy_box.show:nth-child(1) span:nth-child(9) {
    -webkit-animation-delay: 0.39s;
    animation-delay: 0.39s; }
  body .copy_box.show:nth-child(1) span:nth-child(10) {
    -webkit-animation-delay: 0.42s;
    animation-delay: 0.42s; }
  body .copy_box.show:nth-child(1) span:nth-child(11) {
    -webkit-animation-delay: 0.45s;
    animation-delay: 0.45s; }
  body .copy_box.show:nth-child(1) span:nth-child(12) {
    -webkit-animation-delay: 0.48s;
    animation-delay: 0.48s; }
  body .copy_box.show:nth-child(1) span:nth-child(13) {
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s; }
  body .copy_box.show:nth-child(1) span:nth-child(14) {
    -webkit-animation-delay: 0.52s;
    animation-delay: 0.52s; }
  body .copy_box.show:nth-child(1) span:nth-child(15) {
    -webkit-animation-delay: 0.54s;
    animation-delay: 0.54s; }
  body .copy_box.show:nth-child(1) span:nth-child(16) {
    -webkit-animation-delay: 0.56s;
    animation-delay: 0.56s; }
  body .copy_box.show:nth-child(1) span:nth-child(17) {
    -webkit-animation-delay: 0.58s;
    animation-delay: 0.58s; }
  body .copy_box.show:nth-child(1) span:nth-child(18) {
    -webkit-animation-delay: 0.6s;
    animation-delay: 0.6s; }
  body .copy_box.show:nth-child(1) span:nth-child(19) {
    -webkit-animation-delay: 0.62s;
    animation-delay: 0.62s; }
  body .copy_box.show:nth-child(1) span:nth-child(20) {
    -webkit-animation-delay: 0.64s;
    animation-delay: 0.64s; }
  body .copy_box.show:nth-child(1) span:nth-child(21) {
    -webkit-animation-delay: 0.66s;
    animation-delay: 0.66s; }
  body .copy_box.show:nth-child(1) span:nth-child(22) {
    -webkit-animation-delay: 0.68s;
    animation-delay: 0.68s; }
  body .copy_box.show:nth-child(1) span:nth-child(23) {
    -webkit-animation-delay: 0.7s;
    animation-delay: 0.7s; }
  body .copy_box.show:nth-child(1) span:nth-child(24) {
    -webkit-animation-delay: 0.72s;
    animation-delay: 0.72s; }
  body .copy_box.show:nth-child(1) span:nth-child(25) {
    -webkit-animation-delay: 0.74s;
    animation-delay: 0.74s; }
  body .copy_box.show:nth-child(1) span:nth-child(26) {
    -webkit-animation-delay: 0.76s;
    animation-delay: 0.76s; }
  body .copy_box.show:nth-child(1) span:nth-child(27) {
    -webkit-animation-delay: 0.78s;
    animation-delay: 0.78s; }
  body .copy_box.show:nth-child(1) span:nth-child(28) {
    -webkit-animation-delay: 0.8s;
    animation-delay: 0.8s; }
  body .copy_box.show:nth-child(1) span:nth-child(29) {
    -webkit-animation-delay: 0.82s;
    animation-delay: 0.82s; }
  body .copy_box.show:nth-child(1) span:nth-child(30) {
    -webkit-animation-delay: 0.84s;
    animation-delay: 0.84s; }
  body .copy_box.show:nth-child(1) span:nth-child(31) {
    -webkit-animation-delay: 0.85s;
    animation-delay: 0.85s; }
  body .copy_box.show:nth-child(1) span:nth-child(32) {
    -webkit-animation-delay: 0.86s;
    animation-delay: 0.86s; }
  body .copy_box.show:nth-child(1) span:nth-child(33) {
    -webkit-animation-delay: 0.87s;
    animation-delay: 0.87s; }
  body .copy_box.show:nth-child(1) span:nth-child(34) {
    -webkit-animation-delay: 0.88s;
    animation-delay: 0.88s; }
  body .copy_box.show:nth-child(1) span:nth-child(35) {
    -webkit-animation-delay: 0.89s;
    animation-delay: 0.89s; }
  body .copy_box.show:nth-child(1) span:nth-child(36) {
    -webkit-animation-delay: 0.9s;
    animation-delay: 0.9s; }
  body .copy_box.show:nth-child(1) span:nth-child(37) {
    -webkit-animation-delay: 0.91s;
    animation-delay: 0.91s; }
  body .copy_box.show:nth-child(1) span:nth-child(38) {
    -webkit-animation-delay: 0.92s;
    animation-delay: 0.92s; }
  body .copy_box.show:nth-child(1) span:nth-child(39) {
    -webkit-animation-delay: 0.93s;
    animation-delay: 0.93s; }
  body .copy_box.show:nth-child(1) span:nth-child(40) {
    -webkit-animation-delay: 0.94s;
    animation-delay: 0.94s; }
  body .copy_box.show:nth-child(1) span:nth-child(41) {
    -webkit-animation-delay: 0.95s;
    animation-delay: 0.95s; }
  body .copy_box.show:nth-child(1) span:nth-child(42) {
    -webkit-animation-delay: 0.96s;
    animation-delay: 0.96s; }
  body .copy_box.show:nth-child(1) span:nth-child(43) {
    -webkit-animation-delay: 0.97s;
    animation-delay: 0.97s; }
  body .copy_box.show:nth-child(1) span:nth-child(44) {
    -webkit-animation-delay: 0.98s;
    animation-delay: 0.98s; }
  body .copy_box.show:nth-child(1) span:nth-child(45) {
    -webkit-animation-delay: 0.99s;
    animation-delay: 0.99s; }
  body .copy_box.show:nth-child(1) span:nth-child(46) {
    -webkit-animation-delay: 1s;
    animation-delay: 1s; }
  body .copy_box.show:nth-child(1) span:nth-child(47) {
    -webkit-animation-delay: 1.01s;
    animation-delay: 1.01s; }
  body .copy_box.show:nth-child(1) span:nth-child(48) {
    -webkit-animation-delay: 1.02s;
    animation-delay: 1.02s; }
  body .copy_box.show:nth-child(1) span:nth-child(49) {
    -webkit-animation-delay: 1.03s;
    animation-delay: 1.03s; }
  body .copy_box.show:nth-child(1) span:nth-child(50) {
    -webkit-animation-delay: 1.04s;
    animation-delay: 1.04s; }
  body .copy_box.show:nth-child(1) span:nth-child(51) {
    -webkit-animation-delay: 1.05s;
    animation-delay: 1.05s; }
  body .copy_box.show:nth-child(1) span:nth-child(52) {
    -webkit-animation-delay: 1.06s;
    animation-delay: 1.06s; }
  body .copy_box.show:nth-child(1) span:nth-child(53) {
    -webkit-animation-delay: 1.07s;
    animation-delay: 1.07s; }
  body .copy_box.show:nth-child(1) span:nth-child(54) {
    -webkit-animation-delay: 1.08s;
    animation-delay: 1.08s; }
  body .copy_box.show:nth-child(1) span:nth-child(55) {
    -webkit-animation-delay: 1.09s;
    animation-delay: 1.09s; }
  body .copy_box.show:nth-child(1) span:nth-child(56) {
    -webkit-animation-delay: 1.1s;
    animation-delay: 1.1s; }
  body .copy_box.show:nth-child(1) span:nth-child(57) {
    -webkit-animation-delay: 1.11s;
    animation-delay: 1.11s; }
  body .copy_box.show:nth-child(1) span:nth-child(58) {
    -webkit-animation-delay: 1.12s;
    animation-delay: 1.12s; }
  body .copy_box.show:nth-child(1) span:nth-child(59) {
    -webkit-animation-delay: 1.13s;
    animation-delay: 1.13s; }
  body .copy_box.show:nth-child(1) span:nth-child(60) {
    -webkit-animation-delay: 1.14s;
    animation-delay: 1.14s; }
  body .copy_box.show:nth-child(1) span:nth-child(61) {
    -webkit-animation-delay: 1.15s;
    animation-delay: 1.15s; }
  body .copy_box.show:nth-child(1) span:nth-child(62) {
    -webkit-animation-delay: 1.16s;
    animation-delay: 1.16s; }
  body .copy_box.show:nth-child(1) span:nth-child(63) {
    -webkit-animation-delay: 1.17s;
    animation-delay: 1.17s; }
  body .copy_box.show:nth-child(1) span:nth-child(64) {
    -webkit-animation-delay: 1.18s;
    animation-delay: 1.18s; }
  body .copy_box.show:nth-child(1) span:nth-child(65) {
    -webkit-animation-delay: 1.19s;
    animation-delay: 1.19s; }
  body .copy_box.show:nth-child(1) span:nth-child(66) {
    -webkit-animation-delay: 1.2s;
    animation-delay: 1.2s; }
  body .copy_box.show:nth-child(1) span:nth-child(67) {
    -webkit-animation-delay: 1.21s;
    animation-delay: 1.21s; }
  body .copy_box.show:nth-child(1) span:nth-child(68) {
    -webkit-animation-delay: 1.22s;
    animation-delay: 1.22s; }
  body .copy_box.show:nth-child(1) span:nth-child(69) {
    -webkit-animation-delay: 1.23s;
    animation-delay: 1.23s; }
  body .copy_box.show:nth-child(1) span:nth-child(70) {
    -webkit-animation-delay: 1.24s;
    animation-delay: 1.24s; }
  body .copy_box.show:nth-child(1) span:nth-child(71) {
    -webkit-animation-delay: 1.25s;
    animation-delay: 1.25s; }
  body .copy_box.show:nth-child(1) span:nth-child(72) {
    -webkit-animation-delay: 1.26s;
    animation-delay: 1.26s; }
  body .copy_box.show:nth-child(1) span:nth-child(73) {
    -webkit-animation-delay: 1.27s;
    animation-delay: 1.27s; }
  body .copy_box.show:nth-child(1) span:nth-child(74) {
    -webkit-animation-delay: 1.28s;
    animation-delay: 1.28s; }
  body .copy_box.show:nth-child(1) span:nth-child(75) {
    -webkit-animation-delay: 1.29s;
    animation-delay: 1.29s; }

body #Skirt {
  z-index: 99;
  width: 100vw;
  height: 100vh;
  position: fixed;
  pointer-events: none;
  background-color: white;
  transition: 1.8s ease-in-out;
  -o-transition: 1.8s ease-in-out;
  -moz-transition: 1.8s ease-in-out;
  -webkit-transition: 1.8s ease-in-out; }

@keyframes bigtextDrop {
  0% {
    -webkit-filter: blur(1.5rem);
    filter: blur(1.5rem);
    opacity: 0;
    -webkit-transform: translate(-94px, -68px) rotate(17deg) scaleX(1.62) scaleY(1.4) skewX(34deg) skewY(3deg);
    transform: translate(-94px, -68px) rotate(17deg) scaleX(1.62) scaleY(1.4) skewX(34deg) skewY(3deg); }
  100% {
    -webkit-filter: blur(0);
    filter: blur(0);
    opacity: 1;
    -webkit-transform: translate(0px, 0px) rotate(0deg) scaleX(1) scaleY(1) skewX(0deg) skewY(0deg);
    transform: translate(0px, 0px) rotate(0deg) scaleX(1) scaleY(1) skewX(0deg) skewY(0deg); } }

@-webkit-keyframes bigtextDrop {
  0% {
    -webkit-filter: blur(1.5rem);
    filter: blur(1.5rem);
    opacity: 0;
    -webkit-transform: translate(-94px, -68px) rotate(17deg) scaleX(1.62) scaleY(1.4) skewX(34deg) skewY(3deg);
    transform: translate(-94px, -68px) rotate(17deg) scaleX(1.62) scaleY(1.4) skewX(34deg) skewY(3deg); }
  100% {
    -webkit-filter: blur(0);
    filter: blur(0);
    opacity: 1;
    -webkit-transform: translate(0px, 0px) rotate(0deg) scaleX(1) scaleY(1) skewX(0deg) skewY(0deg);
    transform: translate(0px, 0px) rotate(0deg) scaleX(1) scaleY(1) skewX(0deg) skewY(0deg); } }

body a.otherContent {
  margin: 0 auto;
  max-width: 420px; }
  body a.otherContent .photo {
    width: 35%;
    background-size: cover; }
  body a.otherContent .btnInfo {
    color: #5b6275;
    padding: 25px 25px 25px 25px; }
    body a.otherContent .btnInfo .btnTitle {
      font-size: 25px;
      margin-bottom: 8px; }
    body a.otherContent .btnInfo .text {
      font-size: 11px;
      line-height: 18px; }
    body a.otherContent .btnInfo .enName {
      font-size: 13px;
      margin: 7px 0 10px 0; }
    body a.otherContent .btnInfo .jpName {
      font-size: 34px; }
    body a.otherContent .btnInfo .more {
      opacity: 1;
      right: 15px;
      position: absolute;
      top: calc( 50% - 7px); }
  body a.otherContent:hover .more {
    -webkit-animation: bounce 0.5s ease infinite;
    animation: bounce 0.5s ease infinite; }

body .more {
  opacity: 0;
  width: 30px;
  height: 15px;
  background-size: 100% 100%;
  background-image: url("../../../assets/img/ArrowIcon.png");
  transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  -webkit-transition: 0.5s ease-in-out; }
  body .more.black {
    background-image: url("../../../assets/img/ArrowIconB.png"); }

body .more_video {
  opacity: 0;
  width: 45px;
  height: 45px;
  background-size: 100% 100%;
  background-image: url("../../../assets/img/play.png");
  -o-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  o-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  -webkit-transition: 0.5s ease-in-out; }

body .arrowLeft {
  width: 7px;
  height: 12px;
  cursor: pointer;
  margin-right: 18px;
  background-size: 100% 100%;
  background-image: url("../../../assets/img/ArrowL.png"); }

body .arrowRight {
  width: 7px;
  height: 12px;
  cursor: pointer;
  margin-left: 18px;
  background-size: 100% 100%;
  background-image: url("../../../assets/img/ArrowR.png"); }

body .swiper-pagination {
  position: relative !important; }
  body .swiper-pagination .swiper-pagination-bullet {
    top: -3px;
    width: 4px;
    height: 4px;
    margin: 0 14px;
    cursor: pointer;
    border-radius: 10px;
    position: relative;
    display: inline-block;
    background-color: #5b6275; }
    body .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
      top: -4px;
      width: 2px;
      height: 2px; }
      body .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active:after {
        content: '';
        top: -4px;
        left: -4px;
        width: 8px;
        height: 8px;
        position: absolute;
        border-radius: 10px;
        border: 1px solid #5b6275; }

body #LightBox {
  left: 0;
  bottom: 0;
  opacity: 0;
  z-index: 99;
  width: 100%;
  height: 100%;
  position: fixed;
  overflow: hidden;
  pointer-events: none;
  background-color: rgba(0, 0, 0, 0.7);
  transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  -webkit-transition: 0.5s ease-in-out; }
  body #LightBox.tada {
    opacity: 1;
    pointer-events: auto; }
  body #LightBox .holder {
    height: 100%;
    margin: 0 auto;
    max-width: 840px; }
    body #LightBox .holder .contentPlacer {
      position: relative;
      background-color: white; }
      body #LightBox .holder .contentPlacer .close {
        top: 20px;
        right: 20px;
        width: 18px;
        height: 18px;
        opacity: 0.5;
        cursor: pointer;
        position: absolute;
        background-size: 100% 100%;
        background-image: url("../../../assets/img/CloseBtn.png");
        transition: 0.5s ease-in-out;
        -o-transition: 0.5s ease-in-out;
        -moz-transition: 0.5s ease-in-out;
        -webkit-transition: 0.5s ease-in-out; }
        body #LightBox .holder .contentPlacer .close:hover {
          opacity: 1; }
      body #LightBox .holder .contentPlacer .photo {
        width: 30%;
        position: relative; }
        body #LightBox .holder .contentPlacer .photo img {
          width: 100%;
          display: block; }
        body #LightBox .holder .contentPlacer .photo .paperName {
          top: 0;
          right: -50px;
          position: absolute;
          display: inline-block;
          background-color: white;
          padding: 25px 5px 20px 5px; }
          body #LightBox .holder .contentPlacer .photo .paperName .enName {
            float: right;
            font-size: 15px;
            letter-spacing: 2px;
            -webkit-writing-mode: vertical-rl;
            -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl; }
          body #LightBox .holder .contentPlacer .photo .paperName .jpName {
            float: right;
            font-size: 30px;
            letter-spacing: 2px;
            margin: 0 14px 0 0;
            -webkit-writing-mode: vertical-rl;
            -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
            line-height: 41px; }
      body #LightBox .holder .contentPlacer .info {
        width: 70%;
        padding: 50px 100px; }
        body #LightBox .holder .contentPlacer .info .job {
          font-size: 13px;
          margin-bottom: 30px;
          padding: 10px 10px 8px 10px;
          border-top: 1px solid rgba(0, 0, 0, 0.2);
          border-bottom: 1px solid rgba(0, 0, 0, 0.2); }
        body #LightBox .holder .contentPlacer .info .details p {
          font-size: 13px;
          line-height: 26px;
          margin-bottom: 15px; }
        body #LightBox .holder .contentPlacer .info .details li {
          font-size: 13px;
          line-height: 28px;
          padding-left: 25px;
          position: relative; }
          body #LightBox .holder .contentPlacer .info .details li:before {
            content: '';
            left: 0;
            top: 9px;
            width: 2px;
            height: 2px;
            display: block;
            position: absolute;
            -webkit-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
            transform: rotate(45deg);
            border: 1px solid #5b6275; }

body #splashLogo {
  top: 15vh;
  right: 31%;
  height: 70vh;
  z-index: 9999;
  padding-left: 37%;
  position: absolute;
  background-size: auto 100%;
  background-image: url("../../../assets/img/splashLogo.png");
  -webkit-backface-visibility: hidden;
  -webkit-perspective: 1000;
  -webkit-transform: translate3d(0, 0, 0);
  -webkit-transform: translateZ(0);
  backface-visibility: hidden;
  perspective: 1000;
  transform: translate3d(0, 0, 0);
  transform: translateZ(0);
  -webkit-animation: fadeIN 5s ease forwards;
  animation: fadeIN 5s ease forwards; }

@-webkit-keyframes fadeIN {
  0% {
    -webkit-filter: blur(20px);
    filter: blur(20px); }
  50% {
    -webkit-filter: blur(0px);
    filter: blur(0px);
    opacity: 1; }
  20% {
    -webkit-filter: blur(0px);
    filter: blur(0px);
    opacity: 1; }
  100% {
    -webkit-filter: blur(0px);
    filter: blur(0px);
    opacity: 0; } }

@-ms-keyframes fadeIN {
  body 0% {
    filter: blur(20px); }
  body 50% {
    filter: blur(0px);
    opacity: 1; }
  body 20% {
    filter: blur(0px);
    opacity: 1; }
  body 100% {
    filter: blur(0px);
    opacity: 0; } }

@keyframes fadeIN {
  0% {
    -webkit-filter: blur(20px);
    filter: blur(20px); }
  50% {
    -webkit-filter: blur(0px);
    filter: blur(0px);
    opacity: 1; }
  20% {
    -webkit-filter: blur(0px);
    filter: blur(0px);
    opacity: 1; }
  100% {
    -webkit-filter: blur(0px);
    filter: blur(0px);
    opacity: 0; } }

@-webkit-keyframes bounce {
  0% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0); }
  50% {
    -webkit-transform: translate(-10px, 0);
    transform: translate(-10px, 0); }
  100% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0); } }

@-ms-keyframes bounce {
  body 0% {
    -ms-transform: translate(0, 0);
    transform: translate(0, 0); }
  body 50% {
    -ms-transform: translate(-10px, 0);
    transform: translate(-10px, 0); }
  body 100% {
    -ms-transform: translate(0, 0);
    transform: translate(0, 0); } }

@keyframes bounce {
  0% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0); }
  50% {
    -webkit-transform: translate(-10px, 0);
    transform: translate(-10px, 0); }
  100% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0); } }

#Menu {
  top: 60px;
  left: 60px;
  z-index: 10;
  color: white;
  position: fixed; }
  #Menu #MenuBtn {
    cursor: pointer;
    margin-bottom: 35px; }
    #Menu #MenuBtn .icon {
      width: 33px;
      overflow: hidden; }
      #Menu #MenuBtn .icon .bar {
        width: 100%;
        height: 1px;
        margin-bottom: 8px;
        position: relative;
        background-color: white; }
    #Menu #MenuBtn .btnName {
      font-size: 10px;
      letter-spacing: 2px; }
    #Menu #MenuBtn:hover .icon .bar {
      -webkit-animation: runningLine 0.5s ease forwards;
      animation: runningLine 0.5s ease forwards; }
      #Menu #MenuBtn:hover .icon .bar:nth-child(2) {
        -webkit-animation-delay: 0.2s;
        animation-delay: 0.2s; }
      #Menu #MenuBtn:hover .icon .bar:nth-child(3) {
        -webkit-animation-delay: 0.4s;
        animation-delay: 0.4s; }
  #Menu .QLinks a, #Menu .QLinks .appear {
    color: white;
    font-size: 11px;
    cursor: pointer;
    position: relative;
    letter-spacing: 3px;
    margin-bottom: 27px;
    display: inline-block;
    transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -webkit-transition: 0.5s ease-in-out; }
    #Menu .QLinks a::after, #Menu .QLinks .appear::after {
      content: '';
      left: 0;
      width: 99%;
      height: 1px;
      bottom: -4px;
      position: absolute;
      background-color: rgba(255, 255, 255, 0.4); }
    #Menu .QLinks a:hover, #Menu .QLinks .appear:hover {
      letter-spacing: 4px; }
  #Menu .QLinks a.ticket {
    border: 1px solid rgba(255, 255, 255, 0.4);
    padding: 7px 12px;
    font-size: 13px;
    color: #FFF;
    letter-spacing: 0;
    margin-top: 8px; }
    #Menu .QLinks a.ticket span:nth-child(1) {
      margin: 0 -1.5px; }
    #Menu .QLinks a.ticket span:nth-child(2) {
      letter-spacing: 1.5px; }
    #Menu .QLinks a.ticket::after {
      content: none; }
  #Menu .QLinks.selected .appear {
    opacity: 0.5; }
    #Menu .QLinks.selected .appear.active {
      opacity: 1; }
  #Menu.nightWalker {
    color: black; }
    #Menu.nightWalker #MenuBtn .icon .bar {
      background-color: black; }
    #Menu.nightWalker .QLinks .appear, #Menu.nightWalker .QLinks a {
      color: black !important; }
      #Menu.nightWalker .QLinks .appear::after, #Menu.nightWalker .QLinks a::after {
        background-color: rgba(0, 0, 0, 0.4); }
  #Menu.darkWalker {
    color: black !important; }
    #Menu.darkWalker #MenuBtn .icon .bar {
      background-color: black !important; }
    #Menu.darkWalker .QLinks .appear, #Menu.darkWalker .QLinks a {
      color: black !important; }
      #Menu.darkWalker .QLinks .appear::after, #Menu.darkWalker .QLinks a::after {
        background-color: rgba(0, 0, 0, 0.4) !important; }

.top_only.nightWalker .QLinks {
  display: none; }
  .top_only.nightWalker .QLinks a {
    color: #FFF; }

#logo {
  top: 60px;
  right: 60px;
  z-index: 2;
  display: block;
  position: fixed;
  max-width: 290px;
  -webkit-transform: scale(1) translateZ(0px);
  transform: scale(1) translateZ(0px);
  -webkit-transform-origin: top right;
  -ms-transform-origin: top right;
  transform-origin: top right; }
  #logo img {
    width: 100%;
    display: block; }
    #logo img.white {
      display: none; }
  #logo.top {
    opacity: 0; }
    #logo.top.showing {
      opacity: 1; }
  #logo.removeText {
    height: 400px;
    overflow: hidden; }
    #logo.removeText .color {
      display: block; }
    #logo.removeText .white {
      display: none; }
  #logo.mini {
    max-width: 98px;
    transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -webkit-transition: 0.5s ease-in-out; }
  #logo.shy {
    top: -400px !important; }

#menuPopper {
  width: 0;
  z-index: 100;
  height: 100vh;
  position: fixed;
  overflow: hidden;
  background-color: #513340;
  transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  -webkit-transition: 0.5s ease-in-out; }
  #menuPopper .closeBtn {
    top: 50px;
    z-index: 2;
    left: 50px;
    width: 31px;
    height: 37px;
    cursor: pointer;
    position: absolute;
    background-size: 100% 100%;
    background-image: url("../../../assets/img/closeBtnText.jpg"); }
  #menuPopper .logoBig {
    top: 0;
    right: 0;
    opacity: 0;
    width: 40%;
    height: 100%;
    position: absolute;
    pointer-events: none;
    background-size: 100% auto;
    background-position: center;
    background-image: url("../../../assets/img/logoBig.png");
    transition: 5s ease-in-out;
    -o-transition: 5s ease-in-out;
    -moz-transition: 5s ease-in-out;
    -webkit-transition: 5s ease-in-out; }
  #menuPopper .linksHolder {
    z-index: 1;
    height: 100vh;
    position: relative; }
    #menuPopper .linksHolder .linksCage {
      width: 100vw;
      max-width: 450px;
      margin-left: 15%; }
      #menuPopper .linksHolder .linksCage .cageHolder {
        margin-bottom: 30px; }
      #menuPopper .linksHolder .linksCage .cageList {
        width: 225px;
        transition: 0.8s ease-in-out;
        -o-transition: 0.8s ease-in-out;
        -moz-transition: 0.8s ease-in-out;
        -webkit-transition: 0.8s ease-in-out; }
        #menuPopper .linksHolder .linksCage .cageList a {
          opacity: 0;
          color: white;
          bottom: -25px;
          font-size: 12px;
          position: relative;
          margin-bottom: 55px;
          letter-spacing: 3px;
          display: inline-block;
          transition: 0.8s ease-in-out;
          -o-transition: 0.8s ease-in-out;
          -moz-transition: 0.8s ease-in-out;
          -webkit-transition: 0.8s ease-in-out; }
          #menuPopper .linksHolder .linksCage .cageList a::after {
            content: '';
            width: 15px;
            height: 1px;
            opacity: 0.3;
            bottom: -10px;
            display: block;
            position: absolute;
            background-color: white;
            transition: 0.5s ease-in-out;
            -o-transition: 0.5s ease-in-out;
            -moz-transition: 0.5s ease-in-out;
            -webkit-transition: 0.5s ease-in-out; }
          #menuPopper .linksHolder .linksCage .cageList a:hover {
            letter-spacing: 4px; }
            #menuPopper .linksHolder .linksCage .cageList a:hover::after {
              opacity: 1;
              width: calc(100% - 4px); }
      #menuPopper .linksHolder .linksCage .otherLinks {
        opacity: 0;
        bottom: -40px;
        margin-left: -9px;
        position: relative;
        transition: 1s ease-in-out;
        -o-transition: 1s ease-in-out;
        -moz-transition: 1s ease-in-out;
        -webkit-transition: 1s ease-in-out; }
        #menuPopper .linksHolder .linksCage .otherLinks .fb {
          width: 20px;
          height: 20px;
          margin-right: 3px;
          display: inline-block;
          background-size: 4px 9px;
          background-image: url("../../../assets/img/fb.png"); }
        #menuPopper .linksHolder .linksCage .otherLinks .ig {
          width: 20px;
          height: 20px;
          margin-top: 1px;
          margin-right: 3px;
          display: inline-block;
          background-size: 10px;
          background-image: url("../../../assets/img/ig.png"); }
        #menuPopper .linksHolder .linksCage .otherLinks .lang {
          color: white;
          font-size: 11px;
          vertical-align: top;
          display: inline-block;
          padding-top: 5px; }
          #menuPopper .linksHolder .linksCage .otherLinks .lang a {
            color: white;
            opacity: 0.5;
            padding: 0 5px;
            letter-spacing: 2px;
            transition: 0.8s ease-in-out;
            -o-transition: 0.8s ease-in-out;
            -moz-transition: 0.8s ease-in-out;
            -webkit-transition: 0.8s ease-in-out; }
            #menuPopper .linksHolder .linksCage .otherLinks .lang a.active {
              opacity: 1; }
            #menuPopper .linksHolder .linksCage .otherLinks .lang a:hover {
              opacity: 1; }
  #menuPopper.tadaa {
    width: 100vw; }
    #menuPopper.tadaa .logoBig {
      opacity: 1; }
    #menuPopper.tadaa .linksHolder .linksCage .otherLinks {
      bottom: 0;
      opacity: 1; }
    #menuPopper.tadaa .linksHolder .linksCage .cageList a {
      bottom: 0;
      opacity: 1; }
      #menuPopper.tadaa .linksHolder .linksCage .cageList a.o1 {
        -webkit-transition-delay: 0s;
        -o-transition-delay: 0s;
        transition-delay: 0s; }
      #menuPopper.tadaa .linksHolder .linksCage .cageList a.o2 {
        -webkit-transition-delay: 0.1s;
        -o-transition-delay: 0.1s;
        transition-delay: 0.1s; }
      #menuPopper.tadaa .linksHolder .linksCage .cageList a.o3 {
        -webkit-transition-delay: 0.2s;
        -o-transition-delay: 0.2s;
        transition-delay: 0.2s; }
      #menuPopper.tadaa .linksHolder .linksCage .cageList a.o4 {
        -webkit-transition-delay: 0.3s;
        -o-transition-delay: 0.3s;
        transition-delay: 0.3s; }
      #menuPopper.tadaa .linksHolder .linksCage .cageList a.o5 {
        -webkit-transition-delay: 0.4s;
        -o-transition-delay: 0.4s;
        transition-delay: 0.4s; }
      #menuPopper.tadaa .linksHolder .linksCage .cageList a.o6 {
        -webkit-transition-delay: 0.5s;
        -o-transition-delay: 0.5s;
        transition-delay: 0.5s; }
      #menuPopper.tadaa .linksHolder .linksCage .cageList a.o7 {
        -webkit-transition-delay: 0.6s;
        -o-transition-delay: 0.6s;
        transition-delay: 0.6s; }
      #menuPopper.tadaa .linksHolder .linksCage .cageList a.o8 {
        -webkit-transition-delay: 0.7s;
        -o-transition-delay: 0.7s;
        transition-delay: 0.7s; }
      #menuPopper.tadaa .linksHolder .linksCage .cageList a.o9 {
        -webkit-transition-delay: 0.8s;
        -o-transition-delay: 0.8s;
        transition-delay: 0.8s; }
      #menuPopper.tadaa .linksHolder .linksCage .cageList a.o10 {
        -webkit-transition-delay: 0.9s;
        -o-transition-delay: 0.9s;
        transition-delay: 0.9s; }

@-webkit-keyframes runningLine {
  0% {
    width: 100%; }
  49% {
    width: 0%;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0); }
  50% {
    -webkit-transform: translate(60px, 0);
    transform: translate(60px, 0); }
  100% {
    width: 100%;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0); } }

@-ms-keyframes runningLine {
  0% {
    width: 100%; }
  49% {
    width: 0%;
    -ms-transform: translate(0, 0);
    transform: translate(0, 0); }
  50% {
    -ms-transform: translate(60px, 0);
    transform: translate(60px, 0); }
  100% {
    width: 100%;
    -ms-transform: translate(0, 0);
    transform: translate(0, 0); } }

@keyframes runningLine {
  0% {
    width: 100%; }
  49% {
    width: 0%;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0); }
  50% {
    -webkit-transform: translate(60px, 0);
    transform: translate(60px, 0); }
  100% {
    width: 100%;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0); } }

.Starter canvas#Splash {
  opacity: 0; }

.Starter #Skirt {
  opacity: 0; }

.Starter section#KV .photoBG {
  opacity: 1; }

.Starter #Story #KV {
  width: 40vw; }

section#PopupSection {
  display: block; }
  section#PopupSection .popup {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: .6s;
    -o-transition: .6s;
    transition: .6s; }
    section#PopupSection .popup.is-show {
      opacity: 1;
      visibility: visible; }
    section#PopupSection .popup .popup-inner {
      position: relative;
      left: 50%;
      top: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      background-color: transparent;
      z-index: 2;
      width: 70%; }
      section#PopupSection .popup .popup-inner::before {
        content: '';
        display: block;
        padding-top: 56.25%; }
      section#PopupSection .popup .popup-inner iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }
      section#PopupSection .popup .popup-inner .close-btn {
        position: absolute;
        right: 0;
        left: 0;
        bottom: -50px;
        width: 46px;
        height: 50px;
        line-height: 50px;
        text-align: center;
        cursor: pointer;
        margin: 0 auto;
        color: #FFF;
        font-size: 13px;
        letter-spacing: 2px; }
        section#PopupSection .popup .popup-inner .close-btn::after {
          content: '';
          height: 2px;
          width: 100%;
          bottom: 11px;
          display: block;
          position: absolute;
          background-color: #FFF; }
    section#PopupSection .popup .black-background {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.7);
      z-index: 1;
      cursor: pointer; }

section#KV {
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  position: relative; }
  section#KV .title {
    z-index: 1;
    left: 60px;
    bottom: 60px;
    position: absolute;
    width: calc(100% - 120px); }
    section#KV .title .actorContents {
      color: #FFF;
      line-height: 25px;
      text-align: center;
      letter-spacing: 1px;
      margin-bottom: 20px; }
      section#KV .title .actorContents span.position {
        opacity: 0.7;
        font-size: 14px;
        font-family: 'Roboto', serif;
        letter-spacing: 2px; }
      section#KV .title .actorContents .director span.name {
        font-size: 28px;
        line-height: 40px;
        font-family: 'Shippori Mincho';
        letter-spacing: 4px; }
      section#KV .title .actorContents .appearance span.name {
        font-size: 23px;
        line-height: 35px; }
    section#KV .title .watchContents {
      text-align: center; }
      section#KV .title .watchContents img {
        width: 40%;
        height: auto; }
  section#KV .videoBtn {
    z-index: 1;
    right: 60px;
    bottom: 60px;
    color: white;
    font-size: 12px;
    cursor: pointer;
    text-align: center;
    position: absolute;
    padding: 15px 30px;
    letter-spacing: 4px;
    border-radius: 99px;
    display: inline-block;
    transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -webkit-transition: 0.5s ease-in-out;
    border: 1px solid rgba(255, 255, 255, 0.5); }
    section#KV .videoBtn:hover {
      background-color: rgba(255, 255, 255, 0.2); }
    section#KV .videoBtn span.playIcon {
      width: 9px;
      height: 10px;
      margin: 0 0 -2px 10px;
      display: inline-block;
      background-size: 100% 100%;
      background-image: url("../../../assets/img/PlayIcon.png"); }
  section#KV canvas {
    display: block;
    position: absolute;
    pointer-events: none; }
  section#KV .photoBG {
    top: -10%;
    left: -10%;
    opacity: 0;
    z-index: 0;
    width: 110%;
    height: 110%;
    position: absolute;
    transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -webkit-transition: 0.5s ease-in-out; }
  section#KV .copy {
    position: absolute;
    height: 110px;
    width: 50%;
    bottom: 40%;
    left: 0;
    right: 0;
    margin: auto; }
    section#KV .copy .copy_box {
      height: 100%; }
      section#KV .copy .copy_box span {
        height: 15%;
        margin: 7px 1px;
        width: auto; }
        section#KV .copy .copy_box span img {
          height: 100%;
          width: auto;
          -o-object-fit: contain;
          object-fit: contain; }
        section#KV .copy .copy_box span.space {
          width: 8px; }

section#Awards {
  padding: 40px 30px;
  text-align: center; }
  section#Awards img {
    height: 84px;
    margin: 0 20px; }

section#Concept {
  overflow: hidden;
  margin-bottom: 100px; }
  section#Concept .cage {
    position: relative; }
  section#Concept .snowBg {
    bottom: 0;
    z-index: 1;
    right: 60px;
    width: 435px;
    height: 318px;
    position: absolute;
    background-position: 0px;
    background-size: 2610px 318px;
    background-image: url("../../../assets/img/SnowPatten.png"); }
  section#Concept .contentHolder {
    width: 100%;
    padding: 140px 0;
    text-align: center; }
  section#Concept .textHolder {
    margin: 0 auto;
    position: relative;
    z-index: 10; }
    section#Concept .textHolder .row {
      max-width: 800px;
      width: 90%;
      line-height: 30px;
      text-align: center;
      color: #5b6275;
      font-size: 14px;
      position: relative;
      letter-spacing: 2px;
      margin: 0 auto; }
      section#Concept .textHolder .row .masking {
        height: 100%;
        width: 100%;
        text-align: center;
        top: 0;
        right: 0;
        margin: 0;
        z-index: 1;
        color: #5b6275;
        overflow: hidden;
        position: absolute;
        display: inline-block;
        background-color: #ebebeb;
        transition: 1s ease-in-out;
        -o-transition: 1s ease-in-out;
        -moz-transition: 1s ease-in-out;
        -webkit-transition: 1s ease-in-out; }
  section#Concept.show .snowBg {
    -webkit-animation: BGAnimations 3s steps(5) forwards;
    animation: BGAnimations 3s steps(5) forwards; }
  section#Concept.show .contentHolder .textHolder .row .masking {
    width: 0%; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(2) .masking {
    -webkit-transition-delay: 0.1s;
    -o-transition-delay: 0.1s;
    transition-delay: 0.1s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(3) .masking {
    -webkit-transition-delay: 0.2s;
    -o-transition-delay: 0.2s;
    transition-delay: 0.2s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(4) .masking {
    -webkit-transition-delay: 0.3s;
    -o-transition-delay: 0.3s;
    transition-delay: 0.3s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(5) .masking {
    -webkit-transition-delay: 0.4s;
    -o-transition-delay: 0.4s;
    transition-delay: 0.4s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(6) .masking {
    -webkit-transition-delay: 0.5s;
    -o-transition-delay: 0.5s;
    transition-delay: 0.5s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(7) .masking {
    -webkit-transition-delay: 0.6s;
    -o-transition-delay: 0.6s;
    transition-delay: 0.6s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(8) .masking {
    -webkit-transition-delay: 0.7s;
    -o-transition-delay: 0.7s;
    transition-delay: 0.7s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(9) .masking {
    -webkit-transition-delay: 0.8s;
    -o-transition-delay: 0.8s;
    transition-delay: 0.8s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(10) .masking {
    -webkit-transition-delay: 0.9s;
    -o-transition-delay: 0.9s;
    transition-delay: 0.9s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(11) .masking {
    -webkit-transition-delay: 1s;
    -o-transition-delay: 1s;
    transition-delay: 1s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(12) .masking {
    -webkit-transition-delay: 1.1s;
    -o-transition-delay: 1.1s;
    transition-delay: 1.1s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(13) .masking {
    -webkit-transition-delay: 1.2s;
    -o-transition-delay: 1.2s;
    transition-delay: 1.2s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(14) .masking {
    -webkit-transition-delay: 1.3s;
    -o-transition-delay: 1.3s;
    transition-delay: 1.3s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(15) .masking {
    -webkit-transition-delay: 1.4s;
    -o-transition-delay: 1.4s;
    transition-delay: 1.4s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(16) .masking {
    -webkit-transition-delay: 1.5s;
    -o-transition-delay: 1.5s;
    transition-delay: 1.5s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(17) .masking {
    -webkit-transition-delay: 1.6s;
    -o-transition-delay: 1.6s;
    transition-delay: 1.6s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(18) .masking {
    -webkit-transition-delay: 1.7s;
    -o-transition-delay: 1.7s;
    transition-delay: 1.7s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(19) .masking {
    -webkit-transition-delay: 1.8s;
    -o-transition-delay: 1.8s;
    transition-delay: 1.8s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(20) .masking {
    -webkit-transition-delay: 1.9s;
    -o-transition-delay: 1.9s;
    transition-delay: 1.9s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(21) .masking {
    -webkit-transition-delay: 2s;
    -o-transition-delay: 2s;
    transition-delay: 2s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(22) .masking {
    -webkit-transition-delay: 2.1s;
    -o-transition-delay: 2.1s;
    transition-delay: 2.1s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(23) .masking {
    -webkit-transition-delay: 2.2s;
    -o-transition-delay: 2.2s;
    transition-delay: 2.2s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(24) .masking {
    -webkit-transition-delay: 2.3s;
    -o-transition-delay: 2.3s;
    transition-delay: 2.3s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(25) .masking {
    -webkit-transition-delay: 2.4s;
    -o-transition-delay: 2.4s;
    transition-delay: 2.4s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(26) .masking {
    -webkit-transition-delay: 2.5s;
    -o-transition-delay: 2.5s;
    transition-delay: 2.5s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(27) .masking {
    -webkit-transition-delay: 2.6s;
    -o-transition-delay: 2.6s;
    transition-delay: 2.6s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(28) .masking {
    -webkit-transition-delay: 2.7s;
    -o-transition-delay: 2.7s;
    transition-delay: 2.7s; }
  section#Concept.show .contentHolder .textHolder .row:nth-child(29) .masking {
    -webkit-transition-delay: 2.8s;
    -o-transition-delay: 2.8s;
    transition-delay: 2.8s; }

@-webkit-keyframes BGAnimations {
  100% {
    background-position: -2175px; } }

@keyframes BGAnimations {
  100% {
    background-position: -2175px; } }

section#Cast {
  font-weight: 100;
  font-style: normal;
  text-align: center;
  padding: 0;
  margin-bottom: 130px;
  font-family: 'Roboto', serif;
  letter-spacing: 1px; }
  section#Cast .director {
    font-size: 31px;
    margin-bottom: 38px;
    letter-spacing: 4px;
    font-family: 'Shippori Mincho'; }
    section#Cast .director span {
      color: #adb1ba;
      display: block;
      font-size: 14px;
      margin-bottom: 12px; }
  section#Cast .mainCast {
    font-size: 22px;
    line-height: 40px;
    margin-bottom: 25px;
    font-family: 'Shippori Mincho'; }
    section#Cast .mainCast span {
      padding: 0 12px;
      display: inline-block; }
      section#Cast .mainCast span span.small_text {
        font-size: 19px;
        padding: 0 0 0 6px; }
    section#Cast .mainCast span.dotto {
      padding: 0;
      margin: 0 -8px; }
  section#Cast .subCast {
    font-size: 15px;
    margin-bottom: 17px;
    line-height: 18px; }
    section#Cast .subCast span {
      font-size: 8px; }
  section#Cast .otherCast {
    font-size: 11px;
    line-height: 20px; }

.Cast_section {
  background-image: url("../../../assets/img/bg_cast.png");
  background-size: 100% auto;
  background-position: center 55%;
  background-repeat: no-repeat;
  padding-bottom: 150px;
  display: block; }
  .Cast_section .CastPickup {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 90%;
    margin: 0 auto; }
    .Cast_section .CastPickup .pickup_img {
      width: 45%;
      margin-right: auto; }
    .Cast_section .CastPickup #container {
      position: relative;
      padding: 0 0 60% 0;
      background-color: #FFF;
      -webkit-box-shadow: 0px 0px 55px 2px rgba(255, 255, 255, 0.8);
      -moz-box-shadow: 0px 0px 55px 2px rgba(255, 255, 255, 0.8);
      box-shadow: 0px 0px 55px 2px rgba(255, 255, 255, 0.8); }
      .Cast_section .CastPickup #container canvas {
        top: 0;
        left: 0;
        position: absolute;
        -webkit-animation: fadeInCast 1.0s ease forwards;
        animation: fadeInCast 1.0s ease forwards; }

@-webkit-keyframes fadeInCast {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
    .Cast_section .CastPickup .pickup_textbox {
      width: 50%;
      padding: 0 1%;
      font-size: 35px;
      letter-spacing: 1px;
      font-family: 'Roboto', serif;
      text-align: left;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
      .Cast_section .CastPickup .pickup_textbox .text_contents {
        display: table-cell;
        vertical-align: middle; }
        .Cast_section .CastPickup .pickup_textbox .text_contents .triggleTitle .enName {
          font-size: 15px;
          margin-bottom: 10px; }
        .Cast_section .CastPickup .pickup_textbox .text_contents .triggleTitle hr {
          color: #5b6275;
          margin: 23px auto; }
        .Cast_section .CastPickup .pickup_textbox .text_contents .triggleTitle .jpName span.castName {
          -webkit-animation: none;
          animation: none;
          opacity: 1;
          -webkit-transform: none;
          -ms-transform: none;
          transform: none;
          -webkit-filter: none;
          filter: none;
          font-size: 16px;
          padding-left: 15px; }
        .Cast_section .CastPickup .pickup_textbox .text_contents .text {
          font-size: 13px;
          line-height: 28px; }
          .Cast_section .CastPickup .pickup_textbox .text_contents .text span {
            font-weight: bold; }
          .Cast_section .CastPickup .pickup_textbox .text_contents .text p {
            padding: 15px 0;
            display: inline-block; }
  .Cast_section .CastLineup {
    position: relative;
    height: 100%;
    padding-top: 120px; }
    .Cast_section .CastLineup .container {
      width: 100vw;
      height: 330px;
      overflow-y: hidden;
      overflow-x: scroll;
      -o-text-overflow: ellipsis;
      text-overflow: ellipsis; }
      .Cast_section .CastLineup .container::-webkit-scrollbar {
        height: 8px; }
      .Cast_section .CastLineup .container::-webkit-scrollbar-track {
        background-color: rgba(91, 98, 117, 0.1); }
      .Cast_section .CastLineup .container::-webkit-scrollbar-thumb {
        background-color: rgba(81, 51, 64, 0.6);
        border-radius: 900px; }
      .Cast_section .CastLineup .container .wrapper {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        height: 330px;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        white-space: nowrap; }
        .Cast_section .CastLineup .container .wrapper .slide {
          cursor: pointer;
          width: 170px;
          height: 330px;
          position: relative;
          margin-right: 2px;
          -webkit-transition: 0.5s ease-in-out;
          -o-transition: 0.5s ease-in-out;
          transition: 0.5s ease-in-out; }
          .Cast_section .CastLineup .container .wrapper .slide .swiper_img {
            overflow: hidden;
            width: 100%;
            height: 88%;
            position: relative; }
            .Cast_section .CastLineup .container .wrapper .slide .swiper_img img {
              width: auto;
              height: 100%;
              position: absolute;
              left: 50%;
              top: 0;
              -webkit-transform: translate(-50%, 0);
              -ms-transform: translate(-50%, 0);
              transform: translate(-50%, 0); }
          .Cast_section .CastLineup .container .wrapper .slide .swiper_name {
            background-color: #FFF;
            letter-spacing: 1px;
            font-family: 'Roboto', serif;
            position: absolute;
            width: auto;
            max-width: 99%;
            text-align: left;
            padding: 10px 8px;
            bottom: 17px;
            left: 0; }
            .Cast_section .CastLineup .container .wrapper .slide .swiper_name .enName {
              font-size: 8px; }
            .Cast_section .CastLineup .container .wrapper .slide .swiper_name .jpName {
              padding-top: 5px;
              font-size: 17px; }
          .Cast_section .CastLineup .container .wrapper .slide .profile_img {
            transition: 0.5s ease-in-out;
            -o-transition: 0.5s ease-in-out;
            -moz-transition: 0.5s ease-in-out;
            -webkit-transition: 0.5s ease-in-out; }
            .Cast_section .CastLineup .container .wrapper .slide .profile_img img {
              height: 100%; }
            .Cast_section .CastLineup .container .wrapper .slide .profile_img .name {
              font-size: 11px;
              margin-top: -5px;
              margin-bottom: 3px; }
            .Cast_section .CastLineup .container .wrapper .slide .profile_img .charName {
              font-size: 9px;
              margin-bottom: 4px; }
            .Cast_section .CastLineup .container .wrapper .slide .profile_img .story {
              font-size: 9px;
              line-height: 12px; }
            .Cast_section .CastLineup .container .wrapper .slide .profile_img:hover {
              -webkit-transition: 0.5s ease-in-out;
              -o-transition: 0.5s ease-in-out;
              transition: 0.5s ease-in-out; }
    .Cast_section .CastLineup .button-prev, .Cast_section .CastLineup .button-next {
      display: none; }
  .Cast_section .wrapper:hover > .slide {
    opacity: 0.7;
    -webkit-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out; }
  .Cast_section .wrapper > .slide:hover {
    opacity: 1;
    -webkit-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out; }

section#MainContent {
  height: 80%;
  margin-bottom: 1px; }
  section#MainContent .cage {
    height: 100%; }
    section#MainContent .cage .holder {
      width: 50%;
      height: 100%;
      display: block;
      cursor: pointer;
      position: relative; }
      section#MainContent .cage .holder:first-child {
        border-right: 1px solid white; }
      section#MainContent .cage .holder .masking {
        top: 0;
        left: 0;
        z-index: 2;
        width: 100%;
        height: 100%;
        position: absolute;
        pointer-events: none;
        background-color: white;
        transition: 2s ease-in-out;
        -o-transition: 2s ease-in-out;
        -moz-transition: 2s ease-in-out;
        -webkit-transition: 2s ease-in-out; }
      section#MainContent .cage .holder .content .vC {
        left: 50px;
        bottom: 45px;
        position: absolute;
        transition: 0.5s ease-in-out;
        -o-transition: 0.5s ease-in-out;
        -moz-transition: 0.5s ease-in-out;
        -webkit-transition: 0.5s ease-in-out; }
      section#MainContent .cage .holder .content .more {
        opacity: 0;
        margin-top: 20px; }
    section#MainContent .cage .subDiv {
      width: 100%;
      height: 50%;
      display: block;
      position: relative; }
      section#MainContent .cage .subDiv:first-child {
        border-bottom: 1px solid white; }
      section#MainContent .cage .subDiv .content {
        width: 100%;
        height: 100%;
        text-align: center; }
        section#MainContent .cage .subDiv .content .vC {
          top: 20px;
          left: auto;
          bottom: auto;
          margin: 0 auto;
          position: relative;
          display: inline-block; }
          section#MainContent .cage .subDiv .content .vC .breaker {
            margin: 0 auto 13px auto; }
          section#MainContent .cage .subDiv .content .vC .more {
            margin: 20px auto 0 auto; }
  section#MainContent .hover:hover .content {
    background-color: rgba(81, 51, 64, 0.65); }
    section#MainContent .hover:hover .content .vC {
      bottom: 65px; }
    section#MainContent .hover:hover .content .more {
      opacity: 1;
      -webkit-animation: bounce 0.5s ease infinite;
      animation: bounce 0.5s ease infinite; }
  section#MainContent .hover:hover.subDiv .content .vC {
    top: 0px;
    bottom: auto; }
  section#MainContent.show .holder .masking {
    opacity: 0; }
  section#MainContent.show .holder .subDiv:nth-child(1) .masking {
    -webkit-transition-delay: 0.3s;
    -o-transition-delay: 0.3s;
    transition-delay: 0.3s; }
  section#MainContent.show .holder .subDiv:nth-child(2) .masking {
    -webkit-transition-delay: 0.6s;
    -o-transition-delay: 0.6s;
    transition-delay: 0.6s; }

.content {
  width: 100%;
  height: 100%;
  color: white;
  position: relative;
  transition: 0.8s ease-in-out;
  -o-transition: 0.8s ease-in-out;
  -moz-transition: 0.8s ease-in-out;
  -webkit-transition: 0.8s ease-in-out; }
  .content .breaker {
    height: 1px;
    width: 18px;
    margin-bottom: 20px;
    background-color: white; }
  .content h2.title {
    font-size: 35px;
    letter-spacing: 2px;
    line-height: 33px;
    margin-bottom: 13px; }
    .content h2.title span.jpFont {
      font-family: 'Roboto', serif;
      letter-spacing: 1px;
      font-weight: 600;
      font-style: normal;
      font-size: 30px; }
    .content h2.title span.small {
      top: -4px;
      position: relative;
      display: inline-block;
      font-size: 22px;
      line-height: 38px; }
  .content p {
    font-size: 13px;
    letter-spacing: 2px;
    line-height: 26px; }

section#SubContent {
  width: 100%;
  padding: 0 60px;
  margin-bottom: 130px; }
  section#SubContent .cage {
    padding: 0; }
    section#SubContent .cage .holder {
      width: 50%;
      height: 270px;
      text-align: center;
      border-right: 1px solid white; }
      section#SubContent .cage .holder:last-child {
        border-right: 0; }
      section#SubContent .cage .holder .vC {
        top: 20px;
        position: relative;
        transition: 0.5s ease-in-out;
        -o-transition: 0.5s ease-in-out;
        -moz-transition: 0.5s ease-in-out;
        -webkit-transition: 0.5s ease-in-out; }
      section#SubContent .cage .holder .vC, section#SubContent .cage .holder .breaker, section#SubContent .cage .holder .more {
        margin-left: auto;
        margin-right: auto; }
      section#SubContent .cage .holder .more {
        opacity: 0;
        margin-top: 20px; }
    section#SubContent .cage .enName {
      font-size: 13px;
      margin-bottom: 10px;
      letter-spacing: 3px; }
    section#SubContent .cage .jpName {
      font-size: 38px;
      margin-bottom: 12px;
      letter-spacing: 5px; }
    section#SubContent .cage .jobTitle {
      padding: 10px;
      font-size: 13px;
      margin-bottom: 12px;
      display: inline-block;
      border-top: 1px solid rgba(255, 255, 255, 0.2);
      border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
  section#SubContent .hover:hover .content {
    background-color: rgba(81, 51, 64, 0.65); }
    section#SubContent .hover:hover .content .more {
      opacity: 1;
      -webkit-animation: bounce 0.5s ease infinite;
      animation: bounce 0.5s ease infinite; }
    section#SubContent .hover:hover .content .vC {
      top: 0px !important;
      bottom: auto; }

section#News {
  margin-bottom: 100px; }
  section#News .contentHolder {
    padding: 100px 0 120px 0; }
  section#News .sectionTitle span.small {
    top: -5px;
    position: relative;
    display: inline-block; }
  section#News .news_contents .newLink {
    padding: 25px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto;
    cursor: pointer;
    font-size: 14px;
    max-width: 770px;
    overflow: hidden;
    position: relative;
    border-bottom: 1px solid rgba(204, 205, 209, 0.6); }
    section#News .news_contents .newLink .date {
      color: #234294;
      margin-right: 5%;
      letter-spacing: 1px;
      width: 10%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      vertical-align: middle;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
    section#News .news_contents .newLink .title {
      color: #5b6275;
      letter-spacing: 1px;
      word-break: keep-all;
      text-align: left; }
    section#News .news_contents .newLink .more {
      top: 25px;
      opacity: 1;
      right: 25px;
      display: block;
      position: absolute; }
    section#News .news_contents .newLink:after {
      content: '';
      top: 0;
      left: -200%;
      z-index: -1;
      width: 200%;
      height: 100%;
      position: absolute;
      background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 42%, rgba(255, 255, 255, 0.4) 51%, rgba(255, 255, 255, 0) 100%);
      background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 42%, rgba(255, 255, 255, 0.4) 51%, rgba(255, 255, 255, 0) 100%);
      background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(42%, rgba(255, 255, 255, 0)), color-stop(51%, rgba(255, 255, 255, 0.4)), to(rgba(255, 255, 255, 0)));
      background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 42%, rgba(255, 255, 255, 0.4) 51%, rgba(255, 255, 255, 0) 100%);
      background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 42%, rgba(255, 255, 255, 0.4) 51%, rgba(255, 255, 255, 0) 100%);
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#00ffffff',GradientType=1 );
      transition: 0.8s ease-in-out;
      -o-transition: 0.8s ease-in-out;
      -moz-transition: 0.8s ease-in-out;
      -webkit-transition: 0.8s ease-in-out; }
    section#News .news_contents .newLink:hover:after {
      left: 0; }
    section#News .news_contents .newLink:hover .more {
      -webkit-animation: bounce 0.5s ease infinite;
      animation: bounce 0.5s ease infinite; }
  section#News .news_contents:last-child .newLink {
    border-bottom: 0; }
  section#News #news_list {
    text-align: center; }
    section#News #news_list .btn {
      margin-top: 40px;
      cursor: pointer;
      font-size: 17px;
      position: relative;
      letter-spacing: 2px;
      display: inline-block;
      -webkit-transition: 0.5s ease-in-out;
      -o-transition: 0.5s ease-in-out;
      transition: 0.5s ease-in-out; }
      section#News #news_list .btn::after {
        content: '';
        height: 2px;
        width: 100%;
        bottom: -10px;
        display: block;
        position: absolute;
        background-color: #5b6275; }
      section#News #news_list .btn:hover {
        letter-spacing: 4px; }
    section#News #news_list .is-hidden {
      display: none; }

section#Sponsor {
  line-height: 24px;
  text-align: center;
  letter-spacing: 1px;
  margin-bottom: 100px; }
  section#Sponsor .row {
    max-width: 830px;
    padding-bottom: 19px;
    margin: 0 auto 19px auto;
    border-bottom: 1px solid #eff0f1; }
    section#Sponsor .row:last-child {
      border-bottom: 0; }
  section#Sponsor .title {
    color: #acb1c1;
    font-size: 13px;
    margin-bottom: 7px; }
  section#Sponsor .name {
    font-size: 12px; }
    section#Sponsor .name span {
      word-break: keep-all; }
      section#Sponsor .name span.small {
        font-size: 8px; }

section#footer {
  z-index: 3;
  color: white;
  text-align: center;
  position: relative;
  padding: 80px 0 55px 0;
  background-color: #513340; }
  section#footer .cage .logo {
    margin-bottom: 20px;
    display: inline-block; }
    section#footer .cage .logo img {
      max-width: 120px;
      display: inline-block; }
  section#footer .cage .name {
    font-size: 21px;
    letter-spacing: 1px;
    margin-bottom: 30px;
    font-family: 'Roboto', serif; }
    section#footer .cage .name span {
      font-size: 23px;
      font-family: 'Roboto', serif;
      letter-spacing: 1px; }
  section#footer .cage .tinyInfo {
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 2px;
    margin-bottom: 70px; }
    section#footer .cage .tinyInfo .info span {
      padding: 0 8px;
      display: inline-block; }
  section#footer .cage .cw {
    color: #be90a4;
    font-size: 10px;
    letter-spacing: 1px; }

#Story {
  min-height: 100%; }
  #Story #KV {
    z-index: 2;
    height: 100vh;
    position: fixed;
    background-size: cover;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    width: calc(100vw - 205px);
    background-position: center;
    transition: 1.2s ease-in-out;
    -o-transition: 1.2s ease-in-out;
    -moz-transition: 1.2s ease-in-out;
    -webkit-transition: 1.2s ease-in-out;
    -webkit-transition-delay: 3s;
    -o-transition-delay: 3s;
    transition-delay: 3s; }
    #Story #KV:after {
      content: '';
      top: 0;
      right: 0;
      width: 63px;
      height: 100%;
      position: absolute;
      background-size: 100% 100%;
      background-image: url("../../../assets/img/WhitPaperMask.png");
      transition: 1.2s ease-in-out;
      -o-transition: 1.2s ease-in-out;
      -moz-transition: 1.2s ease-in-out;
      -webkit-transition: 1.2s ease-in-out;
      -webkit-transition-delay: 3s;
      -o-transition-delay: 3s;
      transition-delay: 3s; }
  #Story #Content {
    padding: 150px 0 150px 50%;
    max-width: calc(50vw + 420px); }
    #Story #Content .post {
      padding-bottom: 80px; }
    #Story #Content .breaker {
      width: 20px;
      margin-bottom: 40px;
      border-bottom: 2px solid #5b6275; }
    #Story #Content .title {
      font-size: 63px;
      margin-bottom: 65px;
      letter-spacing: 2px;
      font-family: 'Shippori Mincho', serif;
      font-weight: 400;
      font-style: normal; }
    #Story #Content .GOZEtitle {
      font-size: 50px;
      margin-bottom: 65px;
      letter-spacing: 1px;
      font-family: 'Roboto', serif; }
      #Story #Content .GOZEtitle span.kanji {
        position: relative; }
        #Story #Content .GOZEtitle span.kanji span {
          top: -17px;
          left: 24px;
          opacity: 0;
          color: #5b6275;
          font-size: 12px;
          position: absolute; }
      #Story #Content .GOZEtitle .smaller {
        bottom: -4px;
        font-size: 37px;
        position: relative; }
      #Story #Content .GOZEtitle .engTitle {
        margin-top: 10px;
        font-size: 19px; }
    #Story #Content .nametitle {
      font-size: 47px;
      margin-bottom: 65px;
      letter-spacing: 1px;
      font-family: 'Roboto', serif; }
      #Story #Content .nametitle span {
        font-family: 'Roboto', serif;
        letter-spacing: 1px; }
      #Story #Content .nametitle .engTitle {
        font-size: 17px;
        margin-bottom: 10px; }
    #Story #Content .highlight {
      font-size: 15px;
      padding: 13px 10px 10px 20px;
      border-top: 1px solid #e0e3e8;
      border-bottom: 1px solid #e0e3e8;
      margin-bottom: 30px; }
    #Story #Content ul.dateDetail {
      margin: -10px 0 50px 0; }
      #Story #Content ul.dateDetail li {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding: 10px 0;
        font-size: 12px;
        line-height: 18px;
        letter-spacing: 1px;
        border-bottom: 1px solid #e0e3e8; }
        #Story #Content ul.dateDetail li:last-child {
          border-bottom: 0; }
        #Story #Content ul.dateDetail li span {
          display: block; }
        #Story #Content ul.dateDetail li .year {
          width: 120px;
          color: #234294;
          font-size: 15px;
          display: inline-block; }
    #Story #Content .punchLine {
      font-size: 24px;
      font-weight: bold;
      line-height: 40px;
      margin-bottom: 30px; }
    #Story #Content .subHeader {
      font-size: 18px;
      font-weight: bold;
      position: relative;
      margin-bottom: 30px;
      letter-spacing: 0px;
      padding-left: 20px;
      line-height: 25px; }
      #Story #Content .subHeader:before {
        content: '';
        left: 0;
        top: 15.5px;
        width: 8px;
        height: 13px;
        position: absolute;
        background-size: 100% 100%;
        background-image: url("../../../assets/img/Icon.png"); }
    #Story #Content p {
      font-size: 13px;
      line-height: 28px;
      margin-bottom: 30px;
      letter-spacing: 1px;
        letter-spacing-word-break: keep-all; }
      #Story #Content p span.no {
        font-size: 19px; }
    #Story #Content img {
      width: 100%;
      margin-bottom: 50px; }
    #Story #Content .swiper-wrapper {
      height: auto !important; }
      #Story #Content .swiper-wrapper .swiper-slide {
        height: auto; }
        #Story #Content .swiper-wrapper .swiper-slide img {
          width: 100%; }
    #Story #Content .control {
      text-align: center;
      padding: 0;
      margin-bottom: 40px;
      margin-top: -30px;
      position: relative;
      z-index: 10; }
      #Story #Content .control .arrowLeft {
        display: inline-block; }
      #Story #Content .control .swiper-pagination {
        display: inline-block; }
      #Story #Content .control .arrowRight {
        display: inline-block; }

#Locations {
  padding: 120px 0 180px 0;
  position: relative; }
  #Locations .cage {
    max-width: 1020px; }
  #Locations .pageHeader {
    text-align: center;
    margin-bottom: 100px; }
    #Locations .pageHeader .breaker {
      width: 20px;
      margin: 0 auto 40px auto;
      border-bottom: 2px solid #5b6275; }
    #Locations .pageHeader .title {
      color: #5b6275;
      font-size: 62px; }
  #Locations .postHolder {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    #Locations .postHolder .locationPost {
      color: #5b6275;
      display: block;
      width: calc(50% - 40px);
      margin: 0 20px 90px 20px;
      pointer-events: none; }
      #Locations .postHolder .locationPost .photo {
        z-index: 1;
        position: relative;
        margin-bottom: 30px; }
        #Locations .postHolder .locationPost .photo .mask {
          opacity: 0;
          z-index: 1;
          width: 100%;
          height: 100%;
          position: absolute;
          pointer-events: none;
          background-color: rgba(81, 51, 64, 0.65);
          transition: 0.5s ease-in-out;
          -o-transition: 0.5s ease-in-out;
          -moz-transition: 0.5s ease-in-out;
          -webkit-transition: 0.5s ease-in-out; }
          #Locations .postHolder .locationPost .photo .mask .more {
            opacity: 1;
            margin: 0 auto; }
        #Locations .postHolder .locationPost .photo img {
          width: 100%;
          display: block; }
      #Locations .postHolder .locationPost .textArea {
        z-index: 0;
        position: relative;
        transition: 0.5s ease-in-out;
        -o-transition: 0.5s ease-in-out;
        -moz-transition: 0.5s ease-in-out;
        -webkit-transition: 0.5s ease-in-out; }
      #Locations .postHolder .locationPost .photoTitle {
        font-size: 15px;
        line-height: 16px;
        padding-left: 3px; }
        #Locations .postHolder .locationPost .photoTitle span {
          font-size: 16px;
          padding: 0 3px;
          display: inline-block; }
      #Locations .postHolder .locationPost .photoText {
        font-size: 12px;
        line-height: 16px;
        padding-left: 3px;
        margin-top: 15px; }
      #Locations .postHolder .locationPost .Tag {
        right: 0;
        font-size: 9px;
        line-height: 16px;
        text-align: right;
        position: absolute;
        letter-spacing: 1px;
        font-family: helvetica; }
      #Locations .postHolder .locationPost:hover .photo .mask {
        opacity: 1; }
      #Locations .postHolder .locationPost:hover .photo .more {
        -webkit-animation: bounce 0.5s ease infinite;
        animation: bounce 0.5s ease infinite; }
      #Locations .postHolder .locationPost:hover .flex {
        -webkit-transform: translate(0, -80px);
        -ms-transform: translate(0, -80px);
        transform: translate(0, -80px); }
  #Locations .bg {
    position: absolute;
    max-width: 440px;
    width: 36%;
    bottom: 0;
    left: 0;
    z-index: -5; }
    #Locations .bg img {
      width: 100%; }

#Video {
  padding: 120px 0 180px 0;
  position: relative; }
  #Video .cage {
    max-width: 1020px; }
  #Video .pageHeader {
    text-align: center;
    margin-bottom: 100px; }
    #Video .pageHeader .breaker {
      width: 20px;
      margin: 0 auto 40px auto;
      border-bottom: 2px solid #5b6275; }
    #Video .pageHeader .title {
      color: #5b6275;
      font-size: 62px; }
  #Video .postHolder {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    #Video .postHolder a.videoPost {
      color: #5b6275;
      display: block;
      width: 100%;
      margin: 0 20px 90px 20px; }
      #Video .postHolder a.videoPost .video {
        z-index: 1;
        position: relative;
        margin-bottom: 30px; }
        #Video .postHolder a.videoPost .video img {
          display: block; }
        #Video .postHolder a.videoPost .video .mask {
          opacity: 0;
          z-index: 1;
          width: 100%;
          height: 100%;
          position: absolute;
          pointer-events: none;
          background-color: rgba(81, 51, 64, 0.65);
          transition: 0.5s ease-in-out;
          -o-transition: 0.5s ease-in-out;
          -moz-transition: 0.5s ease-in-out;
          -webkit-transition: 0.5s ease-in-out; }
          #Video .postHolder a.videoPost .video .mask .more_video {
            opacity: 1;
            margin: 0 auto; }
        #Video .postHolder a.videoPost .video img {
          width: 100%; }
      #Video .postHolder a.videoPost .flex {
        z-index: 0;
        position: relative;
        transition: 0.5s ease-in-out;
        -o-transition: 0.5s ease-in-out;
        -moz-transition: 0.5s ease-in-out;
        -webkit-transition: 0.5s ease-in-out; }
      #Video .postHolder a.videoPost .videoTitle {
        font-size: 16px;
        line-height: 16px;
        padding-left: 16px; }
      #Video .postHolder a.videoPost .Tag {
        right: 0;
        font-size: 9px;
        line-height: 16px;
        text-align: right;
        position: absolute;
        letter-spacing: 1px;
        font-family: helvetica; }
      #Video .postHolder a.videoPost:hover .video .mask {
        opacity: 1; }
      #Video .postHolder a.videoPost:hover .flex {
        -webkit-transform: translate(0, -80px);
        -ms-transform: translate(0, -80px);
        transform: translate(0, -80px); }
  #Video .bg {
    position: absolute;
    max-width: 440px;
    width: 36%;
    bottom: 0;
    left: 0;
    z-index: -5; }
    #Video .bg img {
      width: 100%; }

#Post .cageHeader {
  padding: 250px 15% 90px 15%; }
  #Post .cageHeader .subTitle {
    color: #979ba5;
    font-size: 17px;
    margin-bottom: 28px;
    letter-spacing: 4px; }
  #Post .cageHeader .title {
    font-size: 35px;
    line-height: 40px; }

#Post .swiper-wrapper {
  height: auto !important; }
  #Post .swiper-wrapper .swiper-slide {
    height: auto; }
    #Post .swiper-wrapper .swiper-slide img {
      width: 100%; }

#Post .control {
  text-align: center;
  padding: 45px 0;
  margin-bottom: 40px; }
  #Post .control .arrowLeft {
    display: inline-block; }
  #Post .control .swiper-pagination {
    display: inline-block; }
  #Post .control .arrowRight {
    display: inline-block; }

#Post .cageContent {
  max-width: 850px;
  margin: 0 auto; }
  #Post .cageContent .cageIndex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 30px 0; }
    #Post .cageContent .cageIndex .imgIndex {
      width: 40%;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      margin-right: 30px; }
      #Post .cageContent .cageIndex .imgIndex img {
        width: calc(50% - 6px);
        margin: 3px; }
    #Post .cageContent .cageIndex .textIndex {
      width: 60%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
      #Post .cageContent .cageIndex .textIndex p {
        margin: auto 0; }
    #Post .cageContent .cageIndex:nth-child(2) {
      padding: 30px 0 150px; }

#Post .date {
  bottom: -50px;
  position: relative;
  display: inline-block;
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg); }
  #Post .date:after {
    content: '';
    height: 1px;
    width: 100%;
    opacity: 0.3;
    bottom: -10px;
    display: block;
    position: absolute;
    background-color: #5b6275; }

#Post p {
  font-size: 13px;
  max-width: 570px;
  line-height: 30px;
  margin: 0 auto 80px auto; }

#Post .photo {
  margin-bottom: 70px; }
  #Post .photo img {
    width: 100%; }
  #Post .photo .fp {
    font-size: 12px;
    position: relative;
    padding: 24px 24px 24px 50px; }
    #Post .photo .fp:before {
      content: '';
      width: 6px;
      height: 1px;
      left: 24px;
      display: block;
      position: absolute;
      top: calc(50% - 2px);
      background-color: #5b6275; }

#Post #Special {
  margin-bottom: 130px; }
  #Post #Special .contentHolder {
    padding: 100px 0;
    text-align: center; }
    #Post #Special .contentHolder .header {
      font-size: 24px;
      font-weight: bold;
      line-height: 32px;
      margin-bottom: 15px;
      letter-spacing: 4px; }
    #Post #Special .contentHolder .subHeader {
      font-size: 15px;
      margin-bottom: 50px;
      letter-spacing: 1px; }
    #Post #Special .contentHolder p {
      height: 300px;
      overflow: hidden;
      text-align: left;
      position: relative;
      margin-bottom: 40px; }
      #Post #Special .contentHolder p:after {
        content: '';
        left: 0;
        bottom: 0;
        z-index: 1;
        width: 100%;
        height: 100px;
        position: absolute;
        pointer-events: none;
        background: -moz-linear-gradient(top, rgba(237, 237, 237, 0) 0%, #ededed 99%, #ededed 100%);
        background: -webkit-linear-gradient(top, rgba(237, 237, 237, 0) 0%, #ededed 99%, #ededed 100%);
        background: -webkit-gradient(linear, left top, left bottom, from(rgba(237, 237, 237, 0)), color-stop(99%, #ededed), to(#ededed));
        background: -o-linear-gradient(top, rgba(237, 237, 237, 0) 0%, #ededed 99%, #ededed 100%);
        background: linear-gradient(to bottom, rgba(237, 237, 237, 0) 0%, #ededed 99%, #ededed 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ededed', endColorstr='#ededed',GradientType=0 ); }
    #Post #Special .contentHolder .moreBtn {
      cursor: pointer;
      font-size: 17px;
      position: relative;
      letter-spacing: 2px;
      display: inline-block;
      transition: 0.5s ease-in-out;
      -o-transition: 0.5s ease-in-out;
      -moz-transition: 0.5s ease-in-out;
      -webkit-transition: 0.5s ease-in-out; }
      #Post #Special .contentHolder .moreBtn:after {
        content: '';
        height: 2px;
        width: 100%;
        bottom: -10px;
        display: block;
        position: absolute;
        background-color: #5b6275; }
      #Post #Special .contentHolder .moreBtn:Hover {
        letter-spacing: 4px; }
  #Post #Special.open .contentHolder p {
    height: auto; }
    #Post #Special.open .contentHolder p:after {
      opacity: 0; }
  #Post #Special.open .moreBtn {
    display: none; }

#Post .others {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 125px;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  #Post .others a {
    color: #5b6275;
    display: block;
    font-size: 18px;
    cursor: pointer;
    letter-spacing: 3px; }
    #Post .others a.pre::before {
      content: '';
      width: 7px;
      height: 12px;
      cursor: pointer;
      margin-right: 18px;
      display: inline-block;
      background-size: 100% 100%;
      background-image: url("../../../assets/img/ArrowL.png"); }
    #Post .others a.backtoList {
      font-size: 16px; }
      #Post .others a.backtoList:hover {
        text-decoration: underline; }
    #Post .others a.nex::after {
      content: '';
      width: 7px;
      height: 12px;
      cursor: pointer;
      margin-left: 18px;
      display: inline-block;
      background-size: 100% 100%;
      background-image: url("../../../assets/img/ArrowR.png"); }

#Crew {
  padding: 120px 0 180px 0; }
  #Crew .cage {
    max-width: 1020px; }
  #Crew .pageHeader {
    text-align: center;
    margin-bottom: 100px; }
    #Crew .pageHeader .breaker {
      width: 20px;
      margin: 0 auto 40px auto;
      border-bottom: 2px solid #5b6275; }
    #Crew .pageHeader .title {
      color: #5b6275;
      font-size: 62px; }
  #Crew a.directorBlock {
    width: 100%;
    height: 400px;
    cursor: pointer;
    position: relative;
    margin-bottom: 90px;
    background-image: url("../../../assets/img/Crew01.jpg"); }
    #Crew a.directorBlock .contentHolder {
      width: 100%;
      color: white; }
      #Crew a.directorBlock .contentHolder .info {
        float: right;
        margin-right: 100px; }
      #Crew a.directorBlock .contentHolder .detail {
        margin-bottom: 40px;
        text-align: center; }
      #Crew a.directorBlock .contentHolder .enName {
        font-size: 15px;
        letter-spacing: 2px; }
      #Crew a.directorBlock .contentHolder .jpName {
        font-size: 41px;
        letter-spacing: 2px;
        margin: 0 14px 0 14px;
        padding: 15px 0; }
      #Crew a.directorBlock .contentHolder .job {
        font-size: 13px;
        padding: 5px 8px;
        width: 50px;
        margin: 0 auto;
        border-top: 1px solid rgba(255, 255, 255, 0.3);
        border-bottom: 1px solid rgba(255, 255, 255, 0.3); }
      #Crew a.directorBlock .contentHolder .moreBtn {
        font-size: 17px;
        letter-spacing: 4px;
        float: right; }
        #Crew a.directorBlock .contentHolder .moreBtn .more {
          opacity: 1;
          margin-left: 5px;
          margin-bottom: -4px;
          display: inline-block; }
    #Crew a.directorBlock:hover .more {
      -webkit-animation: bounce 0.5s ease infinite;
      animation: bounce 0.5s ease infinite; }
  #Crew .otherCrew_contents .otherCrew {
    -ms-flex-pack: distribute;
    justify-content: space-around;
    line-height: 1.5em; }
    #Crew .otherCrew_contents .otherCrew .other_staff {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      padding-bottom: 35px; }
      #Crew .otherCrew_contents .otherCrew .other_staff ul.job {
        width: 50%;
        text-align: center; }
        #Crew .otherCrew_contents .otherCrew .other_staff ul.job span {
          font-size: 13px;
          color: #acb1c1; }
        #Crew .otherCrew_contents .otherCrew .other_staff ul.job li {
          font-size: 15px; }

#Cast {
  padding: 0 0 80px 0; }
  #Cast .cage {
    padding: 0;
    max-width: 1000px; }
  #Cast .pageHeader {
    text-align: center;
    margin-bottom: 100px; }
    #Cast .pageHeader .breaker {
      width: 20px;
      margin: 0 auto 40px auto;
      border-bottom: 2px solid #5b6275; }
    #Cast .pageHeader .title {
      color: #5b6275;
      font-size: 62px; }
      #Cast .pageHeader .title span {
        font-family: 'Roboto', serif;
        letter-spacing: 1px; }
  #Cast .breaker {
    text-align: center;
    padding: 80px 20px 70px 20px; }
    #Cast .breaker img {
      height: 70px; }
  #Cast .GenCard {
    min-width: 340px; }
    #Cast .GenCard .mainChar {
      width: calc(100% - 650px); }
    #Cast .GenCard .groupInfo {
      width: 650px;
      position: relative;
      padding: 40px 20px;
      -ms-flex-pack: distribute;
      justify-content: space-around; }
      #Cast .GenCard .groupInfo .upwing {
        z-index: 2;
        position: relative; }
      #Cast .GenCard .groupInfo img.dots {
        z-index: 1;
        width: 177px;
        display: block;
        position: relative;
        margin: -13px auto 0 40px; }
      #Cast .GenCard .groupInfo .pin1 {
        top: 20px; }
      #Cast .GenCard .groupInfo .pin2 {
        top: 100px; }
      #Cast .GenCard .groupInfo .pin3 {
        top: 250px; }
      #Cast .GenCard .groupInfo .pin4 {
        top: 545px; }
      #Cast .GenCard .groupInfo .pin5 {
        top: 100px; }
      #Cast .GenCard .groupInfo .pin6 {
        top: 230px; }
      #Cast .GenCard .groupInfo .pin7 {
        top: 410px; }
      #Cast .GenCard .groupInfo .pin8 {
        top: 20px; }
      #Cast .GenCard .groupInfo .pin9 {
        top: 250px; }
      #Cast .GenCard .groupInfo .pin10 {
        z-index: 3;
        left: 275px;
        top: 410px; }
      #Cast .GenCard .groupInfo .textStory {
        font-size: 13px;
        text-align: left;
        line-height: 50px;
        letter-spacing: 3px;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        vertical-align: middle; }
        #Cast .GenCard .groupInfo .textStory table {
          width: 470px;
          height: 590px; }
          #Cast .GenCard .groupInfo .textStory table th {
            height: 110px; }
    #Cast .GenCard.Gen1 .pin1::after {
      content: '';
      top: 0;
      right: 0;
      height: 0;
      width: 3px;
      position: absolute;
      background-size: 100% auto; }
    #Cast .GenCard.Gen2 .groupInfo {
      padding: 40px 90px; }
      #Cast .GenCard.Gen2 .groupInfo .dot.pin9 {
        display: none; }
    #Cast .GenCard.Gen2 .downWing {
      width: 170px; }
      #Cast .GenCard.Gen2 .downWing .card {
        padding: 0;
        width: auto; }
      #Cast .GenCard.Gen2 .downWing .profile {
        margin: 12px auto; }
    #Cast .GenCard.Gen2 .pin8::after {
      content: '';
      top: 0;
      right: 0;
      height: 0;
      width: 3px;
      position: absolute;
      background-size: 100% auto; }
    #Cast .GenCard.Gen3 .groupInfo {
      padding: 70px 90px; }
    #Cast .GenCard.show .groupInfo .dot.pin1 {
      width: calc(100% - 180px); }
    #Cast .GenCard.show .groupInfo .dot.pin2 {
      width: calc(100% - 590px); }
    #Cast .GenCard.show .groupInfo .dot.pin3 {
      width: calc(100% - 590px); }
    #Cast .GenCard.show .groupInfo .dot.pin4 {
      width: calc(100% - 320px); }
    #Cast .GenCard.show .groupInfo .dot.pin5 {
      width: calc(100% - 525px); }
    #Cast .GenCard.show .groupInfo .dot.pin6 {
      width: calc(100% - 525px); }
    #Cast .GenCard.show .groupInfo .dot.pin7 {
      width: calc(100% - 470px); }
    #Cast .GenCard.show .groupInfo .dot.pin8 {
      width: calc(100% - 90px); }
    #Cast .GenCard.show .groupInfo .dot.pin9 {
      width: calc(100% - 225px); }
    #Cast .GenCard.show .groupInfo .dot.pin10 {
      width: calc(100% - 500px); }
    #Cast .GenCard.show.Gen1 .dot.pin1::after {
      height: 40px; }
    #Cast .GenCard.show.Gen2 .dot.pin8::after {
      height: 290px; }
    #Cast .GenCard.show .card .profile .barLine {
      width: 40px; }
  #Cast .dot {
    top: 0;
    width: 0;
    z-index: 1;
    left: -2px;
    height: 3px;
    position: absolute;
    background-position: left;
    background-size: auto 100%;
    background-repeat: repeat-x;
    transition: 1s ease-in-out;
    -o-transition: 1s ease-in-out;
    -moz-transition: 1s ease-in-out;
    -webkit-transition: 1s ease-in-out; }
    #Cast .dot::before {
      content: '';
      width: 7px;
      height: 7px;
      display: block;
      border-radius: 10px;
      margin: -2px 0 0 -2px; }
    #Cast .dot::after {
      transition: 0.5s ease-in-out;
      -o-transition: 0.5s ease-in-out;
      -moz-transition: 0.5s ease-in-out;
      -webkit-transition: 0.5s ease-in-out;
      -webkit-transition-delay: 1s;
      -o-transition-delay: 1s;
      transition-delay: 1s; }
    #Cast .dot.yellow {
      background-image: url("../../../assets/img/dotYellow.png"); }
      #Cast .dot.yellow::before {
        background-color: #ecd858; }
      #Cast .dot.yellow::after {
        background-image: url("../../../assets/img/dotYellowV.png"); }
    #Cast .dot.green {
      z-index: 3;
      background-image: url("../../../assets/img/dotGreeb.png"); }
      #Cast .dot.green::before {
        background-color: #8dc63f; }
      #Cast .dot.green::after {
        background-image: url("../../../assets/img/dotGreebV.png"); }
    #Cast .dot.purple {
      background-image: url("../../../assets/img/dotPurple.png"); }
      #Cast .dot.purple::before {
        background-color: #7f9ddb; }
      #Cast .dot.purple::after {
        background-image: url("../../../assets/img/dotPurpleV.png"); }
    #Cast .dot.red {
      z-index: 3;
      background-image: url("../../../assets/img/dotRed.png"); }
      #Cast .dot.red::before {
        background-color: #f1919a; }
      #Cast .dot.red::after {
        background-image: url("../../../assets/img/dotRedV.png"); }
  #Cast .green {
    color: #8dc63f; }
  #Cast .purple {
    color: #7682a4; }
  #Cast .yellow {
    color: #d8c338; }
  #Cast .red {
    color: #f1919a; }
  #Cast .mainChar {
    position: relative;
    background-size: auto 100%; }
    #Cast .mainChar .char {
      left: 30px;
      bottom: 30px;
      color: white;
      text-align: left;
      position: absolute;
      transition: 0.5s ease-in-out;
      -o-transition: 0.5s ease-in-out;
      -moz-transition: 0.5s ease-in-out;
      -webkit-transition: 0.5s ease-in-out;
      cursor: default;
      pointer-events: none; }
      #Cast .mainChar .char:hover {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1);
        -webkit-filter: saturate(130%);
        filter: saturate(130%); }
      #Cast .mainChar .char .detailsCast {
        padding-top: 22px; }
      #Cast .mainChar .char .name {
        font-size: 35px;
        margin-bottom: 5px; }
        #Cast .mainChar .char .name span {
          font-size: 14px; }
      #Cast .mainChar .char .sub {
        font-size: 12px; }
    #Cast .mainChar img {
      width: 110px;
      height: 110px; }
  #Cast .mainCharGen1 {
    background-position: center; }
  #Cast .mainCharGen2 {
    background-position: center; }
  #Cast .mainCharGen3 {
    background-position: left -160px center; }
  #Cast .pushDown {
    margin-bottom: 15px; }
  #Cast .card {
    width: 280px;
    height: 323px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    background-size: 100% auto;
    padding: 14px 40px 20px 17px;
    -ms-flex-pack: distribute;
    justify-content: space-around; }
    #Cast .card .profile {
      width: 96px;
      cursor: default;
      position: relative;
      transition: 0.5s ease-in-out;
      -o-transition: 0.5s ease-in-out;
      -moz-transition: 0.5s ease-in-out;
      -webkit-transition: 0.5s ease-in-out;
      pointer-events: none; }
      #Cast .card .profile.oneBlock {
        margin: 0 45px; }
      #Cast .card .profile.bigText {
        width: 150px; }
      #Cast .card .profile img {
        width: 95px; }
      #Cast .card .profile .barLine {
        width: 0;
        height: 3px;
        right: -39px;
        position: absolute;
        background-size: auto 100%;
        background-repeat: repeat-x;
        background-image: url("../../../assets/img/dotPurple.png");
        transition: 0.5s ease-in-out;
        -o-transition: 0.5s ease-in-out;
        -moz-transition: 0.5s ease-in-out;
        -webkit-transition: 0.5s ease-in-out; }
      #Cast .card .profile .name {
        font-size: 11px;
        margin-top: -5px;
        margin-bottom: 3px; }
      #Cast .card .profile .charName {
        font-size: 9px;
        margin-bottom: 4px; }
      #Cast .card .profile .story {
        font-size: 9px;
        line-height: 12px; }
      #Cast .card .profile:hover {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1);
        -webkit-filter: saturate(130%);
        filter: saturate(130%); }
        #Cast .card .profile:hover .barLine {
          -webkit-transform: scale(0.75);
          -ms-transform: scale(0.75);
          transform: scale(0.75);
          -webkit-transition-delay: 0s !important;
          -o-transition-delay: 0s !important;
          transition-delay: 0s !important; }
    #Cast .card.mini {
      height: 180px; }
    #Cast .card.long {
      height: 458px; }
    #Cast .card.float {
      height: auto;
      -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
      padding: 0px 15px 20px 0px; }

.title,
.sectionTitle {
  font-family: 'Shippori Mincho', serif;
  font-weight: 400;
  font-style: normal; }

/*-----English page open only-----*/
section#MainContent {
  height: auto;
  margin-bottom: 130px; }
  section#MainContent .cage {
    height: 100%; }
    section#MainContent .cage .holder {
      height: 500px; }
    section#MainContent .cage .subDiv {
      height: 100%; }

@media only screen and (max-width: 415px) {
  section#MainContent .cage .holder {
    height: 300px !important; } }

@media only screen and (max-width: 1025px) {
  body section#KV {
    min-height: 0px; }
    body section#KV .copy {
      width: 90%; }
    body section#KV .title .actorContents {
      margin-bottom: 15px;
      line-height: 18px; }
      body section#KV .title .actorContents span.position {
        font-size: 10px; }
      body section#KV .title .actorContents .director span.name {
        font-size: 28px; }
      body section#KV .title .actorContents .appearance span.name {
        font-size: 18px;
        line-height: 25px; }
    body section#KV .title .watchContents img {
      width: 55%; }
  body section#Cast .cage {
    width: 88%; }
  body #Story #Content {
    padding: 150px 0 150px 45%;
    max-width: calc(45vw + 390px); }
    body #Story #Content ul.dateDetail li span.year {
      width: 70px; }
  body #Crew .cage {
    max-width: 860px; }
  body #Crew .pageHeader {
    margin-bottom: 60px; }
  body.Starter #logo.top {
    top: 2%;
    right: 2%; } }

@media only screen and (max-width: 930px) {
  body .PCView {
    display: block; }
  body .SPView {
    display: none; }
  body .TBView {
    display: none; }
  body #Cast .GenCard {
    margin: 0 auto;
    display: block;
    max-width: 470px; }
    body #Cast .GenCard .mainChar {
      width: 100%;
      height: 300px;
      background-size: cover;
      background-position: center; }
    body #Cast .GenCard .groupInfo .pin1 {
      left: 410px; }
    body #Cast .GenCard .groupInfo .pin2 {
      left: 100px; }
    body #Cast .GenCard .groupInfo .pin3 {
      left: 52px; }
    body #Cast .GenCard .groupInfo .pin4 {
      z-index: 0;
      left: 465px; }
    body #Cast .GenCard .groupInfo .pin5 {
      left: 165px; }
    body #Cast .GenCard .groupInfo .pin6 {
      left: 115px; }
    body #Cast .GenCard .groupInfo .pin7 {
      left: 75px; }
    body #Cast .GenCard .groupInfo .pin8 {
      z-index: 3;
      top: 375px !important;
      left: 275px; }
    body #Cast .GenCard .groupInfo .pin9 {
      left: 465px; }
    body #Cast .GenCard .groupInfo .pin10 {
      left: 530px; }
    body #Cast .GenCard .groupInfo .dot {
      top: 0;
      height: 0;
      width: 3px;
      background-size: 100% auto;
      background-repeat: repeat-y; }
      body #Cast .GenCard .groupInfo .dot::before {
        content: '';
        width: 7px;
        height: 7px;
        display: block;
        border-radius: 10px;
        margin: -2px 0 0 -2px; }
      body #Cast .GenCard .groupInfo .dot.yellow {
        background-image: url("../../../assets/img/dotYellowV.png"); }
      body #Cast .GenCard .groupInfo .dot.green {
        z-index: 3;
        background-image: url("../../../assets/img/dotGreebV.png"); }
      body #Cast .GenCard .groupInfo .dot.purple {
        background-image: url("../../../assets/img/dotPurpleV.png"); }
      body #Cast .GenCard .groupInfo .dot.red {
        z-index: 3;
        background-image: url("../../../assets/img/dotRedV.png"); }
    body #Cast .GenCard.show .groupInfo .dot.pin1 {
      width: 3px;
      height: 55px; }
    body #Cast .GenCard.show .groupInfo .dot.pin2 {
      width: 3px;
      height: 55px; }
    body #Cast .GenCard.show .groupInfo .dot.pin3 {
      width: 3px;
      height: 250px; }
      body #Cast .GenCard.show .groupInfo .dot.pin3::after {
        content: '';
        bottom: 0;
        height: 3px;
        width: 10px;
        display: block;
        position: absolute;
        background-size: auto 100%;
        background-repeat: repeat-x;
        background-image: url("../../../assets/img/dotGreeb.png"); }
    body #Cast .GenCard.show .groupInfo .dot.pin4 {
      width: 3px;
      height: 374px; }
    body #Cast .GenCard.show .groupInfo .dot.pin5 {
      width: 3px;
      height: 55px; }
    body #Cast .GenCard.show .groupInfo .dot.pin6 {
      width: 3px;
      height: 230px; }
      body #Cast .GenCard.show .groupInfo .dot.pin6::after {
        content: '';
        bottom: 0;
        height: 3px;
        width: 10px;
        display: block;
        position: absolute;
        background-size: auto 100%;
        background-repeat: repeat-x;
        background-image: url("../../../assets/img/dotRed.png"); }
    body #Cast .GenCard.show .groupInfo .dot.pin7 {
      width: 3px;
      height: 375px; }
      body #Cast .GenCard.show .groupInfo .dot.pin7::after {
        content: '';
        bottom: 0;
        height: 3px;
        width: 100px;
        display: block;
        position: absolute;
        background-size: auto 100%;
        background-repeat: repeat-x;
        background-image: url("../../../assets/img/dotRed.png"); }
    body #Cast .GenCard.show .groupInfo .dot.pin8 {
      height: 3px;
      width: 150px;
      background-size: auto 100%;
      background-repeat: repeat-x;
      background-image: url("../../../assets/img/dotPurple.png"); }
    body #Cast .GenCard.show .groupInfo .dot.pin9 {
      width: 3px;
      height: 50px; }
    body #Cast .GenCard.show .groupInfo .dot.pin10 {
      width: 3px;
      height: 235px; }
      body #Cast .GenCard.show .groupInfo .dot.pin10::after {
        content: '';
        bottom: 1px;
        right: 0;
        height: 3px;
        width: 15px;
        display: block;
        position: absolute;
        background-size: auto 100%;
        background-repeat: repeat-x;
        background-image: url("../../../assets/img/dotPurple.png"); } }

@media only screen and (max-width: 770px) {
  body .PCView {
    display: none; }
  body .SPView {
    display: none; }
  body .TBView {
    display: block; }
  body a.otherContent .btnInfo {
    padding: 25px 25px 25px 25px; }
  body #menuPopper .closeBtn {
    top: 40px;
    left: 40px; }
  body #menuPopper .logoBig {
    width: 60%; }
  body #logo {
    top: 30px;
    right: 30px;
    max-width: 120px;
    -webkit-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    overflow: hidden;
    height: 160px; }
  body #Menu {
    top: 40px;
    left: 40px; }
    body #Menu .QLinks {
      display: none; }
  body section#KV .copy {
    height: 100px;
    bottom: 38%; }
    body section#KV .copy .copy_box span {
      height: 17%;
      margin: 5px 0; }
  body section#KV .title .watchContents img {
    width: 70%; }
  body section#KV .videoBtn {
    width: 52px;
    padding: 20px; }
    body section#KV .videoBtn span.btnName {
      display: none; }
    body section#KV .videoBtn span.playIcon {
      margin: 0;
      display: block;
      left: 2px;
      position: relative; }
  body #Awards img {
    height: 73px; }
  body #Concept .cage {
    padding: 0; }
    body #Concept .cage .snowBg {
      right: -100px; }
  body #Cast {
    padding: 0 90px; }
    body #Cast .subCast {
      max-width: 400px;
      margin-left: auto;
      margin-right: auto; }
  body section#MainContent .cage {
    padding: 0; }
  body section#News .cage {
    padding: 0; }
    body section#News .cage .contentHolder {
      padding: 100px 20px 120px 20px; }
  body section#News .news_contents .newLink .date {
    white-space: nowrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
  body section#News .news_contents .newLink .title {
    word-break: keep-all;
    text-align: left; }
  body section#SubContent {
    padding: 0; }
    body section#SubContent .content p {
      padding: 0 20px; }
      body section#SubContent .content p br {
        display: none; }
  body #Story #KV {
    width: 100vw;
    height: 90vh;
    position: relative; }
    body #Story #KV:after {
      bottom: -1px;
      height: 63px;
      width: 100vw;
      position: absolute;
      top: auto;
      left: 0 !important;
      right: auto;
      background-image: url("../../../assets/img/WhitPaperMaskL.png"); }
  body #Story #Content {
    margin: 0 auto;
    max-width: 450px;
    padding: 80px 0 150px 0; }
    body #Story #Content .highlight, body #Story #Content ul, body #Story #Content p {
      opacity: 1 !important; }
  body.Starter #Story #KV {
    width: 100vw;
    height: 35vh; }
  body #Post .cageContent {
    padding: 0 30px;
    max-width: 550px; }
    body #Post .cageContent .cageIndex {
      display: block; }
      body #Post .cageContent .cageIndex .imgIndex {
        width: 100%; }
        body #Post .cageContent .cageIndex .imgIndex img {
          width: calc(50% - 6px);
          margin: 3px; }
      body #Post .cageContent .cageIndex .textIndex {
        width: 100%;
        margin-top: 20px; }
        body #Post .cageContent .cageIndex .textIndex p {
          margin: auto 0; }
      body #Post .cageContent .cageIndex:nth-child(2) {
        padding: 30px 0 150px; }
  body #Cast .GenCard .wing {
    width: 100%; }
    body #Cast .GenCard .wing .card {
      margin: 0 auto 20px auto; }
      body #Cast .GenCard .wing .card .profile .barLine {
        display: none; }
  body #Cast .GenCard .groupInfo {
    width: 100%;
    display: block; }
    body #Cast .GenCard .groupInfo img.dots {
      width: 200px;
      margin-top: -40px;
      margin-left: calc(50% - 110px); }
  body #Cast .GenCard.Gen2 .groupInfo {
    padding: 40px 20px; }
    body #Cast .GenCard.Gen2 .groupInfo .dot.pin9 {
      display: block; }
    body #Cast .GenCard.Gen2 .groupInfo .dot.pin8::after {
      display: none; }
  body #Cast .GenCard.Gen2 .downWing {
    width: 275px;
    margin-left: calc(50% - 145px); }
    body #Cast .GenCard.Gen2 .downWing .card {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
  body #Cast .GenCard.Gen2 .card.float .profile:nth-child(1) {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1; }
  body #Cast .GenCard.Gen2 .card.float .profile:nth-child(2) {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3; }
  body #Cast .GenCard.Gen2 .card.float .profile:nth-child(3) {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2; }
  body #Cast .GenCard.Gen3 .groupInfo {
    padding: 60px 70px; }
    body #Cast .GenCard.Gen3 .groupInfo .textStory {
      line-height: 35px;
      -webkit-writing-mode: inherit;
      -ms-writing-mode: inherit;
      writing-mode: inherit;
      letter-spacing: 2px; }
      body #Cast .GenCard.Gen3 .groupInfo .textStory table {
        width: auto;
        height: auto; }
        body #Cast .GenCard.Gen3 .groupInfo .textStory table th {
          height: auto;
          width: 100px; }
  body #Cast .GenCard .groupInfo .pin1 {
    left: calc(50% - 155px); }
  body #Cast .GenCard .groupInfo .pin2 {
    left: calc(50% - 70px); }
  body #Cast .GenCard .groupInfo .pin3 {
    left: calc(50% - 120px); }
  body #Cast .GenCard .groupInfo .pin4 {
    z-index: 0;
    left: calc(50% - -150px); }
  body #Cast .GenCard .groupInfo .pin5 {
    left: calc(50% - 73px); }
  body #Cast .GenCard .groupInfo .pin6 {
    left: calc(50% - 120px); }
  body #Cast .GenCard .groupInfo .pin7 {
    left: calc(50% - 140px); }
  body #Cast .GenCard .groupInfo .pin8 {
    z-index: 3;
    top: 480px !important;
    left: calc(50% - 15px); }
  body #Cast .GenCard .groupInfo .pin9 {
    left: calc(50% - 156px); }
  body #Cast .GenCard .groupInfo .pin10 {
    left: calc(50% - -145px); }
  body #Cast .GenCard .groupInfo .dot {
    top: 0;
    height: 0;
    width: 3px;
    background-size: 100% auto;
    background-repeat: repeat-y; }
    body #Cast .GenCard .groupInfo .dot::before {
      content: '';
      width: 7px;
      height: 7px;
      display: block;
      border-radius: 10px;
      margin: -2px 0 0 -2px; }
    body #Cast .GenCard .groupInfo .dot.yellow {
      background-image: url("../../../assets/img/dotYellowV.png"); }
    body #Cast .GenCard .groupInfo .dot.green {
      z-index: 3;
      background-image: url("../../../assets/img/dotGreebV.png"); }
    body #Cast .GenCard .groupInfo .dot.purple {
      background-image: url("../../../assets/img/dotPurpleV.png"); }
    body #Cast .GenCard .groupInfo .dot.red {
      z-index: 3;
      background-image: url("../../../assets/img/dotRedV.png"); }
  body #Cast .GenCard.show .groupInfo .dot.pin1 {
    width: 3px;
    height: 745px; }
    body #Cast .GenCard.show .groupInfo .dot.pin1::after {
      content: '';
      top: auto;
      left: 0;
      bottom: 0;
      height: 3px;
      width: 40px;
      display: block;
      position: absolute;
      background-size: auto 100%;
      background-repeat: repeat-x;
      background-image: url("../../../assets/img/dotYellow.png"); }
  body #Cast .GenCard.show .groupInfo .dot.pin2 {
    width: 3px;
    height: 55px; }
  body #Cast .GenCard.show .groupInfo .dot.pin3 {
    width: 3px;
    height: 250px; }
    body #Cast .GenCard.show .groupInfo .dot.pin3::after {
      content: '';
      bottom: 0;
      height: 3px;
      width: 10px;
      display: block;
      position: absolute;
      background-size: auto 100%;
      background-repeat: repeat-x;
      background-image: url("../../../assets/img/dotGreeb.png"); }
  body #Cast .GenCard.show .groupInfo .dot.pin4 {
    width: 3px;
    height: 1015px; }
    body #Cast .GenCard.show .groupInfo .dot.pin4::after {
      content: '';
      right: 0;
      bottom: 2px;
      height: 3px;
      width: 21px;
      display: block;
      position: absolute;
      background-size: auto 100%;
      background-repeat: repeat-x;
      background-image: url("../../../assets/img/dotPurple.png"); }
  body #Cast .GenCard.show .groupInfo .dot.pin5 {
    width: 3px;
    height: 55px; }
  body #Cast .GenCard.show .groupInfo .dot.pin6 {
    width: 3px;
    height: 230px; }
    body #Cast .GenCard.show .groupInfo .dot.pin6::after {
      content: '';
      bottom: 0;
      height: 3px;
      width: 10px;
      display: block;
      position: absolute;
      background-size: auto 100%;
      background-repeat: repeat-x;
      background-image: url("../../../assets/img/dotRed.png"); }
  body #Cast .GenCard.show .groupInfo .dot.pin7 {
    width: 3px;
    height: 375px; }
    body #Cast .GenCard.show .groupInfo .dot.pin7::after {
      content: '';
      bottom: 0;
      height: 3px;
      width: 85px;
      display: block;
      position: absolute;
      background-size: auto 100%;
      background-repeat: repeat-x;
      background-image: url("../../../assets/img/dotRed.png"); }
  body #Cast .GenCard.show .groupInfo .dot.pin8 {
    width: 3px;
    height: 50px;
    background-size: 100% auto;
    background-repeat: repeat-y;
    background-image: url("../../../assets/img/dotPurpleV.png"); }
  body #Cast .GenCard.show .groupInfo .dot.pin9 {
    width: 3px;
    height: 578px; }
    body #Cast .GenCard.show .groupInfo .dot.pin9::after {
      content: '';
      bottom: 1px;
      height: 3px;
      width: 10px;
      display: block;
      position: absolute;
      background-size: auto 100%;
      background-repeat: repeat-x;
      background-image: url("../../../assets/img/dotPurple.png"); }
  body #Cast .GenCard.show .groupInfo .dot.pin10 {
    width: 3px;
    height: 580px; }
    body #Cast .GenCard.show .groupInfo .dot.pin10::after {
      content: '';
      bottom: 1px;
      right: 0;
      height: 3px;
      width: 20px;
      display: block;
      position: absolute;
      background-size: auto 100%;
      background-repeat: repeat-x;
      background-image: url("../../../assets/img/dotPurple.png"); }
  body section#Cast.Cast_section {
    padding: 0;
    background-size: cover;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; }
    body section#Cast.Cast_section .pageHeader {
      margin: 0; }
    body section#Cast.Cast_section .cage {
      -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
      order: 2;
      margin: 80px 0 0 0;
      width: 100%; }
      body section#Cast.Cast_section .cage .CastPickup {
        display: block; }
        body section#Cast.Cast_section .cage .CastPickup .pickup_img {
          width: 90%;
          margin: 0 auto;
          padding: 0 0 120% 0; }
        body section#Cast.Cast_section .cage .CastPickup .pickup_textbox {
          width: 90%;
          margin: 0 auto;
          padding-top: 50px; }
          body section#Cast.Cast_section .cage .CastPickup .pickup_textbox .text_contents .triggleTitle .jpName span.castName {
            padding: 0;
            display: block;
            margin-top: 10px; }
    body section#Cast.Cast_section .CastLineup {
      -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
      order: 1;
      padding-top: 50px; }
      body section#Cast.Cast_section .CastLineup .wrapper:hover > .slide {
        opacity: 1;
        -webkit-transition: none;
        -o-transition: none;
        transition: none; } }

@media only screen and (max-width: 415px) {
  body .PCView {
    display: none; }
  body .SPView {
    display: block; }
  body .TBView {
    display: none; }
  body section#KV .copy {
    bottom: 40%;
    height: 73px; }
    body section#KV .copy .copy_box span {
      height: 18%;
      margin: 3px 0; }
  body section#KV .title {
    left: 30px;
    width: calc(100% - 60px);
    bottom: 110px; }
    body section#KV .title .actorContents {
      margin-bottom: 10px; }
      body section#KV .title .actorContents span.position {
        font-size: 10px; }
      body section#KV .title .actorContents .director span.name {
        font-size: 15px;
        line-height: 25px; }
      body section#KV .title .actorContents .appearance span.name {
        font-size: 15px;
        line-height: 22px; }
    body section#KV .title .watchContents img {
      width: 100%; }
    body section#KV .title .watchContents .videoBtn {
      padding: 10px 18px;
      font-size: 10px;
      letter-spacing: 2px; }
      body section#KV .title .watchContents .videoBtn span {
        width: 5px;
        height: 6px;
        margin: 0 0 0 6px; }
  body section#KV .videoBtn {
    left: calc(50% - 90px);
    width: 180px;
    bottom: 30px;
    padding: 20px 30px; }
    body section#KV .videoBtn span.btnName {
      display: inline-block; }
    body section#KV .videoBtn span.playIcon {
      left: 0;
      margin: 0 0 0 5px;
      display: inline-block;
      position: relative; }
  body .sectionTitle {
    font-size: 32px; }
  body #menuPopper {
    overflow: hidden; }
    body #menuPopper .closeBtn {
      top: 30px;
      left: 30px; }
    body #menuPopper .logoBig {
      top: -40px;
      right: -40px;
      width: 100%;
      background-position: top right; }
    body #menuPopper .linksHolder .linksCage {
      max-width: 300px;
      margin-left: 30px; }
  body #Menu {
    top: 30px;
    left: 30px; }
  body #logo, body #logo.mini {
    top: 10px;
    right: 10px;
    height: 105px;
    max-width: 78px;
    overflow: hidden; }
  body .more {
    opacity: 1 !important; }
  body a.otherContent .btnInfo {
    padding: 25px 25px 25px 15px; }
    body a.otherContent .btnInfo .jpName {
      font-size: 30px; }
    body a.otherContent .btnInfo .text {
      max-width: 120px; }
      body a.otherContent .btnInfo .text br {
        display: none; }
  body #LightBox .holder {
    display: block;
    overflow-y: scroll; }
    body #LightBox .holder .contentPlacer .vholder {
      display: block; }
      body #LightBox .holder .contentPlacer .vholder .close {
        top: 30px;
        z-index: 2;
        right: 30px;
        opacity: 1;
        position: fixed; }
      body #LightBox .holder .contentPlacer .vholder .photo {
        width: 100%; }
        body #LightBox .holder .contentPlacer .vholder .photo .paperName {
          left: 0;
          top: auto;
          right: auto;
          bottom: -40px;
          padding: 20px 30px; }
          body #LightBox .holder .contentPlacer .vholder .photo .paperName .enName {
            float: none;
            margin-bottom: 8px;
            -webkit-writing-mode: inherit;
            -ms-writing-mode: inherit;
            writing-mode: inherit; }
          body #LightBox .holder .contentPlacer .vholder .photo .paperName .jpName {
            float: none;
            font-size: 30px;
            -webkit-writing-mode: inherit;
            -ms-writing-mode: inherit;
            writing-mode: inherit; }
      body #LightBox .holder .contentPlacer .vholder .info {
        width: 100%;
        padding: 50px 30px; }
  body section#PopupSection .popup .popup-inner {
    width: 90%; }
  body section#Awards img {
    height: 63px;
    margin-bottom: 20px; }
  body section#Concept .contentHolder {
    padding: 100px 10px; }
    body section#Concept .contentHolder .textHolder {
      left: 0;
      width: 100%; }
      body section#Concept .contentHolder .textHolder .row {
        opacity: 1;
        width: auto;
        float: none;
        color: #5b6275;
        margin: 0 auto 0 auto;
        -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
        writing-mode: horizontal-tb;
        font-size: 12px; }
        body section#Concept .contentHolder .textHolder .row:nth-child(19) {
          margin-top: 30px; }
        body section#Concept .contentHolder .textHolder .row .masking {
          display: none; }
  body section#Cast {
    padding: 0 18px; }
    body section#Cast .mainCast {
      font-size: 14px; }
    body section#Cast .CastLineup .container {
      height: 280px; }
      body section#Cast .CastLineup .container .wrapper {
        height: 280px; }
        body section#Cast .CastLineup .container .wrapper .slide {
          width: 140px;
          height: 280px; }
    body section#Cast .cage .director {
      font-size: 25px; }
    body section#Cast .cage .mainCast {
      font-size: 14px;
      line-height: 22px; }
      body section#Cast .cage .mainCast span span.small_text {
        font-size: 10px; }
    body section#Cast .cage .subCast {
      font-size: 12px; }
  body section#MainContent {
    height: auto; }
    body section#MainContent .cage {
      height: auto;
      display: block; }
      body section#MainContent .cage .holder {
        width: 100%;
        height: 500px;
        margin-bottom: 2px; }
        body section#MainContent .cage .holder .content .vC {
          left: 30px;
          bottom: 30px; }
      body section#MainContent .cage .subDiv .content .vC {
        left: 0;
        bottom: 20px; }
  body section#SubContent .cage {
    padding: 0;
    display: block; }
    body section#SubContent .cage .holder {
      width: 100%;
      display: block;
      margin-bottom: 1px; }
      body section#SubContent .cage .holder:first-child {
        border-right: 0px; }
      body section#SubContent .cage .holder .content h2.title {
        font-size: 32px; }
  body section#News .newLink {
    line-height: 18px;
    padding: 25px 35px 25px 0;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    text-align: left; }
    body section#News .newLink .date {
      width: 100%;
      margin-bottom: 5px; }
    body section#News .newLink .more {
      right: 0;
      top: calc(50% - 7px); }
  body section#Sponsor .cage {
    padding: 0 20px; }
  body section#footer .cage {
    padding: 0 20px 0 20px; }
  body #Story #Content {
    max-width: 300px;
    padding: 40px 0 150px 0; }
    body #Story #Content .post {
      padding-bottom: 40px; }
      body #Story #Content .post .punchLine br {
        display: none; }
    body #Story #Content .nametitle {
      margin-bottom: 40px; }
    body #Story #Content .GOZEtitle {
      margin-bottom: 40px; }
    body #Story #Content .title {
      margin-bottom: 40px;
      font-size: 50px; }
  body #Crew {
    padding: 130px 0 100px 0; }
    body #Crew .cage {
      padding: 0; }
    body #Crew .pageHeader {
      margin-bottom: 60px; }
    body #Crew a.directorBlock {
      height: 270px; }
      body #Crew a.directorBlock .contentHolder .info {
        width: 180px;
        margin-right: 20px; }
      body #Crew a.directorBlock .contentHolder .detail {
        margin-bottom: 20px; }
      body #Crew a.directorBlock .contentHolder .jpName {
        font-size: 30px;
        margin: 0 14px 0 8px; }
    body #Crew .otherCrew {
      display: block; }
      body #Crew .otherCrew .crew {
        width: 70%;
        margin-left: 15%;
        margin-bottom: 80px; }
        body #Crew .otherCrew .crew:last-child {
          margin-bottom: 0; }
  body #Locations .cage {
    padding: 0 30px; }
  body #Locations .pageHeader {
    margin-bottom: 40px; }
    body #Locations .pageHeader .title {
      font-size: 50px; }
  body #Locations .postHolder {
    display: block; }
    body #Locations .postHolder .locationPost {
      width: 100%;
      margin: 0 0 50px 0; }
      body #Locations .postHolder .locationPost .textArea {
        display: block; }
      body #Locations .postHolder .locationPost .photo {
        margin-bottom: 20px; }
      body #Locations .postHolder .locationPost .photoTitle {
        padding-left: 0;
        margin-bottom: 5px; }
      body #Locations .postHolder .locationPost .photoText {
        padding-left: 0;
        margin-bottom: 5px; }
      body #Locations .postHolder .locationPost .tag {
        text-align: left;
        position: relative;
        padding-left: 8px; }
  body #Video .cage {
    padding: 0 30px; }
  body #Video .pageHeader {
    margin-bottom: 40px; }
    body #Video .pageHeader .title {
      font-size: 50px; }
  body #Video .postHolder {
    display: block; }
    body #Video .postHolder a.videoPost {
      width: 100%;
      margin: 0 0 50px 0; }
      body #Video .postHolder a.videoPost .flex {
        display: block; }
      body #Video .postHolder a.videoPost .video {
        margin-bottom: 20px; }
      body #Video .postHolder a.videoPost .videoTitle {
        padding-left: 8px;
        margin-bottom: 5px; }
      body #Video .postHolder a.videoPost .tag {
        text-align: left;
        position: relative;
        padding-left: 8px; }
  body.Starter #Story #KV {
    width: 100vw;
    height: 45vh; }
  body #Post .cageHeader {
    padding: 190px 30px 40px 30px; }
    body #Post .cageHeader .titleSP {
      font-size: 35px;
      line-height: 40px; }
  body #Post .date {
    bottom: 0;
    margin-bottom: 30px;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    display: inline-block; }
  body #Post .control {
    padding: 25px 0 45px 0;
    margin-bottom: 0; }
  body #Post p {
    margin-bottom: 40px; }
  body #Post #Special {
    padding: 0;
    margin-bottom: 60px; }
    body #Post #Special .contentHolder {
      padding: 100px 30px; }
  body #Post .photo {
    margin-bottom: 40px; }
  body #Post .others a {
    font-size: 13px;
    letter-spacing: 1px; }
    body #Post .others a.pre:before {
      margin: 0 8px -2px 0; }
    body #Post .others a.nex:after {
      margin: 0 0 -2px 8px; }
    body #Post .others a.backtoList {
      font-size: 13px;
      letter-spacing: 1px; }
  body #Cast .cage .pageHeader {
    margin-bottom: 40px; }
    body #Cast .cage .pageHeader .title {
      font-size: 50px; }
  body #Cast .cage .GenCard.Gen3 .groupInfo {
    padding: 60px 30px; }
    body #Cast .cage .GenCard.Gen3 .groupInfo br {
      display: none; }
  body #Crew .pageHeader .title {
    font-size: 50px; }
  body #Crew .otherCrew_contents .otherCrew .other_staff {
    display: block;
    width: 95%;
    margin: 0 auto;
    padding: 0; }
    body #Crew .otherCrew_contents .otherCrew .other_staff ul.job {
      width: 100%;
      padding-bottom: 20px; } }
