@charset "UTF-8";
/*------------------------------------------------------*/
/*  reset */
/*------------------------------------------------------*/
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-style: normal;
  vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

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

fieldset, img {
  border: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal;
}

li {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}

q:before, q:after {
  content: "";
}

abbr, acronym {
  border: 0;
  font-variant: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

input, textarea, select {
  *font-size: 100%;
}

legend {
  color: #000;
}

table {
  width: 100%;
}

*,
::before,
::after {
  border-style: solid;
  border-width: 0;
}

:root {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media screen {
  [hidden~=screen] {
    display: inherit;
  }
  [hidden~=screen]:not(:active):not(:focus):not(:target) {
    clip: rect(0 0 0 0) !important;
    position: absolute !important;
  }
}
img {
  vertical-align: bottom;
}

.clearfix:after,
.cf:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}

* html .clearfix, * html .cf {
  zoom: 1;
} /* IE6 */
*:first-child + html .clearfix, *:first-child + html .cf {
  zoom: 1;
} /* IE7 */
/*------------------------------------------------------*/
/* noneImages */
/*------------------------------------------------------*/
.noneImages {
  display: none;
}

.nf-message {
  display: none;
}

* {
  -webkit-appearance: none;
}

/*------------------------------------------------------*/
/*  base */
/*------------------------------------------------------*/
html {
  height: 100%;
  font-size: 62.5%;
}

body {
  width: 100%;
  margin: 0px;
  padding: 0px;
  font-family: "メイリオ", meiryo, -apple-system, BlinkMacSystemFont, sans-serif;
  color: #fff;
  background: #393939;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
body a {
  color: #fff;
  text-decoration: none;
}

input, button, textarea, select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

::-moz-selection {
  background: #53f3b8;
}

::selection {
  background: #53f3b8;
}

::-moz-selection {
  background: #53f3b8;
}

.alphaBtn:hover {
  cursor: pointer;
}

.layout {
  width: 100%;
  text-align: center;
  position: absolute;
  left: 0;
  top: 0;
}

#wrapper {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  position: relative;
  overflow: hidden;
  min-width: 100%;
  margin: 0 auto;
  height: 0;
  font-size: 1.4rem;
  line-height: 2.5rem;
  /* padding-right: 95px; */
  /* background: #393939; */
}
@media screen and (max-width: 850px) {
  #wrapper {
    padding-right: 0 !important;
  }
}
#wrapper .stage {
  display: none;
}
#wrapper .stage-main {
  display: block;
}
#wrapper .foot {
  display: none;
}
#wrapper.-show {
  height: auto;
  background: #393939;
  background: -webkit-gradient(linear, left top, left bottom, from(#393939), to(#9e9e9e));
  background: linear-gradient(#393939 0%, #9e9e9e 100%);
}
#wrapper.-show .stage {
  display: block;
}
#wrapper.-show .foot {
  display: block;
}
.fl {
  float: left;
}

.fr {
  float: right;
}

@media screen and (min-width: 851px) {
  .cont-min851 {
    display: inline-block;
  }
}
@media screen and (max-width: 850px) {
  .cont-min851 {
    display: none !important;
  }
}

@media screen and (min-width: 851px) {
  .cont-max850 {
    display: none !important;
  }
}
@media screen and (max-width: 850px) {
  .cont-max850 {
    display: inline-block;
  }
}

@media screen and (min-width: 751px) {
  .cont-min751 {
    display: inline-block;
  }
}
@media screen and (max-width: 750px) {
  .cont-min751 {
    display: none !important;
  }
}

@media screen and (min-width: 751px) {
  .cont-max750 {
    display: none !important;
  }
}
@media screen and (max-width: 750px) {
  .cont-max750 {
    display: inline-block;
  }
}

@media screen and (min-width: 487px) {
  .cont-sp {
    display: none !important;
  }
}
@media screen and (max-width: 486px) {
  .cont-sp {
    display: inline-block;
  }
}

@media screen and (min-width: 487px) {
  .cont-pc {
    display: inline-block;
  }
}
@media screen and (max-width: 486px) {
  .cont-pc {
    display: none !important;
  }
}

/*------------------------------------------------------*/
/*  common */
/*------------------------------------------------------*/
.stage {
  position: relative;
}
.stage-title {
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 100;
  font-style: italic;
  letter-spacing: 0.16em;
  font-size: 6.5rem;
  width: 100%;
  position: absolute;
  left: 0;
  top: 80px;
  text-align: center;
}
.stage-title span {
  display: inline-block;
  position: relative;
  font-style: italic;
}
@media screen and (max-width: 486px) {
  .stage-title {
    font-size: 4rem;
  }
}

.bg-8 {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  opacity: 0;
  filter: alpha(opacity=0);
  text-align: center;
  padding-right: 95px;
}
.bg-8 > img {
  max-width: 368px;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}
.bg-8.-show {
  -webkit-transition: all 1.5s cubic-bezier(0.37, 0.82, 0.335, 1.19) 1.5s;
  transition: all 1.5s cubic-bezier(0.37, 0.82, 0.335, 1.19) 1.5s;
  opacity: 1;
  filter: alpha(opacity=100);
}

.modal {
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 9999;
  color: #393939;
  display: none;
}
.modal-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: #fff;
  opacity: 0;
  filter: alpha(opacity=0);
}
.modal-bg > p {
  width: 400px;
  height: 400px;
  position: absolute;
  left: 50%;
  margin-left: -247px;
  top: 146px;
  opacity: 0.1;
  filter: alpha(opacity=10);
}
.modal-bg > p img {
  width: 1000px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -500px;
  margin-top: -375px;
}
.modal-main {
  width: 80%;
  height: 80%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
  overflow: auto;
  max-width: 980px;
}
@media screen and (max-width: 750px) {
  .modal-main {
    width: 100%;
  }
}
.modal-audition {
  padding: 0 50px;
  opacity: 0;
  filter: alpha(opacity=0);
}
.modal-audition > h1 {
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 300;
  font-style: italic;
  font-size: 4rem;
  text-align: center;
  margin-bottom: 40px;
}
@media screen and (max-width: 750px) {
  .modal-audition {
    padding: 0 8%;
  }
}
.modal-close {
  width: 30px;
  height: 30px;
  position: absolute;
  right: 30px;
  top: 30px;
  cursor: pointer;
}
@media screen and (max-width: 750px) {
  .modal-close {
    right: 15px;
    top: 15px;
  }
}
.modal-close::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  background: #000;
  top: 50%;
  left: 0;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
.modal-close::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  background: #000;
  top: 50%;
  left: 0;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
.modal-close:hover::before {
  transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
}
.modal-close:hover::after {
  transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
}

/*------------------------------------------------------*/
/*  load */
/*------------------------------------------------------*/
.load {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 999;
}
.load-inner {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  overflow: hidden;
  -webkit-transition: all 0.4s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.4s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}
.load-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: linear-gradient(52deg, #ffef37, #ff4f5b, #2165ff, #50faac);
  background-size: 500% 500%;
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-animation: AnimationName 15s ease infinite;
  animation: AnimationName 15s ease infinite;
  -webkit-transition: all 0.4s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.4s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}
.load-logo {
  width: 97px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
}
@media screen and (max-width: 486px) {
  .load-logo {
    width: 87px;
  }
}
.load.-show .load-inner {
  width: calc(100% - 112px);
  height: calc(100% - 150px);
  left: 56px;
  top: 75px;
}
@media screen and (max-width: 850px) {
  .load.-show .load-inner {
    width: calc(100% - 56px);
    height: calc(100% - 76px);
    left: 28px;
    top: 38px;
  }
}
.load.-show .load-bg.-hide {
  -webkit-transition: all 1.5s cubic-bezier(0.37, 0.82, 0.335, 1.19) 1.5s;
  transition: all 1.5s cubic-bezier(0.37, 0.82, 0.335, 1.19) 1.5s;
  opacity: 0;
  filter: alpha(opacity=0);
}
.load-photo {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: -webkit-flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
}
.load-photo > li {
  width: 50%;
  height: 25%;
  opacity: 0;
  filter: alpha(opacity=0);
  position: relative;
  background: #000;
}
.load-photo > li.-show {
  opacity: 1;
  filter: alpha(opacity=100);
}
.load-photo__bg {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
}
.load-photo__bg > img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 120%;
  height: 120%;
  -o-object-position: center center;
     object-position: center center;
  font-family: "object-fit: cover; object-position: center center;";
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  -webkit-filter: blur(15px);
  -moz-filter: blur(15px);
  -o-filter: blur(15px);
  -ms-filter: blur(15px);
  filter: blur(15px);
}
.load-photo__img {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.load-photo__img > img {
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
  height: 100%;
  -o-object-position: center center;
     object-position: center center;
  font-family: "object-fit: contain; object-position: center center;";
  position: absolute;
  left: 0;
  top: 0;
}

@-webkit-keyframes AnimationName {
  0% {
    background-position: 0% 91%;
  }
  50% {
    background-position: 100% 10%;
  }
  100% {
    background-position: 0% 91%;
  }
}
@keyframes AnimationName {
  0% {
    background-position: 0% 91%;
  }
  50% {
    background-position: 100% 10%;
  }
  100% {
    background-position: 0% 91%;
  }
}
@-webkit-keyframes top-dot2 {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  20% {
    opacity: 0.25;
    filter: alpha(opacity=25);
  }
  40% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  100% {
    opacity: 0.2;
    filter: alpha(opacity=20);
  }
}
@keyframes top-dot2 {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  20% {
    opacity: 0.25;
    filter: alpha(opacity=25);
  }
  40% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  100% {
    opacity: 0.2;
    filter: alpha(opacity=20);
  }
}
/*------------------------------------------------------*/
/*  head */
/*------------------------------------------------------*/
.head {
  position: fixed;
  left: 100%;
  top: 0;
  width: 135px;
  height: 100%;
  z-index: 10;
  margin-left: 0px;
  background: #373737;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  transform: translateX(0);
  -webkit-transform: translateX(0);
}
@media screen and (max-width: 850px) {
  .head {
    margin-left: 0;
    background: #fff;
  }
}
@media screen and (max-width: 850px) {
  .head.-show {
    margin-left: 0 !important;
  }
}
.head-block {
  width: 0;
  height: 100%;
  position: absolute;
  right: 135px;
  top: 0;
  overflow: hidden;
  cursor: pointer;
}
@media screen and (max-width: 850px) {
  .head-block {
    position: fixed;
    width: 100vw !important;
    height: 64px !important;
    left: 0;
    top: -64px;
    background: transparent;
    z-index: 999;
  }
}
@media screen and (min-width: 851px) {
  .head-block:hover .head-global > .btn > .line.-t {
    width: 28px;
  }
  .head-block:hover .head-global > .btn > .line.-b {
    width: 22px;
  }
}
.head-block2 {
  width: 0;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
  cursor: pointer;
}
@media screen and (max-width: 850px) {
  .head-block2 {
    position: fixed;
    width: 100vw !important;
    height: 64px !important;
    left: 0;
    top: -64px;
    background: transparent;
    z-index: 999;
  }
}
.head-block2 .head-global > .logo {
  width: 60px !important;
  margin-bottom: 14px !important;
}
@media screen and (min-width: 851px) {
  .head-block2:hover .head-global > .btn.-open > .line.-t {
    width: 34px;
    transform: translateY(0) rotate(0deg);
    -webkit-transform: translateY(0) rotate(0deg);
  }
  .head-block2:hover .head-global > .btn.-open > .line.-b {
    width: 34px;
    transform: translateY(0) rotate(0deg);
    -webkit-transform: translateY(0) rotate(0deg);
  }
}
.head-global {
  position: absolute;
  width: 100%;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}
@media screen and (max-width: 850px) {
  .head-global {
    width: 84vw;
    margin: 0 auto;
    position: relative;
    left: 0;
    top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    display: -webkit-flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-align-items: flex-start;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    z-index: 1;
  }
}
.head-global > .logo {
  width: 64px;
  margin: 0 auto 14px auto;
}
@media screen and (max-width: 850px) {
  .head-global > .logo {
    margin: 0;
    position: relative;
    top: 25px;
    font-size: 0;
    line-height: 0;
  }
}
.head-global > .btn {
  width: 40px;
  height: 40px;
  margin: 0 auto;
  position: relative;
  cursor: pointer;
}
.head-global > .btn > .line {
  display: block;
  width: 34px;
  height: 1px;
  background: #fff;
  position: absolute;
  left: 3px;
  top: 50%;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
.head-global > .btn > .line.-t {
  transform: translateY(-5px) rotate(0deg);
  -webkit-transform: translateY(-5px) rotate(0deg);
}
.head-global > .btn > .line.-c {
  opacity: 1;
  filter: alpha(opacity=100);
}
.head-global > .btn > .line.-b {
  transform: translateY(5px) rotate(0deg);
  -webkit-transform: translateY(5px) rotate(0deg);
}
@media screen and (min-width: 851px) {
  .head-global > .btn:hover > .line.-t {
    width: 28px;
  }
  .head-global > .btn:hover > .line.-b {
    width: 22px;
  }
}
.head-global > .btn.-open > .line.-t {
  transform: translateY(0) rotate(30deg);
  -webkit-transform: translateY(0) rotate(30deg);
}
.head-global > .btn.-open > .line.-c {
  opacity: 0;
  filter: alpha(opacity=0);
}
.head-global > .btn.-open > .line.-b {
  transform: translateY(0) rotate(-30deg);
  -webkit-transform: translateY(0) rotate(-30deg);
}
@media screen and (min-width: 851px) {
  .head-global > .btn.-open:hover > .line.-t {
    width: 34px;
    transform: translateY(0) rotate(0deg);
    -webkit-transform: translateY(0) rotate(0deg);
  }
  .head-global > .btn.-open:hover > .line.-c {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  .head-global > .btn.-open:hover > .line.-b {
    width: 34px;
    transform: translateY(0) rotate(0deg);
    -webkit-transform: translateY(0) rotate(0deg);
  }
}
@media screen and (max-width: 850px) {
  .head-global > .btn {
    margin: 0;
    position: relative;
    top: 25px;
  }
  .head-global > .btn > .line {
    background: #fff;
  }
}
.head-global .text {
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 300;
  font-style: italic;
  font-size: 1.1rem;
  color: #000;
  text-align: center;
  letter-spacing: 0.04em;
  position: relative;
  top: 0px;
}
@media screen and (max-width: 850px) {
  .head-global .text {
    color: #fff;
    position: absolute;
    right: 0;
    top: 22px;
    width: 44px;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    padding-left: 4px;
  }
}
.head-nav {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  width: 100vw;
  background: #373737;
  position: absolute;
  padding-right: 135px;
  left: 135px;
  height: 100%;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
.head-nav > ul {
  position: absolute;
  left: 50%;
  top: 50%;
  padding-right: 95px;
  transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
  text-align: center;
}
.head-nav > ul > li {
  position: relative;
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 100;
  font-style: italic;
  font-size: 5rem;
  margin-bottom: 65px;
  letter-spacing: 0.08em;
  cursor: pointer;
  opacity: 0;
  filter: alpha(opacity=0);
}
.head-nav > ul > li:last-of-type {
  margin-bottom: 0;
}
.head-nav > ul > li > span.-l {
  display: block;
  width: 0;
  height: 1px;
  background: #ffef37;
  position: absolute;
  right: 50%;
  top: 50%;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
.head-nav > ul > li > span.-r {
  display: block;
  width: 0;
  height: 1px;
  background: #50faac;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
@media screen and (min-width: 851px) {
  .head-nav > ul > li:hover > span.-l {
    width: 368px;
  }
  .head-nav > ul > li:hover > span.-r {
    width: 368px;
  }
}
@media screen and (max-width: 850px) {
  .head-nav {
    padding-right: 0 !important;
    left: 0 !important;
  }
  .head-nav > ul {
    padding-right: 0 !important;
    width: 100%;
  }
  .head-nav > ul > li {
    font-size: 3.1rem;
    margin-bottom: 48px;
  }
}
.head.-open {
  margin-left: 0;
}
.head.-small.-open {
  margin-left: 0;
}
@media screen and (max-width: 850px) {
  .head.-small {
    margin-left: 0;
  }
}
.head.-small .head-global > .logo {
  margin-bottom: 6px;
}
@media screen and (max-width: 850px) {
  .head.-small .head-global > .logo {
    width: 60px;
  }
}

/*------------------------------------------------------*/
/*  foot */
/*------------------------------------------------------*/
.foot {
  width: 100%;
  position: relative;
  color: #fff;
  padding: 0px 0 132px 0;
}
@media screen and (max-width: 750px) {
  .foot {
    padding-bottom: 95px;
  }
}
.foot-copy {
  font-size: 1.6rem;
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 100;
  font-style: italic;
  padding-left: 50px;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 850px) {
  .foot-copy {
    padding-left: 0;
    text-align: center;
    margin-bottom: 36px;
  }
}
@media screen and (max-width: 750px) {
  .foot-copy {
    font-size: 1.4rem;
  }
}
.foot-totop {
  width: 90px;
  height: 90px;
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
  cursor: pointer;
  overflow: hidden;
}
@media screen and (max-width: 850px) {
  .foot-totop {
    position: relative;
    transform: translateX(-50%) translateY(0);
    -webkit-transform: translateX(-50%) translateY(0);
  }
}
@media screen and (max-width: 750px) {
  .foot-totop {
    width: 70px;
    height: 70px;
  }
}
.foot-totop::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9db9), to(#ffef37));
  background-image: linear-gradient(to bottom, #fa9db9 0%, #ffef37 100%);
  background-size: contain;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  border-radius: 50%;
  -webkit-border-radius: 50%;
}
.foot-totop__arrow {
  width: 100%;
  height: 100%;
  position: relative;
}
.foot-totop__arrow img {
  width: 17px;
  height: 28px;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%) scale(1, -1);
          transform: translateX(-50%) translateY(-50%) scale(1, -1);
}
@media screen and (max-width: 750px) {
  .foot-totop__arrow img {
    width: 13px;
    height: 22px;
  }
}
@media screen and (min-width: 751px) {
  .foot-totop:hover .foot-totop__arrow {
    -webkit-animation: btn-hover2 0.5s ease-out forwards 0s;
    animation: btn-hover2 0.5s ease-out forwards 0s;
  }
}

/*------------------------------------------------------*/
/*  main */
/*------------------------------------------------------*/
.stage-main {
  height: 830px;
  opacity: 0;
  filter: alpha(opacity=0);
  margin-bottom: 200px;
}
@media screen and (max-width: 850px) {
  .stage-main {
    height: 767px;
  }
}

.main-catch {
  font-size: 2.7rem;
  line-height: 3.6rem;
  text-align: center;
  width: 100%;
  position: absolute;
  left: 0;
  top: 90px;
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 100;
  font-style: italic;
  letter-spacing: 0.13em;
}
.main-catch > span {
  opacity: 0;
  filter: alpha(opacity=0);
  position: relative;
  display: inline-block;
  font-style: italic;
}
@media screen and (max-width: 750px) {
  .main-catch {
    font-size: 2.5rem;
    line-height: 3.5rem;
  }
}
.main-obj {
  width: 400px;
  height: 400px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -200px;
  margin-top: -200px;
}
.main-obj.-roll {
  -webkit-animation: rotateanim 22s linear infinite 0s;
  animation: rotateanim 22s linear infinite 0s;
}
.main-obj.-roll.-paused {
  animation-play-state: paused !important;
  -webkit-animation-play-state: paused !important;
}
.main-obj .lay {
  position: absolute;
  left: 0;
  top: 0;
}
.main-obj__block {
  width: 100%;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: 75px;
  text-align: center;
}
.main-obj__block > .logo {
  opacity: 0;
  filter: alpha(opacity=0);
  margin-bottom: 15px;
  position: relative;
}
.main-obj__block > .logo img {
  width: 50px;
}
.main-obj__block > .main-catch {
  font-size: 1.3rem;
  line-height: 1.7rem;
  position: relative;
  left: 0;
  top: 0;
  letter-spacing: 0.13em;
}
.main-obj::before {
  content: "";
  width: 400px;
  height: 400px;
  background: #363636;
  border-radius: 50% 50%;
  -moz-border-radius: 50% 50%;
  -webkit-border-radius: 50% 50%;
  -o-border-radius: 50% 50%;
  -ms-border-radius: 50% 50%;
  position: absolute;
  left: 0;
  top: 0;
}
.main-obj::after {
  content: "";
  width: 26px;
  height: 26px;
  background: #4e4e4e;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -13px;
  margin-top: -13px;
  border-radius: 50% 50%;
  -moz-border-radius: 50% 50%;
  -webkit-border-radius: 50% 50%;
  -o-border-radius: 50% 50%;
  -ms-border-radius: 50% 50%;
}

.bg {
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  opacity: 0;
  filter: alpha(opacity=0);
  padding-right: 0;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
@media screen and (max-width: 850px) {
  .bg {
    padding-right: 0 !important;
  }
}
.bg #canvas-bg {
  width: 1000px;
  height: 1000px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -500px;
  margin-top: -500px;
}
.bg > p {
  width: 400px;
  height: 400px;
  position: relative;
  left: 50%;
  top: 50%;
  margin-left: -200px;
  margin-top: -200px;
}
.bg > p img {
  width: 1000px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -500px;
  margin-top: -375px;
}
.bg > .line {
  width: 400px;
  height: 400px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -242px;
  margin-top: -200px;
}
@media screen and (max-width: 850px) {
  .bg > .line {
    margin-left: -200px;
  }
}
.bg > .line p {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
}
.bg > .line p.-paused svg {
  animation-play-state: paused !important;
  -webkit-animation-play-state: paused !important;
}
.bg > .line svg {
  height: 728px;
  transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
}
.bg > .line svg.line1 {
  width: 986px;
}
.bg > .line svg.line2 {
  width: 966px;
  -webkit-animation: rotateanim 17s linear infinite 0.2s;
  animation: rotateanim 17s linear infinite 0.2s;
}
.bg > .line svg.line3 {
  width: 946px;
  -webkit-animation: rotateanim 19s linear infinite 0.3s;
  animation: rotateanim 19s linear infinite 0.3s;
}
.bg > .line svg.line4 {
  width: 986px;
  -webkit-animation: rotateanim2 12s linear infinite 0.1s;
  animation: rotateanim2 12s linear infinite 0.1s;
}
.bg > .line svg.line5 {
  width: 966px;
  -webkit-animation: rotateanim 16s linear infinite 0.2s;
  animation: rotateanim 16s linear infinite 0.2s;
}
.bg > .line svg.line6 {
  width: 946px;
  -webkit-animation: rotateanim2 15s linear infinite 0.3s;
  animation: rotateanim2 15s linear infinite 0.3s;
}
.bg > .line svg.line7 {
  width: 986px;
  -webkit-animation: rotateanim 21s linear infinite 0.1s;
  animation: rotateanim 21s linear infinite 0.1s;
}
.bg > .line svg.line8 {
  width: 966px;
  -webkit-animation: rotateanim 13s linear infinite 0.2s;
  animation: rotateanim 13s linear infinite 0.2s;
}
.bg > .line svg.line9 {
  width: 946px;
  -webkit-animation: rotateanim2 18s linear infinite 0.3s;
  animation: rotateanim2 18s linear infinite 0.3s;
}
.bg > .line svg.line10 {
  width: 986px;
  -webkit-animation: rotateanim 16s linear infinite 0.1s;
  animation: rotateanim 16s linear infinite 0.1s;
}
.bg > .line svg.line11 {
  width: 966px;
}
.bg > .line svg.line12 {
  width: 946px;
  -webkit-animation: rotateanim2 19s linear infinite 0.3s;
  animation: rotateanim2 19s linear infinite 0.3s;
}
.bg > .line path {
  fill: none;
  stroke: url(#MyGradient1);
}
.bg > .line circle {
  fill: none;
  stroke: url(#MyGradient1);
}

@keyframes rotateanim {
  0% {
    transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
  }
}
@-webkit-keyframes rotateanim {
  0% {
    transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
  }
}
@keyframes rotateanim2 {
  0% {
    transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
  }
  100% {
    transform: rotate(-360deg);
    -webkit-transform: rotate(-360deg);
  }
}
@-webkit-keyframes rotateanim2 {
  0% {
    transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
  }
  100% {
    transform: rotate(-360deg);
    -webkit-transform: rotate(-360deg);
  }
}
/*------------------------------------------------------*/
/*  banner */
/*------------------------------------------------------*/
.banner {
  margin-bottom: 198px;
}
@media screen and (max-width: 850px) {
  .banner {
    margin-bottom: 168px;
  }
}
.banner-wrap {
  position: relative;
}
.banner-main {
  max-width: 925px;
  margin: 0 auto;
}
@media screen and (max-width: 850px) {
  .banner-main {
    width: 100%;
  }
}
.banner-main > li {
  position: relative;
  cursor: pointer;
}
.banner-main > li div {
  position: relative;
  overflow: hidden;
}
.banner-main > li div > p {
  display: block;
  position: relative;
}
.banner-main > li div > p.wave {
  width: 108%;
  position: absolute;
  left: -4%;
  top: 0;
}
.banner-main > li div > p.wave img {
  position: relative;
}
.banner-main > li div > p.txt {
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 100;
  font-style: italic;
  font-size: 5.8rem;
  line-height: 7rem;
  letter-spacing: 0.14em;
  text-align: center;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
}
@media screen and (max-width: 750px) {
  .banner-main > li div > p.txt {
    font-size: 3.5rem;
    line-height: 4.9rem;
  }
}
@media screen and (max-width: 486px) {
  .banner-main > li div > p img {
    position: relative;
    width: 130% !important;
    left: -15% !important;
    top: 0 !important;
  }
  .banner-main > li div > p.wave {
    top: auto;
    bottom: 0;
  }
}
.banner-main > li > span {
  display: block;
  width: 54px;
  height: 54px;
  position: absolute;
  right: -27px;
  bottom: 37px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  overflow: hidden;
  transform: translateY(0) rotate(0deg);
  -webkit-transform: translateY(0) rotate(0deg);
}
.banner-main > li > span::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../image/bnr/btn_bg.png) no-repeat 0 0;
  background-size: contain;
  -webkit-background-size: contain;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
.banner-main > li > span::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../image/bnr/btn_arrow.png) no-repeat 0 0;
  background-size: contain;
  -webkit-background-size: contain;
}
@media screen and (max-width: 850px) {
  .banner-main > li > span {
    right: 20px;
    bottom: 0;
    margin-bottom: -27px;
  }
}
.banner-main > li:hover .banner-icon__arrow {
  -webkit-animation: btn-hover3 0.5s ease-out forwards 0s;
  animation: btn-hover3 0.5s ease-out forwards 0s;
}
.banner-main > li.-open .banner-icon {
  transform: translateY(0) rotate(-180deg);
  -webkit-transform: translateY(0) rotate(-180deg);
}
.banner-icon {
  width: 90px;
  height: 90px;
  position: absolute !important;
  right: -45px;
  bottom: 30px;
  cursor: pointer;
  overflow: hidden;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
.banner-icon::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#50faac), to(#21c3ff));
  background-image: linear-gradient(to bottom, #50faac 0%, #21c3ff 100%);
  background-size: contain;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  border-radius: 50%;
  -webkit-border-radius: 50%;
}
.banner-icon__arrow {
  width: 100%;
  height: 100%;
  position: relative;
  display: block;
}
.banner-icon__arrow img {
  width: 17px;
  height: 28px;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
}
@media screen and (max-width: 1160px) {
  .banner-icon {
    right: 40px;
    bottom: -45px;
  }
}
@media screen and (max-width: 750px) {
  .banner-icon {
    width: 70px;
    height: 70px;
    right: 20px;
    bottom: -35px;
  }
  .banner-icon__arrow img {
    width: 13px;
    height: 22px;
  }
}
.banner-pager {
  width: 8px;
  position: absolute;
  right: 55px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}
@media screen and (min-width: 1201px) {
  .banner-pager > li {
    width: 8px;
    height: 8px;
    border-radius: 50% 50%;
    -moz-border-radius: 50% 50%;
    -webkit-border-radius: 50% 50%;
    -o-border-radius: 50% 50%;
    -ms-border-radius: 50% 50%;
    background: #7d7d7d;
    margin: 16px 0;
    -webkit-transition: all 0.2s ease-out 0s;
    transition: all 0.2s ease-out 0s;
    transform: scale(1, 1);
    -webkit-transform: scale(1, 1);
    cursor: pointer;
  }
  .banner-pager > li.-current {
    transform: scale(1.3, 1.3);
    -webkit-transform: scale(1.3, 1.3);
    background: #fff;
    cursor: default;
  }
}
@media screen and (max-width: 1200px) {
  .banner-pager {
    width: 100%;
    text-align: center;
    letter-spacing: -0.4em;
    left: 0;
    right: 0;
    bottom: -40px;
    top: auto;
    transform: translateY(0);
    -webkit-transform: translateY(0);
  }
  .banner-pager > li {
    width: 20px;
    height: 20px;
    position: relative;
    display: inline-block;
    letter-spacing: normal;
    cursor: pointer;
  }
  .banner-pager > li::before {
    content: "";
    width: 8px;
    height: 8px;
    display: block;
    border-radius: 50% 50%;
    -moz-border-radius: 50% 50%;
    -webkit-border-radius: 50% 50%;
    -o-border-radius: 50% 50%;
    -ms-border-radius: 50% 50%;
    background: #7d7d7d;
    margin: 16px 0;
    -webkit-transition: all 0.2s ease-out 0s;
    transition: all 0.2s ease-out 0s;
    transform: scale(1, 1);
    -webkit-transform: scale(1, 1);
  }
  .banner-pager > li.-current::before {
    transform: scale(1.3, 1.3);
    -webkit-transform: scale(1.3, 1.3);
    background: #fff;
  }
}

/*------------------------------------------------------*/
/* release */
/*------------------------------------------------------*/
.release {
  text-align: center;
  margin-bottom: 190px;
}
@media screen and (max-width: 850px) {
  .release {
    margin-bottom: 148px;
  }
}
@media screen and (min-width: 851px) {
  .release-main {
    max-width: 1320px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    display: -webkit-flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-justify-content: center;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
  }
}
@media screen and (max-width: 850px) {
  .release-main {
    width: 84%;
    margin: 0 auto;
  }
}
.release-item {
  margin: 0 30px 30px 30px;
  position: relative;
  opacity: 0;
  filter: alpha(opacity=0);
}
@media screen and (min-width: 851px) {
  .release-item {
    width: 380px;
    height: 380px;
  }
}
@media screen and (max-width: 850px) {
  .release-item {
    width: 100%;
    margin: 0 auto 108px auto;
  }
}
.release-item > a {
  display: block;
  position: relative;
  left: 50%;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
}
.release-item > a > .release-jkw > img {
  max-width: 380px;
  max-height: 380px;
}
.release-item > a::after {
  content: "";
  display: block;
  position: absolute;
  right: -27px;
  top: 50%;
  margin-top: -25px;
  width: 55px;
  height: 55px;
  background: url(../image/release/btn.png) no-repeat 0 0;
  background-size: contain;
  -webkit-background-size: contain;
  opacity: 0;
  filter: alpha(opacity=0);
  transform: translateX(-6px);
  -webkit-transform: translateX(-6px);
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
@media screen and (min-width: 851px) {
  .release-item > a:hover .release-cover {
    opacity: 1;
    filter: alpha(opacity=100);
  }
  .release-item > a:hover .release-detail > .name {
    -webkit-transition: all 0.2s ease-out 0.1s;
    transition: all 0.2s ease-out 0.1s;
  }
  .release-item > a:hover .release-detail > .type {
    -webkit-transition: all 0.2s ease-out 0.15s;
    transition: all 0.2s ease-out 0.15s;
  }
  .release-item > a:hover .release-detail > .title {
    -webkit-transition: all 0.2s ease-out 0.2s;
    transition: all 0.2s ease-out 0.2s;
  }
  .release-item > a:hover .release-detail > time {
    -webkit-transition: all 0.2s ease-out 0.25s;
    transition: all 0.2s ease-out 0.25s;
  }
  .release-item > a:hover .release-detail > .obj {
    opacity: 1;
    filter: alpha(opacity=100);
    transform: translateY(0);
    -webkit-transform: translateY(0);
  }
  .release-item > a:hover .release-arrow {
    opacity: 1;
    filter: alpha(opacity=100);
    transform: translateX(0);
    -webkit-transform: translateX(0);
    -webkit-transition: all 0.2s ease-out 0.3s;
    transition: all 0.2s ease-out 0.3s;
  }
}
@media screen and (max-width: 850px) {
  .release-item > a {
    width: 100%;
    left: 0;
    top: 0;
    transform: translateY(0) translateX(0);
    -webkit-transform: translateY(0) translateX(0);
  }
  .release-item > a > .release-jkw {
    width: 64.66vw;
    position: relative;
    margin: 0 auto 45px;
    max-width: 380px;
  }
  .release-item > a > .release-jkw img {
    width: 100%;
    max-height: auto;
  }
}
.release-cover {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  filter: alpha(opacity=0);
  left: 0;
  top: 0;
  background: #636363;
  -webkit-transition: all 0.1s ease-out 0s;
  transition: all 0.1s ease-out 0s;
}
.release-detail {
  position: absolute;
  left: -15px;
  bottom: 45px;
  text-align: left;
  max-width: 365px;
}
.release-detail > .name {
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 100;
  font-style: italic;
  font-size: 3.8rem;
  line-height: 4rem;
  letter-spacing: 0.08em;
  margin-bottom: 30px;
  -webkit-transition: all 0.2s ease-out 0.15s;
  transition: all 0.2s ease-out 0.15s;
}
.release-detail > .type {
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 300;
  font-style: italic;
  font-size: 1.8rem;
  letter-spacing: 0.04em;
  -webkit-transition: all 0.2s ease-out 0.1s;
  transition: all 0.2s ease-out 0.1s;
  margin-bottom: 8px;
}
.release-detail > .title {
  font-size: 1.7rem;
  line-height: 2.7rem;
  letter-spacing: 0.02em;
  margin-bottom: 18px;
  -webkit-transition: all 0.2s ease-out 0.05s;
  transition: all 0.2s ease-out 0.05s;
}
.release-detail > time {
  display: block;
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 300;
  font-style: italic;
  font-size: 2.2rem;
  letter-spacing: 0.02em;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
.release-detail > .obj {
  position: relative;
  transform: translateY(10px);
  -webkit-transform: translateY(10px);
  opacity: 0;
  filter: alpha(opacity=0);
}
@media screen and (max-width: 850px) {
  .release-detail > .obj {
    top: 0;
    opacity: 1;
    filter: alpha(opacity=100);
    transform: translateY(0px);
    -webkit-transform: translateY(0px);
  }
}
@media screen and (max-width: 850px) {
  .release-detail {
    width: 100%;
    position: relative;
    left: 0;
    top: -5px;
    max-width: 100%;
  }
}
@media screen and (max-width: 486px) {
  .release-detail > .name {
    font-size: 2.7rem;
    line-height: 3.2rem;
    letter-spacing: 0.04em;
    margin-bottom: 21px;
  }
  .release-detail > .type {
    font-size: 1.5rem;
  }
  .release-detail > .title {
    font-size: 1.6rem;
  }
  .release-detail > time {
    font-size: 1.8rem;
  }
}
.release-arrow {
  width: 90px;
  height: 90px;
  position: absolute;
  right: -45px;
  top: 50%;
  margin-top: -145px;
  cursor: pointer;
  opacity: 0;
  filter: alpha(opacity=0);
  transform: translateX(-15px);
  -webkit-transform: translateX(-15px);
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  font-size: 0;
  line-height: 0;
}
.release-arrow::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9db9), to(#ffef37));
  background-image: linear-gradient(to bottom, #fa9db9 0%, #ffef37 100%);
  background-size: contain;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  border-radius: 50%;
  -webkit-border-radius: 50%;
}
.release-arrow svg {
  width: 28px;
  height: 17px;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
}
.release-arrow svg .st0 {
  fill: #fff;
}
@media screen and (max-width: 850px) {
  .release-arrow {
    opacity: 1;
    right: auto;
    top: auto;
    margin-top: 0;
    bottom: -28px;
    left: 116px;
  }
  .release-arrow::before {
    display: none;
  }
  .release-arrow svg .st0 {
    fill: url(#MyGradient2);
  }
}
@media screen and (max-width: 486px) {
  .release-arrow {
    width: 22px;
    height: 13px;
    bottom: 11px;
    left: 130px;
  }
  .release-arrow svg {
    width: 22px;
    height: 13px;
  }
}

/*------------------------------------------------------*/
/*  info */
/*------------------------------------------------------*/
.info {
  text-align: center;
  margin-bottom: 92px;
}
@media screen and (max-width: 850px) {
  .info {
    margin-bottom: 90px;
  }
}
.info-main {
  margin: 0 auto;
}
@media screen and (min-width: 851px) {
  .info-main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    display: -webkit-flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-justify-content: flex-start;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
  }
}
@media screen and (max-width: 850px) {
  .info-main {
    width: 100%;
  }
}
.info-item {
  margin-bottom: 145px;
  width: 50%;
  position: relative;
  text-align: left;
  opacity: 0;
  filter: alpha(opacity=0);
}
@media screen and (max-width: 850px) {
  .info-item {
    width: 100%;
    margin-bottom: 115px;
  }
}
.info-item > a {
  display: block;
  position: relative;
}
.info-item > a > .release-jk {
  max-width: 310px;
  max-height: 310px;
}
@media screen and (min-width: 751px) {
  .info-item > a:hover .info-photo__arrow {
    opacity: 1;
    filter: alpha(opacity=100);
    transform: translateX(0);
    -webkit-transform: translateX(0);
  }
  .info-item > a:hover .info-detail::after {
    width: 100%;
  }
}
.info-item > a > .title {
  padding-left: 51px;
  padding-right: 30px;
  font-size: 1.8rem;
  line-height: 3.8rem;
  position: relative;
  opacity: 0;
  filter: alpha(opacity=0);
  transform: translateY(10px);
  -webkit-transform: translateY(10px);
  -webkit-transition: all 0.2s ease-out 0.1s;
  transition: all 0.2s ease-out 0.1s;
}
@media screen and (max-width: 1000px) {
  .info-item > a > .title {
    padding-left: 30px;
  }
}
@media screen and (max-width: 850px) {
  .info-item > a > .title {
    padding: 0;
    margin: 0 8vw;
    font-size: 1.6rem;
    line-height: 3.4rem;
  }
}
.info-item.-show > a > .title {
  opacity: 1;
  filter: alpha(opacity=100);
  transform: translateY(0);
  -webkit-transform: translateY(0);
}
.info-item.-show > a .info-detail {
  opacity: 1;
  filter: alpha(opacity=100);
  transform: translateY(0);
  -webkit-transform: translateY(0);
}
.info-photo {
  margin-bottom: 50px;
  height: 340px;
  position: relative;
}
@media screen and (max-width: 850px) {
  .info-photo {
    height: auto;
    margin-bottom: 42px;
    max-height: 300px;
  }
  .info-photo::before {
    content: "";
    display: block;
    padding-top: 56%;
  }
}
.info-photo__bg {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
}
.info-photo__bg > img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 150%;
  height: 150%;
  -o-object-position: center center;
     object-position: center center;
  font-family: "object-fit: cover; object-position: center center;";
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  -webkit-filter: blur(15px);
  -moz-filter: blur(15px);
  -o-filter: blur(15px);
  -ms-filter: blur(15px);
  filter: blur(15px);
}
.info-photo__arrow {
  width: 90px;
  height: 90px;
  position: absolute;
  right: 40px;
  bottom: -45px;
  cursor: pointer;
  opacity: 0;
  filter: alpha(opacity=0);
  transform: translateX(-15px);
  -webkit-transform: translateX(-15px);
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  font-size: 0;
  line-height: 0;
}
.info-photo__arrow::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#50faac), to(#21c3ff));
  background-image: linear-gradient(to bottom, #50faac 0%, #21c3ff 100%);
  background-size: contain;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  border-radius: 50%;
  -webkit-border-radius: 50%;
}
.info-photo__arrow img {
  width: 28px;
  height: 17px;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
}
@media screen and (max-width: 750px) {
  .info-photo__arrow {
    width: 70px;
    height: 70px;
    opacity: 1;
    right: 20px;
    bottom: -35px;
    transform: translateX(0);
    -webkit-transform: translateX(0);
  }
  .info-photo__arrow img {
    width: 22px;
    height: 13px;
  }
}
.info-photo > img {
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
  height: 100%;
  -o-object-position: center center;
     object-position: center center;
  font-family: "object-fit: contain; object-position: center center;";
  position: absolute;
  left: 0;
  top: 0;
}
.info-detail {
  padding-left: 51px;
  position: relative;
  text-align: left;
  margin-bottom: 35px;
  opacity: 0;
  filter: alpha(opacity=0);
  transform: translateY(10px);
  -webkit-transform: translateY(10px);
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  display: inline-block;
}
.info-detail::after {
  content: "";
  width: 0;
  height: 1px;
  position: absolute;
  left: 25px;
  bottom: 14px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  background-image: -webkit-gradient(linear, left top, right top, from(#ffef37), color-stop(33%, #ff4f5b), color-stop(66%, #2165ff), to(#50faac));
  background-image: linear-gradient(to right, #ffef37 0%, #ff4f5b 33%, #2165ff 66%, #50faac 100%);
}
@media screen and (max-width: 1000px) {
  .info-detail {
    padding-left: 30px;
  }
}
.info-detail.jp2::after {
  bottom: 22px;
}
.info-detail > .artist {
  display: block;
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 100;
  font-style: italic;
  font-size: 3.7rem;
  letter-spacing: 0.02em;
  position: relative;
}
.info-detail > .artist.jp2 {
  line-height: 4rem;
  margin-top: -10px;
}
.info-detail > time {
  display: block;
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 100;
  font-style: italic;
  font-size: 3.5rem;
  letter-spacing: 0.04em;
  margin-bottom: 30px;
}
.info-detail > .line {
  display: inline-block;
  margin: 0 15px 0 14px;
  font-size: 0;
  line-height: 0;
  width: 8px;
  position: relative;
  top: 1px;
}
@media screen and (max-width: 850px) {
  .info-detail {
    margin: 0 8vw;
    padding: 0;
    margin-bottom: 36px;
  }
  .info-detail::after {
    left: -5px;
    bottom: 18px;
  }
  .info-detail > .artist {
    font-size: 3.1rem;
    line-height: 3.6rem;
  }
  .info-detail > .artist.jp2 {
    font-size: 2.9rem;
    letter-spacing: -0.06em;
  }
  .info-detail > time {
    font-size: 2.8rem;
    margin-bottom: 24px;
  }
}

/*------------------------------------------------------*/
/*  profile */
/*------------------------------------------------------*/
.profile {
  margin-bottom: 175px;
}
@media screen and (max-width: 850px) {
  .profile {
    margin-bottom: 166px;
  }
}
.profile-item {
  text-align: center;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  height: 180px;
  position: relative;
  opacity: 0;
  filter: alpha(opacity=0);
  overflow: hidden;
  margin-bottom: -1px;
}
@media screen and (min-width: 851px) {
  .profile-item {
    height: 86px;
  }
}
.profile-cover {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #303030;
  opacity: 0;
  filter: alpha(opacity=0);
}
.profile-cover img.profile-cover__img {
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
  height: 100%;
  -o-object-position: center top;
     object-position: center top;
  font-family: "object-fit: contain; object-position: center top;";
  position: relative;
}
@media screen and (min-width: 851px) {
  .profile-cover img.profile-cover__img {
    height: 460px;
  }
}
.profile-cover::after {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  background: #000;
  opacity: 0.8;
  filter: alpha(opacity=80);
}
.profile-box1 {
  display: none;
  width: 100%;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(94px);
  -webkit-transform: translateY(94px);
}
@media screen and (max-width: 750px) {
  .profile-box1 {
    top: 64.2%;
    transform: translateY(0px);
    -webkit-transform: translateY(0px);
  }
}
.profile-box1 > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: -webkit-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  font-size: 0;
  line-height: 0;
}
.profile-box1 > ul > li {
  margin: 0 25px;
  position: relative;
}
@media screen and (max-width: 750px) {
  .profile-box1 > ul > li {
    margin: 0 18px;
  }
}
.profile-box1 > ul > li .profile-social__txt {
  position: absolute;
  left: 50%;
  bottom: -30px;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  font-size: 1.1rem;
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 100;
  font-style: italic;
  letter-spacing: 0.08em;
}
.profile-box1 > ul > li .profile-social__txt > span {
  position: relative;
  opacity: 0;
  filter: alpha(opacity=0);
  transform: translateY(10px);
  -webkit-transform: translateY(10px);
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  font-style: italic;
}
.profile-box1 > ul > li > a {
  display: block;
  position: relative;
}
.profile-box1 > ul > li > a::before {
  content: "";
  width: 60px;
  height: 60px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -30px;
  margin-top: -30px;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#fa9db9), to(#ffef37));
  background-image: linear-gradient(to bottom, #fa9db9 0%, #ffef37 100%);
  background-size: contain;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  transform: scale(0, 0);
  -webkit-transform: scale(0, 0);
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
.profile-box1 > ul > li > a img {
  position: relative;
}
.profile-box1 > ul > li > a:hover::before {
  transform: scale(1, 1);
  -webkit-transform: scale(1, 1);
}
.profile-box1 > ul > li > a:hover .profile-social__txt > span {
  opacity: 1;
  filter: alpha(opacity=100);
  transform: translateY(0);
  -webkit-transform: translateY(0);
}
.profile-box1 > ul > li:hover .profile-social__txt > span {
  opacity: 1;
  filter: alpha(opacity=100);
  transform: translateY(0);
  -webkit-transform: translateY(0);
}
.profile-box1 > ul > li.official img {
  width: 31px;
  height: 31px;
}
@media screen and (max-width: 750px) {
  .profile-box1 > ul > li.official img {
    width: 22px;
    height: 22px;
  }
}
.profile-box1 > ul > li.youtube img {
  width: 34px;
  height: 28px;
}
@media screen and (max-width: 750px) {
  .profile-box1 > ul > li.youtube img {
    width: 28px;
    height: 20px;
  }
}
.profile-box1 > ul > li.x img {
  width: 26px;
  height: 27px;
}
@media screen and (max-width: 750px) {
  .profile-box1 > ul > li.x img {
    width: 20px;
    height: 20px;
  }
}
.profile-box1 > ul > li.instagram img {
  width: 30px;
  height: 30px;
}
@media screen and (max-width: 750px) {
  .profile-box1 > ul > li.instagram img {
    width: 21px;
    height: 21px;
  }
}
.profile-box1 > ul > li.facebook img {
  width: 32px;
  height: 32px;
}
@media screen and (max-width: 750px) {
  .profile-box1 > ul > li.facebook img {
    width: 22px;
    height: 22px;
  }
}
.profile-box1 > ul > li.tiktok img {
  width: 28px;
  height: 33px;
}
@media screen and (max-width: 750px) {
  .profile-box1 > ul > li.tiktok img {
    width: 21px;
    height: 24px;
  }
}
.profile-text {
  position: relative;
}
.profile-text::before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  background: #000;
  opacity: 0.8;
  filter: alpha(opacity=80);
}
.profile-text > .inner {
  position: relative;
  text-align: left;
  padding: 120px 5% 100px;
  font-size: 1.8rem;
  line-height: 4.3rem;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  max-width: 1300px;
  margin: 0 auto;
}
.profile-text > .inner div, .profile-text > .inner p {
  text-align: left !important;
}
@media screen and (max-width: 750px) {
  .profile-text > .inner {
    padding: 60px 8vw;
    font-size: 1.6rem;
    line-height: 3.6rem;
  }
}
.profile-text img {
  display: none;
}
.profile-wrap {
  position: relative;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 851px) {
  .profile-wrap {
    max-height: 460px;
  }
}
.profile-wrap {
  padding: 65px 0;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
.profile-wrap > .name {
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 100;
  font-style: italic;
  font-size: 5rem;
  letter-spacing: 0.04em;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  white-space: nowrap;
}
.profile-wrap > .name.jp {
  font-size: 4.7rem;
  letter-spacing: 0.02rem;
}
@media screen and (max-width: 750px) {
  .profile-wrap > .name {
    font-size: 3.2rem;
    top: 29.6%;
    transform: translateY(0) translateX(-50%);
    -webkit-transform: translateY(0) translateX(-50%);
  }
  .profile-wrap > .name.jp {
    font-size: 3.1rem;
  }
}
.profile-wrap > .btn {
  width: 90px;
  height: 90px;
  position: absolute;
  right: 40px;
  top: 50%;
  margin-top: -45px;
  cursor: pointer;
  opacity: 0;
  filter: alpha(opacity=0);
  transform: translateX(-15px);
  -webkit-transform: translateX(-15px);
  -webkit-transition: all 0.2s ease-out 0.5s;
  transition: all 0.2s ease-out 0.5s;
}
.profile-wrap > .btn::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#50faac), to(#21c3ff));
  background-image: linear-gradient(to bottom, #50faac 0%, #21c3ff 100%);
  background-size: contain;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  border-radius: 50%;
  -webkit-border-radius: 50%;
}
.profile-wrap > .btn span {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.profile-wrap > .btn span::before {
  content: "";
  display: block;
  width: 25px;
  height: 1px;
  background: #fff;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  transform: translateX(-50%) translateY(-50%) rotate(0deg);
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(0deg);
}
@media screen and (max-width: 486px) {
  .profile-wrap > .btn span::before {
    width: 20px;
  }
}
.profile-wrap > .btn span::after {
  content: "";
  display: block;
  width: 1px;
  height: 25px;
  background: #fff;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  transform: translateX(-50%) translateY(-50%) rotate(0deg);
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(0deg);
}
@media screen and (max-width: 486px) {
  .profile-wrap > .btn span::after {
    height: 20px;
  }
}
.profile-wrap > .btn.-show {
  opacity: 1;
  filter: alpha(opacity=100);
  transform: translateX(0);
  -webkit-transform: translateX(0);
}
@media screen and (min-width: 851px) {
  .profile-wrap > .btn:hover span::before {
    transform: translateX(-50%) translateY(calc(-50% + 5px)) rotate(0deg);
    -webkit-transform: translateX(-50%) translateY(calc(-50% + 5px)) rotate(0deg);
  }
  .profile-wrap > .btn:hover span::after {
    transform: translateX(-50%) translateY(calc(-50% - 5px)) rotate(90deg);
    -webkit-transform: translateX(-50%) translateY(calc(-50% - 5px)) rotate(90deg);
  }
}
.profile-wrap > .btn.-open span::before {
  transform: translateX(-50%) translateY(-50%) rotate(0deg);
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(0deg);
}
.profile-wrap > .btn.-open span::after {
  transform: translateX(-50%) translateY(-50%) rotate(90deg);
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(90deg);
}
@media screen and (min-width: 851px) {
  .profile-wrap > .btn.-open:hover span::before {
    transform: translateX(-50%) translateY(-50%) rotate(45deg);
    -webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  }
  .profile-wrap > .btn.-open:hover span::after {
    transform: translateX(-50%) translateY(-50%) rotate(45deg);
    -webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg);
  }
}
@media screen and (max-width: 486px) {
  .profile-wrap > .btn {
    width: 60px;
    height: 60px;
    top: auto;
    margin-top: 0;
    right: 10px;
    bottom: 10px;
  }
}

/*------------------------------------------------------*/
/*  movie */
/*------------------------------------------------------*/
.movie {
  margin-bottom: 219px;
}
@media screen and (max-width: 850px) {
  .movie {
    margin-bottom: 120px;
  }
}
.movie-wrap {
  max-width: 884px;
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  opacity: 0;
  filter: alpha(opacity=0);
  display: block;
}
.movie-main {
  position: relative;
  padding-bottom: 75px;
}
.movie-main::before {
  content: "";
  width: 100%;
  padding-top: 56.2%;
  display: block;
  position: relative;
}
@media screen and (max-width: 850px) {
  .movie-main {
    padding-bottom: 0;
  }
}
.movie-main > .item {
  width: 100%;
  position: absolute;
  left: 100%;
  top: 0;
}
.movie-main > .item.-current {
  left: 0;
}
.movie-main > .item > .thumbnail {
  overflow: hidden;
  position: relative;
  margin-bottom: 38px;
  cursor: pointer;
  background: #000;
}
.movie-main > .item > .thumbnail::before {
  content: "";
  width: 100%;
  padding-top: 56.2%;
  display: block;
  position: relative;
}
.movie-main > .item > .thumbnail img {
  width: 100%;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  opacity: 1;
  filter: alpha(opacity=100);
}
.movie-main > .item > .thumbnail > .arrow {
  width: 74px;
  height: 74px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -37px;
  margin-top: -37px;
  overflow: hidden;
}
.movie-main > .item > .thumbnail > .arrow img {
  position: relative;
  left: 0;
  top: 0;
  transform: translateY(0);
  -webkit-transform: translateY(0);
  cursor: pointer;
}
.movie-main > .item > .thumbnail > .arrow::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../image/movie/icon_bg.png) no-repeat 0 0;
  background-size: contain;
  -webkit-background-size: contain;
}
.movie-main > .item > .thumbnail:hover img {
  opacity: 0.8;
  filter: alpha(opacity=80);
}
.movie-main > .item > .thumbnail:hover > .arrow img {
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-animation: btn-hover1 0.3s ease-out forwards 0s;
  animation: btn-hover1 0.3s ease-out forwards 0s;
}
.movie-main > .item > .title {
  text-align: center;
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 100;
  font-style: italic;
  font-size: 1.9rem;
}
.movie-main > .item > .title > span {
  display: inline-block;
  margin: 0 21px 0 20px;
  font-size: 0;
  line-height: 0;
  width: 8px;
  position: relative;
  top: 1px;
}
.movie-player {
  position: relative;
  max-width: 884px;
  margin: 0 auto;
  display: none;
}
.movie-player__block {
  margin-bottom: 38px;
  position: relative;
}
.movie-player__block::before {
  content: "";
  width: 100%;
  padding-top: 56.2%;
  display: block;
  position: relative;
}
.movie-player__block > .player-wrap {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.movie-player__block > .cover {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #000;
}
.movie-player > .title {
  text-align: center;
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 100;
  font-style: italic;
  font-size: 1.9rem;
}
.movie-player > .title > span {
  display: inline-block;
  margin: 0 5px 0 4px;
  font-size: 0;
  line-height: 0;
  width: 8px;
  position: relative;
  top: 1px;
}
.movie-pager {
  width: 8px;
  position: absolute;
  right: 55px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}
@media screen and (min-width: 1201px) {
  .movie-pager > li {
    width: 8px;
    height: 8px;
    border-radius: 50% 50%;
    -moz-border-radius: 50% 50%;
    -webkit-border-radius: 50% 50%;
    -o-border-radius: 50% 50%;
    -ms-border-radius: 50% 50%;
    background: #a2a2a2;
    margin: 16px 0;
    -webkit-transition: all 0.2s ease-out 0s;
    transition: all 0.2s ease-out 0s;
    transform: scale(1, 1);
    -webkit-transform: scale(1, 1);
    cursor: pointer;
  }
  .movie-pager > li:hover {
    background: #000;
  }
  .movie-pager > li.-current {
    transform: scale(1.3, 1.3);
    -webkit-transform: scale(1.3, 1.3);
    background: #fff;
    cursor: default;
  }
  .movie-pager > li.-current:hover {
    background: #fff;
  }
}
@media screen and (max-width: 1200px) {
  .movie-pager {
    width: 100%;
    text-align: center;
    letter-spacing: -0.4em;
    left: 0;
    top: 100%;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    right: 0;
  }
  .movie-pager > li {
    width: 20px;
    height: 20px;
    position: relative;
    display: inline-block;
    letter-spacing: normal;
    margin: 0 4px;
  }
  .movie-pager > li::before {
    content: "";
    width: 8px;
    height: 8px;
    display: block;
    border-radius: 50% 50%;
    -moz-border-radius: 50% 50%;
    -webkit-border-radius: 50% 50%;
    -o-border-radius: 50% 50%;
    -ms-border-radius: 50% 50%;
    background: #a2a2a2;
    margin: 16px 0;
    -webkit-transition: all 0.2s ease-out 0s;
    transition: all 0.2s ease-out 0s;
    transform: scale(1, 1);
    -webkit-transform: scale(1, 1);
  }
  .movie-pager > li.-current::before {
    transform: scale(1.3, 1.3);
    -webkit-transform: scale(1.3, 1.3);
    background: #fff;
  }
}

.sp-slide {
  width: 100%;
}
.sp-slide > .thumbnail {
  overflow: hidden;
  position: relative;
  margin-bottom: 23px;
  cursor: pointer;
  background: #000;
}
.sp-slide > .thumbnail::before {
  content: "";
  width: 100%;
  padding-top: 56.2%;
  display: block;
  position: relative;
}
.sp-slide > .thumbnail img {
  width: 100%;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  opacity: 1;
  filter: alpha(opacity=100);
}
.sp-slide > .thumbnail > .arrow {
  width: 74px;
  height: 74px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -37px;
  margin-top: -37px;
  overflow: hidden;
}
.sp-slide > .thumbnail > .arrow img {
  position: relative;
  left: 0;
  top: 0;
  transform: translateY(0);
  -webkit-transform: translateY(0);
  cursor: pointer;
}
.sp-slide > .thumbnail > .arrow::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../image/movie/icon_bg.png) no-repeat 0 0;
  background-size: contain;
  -webkit-background-size: contain;
}
.sp-slide > .thumbnail:hover img {
  opacity: 0.8;
  filter: alpha(opacity=80);
}
.sp-slide > .thumbnail:hover > .arrow img {
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-animation: btn-hover1 0.3s ease-out forwards 0s;
  animation: btn-hover1 0.3s ease-out forwards 0s;
}
.sp-slide > .title {
  text-align: center;
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 100;
  font-style: italic;
  font-size: 1.9rem;
}
.sp-slide > .title > span {
  display: inline-block;
  margin: 0 21px 0 20px;
  font-size: 0;
  line-height: 0;
  width: 8px;
  position: relative;
  top: 1px;
}

.sp-buttons {
  width: 100%;
  text-align: center;
  letter-spacing: -0.4em;
  left: 0;
  bottom: 0;
  transform: translateY(0);
  -webkit-transform: translateY(0);
  right: 0;
}
.sp-buttons > .sp-button {
  width: 20px;
  height: 20px;
  position: relative;
  display: inline-block;
  letter-spacing: normal;
  margin: 0 4px;
  border: none;
}
.sp-buttons > .sp-button::before {
  content: "";
  width: 8px;
  height: 8px;
  display: block;
  border-radius: 50% 50%;
  -moz-border-radius: 50% 50%;
  -webkit-border-radius: 50% 50%;
  -o-border-radius: 50% 50%;
  -ms-border-radius: 50% 50%;
  background: #a2a2a2;
  margin: 16px 0;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  transform: scale(1, 1);
  -webkit-transform: scale(1, 1);
}
.sp-buttons > .sp-button.sp-selected-button {
  background: transparent;
}
.sp-buttons > .sp-button.sp-selected-button::before {
  transform: scale(1.3, 1.3);
  -webkit-transform: scale(1.3, 1.3);
  background: #fff;
}

@-webkit-keyframes btn-hover1 {
  0% {
    left: 0;
  }
  50% {
    left: 100%;
  }
  54% {
    left: -100%;
  }
  100% {
    left: 0;
  }
}
@keyframes btn-hover1 {
  0% {
    left: 0;
  }
  50% {
    left: 100%;
  }
  54% {
    left: -100%;
  }
  100% {
    left: 0;
  }
}
/*------------------------------------------------------*/
/*  audition */
/*------------------------------------------------------*/
.audition {
  text-align: center;
  height: 0;
  overflow: hidden;
  width: 80vw;
  margin: 0 auto;
}
@media screen and (max-width: 850px) {
  .audition {
    width: 84vw;
    margin: 0 auto;
  }
}
.audition-inner {
  position: relative;
}
.audition-lead {
  font-size: 1.8rem;
  line-height: 4.5rem;
  margin-bottom: 151px;
  padding-top: 125px;
}
@media screen and (max-width: 850px) {
  .audition-lead {
    text-align: left;
  }
  .audition-lead .cont-pc {
    display: none;
  }
}
@media screen and (max-width: 750px) {
  .audition-lead {
    font-size: 1.6rem;
    line-height: 3.6rem;
    text-align: left;
  }
  .audition-lead .cont-pc {
    display: none;
  }
}
.audition-title {
  text-align: center;
  font-size: 1.8rem;
  line-height: 54px;
  margin-bottom: 57px;
  letter-spacing: 0.06em;
  padding-left: 40px;
}
.audition-title > span {
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 300;
  font-style: italic;
  font-size: 5rem;
  letter-spacing: 0.14em;
  margin-right: 50px;
  position: relative;
  top: 10px;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-color: #50faac;
  background-image: -webkit-gradient(linear, left top, right top, from(#21c3ff), to(#50faac));
  background-image: linear-gradient(to right, #21c3ff 0%, #50faac 100%);
}
@media screen and (max-width: 850px) {
  .audition-title {
    padding-left: 0;
  }
}
@media screen and (max-width: 750px) {
  .audition-title {
    font-size: 1.7rem;
    margin-bottom: 38px;
  }
  .audition-title > span {
    font-size: 3.9rem;
    top: 3px;
    margin-right: 0;
    display: block;
    letter-spacing: 0.1em;
  }
}
.audition-outline {
  margin-bottom: 155px;
}
.audition-outline .audition-title {
  margin-bottom: 100px;
}
@media screen and (max-width: 750px) {
  .audition-outline .audition-title {
    margin-bottom: 51px;
  }
}
.audition-outline > .inner {
  margin: 0 auto;
  text-align: left;
}
.audition-outline > .inner > .block:first-of-type {
  margin-bottom: 112px;
}
@media screen and (max-width: 750px) {
  .audition-outline > .inner > .block:first-of-type {
    margin-bottom: 94px;
  }
}
.audition-outline > .inner > .block > h3 {
  font-size: 2.6rem;
  margin-bottom: 70px;
  letter-spacing: 0.1em;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .audition-outline > .inner > .block > h3 {
    padding-left: 0;
    font-size: 2.1rem;
    line-height: 4rem;
    margin-bottom: 56px;
  }
}
.audition-outline > .inner > .block > .text {
  max-width: 650px;
  margin: 0 auto;
}
@media screen and (max-width: 850px) {
  .audition-outline > .inner > .block > .text {
    padding-left: 0;
  }
}
.audition-outline > .inner > .block > .text > p {
  font-size: 1.6rem;
  margin-bottom: 25px;
}
.audition-outline > .inner > .block > .text > ul {
  margin-left: 30px;
}
.audition-outline > .inner > .block > .text > ul > li {
  font-size: 1.7rem;
  padding-left: 50px;
  margin-bottom: 16px;
  letter-spacing: 0.1em;
  position: relative;
}
.audition-outline > .inner > .block > .text > ul > li::before {
  width: 8px;
  height: 8px;
  content: "";
  background: #50faac;
  background: linear-gradient(45deg, #21c3ff 0%, #50faac 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#21c3ff', endColorstr='#50faac',GradientType=1 );
  border-radius: 50% 50%;
  -moz-border-radius: 50% 50%;
  -webkit-border-radius: 50% 50%;
  -o-border-radius: 50% 50%;
  -ms-border-radius: 50% 50%;
  position: absolute;
  left: 16px;
  top: 8px;
}
@media screen and (max-width: 750px) {
  .audition-outline > .inner > .block > .text > p {
    font-size: 1.4rem;
  }
  .audition-outline > .inner > .block > .text > ul {
    margin-left: 0;
  }
  .audition-outline > .inner > .block > .text > ul > li {
    font-size: 1.6rem;
    line-height: 2.7rem;
    margin-bottom: 17px;
    padding-left: 26px;
  }
  .audition-outline > .inner > .block > .text > ul > li::before {
    left: 0;
    top: 9px;
  }
}
.audition-outline > .note {
  text-align: center;
  font-size: 1.5rem;
  margin-top: 88px;
  padding-left: 45px;
}
@media screen and (max-width: 850px) {
  .audition-outline > .note {
    padding-left: 0;
  }
}
.audition-outline > .note span {
  color: #50faac;
}
@media screen and (max-width: 750px) {
  .audition-outline > .note {
    font-size: 1.4rem;
  }
}
.audition-term {
  margin-bottom: 145px;
}
.audition-term > p {
  text-align: center;
  font-size: 1.7rem;
  line-height: 4.3rem;
  padding-left: 45px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 850px) {
  .audition-term > p {
    padding-left: 0;
  }
}
@media screen and (max-width: 750px) {
  .audition-term > p {
    text-align: left;
    font-size: 1.6rem;
    line-height: 3.6rem;
  }
}
.audition-apply {
  margin-bottom: 165px;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .audition-apply {
    margin-bottom: 156px;
  }
}
.audition-apply > p {
  text-align: center;
  font-size: 1.7rem;
  line-height: 4.3rem;
  padding-left: 45px;
  margin-bottom: 184px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 850px) {
  .audition-apply > p {
    padding-left: 0;
  }
}
@media screen and (max-width: 750px) {
  .audition-apply > p {
    text-align: left;
    font-size: 1.6rem;
    line-height: 3.6rem;
  }
}
.audition-apply a {
  display: inline-block;
  position: relative;
  font-size: 2rem;
  color: #fff;
  margin: 0 auto;
  transform: translateX(21px);
  -webkit-transform: translateX(21px);
}
@media screen and (max-width: 850px) {
  .audition-apply a {
    transform: translateX(0);
    -webkit-transform: translateX(0);
  }
}
.audition-apply a > .txt1 {
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 100;
  font-style: italic;
  font-size: 6rem;
  letter-spacing: 0.04em;
  margin-bottom: 30px;
}
.audition-apply a > .txt2 {
  font-size: 1.8rem;
  margin-bottom: 33px;
}
.audition-apply a > .icon {
  width: 120px;
  height: 120px;
  position: relative;
  margin: 0 auto;
  cursor: pointer;
  overflow: hidden;
}
.audition-apply a > .icon::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#50faac), to(#21c3ff));
  background-image: linear-gradient(to bottom, #50faac 0%, #21c3ff 100%);
  background-size: contain;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  border-radius: 50%;
  -webkit-border-radius: 50%;
}
.audition-apply a > .icon > .arrow {
  width: 100%;
  height: 100%;
  position: relative;
}
.audition-apply a > .icon > .arrow img {
  width: 28px;
  height: 17px;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%) scale(1, -1);
          transform: translateX(-50%) translateY(-50%) scale(1, -1);
}
@media screen and (min-width: 751px) {
  .audition-apply a:hover > .icon > .arrow {
    -webkit-animation: btn-hover1 0.5s ease-out forwards 0s;
    animation: btn-hover1 0.5s ease-out forwards 0s;
  }
}
@media screen and (max-width: 750px) {
  .audition-apply a > .txt1 {
    font-size: 4.8rem;
    margin-bottom: 26px;
  }
  .audition-apply a > .txt2 {
    font-size: 1.7rem;
    margin-bottom: 33px;
  }
  .audition-apply a > .icon {
    width: 90px;
    height: 90px;
  }
  .audition-apply a > .icon > .arrow img {
    width: 22px;
    height: 13px;
  }
}
.audition-judge {
  margin-bottom: 145px;
}
@media screen and (max-width: 750px) {
  .audition-judge {
    margin-bottom: 154px;
  }
}
.audition-judge > p {
  text-align: center;
  font-size: 1.7rem;
  line-height: 4.3rem;
  padding-left: 45px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 850px) {
  .audition-judge > p {
    padding-left: 0;
  }
}
@media screen and (max-width: 750px) {
  .audition-judge > p {
    text-align: left;
    font-size: 1.6rem;
    line-height: 3.6rem;
  }
}
.audition-notice {
  margin-bottom: 100px;
}
.audition-notice > ul {
  max-width: 730px;
  margin: 0 auto;
  text-align: left;
  padding-top: 6px;
}
.audition-notice > ul > li {
  font-size: 1.7rem;
  line-height: 3.1rem;
  padding-left: 50px;
  margin-bottom: 11px;
  letter-spacing: 0.1em;
}
.audition-notice > ul > li > span {
  font-size: 1.5rem;
}
.audition-notice > ul > li {
  position: relative;
}
.audition-notice > ul > li::before {
  width: 8px;
  height: 8px;
  content: "";
  background: #50faac;
  background: linear-gradient(45deg, #21c3ff 0%, #50faac 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#21c3ff', endColorstr='#50faac',GradientType=1 );
  border-radius: 50% 50%;
  -moz-border-radius: 50% 50%;
  -webkit-border-radius: 50% 50%;
  -o-border-radius: 50% 50%;
  -ms-border-radius: 50% 50%;
  position: absolute;
  left: 16px;
  top: 8px;
}
.audition-notice > ul > li > a {
  color: #4beeb4;
  text-decoration: underline;
}
@media screen and (max-width: 750px) {
  .audition-notice > ul {
    margin-left: 0;
  }
  .audition-notice > ul > li {
    font-size: 1.6rem;
    line-height: 2.7rem;
    margin-bottom: 17px;
    padding-left: 26px;
  }
  .audition-notice > ul > li > span {
    font-size: 1.4rem;
  }
  .audition-notice > ul > li::before {
    left: 0;
    top: 9px;
  }
}
.audition-contact {
  margin-bottom: 100px;
}
.audition-contact > p {
  text-align: center;
  font-size: 1.4rem;
  line-height: 2.8rem;
}
.audition-contact > p a {
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 100;
  font-style: italic;
  color: #ff4f5b;
  text-decoration: underline;
}

/*------------------------------------------------------*/
/*  contact */
/*------------------------------------------------------*/
.contact {
  text-align: center;
  margin-bottom: 290px;
}
@media screen and (max-width: 750px) {
  .contact {
    margin-bottom: 195px;
  }
}
.contact-main {
  position: relative;
  opacity: 0;
  filter: alpha(opacity=0);
}
.contact-main > h3 {
  font-size: 2rem;
  margin-bottom: 59px;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 750px) {
  .contact-main > h3 {
    font-size: 1.5rem;
    line-height: 2.9rem;
    margin-bottom: 33px;
  }
}
.contact-main > .lead {
  font-size: 3.8rem;
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 100;
  font-style: italic;
  margin-bottom: 37px;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 850px) {
  .contact-main > .lead {
    position: relative;
    margin-bottom: 21px;
  }
  .contact-main > .lead::after {
    content: "";
    width: 20px;
    height: 15px;
    display: block;
    margin: 36px auto 0 auto;
    background: url(../image/contactus/icon.png) no-repeat 0 0;
    background-size: contain;
    -webkit-background-size: contain;
  }
}
@media screen and (max-width: 750px) {
  .contact-main > .lead {
    font-size: 2.7rem;
    line-height: 3.7rem;
  }
}
.contact-main a {
  display: inline-block;
  margin: 0 auto;
  position: relative;
  font-family: "Roboto", "Noto Sans JP", "メイリオ", Maryo;
  font-weight: 300;
  font-style: italic;
  font-size: 2.4rem;
  letter-spacing: 0.08em;
  padding-left: 40px;
}
.contact-main a span.default {
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  font-style: italic;
}
.contact-main a span.txt-gradation {
  font-style: italic;
  position: absolute;
  left: 40px;
  top: 0;
  width: 0;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  text-align: left;
}
.contact-main a::before {
  content: "";
  width: 20px;
  height: 15px;
  position: absolute;
  left: -10px;
  top: 8px;
  background: url(../image/contactus/icon.png) no-repeat 0 0;
  background-size: contain;
  -webkit-background-size: contain;
}
.contact-main a::after {
  content: "";
  width: calc(100% - 40px);
  height: 1px;
  background: #fff;
  position: absolute;
  right: 0;
  bottom: -3px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
@media screen and (min-width: 851px) {
  .contact-main a:hover::after {
    background-image: -webkit-gradient(linear, left top, right top, from(#ffef37), color-stop(33%, #ff4f5b), color-stop(66%, #2165ff), to(#50faac));
    background-image: linear-gradient(to right, #ffef37 0%, #ff4f5b 33%, #2165ff 66%, #50faac 100%);
  }
  .contact-main a:hover span.default {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  .contact-main a:hover span.txt-gradation {
    width: 100%;
  }
}
@media screen and (max-width: 850px) {
  .contact-main a {
    padding-left: 0;
    font-size: 1.8rem;
  }
  .contact-main a::before {
    display: none;
  }
  .contact-main a span.default {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  .contact-main a span.txt-gradation {
    width: 100%;
    left: 0;
  }
  .contact-main a::after {
    width: 100%;
    background-image: -webkit-gradient(linear, left top, right top, from(#ffef37), color-stop(33%, #ff4f5b), color-stop(66%, #2165ff), to(#50faac));
    background-image: linear-gradient(to right, #ffef37 0%, #ff4f5b 33%, #2165ff 66%, #50faac 100%);
  }
}

.txt-gradation {
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-color: #F07575; /* fallback color if gradients are not supported */
  background-image: -webkit-gradient(linear, left top, right top, from(#ffef37), color-stop(33%, #ff4f5b), color-stop(66%, #2165ff), to(#50faac));
  background-image: linear-gradient(to right, #ffef37 0%, #ff4f5b 33%, #2165ff 66%, #50faac 100%);
}

.no-backgroundcliptext .txt-gradation {
  background-image: none;
  background-color: #fff;
  color: #F07575;
}

@-webkit-keyframes btn-hover2 {
  0% {
    top: 0;
  }
  50% {
    top: -100%;
  }
  54% {
    top: 100%;
  }
  100% {
    top: 0;
  }
}
@keyframes btn-hover2 {
  0% {
    top: 0;
  }
  50% {
    top: -100%;
  }
  54% {
    top: 100%;
  }
  100% {
    top: 0;
  }
}
@-webkit-keyframes btn-hover3 {
  0% {
    top: 0;
  }
  50% {
    top: 100%;
  }
  54% {
    top: -100%;
  }
  100% {
    top: 0;
  }
}
@keyframes btn-hover3 {
  0% {
    top: 0;
  }
  50% {
    top: 100%;
  }
  54% {
    top: -100%;
  }
  100% {
    top: 0;
  }
}
/*------------------------------------------------------*/
/*  static */
/*------------------------------------------------------*/
.-left {
  text-align: left;
}

.-center {
  text-align: center;
}

.-right {
  text-align: right;
}

h1 {
  font-size: 3rem;
}

h2 {
  font-size: 2.4rem;
}

h3 {
  font-size: 1.8rem;
}

h4 {
  font-size: 1.4rem;
}

h5 {
  font-size: 1.2rem;
}

h6 {
  font-size: 1rem;
}

.section-block {
  width: 86.6%;
  max-width: 1120px;
  margin: 0 auto;
}

.-mw1000 {
  max-width: 1000px;
}
.-mw950 {
  max-width: 950px;
}
.-mw900 {
  max-width: 900px;
}
.-mw850 {
  max-width: 850px;
}
.-mw800 {
  max-width: 800px;
}
.-mw750 {
  max-width: 750px;
}
.-mw700 {
  max-width: 700px;
}

.font10 {
  font-size: 1rem;
  line-height: 1.6rem;
}

.font12 {
  font-size: 1.2rem;
  line-height: 1.8rem;
}

.font14 {
  font-size: 1.4rem;
  line-height: 2rem;
}

.font16 {
  font-size: 1.6rem;
  line-height: 2.2rem;
}

.font18 {
  font-size: 1.8rem;
  line-height: 2.4rem;
}

.fw100 {
  font-weight: 100;
}
.fw200 {
  font-weight: 200;
}
.fw300 {
  font-weight: 300;
}
.fw400 {
  font-weight: 400;
}
.fw500 {
  font-weight: 500;
}
.fw600 {
  font-weight: 600;
}
.fw700 {
  font-weight: 700;
}
.fw800 {
  font-weight: 800;
}
.fw900 {
  font-weight: 900;
}

.fontp {
  font-family: "Poppins", "メイリオ", Maryo;
  font-weight: 500;
}

.font-blue {
  color: #035b90;
}
.font-gray {
  color: #2d2d2d;
}

.mb5 {
  margin-bottom: 5px;
}
.mb10 {
  margin-bottom: 10px;
}
.mb15 {
  margin-bottom: 15px;
}
.mb20 {
  margin-bottom: 20px;
}
.mb25 {
  margin-bottom: 25px;
}
.mb30 {
  margin-bottom: 30px;
}
.mb35 {
  margin-bottom: 35px;
}
.mb40 {
  margin-bottom: 40px;
}
.mb45 {
  margin-bottom: 45px;
}
.mb50 {
  margin-bottom: 50px;
}
.mb55 {
  margin-bottom: 55px;
}
.mb60 {
  margin-bottom: 60px;
}
.mb65 {
  margin-bottom: 65px;
}
.mb70 {
  margin-bottom: 70px;
}
.mb75 {
  margin-bottom: 75px;
}
.mb80 {
  margin-bottom: 80px;
}
.mb85 {
  margin-bottom: 85px;
}
.mb90 {
  margin-bottom: 90px;
}
.mb95 {
  margin-bottom: 95px;
}

.mt5 {
  margin-top: 5px;
}
.mt10 {
  margin-top: 10px;
}
.mt15 {
  margin-top: 15px;
}
.mt20 {
  margin-top: 20px;
}
.mt25 {
  margin-top: 25px;
}
.mt30 {
  margin-top: 30px;
}
.mt35 {
  margin-top: 35px;
}
.mt40 {
  margin-top: 40px;
}
.mt45 {
  margin-top: 45px;
}
.mt50 {
  margin-top: 50px;
}
.mt55 {
  margin-top: 55px;
}
.mt60 {
  margin-top: 60px;
}
.mt65 {
  margin-top: 65px;
}
.mt70 {
  margin-top: 70px;
}
.mt75 {
  margin-top: 75px;
}
.mt80 {
  margin-top: 80px;
}
.mt85 {
  margin-top: 85px;
}
.mt90 {
  margin-top: 90px;
}
.mt95 {
  margin-top: 95px;
}

.ml5 {
  margin-left: 5px;
}
.ml10 {
  margin-left: 10px;
}
.ml15 {
  margin-left: 15px;
}
.ml20 {
  margin-left: 20px;
}
.ml25 {
  margin-left: 25px;
}
.ml30 {
  margin-left: 30px;
}
.ml35 {
  margin-left: 35px;
}
.ml40 {
  margin-left: 40px;
}
.ml45 {
  margin-left: 45px;
}
.ml50 {
  margin-left: 50px;
}
.ml55 {
  margin-left: 55px;
}
.ml60 {
  margin-left: 60px;
}
.ml65 {
  margin-left: 65px;
}
.ml70 {
  margin-left: 70px;
}
.ml75 {
  margin-left: 75px;
}
.ml80 {
  margin-left: 80px;
}
.ml85 {
  margin-left: 85px;
}
.ml90 {
  margin-left: 90px;
}
.ml95 {
  margin-left: 95px;
}

.mr5 {
  margin-right: 5px;
}
.mr10 {
  margin-right: 10px;
}
.mr15 {
  margin-right: 15px;
}
.mr20 {
  margin-right: 20px;
}
.mr25 {
  margin-right: 25px;
}
.mr30 {
  margin-right: 30px;
}
.mr35 {
  margin-right: 35px;
}
.mr40 {
  margin-right: 40px;
}
.mr45 {
  margin-right: 45px;
}
.mr50 {
  margin-right: 50px;
}
.mr55 {
  margin-right: 55px;
}
.mr60 {
  margin-right: 60px;
}
.mr65 {
  margin-right: 65px;
}
.mr70 {
  margin-right: 70px;
}
.mr75 {
  margin-right: 75px;
}
.mr80 {
  margin-right: 80px;
}
.mr85 {
  margin-right: 85px;
}
.mr90 {
  margin-right: 90px;
}
.mr95 {
  margin-right: 95px;
}

.pt0 {
  padding-top: 0 !important;
}

.pd10 {
  padding: 10px;
}

.-w10p {
  width: 10%;
}
.-w15p {
  width: 15%;
}
.-w20p {
  width: 20%;
}
.-w25p {
  width: 25%;
}
.-w30p {
  width: 30%;
}
.-w35p {
  width: 35%;
}
.-w40p {
  width: 40%;
}
.-w45p {
  width: 45%;
}
.-w50p {
  width: 50%;
}
.-w55p {
  width: 55%;
}
.-w60p {
  width: 60%;
}
.-w65p {
  width: 65%;
}
.-w70p {
  width: 70%;
}
.-w75p {
  width: 75%;
}
.-w80p {
  width: 80%;
}
.-w85p {
  width: 85%;
}
.-w90p {
  width: 90%;
}
.-w95p {
  width: 95%;
}