@charset "UTF-8";
/*==============================
-Import Files
===============================*/
/*==============================
-Import Project Scss Files
===============================*/
/* http://meyerweb.com/eric/tools/css/reset/
v2.0 | 20110126
License: none (public domain)
*/
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;
}

ol,
ul,
li {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

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

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

input,
button,
textarea,
select {
  margin: 0;
  padding: 0;
  border-radius: 0;
  -webkit-appearance: auto;
  -moz-appearance: auto;
  appearance: auto;
}

@font-face {
  font-family: "shingo";
  src: url("../sass/project/font/shingo.eot");
  /* prefixed for IE9 later */
  src: url("../sass/project/font/shingo.eot?#iefix") format("embedded-opentype"), url("../sass/project/font/shingo.woff") format("woff"), url("../sass/project/font/shingo.woff2") format("woff2"), url("../sass/project/font/shingo.otf") format("opentype"), url("../sass/project/font/shingo.ttf") format("truetype");
  /* iOS,Android用 */
  font-weight: normal;
  font-style: normal;
}
/*==============================
 root.scss
===============================*/
/* ======= grid ======= */
/* change your site maxwidth*/
/* change your gutter*/
/* ======= breakpoint ======= */
:root {
  --container-desktop: 1200px;
  --grid-gutter: 10px;
}

/*==============================
-Variable
===============================*/
/* ======= clear ======= */
/* ======= prefix ======= */
/* ======= hoveranimation ======= */
/* ======= font ======= */
/* ===== @mixin ===== */
/* ======= mixin breakpoint ======= */
/* ======= positioncenter ======= */
/* ===== @mixin ===== */
/* ===== @class ===== */
.l-container {
  margin: 0 auto;
  max-width: 1200px;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .l-container {
    max-width: 100%;
    padding: 0;
  }
}

.l-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row;
  flex-flow: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: calc(10px / -2);
  margin-right: calc(10px / -2);
}

.l-full {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row;
  flex-flow: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

[class*=-grid-] {
  position: relative;
  font-size: 1rem;
}

.l-grid-1 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 1) - 10px - 0.1px);
      flex-basis: calc(100% / (12 / 1) - 10px - 0.1px);
  margin: 0 calc(10px / 2);
  max-width: calc(100% / (12 / 1) - 10px);
}

.l-grid-2 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 2) - 10px - 0.1px);
      flex-basis: calc(100% / (12 / 2) - 10px - 0.1px);
  margin: 0 calc(10px / 2);
  max-width: calc(100% / (12 / 2) - 10px);
}

.l-grid-3 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 3) - 10px - 0.1px);
      flex-basis: calc(100% / (12 / 3) - 10px - 0.1px);
  margin: 0 calc(10px / 2);
  max-width: calc(100% / (12 / 3) - 10px);
}

.l-grid-4 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 4) - 10px - 0.1px);
      flex-basis: calc(100% / (12 / 4) - 10px - 0.1px);
  margin: 0 calc(10px / 2);
  max-width: calc(100% / (12 / 4) - 10px);
}

.l-grid-5 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 5) - 10px - 0.1px);
      flex-basis: calc(100% / (12 / 5) - 10px - 0.1px);
  margin: 0 calc(10px / 2);
  max-width: calc(100% / (12 / 5) - 10px);
}

.l-grid-6 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
      flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
  margin: 0 calc(10px / 2);
  max-width: calc(100% / (12 / 6) - 10px);
}

.l-grid-7 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 7) - 10px - 0.1px);
      flex-basis: calc(100% / (12 / 7) - 10px - 0.1px);
  margin: 0 calc(10px / 2);
  max-width: calc(100% / (12 / 7) - 10px);
}

.l-grid-8 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 8) - 10px - 0.1px);
      flex-basis: calc(100% / (12 / 8) - 10px - 0.1px);
  margin: 0 calc(10px / 2);
  max-width: calc(100% / (12 / 8) - 10px);
}

.l-grid-9 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 9) - 10px - 0.1px);
      flex-basis: calc(100% / (12 / 9) - 10px - 0.1px);
  margin: 0 calc(10px / 2);
  max-width: calc(100% / (12 / 9) - 10px);
}

.l-grid-10 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 10) - 10px - 0.1px);
      flex-basis: calc(100% / (12 / 10) - 10px - 0.1px);
  margin: 0 calc(10px / 2);
  max-width: calc(100% / (12 / 10) - 10px);
}

.l-grid-11 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 11) - 10px - 0.1px);
      flex-basis: calc(100% / (12 / 11) - 10px - 0.1px);
  margin: 0 calc(10px / 2);
  max-width: calc(100% / (12 / 11) - 10px);
}

.l-grid-12 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 12) - 10px - 0.1px);
      flex-basis: calc(100% / (12 / 12) - 10px - 0.1px);
  margin: 0 calc(10px / 2);
  max-width: calc(100% / (12 / 12) - 10px);
}

.l-grid-auto {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin: 0 calc(10px / 2);
}

.l-tile-grid-1 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 1) - 0.1px);
      flex-basis: calc(100% / (12 / 1) - 0.1px);
  max-width: calc(100% / (12 / 1));
}

.l-tile-grid-2 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 2) - 0.1px);
      flex-basis: calc(100% / (12 / 2) - 0.1px);
  max-width: calc(100% / (12 / 2));
}

.l-tile-grid-3 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 3) - 0.1px);
      flex-basis: calc(100% / (12 / 3) - 0.1px);
  max-width: calc(100% / (12 / 3));
}

.l-tile-grid-4 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 4) - 0.1px);
      flex-basis: calc(100% / (12 / 4) - 0.1px);
  max-width: calc(100% / (12 / 4));
}

.l-tile-grid-5 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 5) - 0.1px);
      flex-basis: calc(100% / (12 / 5) - 0.1px);
  max-width: calc(100% / (12 / 5));
}

.l-tile-grid-6 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 6) - 0.1px);
      flex-basis: calc(100% / (12 / 6) - 0.1px);
  max-width: calc(100% / (12 / 6));
}

.l-tile-grid-7 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 7) - 0.1px);
      flex-basis: calc(100% / (12 / 7) - 0.1px);
  max-width: calc(100% / (12 / 7));
}

.l-tile-grid-8 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 8) - 0.1px);
      flex-basis: calc(100% / (12 / 8) - 0.1px);
  max-width: calc(100% / (12 / 8));
}

.l-tile-grid-9 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 9) - 0.1px);
      flex-basis: calc(100% / (12 / 9) - 0.1px);
  max-width: calc(100% / (12 / 9));
}

.l-tile-grid-10 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 10) - 0.1px);
      flex-basis: calc(100% / (12 / 10) - 0.1px);
  max-width: calc(100% / (12 / 10));
}

.l-tile-grid-11 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 11) - 0.1px);
      flex-basis: calc(100% / (12 / 11) - 0.1px);
  max-width: calc(100% / (12 / 11));
}

.l-tile-grid-12 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: calc(100% / (12 / 12) - 0.1px);
      flex-basis: calc(100% / (12 / 12) - 0.1px);
  max-width: calc(100% / (12 / 12));
}

.l-tile-grid-auto {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.l-offset-left-1 {
  margin-left: calc(100% / (12 / 1));
}

.l-offset-left-2 {
  margin-left: calc(100% / (12 / 2));
}

.l-offset-left-3 {
  margin-left: calc(100% / (12 / 3));
}

.l-offset-left-4 {
  margin-left: calc(100% / (12 / 4));
}

.l-offset-left-5 {
  margin-left: calc(100% / (12 / 5));
}

.l-offset-left-6 {
  margin-left: calc(100% / (12 / 6));
}

.l-offset-left-7 {
  margin-left: calc(100% / (12 / 7));
}

.l-offset-left-8 {
  margin-left: calc(100% / (12 / 8));
}

.l-offset-left-9 {
  margin-left: calc(100% / (12 / 9));
}

.l-offset-left-10 {
  margin-left: calc(100% / (12 / 10));
}

.l-offset-left-11 {
  margin-left: calc(100% / (12 / 11));
}

.l-offset-left-12 {
  margin-left: calc(100% / (12 / 12));
}

.l-offset-right-1 {
  margin-right: calc(100% / (12 / 1));
}

.l-offset-right-2 {
  margin-right: calc(100% / (12 / 2));
}

.l-offset-right-3 {
  margin-right: calc(100% / (12 / 3));
}

.l-offset-right-4 {
  margin-right: calc(100% / (12 / 4));
}

.l-offset-right-5 {
  margin-right: calc(100% / (12 / 5));
}

.l-offset-right-6 {
  margin-right: calc(100% / (12 / 6));
}

.l-offset-right-7 {
  margin-right: calc(100% / (12 / 7));
}

.l-offset-right-8 {
  margin-right: calc(100% / (12 / 8));
}

.l-offset-right-9 {
  margin-right: calc(100% / (12 / 9));
}

.l-offset-right-10 {
  margin-right: calc(100% / (12 / 10));
}

.l-offset-right-11 {
  margin-right: calc(100% / (12 / 11));
}

.l-offset-right-12 {
  margin-right: calc(100% / (12 / 12));
}

@media screen and (max-width: 767px) {
  [class*=l-offset-left-] {
    margin-left: 0;
  }
}

@media screen and (max-width: 767px) {
  [class*=l-offset-right-] {
    margin-right: 0;
  }
}

@media screen and (max-width: 767px) {
  [class*=l-grid-] {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% - 3vw - 0.1px);
        flex-basis: calc(100% - 3vw - 0.1px);
    max-width: calc(100% - 3vw);
    margin-left: calc(3vw / 2);
    margin-right: calc(3vw / 2);
  }
}

@media screen and (max-width: 767px) {
  [class*=l-tile-grid-] {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .l-grid-sp-1 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 1) - 3vw - 0.1px);
        flex-basis: calc(100% / (12 / 1) - 3vw - 0.1px);
    margin: 0 calc(3vw / 2);
    max-width: calc(100% / (12 / 1) - 3vw);
  }
}

@media screen and (max-width: 767px) {
  .l-grid-sp-2 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 2) - 3vw - 0.1px);
        flex-basis: calc(100% / (12 / 2) - 3vw - 0.1px);
    margin: 0 calc(3vw / 2);
    max-width: calc(100% / (12 / 2) - 3vw);
  }
}

@media screen and (max-width: 767px) {
  .l-grid-sp-3 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 3) - 3vw - 0.1px);
        flex-basis: calc(100% / (12 / 3) - 3vw - 0.1px);
    margin: 0 calc(3vw / 2);
    max-width: calc(100% / (12 / 3) - 3vw);
  }
}

@media screen and (max-width: 767px) {
  .l-grid-sp-4 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 4) - 3vw - 0.1px);
        flex-basis: calc(100% / (12 / 4) - 3vw - 0.1px);
    margin: 0 calc(3vw / 2);
    max-width: calc(100% / (12 / 4) - 3vw);
  }
}

@media screen and (max-width: 767px) {
  .l-grid-sp-5 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 5) - 3vw - 0.1px);
        flex-basis: calc(100% / (12 / 5) - 3vw - 0.1px);
    margin: 0 calc(3vw / 2);
    max-width: calc(100% / (12 / 5) - 3vw);
  }
}

@media screen and (max-width: 767px) {
  .l-grid-sp-6 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 3vw - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 3vw - 0.1px);
    margin: 0 calc(3vw / 2);
    max-width: calc(100% / (12 / 6) - 3vw);
  }
}

@media screen and (max-width: 767px) {
  .l-grid-sp-7 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 7) - 3vw - 0.1px);
        flex-basis: calc(100% / (12 / 7) - 3vw - 0.1px);
    margin: 0 calc(3vw / 2);
    max-width: calc(100% / (12 / 7) - 3vw);
  }
}

@media screen and (max-width: 767px) {
  .l-grid-sp-8 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 8) - 3vw - 0.1px);
        flex-basis: calc(100% / (12 / 8) - 3vw - 0.1px);
    margin: 0 calc(3vw / 2);
    max-width: calc(100% / (12 / 8) - 3vw);
  }
}

@media screen and (max-width: 767px) {
  .l-grid-sp-9 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 9) - 3vw - 0.1px);
        flex-basis: calc(100% / (12 / 9) - 3vw - 0.1px);
    margin: 0 calc(3vw / 2);
    max-width: calc(100% / (12 / 9) - 3vw);
  }
}

@media screen and (max-width: 767px) {
  .l-grid-sp-10 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 10) - 3vw - 0.1px);
        flex-basis: calc(100% / (12 / 10) - 3vw - 0.1px);
    margin: 0 calc(3vw / 2);
    max-width: calc(100% / (12 / 10) - 3vw);
  }
}

@media screen and (max-width: 767px) {
  .l-grid-sp-11 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 11) - 3vw - 0.1px);
        flex-basis: calc(100% / (12 / 11) - 3vw - 0.1px);
    margin: 0 calc(3vw / 2);
    max-width: calc(100% / (12 / 11) - 3vw);
  }
}

@media screen and (max-width: 767px) {
  .l-grid-sp-12 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 12) - 3vw - 0.1px);
        flex-basis: calc(100% / (12 / 12) - 3vw - 0.1px);
    margin: 0 calc(3vw / 2);
    max-width: calc(100% / (12 / 12) - 3vw);
  }
}

@media screen and (max-width: 767px) {
  .l-tile-grid-sp-1 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 1) - 0.1px);
        flex-basis: calc(100% / (12 / 1) - 0.1px);
    max-width: calc(100% / (12 / 1));
  }
}

@media screen and (max-width: 767px) {
  .l-tile-grid-sp-2 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 2) - 0.1px);
        flex-basis: calc(100% / (12 / 2) - 0.1px);
    max-width: calc(100% / (12 / 2));
  }
}

@media screen and (max-width: 767px) {
  .l-tile-grid-sp-3 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 3) - 0.1px);
        flex-basis: calc(100% / (12 / 3) - 0.1px);
    max-width: calc(100% / (12 / 3));
  }
}

@media screen and (max-width: 767px) {
  .l-tile-grid-sp-4 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 4) - 0.1px);
        flex-basis: calc(100% / (12 / 4) - 0.1px);
    max-width: calc(100% / (12 / 4));
  }
}

@media screen and (max-width: 767px) {
  .l-tile-grid-sp-5 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 5) - 0.1px);
        flex-basis: calc(100% / (12 / 5) - 0.1px);
    max-width: calc(100% / (12 / 5));
  }
}

@media screen and (max-width: 767px) {
  .l-tile-grid-sp-6 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 0.1px);
    max-width: calc(100% / (12 / 6));
  }
}

@media screen and (max-width: 767px) {
  .l-tile-grid-sp-7 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 7) - 0.1px);
        flex-basis: calc(100% / (12 / 7) - 0.1px);
    max-width: calc(100% / (12 / 7));
  }
}

@media screen and (max-width: 767px) {
  .l-tile-grid-sp-8 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 8) - 0.1px);
        flex-basis: calc(100% / (12 / 8) - 0.1px);
    max-width: calc(100% / (12 / 8));
  }
}

@media screen and (max-width: 767px) {
  .l-tile-grid-sp-9 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 9) - 0.1px);
        flex-basis: calc(100% / (12 / 9) - 0.1px);
    max-width: calc(100% / (12 / 9));
  }
}

@media screen and (max-width: 767px) {
  .l-tile-grid-sp-10 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 10) - 0.1px);
        flex-basis: calc(100% / (12 / 10) - 0.1px);
    max-width: calc(100% / (12 / 10));
  }
}

@media screen and (max-width: 767px) {
  .l-tile-grid-sp-11 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 11) - 0.1px);
        flex-basis: calc(100% / (12 / 11) - 0.1px);
    max-width: calc(100% / (12 / 11));
  }
}

@media screen and (max-width: 767px) {
  .l-tile-grid-sp-12 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 12) - 0.1px);
        flex-basis: calc(100% / (12 / 12) - 0.1px);
    max-width: calc(100% / (12 / 12));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-left-sp-1 {
    margin-left: calc(100% / (12 / 1));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-left-sp-2 {
    margin-left: calc(100% / (12 / 2));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-left-sp-3 {
    margin-left: calc(100% / (12 / 3));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-left-sp-4 {
    margin-left: calc(100% / (12 / 4));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-left-sp-5 {
    margin-left: calc(100% / (12 / 5));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-left-sp-6 {
    margin-left: calc(100% / (12 / 6));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-left-sp-7 {
    margin-left: calc(100% / (12 / 7));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-left-sp-8 {
    margin-left: calc(100% / (12 / 8));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-left-sp-9 {
    margin-left: calc(100% / (12 / 9));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-left-sp-10 {
    margin-left: calc(100% / (12 / 10));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-left-sp-11 {
    margin-left: calc(100% / (12 / 11));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-left-sp-12 {
    margin-left: calc(100% / (12 / 12));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-right-sp-1 {
    margin-right: calc(100% / (12 / 1));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-right-sp-2 {
    margin-right: calc(100% / (12 / 2));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-right-sp-3 {
    margin-right: calc(100% / (12 / 3));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-right-sp-4 {
    margin-right: calc(100% / (12 / 4));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-right-sp-5 {
    margin-right: calc(100% / (12 / 5));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-right-sp-6 {
    margin-right: calc(100% / (12 / 6));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-right-sp-7 {
    margin-right: calc(100% / (12 / 7));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-right-sp-8 {
    margin-right: calc(100% / (12 / 8));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-right-sp-9 {
    margin-right: calc(100% / (12 / 9));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-right-sp-10 {
    margin-right: calc(100% / (12 / 10));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-right-sp-11 {
    margin-right: calc(100% / (12 / 11));
  }
}

@media screen and (max-width: 767px) {
  .l-offset-right-sp-12 {
    margin-right: calc(100% / (12 / 12));
  }
}

@media screen and (max-width: 767px) {
  .l-grid-sp-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin: 0 calc(3vw / 2);
  }
}

@media screen and (max-width: 767px) {
  .l-tile-grid-sp-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}

/* ==============================
-Global
=============================== */
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

html {
  font-size: 62.5%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  html {
    margin-top: 0 !important;
  }
}

body {
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  color: #333;
  font-size: 1.6rem;
  letter-spacing: 1px;
  height: 100%;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  position: relative;
  top: 0;
  left: 0;
  z-index: 0;
  font-family: "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
}

main {
  position: relative;
  top: 0;
  left: 0;
  z-index: 0;
}

a,
a:hover {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  text-decoration: none;
  outline: none;
}

img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

video {
  max-width: 100%;
}

h1 {
  font-size: 3.6rem;
  font-weight: bold;
}

h2 {
  font-size: 3rem;
  font-weight: bold;
}

h3 {
  font-size: 2.4rem;
  font-weight: bold;
}

h4 {
  font-size: 1.8rem;
  font-weight: bold;
}

h5 {
  font-size: 1.4rem;
  font-weight: bold;
}

h6 {
  font-size: 1.2rem;
  font-weight: bold;
}

p {
  font-size: 1.4rem;
}

a {
  font-size: 1.4rem;
}

.wrapper {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  padding: 6vw 0;
}
@media screen and (max-width: 767px) {
  .wrapper {
    padding: 12vw 6vw;
  }
}

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.lead,
.text {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .lead,
  .text {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}

.bg {
  display: block;
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.center {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  text-align: center;
  margin: 0 auto;
}

.btn {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .btn {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.btn {
  display: inline-block;
  width: auto;
  font-size: clamp(1.4rem, 1vw, 1vw);
  text-align: center;
  color: #ffffff;
  padding: 0.5vw 1.5vw;
  margin: 0 auto;
  background-color: #000000;
  border: 1px solid #000000;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .btn {
    width: 100%;
    padding: 1vw 3vw;
  }
}
.btn:hover {
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  color: #000000;
  background-color: #ffffff;
}

.c-text-break-pc,
.break-pc {
  display: block;
}
@media screen and (max-width: 767px) {
  .c-text-break-pc,
  .break-pc {
    display: inline-block;
  }
}

.c-text-break-sp,
.break-sp {
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .c-text-break-sp,
  .break-sp {
    display: block;
  }
}

.c-text-display-pc,
.display-pc {
  display: block;
}
@media screen and (max-width: 767px) {
  .c-text-display-pc,
  .display-pc {
    display: none;
  }
}

.c-text-display-sp,
.display-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .c-text-display-sp,
  .display-sp {
    display: block;
  }
}

/*==============================
-Component
===============================*/
.c-text-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.c-text-lead, .c-form-important-title, .c-form-important-text {
  display: block;
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .c-text-lead, .c-form-important-title, .c-form-important-text {
    font-size: 1.6rem;
  }
}

.c-text-bg {
  display: block;
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.c-text-bg::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
}

.c-text-center {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0) perspective(0);
          transform: translate3d(-50%, -50%, 0) perspective(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  text-align: center;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .c-text-display-pc {
    display: none;
  }
}

.c-text-display-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .c-text-display-sp {
    display: block;
  }
}

.c-text-break-pc {
  display: block;
}
@media screen and (max-width: 767px) {
  .c-text-break-pc {
    display: inline;
  }
}

.c-text-break-sp {
  display: inline;
}
@media screen and (max-width: 767px) {
  .c-text-break-sp {
    display: block;
  }
}

.c-text-crumbs-area {
  display: block;
  width: 100%;
  margin-bottom: 20px;
}
.c-text-crumbs-area a {
  color: inherit;
}
@media screen and (max-width: 767px) {
  .c-text-crumbs-area {
    margin-bottom: 40px;
  }
}

.c-text-crumbs {
  display: block;
  width: 100%;
}

.c-text-crumbs li {
  display: inline-block;
  font-size: 1.2rem;
  letter-spacing: 2px;
  line-height: 1.1;
  text-align: left;
  margin-left: 2px;
  margin-right: 2px;
}
@media screen and (max-width: 767px) {
  .c-text-crumbs li {
    font-size: 1.4rem;
  }
}

.c-text-crumbs li a {
  display: inline-block;
  font-size: 1.2rem;
  letter-spacing: 2px;
  line-height: 1.1;
  text-align: left;
  text-decoration: underline;
  margin-left: 2px;
  margin-right: 2px;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.c-text-crumbs li a:hover {
  opacity: 0.7;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}
@media screen and (max-width: 767px) {
  .c-text-crumbs li a {
    font-size: 1.2rem;
  }
}

.c-text-btn-area {
  display: block;
  text-align: center;
  padding: 0 0 40px 0;
}
@media screen and (max-width: 767px) {
  .c-text-btn-area {
    padding: 0 0 20px 0;
  }
}

@-webkit-keyframes c-text-btn-item-fadein-before {
  0% {
    background-color: #ffffff;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  100% {
    background-color: #ffffff;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@keyframes c-text-btn-item-fadein-before {
  0% {
    background-color: #ffffff;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  100% {
    background-color: #ffffff;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@-webkit-keyframes c-text-btn-item-fadeout-before {
  0% {
    background-color: #ffffff;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    background-color: #ffffff;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    -webkit-transform: translateX(200%);
            transform: translateX(200%);
  }
}
@keyframes c-text-btn-item-fadeout-before {
  0% {
    background-color: #ffffff;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    background-color: #ffffff;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    -webkit-transform: translateX(200%);
            transform: translateX(200%);
  }
}
.c-text-wrapper {
  position: relative;
  padding: 40px 5vw;
}
@media screen and (max-width: 767px) {
  .c-text-wrapper {
    padding: 40px 20px 20px 20px;
  }
}

.c-wrapper {
  position: relative;
  padding: 40px 2vw;
}
@media screen and (max-width: 767px) {
  .c-wrapper {
    padding: 40px 20px 20px 20px;
  }
}

.c-text-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  font-size: 3.8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.4;
  text-align: center;
  padding: 0;
  margin-bottom: 40px;
  color: #EEDDE0;
  text-shadow: 0 0 30px #EC637B, 0 0 10px rgba(230, 161, 173, 0.41), 0 0 100px #E6A1AD, 0 0 500px #F36780, 5px 9px 5px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 767px) {
  .c-text-title {
    font-size: 4rem;
    margin-bottom: 40px;
    letter-spacing: 0.05em;
  }
}
.c-text-title span {
  display: block;
  position: relative;
  display: block;
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.1;
  text-align: center;
  padding: 0;
  color: #ffffff;
}

.c-text-lead, .c-form-important-title, .c-form-important-text {
  display: block;
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .c-text-lead, .c-form-important-title, .c-form-important-text {
    font-size: 1.6rem;
  }
}

.c-text-event-wrapper {
  position: relative;
  padding: 0 40px;
}
@media screen and (max-width: 767px) {
  .c-text-event-wrapper {
    padding: 0 20px;
  }
}

.c-text-btn-area {
  display: block;
  text-align: center;
  padding: 0 0 40px 0;
}

.c-text-btn-item {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: center;
  color: #ffffff !important;
  padding: 5px;
  margin: 0 auto 15px auto;
  background-color: #000000;
  border: 2px solid #000000;
  z-index: 1;
  overflow: hidden;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
          box-shadow: 1px 0px 10px 1px #01CE97;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 1170px) {
  .c-text-btn-item {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .c-text-btn-item {
    width: 100%;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 2px;
    padding: 5px;
    margin: 0 auto 20px auto;
  }
}
.c-text-btn-item:hover {
  letter-spacing: 3px;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
  -webkit-box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
          box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
}

.c-text-btn {
  display: block;
  width: 100%;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: center;
  color: #ffffff !important;
  text-align: center;
}

.c-text-btn-marquee {
  display: block;
  width: 100%;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: center;
  color: #ffffff !important;
  -webkit-animation: c-text-marquee 5s linear 0s infinite;
          animation: c-text-marquee 5s linear 0s infinite;
  text-align: right;
  text-align: center;
}

@-webkit-keyframes c-text-marquee {
  0% {
    -webkit-transform: translate(10%);
            transform: translate(10%);
  }
  100% {
    -webkit-transform: translate(-110%);
            transform: translate(-110%);
  }
}

@keyframes c-text-marquee {
  0% {
    -webkit-transform: translate(10%);
            transform: translate(10%);
  }
  100% {
    -webkit-transform: translate(-110%);
            transform: translate(-110%);
  }
}
@media screen and (max-width: 767px) {
  .c-text-btn-sp-12 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 12) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 12) - 10px - 0.1px);
    max-width: calc(100% / (12 / 12) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

@media screen and (max-width: 767px) {
  .c-text-btn-sp {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

.c-text-crumbs-area {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: block;
  width: 100%;
  margin-bottom: 80px;
}
.c-text-crumbs-area a {
  color: inherit;
}
@media screen and (max-width: 767px) {
  .c-text-crumbs-area {
    margin-bottom: 40px;
  }
}

.c-text-crumbs {
  display: block;
  width: 100%;
}

.c-text-crumbs li {
  display: inline-block;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.1;
  text-align: left;
  margin-left: 2px;
  margin-right: 2px;
}
@media screen and (max-width: 767px) {
  .c-text-crumbs li {
    font-size: 1.4rem;
  }
}

.c-text-crumbs li a {
  display: inline-block;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.1;
  text-align: left;
  text-decoration: underline;
  margin-left: 2px;
  margin-right: 2px;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.c-text-crumbs li a:hover {
  opacity: 0.7;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}
@media screen and (max-width: 767px) {
  .c-text-crumbs li a {
    font-size: 1.4rem;
  }
}

.c-text-break-sp {
  display: inline;
}
@media screen and (max-width: 767px) {
  .c-text-break-sp {
    display: block;
  }
}

@media screen and (max-width: 767px) {
  .c-text-pc {
    display: none;
  }
}

.c-text-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .c-text-sp {
    display: block;
  }
}

.c-text-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.c-text-bg {
  display: block;
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.c-text-bg::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
}

.c-text-break-pc {
  display: block;
}
@media screen and (max-width: 767px) {
  .c-text-break-pc {
    display: inline;
  }
}

/*==============================
-c-pagination
===============================*/
.c-pagination-wrapper {
  position: relative;
  display: block;
  width: 100%;
  padding: 20px;
  text-align: center;
  margin: 0 auto;
  background-color: rgba(68, 68, 68, 0.8);
}

.c-pagination {
  width: 100%;
  text-align: center;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0;
  margin: 40px auto;
}
@media screen and (max-width: 767px) {
  .c-pagination {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.c-pagination span,
.c-pagination a {
  display: block;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.1;
  margin: 0 1.4px;
  padding: 5px 10px;
  text-decoration: none;
  width: auto;
  color: #01CE97;
  background: #000000;
  border: 1px solid #01CE97;
}
@media screen and (max-width: 767px) {
  .c-pagination span,
  .c-pagination a {
    font-size: 1.2rem;
  }
}

.c-pagination a:hover {
  color: #000000;
  background: #FCF103;
}

.c-pagination .current {
  font-size: 1.4rem;
  background: #5ee0bd;
  color: #000000;
}
.c-pagination-single-wrapper {
  position: relative;
  display: block;
  width: 100%;
  height: auto;
  padding: 40px;
  text-align: center;
  margin: 0 auto;
  background-color: rgba(47, 47, 47, 0.7);
}
@media screen and (max-width: 767px) {
  .c-pagination-single-wrapper {
    padding: 20px 0;
  }
}

.c-pagination-single-box {
  position: relative;
  width: 100%;
  display: block;
  margin: 0 auto;
  padding: 0;
  text-decoration: none;
  width: auto;
  color: #000000;
  z-index: 0;
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .c-pagination-single-box {
    font-size: 3rem;
    padding: 0;
  }
}
.c-pagination-single-box:hover .c-pagination-single-img::before {
  content: "";
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  background-color: rgba(0, 0, 0, 0.3);
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.c-pagination-single-box:hover.c-pagination-single-prev, .c-pagination-single-box:hover.c-pagination-single-next {
  opacity: 0.7;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
.c-pagination-single-box:hover .c-pagination-single-prev {
  -webkit-transition: 0.2s;
  transition: 0.2s;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(0, 0, 0) translate(calc(-50% + 5px), -50%);
          transform: translate3d(0, 0, 0) translate(calc(-50% + 5px), -50%);
}
.c-pagination-single-box:hover .c-pagination-single-next {
  -webkit-transition: 0.2s;
  transition: 0.2s;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(0, 0, 0) translate(calc(-50% - 5px), -50%);
          transform: translate3d(0, 0, 0) translate(calc(-50% - 5px), -50%);
}

.c-pagination-single-djs-box {
  position: relative;
  width: 100%;
  display: block;
  margin: 0 auto;
  padding: 0 10px;
  text-decoration: none;
  width: auto;
  color: #ffffff;
  z-index: 0;
  overflow: hidden;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .c-pagination-single-djs-box {
    padding: 0;
  }
}
.c-pagination-single-djs-box:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  opacity: 0.7;
}

.c-pagination-single-arrow-left {
  content: "";
  display: inline-block;
  border-right: solid 2px #ffffff;
  border-bottom: solid 2px #ffffff;
  margin: 0 auto;
  height: 2rem;
  width: 2rem;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: rotate3d(0, 0, 1, 135deg) perspective(0);
          transform: rotate3d(0, 0, 1, 135deg) perspective(0);
  vertical-align: middle;
}

.c-pagination-single-arrow-right {
  content: "";
  display: inline-block;
  border-right: solid 2px #ffffff;
  border-bottom: solid 2px #ffffff;
  margin: 0 auto;
  height: 2rem;
  width: 2rem;
  -webkit-transform: rotate3d(0, 0, 1, 315deg) perspective(0);
          transform: rotate3d(0, 0, 1, 315deg) perspective(0);
  vertical-align: middle;
}

.c-pagination-single-djs-namearea {
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 10px;
}

.c-pagination-single-djs-arrow-left {
  content: "";
  display: inline-block;
  border-right: solid 2px #ffffff;
  border-bottom: solid 2px #ffffff;
  margin: 0 auto;
  height: 2rem;
  width: 2rem;
  -webkit-transform: rotate3d(0, 0, 1, 135deg) perspective(0);
          transform: rotate3d(0, 0, 1, 135deg) perspective(0);
  vertical-align: middle;
}

.c-pagination-single-djs-arrow-right {
  content: "";
  display: inline-block;
  border-right: solid 2px #ffffff;
  border-bottom: solid 2px #ffffff;
  margin: 0 auto;
  height: 2rem;
  width: 2rem;
  -webkit-transform: rotate3d(0, 0, 1, 315deg) perspective(0);
          transform: rotate3d(0, 0, 1, 315deg) perspective(0);
  vertical-align: middle;
}

@media screen and (max-width: 767px) {
  .c-pagination-single-full {
    margin-left: -15px;
    margin-right: -15px;
  }
}

.c-pagination-single-titlearea {
  width: 88%;
  display: inline-block;
  margin: 0 auto;
  padding: 0;
  color: #ffffff;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .c-pagination-single-titlearea {
    width: 70%;
  }
}

.c-pagination-single-title {
  font-size: 1.4rem;
  text-decoration: none;
  letter-spacing: 0.05em;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .c-pagination-single-title {
    display: none;
  }
}

.c-pagination-single-djs-header {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  font-size: 2rem;
  margin: 0 auto;
  padding: 0;
  letter-spacing: 0.05em;
  color: #ffffff;
}
.c-pagination-single-djs-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  width: 80%;
  font-size: 1.6rem;
  font-weight: bold;
  margin: 0 auto;
  letter-spacing: 0.05em;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .c-pagination-single-djs-title {
    display: none;
  }
}

.c-pagination-single-date,
.c-pagination-single-date span {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .c-pagination-single-date,
  .c-pagination-single-date span {
    font-size: 1.4rem;
  }
}

.c-pagination-single-area {
  display: inline-block;
  position: relative;
  top: 0;
  left: 0;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .c-pagination-single-area {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

.c-pagination-single-area-lefttext {
  display: block;
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  text-align: left;
  line-height: 1.4;
  color: #ffffff;
}

.c-pagination-single-area-righttext {
  display: block;
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  text-align: right;
  line-height: 1.4;
  color: #ffffff;
}

.c-pagination-single-djs-area {
  display: inline-block;
  position: relative;
  top: 0;
  left: 0;
  padding: 30px;
}
@media screen and (max-width: 767px) {
  .c-pagination-single-djs-area {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

.c-pagination-single-djs-img {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  padding-top: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
  -webkit-filter: grayscale(100%);
          filter: grayscale(100%);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.c-pagination-single-djs-img::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.c-pagination-single-left {
  margin: 0;
}

.c-pagination-single-right {
  margin: 0;
}

.c-pagination-single-djs-prev {
  position: relative;
  display: block;
  width: 100%;
  text-align: left;
  z-index: 1;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
@media screen and (max-width: 767px) {
  .c-pagination-single-djs-prev {
    padding: 10px;
  }
}
.c-pagination-single-djs-prev:hover .c-pagination-single-djs-img::before {
  background-color: rgba(0, 0, 0, 0.2);
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.c-pagination-single-djs-next {
  position: relative;
  display: block;
  width: 100%;
  text-align: right;
  z-index: 1;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
@media screen and (max-width: 767px) {
  .c-pagination-single-djs-next {
    padding: 10px;
  }
}
.c-pagination-single-djs-next:hover .c-pagination-single-djs-img::before {
  background-color: rgba(0, 0, 0, 0.2);
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.c-pagination-single-prev {
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0) perspective(0);
          transform: translate3d(-50%, -50%, 0) perspective(0);
  width: 100%;
  text-align: left;
  padding: 20px;
  z-index: 1;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (max-width: 767px) {
  .c-pagination-single-prev {
    padding: 10px;
  }
}

.c-pagination-single-next {
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0) perspective(0);
          transform: translate3d(-50%, -50%, 0) perspective(0);
  width: 100%;
  text-align: right;
  padding: 30px;
  z-index: 1;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (max-width: 767px) {
  .c-pagination-single-next {
    padding: 10px;
  }
}

.c-pagination-single-img {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  padding-top: 56.25%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.c-pagination-single-img::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.7);
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

/*==============================
-Loading
===============================*/
.c-loading-wrapper {
  position: fixed;
  background-color: #000000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  margin: 0 auto;
  text-align: center;
  overflow: hidden;
  -webkit-animation: c-loading-end 1s ease-out 2s both;
  animation: c-loading-end 1s ease-out 2s both;
  z-index: -10;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

@-webkit-keyframes c-loading-end {
  0% {
    -webkit-transform: translate3d(0, 0, 0) scale3d(1, 1, 1) perspective(0);
            transform: translate3d(0, 0, 0) scale3d(1, 1, 1) perspective(0);
    opacity: 1;
    z-index: 99999;
  }
  99% {
    -webkit-transform: translate3d(0, 0, 0) scale3d(3, 2, 1) perspective(0);
            transform: translate3d(0, 0, 0) scale3d(3, 2, 1) perspective(0);
    opacity: 0;
    -webkit-filter: blur(100px);
            filter: blur(100px);
  }
  100% {
    display: none;
    z-index: -99999;
  }
}
@keyframes c-loading-end {
  0% {
    -webkit-transform: translate3d(0, 0, 0) scale3d(1, 1, 1) perspective(0);
            transform: translate3d(0, 0, 0) scale3d(1, 1, 1) perspective(0);
    opacity: 1;
    z-index: 99999;
  }
  99% {
    -webkit-transform: translate3d(0, 0, 0) scale3d(3, 2, 1) perspective(0);
            transform: translate3d(0, 0, 0) scale3d(3, 2, 1) perspective(0);
    opacity: 0;
    -webkit-filter: blur(100px);
            filter: blur(100px);
  }
  100% {
    display: none;
    z-index: -99999;
  }
}
.c-loading-area {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  text-align: center;
  margin: 0 auto;
  top: calc(50% - 30px);
  text-align: center;
}

.c-loading-areapicture {
  width: 300px;
  height: 300px;
}
@media screen and (max-width: 767px) {
  .c-loading-areapicture {
    width: 250px;
    height: 250px;
  }
}

@-webkit-keyframes c-loading-logo {
  0% {
    stroke-dashoffset: 3000;
    fill: transparent;
    stroke: #01CE97;
  }
  30% {
    stroke-dashoffset: 0;
    fill: transparent;
  }
  35% {
    stroke-dashoffset: 3000;
    fill: transparent;
    stroke: #01CE97;
  }
  60% {
    stroke-dashoffset: 0;
    fill: transparent;
  }
  65% {
    stroke-dashoffset: 3000;
    fill: transparent;
    stroke: #01CE97;
  }
  90% {
    stroke-dashoffset: 0;
    fill: transparent;
  }
  95% {
    stroke-dashoffset: 3000;
    fill: transparent;
    stroke: #01CE97;
  }
  100% {
    stroke-dashoffset: 0;
    fill: #01CE97;
    stroke: #01CE97;
  }
}
@keyframes c-loading-logo {
  0% {
    stroke-dashoffset: 3000;
    fill: transparent;
    stroke: #01CE97;
  }
  50% {
    stroke-dashoffset: 0;
    fill: transparent;
    stroke: #01CE97;
  }
  100% {
    stroke-dashoffset: 0;
    fill: #01CE97;
    stroke: #01CE97;
  }
}
.c-loading-line-cyber {
  fill: #01CE97;
  stroke-dasharray: 3000;
  stroke-dashoffset: 3000;
  stroke-width: 2;
  -webkit-transform: translate3d(0, 0, 0) perspective(0);
          transform: translate3d(0, 0, 0) perspective(0);
  -webkit-animation: c-loading-logo 1.8s ease-in 0.1s both;
  animation: c-loading-logo 1.8s ease-in 0.1s both;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

.c-loading-line-cyber-text {
  fill: #01CE97;
  stroke-dasharray: 3000;
  stroke-dashoffset: 3000;
  stroke-width: 2;
  -webkit-transform: translate3d(0, 0, 0) perspective(0);
          transform: translate3d(0, 0, 0) perspective(0);
  -webkit-animation: c-loading-text 1.2s ease-in 1s both;
  animation: c-loading-text 1.2s ease-in 1s both;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

@-webkit-keyframes c-loading-text {
  0% {
    stroke-dashoffset: 3000;
    fill: transparent;
    stroke: #01CE97;
  }
  100% {
    stroke-dashoffset: 0;
    fill: #01CE97;
    stroke: #01CE97;
  }
}

@keyframes c-loading-text {
  0% {
    stroke-dashoffset: 3000;
    fill: transparent;
    stroke: #01CE97;
  }
  100% {
    stroke-dashoffset: 0;
    fill: #01CE97;
    stroke: #01CE97;
  }
}
/*==============================
-Page
===============================*/
.c-form {
  padding: 60px 20px;
}

.c-form-wrapper {
  padding: 20px 0;
  z-index: 0;
}
.c-form-text-area {
  margin-top: 120px;
}

.c-form-text {
  font-size: 1.4rem;
  letter-spacing: 1px;
  line-height: 1.6;
  margin-bottom: 20px;
}

.c-form-important-area {
  display: block;
  padding: 20px 0 40px 0;
}

.c-form-important-title {
  font-size: 2.4rem;
  font-weight: bold;
  color: #000000;
  background-color: #aaa;
  text-align: center;
  padding: 10px 20px;
}

.c-form-important-text {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.85;
  color: #000000;
  text-align: left;
  padding: 20px;
  border: 1px solid #aaa;
}

.c-form-box {
  margin-bottom: 40px;
}

.c-form-required {
  background-color: #c00;
  border-radius: 3px;
  color: #ffffff;
  padding: 2px 5px;
  vertical-align: middle;
  margin-left: 20px;
  font-weight: bold;
  font-size: 1.1rem;
}

.c-form-optional {
  background-color: #ffffff;
  border: 1px solid #444;
  border-radius: 3px;
  color: #444;
  padding: 2px 5px;
  vertical-align: middle;
  margin-left: 20px;
  font-weight: bold;
  font-size: 1.1rem;
}

.c-form-index-formlabel select,
.c-form-index-formlabel select option {
  border: solid 1px #888;
  display: block;
  font-size: 1.6rem;
  line-height: 1.4;
  padding: 10px;
  position: relative;
  width: 100%;
  color: #000000;
}
@media screen and (max-width: 767px) {
  .c-form-index-formlabel select,
  .c-form-index-formlabel select option {
    font-size: 1.6rem;
  }
}

.c-form-select {
  display: block;
  position: relative;
  width: 100%;
  margin-bottom: 20px;
}

.c-form-index-select::before {
  content: "\f0d7";
  display: inline-block;
  position: absolute;
  top: 12px;
  right: 10px;
  font-size: 2rem;
  font-weight: 900;
  font-family: "FontAwesome";
  color: #333;
}

.p-audition-section-content .c-form-index-formarea {
  border: solid 1px red;
  color: #333;
  font-size: 1.6rem;
  padding: 10px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .p-audition-section-content .c-form-index-formarea {
    font-size: 1.6rem;
  }
}
.p-audition-section-content .c-form-index-formarea,
.p-audition-section-content input[type=text],
.p-audition-section-content input[type=number] {
  border: solid 1px #888;
  background: rgba(255, 255, 255, 0.9);
  color: #333;
  font-size: 1.6rem;
  padding: 10px;
  width: 100%;
  margin-bottom: 15px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
@media screen and (max-width: 767px) {
  .p-audition-section-content .c-form-index-formarea,
  .p-audition-section-content input[type=text],
  .p-audition-section-content input[type=number] {
    font-size: 1.6rem;
  }
}
.p-audition-section-content input[type=text]:focus,
.p-audition-section-content .c-form-index-formarea:focus,
.p-audition-section-content select:focus {
  outline: 0;
}

.c-form-index-formattachment {
  color: #333;
  font-size: 1.6rem;
  padding: 10px 0;
  width: auto;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .c-form-index-formattachment {
    font-size: 1.6rem;
  }
}

textarea.c-form-index-formarea {
  font-family: sans-serif;
  border: solid 1px #888;
  color: #333;
  font-size: 1.6rem;
  padding: 10px;
  width: 100%;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  textarea.c-form-index-formarea {
    font-size: 1.6rem;
  }
}

#c-form-submit {
  width: 100%;
}

::-webkit-input-placeholder { /* WebKit, Blink, Edge */
  color: #bbb;
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #bbb;
}

::-moz-placeholder { /* Others */
  color: #bbb;
}

::-ms-input-placeholder { /* Others */
  color: #bbb;
}

::placeholder { /* Others */
  color: #bbb;
}

.c-form-privacy {
  display: block;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: center;
  margin-bottom: 40px;
}

.c-form-privacy-link-area {
  display: block;
  height: 160px;
  overflow-y: scroll;
  text-align: center;
  margin: 10px auto;
  padding: 10px;
  border: 1px solid #888;
  background-color: #ffffff;
}

.c-form-privacy-title {
  display: block;
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: left;
  padding-bottom: 5px;
  margin-bottom: 5px;
  border-bottom: 1px solid #ccc;
  color: #333;
}

.c-form-privacy-descarea {
  display: block;
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: left;
  padding-bottom: 5px;
  margin-bottom: 5px;
  color: #333;
}

.c-form-privacy-link {
  display: inline-block;
  text-align: center;
  margin: 0 auto;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 1.6;
  color: #691212;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  text-decoration: underline;
}
.c-form-privacy-link:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  opacity: 0.7;
}

.c-form-index-lead {
  display: block;
  margin: 0 auto;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 1.6;
  color: #111;
  background-color: #eee;
  padding: 10px;
}

.c-form-att-text {
  font-size: 1.2rem;
  line-height: 1.6;
  padding: 5px;
  background-color: #eee;
  letter-spacing: 0.05em;
  margin-bottom: 10px;
  color: #691212;
}

.c-form-checkarea {
  margin-bottom: 20px;
  padding: 10px 0;
}
.c-form-checkarea input[type=radio] {
  position: absolute;
  opacity: 0;
}
.c-form-checkarea input[type=radio] + .c-form-contact-check {
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  margin-right: 10px;
}
.c-form-checkarea input[type=radio] + .c-form-contact-check:before {
  content: "";
  background: #f4f4f4;
  border-radius: 100%;
  border: 1px solid rgb(180.25, 180.25, 180.25);
  display: inline-block;
  width: 20px;
  height: 20px;
  position: relative;
  top: -0.2em;
  margin-right: 10px;
  margin-bottom: 10px;
  vertical-align: top;
  cursor: pointer;
  text-align: center;
  -webkit-transition: all 250ms ease;
  transition: all 250ms ease;
}
.c-form-checkarea input[type=radio]:checked + .c-form-contact-check:before {
  background-color: #122269;
  -webkit-box-shadow: inset 0 0 0 4px #f4f4f4;
          box-shadow: inset 0 0 0 4px #f4f4f4;
}
.c-form-checkarea input[type=radio]:focus + .c-form-contact-check:before {
  outline: none;
  border-color: #122269;
}
.c-form-checkarea input[type=radio] + .c-form-contact-check:empty:before {
  margin-right: 0;
}
.c-form-checkarea input[type=checkbox] {
  position: absolute;
  opacity: 0;
}
.c-form-checkarea input[type=checkbox] + .c-form-contact-check {
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  margin-right: 10px;
  color: #f4f4f4;
}
.c-form-checkarea input[type=checkbox] + .c-form-contact-check:before {
  content: "";
  background: #f4f4f4;
  border-radius: 14%;
  border: 1px solid rgb(180.25, 180.25, 180.25);
  display: inline-block;
  width: 20px;
  height: 20px;
  position: relative;
  margin-right: 10px;
  margin-bottom: 10px;
  vertical-align: top;
  cursor: pointer;
  text-align: center;
  -webkit-transition: all 250ms ease;
  transition: all 250ms ease;
}
.c-form-checkarea input[type=checkbox]:checked + .c-form-contact-check:before {
  background-color: #122269;
  -webkit-box-shadow: inset 0 0 0 4px #f4f4f4;
          box-shadow: inset 0 0 0 4px #f4f4f4;
}
.c-form-checkarea input[type=checkbox]:focus + .c-form-contact-check:before {
  outline: none;
  border-color: #122269;
}
.c-form-checkarea input[type=checkbox] + .c-form-contact-check:empty:before {
  margin-right: 0;
}

.c-form-btn-area {
  display: block;
  text-align: center;
  padding: 0 0 40px 0;
}
@media screen and (max-width: 767px) {
  .c-form-btn-area {
    padding: 0 0 20px 0;
  }
}

.c-form-btn-item {
  position: relative;
  display: block;
  width: 100%;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: center;
  color: #ffffff !important;
  padding: 20px 15px;
  margin: 20px auto 0 auto;
  background-color: #000000;
  border: 2px solid #000000;
  z-index: 1;
  overflow: hidden;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  cursor: pointer;
}
@media screen and (max-width: 1170px) {
  .c-form-btn-item {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .c-form-btn-item {
    width: 100%;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 2px;
    margin: 0 auto 20px auto;
    padding: 15px 3px;
  }
}
.c-form-btn-item:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  color: #000000 !important;
  background-color: #ffffff;
}
.c-form-btn-item:disabled {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  opacity: 0.7;
}
.c-form-btn-item:disabled:hover {
  cursor: default;
  background-color: #333;
  border: 2px solid #333;
  color: #ffffff !important;
}

.c-form-return-item {
  position: relative;
  display: block;
  width: 100%;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: center;
  color: #444 !important;
  padding: 20px 15px;
  margin: 20px auto 0 auto;
  background-color: #ffffff;
  border: 2px solid #444;
  z-index: 1;
  overflow: hidden;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  cursor: pointer;
}
@media screen and (max-width: 1170px) {
  .c-form-return-item {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .c-form-return-item {
    width: 100%;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 2px;
    margin: 0 auto 20px auto;
    padding: 15px 3px;
  }
}
.c-form-return-item:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  color: #ffffff !important;
  background-color: #444;
}

.c-form-checkarea {
  margin-bottom: 10px;
  margin-top: 20px;
  padding: 10px 0;
  color: black;
}
.c-form-checkarea input[type=radio] {
  position: absolute;
  opacity: 0;
}
.c-form-checkarea input[type=radio] + .c-form-contact-check {
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 1;
  margin-right: 10px;
}
.c-form-checkarea input[type=radio] + .c-form-contact-check:before {
  content: "";
  background: #f4f4f4;
  border-radius: 100%;
  border: 1px solid rgb(180.25, 180.25, 180.25);
  display: inline-block;
  width: 20px;
  height: 20px;
  position: relative;
  top: -0.2em;
  margin-right: 10px;
  vertical-align: top;
  cursor: pointer;
  text-align: center;
  -webkit-transition: all 250ms ease;
  transition: all 250ms ease;
}
.c-form-checkarea input[type=radio]:checked + .c-form-contact-check:before {
  background-color: red;
  -webkit-box-shadow: inset 0 0 0 4px #f4f4f4;
          box-shadow: inset 0 0 0 4px #f4f4f4;
}
.c-form-checkarea input[type=radio]:focus + .c-form-contact-check:before {
  outline: none;
  border-color: red;
}
.c-form-checkarea input[type=radio] + .c-form-contact-check:empty:before {
  margin-right: 0;
}
.c-form-checkarea input[type=checkbox] {
  position: absolute;
  opacity: 0;
}
.c-form-checkarea input[type=checkbox] + .c-form-contact-check {
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 1;
  margin-right: 10px;
}
.c-form-checkarea input[type=checkbox] + .c-form-contact-check:before {
  content: "";
  background: #f4f4f4;
  border-radius: 14%;
  border: 1px solid rgb(180.25, 180.25, 180.25);
  display: inline-block;
  width: 20px;
  height: 20px;
  position: relative;
  margin-right: 10px;
  vertical-align: top;
  cursor: pointer;
  text-align: center;
  -webkit-transition: all 250ms ease;
  transition: all 250ms ease;
}
.c-form-checkarea input[type=checkbox]:checked + .c-form-contact-check:before {
  background-color: red;
  -webkit-box-shadow: inset 0 0 0 4px #f4f4f4;
          box-shadow: inset 0 0 0 4px #f4f4f4;
}
.c-form-checkarea input[type=checkbox]:focus + .c-form-contact-check:before {
  outline: none;
  border-color: red;
}
.c-form-checkarea input[type=checkbox] + .c-form-contact-check:empty:before {
  margin-right: 0;
}

.c-form-index {
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: left;
  color: black;
}
@media screen and (max-width: 767px) {
  .c-form-index {
    font-size: 1.6rem;
    text-align: left;
    margin-bottom: 5px;
  }
}

.c-form-optional {
  background-color: #444;
  color: #ffffff;
  padding: 2px 5px;
  vertical-align: middle;
  margin-left: 20px;
  font-weight: bold;
  font-size: 1.1rem;
}

.c-form-index-formattachment {
  color: #333;
  font-size: 1.6rem;
  width: auto;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin-bottom: 10px;
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .c-form-index-formattachment {
    font-size: 1.6rem;
  }
}

.c-form-att-text {
  font-size: 1.4rem;
  line-height: 1.6;
  padding: 10px;
  background-color: #eee;
  letter-spacing: 0.05em;
  margin-bottom: 10px;
  color: red;
}

.c-form-index-formattachment {
  margin-top: 0;
}

.c-form-index-text {
  display: block;
  font-size: 1.2rem;
  line-height: 1.6;
  padding: 4px 0;
  letter-spacing: 0.05em;
  color: #444;
}

/*==============================
-c-form-confirmation.scss
===============================*/
.c-form-confirmation-body {
  background: #ffffff;
}

.c-form-confirmation-inner {
  padding-top: 120px;
  color: #000000;
}

.c-form-confirmation-lead {
  padding-top: 15px;
}

.c-form-confirmation-table {
  width: 100%;
  margin: 60px 0 40px 0;
}

.c-form-confirmation-table {
  display: inline-table;
  position: relative;
  width: 100%;
  margin-bottom: 40px;
}
.c-form-confirmation-table th {
  width: 40%;
  padding: 5px 10px;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: right;
  border-right: 1px solid #888;
}
@media screen and (max-width: 767px) {
  .c-form-confirmation-table th {
    width: 30%;
  }
}
.c-form-confirmation-table td {
  padding: 5px 10px;
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .c-form-confirmation-table td {
    font-size: 1.2rem;
  }
}

.c-form-confirmation-submit-btn {
  background: #000000;
  border: 2px solid #000000;
  color: #fff;
  padding: 20px 15px;
  width: 80%;
  margin-top: 15px;
  outline: none;
  cursor: pointer;
  border-radius: 50px;
  font-weight: bold;
}
.c-form-confirmation-submit-btn:hover {
  background: none;
  color: #000000;
}

.c-form-confirmation-return-btn, .c-form-confirmation-return-btn-error {
  background: #aaa;
  border: 2px solid #aaa;
  color: #111;
  padding: 20px 15px;
  width: 80%;
  margin-top: 15px;
  outline: none;
  cursor: pointer;
  border-radius: 50px;
  font-weight: bold;
}
.c-form-confirmation-return-btn:hover, .c-form-confirmation-return-btn-error:hover {
  background: none;
  color: #aaa;
}

.c-form-confirmation-return-btn-error {
  width: 100px;
  padding: 10px 15px;
}

.c-form-confirmation-center {
  text-align: center;
}

.c-form-confirmation-footer {
  text-align: center;
  font-size: 1.2rem;
  color: #fff;
  padding: 20px 0;
  margin-top: 70px;
}

p.error_messe {
  margin: 5px 0;
  color: red;
}

/*==============================
-c-form-thanks.scss
===============================*/
.c-form-thanks-wrapper {
  width: 100%;
  text-align: center;
}

.c-form-thanks-inner {
  padding: 200px 0;
}
@media screen and (max-width: 767px) {
  .c-form-thanks-inner {
    padding: 120px 0;
  }
}

.c-form-thanks-heading {
  font-size: 3rem;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .c-form-thanks-heading {
    font-size: 2rem;
  }
}

.c-form-thanks-line {
  width: 40%;
  height: 2px;
  margin: 25px auto 30px auto;
}

.c-form-thanks-lead {
  font-size: 1.4rem;
  line-height: 3rem;
  font-weight: normal;
  margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
  .c-form-thanks-lead {
    font-size: 1.4rem;
  }
}

.c-form-thanks-anchor-btn {
  display: block;
  position: relative;
  font-size: 1.5rem;
  font-weight: bold;
  padding: 20px 10px;
  outline: none;
  border: none;
  width: 60%;
  margin-top: 60px;
  margin-left: auto;
  margin-right: auto;
  color: #ffffff;
  background-color: #000000;
  border: 2px solid #000000;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .c-form-thanks-anchor-btn {
    width: 80%;
  }
}
.c-form-thanks-anchor-btn:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  cursor: pointer;
  background-color: #ffffff;
  border: 2px solid #000000;
  color: #000000;
}

/*==============================
-Component
===============================*/
.c-header-wrapper {
  display: none;
}
@media screen and (max-width: 767px) {
  .c-header-wrapper {
    position: fixed;
    display: block;
    width: 100%;
    height: 60px;
    background-color: #000000;
    z-index: 9999;
  }
}

.c-header-item {
  -webkit-animation: c-header-item-fade 0.3s ease-in 0.7s both;
  animation: c-header-item-fade 0.3s ease-in 0.7s both;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

@-webkit-keyframes c-header-item-fade {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -10px, 0) perspective(0);
            transform: translate3d(0, -10px, 0) perspective(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0) perspective(0);
            transform: translate3d(0, 0, 0) perspective(0);
  }
}

@keyframes c-header-item-fade {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -10px, 0) perspective(0);
            transform: translate3d(0, -10px, 0) perspective(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0) perspective(0);
            transform: translate3d(0, 0, 0) perspective(0);
  }
}
.c-header-toplink-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .c-header-toplink-sp {
    display: block;
  }
}

.c-header-logo-sp {
  position: fixed;
  top: 10px;
  right: 10px;
  width: auto;
  height: 40px;
  z-index: 9999;
}

.c-header-trigger-wrapper {
  position: fixed;
  cursor: pointer;
  top: 0px;
  left: 0px;
  width: 60px;
  height: 60px;
  padding: 15px;
  z-index: 9999;
  -webkit-transition: ease-out 0.8s;
  transition: ease-out 0.8s;
}

.c-header-trigger-line {
  position: absolute;
  width: 30px;
  height: 2px;
  left: 15px;
  top: 0;
  margin: 0 auto;
  text-align: left;
  -webkit-transition: ease 0.8s;
  transition: ease 0.8s;
  background-color: #ffffff;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.c-header-trigger-line:nth-of-type(1) {
  top: 18px;
}

.c-header-trigger-line:nth-of-type(2) {
  top: 27px;
}

.c-header-trigger-line:nth-of-type(3) {
  top: 36px;
}

.c-header-trigger-wrapper.active .c-header-trigger-line:nth-of-type(1) {
  -webkit-transform: translate3d(-5px, 2px, 0) rotate3d(0, 0, 1, -405deg) perspective(0);
  transform: translate3d(-5px, 2px, 0) rotate3d(0, 0, 1, -405deg) perspective(0);
  width: 20px;
  -webkit-transition: ease 0.4s;
  transition: ease 0.4s;
}

.c-header-trigger-wrapper.active .c-header-trigger-line:nth-of-type(2) {
  -webkit-transform: translate3d(0, 0, 0) rotate3d(0, 0, 1, -360deg) perspective(0);
  transform: translate3d(0, 0, 0) rotate3d(0, 0, 1, -360deg) perspective(0);
  -webkit-transition: ease-in 0.4s;
  transition: ease-in 0.4s;
}

.c-header-trigger-wrapper.active .c-header-trigger-line:nth-of-type(3) {
  -webkit-transform: translate3d(-4px, -2px, 0) rotate3d(0, 0, 1, 585deg) perspective(0);
  transform: translate3d(-4px, -2px, 0) rotate3d(0, 0, 1, 585deg) perspective(0);
  width: 20px;
  -webkit-transition: ease-out 0.4s;
  transition: ease-out 0.4s;
}

.c-header-navmenu-wrapper {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  padding: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: -999;
  display: none;
  visibility: hidden;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.c-header-navmenu-wrapper.active {
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  padding: 0;
  -webkit-transform: translate3d(0, 0, 0) perspective(0);
          transform: translate3d(0, 0, 0) perspective(0);
  -webkit-animation: c-header-navmenu-fade 0.2s ease-in 0s both;
  animation: c-header-navmenu-fade 0.2s ease-in 0s both;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.c-header-navmenu-wrapper.inactive {
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  padding: 0;
  -webkit-transform: translate3d(0, 0, 0) perspective(0);
          transform: translate3d(0, 0, 0) perspective(0);
  -webkit-animation: c-header-navmenu-inactive 0.3s ease-out 0s both;
  animation: c-header-navmenu-inactive 0.3s ease-out 0s both;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

@-webkit-keyframes c-header-navmenu-fade {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(40px, 0, 0) perspective(0);
            transform: translate3d(40px, 0, 0) perspective(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0) perspective(0);
            transform: translate3d(0, 0, 0) perspective(0);
    z-index: 999;
  }
}

@keyframes c-header-navmenu-fade {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(40px, 0, 0) perspective(0);
            transform: translate3d(40px, 0, 0) perspective(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0) perspective(0);
            transform: translate3d(0, 0, 0) perspective(0);
    z-index: 999;
  }
}
@-webkit-keyframes c-header-navmenu-inactive {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0) perspective(0);
            transform: translate3d(0, 0, 0) perspective(0);
    z-index: 999;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(-40px, 0, 0) perspective(0);
            transform: translate3d(-40px, 0, 0) perspective(0);
    z-index: -999;
  }
}
@keyframes c-header-navmenu-inactive {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0) perspective(0);
            transform: translate3d(0, 0, 0) perspective(0);
    z-index: 999;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(-40px, 0, 0) perspective(0);
            transform: translate3d(-40px, 0, 0) perspective(0);
    z-index: -999;
  }
}
.c-header-navmenu-list-area {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  width: 100%;
}

.c-header-navmenu-list {
  max-width: 600px;
  margin: 0 auto;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-line-pack: center;
      align-content: center;
}
@media screen and (max-width: 767px) {
  .c-header-navmenu-list {
    max-width: 100%;
  }
}

.c-header-navmenu-listin {
  display: table;
  width: 50%;
}

.c-header-navmenu-link-strike {
  display: table-cell;
  vertical-align: middle;
  text-indent: 3px;
  letter-spacing: 3px;
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.4;
  color: #000000;
  text-align: center;
  padding: 10px 0;
  margin: 0 auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  text-decoration: line-through;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .c-header-navmenu-link-strike {
    font-size: 1.8rem;
    text-indent: 2px;
    letter-spacing: 0.05em;
    line-height: 1.4;
  }
}

.c-header-navmenu-link {
  display: table-cell;
  vertical-align: middle;
  text-indent: 3px;
  letter-spacing: 3px;
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.4;
  color: #ffffff;
  text-align: center;
  padding: 10px 0;
  margin: 0 auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .c-header-navmenu-link {
    font-size: 1.8rem;
    text-indent: 2px;
    letter-spacing: 0.05em;
    line-height: 1.4;
  }
}

.c-header-navmenu-link-langarea {
  display: block;
  width: 50%;
  text-align: center;
  margin: 20px auto 0 auto;
}

.c-header-navmenu-link-lang {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: center;
  color: #ffffff !important;
  padding: 5px;
  margin: 0 auto;
  background-color: #000000;
  border: 2px solid #000000;
  z-index: 1;
  overflow: hidden;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
          box-shadow: 1px 0px 10px 1px #01CE97;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
  -webkit-animation: c-header-navmenu-list-fade 0.2s ease 0.8s both;
          animation: c-header-navmenu-list-fade 0.2s ease 0.8s both;
}
@media screen and (max-width: 1170px) {
  .c-header-navmenu-link-lang {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .c-header-navmenu-link-lang {
    width: 100%;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 2px;
    padding: 5px;
    margin: 0 auto;
  }
}
.c-header-navmenu-link-lang:hover {
  letter-spacing: 3px;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
  -webkit-box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
          box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
}

.c-header-navmenu-lang-imgarea {
  display: inline-block;
  width: 35px;
  vertical-align: middle;
}

.c-header-navmenu-lang-icon {
  width: 100%;
  text-align: center;
  padding: 8px;
  margin: 0;
  text-align: center;
}

@-webkit-keyframes c-header-navmenu-list-fade {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(20px, 0, 0) perspective(0);
            transform: translate3d(20px, 0, 0) perspective(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0) perspective(0);
            transform: translate3d(0, 0, 0) perspective(0);
  }
}

@keyframes c-header-navmenu-list-fade {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(20px, 0, 0) perspective(0);
            transform: translate3d(20px, 0, 0) perspective(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0) perspective(0);
            transform: translate3d(0, 0, 0) perspective(0);
  }
}
.c-header-navmenu-listin.active:nth-child(1),
.c-header-navmenu-listin.active:nth-child(2) {
  -webkit-animation: c-header-navmenu-list-fade 0.3s ease 0s both;
          animation: c-header-navmenu-list-fade 0.3s ease 0s both;
}

.c-header-navmenu-listin.active:nth-child(3),
.c-header-navmenu-listin.active:nth-child(4) {
  -webkit-animation: c-header-navmenu-list-fade 0.3s ease 0.1s both;
          animation: c-header-navmenu-list-fade 0.3s ease 0.1s both;
}

.c-header-navmenu-listin.active:nth-child(5),
.c-header-navmenu-listin.active:nth-child(6) {
  -webkit-animation: c-header-navmenu-list-fade 0.3s ease 0.2s both;
          animation: c-header-navmenu-list-fade 0.3s ease 0.2s both;
}

.c-header-navmenu-listin.active:nth-child(7),
.c-header-navmenu-listin.active:nth-child(8) {
  -webkit-animation: c-header-navmenu-list-fade 0.3s ease 0.3s both;
          animation: c-header-navmenu-list-fade 0.3s ease 0.3s both;
}

.c-header-navmenu-listin.active:nth-child(9),
.c-header-navmenu-listin.active:nth-child(10) {
  -webkit-animation: c-header-navmenu-list-fade 0.3s ease 0.4s both;
          animation: c-header-navmenu-list-fade 0.3s ease 0.4s both;
}

.c-header-navmenu-listin.active:nth-child(11),
.c-header-navmenu-listin.active:nth-child(12) {
  -webkit-animation: c-header-navmenu-list-fade 0.3s ease 0.5s both;
          animation: c-header-navmenu-list-fade 0.3s ease 0.5s both;
}

.c-header-navmenu-listin.active:nth-child(13),
.c-header-navmenu-listin.active:nth-child(14) {
  -webkit-animation: c-header-navmenu-list-fade 0.3s ease 0.6s both;
          animation: c-header-navmenu-list-fade 0.3s ease 0.6s both;
}

.c-header-navmenu-listin.active:nth-child(15),
.c-header-navmenu-listin.active:nth-child(16) {
  -webkit-animation: c-header-navmenu-list-fade 0.3s ease 0.7s both;
          animation: c-header-navmenu-list-fade 0.3s ease 0.7s both;
}

.c-header-navmenu-lang-selectarea {
  display: inline-block;
  width: calc(75% - 8px);
  vertical-align: middle;
}

.c-header-navmenu-lang-area {
  position: relative;
  width: 140px;
  display: block;
  padding: 2px 5px;
  margin: 0 auto;
  background-color: #000000;
  border: 2px solid #000000;
  z-index: 1;
  overflow: hidden;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  text-align: center;
}

.c-header-navmenu-lang-select {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  display: block;
  text-indent: 10px;
  color: #ffffff !important;
  margin: 0 auto;
  background-color: #000000;
  border: none;
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 4px;
  line-height: 1.1;
  text-align: center;
  color: #ffffff !important;
}

.c-header-nav-link-langarea {
  position: absolute;
  top: 0;
  left: 70px;
  display: inline-block;
  width: auto;
  height: 60px;
  text-align: center;
  margin: 0 auto;
  z-index: 999;
}
.c-header-nav-link-langarea:hover {
  cursor: pointer;
}

.c-header-nav-link-lang {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  height: 60px;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: center;
  color: #ffffff !important;
  padding: 14px 0 0 0;
  margin: 0 auto;
  z-index: 1;
  overflow: hidden;
}

.c-header-nav-lang-imgarea {
  display: inline-block;
  vertical-align: middle;
}

.c-header-nav-lang-icon {
  width: 100%;
  width: 32px;
  height: 32px;
  padding: 0;
  margin: 0 auto;
  vertical-align: middle;
  text-align: center;
}

.c-header-nav-lang-submenu {
  position: absolute;
  top: 80px;
  left: -100%;
  width: 180px;
  height: 120px;
  max-height: 200px;
  background-color: #000000;
  color: #ffffff;
  border-radius: 2px;
  line-height: 1.75;
  -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
          box-shadow: 1px 0px 10px 1px #01CE97;
  opacity: 0;
  margin: 0 auto 0 auto;
  text-align: center;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0) perspective(0);
          transform: translate3d(0, 0, 0) perspective(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  z-index: -9999;
}
.c-header-nav-lang-submenu.active {
  position: absolute;
  display: block;
  opacity: 1;
  top: 80px;
  left: 40px;
  -webkit-transform: translate3d(0, 0, 0) perspective(0);
          transform: translate3d(0, 0, 0) perspective(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  pointer-events: auto;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  z-index: 9999;
}

.c-header-nav-lang-submenu::after,
.c-header-nav-lang-submenu::before {
  content: "";
  position: absolute;
  top: -24%;
  left: 50%;
  border: 15px solid transparent;
  -webkit-transform: translate3d(-50%, 0, 0) rotate3d(0, 0, 1, 360deg) perspective(0);
          transform: translate3d(-50%, 0, 0) rotate3d(0, 0, 1, 360deg) perspective(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  height: 0;
}

.c-header-nav-lang-submenu::after {
  border-bottom-color: #000000;
}

.c-header-nav-lang-submenu-items {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0) perspective(0);
          transform: translate3d(-50%, -50%, 0) perspective(0);
  text-align: center;
  margin: 0 auto;
  list-style: none;
  padding: 10px 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.c-header-nav-lang-submenu-items a {
  position: relative;
}

.c-header-nav-lang-submenu-item {
  display: block;
  text-align: left;
}

.c-header-nav-lang-submenu-link {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  color: #ffffff;
  padding: 5px;
  display: block;
  text-align: center;
  font-size: 1.6rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  text-indent: 2px;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .c-header-nav-lang-submenu-link {
    font-size: 1.8rem;
    line-height: 1.4;
  }
}

.c-header-nav-lang-submenu-link:hover {
  text-decoration: underline;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

.c-header-contact-link-area {
  display: block;
  width: 100%;
  font-size: 2.2rem;
  letter-spacing: 0.1em;
  line-height: 1.4;
  text-align: center;
  margin: 20px auto 0 auto;
  padding: 10px 20px;
}

.c-header-contact-link-text {
  display: inline-block;
  width: auto;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.4;
  text-align: center;
  margin: 0 auto;
}

.c-header-contact-link {
  display: inline-block;
  width: auto;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.4;
  text-align: center;
  padding: 14px 20px 10px 20px;
  background-color: rgb(255, 255, 255);
  color: #000000;
}

/*==============================
-Component
===============================*/
.c-footer-wrapper {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  top: 0;
  left: 0;
  padding: 40px 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  color: #ffffff;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .c-footer-wrapper {
    padding: 80px 0 40px 0;
  }
}

.c-footer-wrapper::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: -1;
}

.c-footer-area-sns-lead {
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .c-footer-area-sns-lead {
    font-size: 2rem;
  }
}

.c-footer-area-sns {
  width: 80%;
  -webkit-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 40px auto;
}
@media screen and (max-width: 767px) {
  .c-footer-area-sns {
    width: 90%;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.c-footer-area-sns-icon {
  color: #ffffff;
  width: 140px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .c-footer-area-sns-icon {
    width: auto;
    margin-bottom: 20px;
  }
}

.c-footer-area-sns-link {
  font-size: 2.8rem;
  color: #ffffff;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0) perspective(0);
          transform: translate3d(0, 0, 0) perspective(0);
}
.c-footer-area-sns-link:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: translate3d(0, 0, 0) perspective(0) scale(1.1);
          transform: translate3d(0, 0, 0) perspective(0) scale(1.1);
  color: #FCF103;
  text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
}
@media screen and (max-width: 767px) {
  .c-footer-area-sns-link {
    font-size: 3rem;
    padding: 10px 20px;
  }
}

.c-footer-area-sns-logo {
  width: auto;
  height: 40px;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.c-footer-area-sns-logo:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.c-footer-area-box {
  display: block;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .c-footer-area-box {
    padding: 30px 0;
  }
}

.c-footer-area-copyright {
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  color: #ffffff;
  text-align: center;
}

/*==============================
-Component
===============================*/
.c-modal-wrapper {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.8);
  margin: 0 auto;
  z-index: 99999;
}
.c-modal-wrapper.inactive {
  -webkit-animation: c-modal-close-anime 2.4s both 0s ease-out;
  animation: c-modal-close-anime 2.4s both 0s ease-out;
}

@-webkit-keyframes c-modal-close-anime {
  0% {
    opacity: 1;
  }
  40% {
    opacity: 0;
  }
  100% {
    opacity: 0;
    display: none;
    z-index: -9999;
  }
}
@keyframes c-modal-close-anime {
  0% {
    opacity: 1;
  }
  40% {
    opacity: 0;
  }
  100% {
    opacity: 0;
    display: none;
    z-index: -9999;
  }
}
.c-modal-content {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  text-align: center;
  margin: 0 auto;
  width: 100%;
}

.c-modal-img-link {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
  text-align: center;
  z-index: 999;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .c-modal-img-link {
    width: 100%;
  }
}

.c-modal-img {
  position: relative;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 90vh;
  text-align: center;
  z-index: 999;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .c-modal-img {
    width: 100%;
  }
}

.c-modal-content-box {
  display: inline-block;
  position: relative;
  top: 0;
  left: 0;
  width: auto;
  height: auto;
  max-width: 70%;
  max-height: 90vh;
  text-align: center;
  z-index: 999;
  margin: 0 auto;
}
@media screen and (max-width: 1200px) {
  .c-modal-content-box {
    max-width: 90%;
    max-height: 90vh;
  }
}
@media screen and (max-width: 767px) {
  .c-modal-content-box {
    max-width: 90%;
    max-height: 90vh;
  }
}

.c-modal-close-btn {
  font-size: 3rem;
  color: #000;
  position: absolute;
  right: 10px;
  top: 0;
  z-index: 999;
}
.c-modal-close-btn:hover {
  cursor: pointer;
}

/*==============================
-Component
===============================*/
.c-archive-wrap {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  padding: 6vw 0;
}
@media screen and (max-width: 767px) {
  .c-archive-wrap {
    padding: 12vw 6vw;
  }
}
.c-archive-wrap {
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .c-archive-wrap {
    padding: 60px 0;
  }
}

.c-archive-title {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .c-archive-title {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.c-archive-title {
  text-align: center;
  text-align: center;
  font-size: 4rem;
  font-weight: bold;
  color: #fff;
  padding-bottom: 40px;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .c-archive-title {
    font-size: 2.4rem;
  }
}

.c-archive-slider {
  width: 100%;
}

.c-archive-slider .swiper-slide {
  margin: 0 10px;
}
@media screen and (max-width: 767px) {
  .c-archive-slider .swiper-slide {
    margin: 0 10px;
  }
}

.c-archive-name {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .c-archive-name {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.c-archive-name {
  text-align: center;
  color: #666;
  font-size: 1.8rem;
  margin-top: 10px;
}

.c-archive-slider .swiper-wrapper {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}

.c-archive-img {
  display: block;
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 100%;
}

/*==============================
-Component
===============================*/
.c-language-wrapper {
  width: 100%;
  text-align: right;
  margin-left: auto;
}
@media screen and (max-width: 767px) {
  .c-language-wrapper {
    padding-right: 0;
    text-align: right;
    margin-left: auto;
    margin-right: 0;
  }
}

.c-language-box {
  display: inline-block;
  width: 140px;
}
@media screen and (max-width: 767px) {
  .c-language-box {
    width: 100%;
  }
}

.c-language-flag-img {
  width: 20px;
  height: 13.3px;
}

.switcher {
  font-size: 1.4rem;
  text-align: left;
  cursor: pointer;
  overflow: hidden;
  width: auto;
  line-height: 1.2;
}

.switcher a {
  text-decoration: none;
  display: block;
  font-size: 1.4rem;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

.switcher a img {
  vertical-align: middle;
  display: inline;
  border: 0;
  padding: 0;
  margin: 0;
  opacity: 0.8;
}

.switcher a:hover img {
  opacity: 1;
}

.switcher .selected {
  background-color: #010101;
  position: relative;
  z-index: 9999;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.switcher .selected a {
  border: 1px solid #666;
  color: #ddd;
  padding: 8px 15px;
  width: auto;
  background-color: #010101;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.switcher .selected a:after {
  height: 16px;
  display: inline-block;
  position: absolute;
  right: 5px;
  width: 15px;
  background-position: 50%;
  background-size: 7px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 285 285'><path d='M282 76.5l-14.2-14.3a9 9 0 0 0-13.1 0L142.5 174.4 30.3 62.2a9 9 0 0 0-13.2 0L3 76.5a9 9 0 0 0 0 13.1l133 133a9 9 0 0 0 13.1 0l133-133a9 9 0 0 0 0-13z' style='fill:%23666'/></svg>");
  background-repeat: no-repeat;
  content: "" !important;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.switcher .selected a.open:after {
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg);
}

.switcher .selected a:hover {
  background-color: #333;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.switcher .option {
  position: absolute;
  width: 140px;
  z-index: 99999;
  border-left: 1px solid #666;
  border-right: 1px solid #666;
  border-bottom: 1px solid #666;
  background-color: #222;
  display: none;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  overflow-y: auto;
  overflow-x: hidden;
}

.switcher .option a {
  border: 1px solid #666;
  color: #ffffff;
  padding: 8px 15px;
  width: auto;
  background-color: #010101;
}

.switcher .option a:hover {
  background-color: #333;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.switcher .option a.selected {
  background-color: #333;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

#selected_lang_name {
  float: none;
}

.l_name {
  float: none !important;
  margin: 0;
}

.switcher .option::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
  border-radius: 5px;
  background-color: #f5f5f5;
}

.switcher .option::-webkit-scrollbar {
  width: 5px;
}

.switcher .option::-webkit-scrollbar-thumb {
  border-radius: 5px;
  -webkit-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
  background-color: #888;
}

.switcher a img {
  width: auto;
}

#goog-gt-tt {
  display: none !important;
}

.goog-te-banner-frame {
  display: none !important;
}

.goog-te-menu-value:hover {
  text-decoration: none !important;
}

.goog-text-highlight {
  background-color: transparent !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
}

body {
  top: 0 !important;
}

#google_translate_element2 {
  display: none !important;
}

.VIpgJd-ZVi9od-ORHb-OEVmcd {
  display: none;
}

/*==============================
-Component
===============================*/
.c-bg-snow-container {
  pointer-events: none;
  position: fixed;
  inset: 0;
  overflow: hidden;
  z-index: 9999;
}

.c-bg-snowflake {
  position: absolute;
  top: -10%;
  color: #efefef;
  opacity: 0.8;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  will-change: transform;
  -webkit-animation-name: c-bg-snow-fall;
          animation-name: c-bg-snow-fall;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
}

/* 下に落ちつつ、少し横にもゆらゆらさせる */
@-webkit-keyframes c-bg-snow-fall {
  0% {
    -webkit-transform: translate3d(0, -10vh, 0);
            transform: translate3d(0, -10vh, 0);
  }
  100% {
    -webkit-transform: translate3d(10vw, 110vh, 0);
            transform: translate3d(10vw, 110vh, 0);
  }
}
@keyframes c-bg-snow-fall {
  0% {
    -webkit-transform: translate3d(0, -10vh, 0);
            transform: translate3d(0, -10vh, 0);
  }
  100% {
    -webkit-transform: translate3d(10vw, 110vh, 0);
            transform: translate3d(10vw, 110vh, 0);
  }
}
.c-bg-sakura-container {
  pointer-events: none;
  position: fixed;
  inset: 0;
  overflow: hidden;
  z-index: 9999;
}

.c-bg-sakura {
  position: absolute;
  padding: 0;
  margin: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.c-bg-sakura li {
  width: 18px;
  position: absolute;
  list-style: none;
  top: -50px;
  -webkit-animation: c-bg-sakura-fall 4s linear infinite, c-bg-sakura-rotate1 2s ease-in-out infinite alternate;
          animation: c-bg-sakura-fall 4s linear infinite, c-bg-sakura-rotate1 2s ease-in-out infinite alternate;
}

.c-bg-sakura li img {
  width: 100%;
}

@-webkit-keyframes c-bg-sakura-fall {
  to {
    top: 120%;
  }
}

@keyframes c-bg-sakura-fall {
  to {
    top: 120%;
  }
}
@-webkit-keyframes c-bg-sakura-rotate1 {
  from {
    -webkit-transform: translate3d(0, 0, 0) rotate3d(0, 0, 1, 0deg);
            transform: translate3d(0, 0, 0) rotate3d(0, 0, 1, 0deg);
  }
  to {
    -webkit-transform: translate3d(200px, 0, 0) rotate3d(0, 0, 1, -80deg) rotateX(180deg);
            transform: translate3d(200px, 0, 0) rotate3d(0, 0, 1, -80deg) rotateX(180deg);
  }
}
@keyframes c-bg-sakura-rotate1 {
  from {
    -webkit-transform: translate3d(0, 0, 0) rotate3d(0, 0, 1, 0deg);
            transform: translate3d(0, 0, 0) rotate3d(0, 0, 1, 0deg);
  }
  to {
    -webkit-transform: translate3d(200px, 0, 0) rotate3d(0, 0, 1, -80deg) rotateX(180deg);
            transform: translate3d(200px, 0, 0) rotate3d(0, 0, 1, -80deg) rotateX(180deg);
  }
}
@-webkit-keyframes c-bg-sakura-rotate2 {
  from {
    -webkit-transform: translate3d(200px, 0, 0) rotate3d(0, 0, 1, -45deg);
            transform: translate3d(200px, 0, 0) rotate3d(0, 0, 1, -45deg);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0) rotate3d(0, 0, 1, 0deg);
            transform: translate3d(0, 0, 0) rotate3d(0, 0, 1, 0deg);
  }
}
@keyframes c-bg-sakura-rotate2 {
  from {
    -webkit-transform: translate3d(200px, 0, 0) rotate3d(0, 0, 1, -45deg);
            transform: translate3d(200px, 0, 0) rotate3d(0, 0, 1, -45deg);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0) rotate3d(0, 0, 1, 0deg);
            transform: translate3d(0, 0, 0) rotate3d(0, 0, 1, 0deg);
  }
}
.c-bg-sakura li:nth-of-type(1) {
  left: 0;
  -webkit-animation: c-bg-sakura-fall 10s linear infinite, c-bg-sakura-rotate1 3s ease-in-out infinite alternate;
          animation: c-bg-sakura-fall 10s linear infinite, c-bg-sakura-rotate1 3s ease-in-out infinite alternate;
  -webkit-animation-delay: 10s;
          animation-delay: 10s;
}

.c-bg-sakura li:nth-of-type(2) {
  left: 5vw;
  -webkit-animation: c-bg-sakura-fall 15s linear infinite, c-bg-sakura-rotate1 2s ease-in-out infinite alternate;
          animation: c-bg-sakura-fall 15s linear infinite, c-bg-sakura-rotate1 2s ease-in-out infinite alternate;
  -webkit-animation-delay: 15s;
          animation-delay: 15s;
}

.c-bg-sakura li:nth-of-type(3) {
  left: 15vw;
  -webkit-animation: c-bg-sakura-fall 9s linear infinite, c-bg-sakura-rotate1 3.5s ease-in-out infinite alternate;
          animation: c-bg-sakura-fall 9s linear infinite, c-bg-sakura-rotate1 3.5s ease-in-out infinite alternate;
  -webkit-animation-delay: 20s;
          animation-delay: 20s;
}

.c-bg-sakura li:nth-of-type(4) {
  left: 30vw;
  -webkit-animation: c-bg-sakura-fall 8s linear infinite, c-bg-sakura-rotate2 4s ease-in-out infinite alternate;
          animation: c-bg-sakura-fall 8s linear infinite, c-bg-sakura-rotate2 4s ease-in-out infinite alternate;
  -webkit-animation-delay: 25s;
          animation-delay: 25s;
}

.c-bg-sakura li:nth-of-type(5) {
  left: 40vw;
  -webkit-animation: c-bg-sakura-fall 10s linear infinite, c-bg-sakura-rotate1 4s ease-in-out infinite alternate;
          animation: c-bg-sakura-fall 10s linear infinite, c-bg-sakura-rotate1 4s ease-in-out infinite alternate;
  -webkit-animation-delay: 30s;
          animation-delay: 30s;
}

.c-bg-sakura li:nth-of-type(6) {
  left: 55vw;
  -webkit-animation: c-bg-sakura-fall 11s linear infinite, c-bg-sakura-rotate2 3s ease-in-out infinite alternate;
          animation: c-bg-sakura-fall 11s linear infinite, c-bg-sakura-rotate2 3s ease-in-out infinite alternate;
  -webkit-animation-delay: 35s;
          animation-delay: 35s;
}

.c-bg-sakura li:nth-of-type(7) {
  left: 65vw;
  -webkit-animation: c-bg-sakura-fall 7s linear infinite, c-bg-sakura-rotate2 3.5s ease-in-out infinite alternate;
          animation: c-bg-sakura-fall 7s linear infinite, c-bg-sakura-rotate2 3.5s ease-in-out infinite alternate;
  -webkit-animation-delay: 40s;
          animation-delay: 40s;
}

.c-bg-sakura li:nth-of-type(8) {
  left: 50vw;
  -webkit-animation: c-bg-sakura-fall 7s linear infinite, c-bg-sakura-rotate1 3s ease-in-out infinite alternate;
          animation: c-bg-sakura-fall 7s linear infinite, c-bg-sakura-rotate1 3s ease-in-out infinite alternate;
  -webkit-animation-delay: 45s;
          animation-delay: 45s;
}

.c-bg-firework-container {
  pointer-events: none;
  position: fixed;
  inset: 0;
  overflow: hidden;
  z-index: 9999;
}

.c-bg-firework,
.c-bg-firework::before,
.c-bg-firework::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  aspect-ratio: 1;
  background: radial-gradient(circle, rgba(212, 212, 10, 0.8) 5px, #000 0) 50% 0%, radial-gradient(circle, rgba(240, 230, 140, 0.8) 5px, #000 0) 0% 50%, radial-gradient(circle, rgba(255, 255, 255, 0.8) 5px, #000 0) 50% 99%, radial-gradient(circle, rgba(0, 255, 0, 0.8) 5px, #000 0) 99% 50%, radial-gradient(circle, rgba(220, 20, 60, 0.8) 5px, #000 0) 80% 90%, radial-gradient(circle, rgba(255, 0, 0, 0.8) 5px, #000 0) 95% 90%, radial-gradient(circle, rgba(255, 255, 0, 0.8) 5px, #000 0) 10% 60%, radial-gradient(circle, rgba(240, 230, 140, 0.8) 5px, #000 0) 31% 80%, radial-gradient(circle, rgba(255, 255, 255, 0.8) 5px, #000 0) 80% 10%, radial-gradient(circle, rgba(0, 255, 0, 0.8) 5px, #000 0) 90% 23%, radial-gradient(circle, rgba(220, 20, 60, 0.8) 5px, #000 0) 45% 20%, radial-gradient(circle, rgba(255, 0, 0, 0.8) 5px, #000 0) 13% 24%;
  background-size: 6px 6px;
  background-repeat: no-repeat;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  -webkit-animation: c-bg-fireworks-animation 4s infinite;
          animation: c-bg-fireworks-animation 4s infinite;
}

.c-bg-firework::before {
  -webkit-transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, 25deg) !important;
          transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, 25deg) !important;
}

.c-bg-firework::after {
  -webkit-transform: translate3d(-50%, -50%, 0) rotate(0, 0, 1, -37deg) !important;
          transform: translate3d(-50%, -50%, 0) rotate(0, 0, 1, -37deg) !important;
}

.c-bg-firework,
.c-bg-firework::before {
  top: 40%;
  left: 46%;
  -webkit-animation-duration: 10s;
          animation-duration: 10s;
  -webkit-animation-delay: 15s;
          animation-delay: 15s;
}

.c-bg-firework::after {
  top: 60%;
  left: 86%;
  -webkit-animation-duration: 15s;
          animation-duration: 15s;
  -webkit-animation-delay: 20s;
          animation-delay: 20s;
}

.c-bg-firework:nth-of-type(2),
.c-bg-firework:nth-of-type(2)::before {
  top: 30%;
  left: 26%;
  -webkit-animation-duration: 10s;
          animation-duration: 10s;
  -webkit-animation-delay: 25s;
          animation-delay: 25s;
}

.c-bg-firework:nth-of-type(2)::after {
  top: 30%;
  left: 16%;
  -webkit-animation-duration: 15s;
          animation-duration: 15s;
  -webkit-animation-delay: 30s;
          animation-delay: 30s;
}

.c-bg-firework:nth-of-type(3),
.c-bg-firework:nth-of-type(3)::before {
  top: 30%;
  left: 42%;
  -webkit-animation-duration: 20s;
          animation-duration: 20s;
  -webkit-animation-delay: 35s;
          animation-delay: 35s;
}

.c-bg-firework:nth-of-type(3)::after {
  top: 10%;
  left: 72%;
  -webkit-animation-duration: 10s;
          animation-duration: 10s;
  -webkit-animation-delay: 45s;
          animation-delay: 45s;
}

.c-bg-firework:nth-of-type(4),
.c-bg-firework:nth-of-type(4)::before {
  top: 18%;
  left: 62%;
  -webkit-animation-duration: 20s;
          animation-duration: 20s;
  -webkit-animation-delay: 50s;
          animation-delay: 50s;
}

.c-bg-firework:nth-of-type(4)::after {
  top: 28%;
  left: 32%;
  -webkit-animation-duration: 25s;
          animation-duration: 25s;
  -webkit-animation-delay: 550s;
          animation-delay: 550s;
}

@-webkit-keyframes c-bg-fireworks-animation {
  0% {
    -webkit-transform: translate3d(-50%, 90vh, 0);
            transform: translate3d(-50%, 90vh, 0);
    width: 4px;
    opacity: 0.5;
  }
  50% {
    width: 4px;
    opacity: 0.5;
  }
  100% {
    width: 400px;
    opacity: 0;
  }
}

@keyframes c-bg-fireworks-animation {
  0% {
    -webkit-transform: translate3d(-50%, 90vh, 0);
            transform: translate3d(-50%, 90vh, 0);
    width: 4px;
    opacity: 0.5;
  }
  50% {
    width: 4px;
    opacity: 0.5;
  }
  100% {
    width: 400px;
    opacity: 0;
  }
}
/*==============================
-Component
===============================*/
.c-visual-fixedarea {
  position: relative;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media screen and (max-width: 1170px) {
  .c-visual-fixedarea {
    display: block;
    overflow: hidden;
  }
}
@media screen and (max-width: 767px) {
  .c-visual-fixedarea {
    overflow: unset;
  }
  .c-visual-fixedarea.active {
    -webkit-filter: blur(3px);
            filter: blur(3px);
    -webkit-transition: ease 0.4s;
    transition: ease 0.4s;
  }
}

.c-visual-sidebar {
  position: fixed;
  top: 0;
  left: 0;
  width: 240px;
  height: 100vh;
  min-height: 1px;
  display: inline-block;
  vertical-align: top;
  font-size: 1rem;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  z-index: 1;
}
@media screen and (max-width: 1170px) {
  .c-visual-sidebar {
    position: fixed;
  }
}
@media screen and (max-width: 767px) {
  .c-visual-sidebar {
    display: none;
  }
}

.c-visual-main-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  margin: 0 auto;
  text-align: center;
  overflow: hidden;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
  -webkit-transition: ease-out 0.3s;
  transition: ease-out 0.3s;
}
.c-visual-main-wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.1);
  z-index: 0;
  background: linear-gradient(-45deg, rgba(72, 72, 0, 0.6) 0%, rgba(25, 0, 22, 0.3) 23%, rgba(0, 21, 5, 0.3) 46%, rgba(2, 0, 35, 0.2) 69%, rgba(0, 0, 0, 0.5) 100%);
  background-size: 400% 400%;
  -webkit-animation: c-loading-gradient 10s ease 0s infinite;
  animation: c-loading-gradient 10s ease 0s infinite;
}
@media screen and (max-width: 767px) {
  .c-visual-main-wrapper::before {
    background: none;
    background-color: rgba(0, 0, 0, 0.3);
    background-size: cover;
    background-position: center center;
    -webkit-animation: none;
    animation: none;
  }
}

.c-visual-wrapper {
  top: 0;
  left: 0;
  height: 100vh;
}
@media screen and (max-width: 1170px) {
  .c-visual-wrapper {
    height: 100%;
  }
}

.c-visual-mainimg {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: calc(50% - 240px / 2);
  min-height: 1px;
  font-size: 1rem;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  margin-left: 240px;
  z-index: 0;
}
@media screen and (max-width: 1170px) {
  .c-visual-mainimg {
    height: 100vh;
    position: relative;
    width: calc(100% - (240px));
    margin-right: 0;
    margin-left: 0;
    margin-left: 240px;
  }
}
@media screen and (max-width: 767px) {
  .c-visual-mainimg {
    width: 100%;
    margin-left: 0;
  }
}

.c-visual-desc {
  display: block;
  width: calc(50% - 240px / 2);
  height: auto;
  position: relative;
  top: 0;
  left: 0;
  min-height: 1px;
  display: inline-block;
  font-size: 1rem;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  padding: 0;
  margin-left: calc(50% + 240px / 2);
  overflow: hidden;
}
@media screen and (max-width: 1170px) {
  .c-visual-desc {
    width: calc(100% - (240px));
    margin-left: 240px;
  }
}
@media screen and (max-width: 767px) {
  .c-visual-desc {
    width: 100%;
    margin-left: 0;
  }
}
@media screen and (max-width: 767px) {
  .c-visual-desc.active {
    -webkit-filter: blur(5px);
            filter: blur(5px);
    -webkit-transition: ease 0.6s;
    transition: ease 0.6s;
  }
}

.c-visual-image {
  position: absolute;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  -webkit-animation: c-visual-about-img-fade 2s ease 0s both;
  animation: c-visual-about-img-fade 2s ease 0s both;
}
@media screen and (max-width: 1170px) {
  .c-visual-image {
    padding: 0;
    height: auto;
    min-height: 100vh;
  }
}

.c-visual-image-canvas {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0.5;
}

.c-visual-image-bg {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 767px) {
  .c-visual-image-bg {
    background: none;
    background-color: rgba(0, 0, 0, 0.3);
    background-size: cover;
    background-position: center center;
    -webkit-animation: none;
    animation: none;
  }
}

@-webkit-keyframes c-visual-gradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
@keyframes c-visual-gradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
@-webkit-keyframes c-visual-about-img-fade {
  0% {
    opacity: 0;
    background-color: rgb(0, 0, 0);
  }
  100% {
    opacity: 1;
    background-color: rgba(0, 0, 0, 0);
  }
}
@keyframes c-visual-about-img-fade {
  0% {
    opacity: 0;
    background-color: rgb(0, 0, 0);
  }
  100% {
    opacity: 1;
    background-color: rgba(0, 0, 0, 0);
  }
}
.c-visual-imgbox {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 2;
  padding: 40px;
  text-align: center;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .c-visual-imgbox {
    padding: 120px 30px 20px 30px;
  }
}

.c-visual-logo {
  display: block;
  width: 12vw;
  text-align: center;
  margin: 0 auto;
}
@media screen and (max-width: 1170px) {
  .c-visual-logo {
    width: 20vw;
  }
}
@media screen and (max-width: 767px) {
  .c-visual-logo {
    width: 50vw;
  }
}

.c-visual-title-titlelogo {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  text-align: center;
  margin: 0 auto;
  display: block;
  width: 90%;
  text-align: center;
  margin: 0 auto;
}
.c-visual-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: absolute;
  width: 100%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0) perspective(0);
          transform: translate3d(-50%, -50%, 0) perspective(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  font-size: 8.4rem;
  font-weight: bold;
  letter-spacing: 6px;
  text-indent: 4px;
  line-height: 1.1;
  text-align: center;
  color: #ffffff;
  text-shadow: 0 0 5px #fff, 0 0 10px #fff, 0 0 3px #fff, 0 0 40px #0ff, 0 0 60px #0ff, 0 0 20px #0ff, 0 0 80px #0ff, 0 0 90px #0ff;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .c-visual-title {
    font-size: 5rem;
    letter-spacing: 4px;
  }
}

.c-visual-title-djs {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: absolute;
  width: 100%;
  top: 70%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 8.4rem;
  font-weight: bold;
  letter-spacing: 6px;
  text-indent: 4px;
  line-height: 1.1;
  text-align: center;
  color: #ffffff;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .c-visual-title-djs {
    font-size: 5rem;
    letter-spacing: 4px;
  }
}

.c-visual-textarea {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  font-size: clamp(1rem, 0.9vw, 5rem);
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.8;
  text-align: center;
  padding: 0.5vw;
  margin: 0 auto;
  z-index: 100;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .c-visual-textarea {
    font-size: clamp(1rem, 3vw, 5rem);
    padding: 5px;
  }
}

.c-visual-btnarea {
  display: block;
  width: 50%;
  text-align: center;
  margin: 20px auto 0 auto;
}
@media screen and (max-width: 767px) {
  .c-visual-btnarea {
    margin: 5px auto 0 auto;
  }
}

.c-visual-banner-area {
  display: block;
  width: 40%;
  text-align: center;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .c-visual-banner-area {
    margin: 5px auto 0 auto;
    width: 80%;
  }
}

.c-visual-banner-link {
  -webkit-transition: ease 0.4s;
  transition: ease 0.4s;
}
.c-visual-banner-link:hover {
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  opacity: 0.7;
}

.c-visual-banner-img {
  width: auto;
  max-width: 90%;
  max-height: 240px;
}

.c-visual-movie-box {
  padding: 80px 40px 0 40px;
}
@media screen and (max-width: 767px) {
  .c-visual-movie-box {
    padding: 80px 20px 0 20px;
  }
}

.c-visual-moviearea {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.c-visual-moviearea iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.c-visual-lang-wrapper {
  display: block;
  text-align: center;
  margin: 0 auto;
  width: 50%;
  height: 36px;
}

.c-visual-movie-wrapper {
  position: relative;
  z-index: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  height: 100%;
  height: 100vh;
  width: 100%;
  overflow: hidden;
  margin: 0 auto;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .c-visual-movie-wrapper {
    top: 0;
    left: 0;
    height: 100%;
    overflow: unset;
  }
}

@-webkit-keyframes c-visual-img-anime {
  0% {
    opacity: 0.3;
  }
  60% {
    opacity: 0.8;
  }
  100% {
    opacity: 0.3;
  }
}
@keyframes c-visual-img-anime {
  0% {
    opacity: 0.3;
  }
  60% {
    opacity: 0.8;
  }
  100% {
    opacity: 0.3;
  }
}
.c-visual-movie-video {
  background: url("") no-repeat;
  background-attachment: fixed;
  background-position: center center;
  background-size: cover;
  left: 0;
  min-height: 100%;
  min-height: 100vh;
  min-width: 100%;
  min-width: 100vw;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  opacity: 0.5;
}
@media screen and (max-width: 767px) {
  .c-visual-movie-video {
    display: none;
  }
}

.c-visual-movie-filter {
  position: absolute;
  background-color: rgba(0, 0, 0, 0.1);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .c-visual-movie-filter {
    display: none;
  }
}

@media screen and (max-width: 1170px) {
  .c-visual-movie-pc {
    display: none;
  }
}

.c-visual-movie-sp {
  display: none;
}
@media screen and (max-width: 1170px) {
  .c-visual-movie-sp {
    display: block;
  }
}

/*==============================
-Component
===============================*/
.c-sidebar-wrapper {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  height: 100%;
  top: 0;
  left: 0;
  padding: 0;
  margin: 0 auto;
}

.c-sidebar-item {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: translate3d(0, -50%, 0) perspective(0);
          transform: translate3d(0, -50%, 0) perspective(0);
  padding: 0 40px;
  margin: 0 auto;
}

.c-sidebar-toplogo-area {
  margin-bottom: 20px;
}

.c-sidebar-toplogo {
  display: block;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.c-sidebar-toplogo:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.c-sidebar-menubig-area {
  margin-bottom: 10px;
}

.c-sidebar-menuarea {
  display: block;
}

.c-sidebar-logolink {
  display: block;
  text-align: center;
}

.c-sidebar-menulink {
  position: relative;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.1;
  text-align: left;
  padding: 0;
  margin: 0;
  z-index: 0;
  overflow: hidden;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.c-sidebar-menulink::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  padding: 0;
  margin: 0;
  z-index: -1;
  -webkit-animation: c-sidebar-menulink-fadeout-before 0.45s cubic-bezier(0.86, 0.3, 0.37, 1) 0s forwards;
          animation: c-sidebar-menulink-fadeout-before 0.45s cubic-bezier(0.86, 0.3, 0.37, 1) 0s forwards;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
  -webkit-transition: ease-out 0.3s;
  transition: ease-out 0.3s;
}
.c-sidebar-menulink:hover {
  text-shadow: 4px 4px 4px rgba(205, 40, 44, 0.9), -4px -4px 4px rgba(40, 205, 52, 0.9);
  -webkit-transition: ease-in 0.2s;
  transition: ease-in 0.2s;
  z-index: 1;
}
.c-sidebar-menulink:hover::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  padding: 0;
  margin: 0;
  z-index: -1;
  -webkit-animation: c-sidebar-menulink-fadein-before 0.4s cubic-bezier(0.86, 0, 0.07, 1) 0s forwards;
          animation: c-sidebar-menulink-fadein-before 0.4s cubic-bezier(0.86, 0, 0.07, 1) 0s forwards;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

@-webkit-keyframes c-sidebar-menulink-fadein-before {
  0% {
    width: 0;
    bottom: 0;
    left: 0;
    background-color: #01CE97;
    -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
            box-shadow: 1px 0px 10px 1px #01CE97;
  }
  100% {
    width: 100%;
    bottom: 0;
    left: 0;
    background-color: #01CE97;
    -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
            box-shadow: 1px 0px 10px 1px #01CE97;
  }
}

@keyframes c-sidebar-menulink-fadein-before {
  0% {
    width: 0;
    bottom: 0;
    left: 0;
    background-color: #01CE97;
    -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
            box-shadow: 1px 0px 10px 1px #01CE97;
  }
  100% {
    width: 100%;
    bottom: 0;
    left: 0;
    background-color: #01CE97;
    -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
            box-shadow: 1px 0px 10px 1px #01CE97;
  }
}
@-webkit-keyframes c-sidebar-menulink-fadeout-before {
  0% {
    width: 100%;
    bottom: 0;
    left: 0;
    -webkit-transform: translate3d(0, 0, 0) perspective(0);
            transform: translate3d(0, 0, 0) perspective(0);
    background-color: #01CE97;
    -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
            box-shadow: 1px 0px 10px 1px #01CE97;
  }
  100% {
    width: 100%;
    bottom: 0;
    left: 0;
    -webkit-transform: translate3d(100%, 0, 0) perspective(0);
            transform: translate3d(100%, 0, 0) perspective(0);
    background-color: #01CE97;
    -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
            box-shadow: 1px 0px 10px 1px #01CE97;
  }
}
@keyframes c-sidebar-menulink-fadeout-before {
  0% {
    width: 100%;
    bottom: 0;
    left: 0;
    -webkit-transform: translate3d(0, 0, 0) perspective(0);
            transform: translate3d(0, 0, 0) perspective(0);
    background-color: #01CE97;
    -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
            box-shadow: 1px 0px 10px 1px #01CE97;
  }
  100% {
    width: 100%;
    bottom: 0;
    left: 0;
    -webkit-transform: translate3d(100%, 0, 0) perspective(0);
            transform: translate3d(100%, 0, 0) perspective(0);
    background-color: #01CE97;
    -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
            box-shadow: 1px 0px 10px 1px #01CE97;
  }
}
.c-sidebar-menulink-strike {
  position: relative;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: left;
  padding: 0;
  margin: 0;
  z-index: 0;
  overflow: hidden;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  text-decoration: line-through;
  color: #888;
}

.c-sidebar-menusmall-area {
  margin-bottom: 10px;
}
@media screen and (max-height: 640px) {
  .c-sidebar-menusmall-area {
    margin-bottom: 0;
  }
}

.c-sidebar-menulink-small-strike {
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.1;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  position: relative;
  display: inline-block;
  text-align: left;
  padding: 0;
  margin: 0;
  z-index: 0;
  overflow: hidden;
  color: #888;
  text-decoration: line-through;
}

.c-sidebar-menulink-small {
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.1;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  position: relative;
  display: inline-block;
  text-align: left;
  padding: 0;
  margin: 0;
  z-index: 0;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.c-sidebar-menulink-small::before {
  content: "";
  position: absolute;
  width: 0;
  height: 1px;
  bottom: 0;
  left: 0;
  z-index: -1;
  -webkit-transform: translate3d(0, 0, 0) perspective(0);
          transform: translate3d(0, 0, 0) perspective(0);
  -webkit-animation: c-sidebar-menulink-fadeout-before 0.45s cubic-bezier(0.86, 0.3, 0.37, 1) 0s forwards;
          animation: c-sidebar-menulink-fadeout-before 0.45s cubic-bezier(0.86, 0.3, 0.37, 1) 0s forwards;
}
.c-sidebar-menulink-small:hover {
  -webkit-transition: ease-in 0.4s;
  transition: ease-in 0.4s;
  z-index: 1;
}
.c-sidebar-menulink-small:hover::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  z-index: -1;
  -webkit-transform: translate3d(0, 0, 0) perspective(0);
          transform: translate3d(0, 0, 0) perspective(0);
  -webkit-animation: c-sidebar-menulink-fadein-before 0.4s cubic-bezier(0.86, 0, 0.07, 1) 0s forwards;
          animation: c-sidebar-menulink-fadein-before 0.4s cubic-bezier(0.86, 0, 0.07, 1) 0s forwards;
}

.c-sidebar-menulink-small-white {
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.4;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  position: relative;
  display: inline-block;
  text-align: left;
  padding: 0;
  margin: 0;
  z-index: 0;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.c-sidebar-menulink-small-white::before {
  content: "";
  position: absolute;
  width: 0;
  height: 1px;
  bottom: 0;
  left: 0;
  z-index: -1;
  -webkit-transform: translate3d(0, 0, 0) perspective(0);
          transform: translate3d(0, 0, 0) perspective(0);
  -webkit-animation: c-sidebar-menulink-fadeout-before-white 0.45s cubic-bezier(0.86, 0.3, 0.37, 1) 0s forwards;
          animation: c-sidebar-menulink-fadeout-before-white 0.45s cubic-bezier(0.86, 0.3, 0.37, 1) 0s forwards;
}
.c-sidebar-menulink-small-white:hover {
  -webkit-transition: ease-in 0.4s;
  transition: ease-in 0.4s;
  z-index: 1;
}
.c-sidebar-menulink-small-white:hover::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  z-index: -1;
  -webkit-transform: translate3d(0, 0, 0) perspective(0);
          transform: translate3d(0, 0, 0) perspective(0);
  -webkit-animation: c-sidebar-menulink-fadein-before-white 0.4s cubic-bezier(0.86, 0, 0.07, 1) 0s forwards;
          animation: c-sidebar-menulink-fadein-before-white 0.4s cubic-bezier(0.86, 0, 0.07, 1) 0s forwards;
}

.c-sidebar-header {
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 1.4;
  margin-top: 10px;
}

.c-sidebar-location-area {
  margin-bottom: 10px;
}
@media screen and (max-height: 640px) {
  .c-sidebar-location-area {
    display: none;
  }
}

.c-sidebar-location-name {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  margin-top: 5px;
}

.c-sidebar-location-lead {
  display: inline-block;
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.2;
}

.c-sidebar-contact-tel {
  display: inline;
  vertical-align: top;
}

.c-sidebar-contact-tel-other {
  display: inline;
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: left;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .c-sidebar-contact-tel-other {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.75;
  }
}

.c-sidebar-contact-lead {
  display: inline-block;
  width: 100%;
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.4;
  margin-bottom: 10px;
  text-align: left;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .c-sidebar-contact-lead {
    font-size: 1.2rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.75;
    margin-bottom: 5px;
  }
}

.c-sidebar-contact-link {
  display: inline-block;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.c-sidebar-contact-link:hover {
  opacity: 0.7;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  text-decoration: underline;
}

.c-sidebar-googlemaparea {
  display: block;
  text-align: center;
}

.c-sidebar-googlemaplink {
  display: block;
  text-align: center;
  background-color: #000000;
  -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
          box-shadow: 1px 0px 10px 1px #01CE97;
  color: #ffffff;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.1;
  padding: 6px 5px 2px 5px;
  margin-top: 10px;
  margin-bottom: 10px;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.c-sidebar-googlemaplink:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  letter-spacing: 0.05em;
  text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
  -webkit-box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
          box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
}

@media screen and (max-height: 640px) {
  .c-sidebar-sns-wrapper {
    display: none;
  }
}

.c-sidebar-snsarea {
  -webkit-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto 10px auto;
}

.c-footer-area-socialicon {
  width: 30px;
  text-align: center;
}

.c-sidebar-snslink {
  font-size: 2rem;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0) perspective(0);
          transform: translate3d(0, 0, 0) perspective(0);
}
@media screen and (max-width: 767px) {
  .c-sidebar-snslink {
    font-size: 1.4rem;
  }
}
.c-sidebar-snslink:hover {
  -webkit-transform: scale3d(1.1, 1.1, 1.1) perspective(0);
          transform: scale3d(1.1, 1.1, 1.1) perspective(0);
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  color: #FCF103;
  text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
}

.c-sidebar-lang-wrapper {
  display: block;
  width: 100%;
}

.c-sidebar-lang-area {
  position: relative;
  width: 100%;
  display: block;
  font-size: 1rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.1;
  text-align: center;
  color: #ffffff !important;
  padding: 2px 5px;
  margin: 0 auto;
  background-color: #000000;
  border: 2px solid #000000;
  z-index: 1;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
          box-shadow: 1px 0px 10px 1px #01CE97;
  text-align: center;
}
.c-sidebar-lang-area:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
  -webkit-box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
          box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
}
.c-sidebar-lang-area:hover .c-sidebar-lang-nav-link {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  letter-spacing: 0.05em;
}

.c-sidebar-lang-imgarea {
  display: inline-block;
  width: 14%;
  vertical-align: middle;
}

.c-sidebar-lang-selectarea {
  display: inline-block;
  width: calc(80% - 4px);
  vertical-align: middle;
}

.c-sidebar-lang-icon {
  width: auto;
  height: 21px;
  text-align: center;
  padding: 2px;
  margin: 0;
  text-align: center;
}

.c-sidebar-lang-nav-link {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.1;
  text-align: center;
  padding: 0;
  margin: 0;
  padding-right: 15px;
  height: 17px;
  line-height: 17px;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  cursor: pointer;
}
.c-sidebar-lang-nav-link::after {
  content: "";
  position: absolute;
  top: 4px;
  right: 8px;
  border: 7px solid transparent;
  border-top-color: #ffffff;
}

.c-sidebar-lang-submenu {
  position: absolute;
  bottom: 50px;
  left: 50%;
  width: 180px;
  height: 120px;
  max-height: 200px;
  background-color: #000000;
  color: #ffffff;
  border-radius: 2px;
  line-height: 1.75;
  -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
          box-shadow: 1px 0px 10px 1px #01CE97;
  opacity: 0;
  margin: 0 auto 0 auto;
  text-align: center;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  visibility: hidden;
  -webkit-transform: translate3d(-50%, 20px, 0) perspective(0);
          transform: translate3d(-50%, 20px, 0) perspective(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  z-index: -9999;
}
.c-sidebar-lang-submenu.active {
  display: block;
  opacity: 1;
  -webkit-transform: translate3d(-50%, 0, 0) perspective(0);
          transform: translate3d(-50%, 0, 0) perspective(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  pointer-events: auto;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  z-index: 9999;
}
@media screen and (max-width: 767px) {
  .c-sidebar-lang-submenu {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate3d(-50%, -40%, 0) perspective(0);
            transform: translate3d(-50%, -40%, 0) perspective(0);
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    width: 180px;
    background-color: #000000;
    color: #ffffff;
    border-radius: 2px;
    line-height: 1.75;
    -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
            box-shadow: 1px 0px 10px 1px #01CE97;
    opacity: 0;
    margin: 0 auto 0 auto;
    text-align: center;
    -webkit-transition: ease 0.3s;
    transition: ease 0.3s;
    visibility: hidden;
    z-index: -9999;
  }
  .c-sidebar-lang-submenu.active {
    display: block;
    opacity: 1;
    -webkit-transform: translate3d(-50%, -50%, 0) perspective(0);
            transform: translate3d(-50%, -50%, 0) perspective(0);
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    pointer-events: auto;
    -webkit-transition: ease 0.3s;
    transition: ease 0.3s;
    z-index: 9999;
  }
}

.c-sidebar-lang-submenu::after,
.c-sidebar-lang-submenu::before {
  content: "";
  position: absolute;
  top: 98%;
  left: 50%;
  border: 15px solid transparent;
  -webkit-transform: translate3d(-50%, 0, 0) rotate3d(0, 0, 1, 180deg) perspective(0);
          transform: translate3d(-50%, 0, 0) rotate3d(0, 0, 1, 180deg) perspective(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  height: 0;
}

.c-sidebar-lang-submenu::after {
  border-bottom-color: #000000;
}

.c-sidebar-lang-submenu-items {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0) perspective(0);
          transform: translate3d(-50%, -50%, 0) perspective(0);
  text-align: center;
  margin: 0 auto;
  list-style: none;
  padding: 10px 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.c-sidebar-lang-submenu-items a {
  position: relative;
}

.c-sidebar-lang-submenu-item {
  display: block;
  text-align: left;
}

.c-sidebar-lang-submenu-link {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  color: #ffffff;
  padding: 5px;
  display: block;
  text-align: center;
  font-size: 1.6rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  text-indent: 2px;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .c-sidebar-lang-submenu-link {
    font-size: 1.8rem;
    line-height: 1.4;
  }
}

.c-sidebar-lang-submenu-link:hover {
  text-decoration: underline;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

/*==============================
-Loading
===============================*/
.c-loading-wrapper2 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  margin: 0 auto;
  text-align: center;
  overflow: hidden;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
  -webkit-transition: ease-out 0.3s;
  transition: ease-out 0.3s;
}
@media screen and (max-width: 1520px) {
  .c-loading-wrapper2 {
    background-size: contain;
  }
}
@media screen and (max-width: 767px) {
  .c-loading-wrapper2 {
    background-size: cover;
  }
}
.c-loading-wrapper2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.1);
  z-index: 0;
  background: linear-gradient(-45deg, rgba(72, 72, 0, 0.6) 0%, rgba(25, 0, 22, 0.3) 23%, rgba(0, 21, 5, 0.3) 46%, rgba(2, 0, 35, 0.2) 69%, rgba(0, 0, 0, 0.5) 100%);
  background-size: 400% 400%;
  -webkit-animation: c-loading-gradient 10s ease 0s infinite;
  animation: c-loading-gradient 10s ease 0s infinite;
}
@media screen and (max-width: 767px) {
  .c-loading-wrapper2::before {
    background: none;
    background-color: rgba(0, 0, 0, 0.3);
    background-size: cover;
    background-position: center center;
    -webkit-animation: none;
    animation: none;
  }
}

@-webkit-keyframes c-loading-gradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
@keyframes c-loading-gradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
.c-loading-area2 {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  text-align: center;
  margin: 0 auto;
  text-align: center;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .c-loading-area2 {
    display: none;
  }
}

.c-loading-areapicture2 {
  width: 100%;
  height: 100%;
}
@-webkit-keyframes c-loading-logo1 {
  0% {
    stroke-dashoffset: 1000;
    fill: #ffffff;
    stroke: #00FFBB;
    stroke-width: 5;
  }
  5% {
    stroke-dashoffset: 0;
    fill: #ffffff;
    stroke: #01CE97;
    stroke-width: 8;
  }
  25% {
    stroke-dashoffset: 0;
    fill: #ffffff;
    stroke: #00FFBB;
    stroke-width: 10;
  }
  40% {
    stroke-dashoffset: 0;
    fill: #ffffff;
    stroke: #86FFDF;
    stroke-width: 4;
  }
  75% {
    stroke-dashoffset: 0;
    fill: #ffffff;
    stroke: #ffffff;
    stroke-width: 6;
  }
  100% {
    stroke-dashoffset: 0;
    fill: transparent;
    stroke: transparent;
    stroke-width: 0;
  }
}
@keyframes c-loading-logo1 {
  0% {
    stroke-dashoffset: 1000;
    fill: #ffffff;
    stroke: #00FFBB;
    stroke-width: 5;
  }
  5% {
    stroke-dashoffset: 0;
    fill: #ffffff;
    stroke: #01CE97;
    stroke-width: 8;
  }
  25% {
    stroke-dashoffset: 0;
    fill: #ffffff;
    stroke: #00FFBB;
    stroke-width: 10;
  }
  40% {
    stroke-dashoffset: 0;
    fill: #ffffff;
    stroke: #86FFDF;
    stroke-width: 4;
  }
  75% {
    stroke-dashoffset: 0;
    fill: #ffffff;
    stroke: #ffffff;
    stroke-width: 6;
  }
  100% {
    stroke-dashoffset: 0;
    fill: transparent;
    stroke: transparent;
    stroke-width: 0;
  }
}
.c-loading-line-cyber1 {
  fill: #fff;
  stroke-dasharray: 100;
  stroke-dashoffset: 100;
  stroke-width: 10;
  -webkit-animation: c-loading-logo1 1.8s ease 0s both;
          animation: c-loading-logo1 1.8s ease 0s both;
}

.c-loading-line-cyber2 {
  fill: #fff;
  stroke-dasharray: 100;
  stroke-dashoffset: 100;
  stroke-width: 10;
  -webkit-animation: c-loading-logo1 2.1s ease 1s both;
          animation: c-loading-logo1 2.1s ease 1s both;
}

.c-loading-line-cyber3 {
  fill: #fff;
  stroke-dasharray: 100;
  stroke-dashoffset: 100;
  stroke-width: 10;
  -webkit-animation: c-loading-logo1 1.6s ease 2s both;
          animation: c-loading-logo1 1.6s ease 2s both;
}

.svg {
  -webkit-filter: url("#blur");
          filter: url("#blur");
}

/*==============================
-Loading
===============================*/
.c-loading-wrapper3 {
  position: fixed;
  background-color: #000000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  margin: 0 auto;
  text-align: center;
  -webkit-animation: c-loading-end3 0.9s ease-out 0.9s both;
          animation: c-loading-end3 0.9s ease-out 0.9s both;
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

@-webkit-keyframes c-loading-end3 {
  0% {
    opacity: 1;
    z-index: 99999;
  }
  50% {
    -webkit-filter: blur(100px);
            filter: blur(100px);
  }
  99% {
    opacity: 0;
    -webkit-filter: blur(100px);
            filter: blur(100px);
  }
  100% {
    display: none;
    z-index: -9999;
  }
}

@keyframes c-loading-end3 {
  0% {
    opacity: 1;
    z-index: 99999;
  }
  50% {
    -webkit-filter: blur(100px);
            filter: blur(100px);
  }
  99% {
    opacity: 0;
    -webkit-filter: blur(100px);
            filter: blur(100px);
  }
  100% {
    display: none;
    z-index: -9999;
  }
}
.c-loading-area3 {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  text-align: center;
  margin: 0 auto;
  top: calc(50% - 30px);
  text-align: center;
}

.c-loading3,
.c-loading3:before,
.c-loading3:after {
  background: #ffffff;
  -webkit-animation: load1 2.4s both ease-in-out;
          animation: load1 2.4s both ease-in-out;
  width: 1em;
  height: 4em;
}

.c-loading3 {
  position: relative;
  color: #01CE97;
  text-indent: -9999em;
  margin: 88px auto;
  position: relative;
  font-size: 11px;
  -webkit-transform: translate3d(0, 0, 0) perspective(0);
          transform: translate3d(0, 0, 0) perspective(0);
  -webkit-animation-delay: -0.16s;
          animation-delay: -0.16s;
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.c-loading3:before,
.c-loading3:after {
  content: "";
  position: absolute;
  top: 0;
}

.c-loading3:before {
  left: -1.5em;
  -webkit-animation-delay: -0.32s;
          animation-delay: -0.32s;
}

.c-loading3:after {
  left: 1.5em;
}

@-webkit-keyframes load1 {
  0%, 40%, 50%, 90%, 100% {
    -webkit-box-shadow: 0 0;
            box-shadow: 0 0;
    height: 4em;
  }
  20%, 70% {
    -webkit-box-shadow: 0 -2em;
            box-shadow: 0 -2em;
    height: 5em;
    text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
    -webkit-box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
            box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
  }
}

@keyframes load1 {
  0%, 40%, 50%, 90%, 100% {
    -webkit-box-shadow: 0 0;
            box-shadow: 0 0;
    height: 4em;
  }
  20%, 70% {
    -webkit-box-shadow: 0 -2em;
            box-shadow: 0 -2em;
    height: 5em;
    text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
    -webkit-box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
            box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
  }
}
/*==============================
-Loading 現在未使用 20190414
===============================*/
.c-loading-wrapper4 {
  position: relative;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1170px) {
  .c-loading-wrapper4 {
    height: 100%;
    padding-top: 100%;
  }
}

.c-loading-wrapper4::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 767px) {
  .c-loading-wrapper4::before {
    background-color: rgba(0, 0, 0, 0.3);
  }
}

.c-loading-area4 {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  text-align: center;
  margin: 0 auto;
  text-align: center;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .c-loading-area4 {
    display: none;
  }
}

.c-loading-areapicture4 {
  width: 100%;
  height: 100%;
}
@-webkit-keyframes c-loading-cyber1 {
  0% {
    stroke-dasharray: 5 10 500 20;
    stroke-dashoffset: 3000;
    fill: #ffffff;
    stroke: #ffffff;
    stroke-width: 0.1;
    stroke-opacity: 0.9;
  }
  10% {
    stroke-dashoffset: 0;
    fill: #ffffff;
    stroke: #0042FF;
    stroke-width: 2;
    stroke-opacity: 1;
  }
  20% {
    fill: #ffffff;
    stroke: #0090FF;
    stroke-width: 1.4;
  }
  30% {
    fill: #ffffff;
    stroke: #00CCFF;
    stroke-width: 0.2;
  }
  40% {
    fill: #62FEF9;
    stroke: #81EFFF;
    stroke-width: 0.5;
    stroke-opacity: 0.9;
  }
  50% {
    fill: #ffffff;
    stroke: #ffffff;
    stroke-width: 0.5;
    stroke-opacity: 0.9;
  }
  90% {
    fill: #ffffff;
    stroke: #ffffff;
    stroke-width: 0.5;
    stroke-opacity: 0.9;
  }
  100% {
    fill: transparent;
    stroke: transparent;
    stroke-width: 0;
  }
}
@keyframes c-loading-cyber1 {
  0% {
    stroke-dasharray: 5 10 500 20;
    stroke-dashoffset: 3000;
    fill: #ffffff;
    stroke: #ffffff;
    stroke-width: 0.1;
    stroke-opacity: 0.9;
  }
  10% {
    stroke-dashoffset: 0;
    fill: #ffffff;
    stroke: #0042FF;
    stroke-width: 2;
    stroke-opacity: 1;
  }
  20% {
    fill: #ffffff;
    stroke: #0090FF;
    stroke-width: 1.4;
  }
  30% {
    fill: #ffffff;
    stroke: #00CCFF;
    stroke-width: 0.2;
  }
  40% {
    fill: #62FEF9;
    stroke: #81EFFF;
    stroke-width: 0.5;
    stroke-opacity: 0.9;
  }
  50% {
    fill: #ffffff;
    stroke: #ffffff;
    stroke-width: 0.5;
    stroke-opacity: 0.9;
  }
  90% {
    fill: #ffffff;
    stroke: #ffffff;
    stroke-width: 0.5;
    stroke-opacity: 0.9;
  }
  100% {
    fill: transparent;
    stroke: transparent;
    stroke-width: 0;
  }
}
@-webkit-keyframes c-loading-cyber2 {
  0% {
    stroke-dasharray: 15 5 500 15;
    stroke-dashoffset: 3000;
    fill: #ffffff;
    stroke: #ffffff;
    stroke-width: 0.2;
    stroke-opacity: 0.9;
  }
  10% {
    stroke-dashoffset: 0;
    fill: #ffffff;
    stroke: #FFF000;
    stroke-width: 1.4;
    stroke-opacity: 1;
  }
  20% {
    stroke-dasharray: 0;
    fill: #ffffff;
    stroke: #FFF960;
    stroke-width: 0.8;
  }
  30% {
    fill: #ffffff;
    stroke: #FFEB7B;
    stroke-width: 0.5;
    stroke-opacity: 0.9;
  }
  40% {
    fill: #ffffff;
    stroke: #FCFF00;
    stroke-width: 0.3;
  }
  90% {
    fill: #ffffff;
    stroke: #ffffff;
    stroke-width: 0.3;
  }
  100% {
    fill: transparent;
    stroke: transparent;
    stroke-width: 0;
  }
}
@keyframes c-loading-cyber2 {
  0% {
    stroke-dasharray: 15 5 500 15;
    stroke-dashoffset: 3000;
    fill: #ffffff;
    stroke: #ffffff;
    stroke-width: 0.2;
    stroke-opacity: 0.9;
  }
  10% {
    stroke-dashoffset: 0;
    fill: #ffffff;
    stroke: #FFF000;
    stroke-width: 1.4;
    stroke-opacity: 1;
  }
  20% {
    stroke-dasharray: 0;
    fill: #ffffff;
    stroke: #FFF960;
    stroke-width: 0.8;
  }
  30% {
    fill: #ffffff;
    stroke: #FFEB7B;
    stroke-width: 0.5;
    stroke-opacity: 0.9;
  }
  40% {
    fill: #ffffff;
    stroke: #FCFF00;
    stroke-width: 0.3;
  }
  90% {
    fill: #ffffff;
    stroke: #ffffff;
    stroke-width: 0.3;
  }
  100% {
    fill: transparent;
    stroke: transparent;
    stroke-width: 0;
  }
}
@-webkit-keyframes c-loading-cyber3 {
  0% {
    stroke-dashoffset: 3000;
    fill: #ffffff;
    stroke: #ffffff;
    stroke-width: 0.5;
    stroke-opacity: 0.9;
  }
  10% {
    stroke-dashoffset: 0;
    fill: #ffffff;
    stroke: #00FFA2;
    stroke-width: 2.6;
  }
  20% {
    fill: #ffffff;
    stroke: #5AFFAF;
    stroke-width: 1;
    stroke-opacity: 1;
  }
  30% {
    fill: #ffffff;
    stroke: #99FFDC;
    stroke-width: 0.2;
  }
  40% {
    fill: #ffffff;
    stroke: #ffffff;
    stroke-width: 0.1;
    stroke-opacity: 0.8;
  }
  50% {
    fill: #ffffff;
    stroke: #ffffff;
    stroke-width: 0.1;
    stroke-opacity: 0.8;
  }
  100% {
    fill: transparent;
    stroke: transparent;
    stroke-width: 0;
  }
}
@keyframes c-loading-cyber3 {
  0% {
    stroke-dashoffset: 3000;
    fill: #ffffff;
    stroke: #ffffff;
    stroke-width: 0.5;
    stroke-opacity: 0.9;
  }
  10% {
    stroke-dashoffset: 0;
    fill: #ffffff;
    stroke: #00FFA2;
    stroke-width: 2.6;
  }
  20% {
    fill: #ffffff;
    stroke: #5AFFAF;
    stroke-width: 1;
    stroke-opacity: 1;
  }
  30% {
    fill: #ffffff;
    stroke: #99FFDC;
    stroke-width: 0.2;
  }
  40% {
    fill: #ffffff;
    stroke: #ffffff;
    stroke-width: 0.1;
    stroke-opacity: 0.8;
  }
  50% {
    fill: #ffffff;
    stroke: #ffffff;
    stroke-width: 0.1;
    stroke-opacity: 0.8;
  }
  100% {
    fill: transparent;
    stroke: transparent;
    stroke-width: 0;
  }
}
.c-loading-light-cyber1,
.c-loading-light-cyber3 {
  -webkit-animation: c-loading-cyber1 4.6s ease 0.4s both;
          animation: c-loading-cyber1 4.6s ease 0.4s both;
}

.c-loading-light-cyber2,
.c-loading-light-cyber4 {
  -webkit-animation: c-loading-cyber2 5.3s ease 0s both;
          animation: c-loading-cyber2 5.3s ease 0s both;
}

.c-loading-light-cyber5 {
  -webkit-animation: c-loading-cyber3 4.2s ease 0.8s both;
          animation: c-loading-cyber3 4.2s ease 0.8s both;
}

/*==============================
-Component
===============================*/
.c-premium-area {
  margin-bottom: 20px;
}

.c-premium-title {
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.75;
  text-align: left;
  margin-bottom: 20px;
  color: #000000;
}

.c-premium-titlelink {
  display: inline-block;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.75;
  text-align: left;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.c-premium-titlelink:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
}

.c-premium-link {
  position: relative;
  top: 0;
  left: 0;
  overflow: hidden;
}

.c-premium-image {
  position: relative;
  top: 0;
  left: 0;
  padding-top: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  color: #ffffff;
  z-index: 0;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .c-premium-image {
    display: none;
  }
}
.c-premium-image:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale3d(1.1, 1.1, 1.1) perspective(0);
          transform: scale3d(1.1, 1.1, 1.1) perspective(0);
}

.c-premium-image-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .c-premium-image-sp {
    display: block;
    position: relative;
    top: 0;
    left: 0;
    padding-top: 56.25%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    color: #ffffff;
    z-index: 0;
    -webkit-transition: ease 0.3s;
    transition: ease 0.3s;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    -webkit-transform: perspective(0);
            transform: perspective(0);
  }
}
.c-premium-image-sp:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale3d(1.1, 1.1, 1.1) perspective(0);
          transform: scale3d(1.1, 1.1, 1.1) perspective(0);
}

.p-system-week-area {
  background-color: rgba(0, 0, 0, 0.7);
  padding: 20px;
  margin-bottom: 40px;
}

.c-premium-desc {
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: left;
  margin-bottom: 40px;
  font-family: "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
}

.c-premium-name {
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.1;
  text-align: left;
  color: #ffffff;
}

.c-premium-date {
  display: block;
  width: 100%;
  margin-bottom: 10px;
}

.c-premium-date span {
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 3px;
  line-height: 1.2;
  margin-bottom: 10px;
  padding: 4px 10px 2px 10px;
  background-color: rgba(130, 130, 130, 0.5);
  color: #ffffff;
}

.c-premium-wrapper,
.c-spprice-wrapper {
  padding-bottom: 80px;
}

/*==============================
-Component
===============================*/
.c-banner-area {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  overflow: hidden;
  border: 1px solid #000000;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .c-banner-area {
    margin-bottom: 40px;
  }
}

.c-banner-link {
  position: relative;
  top: 0;
  left: 0;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.c-banner-link:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}
.c-banner-link:hover .c-banner-image {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale3d(1.1, 1.1, 1.1);
          transform: scale3d(1.1, 1.1, 1.1);
}
.c-banner-link:hover .c-banner-image.c-banner-image::before {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  background-color: rgba(0, 0, 0, 0);
}

.c-banner-image {
  position: relative;
  top: 0;
  left: 0;
  height: 160px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  color: #ffffff;
  z-index: 0;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .c-banner-image {
    height: 160px;
  }
}

.c-banner-image::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: -1;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

.nodark.c-banner-image::before {
  background-color: transparent;
}

.c-banner-title {
  position: absolute;
  top: 0;
  left: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  text-align: center;
  margin: 0 auto;
  width: 100%;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
  vertical-align: middle;
  padding: 10px;
  color: #ffffff;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

/*==============================
-Component
===============================*/
.c-nasdaq-wrapper {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  width: 60%;
  padding: 1vw 0;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .c-nasdaq-wrapper {
    width: 100%;
    padding: 1vw 4vw;
  }
}

.c-nasdaq-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
}

.c-nasdaq-logo {
  display: block;
  width: 100%;
  height: auto;
  padding: 3%;
}

.c-nasdaq-logo-img {
  display: block;
  width: 100%;
  height: auto;
}

.c-nasdaq-title-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  width: 100%;
  margin: 0.5vw auto 0.5vw auto;
}
@media screen and (max-width: 767px) {
  .c-nasdaq-title-area {
    margin: 1vw auto 2vw auto;
  }
}

.c-nasdaq-title-img-area {
  width: 25%;
}
@media screen and (max-width: 767px) {
  .c-nasdaq-title-img-area {
    width: 28%;
  }
}

.c-nasdaq-title-text-area {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .c-nasdaq-title-text-area {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.c-nasdaq-title-text-area {
  display: inline-block;
  font-size: clamp(1rem, 0.8vw, 5rem);
  font-weight: 900;
  color: #ffffff;
  width: auto;
  padding: 0;
  letter-spacing: 0.1em;
  line-height: 1.4;
  text-align: center;
  border-bottom: 1px solid #ffffff;
  font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
}
@media screen and (max-width: 1170px) {
  .c-nasdaq-title-text-area {
    font-size: clamp(1rem, 1.4vw, 5rem);
  }
}
@media screen and (max-width: 767px) {
  .c-nasdaq-title-text-area {
    font-size: clamp(1rem, 2.7vw, 5rem);
  }
}
.c-nasdaq-title-text-area span {
  display: inline-block;
  font-size: clamp(1rem, 1.1vw, 5rem);
  font-weight: bold;
  color: #ffffff;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
  margin: 0 auto;
  border-bottom: 1px solid #ffffff;
}
@media screen and (max-width: 1170px) {
  .c-nasdaq-title-text-area span {
    font-size: clamp(1rem, 1.4vw, 5rem);
  }
}
@media screen and (max-width: 767px) {
  .c-nasdaq-title-text-area span {
    font-size: clamp(1rem, 2.7vw, 5rem);
  }
}

.c-nasdaq-item-area {
  display: block;
  width: 100%;
}

.c-nasdaq-subtitle-area {
  display: block;
  width: 100%;
  text-align: center;
  margin: 0.5vw auto 0 auto;
}
@media screen and (max-width: 767px) {
  .c-nasdaq-subtitle-area {
    margin: 2vw auto 0 auto;
  }
}

.c-nasdaq-subtitle {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .c-nasdaq-subtitle {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.c-nasdaq-subtitle {
  display: inline-block;
  position: relative;
  top: 0;
  left: 0;
  background-color: #ffffff;
  border-radius: 3vw;
  font-size: clamp(1rem, 0.7vw, 5rem);
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #101010;
  width: auto;
  padding: 0.6vw 1vw 0.4vw 1vw;
  font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
}
@media screen and (max-width: 1170px) {
  .c-nasdaq-subtitle {
    font-size: clamp(1rem, 1.6vw, 5rem);
    padding: 1vw 2.5vw;
  }
}
@media screen and (max-width: 767px) {
  .c-nasdaq-subtitle {
    font-size: clamp(1rem, 2.8vw, 5rem);
    padding: 1vw 2.5vw;
  }
}

.c-nasdaq-item-box {
  display: block;
  width: 100%;
  border-top: 2px solid #ffffff;
}
/*==============================
-P-404
===============================*/
.p-404-wrapper {
  display: block;
  position: relative;
  padding: 120px 0;
  text-align: center;
  margin: 0 auto;
  color: #444;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-404-wrapper {
    padding: 60px 0;
  }
}

.p-404-title {
  font-size: 10rem;
  font-weight: bold;
  letter-spacing: 10px;
  text-indent: 10px;
  line-height: 1.4;
  margin-bottom: 20px;
}

.p-404-text {
  font-size: 5rem;
  font-weight: bold;
  letter-spacing: 3px;
  text-indent: 3px;
  line-height: 1.4;
  margin-bottom: 80px;
}

.p-404-lead {
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 2px;
  text-indent: 2px;
  line-height: 1.6;
  margin-bottom: 20px;
}

.p-404-leadlink {
  display: inline;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 2px;
  text-indent: 2px;
  line-height: 1.6;
  margin-bottom: 40px;
  color: #f00;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-404-leadlink:hover {
  text-decoration: underline;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

/*==============================
-Page
===============================*/
.p-privacy-wrapper {
  display: block;
  position: relative;
  width: 100%;
  padding: 180px 0;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-privacy-wrapper {
    padding: 120px 0;
  }
}

.p-privacy-header {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-privacy-header {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-privacy-header {
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
}
.p-privacy-header span {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-privacy-header span {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-privacy-header span {
  font-size: 1.4rem;
  text-align: center;
}

.p-privacy-text {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-privacy-text {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-privacy-text {
  text-align: center;
  margin-bottom: 40px;
}

.p-privacy-lead {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-privacy-lead {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-privacy-lead {
  margin-bottom: 40px;
}

.p-privacy-descarea {
  display: block;
  width: 100%;
}

.p-privacy-title {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-privacy-title {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-privacy-title {
  font-size: 1.6rem;
  font-weight: bold;
  color: #555;
  margin-bottom: 10px;
  border-bottom: 1px solid #ccc;
}

.p-privacy-desc {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-privacy-desc {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-privacy-desc {
  position: relative;
  display: inline-block;
  color: #000000;
  margin: 0 auto 40px auto;
  z-index: 1;
}

/*==============================
-Page
===============================*/
.p-calendar-wrapper {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  padding: 200px 0 60px 0;
}

.p-calendar-area {
  width: 100%;
  text-align: center;
  margin: 0;
}

.p-calendar-title {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-calendar-title {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-calendar-title {
  display: inline-block;
  position: relative;
  top: 0;
  left: 0;
  width: auto;
  font-size: 3rem;
  font-weight: bold;
  text-align: center;
  margin: 0 auto;
  margin-bottom: 20px;
  color: #444;
}
.p-calendar-title span {
  font-size: 3rem;
  font-style: normal;
}
@media screen and (max-width: 767px) {
  .p-calendar-title span {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .p-calendar-title {
    font-size: 3rem;
  }
}
.p-calendar-title::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #444;
  margin: 0 auto;
  text-align: center;
}

.p-calendar-cont-wrapper {
  display: block;
  width: 100%;
  padding: 120px 0;
}

.p-calendar-sub-title {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-calendar-sub-title {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-calendar-sub-title {
  font-size: 2.4rem;
  font-weight: bold;
  color: #333;
}

.p-calendar-item-wrapper {
  width: 100%;
}
.p-calendar-item-wrapper td {
  width: 14.28%;
  font-size: 1.6rem;
  font-weight: normal;
  text-align: left;
  margin: 0 auto;
  padding: 10px;
  height: 120px;
  min-height: 200px;
  border: 1px solid #ccc;
}
.p-calendar-item-wrapper tr:nth-child(1) td {
  text-align: center;
  height: auto;
  min-height: auto;
  vertical-align: middle;
}

.p-calendar-select-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-calendar-select-text {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-calendar-select-text {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-calendar-select-text {
  display: inline-block;
  font-size: 2.4rem;
  font-weight: bold;
  color: #333;
  padding: 10px 20px;
}

.p-calendar-wrapper {
  display: block;
  width: 100%;
}

.p-calendar-cell {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 14.28%;
  padding: 0;
  height: auto;
  min-height: 160px;
  border: 1px solid #ccc;
}

.p-calendar-box,
.p-calendar-box-sat,
.p-calendar-box-sun {
  height: 30px;
  min-height: 30px;
  padding: 5px 0;
}

.p-calendar-month-select-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}

.p-calendar-select-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
}

.p-calendar-header {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-calendar-header {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-calendar-header {
  display: block;
  font-size: 1.1rem;
  text-align: center;
  width: 100%;
  margin: 0 auto;
}

.p-calendar-area-form {
  width: 100%;
  height: 100%;
}

.p-calendar-date {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-calendar-date {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-calendar-date {
  display: block;
  font-size: 1.2rem;
  text-align: center;
  width: 100%;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  margin: 0 auto;
  width: 100%;
  height: 100%;
  padding: 0;
}
.p-calendar-date:hover {
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  opacity: 0.7;
  text-decoration: underline;
  cursor: pointer;
}

.p-calendar-select-item:nth-child(2) {
  margin-left: 2px;
}

.p-calendar-select-item:nth-child(3) {
  margin-left: 4px;
}

.p-calendar-select-box {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-calendar-select-box {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-calendar-select-box {
  display: block;
  font-size: 1.2rem;
  text-align: center;
  line-height: 1;
  width: 100%;
  border: 1px solid #888;
  color: #111;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  margin: 0 auto;
  padding: 3px 5px;
  border-radius: 5px;
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
}
@media screen and (max-width: 767px) {
  .p-calendar-select-box {
    font-size: 2rem;
  }
}

.p-calendar-btn {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-calendar-btn {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-calendar-btn {
  display: block;
  font-size: 1.2rem;
  text-align: center;
  line-height: 1;
  width: 100%;
  background-color: #888;
  border: 1px solid #888;
  color: #ffffff;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  margin: 0 auto;
  padding: 5px 5px;
}
.p-calendar-btn:hover {
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  background-color: #ffffff;
  color: #888;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .p-calendar-btn {
    font-size: 2rem;
  }
}

.p-calendar-pagination-btn {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-calendar-pagination-btn {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-calendar-pagination-btn {
  display: block;
  font-size: 1.2rem;
  text-align: center;
  line-height: 1;
  width: 20px;
  height: 20px;
  background-color: #888;
  border: 1px solid #888;
  border-radius: 50%;
  color: #ffffff;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  margin: 0 auto;
  padding: 3px 0;
}
.p-calendar-pagination-btn:hover {
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  background-color: #ffffff;
  color: #888;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .p-calendar-pagination-btn {
    padding: 1px 0;
    width: 30px;
    height: 30px;
  }
}

.p-calendar-changedate-btn {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-calendar-changedate-btn {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-calendar-changedate-btn {
  display: block;
  font-size: 1.2rem;
  text-align: center;
  line-height: 1;
  width: 100%;
  background-color: #888;
  border: 1px solid #eee;
  color: #ffffff;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  margin: 0 auto;
  padding: 5px 5px;
}
.p-calendar-changedate-btn:hover {
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  background-color: #ffffff;
  color: #888;
  cursor: pointer;
}

.p-calendar-pagination-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  align-items: center;
}

.p-calendar-todaysbg {
  display: block;
  background-color: #ccc;
  color: #ffffff;
  width: 100%;
  height: 100%;
  padding: 0;
  text-align: center;
}

.p-calendar-pushbg {
  display: block;
  color: #691212;
  font-weight: 900;
  text-align: center;
}
.p-calendar-pushbg.p-calendar-todaysbg {
  color: #ffffff;
}

.p-calendar-closedbg {
  display: block;
  background-color: #ccc;
  width: 20px;
  height: 20px;
  padding: 0;
  text-align: center;
}
.p-calendar-closedbg.p-calendar-todaysbg {
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-calendar-closedbg {
    width: 30px;
    height: 30px;
  }
}

.p-calendar-btnarea {
  margin-top: 20px;
}

.p-calendar-pagination-item:nth-child(1), .p-calendar-pagination-item:nth-child(3) {
  width: 20px;
}
@media screen and (max-width: 767px) {
  .p-calendar-pagination-item:nth-child(1), .p-calendar-pagination-item:nth-child(3) {
    width: 30px;
  }
}
.p-calendar-pagination-item:nth-child(2) {
  width: calc(100% - 40px);
}
@media screen and (max-width: 767px) {
  .p-calendar-pagination-item:nth-child(2) {
    width: calc(100% - 60px);
  }
}

/*==============================

- page > mobile

===============================*/
.p-mobile-menu-header {
  display: block;
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding: 10% 0;
}
.p-mobile-menu-header::before {
  background-color: rgba(0, 0, 0, 0.4);
}
@media screen and (max-width: 767px) {
  .p-mobile-menu-header {
    padding: 20% 0;
  }
}

.p-mobile-menu-header-title {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  font-size: 6rem;
  text-align: center;
  color: #ffffff;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-mobile-menu-header-title {
    font-size: 3rem;
  }
}

.p-mobile-menu-tab-area {
  background: #000000;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.p-mobile-menu-tab {
  display: block;
  letter-spacing: 0.05em;
  line-height: 1.6;
  font-weight: bold;
  font-size: 2rem;
  padding: 30px 0px;
  text-align: center;
  background: #000000;
  border: 1px solid #691212;
  color: white;
  width: 50%;
}
@media screen and (max-width: 767px) {
  .p-mobile-menu-tab {
    padding: 15px 0;
    font-size: 1.6rem;
  }
}

@media (max-width: 767px) {
  .p-mobile-menu-tab {
    width: 50%;
  }
}
.p-mobile-menu-active {
  background: #691212;
}

.p-mobile-menu-content-area {
  height: auto;
  width: 100%;
}

.p-mobile-menu-content {
  display: none;
}

.p-mobile-menu-show {
  margin: 0px;
  display: block;
}

/*==============================

- page > viptablemenu

===============================*/
.p-viptable-body {
  font-family: "Playfair Display SC", serif;
  color: #E8E1C7;
}

.p-viptable-header {
  display: none;
}

.p-viptable-wrapper {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  padding: 0;
  margin: 0 auto;
  z-index: 0;
}

.p-viptable-movie-wrap {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  display: block;
  text-align: center;
  background-color: #0B0A09;
  border: 5px solid transparent;
  margin: 8vw auto 0 auto;
  padding: 45% 0 0 0;
  overflow: hidden;
}

.p-viptable-movie-box {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  width: 100%;
}

.p-viptable-movie-item {
  width: 100vw;
}

.p-viptable-movie-desc-area {
  display: block;
  width: 100%;
  padding: 1vw 0;
}

.p-viptable-movie-desc {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-viptable-movie-desc {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-viptable-movie-desc {
  color: #E8E1C7;
  font-size: clamp(1.4rem, 1.2vw, 3rem);
  margin: 0 auto;
  text-align: center;
}
.p-viptable-movie-desc span {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-viptable-movie-desc span {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-viptable-movie-desc span {
  display: inline-block;
  color: #E8E1C7;
  font-size: clamp(2rem, 2vw, 5rem);
  font-weight: 900;
}
@media screen and (max-width: 767px) {
  .p-viptable-movie-desc span {
    font-size: clamp(1.4rem, 4vw, 3rem);
  }
}
@media screen and (max-width: 767px) {
  .p-viptable-movie-desc {
    font-size: clamp(1.4rem, 3vw, 3rem);
  }
}

.p-viptable-bg-wrapper {
  position: relative;
  overflow: hidden;
  width: 100%;
  min-height: 100vh;
}

.p-viptable-bg-fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;
  z-index: -10;
}
.p-viptable-bg-fixed::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  backdrop-filter: blur(4px);
  z-index: -1;
}

.p-viptable-tab-area {
  background-color: #0B0A09;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 6vw;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 800px) {
  .p-viptable-tab-area {
    line-height: 8vw;
  }
}

.p-viptable-tab {
  display: block;
  letter-spacing: 0.05em;
  line-height: 6vw;
  font-weight: bold;
  font-size: 2vw;
  padding: 0;
  text-align: center;
  color: #E8E1C7;
  border: 1px solid rgba(199, 169, 107, 0.6);
  background-color: #0B0A09;
  width: 14.3%;
}
@media screen and (max-width: 800px) {
  .p-viptable-tab {
    width: 33.3%;
    font-size: 4vw;
    line-height: 8vw;
  }
}

.p-viptable-lang {
  display: block;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 2vw;
  text-align: center;
  color: #E8E1C7;
  width: 14.2%;
}
@media screen and (max-width: 800px) {
  .p-viptable-lang {
    width: 100%;
    font-size: 2vw;
  }
}

.p-viptable-section {
  display: block;
}

.p-viptable-subtab-area {
  cursor: pointer;
  background-color: #0B0A09;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  position: relative;
  top: 0;
  left: 0;
  margin-bottom: 3vw;
  padding: 1.5vw;
  border-top: 1px solid #BFA77C;
  border-bottom: 1px solid #BFA77C;
}

.p-viptable-subtab {
  display: block;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 3vw;
  text-align: center;
  color: #E8E1C7;
}

.p-viptable-subsec {
  display: none;
}

.p-viptable-active {
  color: #C7A96B;
}

.p-viptable-subactive {
  color: #C7A96B;
  border-bottom: 2px solid #C7A96B;
}

.p-viptable-content-area {
  height: auto;
  width: 100%;
}

.p-viptable-content {
  display: none;
}

.p-viptable-show {
  margin: 0px;
  display: block;
  position: relative;
  z-index: 1;
  padding: 10vw 2vw;
}
@media screen and (max-width: 800px) {
  .p-viptable-show {
    padding: 0 4vw;
    padding-top: 30vw;
  }
}

.p-viptable-subshow {
  margin: 0px;
  display: block;
  position: relative;
  z-index: 1;
  padding: 5vw 0;
}

.p-viptable-title {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  font-size: 3vw;
  text-align: center;
  color: #C7A96B;
  margin-bottom: 3vw;
}

.p-viptable-title-sub {
  text-align: center;
  color: #E8E1C7;
  font-size: 2rem;
}

.p-viptable-title-sub-line {
  background: #fff;
  height: 1px;
  width: 70%;
  margin: 10px auto;
}
.p-viptable-title-sub-line:nth-of-type(1) {
  margin-top: 40px;
}

.p-viptable-title-sub {
  display: block;
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.4;
}

.p-vip-table-set-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
}
@media screen and (max-width: 800px) {
  .p-vip-table-set-inner {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.p-vip-table-set-box {
  background-color: #0B0A09;
  border: 1px solid #C7A96B;
  border-radius: 16px;
  text-align: center;
  margin: 15px;
  padding: 15px;
}

.p-vip-table-set-title {
  font-size: 4rem;
  color: #C7A96B;
  border-bottom: 1px solid black;
  background: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(rgba(255, 255, 255, 0.3)), to(transparent));
  background: linear-gradient(to right, transparent, rgba(255, 255, 255, 0.3), transparent);
}

.p-vip-table-set-title span {
  font-size: 2.2rem;
}

.p-vip-table-set-desc {
  position: relative;
  top: 0;
  left: 0;
  text-align: center;
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  padding: 15px 0;
  min-height: 100px;
}
.p-vip-table-set-desc::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  background: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(rgba(255, 255, 255, 0.3)), to(transparent));
  background: linear-gradient(to right, transparent, rgba(255, 255, 255, 0.3), transparent);
  height: 1px;
  width: 100%;
}
@media screen and (max-width: 800px) {
  .p-vip-table-set-desc {
    min-height: 0;
  }
}

.p-vip-table-set-other {
  color: #BFA77C;
  font-size: 1.6rem;
  padding: 10px 0;
}

.p-viptable-add-text {
  background-color: rgba(255, 255, 255, 0.05);
}

.vip-table-bottle-content {
  background-color: #0B0A09;
  padding: 2vw;
}

.p-viptable-bottle-box {
  padding: 0 1vw;
  margin: 3vw;
}

.p-viptable-bottle-cat {
  background-color: #E8E1C7;
  color: black;
}

.p-viptable-drink-contents {
  width: 40%;
  margin: 2vw;
  padding: 5px;
}
@media screen and (max-width: 800px) {
  .p-viptable-drink-contents {
    width: 45%;
  }
}

.p-viptable-bottle-name-en {
  font-size: 2vw;
  display: inline-block;
  width: 65%;
}

.p-viptable-drink-price {
  float: right;
  width: 30%;
  text-align: right;
  font-size: 2rem;
}

.p-viptable-itower-wrap {
  text-align: center;
}

.p-viptable-itower-img {
  width: 80%;
}

.p-viptable-itower-bottle-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 10px;
}

.p-viptable-itower-bottle-desc {
  font-size: 2.2vw;
}
@media screen and (max-width: 800px) {
  .p-viptable-itower-bottle-desc {
    font-size: clamp(1.2rem, 3vw, 2.4rem);
  }
}

.p-viptable-itower-bottle-price {
  font-size: 3.4vw;
  font-weight: bold;
}
@media screen and (max-width: 800px) {
  .p-viptable-itower-bottle-price {
    font-size: clamp(1.4rem, 4vw, 2.4rem);
  }
}

.p-viptable-itower-bottle-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  padding: 2vw;
  background-color: #BFA77C;
  color: #0B0A09;
}

.p-viptable-itower-plus {
  display: inline-block;
  font-size: 8vw;
  font-weight: bold;
}

.p-viptable-itower-drink {
  font-size: 2vw;
  padding: 1vw;
}
@media screen and (max-width: 800px) {
  .p-viptable-itower-drink {
    font-size: clamp(1.2rem, 2.8vw, 2rem);
  }
}

.p-viptable-tower-wrap {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
  font-family: "Playfair Display SC", serif;
}

.p-viptable-drink-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.p-viptable-drink-inner {
  padding: 1.2vw 0;
  width: 100%;
}

.p-viptable-drink-img {
  width: 100%;
  padding: 0 2vw;
}

.p-viptable-drink-name {
  font-size: clamp(1.4rem, 2.4vw, 3rem);
  font-weight: bold;
  text-align: left;
  margin: 0.4vw auto;
}
.p-viptable-drink-name span {
  display: block;
  font-size: clamp(1.2rem, 1.8vw, 3rem);
}

.p-viptable-drink-name-en {
  font-size: clamp(1.2rem, 1.8vw, 3rem);
  color: #3cafe9;
  text-align: left;
  line-height: 1.2;
}

.p-viptable-drink-price {
  font-size: clamp(1.4rem, 3vw, 3rem);
  font-weight: bold;
  text-align: left;
}

.p-viptable-price-inner {
  display: block;
  text-align: center;
  padding: 0.5vw;
}

.p-viptable-price-title {
  font-size: clamp(1.4rem, 3vw, 3rem);
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 0.05em;
}

.p-viptable-drink-option-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  background-color: #E8E1C7;
}

.p-viptable-drink-option {
  font-size: 1.8vw;
  font-weight: 900;
  padding: 0.5vw 1vw;
}
.p-viptable-drink-option span {
  color: #FFFF00;
  padding: 0 0.6vw;
  margin-right: 3px;
}

.p-viptable-item-group-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.p-viptable-price-block {
  margin-bottom: 4vw;
}

.p-viptable-item-place {
  display: block;
  width: 100%;
}

.p-viptable-cat-name-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  align-items: center;
  width: 100%;
}

.p-viptable-cat-name {
  display: inline-block;
  width: 90%;
  font-size: 3.6vw;
  font-weight: bold;
  text-align: left;
  margin-top: 0.5vw;
  color: #8C7B4F;
}

.p-viptable-cat-name-img-area {
  display: inline-block;
  width: 10%;
  text-align: right;
  padding: 0.5vw 0;
}

.p-viptable-drink {
  display: inline-block;
  text-align: left;
  width: auto;
}

.p-viptable-drink-jp {
  font-size: clamp(1.2rem, 2.4vw, 2rem);
  text-align: left;
  line-height: 1.2;
  letter-spacing: 0.05em;
}
.p-viptable-drink-jp span {
  display: block;
  font-size: 1.6rem;
}

.p-viptable-drink-en {
  font-size: clamp(1.2rem, 1.8vw, 2rem);
  line-height: 1.2;
  letter-spacing: 0.05em;
}

.block-1 .p-viptable-price-inner {
  background-color: #8C7B4F;
}

.block-2 .p-viptable-price-inner {
  background-color: #256c8f;
}

.block-3 .p-viptable-price-inner {
  background-color: #015322;
}

.block-4 .p-viptable-price-inner {
  background-color: #8b004f;
}

.block-5 .p-viptable-price-inner {
  background-color: #9e3c18;
}

.block-6 {
  border: 2px solid #E8E1C7;
  padding: 10px;
  border-radius: 16px;
}
.block-6 .p-viptable-price-inner {
  border-bottom: 1px solid #E8E1C7;
}
.block-6 .p-viptable-drink-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 16px;
}

.block-7 .p-viptable-price-inner {
  background-color: #7e7977;
}

.p-viptable-drink-grid > * {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 calc(33.333% - 16px);
          flex: 1 1 calc(33.333% - 16px); /* 3列 */
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.p-viptable-food-price {
  font-size: 2.2rem;
  text-align: center;
  color: #E8E1C7;
  padding-bottom: 15px;
}
.p-viptable-food-price span {
  font-size: 3.6rem;
  font-weight: bold;
}

.p-viptable-food-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-top: 4vw;
}

.p-viptable-food-inner {
  text-align: center;
  width: 30%;
  padding: 1vw;
}
@media screen and (max-width: 800px) {
  .p-viptable-food-inner {
    width: 50%;
  }
}

.p-viptable-food-img {
  width: 100%;
}

.p-viptable-food-text {
  background-color: #0B0A09;
  padding: 5px;
}

.p-viptable-food-name {
  font-size: clamp(1.8rem, 3vw, 4rem);
}

.p-viptable-food-name-en {
  font-size: clamp(1.3rem, 2vw, 1.8rem);
  color: #BFA77C;
}

.p-viptable-snack-all {
  font-size: 2.4vw;
  text-align: center;
  border: 1px solid #E8E1C7;
  width: 8vw;
  height: 8vw;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-right: 10px;
  margin-top: 5px;
}

.p-viptable-snack-add {
  font-size: 2.4vw;
  text-align: center;
  padding-bottom: 2vw;
}

.p-viptable-snack-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
}

.p-viptable-snack-item {
  text-align: center;
  margin: 10px;
}

.p-viptable-snack-img {
  width: 100%;
}

.p-viptable-snack-name {
  font-size: 2vw;
  padding: 15px;
}
.p-viptable-snack-name span {
  display: block;
  font-size: 2.6vw;
  font-weight: bold;
}

/*==============================
_p-language
===============================*/
.p-nightlife-space {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  color: #ffffff;
  z-index: 0;
  letter-spacing: 0.05em;
  line-height: 1.4;
}

.p-nightlife-main-bg {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  margin: 0 auto;
  text-align: center;
  background: -webkit-gradient(linear, left top, left bottom, from(#030303), to(#181818));
  background: linear-gradient(to bottom, #030303, #181818);
  z-index: -1;
}

.p-nightlife-main-left-area {
  display: block;
  position: fixed;
  top: 50%;
  left: 0;
  -webkit-transform: translate3d(0, -50%, 0);
          transform: translate3d(0, -50%, 0);
  padding: 0 3vw;
  width: calc((100% - 768px) / 2);
}

.p-nightlife-main-left-img-item {
  width: 50%;
}

.p-nightlife-main-right-area {
  display: block;
  position: fixed;
  top: 50%;
  left: calc((100% - 767px) / 2 + 767px);
  -webkit-transform: translate3d(0, -50%, 0);
          transform: translate3d(0, -50%, 0);
  padding: 0 3vw;
  width: calc((100% - 768px) / 2);
}

.p-nightlife-main-right-img-text {
  display: inline-block;
  font-size: 1.6vw;
  font-weight: bold;
  background-color: white;
  color: black;
  padding: 20px;
}
.p-nightlife-main-right-img-text:hover {
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  background-color: gray;
}
@media screen and (max-width: 767px) {
  .p-nightlife-main-right-img-text {
    font-size: 1.8rem;
    padding: 5px 10px;
  }
}

.p-nightlife-main-wrapper {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  max-width: 768px;
  margin: 0 auto;
  text-align: center;
  background: -webkit-gradient(linear, left top, left bottom, from(#222222), to(#393939));
  background: linear-gradient(to bottom, #222222, #393939);
}
@media screen and (max-width: 767px) {
  .p-nightlife-main-wrapper {
    width: 100%;
    max-width: 100%;
  }
}

.p-nightlife-sec-wrapper {
  display: block;
  width: 100%;
  padding: 3vw 2vw;
}
@media screen and (max-width: 767px) {
  .p-nightlife-sec-wrapper {
    padding: 6vw 4vw;
  }
}

.p-nightlife-sec-title {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-nightlife-sec-title {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-nightlife-sec-title {
  color: #11d7e6;
  font-size: clamp(2rem, 2.6vw, 8rem);
  font-weight: bold;
  margin: 0 auto;
  text-align: center;
  letter-spacing: 0.05em;
  line-height: 1.4;
  padding-bottom: 2vw;
}
@media screen and (max-width: 767px) {
  .p-nightlife-sec-title {
    font-size: clamp(3rem, 6vw, 10rem);
  }
}

.p-nightlife-mv-wrapper {
  display: block;
  width: 100%;
  padding: 8vw 4vw 4vw 4vw;
}
@media screen and (max-width: 767px) {
  .p-nightlife-mv-wrapper {
    padding: 12vw 2vw;
  }
}

.p-nightlife-mv-logo-area {
  padding-bottom: 2vw;
}

.p-nightlife-mv-logo-img {
  width: 60%;
}

.p-nightlife-mv-time-area,
.p-nightlife-mv-title-area,
.p-nightlife-mv-sub-title-area {
  margin: 3vw;
}
@media screen and (max-width: 767px) {
  .p-nightlife-mv-time-area,
  .p-nightlife-mv-title-area,
  .p-nightlife-mv-sub-title-area {
    margin: 6vw;
  }
}

.p-nightlife-mv-time {
  font-size: 3.4rem;
  letter-spacing: 0.05em;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .p-nightlife-mv-time {
    font-size: 2.4rem;
  }
}

.p-nightlife-mv-time span {
  display: block;
  font-weight: bold;
}

.p-nightlife-mv-title {
  font-size: 3rem;
}
@media screen and (max-width: 767px) {
  .p-nightlife-mv-title {
    font-size: 2rem;
  }
}

.p-nightlife-mv-sub-title {
  font-size: 2rem;
}
@media screen and (max-width: 767px) {
  .p-nightlife-mv-sub-title {
    font-size: 1.8rem;
  }
}

.p-nightlife-mv-img {
  display: block;
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 40%;
}

.p-nightlife-about-desc {
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  margin-bottom: 2vw;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .p-nightlife-about-desc {
    font-size: 1.6rem;
  }
}

.p-nightlife-about-catch {
  font-size: 2.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .p-nightlife-about-catch {
    font-size: 1.6rem;
  }
}

.p-nightlife-floor-area {
  text-align: left;
  margin: 1.6vw 0;
}
@media screen and (max-width: 767px) {
  .p-nightlife-floor-area {
    margin: 20px 0;
  }
}

.p-nightlife-floor-name {
  font-size: 2.6rem;
}
@media screen and (max-width: 767px) {
  .p-nightlife-floor-name {
    font-size: 2rem;
  }
}

.p-nightlife-floor-name-head {
  display: inline-block;
  border: 3px solid #ffffff;
  padding: 0 5px;
}
@media screen and (max-width: 767px) {
  .p-nightlife-floor-name-head {
    border: 2px solid #ffffff;
  }
}

.p-nightlife-floor-desc {
  font-size: 2rem;
  padding: 0.6vw 0;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-nightlife-floor-desc {
    font-size: 1.6rem;
  }
}

.p-nightlife-floor-img {
  display: block;
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.p-nightlife-payment-head {
  font-size: 2.2rem;
  padding-bottom: 1.5vw;
}
@media screen and (max-width: 767px) {
  .p-nightlife-payment-head {
    font-size: 2rem;
  }
}

.p-nightlife-payment {
  font-size: 1.8rem;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .p-nightlife-payment {
    font-size: 1.6rem;
  }
}

.p-nightlife-payment span {
  font-weight: bold;
}

.p-nightlife-payment-img-area {
  margin-top: 2vw;
}

.p-nightlife-att-desc-area {
  margin: 1.2vw 0;
}

.p-nightlife-att-desc {
  font-size: 1.8rem;
  text-align: left;
  text-indent: -1em;
  padding-left: 1em;
}
@media screen and (max-width: 767px) {
  .p-nightlife-att-desc {
    font-size: 1.6rem;
  }
}

.p-nightlife-access-map-area {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  margin: 20px 0;
}

.p-nightlife-access-map-area iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.p-nightlife-access-inner {
  font-size: 1.8rem;
  text-align: left;
  margin: 1.2vw 0;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-nightlife-access-inner {
    font-size: 1.6rem;
  }
}

.p-nightlife-access-head {
  font-weight: bold;
  color: #11d7e6;
  font-size: 2.2rem;
  padding-bottom: 6px;
}

.p-nightlife-access-desc {
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  line-height: 1.6;
}

.p-nightlife-faq-desc-area {
  text-align: left;
  margin: 1.8vw 0;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .p-nightlife-faq-desc-area {
    margin-bottom: 40px;
  }
}

.p-nightlife-faq-q {
  font-size: 2rem;
  text-indent: -2em;
  padding-left: 2em;
  padding-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .p-nightlife-faq-q {
    font-size: 1.8rem;
  }
}

.p-nightlife-faq-q span {
  color: #11d7e6;
  font-weight: bold;
}

.p-nightlife-faq-a {
  font-size: 1.8rem;
  text-indent: -2em;
  padding-left: 2em;
}
@media screen and (max-width: 767px) {
  .p-nightlife-faq-a {
    font-size: 1.6rem;
  }
}

.p-nightlife-faq-a span {
  color: #db2525;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .p-nightlife-faq-a span {
    font-size: 1.8rem;
  }
}

.c-nightlife-form-index {
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  margin-bottom: 5px;
  text-align: left;
}

.c-nightlife-form-index-formarea {
  border: solid 1px #888;
  color: white;
  font-size: 1.6rem;
  padding: 10px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin-bottom: 20px;
}

.c-nightlife-form-required {
  color: #c00;
  font-weight: bold;
  margin-left: 10px;
  font-weight: bold;
  font-size: 1.4rem;
}

.c-form-nightlife-confirmation-table {
  display: inline-table;
  position: relative;
  width: 100%;
  margin-bottom: 40px;
}
.c-form-nightlife-confirmation-table th {
  width: 100%;
  padding: 10px 10px 5px 10px;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: left;
  border-top: 1px solid #888;
  float: left;
}
@media screen and (max-width: 767px) {
  .c-form-nightlife-confirmation-table th {
    width: 30%;
  }
}
.c-form-nightlife-confirmation-table td {
  padding: 5px 10px 10px 10px;
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: left;
  word-break: break-all;
  float: left;
}
@media screen and (max-width: 767px) {
  .c-form-nightlife-confirmation-table td {
    font-size: 1.2rem;
  }
}

.c-form-nightlife-privacy-title,
.c-form-nightlife-privacy-descarea {
  color: white;
}

/*==============================
-Page
===============================*/
.p-top-index-wrapper {
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  color: #000000;
  padding: 40px;
}

.p-top-about-wrapper {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-top-about-wrapper {
    margin-bottom: 40px;
  }
}

.p-top-about-box {
  display: inline-block;
  width: calc(100% - 190px);
  height: 160px;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  margin-right: 25px;
}
@media screen and (max-width: 767px) {
  .p-top-about-box {
    width: 100%;
    height: auto;
    margin: 0 auto 40px auto;
  }
}

.p-top-about-area {
  width: 100%;
  overflow: hidden;
  border: 1px solid #333;
}

.p-top-about-faq-box {
  display: inline-block;
  width: 160px;
  height: 160px;
}
@media screen and (max-width: 767px) {
  .p-top-about-faq-box {
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
}

.p-top-about-faq-area {
  width: 100%;
  overflow: hidden;
  border: 1px solid #333;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

.p-top-about-link {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  top: 0;
  left: 0;
  overflow: hidden;
}

.p-top-about-faq-link {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  top: 0;
  left: 0;
  overflow: hidden;
}

.p-top-about-image {
  position: relative;
  top: 0;
  left: 0;
  padding-top: 160px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  color: #ffffff;
  z-index: 0;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .p-top-about-image {
    padding-top: 160px;
  }
}
.p-top-about-image:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale3d(1.1, 1.1, 1.1) perspective(0);
          transform: scale3d(1.1, 1.1, 1.1) perspective(0);
}
.p-top-about-image:hover.p-top-about-image::before {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  background-color: rgba(0, 0, 0, 0);
}

.p-top-about-image::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: -1;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .p-top-about-image::before {
    background-color: rgba(0, 0, 0, 0.1);
  }
}

.p-top-about-faq-image {
  position: relative;
  top: 0;
  left: 0;
  padding-top: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  color: #ffffff;
  z-index: 0;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .p-top-about-faq-image {
    padding-top: 160px;
  }
}
.p-top-about-faq-image:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
.p-top-about-faq-image:hover.p-top-about-faq-image::before {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  background-color: rgba(0, 0, 0, 0);
}

.p-top-about-faq-image::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: -1;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .p-top-about-faq-image::before {
    background-color: rgba(0, 0, 0, 0.1);
  }
}

.p-top-about-title {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.1;
  text-align: left;
  vertical-align: middle;
  padding: 10px;
  color: #ffffff;
}

.p-top-banner-wrapper {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  padding: 40px;
  margin: 0 auto;
  background-color: rgba(0, 0, 0, 0.7);
}

.p-top-banner-link {
  display: block;
  -webkit-transition: ease 0.4s;
  transition: ease 0.4s;
  margin-bottom: 20px;
}
.p-top-banner-link:hover {
  opacity: 0.7;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

.p-top-banner-img {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  padding-top: 25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  margin-bottom: 10px;
  -webkit-transform: perspective(0);
          transform: perspective(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

/*==============================
-Page
===============================*/
.p-top-category-area {
  position: relative;
  display: block;
  width: 100%;
  margin-bottom: 10px;
}

.p-top-category-titlearea {
  display: block;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .p-top-category-titlearea {
    display: block;
    position: relative;
    margin-bottom: 20px;
    text-align: right;
  }
}

.p-top-category-title {
  display: inline-block;
  position: relative;
  z-index: 100;
}

.p-top-category-titlelink {
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: left;
  margin-left: 8px;
  text-decoration: underline;
}
.p-top-category-titlelink:hover {
  opacity: 0.7;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}
@media screen and (max-width: 767px) {
  .p-top-category-titlelink {
    font-size: 1.2rem;
    letter-spacing: 0;
  }
}

/*==============================
-Page
===============================*/
.p-top-event-wrapper {
  position: relative;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .p-top-event-wrapper {
    margin-bottom: 40px;
  }
}

.p-top-event-slide-wrapper {
  padding: 0 40px;
}
@media screen and (max-width: 767px) {
  .p-top-event-slide-wrapper {
    padding: 20px 20px 0 20px;
  }
}

.p-top-event-sliderarea {
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-top-event-sliderarea {
    padding: 0;
  }
}

.p-top-event-postin-image {
  position: relative;
  padding-top: 56.25%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.p-top-event-postin-image:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale3d(1.1, 1.1, 1.1) perspective(0);
          transform: scale3d(1.1, 1.1, 1.1) perspective(0);
}

.p-top-event-reg-wrapper {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-top-event-reg-wrapper {
    margin-bottom: 40px;
  }
}

.p-top-event-reg-box {
  display: inline-block;
  width: calc(100% - 190px);
  height: 160px;
  margin-right: 25px;
}
@media screen and (max-width: 767px) {
  .p-top-event-reg-box {
    width: 100%;
    height: auto;
    margin: 0 auto 40px auto;
  }
}

.p-top-event-reg-area {
  width: 100%;
  overflow: hidden;
  border: 1px solid #333;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

.p-top-event-regdjs-box {
  display: inline-block;
  width: 160px;
  height: 160px;
}
@media screen and (max-width: 767px) {
  .p-top-event-regdjs-box {
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
}

.p-top-event-regdjs-area {
  width: 100%;
  overflow: hidden;
  border: 1px solid #333;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

.p-top-event-reg-link {
  position: relative;
  top: 0;
  left: 0;
  overflow: hidden;
}

.p-top-event-regdjs-link {
  position: relative;
  top: 0;
  left: 0;
  overflow: hidden;
}

.p-top-event-reg-image {
  position: relative;
  top: 0;
  left: 0;
  padding-top: 160px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  color: #ffffff;
  z-index: 0;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .p-top-event-reg-image {
    padding-top: 160px;
  }
}
.p-top-event-reg-image:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale3d(1.1, 1.1, 1.1) perspective(0);
          transform: scale3d(1.1, 1.1, 1.1) perspective(0);
}
.p-top-event-reg-image:hover.p-top-event-reg-image::before {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  background-color: rgba(0, 0, 0, 0);
}

.p-top-event-reg-image::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: -1;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .p-top-event-reg-image::before {
    background-color: rgba(0, 0, 0, 0.1);
  }
}

.p-top-event-regdjs-image {
  position: relative;
  top: 0;
  left: 0;
  padding-top: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  color: #ffffff;
  z-index: 0;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .p-top-event-regdjs-image {
    padding-top: 160px;
  }
}
.p-top-event-regdjs-image:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale3d(1.1, 1.1, 1.1) perspective(0);
          transform: scale3d(1.1, 1.1, 1.1) perspective(0);
}
.p-top-event-regdjs-image:hover.p-top-event-regdjs-image::before {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  background-color: rgba(0, 0, 0, 0);
}

.p-top-event-regdjs-image::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: -1;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .p-top-event-regdjs-image::before {
    background-color: rgba(0, 0, 0, 0.1);
  }
}

.p-top-event-reg-title {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.1;
  text-align: left;
  vertical-align: middle;
  padding: 10px;
  color: #ffffff;
}

.p-top-event-postarea {
  display: block;
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 10px;
  z-index: 999;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-top-event-postarea:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  opacity: 0.7;
}

.p-top-event-date span {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  background-color: rgba(0, 0, 0, 0.7);
  font-size: 2.4rem;
  letter-spacing: 3px;
  line-height: 1.1;
  padding: 5px 15px;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-top-event-date span {
    font-size: 1.6rem;
    font-weight: normal;
    letter-spacing: 0.05em;
  }
}

.p-top-event-postin-name {
  display: block;
  width: 100%;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  text-indent: 2px;
  line-height: 1.2;
  color: #ffffff;
  z-index: 999;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .p-top-event-postin-name {
    font-size: 1.4rem;
  }
}

.p-top-event-specialpost {
  padding: 40px;
}

.p-top-event-specialpost-box {
  width: 100%;
  margin-bottom: 40px;
}

.p-top-event-specialpostlink {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.p-top-event-specialpost-image {
  position: relative;
  padding-top: 56.25%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.p-top-event-specialpost-image:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale3d(1.1, 1.1, 1.1) perspective(0);
          transform: scale3d(1.1, 1.1, 1.1) perspective(0);
}
@media screen and (max-width: 767px) {
  .p-top-event-specialpost-image {
    padding-top: 100%;
  }
}

/*==============================
-Page
===============================*/
.p-top-media-wrapper {
  position: relative;
  padding: 40px;
  background-color: rgba(28, 28, 28, 0.8);
}
@media screen and (max-width: 767px) {
  .p-top-media-wrapper {
    padding: 40px 20px;
  }
}

.p-top-media-titlearea {
  position: relative;
  display: block;
  width: 100%;
}

.p-top-media-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: inline-block;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.1;
  text-align: left;
  vertical-align: middle;
  margin-bottom: 20px;
  color: #ffffff;
}

.p-top-media-title-more {
  position: absolute;
  top: 0;
  right: 0;
  display: inline-block;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.1;
  text-align: right;
  vertical-align: middle;
  margin-bottom: 20px;
  color: #ffffff;
  text-decoration: underline;
}
@media screen and (max-width: 767px) {
  .p-top-media-title-more {
    display: none;
  }
}

.p-top-media-title-more-under {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: block;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.1;
  text-align: right;
  vertical-align: middle;
  margin-bottom: 20px;
  color: #ffffff;
  text-decoration: underline;
}

.p-top-media-sliderarea {
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-top-media-sliderarea {
    padding: 0;
  }
}

.swiper-container {
  border: 1px solid #000000;
  width: 100%;
  padding: 0;
}

.swiper-wrapper {
  width: 100%;
}

.swiper-slide {
  background-position: center;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  .swiper-slide {
    width: 100%;
    height: auto;
  }
}

.p-top-media-postlink {
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  overflow: hidden;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .p-top-media-postlink {
    margin-bottom: 40px;
  }
}

.p-top-media-postin-image {
  position: relative;
  padding-top: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .p-top-media-postin-image {
    padding-top: 56.25%;
  }
}

.p-top-media-postarea {
  display: none;
}
.p-top-media-postarea .active {
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 0;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

.p-top-media-postarea-in {
  display: block;
  position: absolute;
  width: 100%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0) perspective(0);
          transform: translate3d(-50%, -50%, 0) perspective(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  padding: 0;
  margin: 0 auto;
  text-align: center;
  z-index: 999;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-top-media-postarea-in:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  opacity: 0.7;
}

.p-top-media-date,
.p-top-media-date span {
  width: 100%;
  font-size: 1rem;
  letter-spacing: 0.05em;
  line-height: 1.1;
  color: #ffffff;
}

.p-top-media-postin-name {
  font-family: "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.2;
  color: #ffffff;
}

.p-top-media-postlink {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  margin-bottom: 20px;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
}

.p-top-media-hoverimg {
  position: relative;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-top-media-hoverimg:hover {
  -webkit-box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
          box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}
.p-top-media-hoverimg:hover .p-top-media-postin-image {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale3d(1.1, 1.1, 1.1) perspective(0);
          transform: scale3d(1.1, 1.1, 1.1) perspective(0);
}
.p-top-media-hoverimg:hover .p-top-media-postarea {
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  padding: 0;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

.p-top-media-postlink {
  display: block;
}

/*==============================
-Page
===============================*/
.p-top-system-wrapper {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .p-top-system-wrapper {
    padding: 0;
  }
}

.p-top-system-lead {
  color: #000000;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  padding: 0;
  margin-bottom: 10px;
}

.p-top-system-fee-box {
  display: inline-block;
  width: calc(100% - 190px);
  margin-right: 25px;
}
@media screen and (max-width: 1500px) {
  .p-top-system-fee-box {
    width: 100%;
    margin: 0 auto 40px auto;
  }
}
@media screen and (max-width: 1170px) {
  .p-top-system-fee-box {
    width: calc(100% - 190px);
    margin-right: 25px;
  }
}
@media screen and (max-width: 767px) {
  .p-top-system-fee-box {
    width: 100%;
    margin: 0 auto 40px auto;
  }
}

.p-top-system-fee-area {
  width: 100%;
  overflow: hidden;
  border: 1px solid #333;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

.p-top-system-fee-list {
  background-color: #ffffff;
  width: 100%;
  height: 160px;
  border-collapse: separate;
  border-spacing: 2px 2px;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .p-top-system-fee-list {
    height: auto;
    border-spacing: 3px 3px;
    padding: 2px;
  }
}
.p-top-system-fee-list:hover {
  -webkit-transform: translate3d(0, 0, 0) scale3d(1.1, 1.1, 1.1);
          transform: translate3d(0, 0, 0) scale3d(1.1, 1.1, 1.1);
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.p-top-system-fee-list-lead {
  color: #000000;
}

.p-top-system-fee-list-label {
  color: #ffffff;
  background-color: #000000;
}

.p-top-system-fee-list-men {
  color: #122269;
}

.p-top-system-fee-list-women {
  color: #691212;
}

.p-top-system-fee-list-title,
.p-top-system-fee-list-time,
.p-top-system-fee-list-price {
  width: 33.3333%;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.1;
  text-align: center;
  vertical-align: middle;
  padding: 1px 0;
}
.p-top-system-fee-list-title span,
.p-top-system-fee-list-time span,
.p-top-system-fee-list-price span {
  display: block;
  font-size: 1.1rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  text-indent: 1px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-top-system-fee-list-title,
  .p-top-system-fee-list-time,
  .p-top-system-fee-list-price {
    font-size: 1.6rem;
    padding: 2px 0;
  }
}

.p-top-system-fee-list-title {
  font-size: 1.4rem;
}

@media screen and (max-width: 767px) {
  .p-top-system-fee-list-title {
    display: block;
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .p-top-system-fee-list-time {
    display: block;
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .p-top-system-fee-list-price {
    display: inline-block;
    width: 50%;
  }
}

.p-top-system-vip-box {
  display: inline-block;
  width: 160px;
  height: 160px;
}
@media screen and (max-width: 1500px) {
  .p-top-system-vip-box {
    display: block;
  }
}
@media screen and (max-width: 1170px) {
  .p-top-system-vip-box {
    display: inline-block;
  }
}
@media screen and (max-width: 767px) {
  .p-top-system-vip-box {
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
}

.p-top-system-vip-area {
  width: 100%;
  overflow: hidden;
  border: 1px solid #333;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

.p-top-system-vip-link {
  position: relative;
  top: 0;
  left: 0;
  overflow: hidden;
}

.p-top-system-vip-image {
  position: relative;
  top: 0;
  left: 0;
  padding-top: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  color: #ffffff;
  z-index: 0;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .p-top-system-vip-image {
    padding-top: 160px;
  }
}
.p-top-system-vip-image:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale3d(1.1, 1.1, 1.1);
          transform: scale3d(1.1, 1.1, 1.1);
}
.p-top-system-vip-image:hover.p-top-system-vip-image::before {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  background-color: rgba(0, 0, 0, 0);
}

.p-top-system-vip-image::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: -1;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .p-top-system-vip-image::before {
    background-color: rgba(0, 0, 0, 0.1);
  }
}

.p-top-system-vip-title {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.1;
  text-align: left;
  vertical-align: middle;
  padding: 10px;
  color: #ffffff;
}

.p-top-system-att-lead {
  display: table-cell;
  text-align: center;
  color: #c00 !important;
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.75;
  padding: 0;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

.p-top-system-link {
  display: table-cell;
  text-align: center;
  color: #c00 !important;
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.75;
  padding: 0;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-top-system-link:hover {
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  text-decoration: underline;
  color: #f00 !important;
}

.p-top-system-telsection {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  margin: 0 auto;
}

.p-top-system-telarea {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  margin: 0 auto;
  padding: 40px 0;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}
.p-top-system-telarea::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
}

.p-system-admission-area {
  padding-bottom: 2.5vw;
}

.p-system-app-cont {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-system-app-cont {
    padding: 3vw 0 8vw 0;
  }
}

.p-system-app-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  top: 0;
  left: 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 38vw;
  padding: 1.5vw;
  z-index: 0;
}
@media screen and (max-width: 1700px) {
  .p-system-app-area {
    width: 33vw;
  }
}
@media screen and (max-width: 1170px) {
  .p-system-app-area {
    width: 58vw;
  }
}
@media screen and (max-width: 767px) {
  .p-system-app-area {
    width: 85vw;
  }
}
.p-system-app-area::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translate3d(0, -50%, 0);
          transform: translate3d(0, -50%, 0);
  width: 100%;
  height: 12vw;
  background-color: #962abf;
  z-index: -1;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .p-system-app-area::before {
    height: 42vw;
    padding: 0 1.5vw 1.5vw;
  }
}
@media screen and (max-width: 767px) {
  .p-system-app-area {
    width: 100%;
    padding: 0 1.5vw 1.5vw;
  }
}

.p-system-app-img-area {
  position: relative;
  top: 0;
  left: 0;
  width: 30vw;
  text-align: center;
  margin: 0 auto;
}

.display-pc {
  display: block;
}
@media screen and (max-width: 767px) {
  .display-pc {
    display: none;
  }
}

.p-system-app-img-item-area {
  display: block;
  position: absolute;
  top: 1vw;
  left: -0.4vw;
  width: 15vw;
}
@media screen and (max-width: 1700px) {
  .p-system-app-img-item-area {
    display: block;
    top: 2.6vw;
    left: -0.6vw;
    width: 15vw;
  }
}
@media screen and (max-width: 1170px) {
  .p-system-app-img-item-area {
    display: block;
    top: -2.4vw;
    width: 24vw;
  }
}
@media screen and (max-width: 767px) {
  .p-system-app-img-item-area {
    display: none;
    top: -0.4vw;
    width: 16vw;
  }
}

.p-system-app-img-item {
  display: block;
  width: 100%;
}

.p-system-app-logo-area {
  display: block;
  width: 100%;
  text-align: center;
  margin: 0 auto;
}

.p-system-app-name-area {
  display: inline-block;
  width: 12vw;
  text-align: center;
  margin: 0 auto;
  padding: 0.8vw 0;
}
@media screen and (max-width: 767px) {
  .p-system-app-name-area {
    width: 50%;
    padding: 5vw 0;
  }
}

.p-system-app-img {
  display: inline-block;
  width: 4vw;
}
@media screen and (max-width: 767px) {
  .p-system-app-img {
    width: 14vw;
  }
}

.p-system-app-text-area {
  display: block;
  width: 20vw;
}
@media screen and (max-width: 1700px) {
  .p-system-app-text-area {
    width: 100%;
    width: 17vw;
  }
}
@media screen and (max-width: 1170px) {
  .p-system-app-text-area {
    width: 100%;
    width: 31vw;
  }
}
@media screen and (max-width: 767px) {
  .p-system-app-text-area {
    width: 100%;
    width: 82vw;
  }
}

.p-system-app-title {
  display: block;
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .p-system-app-title {
    font-size: 1.6rem;
  }
}
.p-system-app-title {
  font-size: 0.8vw;
  font-weight: bold;
  color: #ffffff;
  margin-bottom: 0.4vw;
  text-align: center;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-system-app-title {
    font-size: 3.4vw;
    margin-bottom: 1vw;
  }
}

.p-system-app-desc {
  display: block;
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: left;
  margin-top: 3px;
}
@media screen and (max-width: 767px) {
  .p-system-app-desc {
    font-size: 1.6rem;
  }
}
.p-system-app-desc {
  font-size: 0.7vw;
  color: #ffffff;
  text-align: center;
  margin: 0 auto;
}
@media screen and (max-width: 1160px) {
  .p-system-app-desc {
    font-size: 1vw;
  }
}
@media screen and (max-width: 767px) {
  .p-system-app-desc {
    font-size: 2.8vw;
  }
}

.p-system-app-btn-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-system-app-btn-img-area {
  display: block;
}

.p-system-app-name-link {
  display: inline-block;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-system-app-cont .p-system-app-name-link:hover {
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-system-app-cont .p-system-app-name-link:hover .p-system-app-area::before {
  content: "";
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  background-color: #01ce97;
}

.p-system-app-img-link {
  display: block;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-system-app-img-link:hover {
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  opacity: 0.7;
}

.p-system-app-btn-img {
  display: inline-block;
  width: auto;
  height: 3vw;
  margin: 0 1vw;
}
@media screen and (max-width: 767px) {
  .p-system-app-btn-img {
    height: 11vw;
  }
}

/*==============================
-Page
===============================*/
.p-about-wrapper {
  width: 100%;
  height: auto;
  padding: 0 0 40px 0;
}
@media screen and (max-width: 767px) {
  .p-about-wrapper {
    padding: 0;
    margin-bottom: 40px;
  }
}

.p-about-top-img {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 56.25%;
  margin-bottom: 40px;
}

.p-about-top-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  text-indent: 2px;
  text-align: center;
  line-height: 1.75;
  padding: 0;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .p-about-top-title {
    font-size: 1.6rem;
    text-indent: 1px;
    line-height: 1.2;
  }
}

.p-about-top-lead {
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  text-align: left;
  line-height: 1.75;
  padding: 0;
  margin-bottom: 40px;
}

.p-about-movie {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin-bottom: 40px;
}

.p-about-movie iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.p-about-mid-img {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 100%;
  margin-bottom: 40px;
}

.p-about-his-date {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  font-size: 1.6rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.8);
  padding: 2px 5px 0 5px;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .p-about-his-date {
    font-size: 1.4rem;
    padding: 0;
    margin-bottom: 0;
    text-decoration: underline;
  }
}

.p-about-his-lead {
  position: relative;
  display: block;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  text-align: left;
  line-height: 1.75;
  padding: 5px 10px;
  margin-bottom: 20px;
  background-color: rgba(0, 0, 0, 0.5);
}

.p-about-floor-img {
  display: block;
  margin-bottom: 40px;
}

.p-about-text-wrapper {
  width: 100%;
  height: auto;
  padding: 0 0 80px 0;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .p-about-text-wrapper {
    padding: 0;
    margin-bottom: 40px;
  }
}

.p-about-textarea {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-align: center;
  padding: 20px;
  margin: 0 auto;
  z-index: 100;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-about-textarea {
    font-size: 1.4rem;
    padding: 10px;
  }
}

.p-about-access-box {
  display: inline-block;
  width: 100%;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .p-about-access-box {
    width: 100%;
    height: auto;
    padding: 0;
    margin: 40px auto;
  }
}

/*==============================
-Page
===============================*/
.p-system-wrapper {
  width: 100%;
  height: auto;
  padding: 0 0 80px 0;
}
@media screen and (max-width: 767px) {
  .p-system-wrapper {
    padding: 0;
    margin-bottom: 40px;
  }
}

.p-system-lead {
  color: #000000;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  padding: 0;
  margin-bottom: 10px;
}

.p-system-fee-box {
  display: inline-block;
  width: calc(100% - 190px);
  margin-left: 20px;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .p-system-fee-box {
    width: 100%;
    margin: 0 auto;
  }
}

.p-system-fee-area {
  width: 100%;
  overflow: hidden;
  border: 1px solid #000000;
}
.p-system-fee-list {
  background-color: #ffffff;
  width: 100%;
  height: 160px;
  border-collapse: separate;
  border-spacing: 2px 2px;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .p-system-fee-list {
    width: 100%;
    height: auto;
    border-spacing: 3px 3px;
    padding: 2px 0;
  }
}
.p-system-fee-list td:nth-child(1) {
  width: 24%;
}
@media screen and (max-width: 767px) {
  .p-system-fee-list td:nth-child(1) {
    width: 100%;
  }
}
.p-system-fee-list td:nth-child(2) {
  width: 38%;
}
@media screen and (max-width: 767px) {
  .p-system-fee-list td:nth-child(2) {
    width: 50%;
  }
}
.p-system-fee-list td:nth-child(3) {
  width: 38%;
}
@media screen and (max-width: 767px) {
  .p-system-fee-list td:nth-child(3) {
    width: 50%;
  }
}

.p-system-fee-list-time,
.p-system-fee-list-price {
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.1;
  text-align: center;
  vertical-align: middle;
  padding: 1px 0;
}
.p-system-fee-list-time span,
.p-system-fee-list-price span {
  display: block;
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.02em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-system-fee-list-time,
  .p-system-fee-list-price {
    font-size: 1.6rem;
    padding: 2px 0;
  }
}

@media screen and (max-width: 767px) {
  .p-system-fee-list-time {
    display: block;
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .p-system-fee-list-price {
    display: inline-block;
    width: 50%;
  }
}

.p-system-fee-list-lead {
  color: #000000;
}
@media screen and (max-width: 767px) {
  .p-system-fee-list-lead {
    display: block;
    width: 100%;
    text-align: center;
  }
}

.p-system-fee-list-label {
  color: #ffffff;
  background-color: #000000;
}

.p-system-fee-list-men {
  color: #122269;
}

.p-system-fee-list-women {
  color: #691212;
}

.p-system-fee-att {
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 2;
  text-align: left;
  vertical-align: middle;
  margin-bottom: 10px;
}

.p-system-fee-lead {
  font-family: "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: left;
  vertical-align: middle;
  padding: 10px;
  background-color: rgba(0, 0, 0, 0.5);
}

.p-system-week-box {
  display: inline-block;
  position: relative;
  top: 0;
  left: 0;
  background-color: #000000;
  -webkit-box-shadow: 0.5px 0px 5px 0.5px #FCF103;
          box-shadow: 0.5px 0px 5px 0.5px #FCF103;
  width: 160px;
  height: 160px;
}
@media screen and (max-width: 767px) {
  .p-system-week-box {
    width: 100%;
    height: 80px;
    margin: 0 auto 10px auto;
  }
}

.p-system-week-area {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  vertical-align: top;
}

.p-system-week-title {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 2.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.1;
  text-align: left;
  padding: 5px 10px;
  color: #ffffff;
}

.p-system-week-titlegenre {
  position: absolute;
  bottom: 0;
  right: 0;
  color: #ffffff;
  font-size: 1.8rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.1;
  text-align: right;
  padding: 5px 10px;
}
.p-system-week-titlegenre span {
  display: block;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.1;
}

.p-system-att-area {
  margin-bottom: 40px;
}

.p-system-att-header {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  text-indent: 2px;
  line-height: 1.2;
  text-align: left;
  vertical-align: middle;
  padding: 5px 10px 2px 10px;
  margin-bottom: 10px;
  color: #ffffff;
  background-color: #000000;
  -webkit-box-shadow: 0.5px 0px 5px 0.5px #FCF103;
          box-shadow: 0.5px 0px 5px 0.5px #FCF103;
}
@media screen and (max-width: 767px) {
  .p-system-att-header {
    text-align: center;
  }
}

.p-system-att-lead {
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.1em;
  line-height: 1.75;
  text-align: left;
  vertical-align: middle;
  margin-bottom: 10px;
}

.p-system-att-img {
  display: block;
  width: 100%;
  margin: 0 auto;
}

.p-ota-about-wrapper {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 1170px) {
  .p-ota-about-wrapper {
    height: 160px;
  }
}
@media screen and (max-width: 767px) {
  .p-ota-about-wrapper {
    height: auto;
  }
}

.p-ota-about-inner {
  padding: 3vw;
}
@media screen and (max-width: 1170px) {
  .p-ota-about-inner {
    padding: 6vw;
  }
}
.p-ota-about-area:nth-child(odd) .order-1 {
  padding-right: 3vw;
}
@media screen and (max-width: 767px) {
  .p-ota-about-area:nth-child(odd) .order-1 {
    padding-right: 0;
  }
}

.p-ota-about-area:nth-child(even) .order-1 {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  padding-left: 3vw;
}
@media screen and (max-width: 767px) {
  .p-ota-about-area:nth-child(even) .order-1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    padding-left: 0;
  }
}
@media screen and (max-width: 767px) {
  .p-ota-about-area:nth-child(even) .order-1 .p-ota-about-img-area {
    padding-left: 6vw;
    position: relative;
  }
}
.p-ota-about-area:nth-child(even) .order-1 .p-ota-event-btn-area {
  display: none;
}
.p-ota-about-area:nth-child(even) .order-2 {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
@media screen and (max-width: 767px) {
  .p-ota-about-area:nth-child(even) .order-2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    padding-top: 3vw;
  }
}
.p-ota-about-area:nth-child(even) .order-2 .p-ota-about-text-area {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  text-align: center;
  margin: 0 auto;
  padding-left: 6vw;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-ota-about-area:nth-child(even) .order-2 .p-ota-about-text-area {
    position: relative;
    top: 0;
    left: 0;
    -webkit-transform: none;
            transform: none;
    text-align: center;
    padding-right: 0vw;
    padding-top: 8vw;
  }
}
.p-ota-about-area:nth-child(even) .order-2 .p-ota-about-text-area .p-ota-about-title,
.p-ota-about-area:nth-child(even) .order-2 .p-ota-about-text-area .p-ota-about-desc {
  text-align: center;
}

.p-ota-title-area {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  margin: 0 auto;
  text-align: center;
}

.p-ota-title-text {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-ota-title-text {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-ota-title-text {
  display: inline-block;
  border-bottom: 1px solid #ffffff;
  width: auto;
  color: #ffffff;
  font-size: clamp(2.4rem, 1.2vw, 3rem);
  font-weight: bold;
  line-height: 1.2;
  padding: 10px;
  text-align: center;
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
}
@media screen and (max-width: 767px) {
  .p-ota-title-text {
    font-size: clamp(2.4rem, 4.6vw, 3rem);
    margin: 0 auto;
    text-align: center;
    padding: 1vw 1vw;
  }
}

.p-ota-title-subtext {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-ota-title-subtext {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-ota-title-subtext {
  color: #ffffff;
  font-size: clamp(1.4rem, 0.9vw, 2rem);
  padding: 0.5vw;
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-ota-title-subtext {
    font-size: clamp(1.4rem, 3vw, 2rem);
    margin: 0 auto;
    text-align: center;
    padding: 1vw 1vw;
  }
}

.p-ota-desc-area {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  margin: 0.5vw auto;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-ota-desc-area {
    margin: 2vw auto;
  }
}

.p-ota-desc-text {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-ota-desc-text {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-ota-desc-text {
  color: #ffffff;
  font-size: clamp(1.4rem, 0.9vw, 3rem);
  padding: 0.5vw;
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-ota-desc-text {
    font-size: clamp(1.4rem, 3.4vw, 3rem);
    margin: 0 auto;
    text-align: center;
    padding: 1vw 1vw;
  }
}

.p-ota-about-desc {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-ota-about-desc {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-ota-about-desc {
  font-size: clamp(1.6rem, 0.8vw, 1vw);
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-ota-about-desc {
    margin-top: 3vw;
    font-size: 3.4vw;
  }
}

@media screen and (max-width: 767px) {
  .p-ota-about-price-area {
    text-align: center;
    margin: 0 auto;
  }
}

.p-ota-about-price {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-ota-about-price {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-ota-about-price {
  display: inline-block;
  margin-top: 2vw;
  font-size: clamp(2rem, 3.5vw, 5rem);
  font-weight: 900;
  color: #ffffff;
  border-bottom: 1px solid #ffffff;
}
@media screen and (max-width: 767px) {
  .p-ota-about-price {
    font-size: clamp(3rem, 6vw, 5rem);
    margin-top: 3vw;
  }
}
.p-ota-about-price span {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-ota-about-price span {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-ota-about-price span {
  display: inline-block;
  margin-top: 2vw;
  font-size: clamp(3rem, 2vw, 4rem);
}
@media screen and (max-width: 767px) {
  .p-ota-about-price span {
    font-size: clamp(3rem, 5vw, 5rem);
  }
}

.p-ota-about-img {
  display: block;
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  display: none;
}
.p-ota-about-img::before {
  content: "";
  background-color: transparent;
}

.p-ota-about-text-area {
  display: block;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-ota-about-text-area {
    padding: 0;
  }
}

@media screen and (max-width: 767px) {
  .p-ota-about-ota-inner {
    text-align: center;
    margin: 6vw auto 0 auto;
  }
}

.p-ota-about-ota-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.p-ota-about-ota-icon {
  width: 2vw;
  -webkit-filter: invert(100%) sepia(18%) saturate(113%) hue-rotate(239deg) brightness(111%) contrast(95%);
          filter: invert(100%) sepia(18%) saturate(113%) hue-rotate(239deg) brightness(111%) contrast(95%);
}
@media screen and (max-width: 767px) {
  .p-ota-about-ota-icon {
    width: 8.8vw;
  }
}

.p-ota-about-ota-title {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-ota-about-ota-title {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-ota-about-ota-title {
  display: inline-block;
  width: auto;
  font-size: 1.6rem;
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  color: #ffffff;
  margin: 1vw auto;
}
@media screen and (max-width: 767px) {
  .p-ota-about-ota-title {
    font-size: 6vw;
  }
}

.p-ota-about-ota-item {
  width: 50%;
  margin-bottom: 0.5vw;
}
@media screen and (max-width: 767px) {
  .p-ota-about-ota-item {
    width: 50%;
  }
}

.p-ota-about-ota-nolink {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-ota-about-ota-nolink {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-ota-about-ota-nolink {
  font-size: clamp(1.4rem, 1vw, 1.8rem);
  padding: 0.5vw;
  color: #ffffff;
  background-color: #888;
  border: 1px solid #888;
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  margin: 0 0.2vw;
  text-align: center;
  text-decoration: line-through;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .p-ota-about-ota-nolink {
    margin: 1vw 1vw;
    padding: 1.5vw;
  }
}

.p-ota-about-ota-link {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-ota-about-ota-link {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-ota-about-ota-link {
  font-size: clamp(1.4rem, 1vw, 1.8rem);
  padding: 0.5vw;
  color: #ffffff;
  background-color: #dc0b1f;
  border: 1px solid #dc0b1f;
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  margin: 0 0.2vw;
  text-align: center;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .p-ota-about-ota-link {
    margin: 1vw 1vw;
    padding: 1.5vw;
  }
}
.p-ota-about-ota-link:hover {
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  background-color: #ffffff;
  color: #691212;
}

.p-ota-about-price-area {
  display: none;
}

/*==============================
-Page
===============================*/
.p-event-wrapper {
  position: relative;
  padding: 40px;
}
@media screen and (max-width: 767px) {
  .p-event-wrapper {
    padding: 0 20px;
  }
}

.p-event-reg-wrapper {
  position: relative;
  padding: 0 40px;
}
@media screen and (max-width: 767px) {
  .p-event-reg-wrapper {
    padding: 0 20px;
  }
}

.p-event-banner-box {
  display: inline-block;
  width: 100%;
  padding: 0;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .p-event-banner-box {
    width: 100%;
    height: auto;
    padding: 0 10px;
    margin: 40px auto;
  }
}

.p-event-titlearea {
  position: relative;
  display: block;
  width: 100%;
  margin-top: 80px;
}

.p-event-time-postarea {
  display: block;
  width: 100%;
  text-align: right;
}

.p-event-time-text {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.2;
  color: #ffffff;
  z-index: 999;
  margin-bottom: 5px;
}

.p-event-postin {
  position: relative;
  top: 0;
  left: 0;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-event-postin {
    padding: 10px;
  }
}

.p-event-postin-week {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: block;
  background-color: #FCF103;
  padding: 5px 10px 2px 10px;
  margin-bottom: 10px;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 3px;
  line-height: 1.1;
  text-align: center;
  color: #000000;
  z-index: 999;
  margin-top: 40px;
}

.p-event-today-wrapper {
  background-color: rgba(0, 0, 0, 0.7);
  padding: 10px;
}

.p-event-postlink {
  display: block;
  width: 100%;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
  padding: 0;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-event-postlink:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
  -webkit-box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
          box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
}
.p-event-postlink:hover .p-event-postin-image {
  -webkit-transform: scale3d(1.1, 1.1, 1.1) perspective(0);
          transform: scale3d(1.1, 1.1, 1.1) perspective(0);
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}
.p-event-postlink:hover .p-event-postin-desc-area {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
  z-index: 10;
}

.p-event-postin-image {
  padding-top: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.p-event-postin-image:hover {
  -webkit-transform: scale3d(1.1, 1.1, 1.1) perspective(0);
          transform: scale3d(1.1, 1.1, 1.1) perspective(0);
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.p-event-postin-image-today {
  padding-top: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

.p-event-postin-header {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: absolute;
  width: 100%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0) perspective(0);
          transform: translate3d(-50%, -50%, 0) perspective(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
  margin: 0 auto;
  letter-spacing: 0.05em;
  line-height: 1.4;
  padding: 0;
  z-index: 1;
  color: #ffffff;
}
.p-event-postin-header span {
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  margin: 0 auto;
  letter-spacing: 0.05em;
  line-height: 1.4;
  padding: 0;
  z-index: 1;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-event-postin-header {
    font-size: 1.6rem;
  }
}

.p-event-postin-genre {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 1.4rem;
  font-weight: normal;
  text-align: center;
  margin: 4px auto;
  letter-spacing: 0.05em;
  line-height: 1.4;
  padding: 0;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-event-postin-genre {
    font-size: 1.2rem;
  }
}

.p-event-floor-wrapper {
  margin-bottom: 40px;
}

.p-event-postin-box {
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .p-event-postin-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-left: calc(10px / -2);
    margin-right: calc(10px / -2);
    margin-left: -5px;
    margin-right: -5px;
  }
}

.p-event-postin-subweek {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  padding: 0;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.1;
  text-align: center;
  color: #ffffff;
}

.p-event-subweek-header {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  padding: 0;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.1;
  text-align: center;
  color: #ffffff;
}

.p-event-subpostin {
  height: 100%;
  padding: 10px 0;
}

.p-event-postin-subnumb {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  padding: 4px 4px 2px 4px;
  background-color: #691212;
  margin-bottom: 10px;
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: right;
  color: #ffffff;
  z-index: 999;
}

.p-event-postin-subdate,
.p-event-postin-subdate span {
  display: block;
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  font-size: 1.2rem;
  font-weight: normal;
  margin: 0 auto;
  text-align: left;
  letter-spacing: 0.05em;
  line-height: 1.75;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-event-postin-subdate,
  .p-event-postin-subdate span {
    font-size: 1.2rem;
    margin: 20px auto 5px auto;
  }
}

.p-event-postin-subheader {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0 auto;
  text-align: left;
  letter-spacing: 0.05em;
  line-height: 1.6;
  color: #ffffff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .p-event-postin-subheader {
    font-size: 1.6rem;
  }
}

.p-event-postin-lead {
  width: 100%;
  font-size: 1.2rem;
  font-weight: normal;
  margin: 0 auto;
  text-align: left;
  letter-spacing: 0.05em;
  line-height: 1.6;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-event-postin-lead {
    font-size: 1.2rem;
  }
}

.p-event-postin-subbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .p-event-postin-subbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-left: calc(10px / -2);
    margin-right: calc(10px / -2);
    margin-left: -5px;
    margin-right: -5px;
  }
}

.p-event-postin-subweek-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center;
  padding: 0;
  -webkit-box-shadow: 0.5px 0px 5px 0.5px #FCF103;
          box-shadow: 0.5px 0px 5px 0.5px #FCF103;
  background-color: rgba(0, 0, 0, 0.8);
}
@media screen and (max-width: 767px) {
  .p-event-postin-subweek-area {
    display: block;
    margin-bottom: 10px;
  }
}

.p-event-postin-subweek-box {
  display: block;
  position: relative;
  -webkit-transform: rotate3d(0, 0, 1, -180deg) perspective(0);
          transform: rotate3d(0, 0, 1, -180deg) perspective(0);
  -webkit-writing-mode: tb-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: tb-rl;
  text-align: center;
  padding: 0;
  margin: 0 auto;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (max-width: 767px) {
  .p-event-postin-subweek-box {
    height: auto;
    -webkit-writing-mode: lr-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: lr-tb;
    position: relative;
    top: 0;
    left: 0;
    display: block;
    padding: 10px;
    -webkit-transform: translate3d(0, 0, 0) rotate3d(0, 0, 1, 0) perspective(0);
            transform: translate3d(0, 0, 0) rotate3d(0, 0, 1, 0) perspective(0);
  }
}

.p-event-subweek-area {
  display: block;
  position: relative;
  text-align: center;
  margin: 0 auto;
  padding: 10px;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-event-subweek-area {
    height: auto;
    position: relative;
    top: 0;
    left: 0;
    display: block;
    padding: 10px;
  }
}

.p-event-postin-area {
  margin-bottom: 15px;
}
@media screen and (max-width: 767px) {
  .p-event-postin-area {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 0;
  }
}

.p-event-postin-desc-area {
  display: none;
}

.p-event-postin-descarealink {
  height: 100%;
  padding: 0;
  margin: 0 auto;
  display: block;
}

.p-event-floor-img {
  display: block;
  margin-bottom: 10px;
}

.p-event-lead-area {
  background-color: rgba(0, 0, 0, 0.5);
  padding: 20px;
  margin-bottom: 40px;
}

.p-event-lead {
  width: 100%;
  font-size: 1.4rem;
  font-weight: normal;
  text-align: left;
  margin: 0 auto;
  letter-spacing: 0.05em;
  line-height: 1.75;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-event-lead {
    font-size: 1.2rem;
  }
}

.p-event-floorimgarea {
  width: 100%;
  display: block;
  margin: 0 auto;
  position: absolute;
  top: 0;
  left: 0;
}

.p-event-floorimg {
  display: inline-block;
  width: 80px;
  margin: 0 auto;
  text-align: left;
  position: absolute;
  top: -3px;
  left: 3px;
  z-index: 100;
}

.p-event-floor-logo {
  display: block;
  width: 60px;
  margin: 0 auto;
  text-align: center;
}

.p-event-weekarea {
  width: 100%;
  display: block;
  margin: 0 auto;
  position: absolute;
  bottom: 0;
  left: 0;
  text-align: right;
  z-index: 100;
}

.p-event-month-text-area {
  width: 100%;
  display: block;
  margin: 0 auto;
  position: absolute;
  top: 0;
  right: 0;
  text-align: right;
  z-index: 100;
}

.p-event-month-text {
  position: absolute;
  top: 0;
  right: 0;
  display: inline-block;
  font-size: 1.2rem;
  font-weight: normal;
  text-align: right;
  margin: 0 auto;
  letter-spacing: 0.1em;
  line-height: 1.75;
  padding: 2px 5px;
  background-color: rgba(255, 0, 0, 0.5);
}
@media screen and (max-width: 767px) {
  .p-event-month-text {
    font-size: 1.2rem;
  }
}

.p-event-week-lead {
  position: absolute;
  bottom: 0;
  right: 0;
  display: inline-block;
  font-size: 1.2rem;
  font-weight: normal;
  text-align: right;
  margin: 0 auto;
  letter-spacing: 0.1em;
  line-height: 1.75;
  padding: 2px 5px;
  background-color: rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 767px) {
  .p-event-week-lead {
    font-size: 1.2rem;
  }
}
.p-event-week-lead.universe {
  background-color: rgba(154, 78, 219, 0.6);
}
.p-event-week-lead.meteo {
  background-color: rgba(53, 112, 159, 0.6);
}
.p-event-week-lead.cosmo {
  background-color: rgba(175, 106, 142, 0.6);
}
.p-event-week-lead.force {
  background-color: rgba(48, 199, 50, 0.6);
}

/*==============================
-Page
===============================*/
.p-media-wrapper {
  position: relative;
  padding: 80px 10px;
}
@media screen and (max-width: 767px) {
  .p-media-wrapper {
    padding: 0 20px;
  }
}

.p-media-cal-area {
  position: relative;
  top: 0;
  left: 0;
  padding: 80px 10px;
  background-color: rgba(0, 0, 0, 0.7);
}
@media screen and (max-width: 767px) {
  .p-media-cal-area {
    padding: 40px 20px 0 20px;
  }
}

.p-media-titlearea {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  width: 100%;
  margin-top: 40px;
}

.p-media-title {
  display: inline-block;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.4;
  text-align: left;
  vertical-align: middle;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .p-media-title {
    font-size: 2.6rem;
  }
}

.p-media-title-more {
  position: absolute;
  top: 0;
  right: 0;
  display: inline-block;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.4;
  text-align: right;
  vertical-align: middle;
  margin-bottom: 20px;
  text-decoration: underline;
}
@media screen and (max-width: 767px) {
  .p-media-title-more {
    display: none;
  }
}

.p-media-postlink {
  display: block;
  position: relative;
  width: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  overflow: hidden;
  border-bottom: 1px solid #333;
  background-color: rgba(0, 0, 0, 0.6);
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-media-postlink:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  background-color: rgba(255, 255, 255, 0.1);
}

.p-media-postlink-report {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  overflow: hidden;
  border-bottom: 1px solid #333;
  background-color: rgba(0, 0, 0, 0.7);
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  margin-bottom: 20px;
}
.p-media-postlink-report:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  background-color: rgba(255, 255, 255, 0.3);
}

@media screen and (max-width: 767px) {
  .p-media-post-sp {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 0.1px);
    max-width: calc(100% / (12 / 6));
    position: relative;
    padding-left: 0;
    padding-right: 0;
  }
}

.p-media-postin-image-area {
  position: relative;
  top: 0;
  left: 0;
  width: 150px;
  height: 150px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .p-media-postin-image-area {
    width: 100%;
    height: auto;
  }
}

.p-media-postin-image-area-category {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .p-media-postin-image-area-category {
    width: 100%;
    height: auto;
  }
}

.p-media-cat-service {
  border-left: 2px solid #FCF103;
}

.p-media-cat-campaign {
  border-left: 2px solid #F91384;
}

.p-media-cat-guest {
  border-left: 2px solid #01CE97;
}

.p-media-cat-special {
  border-left: 2px solid #62FEF9;
}

.p-media-postin-image {
  position: relative;
  padding-top: 100%;
  background-color: #ffffff;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.p-media-postin-image:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale3d(1.1, 1.1, 1.1) perspective(0);
          transform: scale3d(1.1, 1.1, 1.1) perspective(0);
}

.p-media-postarea {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  padding: 15px;
  z-index: 999;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .p-media-postarea {
    padding: 0 10px 10px 10px;
  }
}

.p-media-postarea-report {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  padding: 15px;
  z-index: 999;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .p-media-postarea-report {
    padding: 0 10px 10px 10px;
  }
}

.p-media-postbox {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-line-pack: center;
      align-content: center;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .p-media-postbox {
    display: block;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .p-media-postbox {
    margin-left: calc(10px / -2);
    margin-right: calc(10px / -2);
  }
}

.p-media-postbox-list-date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-line-pack: center;
      align-content: center;
  position: relative;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-media-postbox-list-date {
    display: block;
    width: 100%;
    padding: 10px;
    text-align: left;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 12) - 0.1px);
        flex-basis: calc(100% / (12 / 12) - 0.1px);
    max-width: calc(100% / (12 / 12));
    position: relative;
  }
}

.p-media-postbox-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-line-pack: center;
      align-content: center;
  position: relative;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-media-postbox-list {
    display: block;
    padding: 0 10px 10px 10px;
    text-align: left;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 0.1px);
    max-width: calc(100% / (12 / 6));
    position: relative;
  }
}

.p-media-datearea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 120px;
}
@media screen and (max-width: 767px) {
  .p-media-datearea {
    display: block;
    width: 100%;
  }
}

.p-media-date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 1.6rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: center;
  color: #ffffff;
  padding: 3px;
}
.p-media-date span {
  display: block;
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: center;
  color: #ffffff;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-media-date span {
    display: inline-block;
    width: auto;
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 767px) {
  .p-media-date {
    display: block;
    width: auto;
    font-size: 1.4rem;
    text-align: left;
  }
}

.p-media-date-report {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: block;
  font-size: 1.6rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: center;
  color: #ffffff;
  padding: 5px;
}
.p-media-date-report span {
  display: block;
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  font-size: 1.6rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: center;
  color: #ffffff;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-media-date-report span {
    display: inline-block;
    width: auto;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .p-media-date-report {
    display: block;
    width: auto;
    font-size: 1.4rem;
    text-align: left;
  }
}

.p-media-date-text {
  display: block;
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  font-size: 1.6rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: left;
  color: #ffffff;
  padding: 0;
}
.p-media-date-text span {
  display: block;
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  font-size: 1.6rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: left;
  color: #ffffff;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-media-date-text span {
    display: block;
    width: auto;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .p-media-date-text {
    display: block;
    width: auto;
    font-size: 1.4rem;
    text-align: left;
  }
}

.p-media-postin-name {
  font-family: "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.6;
  color: #ffffff;
  padding: 0;
  margin-bottom: 5px;
}
@media screen and (max-width: 767px) {
  .p-media-postin-name {
    font-size: 1.4rem;
  }
}

.p-media-postin-name-report {
  font-family: "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.6;
  color: #ffffff;
  padding: 0;
  margin-bottom: 5px;
}
@media screen and (max-width: 767px) {
  .p-media-postin-name-report {
    font-size: 1.4rem;
  }
}

.p-media-postin-lead {
  font-family: "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.6;
  color: #eee;
}

.p-media-postin-text {
  font-family: "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.6;
  color: #ffffff;
  margin-bottom: 5px;
}

.p-media-categorybox {
  display: block;
  width: 100%;
}

.p-media-category-link-area {
  position: absolute;
  display: block;
  top: 0;
  right: 0;
  text-align: right;
  width: 100%;
  z-index: 100;
}

.p-media-category-link {
  position: absolute;
  display: inline-block;
  top: 0;
  right: 0;
  -webkit-transform: translate(-5px, 5px);
          transform: translate(-5px, 5px);
  font-size: 1rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: right;
  color: #ffffff;
  padding: 5px 10px;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
  z-index: 100;
}
.p-media-category-link:hover {
  background-color: rgba(0, 0, 0, 0.8);
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.p-media-report-image {
  position: relative;
  padding-top: 56.25%;
  background-color: #ffffff;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

.p-media-cal-wrapper {
  position: relative;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  margin: 0 auto 20px auto;
}

.p-media-cal-form {
  text-align: center;
  margin: 0 auto 20px auto;
}

.p-media-cal-text {
  display: block;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
  padding: 5px;
  color: #ffffff;
  margin: 60px auto 10px auto;
}
.p-media-cal-text .p-media-cal-year-display {
  font-size: 1.8rem;
}
.p-media-cal-text .p-media-cal-month-display {
  font-size: 3.2rem;
}
.p-media-cal-select {
  -webkit-appearance: menulist-button;
  -moz-appearance: menulist-button;
  appearance: menulist-button;
  padding: 5px;
}

.p-media-cal-select-text {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
  padding: 0 5px;
}
.p-media-cal-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
  padding: 5px;
}
.p-media-cal-btnarea {
  position: relative;
  display: inline-block;
  margin-left: 10px;
}

.p-media-cal-submit {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: center;
  color: #ffffff !important;
  padding: 0 10px;
  margin: 0 auto;
  background-color: #000000;
  border: 2px solid #000000;
  z-index: 1;
  overflow: hidden;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
          box-shadow: 1px 0px 10px 1px #01CE97;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 1170px) {
  .p-media-cal-submit {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .p-media-cal-submit {
    width: 100%;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 2px;
    padding: 5px;
    margin: 0 auto 20px auto;
  }
}
.p-media-cal-submit:hover {
  cursor: pointer;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
  -webkit-box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
          box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
}

.p-media-cal-header {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: inline-block;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
  padding: 5px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 999;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 2px 5px;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-media-cal-header {
    font-size: 1.1rem;
    font-weight: normal;
    line-height: 1.1;
    padding: 1px 2px;
    background-color: rgba(0, 0, 0, 0.3);
  }
}

.p-media-cal-postlink {
  display: block;
  position: relative;
  width: 100%;
  overflow: hidden;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-media-cal-postlink:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  background-color: rgba(255, 255, 255, 0.3);
  opacity: 0.7;
}

.p-media-cal-todaysbg {
  border: 2px solid #01CE97;
}

.p-media-cal-postimg {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  padding-top: 100%;
}

.p-media-cal-btn {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  width: 100%;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: center;
  color: #ffffff !important;
  padding: 0 10px;
  margin: 0 auto;
  background-color: #000000;
  border: 2px solid #000000;
  z-index: 1;
  overflow: hidden;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
          box-shadow: 1px 0px 10px 1px #01CE97;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 1170px) {
  .p-media-cal-btn {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .p-media-cal-btn {
    width: 100%;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 2px;
    padding: 5px;
    margin: 0 auto 20px auto;
  }
}
.p-media-cal-btn:hover {
  cursor: pointer;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
  -webkit-box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
          box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
}

@media screen and (max-width: 767px) {
  .p-media-cal-btn-sp-prev {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 4) - 0.1px);
        flex-basis: calc(100% / (12 / 4) - 0.1px);
    max-width: calc(100% / (12 / 4));
    position: relative;
    margin-right: calc(100% / (12 / 4) + 10px / 2);
  }
}
@media screen and (max-width: 767px) {
  .p-media-cal-btn-sp-next {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 4) - 0.1px);
        flex-basis: calc(100% / (12 / 4) - 0.1px);
    max-width: calc(100% / (12 / 4));
    position: relative;
  }
}

.p-media-more-btn {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  width: 200px;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: center;
  color: #ffffff !important;
  padding: 5px 10px;
  margin: 20px auto;
  background-color: #000000;
  border: 2px solid #000000;
  z-index: 1;
  overflow: hidden;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
          box-shadow: 1px 0px 10px 1px #01CE97;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 1170px) {
  .p-media-more-btn {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .p-media-more-btn {
    width: 100%;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 2px;
    padding: 10px;
    margin: 40px auto;
  }
}
.p-media-more-btn:hover {
  cursor: pointer;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
  -webkit-box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
          box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
}

/*==============================
-P-regdjs
===============================*/
.p-regdjs-postin {
  margin-bottom: 40px;
}

.p-regdjs-subtitle {
  position: relative;
  display: block;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  margin: 10px auto;
  text-align: center;
  letter-spacing: 0.05em;
  text-indent: 2px;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-regdjs-subtitle {
    font-size: 1.4rem;
  }
}

.p-regdjs-postlink {
  position: relative;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid #000000;
  overflow: hidden;
}

.p-regdjs-postin-image {
  position: relative;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding-top: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.p-regdjs-postin-image:hover {
  -webkit-transform: scale3d(1.1, 1.1, 1.1) perspective(0);
          transform: scale3d(1.1, 1.1, 1.1) perspective(0);
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.p-regdjs-postin-header {
  font-size: 1.6rem;
  font-weight: bold;
  text-align: left;
  margin: 10px auto;
  position: relative;
  text-align: center;
  letter-spacing: 0.05em;
  text-indent: 2px;
  z-index: 1;
  color: #000000;
}
@media screen and (max-width: 767px) {
  .p-regdjs-postin-header {
    font-size: 1.4rem;
  }
}

.p-regdjs-postin-imglink {
  position: relative;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  margin-bottom: 40px;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
}

.p-regdjs-postin-img {
  position: relative;
  display: block;
  width: 100%;
  top: 0;
  left: 0;
  padding-top: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-filter: grayscale(100%);
          filter: grayscale(100%);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-regdjs-postin-img {
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
}
.p-regdjs-postin-img:hover {
  -webkit-filter: grayscale(0);
          filter: grayscale(0);
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.p-regdjs-postin-img:hover.p-regdjs-postin-img::before {
  background-color: rgba(0, 0, 0, 0.2);
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}
.p-regdjs-postin-img:hover .p-regdjs-postin-area {
  opacity: 1;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.p-regdjs-postin-img::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0);
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

@media screen and (max-width: 767px) {
  .p-regdjs-postin-sp {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

.p-regdjs-postin-hoverimg {
  position: relative;
}

.p-regdjs-postin-imglink {
  display: block;
}

.p-regdjs-postin-area {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
  margin: 0 auto;
  padding: 10px;
  color: #ffffff;
  opacity: 0;
}

.p-regdjs-postin-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 2px;
  line-height: 1.4;
}

/*==============================
-Page
===============================*/
.p-vip-main-wrapper {
  position: relative;
  padding: 80px 0;
}
@media screen and (max-width: 767px) {
  .p-vip-main-wrapper {
    padding: 40px 20px 20px 20px;
  }
}

.p-vip-wrapper {
  width: 100%;
  height: auto;
  padding: 0 0 80px 0;
}
@media screen and (max-width: 767px) {
  .p-vip-wrapper {
    padding: 0;
    margin-bottom: 40px;
  }
}

.p-vip-charge-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.2;
  padding: 0;
  margin-bottom: 20px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-vip-charge-title {
    font-size: 2rem;
  }
}

.p-vip-attention {
  padding: 0 4vw;
  padding-top: 20px;
}
@media screen and (max-width: 767px) {
  .p-vip-attention {
    padding: 0px;
  }
}

.p-vip-earlyTimeSystem-heading {
  font-weight: bold;
}

.p-vip-earlyTimeSystem-img {
  margin-bottom: 20px;
}

.p-vip-charge-lead {
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  padding: 0;
  margin-bottom: 40px;
}
.p-vip-charge-lead span {
  color: #FCF103;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 2;
  padding: 0;
}

.p-vip-link-text {
  display: inline;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 2;
  padding: 0;
  text-decoration: underline;
}

.p-vip-floor-name {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  color: #ffffff;
  padding: 5px 20px;
  margin-bottom: 20px;
  background-color: #000000;
  -webkit-box-shadow: 0.5px 0px 5px 0.5px #FCF103;
          box-shadow: 0.5px 0px 5px 0.5px #FCF103;
}
@media screen and (max-width: 767px) {
  .p-vip-floor-name {
    font-size: 2rem;
    padding: 5px 10px;
    text-align: center;
  }
}

.p-vip-floor-subdesc {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.4;
  color: #ffffff;
  width: 100%;
  padding: 10px 20px;
  background-color: rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 767px) {
  .p-vip-floor-subdesc {
    font-size: 1.6rem;
    padding: 5px 10px;
  }
}

.p-vip-floor-img {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 86%;
  margin-bottom: 20px;
  overflow: hidden;
  -webkit-transition: ease 0.6s;
  transition: ease 0.6s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

.p-vip-floor-img-sheet {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 100%;
  -webkit-transition: ease 0.6s;
  transition: ease 0.6s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

.p-vip-floor-img-sheet-thumb {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
          box-shadow: 1px 0px 10px 1px #01CE97;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 56.25%;
  margin-bottom: 20px;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.p-vip-floor-img-sheet-thumb:hover {
  cursor: pointer;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  opacity: 0.7;
  -webkit-box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
          box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
}
@media screen and (max-width: 767px) {
  .p-vip-floor-img-sheet-thumb {
    margin-bottom: 20px;
  }
}

.p-vip-floor-thumb-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.p-vip-floor-area {
  padding: 10px;
  background-color: rgba(0, 0, 0, 0.7);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: space-between;
      -ms-flex-align: space-between;
          align-items: space-between;
}

.p-vip-floor-place {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-vip-floor-img-area {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 9) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 9) - 10px - 0.1px);
    max-width: calc(100% / (12 / 9) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

.p-vip-floor-thumb-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .p-vip-floor-thumb-area {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 3) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 3) - 10px - 0.1px);
    max-width: calc(100% / (12 / 3) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

@media screen and (max-width: 767px) {
  .p-vip-floor-img-sheet-area {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 5) - 0.1px);
        flex-basis: calc(100% / (12 / 5) - 0.1px);
    max-width: calc(100% / (12 / 5));
    position: relative;
  }
}

.p-vip-floor-img-sheet-desc-area {
  background-color: rgba(0, 0, 0, 0.8);
}
@media screen and (max-width: 767px) {
  .p-vip-floor-img-sheet-desc-area {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 7) - 0.1px);
        flex-basis: calc(100% / (12 / 7) - 0.1px);
    max-width: calc(100% / (12 / 7));
    position: relative;
  }
}

.p-vip-floor-descarea {
  padding: 10px 20px;
}
@media screen and (max-width: 767px) {
  .p-vip-floor-descarea {
    padding: 10px;
  }
}

.p-vip-floor-sheet-title {
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
}
@media screen and (max-width: 767px) {
  .p-vip-floor-sheet-title {
    font-size: 1.2rem;
  }
}

.p-vip-floor-sheet-numb {
  display: block;
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: right;
  margin-bottom: 5px;
}
@media screen and (max-width: 767px) {
  .p-vip-floor-sheet-numb {
    font-size: 1.2rem;
  }
}

.p-vip-floor-sheet-lead {
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .p-vip-floor-sheet-lead {
    font-size: 1.2rem;
  }
}

.p-vip-floor-price-week {
  position: relative;
  top: 0;
  left: 0;
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.1;
}
@media screen and (max-width: 767px) {
  .p-vip-floor-price-week {
    font-size: 1rem;
    letter-spacing: 0.05em;
  }
}

.menu_vipset_price,
.menu_vipset_price_weekend,
.menu_vipset_price-b2,
.menu_vipset_price_weekend-b2,
.p-vip-floor-price {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 3px;
  line-height: 1.2;
  text-align: right;
}
.menu_vipset_price .p-vip-floor-price-yen,
.menu_vipset_price_weekend .p-vip-floor-price-yen,
.menu_vipset_price-b2 .p-vip-floor-price-yen,
.menu_vipset_price_weekend-b2 .p-vip-floor-price-yen,
.p-vip-floor-price .p-vip-floor-price-yen {
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .menu_vipset_price,
  .menu_vipset_price_weekend,
  .menu_vipset_price-b2,
  .menu_vipset_price_weekend-b2,
  .p-vip-floor-price {
    font-size: 1.6rem;
  }
}

.p-vip-floor-price-bar {
  background-color: #bbb;
  width: 100%;
  height: 1px;
  margin-bottom: 10px;
}

.p-vip-floor-box {
  vertical-align: middle;
}

.p-vip-att-text {
  display: block;
  padding: 20px 10px;
  background-color: rgba(0, 0, 0, 0.8);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-vip-att-text {
    padding: 10px;
  }
}
.p-vip-att-text .p-vip-att-text-price {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: inline;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  color: #f00;
  font-style: italic;
}
@media screen and (max-width: 767px) {
  .p-vip-att-text .p-vip-att-text-price {
    font-size: 2rem;
  }
}
.p-vip-att-text .p-vip-att-text-sp {
  color: #FCF103;
}

.p-vip-telarea {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  margin: 40px auto;
}

.vip_floor_seat_img,
.vip_floor_seat,
.vip_floor_desc_jp,
.menu_vipset_price,
.menu_vipset_price_weekend,
.vip_floor_seat_img-b2,
.vip_floor_seat-b2,
.vip_floor_desc_jp-b2,
.menu_vipset_price-b2,
.menu_vipset_price_weekend-b2 {
  -webkit-transition: ease 0.4s;
  transition: ease 0.4s;
}

.p-vip-menuarea {
  margin-top: 80px;
}

.p-vip-system {
  margin-bottom: 40px;
}
.p-vip-system-arrow {
  display: block;
  position: relative;
  padding-bottom: 40px;
  margin-bottom: 40px;
}
.p-vip-system-arrow::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0) perspective(0);
          transform: translate3d(-50%, -50%, 0) perspective(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  text-align: center;
  margin: 0 auto 40px auto;
  padding: 0;
  border-top: 50px solid #333;
  border-right: 50px solid transparent;
  border-left: 50px solid transparent;
}

.p-vip-system-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-align: center;
  padding: 0;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .p-vip-system-title {
    font-size: 2rem;
  }
}

.p-vip-system-time {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-align: center;
  padding: 0;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .p-vip-system-time {
    font-size: 1.6rem;
  }
}

.p-vip-system-weekday {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-align: center;
  padding: 10px 5px;
  margin-bottom: 5px;
  background-color: #1e4e6d;
  border: 1px solid #888;
}
@media screen and (max-width: 767px) {
  .p-vip-system-weekday {
    font-size: 1.4rem;
  }
}

.p-vip-system-weekend {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-align: center;
  padding: 10px 5px;
  margin-bottom: 5px;
  background-color: #002c48;
  border: 1px solid #888;
}
@media screen and (max-width: 767px) {
  .p-vip-system-weekend {
    font-size: 1.4rem;
  }
}

.p-vip-system-price {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-align: center;
  padding: 10px 5px;
  margin-bottom: 5px;
  background-color: #333;
  border: 1px solid #888;
}
@media screen and (max-width: 767px) {
  .p-vip-system-price {
    font-size: 1.4rem;
  }
}

.p-vip-system-price-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-align: center;
  padding: 10px 2px;
  margin-bottom: 5px;
  background-color: #009da2;
  border: 1px solid #888;
}
@media screen and (max-width: 767px) {
  .p-vip-system-price-title {
    font-size: 1.4rem;
  }
}

.p-vip-system-bottle-img-area {
  padding: 10px;
  background-color: rgba(255, 255, 255, 0.2);
}

.p-vip-system-bottle-img {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  padding-top: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repaet;
}

.p-vip-system-bottle-area {
  position: relative;
  display: block;
  padding: 10px;
  margin-bottom: 5px;
}

@media screen and (max-width: 767px) {
  .p-vip-system-sp {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 4) - 0.1px);
        flex-basis: calc(100% / (12 / 4) - 0.1px);
    max-width: calc(100% / (12 / 4));
    position: relative;
  }
}

@media screen and (max-width: 767px) {
  .p-vip-system-bottle-sp {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 0.1px);
    max-width: calc(100% / (12 / 6));
    position: relative;
  }
}

@media screen and (max-width: 767px) {
  .p-vip-system-charm-sp {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 8) - 0.1px);
        flex-basis: calc(100% / (12 / 8) - 0.1px);
    max-width: calc(100% / (12 / 8));
    position: relative;
  }
}

.p-vip-system-bottle-name {
  position: relative;
  display: block;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-align: left;
  padding: 0;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .p-vip-system-bottle-name {
    font-size: 1.2rem;
  }
}

.p-vip-system-bottle-price {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-align: center;
  padding: 0;
  color: #ffffff;
}
.p-vip-system-bottle-price .line {
  color: #c00;
  text-decoration: line-through;
}
.p-vip-system-bottle-price .line-text {
  color: #888;
}
@media screen and (max-width: 767px) {
  .p-vip-system-bottle-price {
    font-size: 1.4rem;
  }
}

.p-vip-system-charm-area {
  position: relative;
  padding: 10px;
  background-color: rgba(0, 0, 0, 0.5);
  border: 1px solid #ffffff;
  margin-bottom: 20px;
}

.p-vip-system-charm-img-area {
  padding: 10px;
}

.p-vip-system-att-area {
  position: relative;
  padding: 10px;
  background-color: rgba(0, 0, 0, 0.5);
}

.p-vip-system-charm {
  position: relative;
  display: block;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.65;
  text-align: left;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-vip-system-charm {
    font-size: 1.4rem;
  }
}

.p-vip-system-att {
  position: relative;
  display: block;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 1.65;
  text-align: left;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-vip-system-att {
    font-size: 1.4rem;
  }
}

.p-vip-system-bottle-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-line-pack: center;
      align-content: center;
}

.p-vip-system-bottle-box-list {
  width: 100%;
  background-color: rgba(0, 0, 0, 0.7);
}

.p-vip-system-bottle-box-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-line-pack: center;
      align-content: center;
}
@media screen and (max-width: 767px) {
  .p-vip-system-bottle-box-wrap {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.p-vip-system-bottle-box-list-wrap {
  width: 100%;
  background-color: rgba(0, 0, 0, 0.7);
}
@media screen and (max-width: 767px) {
  .p-vip-system-bottle-box-list-wrap {
    width: 50%;
  }
}

.p-vip-app-cont {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  padding: 0 0 1vw;
  text-align: center;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-vip-app-cont {
    padding: 5vw 6vw 6vw 6vw;
  }
}

@media screen and (max-width: 767px) {
  .p-vip-app-cont-under {
    padding: 14vw 6vw 6vw 6vw;
  }
}

.p-vip-app-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  top: 0;
  left: 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 37vw;
  padding: 1.5vw;
  z-index: 0;
}
.p-vip-app-area::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translate3d(0, -50%, 0);
          transform: translate3d(0, -50%, 0);
  width: 100%;
  height: 16vw;
  background-color: #857102;
  background-image: url("https://www.transparenttextures.com/patterns/light-grey-floral-motif.png");
  z-index: -1;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 1170px) {
  .p-vip-app-area::before {
    height: 20vw;
  }
}
@media screen and (max-width: 767px) {
  .p-vip-app-area::before {
    height: 100%;
  }
}
@media screen and (max-width: 1170px) {
  .p-vip-app-area {
    width: 64.5vw;
  }
}
@media screen and (max-width: 767px) {
  .p-vip-app-area {
    width: 100%;
    padding: 12vw 1.5vw 3vw 1.5vw;
  }
}

.p-vip-app-name-link {
  display: inline-block;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-vip-app-name-link:hover {
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-vip-app-name-link:hover .p-vip-app-area::before {
  content: "";
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  background-color: #962abf;
}
.p-vip-app-name-link:hover .p-vip-app-img-item-text {
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-transform: rotate3d(0, 0, 1, -8deg) scale3d(1.05, 1.05, 1.05);
          transform: rotate3d(0, 0, 1, -8deg) scale3d(1.05, 1.05, 1.05);
}

.p-vip-app-img-area {
  position: relative;
  top: 3vw;
  left: 3vw;
  width: 26vw;
  height: 20vw;
  text-align: center;
  margin: 0 auto;
}
@media screen and (max-width: 1170px) {
  .p-vip-app-img-area {
    left: 7vw;
  }
}
@media screen and (max-width: 767px) {
  .p-vip-app-img-area {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
}

.p-vip-app-img-item-area {
  display: block;
  position: absolute;
  top: 5vw;
  left: -2vw;
  width: 13vw;
}
@media screen and (max-width: 1170px) {
  .p-vip-app-img-item-area {
    width: 18vw;
  }
}

.p-vip-app-img-item-text-area {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  text-align: center;
  margin: 0 auto;
  top: 14%;
  left: 27%;
  display: block;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-vip-app-img-item-text-area {
    top: 0;
  }
}

.p-vip-app-img-item-text {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-vip-app-img-item-text {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-vip-app-img-item-text {
  display: inline-block;
  font-size: clamp(1.4rem, 1vw, 3rem);
  font-weight: bold;
  color: #000000;
  border-radius: 0.5vw;
  background-color: rgba(245, 233, 11, 0.8);
  padding: 0.5vw 1vw;
  -webkit-transform: rotate3d(0, 0, 1, -5deg);
          transform: rotate3d(0, 0, 1, -5deg);
  text-align: center;
  margin: 0 auto;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-vip-app-img-item-text span {
  font-size: clamp(2.4rem, 1.6vw, 3rem);
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .p-vip-app-img-item-text span {
    font-size: 5vw;
  }
}
@media screen and (max-width: 767px) {
  .p-vip-app-img-item-text {
    font-size: 3.4vw;
    padding: 1vw 2vw;
    border-radius: 1.5vw;
    background-color: rgba(245, 233, 11, 0.9);
  }
}

.p-vip-app-img-item {
  display: block;
  width: 100%;
}

.p-vip-app-logo-area {
  display: block;
  width: 100%;
  text-align: center;
  margin: 0 auto;
}

.p-vip-app-name-area {
  display: inline-block;
  width: 12vw;
  text-align: center;
  margin: 0 auto;
  padding: 1vw 0;
}
@media screen and (max-width: 767px) {
  .p-vip-app-name-area {
    width: 50%;
    padding: 5vw 0;
  }
}

.p-vip-app-img {
  display: inline-block;
  width: 4vw;
}
@media screen and (max-width: 767px) {
  .p-vip-app-img {
    width: 14vw;
  }
}

.p-vip-app-text-area {
  display: block;
  width: 20vw;
}
@media screen and (max-width: 1170px) {
  .p-vip-app-text-area {
    width: 40vw;
  }
}
@media screen and (max-width: 767px) {
  .p-vip-app-text-area {
    width: 100%;
  }
}

.p-vip-app-title {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-vip-app-title {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-vip-app-title {
  font-size: 0.8vw;
  font-size: clamp(1.2rem, 0.8vw, 2rem);
  font-weight: bold;
  color: #ffffff;
  margin-bottom: 0.4vw;
  text-align: center;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-vip-app-title {
    font-size: 3.4vw;
    font-size: clamp(1.2rem, 3.4vw, 2rem);
    margin-bottom: 1vw;
  }
}

.p-vip-app-desc {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-vip-app-desc {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-vip-app-desc {
  font-size: clamp(1.2rem, 0.9vw, 2rem);
  color: #ffffff;
  text-align: center;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-vip-app-desc {
    font-size: 2.8vw;
    font-size: clamp(1.2rem, 2.8vw, 2rem);
  }
}

.p-vip-app-install-desc {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-vip-app-install-desc {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-vip-app-install-desc {
  font-size: clamp(1.2rem, 0.8vw, 1.6rem);
  color: #ffffff;
  text-align: center;
  margin: 0 auto 1vw auto;
}
@media screen and (max-width: 767px) {
  .p-vip-app-install-desc {
    font-size: clamp(1.2rem, 2.6vw, 2rem);
  }
}

.p-vip-app-install-desc .display-pc1500 {
  display: none;
}
@media screen and (max-width: 1500px) {
  .p-vip-app-install-desc .display-pc1500 {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .p-vip-app-install-desc .display-pc1500 {
    display: none;
  }
}

.p-vip-app-btn-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-vip-app-btn-img-area {
  display: block;
}

.p-vip-app-install {
  padding: 0.5vw 0.2vw;
  border-radius: 1vw;
  background-color: rgba(40, 40, 40, 0.8);
}
@media screen and (max-width: 767px) {
  .p-vip-app-install {
    padding: 3vw 0.2vw;
  }
}

.p-vip-app-img-link {
  display: block;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-vip-app-img-link:hover {
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-transform: scale3d(1.05, 1.05, 1.05);
          transform: scale3d(1.05, 1.05, 1.05);
}

.p-vip-app-btn-img {
  display: inline-block;
  width: auto;
  height: 3vw;
  margin: 0 1vw;
}
@media screen and (max-width: 767px) {
  .p-vip-app-btn-img {
    height: 11vw;
  }
}

.p-vip-app-img-left-area {
  display: block;
  position: absolute;
  bottom: 2vw;
  left: 0;
  width: 15.5vw;
  height: 18vw;
  z-index: -1;
}
@media screen and (max-width: 1170px) {
  .p-vip-app-img-left-area {
    width: 16vw;
    bottom: 1vw;
  }
}
@media screen and (max-width: 767px) {
  .p-vip-app-img-left-area {
    bottom: 10.5vw;
    width: 40vw;
    height: 40vw;
  }
}

.p-vip-app-img-right-area {
  display: block;
  position: absolute;
  bottom: 9vw;
  right: -1.5vw;
  width: 12vw;
  height: 14vw;
  z-index: -1;
}
@media screen and (max-width: 1170px) {
  .p-vip-app-img-right-area {
    bottom: 11vw;
    width: 14vw;
  }
}
@media screen and (max-width: 767px) {
  .p-vip-app-img-right-area {
    bottom: 15vw;
    width: 35vw;
    height: 35vw;
  }
}

.p-vip-app-img-left,
.p-vip-app-img-right {
  display: block;
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 100%;
  opacity: 0.7;
}
.p-vip-app-img-left::before,
.p-vip-app-img-right::before {
  content: "";
  background-color: transparent;
}

@media screen and (max-width: 767px) {
  .display-pc {
    display: none;
  }
}

.display-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .display-sp {
    display: block;
  }
}

/*==============================
-Page
===============================*/
.p-archive-wrapper {
  margin-bottom: 80px;
}

@media screen and (max-width: 767px) {
  .p-archive-box {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
    padding-left: 5px;
    padding-right: 5px;
  }
}

.p-archive-imgarea {
  position: relative;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  margin-bottom: 10px;
  overflow: hidden;
}

.p-archive-img {
  position: relative;
  display: block;
  width: 100%;
  top: 0;
  left: 0;
  padding-top: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .p-archive-img {
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
}

.p-archive-img::before {
  content: "";
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0);
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

.p-archive-area {
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding: 10px;
  color: #ffffff;
}

.p-archive-title {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-archive-title {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-archive-title {
  text-align: center;
  margin: 0 auto;
  font-size: clamp(1.4rem, 0.8vw, 1vw);
}
@media screen and (max-width: 767px) {
  .p-archive-title {
    font-size: 1.2rem;
  }
}

/*==============================
-Page
===============================*/
.p-rental-descarea {
  margin-bottom: 80px;
}

.p-rental-img {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 56.25%;
  margin-bottom: 40px;
}

.p-rental-name {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 2px;
  text-align: center;
  line-height: 1.75;
  background-color: #000000;
  -webkit-box-shadow: 0.5px 0px 5px 0.5px #FCF103;
          box-shadow: 0.5px 0px 5px 0.5px #FCF103;
  padding: 10px;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .p-rental-name {
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.2;
  }
}

.p-rental-leadarea {
  display: block;
}

.p-rental-lead {
  display: block;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  text-indent: 2px;
  line-height: 1.75;
  text-align: center;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .p-rental-lead {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.75;
    margin-bottom: 30px;
  }
}

.p-rental-lead-otherarea {
  margin-bottom: 80px;
}

.p-rental-lead-other {
  display: block;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: left;
  background-color: #444;
  color: #ffffff;
  padding: 10px 40px;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .p-rental-lead-other {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.75;
    margin-bottom: 30px;
  }
}

.p-rental-telarea {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  margin-top: 40px;
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .p-rental-telarea {
    margin-bottom: 40px;
  }
}

.p-rental-eq-descarea {
  margin-bottom: 40px;
}

.p-rental-eq-genre {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-align: left;
  line-height: 1.75;
  padding: 0;
  margin-bottom: 10px;
}

.p-rental-eq-name {
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-align: left;
  line-height: 1.75;
  padding: 0;
  border-bottom: 1px dashed #ddd;
}

.p-rental-eq-leadarea {
  padding: 10px 0;
}

.p-rental-eq-lead {
  display: block;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  line-height: 1.75;
  text-align: left;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .p-rental-eq-lead {
    font-size: 1.4rem;
  }
}

/*==============================
-Page
===============================*/
.p-recruit-wrapper {
  width: 100%;
  height: auto;
  padding: 80px 40px;
}
@media screen and (max-width: 767px) {
  .p-recruit-wrapper {
    padding: 0;
    margin-bottom: 40px;
  }
}

.p-recruit-flow-wrapper {
  width: 100%;
  height: auto;
  padding: 30px;
  margin-bottom: 80px;
  background-color: rgba(130, 130, 130, 0.5);
}
@media screen and (max-width: 767px) {
  .p-recruit-flow-wrapper {
    padding: 30px 10px;
  }
}

.p-recruit-top-img {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 56.25%;
  margin-bottom: 40px;
}

.p-recruit-top-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 2px;
  text-align: left;
  line-height: 1.75;
  padding: 0;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .p-recruit-top-title {
    font-size: 1.8rem;
  }
}

.p-recruit-top-lead {
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  text-align: left;
  line-height: 1.75;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-recruit-top-lead {
    font-size: 1.4rem;
  }
}

.p-recruit-sec-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 2px;
  text-align: center;
  line-height: 1.75;
  padding: 0;
  margin-bottom: 40px;
}

.p-recruit-wrapper {
  width: 100%;
  height: auto;
  padding: 40px 0;
}
.p-recruit-charge-title {
  position: relative;
  display: block;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.2;
  padding: 0;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .p-recruit-charge-title {
    font-size: 2rem;
  }
}

.p-recruit-charge-lead {
  color: #000000;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  padding: 0;
}

.p-recruit-work-name {
  position: relative;
  display: block;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  padding: 5px 10px;
  margin-bottom: 40px;
  background-color: #000000;
}
@media screen and (max-width: 767px) {
  .p-recruit-work-name {
    font-size: 2rem;
  }
}

.p-recruit-work-img {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 56.25%;
  margin-bottom: 5px;
}

.p-recruit-work-descarea {
  margin-bottom: 40px;
}

.p-recruit-work-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  color: #ffffff;
  background-color: rgba(130, 130, 130, 0.7);
  margin-bottom: 5px;
  padding: 4px 15px 0 15px;
}
@media screen and (max-width: 767px) {
  .p-recruit-work-title {
    font-size: 1.6rem;
  }
}

.p-recruit-work-lead {
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
  text-align: left;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .p-recruit-work-lead {
    font-size: 1.4rem;
  }
}

.p-recruit-app-area {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  background-color: #000000;
  -webkit-box-shadow: 0.5px 0px 5px 0.5px #FCF103;
          box-shadow: 0.5px 0px 5px 0.5px #FCF103;
  padding: 10px;
  margin-bottom: 10px;
}

.p-recruit-app-title {
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-recruit-app-title {
    font-size: 1.2rem;
  }
}

.p-recruit-app-img {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 56.25%;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .p-recruit-app-img {
    padding-top: 100%;
  }
}

@media screen and (max-width: 767px) {
  .p-recruit-app-sp {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

.p-recruit-app-descarea {
  display: block;
}

.p-recruit-app-lead-header {
  display: inline-block;
  background-color: #333;
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1;
  color: #ffffff;
  padding: 6px 10px;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .p-recruit-app-lead-header {
    display: block;
    width: auto;
    font-size: 1.4rem;
    padding: 4px 8px;
    text-align: center;
  }
}

.p-recruit-descarea {
  background-color: rgba(0, 0, 0, 0.7);
  margin-bottom: 40px;
  padding: 10px;
}
.p-recruit-app-desc {
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 2;
  background-color: rgba(130, 130, 130, 0.5);
  margin-bottom: 10px;
  padding: 5px 10px;
}
@media screen and (max-width: 767px) {
  .p-recruit-app-desc {
    font-size: 1.2rem;
  }
}

.p-recruit-app-lead {
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .p-recruit-app-lead {
    font-size: 1.2rem;
  }
}

.p-recruit-telarea {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  margin-bottom: 80px;
}

.p-contact-index-radio {
  display: block;
  width: 100%;
  margin-bottom: 30px;
}

.p-contact-index-radio input {
  display: none;
}

.p-contact-index-radio label {
  display: block;
  float: left;
  cursor: pointer;
  width: auto;
  height: 35px;
  margin: 0;
  padding: 10px 20px;
  border-right: 1px solid #01CE97;
  background: #888;
  color: #ffffff;
  font-size: 1.4rem;
  text-align: center;
  line-height: 1;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.p-contact-index-radio label:first-of-type {
  border-radius: 3px 0 0 3px;
}

.p-contact-index-radio label:last-of-type {
  border-right: 0px;
  border-radius: 0 3px 3px 0;
}

.p-contact-index-radio input[type=radio]:checked + label {
  background-color: #01CE97;
  color: #ffffff;
}

.p-recruit-flow-img {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 100%;
  margin-bottom: 40px;
  border-radius: 50%;
}
@media screen and (max-width: 767px) {
  .p-recruit-flow-img {
    margin-bottom: 10px;
  }
}

.p-recruit-flow-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  margin-bottom: 20px;
  border-bottom: 1px solid #888;
}
@media screen and (max-width: 767px) {
  .p-recruit-flow-title {
    font-size: 1.6rem;
    line-height: 1.4;
    margin-bottom: 10px;
  }
}
.p-recruit-flow-title span {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
}
@media screen and (max-width: 767px) {
  .p-recruit-flow-title span {
    font-size: 2.2rem;
    line-height: 1.4;
  }
}

.p-recruit-flow-desc {
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: left;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .p-recruit-flow-desc {
    font-size: 1.2rem;
  }
}

.p-recruit-flow-arrow {
  display: block;
  width: 100%;
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: center;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .p-recruit-flow-arrow {
    font-size: 4rem;
    line-height: 1.4;
  }
}

.p-recruit-flow-arrow:last-child {
  display: none;
}

@media screen and (max-width: 767px) {
  .p-recruit-flow-left {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 4) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 4) - 10px - 0.1px);
    max-width: calc(100% / (12 / 4) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

@media screen and (max-width: 767px) {
  .p-recruit-flow-right {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 8) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 8) - 10px - 0.1px);
    max-width: calc(100% / (12 / 8) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

.p-recruit-flow-under {
  display: none;
}
@media screen and (max-width: 767px) {
  .p-recruit-flow-under {
    display: block;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 12) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 12) - 10px - 0.1px);
    max-width: calc(100% / (12 / 12) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

@media screen and (max-width: 767px) {
  .p-recruit-flow-sp {
    display: none;
  }
}

.p-recruit-album {
  margin: auto;
  background-color: #000000;
  position: relative;
}

.p-recruit-album .p-recruit-work-img {
  width: 100%;
  padding-top: 56.25%;
  -webkit-animation: p-recruit-album-anime 10s ease 0s infinite;
          animation: p-recruit-album-anime 10s ease 0s infinite;
  opacity: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

.p-recruit-album .p-recruit-album-img1 {
  display: block;
  margin: 0 auto;
}

.p-recruit-album .p-recruit-album-img2 {
  -webkit-animation-delay: 5s;
  animation-delay: 5s;
  position: absolute;
  top: 0;
  left: 0;
}

@keyframes p-recruit-album-anime {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  40% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
}
@-webkit-keyframes p-recruit-album-anime {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  40% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
}
.p-recruit-form {
  padding: 40px 0 0 0;
}

/*==============================
-Page
===============================*/
.p-faq-title {
  display: block;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  text-indent: 2px;
  line-height: 1.75;
  text-align: center;
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .p-faq-title {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.75;
    margin-bottom: 30px;
  }
}

.p-faq-area {
  margin-bottom: 40px;
}

.p-faq-question-box,
.p-faq-answer-box {
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .p-faq-question-box,
  .p-faq-answer-box {
    font-size: 1.6rem;
  }
}

.p-faq-question-lead {
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.75;
  text-align: left;
  vertical-align: middle;
  margin-bottom: 20px;
  border-bottom: 1px solid #ddd;
}
@media screen and (max-width: 767px) {
  .p-faq-question-lead {
    font-size: 1.4rem;
  }
}

.p-faq-answer-lead {
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  line-height: 1.75;
  text-align: left;
  vertical-align: middle;
  margin-bottom: 20px;
}

/*==============================
-Page
===============================*/
.p-contact-wrapper {
  padding: 60px 0 0 0;
  background-color: rgba(255, 255, 255, 0.2);
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .p-contact-wrapper {
    padding: 30px 10px;
  }
}

.p-contact-background {
  background-image: none !important;
  background-color: #ffffff !important;
}

.p-contact-textcolor {
  color: #000000 !important;
}

.p-contact-name {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: block;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: left;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .p-contact-name {
    font-size: 1.8rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.75;
    margin-bottom: 30px;
  }
}

.p-contact-thanks-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: block;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: left;
  margin-top: 120px;
  margin-bottom: 10px;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-contact-thanks-title {
    font-size: 1.8rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.75;
    margin-top: 20px;
    margin-bottom: 20px;
  }
}

.p-contact-lead {
  display: inline-block;
  width: 100%;
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.6;
  margin-bottom: 5px;
  text-align: left;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .p-contact-lead {
    font-size: 1.2rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.75;
    margin-bottom: 5px;
  }
}

.p-contact-link {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: left;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-contact-link:hover {
  opacity: 0.7;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  text-decoration: underline;
}
@media screen and (max-width: 767px) {
  .p-contact-link {
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.75;
  }
}

.p-contact-tel {
  display: inline-block;
  vertical-align: top;
}

.p-contact-tel-other {
  display: inline;
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: left;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .p-contact-tel-other {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.75;
  }
}

.p-contact-fax,
.p-contact-mail {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .p-contact-fax,
  .p-contact-mail {
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.75;
  }
}

.p-contact-thanks-top-btnarea {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: block;
  text-align: center;
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .p-contact-thanks-top-btnarea {
    margin-bottom: 20px;
  }
}

.p-contact-googlemaparea {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: block;
  text-align: center;
}

.p-contact-googlemaplink {
  display: block;
  text-align: center;
  background-color: #000000;
  -webkit-box-shadow: 1px 0px 10px 1px #01CE97;
          box-shadow: 1px 0px 10px 1px #01CE97;
  color: #ffffff;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.1;
  padding: 10px;
  margin-top: 40px;
  margin-bottom: 40px;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-contact-googlemaplink:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  letter-spacing: 0.05em;
  text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
  -webkit-box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
          box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
}

.p-contact-faq-box {
  display: inline-block;
  width: 100%;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .p-contact-faq-box {
    width: 100%;
    height: auto;
    padding: 0;
    margin: 40px auto;
  }
}

.p-contact-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 2px;
  line-height: 1.4;
  text-align: center;
  padding: 0;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .p-contact-title {
    font-size: 2rem;
  }
}

.p-contact-form {
  margin-bottom: 80px;
}

.p-contact-index {
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  margin-top: 20px;
  margin-bottom: 10px;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .p-contact-index {
    font-size: 1.2rem;
  }
}

.p-contact-viptext {
  color: #000000;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  margin-bottom: 10px;
  text-align: left;
}

.p-contact-index-notes {
  color: #333;
  font-size: 1.2rem;
  margin-bottom: 1rem;
  text-align: left;
  margin-top: 20px;
}

.p-contact-index-formarea,
input[type=text],
input[type=number] {
  border: solid 1px #888;
  background: rgba(255, 255, 255, 0.9);
  color: #333;
  font-size: 1.4rem;
  padding: 10px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
@media screen and (max-width: 767px) {
  .p-contact-index-formarea,
  input[type=text],
  input[type=number] {
    font-size: 1.6rem;
  }
}

textarea.p-contact-index-formarea {
  font-family: sans-serif;
  border: solid 1px #888;
  background: rgba(255, 255, 255, 0.9);
  color: #333;
  font-size: 1.6rem;
  padding: 10px;
  width: 100%;
}
@media screen and (max-width: 767px) {
  textarea.p-contact-index-formarea {
    font-size: 1.6rem;
  }
}

input[type=date] {
  border: solid 1px #888;
  background: rgba(255, 255, 255, 0.9);
  color: #333;
  font-size: 1.6rem;
  padding: 10px;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.p-contact-select {
  display: block;
  width: 100%;
}

.p-contact-index-select {
  position: relative;
  display: block;
  width: 100%;
}

select {
  -webkit-appearance: auto;
  -moz-appearance: auto;
  appearance: auto;
}

.p-contact-index-formlabel select,
.p-contact-index-formlabel select option {
  background: rgba(255, 255, 255, 0.9);
  border: solid 1px #888;
  display: block;
  font-size: 1.4rem;
  padding: 10px;
  position: relative;
  width: 100%;
  color: #888;
}
@media screen and (max-width: 767px) {
  .p-contact-index-formlabel select,
  .p-contact-index-formlabel select option {
    font-size: 1.6rem;
  }
}

.p-contact-btn {
  margin-top: 10px;
}

input[type=text]:focus,
.p-contact-index-formarea:focus,
select:focus {
  outline: 0;
  border: 1px solid #000000;
}

.p-contact-radio {
  display: block;
  width: 100%;
  margin-bottom: 30px;
}

.p-contact-radio input {
  display: none;
}

.p-contact-radio label {
  display: block;
  float: left;
  cursor: pointer;
  width: auto;
  height: 35px;
  margin: 0;
  padding: 10px 20px;
  border-right: 1px solid #000000;
  background: #ddd;
  font-size: 1.4rem;
  text-align: center;
  line-height: 1;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.p-contact-radio label:first-of-type {
  border-radius: 3px 0 0 3px;
}

.p-contact-radio label:last-of-type {
  border-right: 0px;
  border-radius: 0 3px 3px 0;
}

.p-contact-radio input[type=radio]:checked + label {
  background-color: #000000;
}

:-moz-placeholder {
  color: #888;
}

:-ms-input-placeholder {
  color: #888;
}

:placeholder-shown {
  color: #888;
}

::-webkit-input-placeholder {
  color: #888;
}

:-moz-placeholder {
  color: #888;
  opacity: 1;
}

::-moz-placeholder {
  color: #888;
  opacity: 1;
}

:-ms-input-placeholder {
  color: #888;
}

.p-contact-att-lead {
  display: block;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 2px;
  line-height: 1.75;
  text-align: center;
  padding: 10px 0;
}
@media screen and (max-width: 767px) {
  .p-contact-att-lead {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.75;
    margin-bottom: 30px;
  }
}

.p-contact-submit {
  position: relative;
  display: block;
  width: 100%;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: center;
  color: #ffffff;
  padding: 5px;
  margin: 0 auto;
  background-color: #000000;
  border: 2px solid #000000;
  z-index: 1;
  overflow: hidden;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 1170px) {
  .p-contact-submit {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .p-contact-submit {
    width: 100%;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 2px;
    padding: 10px;
    margin: 0 auto 10px auto;
  }
}
.p-contact-submit:hover {
  cursor: pointer;
  letter-spacing: 3px;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
}

.p-contact-privacy-area {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  margin: 80px auto;
}
@media screen and (max-width: 767px) {
  .p-contact-privacy-area {
    margin-bottom: 40px;
  }
}

.p-contact-privacy-header {
  display: block;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: left;
  margin-bottom: 5px;
}
@media screen and (max-width: 767px) {
  .p-contact-privacy-header {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.75;
  }
}

.p-contact-privacy-lead {
  display: block;
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: left;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .p-contact-privacy-lead {
    font-size: 1.2rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.75;
  }
}

.p-contact-lead-area-en {
  margin-top: 15px;
  padding: 15px;
  border: 1px solid #f8f8f8;
}

/*==============================
-Page
===============================*/
.p-access-img {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  padding-top: 100%;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  margin-bottom: 40px;
}

.p-access-movie {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  margin: 60px auto;
}
.p-access-movie iframe {
  min-height: 315px;
}

.p-access-banner-box {
  display: inline-block;
  width: calc(100% - 190px);
  height: 160px;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  margin-top: 80px;
  margin-right: 25px;
}
@media screen and (max-width: 767px) {
  .p-access-banner-box {
    width: 100%;
    height: auto;
    margin: 0 auto 40px auto;
  }
}

.p-access-banner-area {
  width: 100%;
  overflow: hidden;
  border: 1px solid #333;
}

.p-access-banner-faq-box {
  display: inline-block;
  width: 160px;
  height: 160px;
}
@media screen and (max-width: 767px) {
  .p-access-banner-faq-box {
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
}

.p-access-banner-faq-area {
  width: 100%;
  overflow: hidden;
  border: 1px solid #333;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

.p-access-banner-link {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  top: 0;
  left: 0;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

.p-access-banner-faq-link {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  top: 0;
  left: 0;
  overflow: hidden;
}

.p-access-banner-image {
  position: relative;
  top: 0;
  left: 0;
  padding-top: 160px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  color: #ffffff;
  z-index: 0;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .p-access-banner-image {
    padding-top: 160px;
  }
}
.p-access-banner-image:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale3d(1.1, 1.1, 1.1) perspective(0);
          transform: scale3d(1.1, 1.1, 1.1) perspective(0);
}
.p-access-banner-image:hover.p-access-banner-image::before {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  background-color: rgba(0, 0, 0, 0);
}

.p-access-banner-image::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: -1;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .p-access-banner-image::before {
    background-color: rgba(0, 0, 0, 0.1);
  }
}

.p-access-banner-faq-image {
  position: relative;
  top: 0;
  left: 0;
  padding-top: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  color: #ffffff;
  z-index: 0;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .p-access-banner-faq-image {
    padding-top: 160px;
  }
}
.p-access-banner-faq-image:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
.p-access-banner-faq-image:hover.p-access-banner-faq-image::before {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  background-color: rgba(0, 0, 0, 0);
}

.p-access-banner-faq-image::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: -1;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .p-access-banner-faq-image::before {
    background-color: rgba(0, 0, 0, 0.1);
  }
}

.p-access-banner-title {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.1;
  text-align: left;
  vertical-align: middle;
  padding: 10px;
  color: #ffffff;
}

/*==============================
-Page
===============================*/
.p-menu-wrapper {
  width: 100%;
  height: auto;
  padding: 0 40px 80px 40px;
}
@media screen and (max-width: 767px) {
  .p-menu-wrapper {
    padding: 0;
    margin-bottom: 40px;
  }
}

.p-menu-top-box {
  position: relative;
  margin-bottom: 40px;
}
.p-menu-top-box .swiper-container {
  border: none;
  background-color: rgba(0, 0, 0, 0.8);
}
.p-menu-top-box .swiper-slide-prev::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  -webkit-transition: 0.4s;
  transition: 0.4s;
  z-index: 1;
}
.p-menu-top-box .swiper-slide-active::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0);
  -webkit-transition: 0.4s;
  transition: 0.4s;
  z-index: 1;
}
.p-menu-top-box .swiper-slide-next::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  -webkit-transition: 0.4s;
  transition: 0.4s;
  z-index: 1;
}

@media screen and (max-width: 1660px) {
  .p-menu-top-sparea {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}
@media screen and (max-width: 1170px) {
  .p-menu-top-sparea {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 4) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 4) - 10px - 0.1px);
    max-width: calc(100% / (12 / 4) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}
@media screen and (max-width: 880px) {
  .p-menu-top-sparea {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}
@media screen and (max-width: 767px) {
  .p-menu-top-sparea {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

.p-menu-top-img {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 100%;
  margin-bottom: 10px;
}
.p-menu-top-area {
  margin-bottom: 80px;
}

.p-menu-top-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 3px;
  text-indent: 3px;
  text-align: center;
  line-height: 1.75;
  padding: 0;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .p-menu-top-title {
    font-size: 2rem;
    letter-spacing: 0.05em;
    text-indent: 2px;
  }
}

.p-menu-top-subtitle {
  display: block;
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  text-indent: 2px;
  text-align: center;
  line-height: 1.75;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-menu-top-subtitle {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 2px;
  }
}

.p-menu-top-att-text {
  display: block;
  padding: 20px;
  background-color: rgba(255, 255, 255, 0.2);
  background: linear-gradient(-45deg, rgba(204, 204, 18, 0.8) 0%, rgba(68, 25, 63, 0.8) 23%, rgba(0, 25, 5, 0.8) 46%, rgba(3, 0, 56, 0.8) 69%, rgba(0, 255, 186, 0.8) 100%);
  margin-bottom: 80px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-menu-top-att-text {
    padding: 10px;
  }
}

.p-menu-top-name {
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-align: center;
  line-height: 1.75;
  padding: 0;
}

.p-menu-top-lead {
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-align: left;
  line-height: 1.75;
  padding: 0;
}

.p-menu-top-desc {
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  text-align: left;
  line-height: 1.75;
  padding: 0;
  margin-bottom: 20px;
}

.p-menu-top-desc-en {
  font-size: 1rem;
  letter-spacing: 0.05em;
  text-align: left;
  line-height: 1.75;
  padding: 0;
  margin-bottom: 20px;
}

.p-menu-top-att {
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  text-align: center;
  line-height: 1.75;
  padding: 5px 10px;
  background-color: #444;
}

.p-menu-top-price {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-align: right;
  line-height: 1.75;
  padding: 0;
}
.p-menu-top-price span {
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
}

.p-menu-top-name-border {
  -webkit-box-shadow: 0.5px 0px 5px 0.5px #01CE97;
          box-shadow: 0.5px 0px 5px 0.5px #01CE97;
  border-bottom: 1px solid #01CE97;
  margin-bottom: 5px;
}

.p-menu-top-price-border {
  border-bottom: 1px solid #bbb;
  margin-bottom: 5px;
}

.p-menu-top-sheet-numb {
  font-size: 1rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: right;
  padding: 0;
  margin-bottom: 5px;
}

.p-menu-top-other {
  font-size: 1rem;
  letter-spacing: 0.05em;
  line-height: 1.4;
  padding: 0;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .p-menu-imgbox-sp {
    margin-left: calc(100% / (12 / 3) + 10px / 2);
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
    margin-right: calc(100% / (12 / 3) + 10px / 2);
  }
}
.p-menu-img {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 100%;
  margin-bottom: 10px;
}

.p-menu-genre-title {
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  background-color: #000000;
  -webkit-box-shadow: 0.5px 0px 5px 0.5px #FCF103;
          box-shadow: 0.5px 0px 5px 0.5px #FCF103;
  padding: 10px 20px;
  margin-top: 40px;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .p-menu-genre-title {
    font-size: 1.6rem;
  }
}

.p-menu-lead-otherarea {
  margin-top: 40px;
}

.p-menu-lead-other {
  display: block;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  text-indent: 2px;
  line-height: 1.75;
  text-align: left;
  background-color: #444;
  color: #ffffff;
  padding: 10px 40px;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .p-menu-lead-other {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.75;
    margin-bottom: 30px;
  }
}

.p-menu-item-descarea {
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-menu-item-descarea {
    padding: 0 10px;
  }
}

.p-menu-item-lead {
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.4px;
  line-height: 1.75;
  margin-bottom: 5px;
  background-color: #333;
  padding: 2px 8px;
}
@media screen and (max-width: 767px) {
  .p-menu-item-lead {
    font-size: 1.4rem;
  }
}
.p-menu-item-lead span {
  display: block;
  font-size: 1rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  padding-left: 12px;
  text-align: right;
}

.p-menu-item-price-set {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.2;
  padding-bottom: 5px;
  font-style: italic;
}
@media screen and (max-width: 767px) {
  .p-menu-item-price-set {
    font-size: 1.4rem;
  }
}
.p-menu-item-price-set span {
  display: inline;
  font-size: 1rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  margin-bottom: 40px;
}

.p-menu-item-price {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.2;
  padding-bottom: 5px;
  font-style: italic;
}
@media screen and (max-width: 767px) {
  .p-menu-item-price {
    font-size: 1.6rem;
  }
}
.p-menu-item-price span {
  display: inline;
  font-size: 1rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  margin-bottom: 40px;
}

@media screen and (max-width: 1660px) {
  .p-menu-item-area {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}
@media screen and (max-width: 1170px) {
  .p-menu-item-area {
    display: inline-block;
  }
}

@media screen and (max-width: 767px) {
  .p-menu-item-pricearea-sp {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

@media screen and (max-width: 767px) {
  .p-menu-item-pricearea-sp12 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 12) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 12) - 10px - 0.1px);
    max-width: calc(100% / (12 / 12) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

.p-menu-item-area-price-set {
  display: block;
  text-align: right;
  border-bottom: 1px solid rgba(130, 130, 130, 0.5);
  margin-bottom: 20px;
}
@media screen and (max-width: 1660px) {
  .p-menu-item-area-price-set {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 12) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 12) - 10px - 0.1px);
    max-width: calc(100% / (12 / 12) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}
@media screen and (max-width: 1170px) {
  .p-menu-item-area-price-set {
    text-align: center;
    display: inline-block;
  }
}

.p-menu-item-area-price {
  display: block;
  text-align: right;
  border-bottom: 1px solid rgba(130, 130, 130, 0.5);
  margin-bottom: 40px;
}
@media screen and (max-width: 1660px) {
  .p-menu-item-area-price {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 12) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 12) - 10px - 0.1px);
    max-width: calc(100% / (12 / 12) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}
@media screen and (max-width: 1170px) {
  .p-menu-item-area-price {
    display: inline-block;
  }
}

.p-menu-item-area-setdesc {
  display: block;
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .p-menu-item-area-setdesc {
    font-size: 1rem;
  }
}

.p-menu-sponsor {
  -webkit-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 40px;
  padding: 10px;
  background-color: #888;
}
@media screen and (max-width: 767px) {
  .p-menu-sponsor {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.p-menu-sponsor-icon {
  width: 140px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-menu-sponsor-icon {
    width: 50%;
    margin-bottom: 20px;
  }
}

.p-menu-sponsor-logo {
  width: auto;
  height: 40px;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-menu-sponsor-logo:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.switch-tab-area {
  text-align: center;
}

.switch-tab {
  cursor: pointer;
  text-align: center;
  background-color: #000000;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  border: 1px #ffffff solid;
  color: #ffffff;
  margin-bottom: 40px;
  padding: 20px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.switch-tab:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
  -webkit-box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
          box-shadow: 1px 1px 10px 1px #01CE97, -1px -1px 10px 1px #01CE97;
}
@media screen and (max-width: 767px) {
  .switch-tab {
    font-size: 1.2rem;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 4) - 0.1px);
        flex-basis: calc(100% / (12 / 4) - 0.1px);
    max-width: calc(100% / (12 / 4));
    position: relative;
  }
}

.switch-activeTab {
  background-color: #01CE97;
  color: white;
}

.switch-tab-box-in {
  height: auto;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-animation: fadein-area 0.4s ease 0s both;
          animation: fadein-area 0.4s ease 0s both;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

@-webkit-keyframes fadein-area {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 20px, 0) perspective(0);
            transform: translate3d(0, 20px, 0) perspective(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0) perspective(0);
            transform: translate3d(0, 0, 0) perspective(0);
  }
}
@keyframes fadein-area {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 20px, 0) perspective(0);
            transform: translate3d(0, 20px, 0) perspective(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0) perspective(0);
            transform: translate3d(0, 0, 0) perspective(0);
  }
}
.p-menu-top-sale-txt {
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  text-align: center;
  margin-bottom: 30px;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .p-menu-top-sale-txt {
    font-size: 1.4rem;
  }
}

.p-menu-top-sale-txt-color {
  color: #fcf103;
}

/*==============================
-Page
===============================*/
.p-howto-topvisual-wrapper {
  font-family: "M PLUS Rounded 1c", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  width: 100%;
  overflow: hidden;
  overflow-wrap: break-word;
  -ms-hyphens: auto;
      hyphens: auto;
}

.p-howto-slide-wrapper {
  position: relative;
  width: 100%;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .p-howto-slide-wrapper {
    display: none;
  }
}

.p-howto-mainvisual {
  position: relative;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}
.p-howto-mainvisual::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 767px) {
  .p-howto-mainvisual::before {
    background-color: rgba(0, 0, 0, 0.4);
  }
}

.p-howto-mainvisual-titlearea {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  text-align: center;
  margin: 0 auto;
  text-align: center;
}

.p-howto-mainvisual-title-logo {
  width: 200px;
}
@media screen and (max-width: 767px) {
  .p-howto-mainvisual-title-logo {
    width: 180px;
  }
}

.p-howto-djmag-logo-area {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  display: block;
  width: 100%;
  text-align: center;
}

.p-howto-djmag-logo {
  width: auto;
  max-width: 80%;
  max-height: 200px;
}
.p-howto-djmag-logo::before {
  background-color: transparent;
}

.p-howto-mainvisual-title-logolink {
  display: inline-block;
  text-align: center;
  margin: 0 auto 20px auto;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-howto-mainvisual-title-logolink:hover {
  opacity: 0.7;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.p-howto-mainvisual-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
  margin-top: 10px;
  color: #ffffff;
}
.p-howto-mainvisual-title span {
  display: block;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-howto-mainvisual-title span {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  .p-howto-mainvisual-title {
    font-size: 2.4rem;
  }
}

.p-howto-cont-area {
  position: relative;
  padding: 60px 0;
}

.p-howto-cont-box {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 0;
  z-index: 1;
}

.p-howto-container {
  position: relative;
  max-width: 1170px;
  margin-right: auto;
  margin-left: auto;
  padding-left: 10px;
  padding-right: 10px;
}
.p-howto-cont-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  font-size: 8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
  margin-top: 40px;
  margin-bottom: 40px;
  z-index: 1;
}
.p-howto-cont-title::before {
  content: "";
  display: inline-block;
  width: 60px;
  height: 60px;
  background-image: url("../images/howto/warp_logo_white.png");
  background-repeat: no-repeat;
  background-size: 60px;
  padding: 0;
  margin-right: 10px;
  z-index: 99999;
}
@media screen and (max-width: 767px) {
  .p-howto-cont-title::before {
    width: 40px;
    height: 40px;
    background-size: 40px;
  }
}
@media screen and (max-width: 767px) {
  .p-howto-cont-title {
    font-size: 3.6rem;
  }
}

.p-howto-cont-title-red {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  font-size: 8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
  margin-top: 40px;
  margin-bottom: 40px;
  color: #FF172F;
}
.p-howto-cont-title-red::before {
  content: "";
  display: inline-block;
  width: 60px;
  height: 60px;
  background-image: url("../images/howto/warp_logo_red.png");
  background-repeat: no-repeat;
  background-size: 60px;
  padding: 0;
  margin-right: 10px;
  z-index: 99999;
}
@media screen and (max-width: 767px) {
  .p-howto-cont-title-red::before {
    width: 40px;
    height: 40px;
    background-size: 40px;
  }
}
@media screen and (max-width: 767px) {
  .p-howto-cont-title-red {
    font-size: 4rem;
  }
}

.p-howto-bg-gray {
  background-color: rgba(0, 0, 0, 0.5);
}

.p-howto-bg-different {
  background-color: rgba(255, 255, 255, 0.8);
}

.p-howto-bg-vip {
  background-color: rgba(170, 220, 217, 0.8);
}

.p-howto-bg-black {
  background-color: #000000;
}

.p-howto-bg-pickup {
  background-color: rgba(232, 236, 239, 0.5);
}

.p-howto-img-circle {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  padding-top: 100%;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  border-radius: 50%;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

.p-howto-aboutarea {
  position: relative;
  width: 100%;
  padding: 35%;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .p-howto-aboutarea {
    padding: 40%;
  }
}

.p-howto-about-box {
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.p-howto-about-box:hover .p-howto-img-circle {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale3d(1.05, 1.05, 1.05) perspective(0);
          transform: scale3d(1.05, 1.05, 1.05) perspective(0);
}
.p-howto-about-box:hover .p-howto-aboutarea {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: rotate3d(0, 0, 1, 3deg) perspective(0);
          transform: rotate3d(0, 0, 1, 3deg) perspective(0);
}
@media screen and (max-width: 767px) {
  .p-howto-about-box {
    padding-bottom: 10px;
  }
}

@media screen and (max-width: 767px) {
  .p-howto-about-box-item-sp {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 7) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 7) - 10px - 0.1px);
    max-width: calc(100% / (12 / 7) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

.p-howto-about-comment {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  text-align: center;
  margin: 0 auto;
  width: 100%;
  padding-top: 60%;
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-howto-about-comment {
    padding-top: 60%;
  }
}

.p-howto-about-title-1st {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  text-align: center;
  margin: 0 auto;
  width: 100%;
  font-size: 13rem;
  font-weight: bold;
  letter-spacing: 5px;
  line-height: 1.1;
  text-align: center;
  opacity: 0.4;
  -webkit-transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, 7deg) perspective(0);
          transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, 7deg) perspective(0);
}
@media screen and (max-width: 767px) {
  .p-howto-about-title-1st {
    font-size: 5rem;
  }
}

.p-howto-about-title-2nd {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  text-align: center;
  margin: 0 auto;
  width: 100%;
  font-size: 8rem;
  font-weight: bold;
  letter-spacing: 5px;
  line-height: 1.1;
  text-align: center;
  opacity: 0.4;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, 7deg) perspective(0);
          transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, 7deg) perspective(0);
}
@media screen and (max-width: 767px) {
  .p-howto-about-title-2nd {
    font-size: 3rem;
  }
}

.p-howto-about-title-3rd {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  text-align: center;
  margin: 0 auto;
  width: 100%;
  font-size: 7rem;
  font-weight: bold;
  letter-spacing: 5px;
  line-height: 1.1;
  text-align: center;
  opacity: 0.4;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, 7deg) perspective(0);
          transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, 7deg) perspective(0);
}
@media screen and (max-width: 767px) {
  .p-howto-about-title-3rd {
    font-size: 3rem;
  }
}

.p-howto-about-title-lead {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  text-align: center;
  margin: 0 auto;
  width: 100%;
  font-size: 2.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-howto-about-title-lead {
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    line-height: 1.4;
  }
}

.p-howto-img-circle-text {
  font-family: "Shadows Into Light", cursive;
  position: absolute;
  width: 100%;
  bottom: -10px;
  left: 0;
  width: 100%;
  font-size: 9rem;
  font-weight: bold;
  text-indent: 4.5rem;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: center;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: rotate3d(0, 0, 1, -12deg) perspective(0);
          transform: rotate3d(0, 0, 1, -12deg) perspective(0);
}
@media screen and (max-width: 767px) {
  .p-howto-img-circle-text {
    font-size: 3rem;
    text-indent: 3rem;
    letter-spacing: 0.05em;
  }
}

.p-howto-different-bgarea {
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .p-howto-different-bgarea {
    padding: 20px;
  }
}

.p-howto-different-bg {
  background: -webkit-gradient(linear, left top, left bottom, from(#888), to(#000));
  background: linear-gradient(#888, #000);
  margin-bottom: 200px;
}
@media screen and (max-width: 767px) {
  .p-howto-different-bg {
    margin-bottom: 40px;
  }
}

.p-howto-differentarea-wrapper {
  z-index: 200;
}

.p-howto-differentarea {
  position: relative;
  padding: 80px 100px;
}
@media screen and (max-width: 1170px) {
  .p-howto-differentarea {
    padding: 20px;
  }
}

.p-howto-different-numb {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 30rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: center;
  opacity: 0.4;
  color: #000000;
  padding: 40px;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .p-howto-different-numb {
    display: none;
  }
}

.p-howto-different-img {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  padding-top: 88%;
  z-index: 0;
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .p-howto-different-img {
    padding-top: 50%;
  }
}

.p-howto-bg-img-area-01 {
  position: absolute;
  top: 50%;
  left: 3%;
  -webkit-transform: translate3d(0, -50%, 0) perspective(0);
          transform: translate3d(0, -50%, 0) perspective(0);
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.p-howto-bg-img-01 {
  width: 410px;
  height: 1040px;
  background-size: 290px;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 0;
  -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
}
@media screen and (max-width: 767px) {
  .p-howto-bg-img-01 {
    display: none;
  }
}

.a-fadein-img01 {
  -webkit-animation: a-fadein-img-01 0.6s both 0.6s ease-out;
          animation: a-fadein-img-01 0.6s both 0.6s ease-out;
  visibility: visible !important;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

@-webkit-keyframes a-fadein-img-01 {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, 4deg) perspective(0);
            transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, 4deg) perspective(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(5%, 0, 0) rotate3d(0, 0, 1, 12deg) perspective(0);
            transform: translate3d(5%, 0, 0) rotate3d(0, 0, 1, 12deg) perspective(0);
  }
}

@keyframes a-fadein-img-01 {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, 4deg) perspective(0);
            transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, 4deg) perspective(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(5%, 0, 0) rotate3d(0, 0, 1, 12deg) perspective(0);
            transform: translate3d(5%, 0, 0) rotate3d(0, 0, 1, 12deg) perspective(0);
  }
}
.p-howto-bg-img-area-02 {
  position: absolute;
  top: 50%;
  right: 8%;
  -webkit-transform: translate3d(0, -50%, 0) perspective(0);
          transform: translate3d(0, -50%, 0) perspective(0);
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.p-howto-bg-img-02 {
  width: 180px;
  height: 750px;
  background-size: 170px;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 0;
  -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
}
@media screen and (max-width: 767px) {
  .p-howto-bg-img-02 {
    display: none;
  }
}

.a-fadein-img02 {
  -webkit-animation: a-fadein-img-02 0.4s both 0.8s ease;
          animation: a-fadein-img-02 0.4s both 0.8s ease;
  visibility: visible !important;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

@-webkit-keyframes a-fadein-img-02 {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(5%, 0, 0) rotate3d(0, 0, 1, -2deg) perspective(0);
            transform: translate3d(5%, 0, 0) rotate3d(0, 0, 1, -2deg) perspective(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(-10%, 0, 0) rotate3d(0, 0, 1, -14deg) perspective(0);
            transform: translate3d(-10%, 0, 0) rotate3d(0, 0, 1, -14deg) perspective(0);
  }
}

@keyframes a-fadein-img-02 {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(5%, 0, 0) rotate3d(0, 0, 1, -2deg) perspective(0);
            transform: translate3d(5%, 0, 0) rotate3d(0, 0, 1, -2deg) perspective(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(-10%, 0, 0) rotate3d(0, 0, 1, -14deg) perspective(0);
            transform: translate3d(-10%, 0, 0) rotate3d(0, 0, 1, -14deg) perspective(0);
  }
}
.p-howto-bgarea-03 {
  position: absolute;
  width: 14%;
  top: 10%;
  left: 10%;
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

.p-howto-bg-img-03 {
  -webkit-transform: rotate3d(0, 0, 1, 7deg) perspective(0);
          transform: rotate3d(0, 0, 1, 7deg) perspective(0);
  -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (max-width: 1170px) {
  .p-howto-bg-img-03 {
    display: none;
  }
}

.p-howto-bgarea-04 {
  position: absolute;
  width: 26%;
  top: 52%;
  right: 10%;
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

.p-howto-bg-img-04 {
  -webkit-transform: rotate3d(0, 0, 1, 7deg) perspective(0);
          transform: rotate3d(0, 0, 1, 7deg) perspective(0);
  -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (max-width: 767px) {
  .p-howto-bg-img-04 {
    display: none;
  }
}

.p-howto-bgarea-05 {
  position: absolute;
  width: 24%;
  top: 86%;
  left: 3%;
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

.p-howto-bg-img-05 {
  -webkit-transform: rotate3d(0, 0, 1, 7deg) perspective(0);
          transform: rotate3d(0, 0, 1, 7deg) perspective(0);
  -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (max-width: 767px) {
  .p-howto-bg-img-05 {
    display: none;
  }
}

.p-howto-bg-img-06 {
  position: absolute;
  top: 78%;
  left: -10%;
  width: 400px;
  height: 400px;
  background-size: 400px;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 0;
  -webkit-transform: translate3d(0, -50%, 0) rotate3d(0, 0, 1, 7deg) perspective(0);
          transform: translate3d(0, -50%, 0) rotate3d(0, 0, 1, 7deg) perspective(0);
  -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (max-width: 767px) {
  .p-howto-bg-img-06 {
    left: 0;
    width: 300px;
    height: 300px;
    background-size: 300px;
  }
}

.p-howto-bg-img-07 {
  position: absolute;
  top: 78%;
  left: 80%;
  width: 400px;
  height: 400px;
  background-size: 400px;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 0;
  -webkit-transform: translate3d(0, -50%, 0) rotate3d(0, 0, 1, 7deg) perspective(0);
          transform: translate3d(0, -50%, 0) rotate3d(0, 0, 1, 7deg) perspective(0);
  -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (max-width: 767px) {
  .p-howto-bg-img-07 {
    top: 83%;
    left: 50%;
    width: 300px;
    height: 300px;
    background-size: 300px;
  }
}

.p-howto-bgarea-08 {
  position: absolute;
  width: 25%;
  top: 14%;
  left: 24%;
}

.p-howto-bg-img-08 {
  -webkit-transform: rotate3d(0, 0, 1, 7deg) perspective(0);
          transform: rotate3d(0, 0, 1, 7deg) perspective(0);
  -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (max-width: 767px) {
  .p-howto-bg-img-08 {
    display: none;
  }
}

.p-howto-bgarea-09 {
  position: absolute;
  width: 13%;
  top: 50%;
  left: 6%;
  z-index: 1;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

.p-howto-bg-img-09 {
  -webkit-transform: rotate3d(0, 0, 1, -7deg) perspective(0);
          transform: rotate3d(0, 0, 1, -7deg) perspective(0);
  -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (max-width: 767px) {
  .p-howto-bg-img-09 {
    display: none;
  }
}

.p-howto-bgarea-10 {
  position: absolute;
  width: 20%;
  top: 82%;
  left: 26%;
  z-index: 0;
}

.p-howto-bg-img-10 {
  -webkit-transform: rotate3d(0, 0, 1, 2deg) perspective(0);
          transform: rotate3d(0, 0, 1, 2deg) perspective(0);
  -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (max-width: 1170px) {
  .p-howto-bg-img-10 {
    display: none;
  }
}

.p-howto-bgarea-11 {
  position: absolute;
  width: 48%;
  top: 21%;
  right: 0;
  z-index: 1;
}

.p-howto-bg-img-11 {
  -webkit-transform: rotate3d(0, 0, 1, 2deg) perspective(0);
          transform: rotate3d(0, 0, 1, 2deg) perspective(0);
  -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (max-width: 1170px) {
  .p-howto-bg-img-11 {
    display: none;
  }
}

.p-howto-bgarea-12 {
  position: absolute;
  width: 24%;
  top: 92%;
  right: 22%;
  z-index: 0;
}

.p-howto-bg-img-12 {
  -webkit-transform: rotate3d(0, 0, 1, 2deg) perspective(0);
          transform: rotate3d(0, 0, 1, 2deg) perspective(0);
  -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (max-width: 1170px) {
  .p-howto-bg-img-12 {
    display: none;
  }
}

.p-howto-bgarea-vip01 {
  position: absolute;
  width: 20%;
  top: 50%;
  left: 1%;
  z-index: 0;
}

.p-howto-bg-img-vip01 {
  -webkit-transform: rotate3d(0, 0, 1, 7deg) perspective(0);
          transform: rotate3d(0, 0, 1, 7deg) perspective(0);
  -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (max-width: 1170px) {
  .p-howto-bg-img-vip01 {
    display: none;
  }
}

.p-howto-bgarea-vip02 {
  position: absolute;
  width: 20%;
  top: 50%;
  right: 1%;
  z-index: 0;
}

.p-howto-bg-img-vip02 {
  -webkit-transform: rotate3d(0, 0, 1, -7deg) perspective(0);
          transform: rotate3d(0, 0, 1, -7deg) perspective(0);
  -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (max-width: 1170px) {
  .p-howto-bg-img-vip02 {
    display: none;
  }
}

.p-howto-different-title {
  font-family: "Shadows Into Light", cursive;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  text-align: center;
  margin: 0 auto;
  font-size: 3.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: center;
}
@media screen and (max-width: 1170px) {
  .p-howto-different-title {
    font-size: 2rem;
  }
}

.p-howto-different-titlebox {
  position: absolute;
  top: -60px;
  left: 90%;
  width: 300px;
  height: 300px;
  background-position: center center;
  background-size: 300px;
  background-repeat: no-repeat;
  z-index: 999;
  -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 1170px) {
  .p-howto-different-titlebox {
    top: -80px;
    left: calc(100% - 160px);
    width: 150px;
    height: 150px;
    background-size: 150px;
  }
}

.p-howto-different-titlebox-2nd {
  position: absolute;
  top: -60px;
  right: 92%;
  width: 300px;
  height: 300px;
  background-position: center center;
  background-size: 300px;
  background-repeat: no-repeat;
  z-index: 999;
  -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.6));
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 1170px) {
  .p-howto-different-titlebox-2nd {
    top: -80px;
    left: 0;
    width: 150px;
    height: 150px;
    background-size: 150px;
  }
}

.p-howto-different-title-lead {
  position: relative;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  margin-bottom: 20px;
}
@media screen and (max-width: 1170px) {
  .p-howto-different-title-lead {
    font-size: 2.4rem;
    margin-top: 40px;
  }
}

.p-howto-different-title-desc {
  position: relative;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: left;
  margin-bottom: 20px;
}
@media screen and (max-width: 1170px) {
  .p-howto-different-title-desc {
    font-size: 1.4rem;
  }
}

.p-howto-floor-img {
  display: block;
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.p-howto-floor-img::before {
  background-color: transparent;
}

.p-howto-floor-text {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-howto-floor-text {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-howto-floor-text {
  padding: 20px 0;
}

.p-howto-important {
  color: #FF172F;
  font-weight: bold;
}

.p-howto-sponsorarea {
  display: block;
  width: auto;
  background-color: rgba(0, 0, 0, 0.7);
  border: 5px solid #FF172F;
  padding: 40px 10px;
  margin-bottom: 80px;
}

.p-howto-sponsor-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
  margin-top: 10px;
  color: #FF172F;
}
@media screen and (max-width: 767px) {
  .p-howto-sponsor-title {
    font-size: 1.6rem;
  }
}

.p-howto-sponsor {
  -webkit-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 10px;
  padding: 10px;
}
@media screen and (max-width: 767px) {
  .p-howto-sponsor {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.p-howto-sponsor-icon {
  width: 140px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-howto-sponsor-icon {
    width: 25%;
    margin-bottom: 20px;
  }
}

.p-howto-sponsor-logo {
  width: auto;
  height: 40px;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.p-howto-sponsor-logo:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale3d(1.1, 1.1, 1.1) perspective(0);
          transform: scale3d(1.1, 1.1, 1.1) perspective(0);
}
@media screen and (max-width: 767px) {
  .p-howto-sponsor-logo {
    height: 40px;
  }
}

.p-howto-bg-wrapper {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 160px 0;
  overflow: hidden;
}
.p-howto-bg-wrapper::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 157, 162, 0.6);
}
@media screen and (max-width: 767px) {
  .p-howto-bg-wrapper::before {
    background-color: rgba(0, 157, 162, 0.6);
  }
}
@media screen and (max-width: 767px) {
  .p-howto-bg-wrapper {
    padding: 120px 0;
  }
}

.p-howto-ready-area {
  padding: 40px 0;
}
@media screen and (max-width: 767px) {
  .p-howto-ready-area {
    padding: 10px;
  }
}

.p-howto-ready-title {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  text-align: center;
  margin: 0 auto;
  width: 100%;
  font-size: 7rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.1;
  text-align: center;
  -webkit-transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, 5deg) perspective(0);
          transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, 5deg) perspective(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  color: #FF172F;
}
@media screen and (max-width: 767px) {
  .p-howto-ready-title {
    -webkit-transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, 4deg) perspective(0);
            transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, 4deg) perspective(0);
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    font-size: 4rem;
    padding: 20px;
  }
}

.p-howto-subtitle-area {
  position: relative;
  display: block;
  width: 100%;
  margin: 120px auto 80px auto;
  text-align: center;
  z-index: 1;
}

.p-howto-subtitle {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: inline-block;
  font-size: 4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 3px;
  line-height: 1.1;
  text-align: center;
  color: #f0f0f0;
  padding: 10px 40px;
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.p-howto-subtitle::before {
  content: "";
  position: absolute;
  bottom: 4px;
  left: 50%;
  -webkit-transform: translate3d(-50%, 0, 0) perspective(0);
          transform: translate3d(-50%, 0, 0) perspective(0);
  background-color: #ffffff;
  width: 20%;
  height: 2px;
  text-align: center;
  margin: 0 auto;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .p-howto-subtitle {
    font-size: 3rem;
  }
}

.p-howto-systemarea {
  position: relative;
  width: 100%;
  z-index: 0;
  background-color: rgba(255, 255, 255, 0.2);
  padding: 40px 10px;
  margin-top: 20px;
  min-height: 130px;
}
@media screen and (max-width: 767px) {
  .p-howto-systemarea {
    margin-bottom: 40px;
    min-height: auto;
  }
}

.p-howto-system-numb {
  position: absolute;
  font-size: 10rem;
  font-weight: bold;
  line-height: 1;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0) perspective(0);
          transform: translate3d(-50%, -50%, 0) perspective(0);
  color: rgba(255, 23, 47, 0.5);
  z-index: -1;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (max-width: 767px) {
  .p-howto-system-numb {
    font-size: 7rem;
    top: 50%;
    left: 30px;
    -webkit-transform: translate3d(0, -50%, 0) perspective(0);
            transform: translate3d(0, -50%, 0) perspective(0);
  }
}

.p-howto-system-title {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: center;
  margin-bottom: 10px;
  z-index: 1;
  background-color: #333;
  -webkit-box-shadow: 2px 2px 8px #888;
          box-shadow: 2px 2px 8px #888;
  color: #ffffff;
  -webkit-transform: rotate3d(0, 0, 1, -4deg) perspective(0);
          transform: rotate3d(0, 0, 1, -4deg) perspective(0);
  padding: 8px;
}
@media screen and (max-width: 767px) {
  .p-howto-system-title {
    font-size: 1.6rem;
  }
}

.p-howto-system-title-lead {
  width: 100%;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: left;
  z-index: 1;
}

.p-howto-system-week-area {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  vertical-align: top;
}

.p-howto-system-week-title {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 2.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.1;
  text-align: left;
  padding: 10px;
  color: #ffffff;
}

.p-howto-system-week-titlegenre {
  position: absolute;
  bottom: 0;
  right: 0;
  color: #ffffff;
  font-size: 1.6rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: right;
  padding: 10px;
}
.p-howto-system-week-titlegenre span {
  display: block;
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.1;
  text-align: center;
}

.p-howto-system-fee-box {
  display: inline-block;
  width: calc(100% - 230px);
  margin-left: 20px;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .p-howto-system-fee-box {
    width: 100%;
    margin: 0 auto;
  }
}

.p-howto-system-fee-area {
  width: 100%;
  overflow: hidden;
  margin-bottom: 40px;
}

.p-howto-system-fee-list {
  background-color: #ffffff;
  width: 100%;
  height: 200px;
  border-collapse: separate;
  border-spacing: 2px 2px;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .p-howto-system-fee-list {
    height: auto;
    border-spacing: 3px 3px;
    padding: 2px 0;
  }
}

.p-howto-system-fee-list-lead {
  color: #000000;
}

.p-howto-system-fee-list-label {
  color: #ffffff;
  background-color: #000000;
}

.p-howto-system-fee-list-men {
  color: #122269;
}

.p-howto-system-fee-list-women {
  color: #691212;
}

.p-howto-system-fee-list-time,
.p-howto-system-fee-list-price {
  width: 33.3333%;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.1;
  text-align: center;
  vertical-align: middle;
  padding: 1px 0;
}
.p-howto-system-fee-list-time span,
.p-howto-system-fee-list-price span {
  display: block;
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  text-indent: 1px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-howto-system-fee-list-time,
  .p-howto-system-fee-list-price {
    font-size: 1.4rem;
    padding: 2px 0;
  }
}

@media screen and (max-width: 767px) {
  .p-howto-system-fee-list-time {
    display: block;
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .p-howto-system-fee-list-price {
    display: inline-block;
    width: 50%;
  }
}

.p-howto-system-week-box {
  display: inline-block;
  position: relative;
  top: 0;
  left: 0;
  background-color: #002c48;
  width: 200px;
  height: 200px;
}
@media screen and (max-width: 767px) {
  .p-howto-system-week-box {
    width: 100%;
    height: 100px;
    padding: 10px;
    margin: 0 auto 10px auto;
  }
}

.p-howto-system-area {
  position: relative;
  width: 100%;
  margin: 120px auto;
}

.p-howto-system-subtitle-area {
  display: block;
  width: 100%;
  margin: 0 auto;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-howto-img-circle-area {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 5) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 5) - 10px - 0.1px);
    max-width: calc(100% / (12 / 5) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

@media screen and (max-width: 767px) {
  .p-howto-system-subtitle-area-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}

@media screen and (max-width: 767px) {
  .p-howto-system-subtitle-area-flex-son1,
  .p-howto-system-subtitle-area-flex-son2 {
    width: 100%;
  }
}

.p-howto-system-subtitle {
  display: block;
  text-align: center;
  background-color: #444;
  padding: 10px 80px;
}

.p-howto-system-img {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  padding-top: 56.25%;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  margin-bottom: 40px;
}

.p-howto-system-desc {
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.75;
  padding: 20px;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .p-howto-system-desc {
    font-size: 1.2rem;
  }
}

.p-howto-vipplan-area {
  margin-bottom: 40px;
}

.p-howto-vipplan-title {
  display: block;
  text-align: center;
  background-color: #FF172F;
  padding: 10px 80px;
  margin-bottom: 40px;
}

.p-howto-vipplan-text {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 100%;
  -webkit-transform: translate3d(-50%, 0, 0) rotate3d(0, 0, 1, 7deg) perspective(0);
          transform: translate3d(-50%, 0, 0) rotate3d(0, 0, 1, 7deg) perspective(0);
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: center;
  color: #ffffff;
  background-color: #333;
  -webkit-box-shadow: 2px 2px 8px #888;
          box-shadow: 2px 2px 8px #888;
  padding: 8px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (max-width: 767px) {
  .p-howto-vipplan-text {
    font-size: 1.6rem;
  }
}

.p-howto-vipplan-desc {
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: left;
  padding: 20px;
  margin-top: 20px;
  margin-bottom: 80px;
  color: #000000;
  background-color: rgba(255, 255, 255, 0.7);
}
@media screen and (max-width: 767px) {
  .p-howto-vipplan-desc {
    font-size: 1.4rem;
  }
}

.p-howto-vipplan-img {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  padding-top: 56.25%;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  margin-bottom: 80px;
}
.p-howto-vipplan-img::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 767px) {
  .p-howto-vipplan-img {
    margin-bottom: 40px;
  }
}

.p-howto-vipplan-img-bg {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  padding: 40px 10px;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  margin-bottom: 80px;
}
.p-howto-vipplan-img-bg::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .p-howto-vipplan-img-bg {
    margin-bottom: 40px;
  }
}

.p-howto-vipplan-subtitlearea {
  display: block;
  position: relative;
  text-align: center;
  z-index: 1;
}

.p-howto-vipplan-subheader {
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: center;
  padding: 20px 10px;
  margin-bottom: 20px;
  color: #ffffff;
  background-color: #444;
}
@media screen and (max-width: 767px) {
  .p-howto-vipplan-subheader {
    font-size: 2rem;
  }
}

.p-howto-vipplan-subtitle {
  display: inline-block;
  font-size: 3.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: center;
  padding: 5px 20px;
  margin-top: 10px;
  margin-bottom: 10px;
  background-color: #000000;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-howto-vipplan-subtitle {
    font-size: 2rem;
    margin: 0 auto;
  }
}

.p-howto-vipplan-lead {
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: center;
  padding: 10px;
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .p-howto-vipplan-lead {
    font-size: 1.6rem;
  }
}

.p-howto-vipplan-catcharea {
  width: 100%;
  display: block;
  text-align: right;
}

.p-howto-vipplan-catch {
  display: inline-block;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  padding: 5px 20px;
  margin: 0;
  color: #FF172F;
  background-color: #ffffff;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: rotate3d(0, 0, 1, 10deg) perspective(0);
          transform: rotate3d(0, 0, 1, 10deg) perspective(0);
}
@media screen and (max-width: 767px) {
  .p-howto-vipplan-catch {
    font-size: 2rem;
  }
}

.p-howto-vipplan-lead-desc {
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: center;
  padding: 10px;
  margin-top: 10px;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .p-howto-vipplan-lead-desc {
    font-size: 1.4rem;
    font-weight: normal;
    text-align: left;
  }
}

.p-howto-vipplan-lead-desc-small {
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: center;
  padding: 10px;
  margin-top: 10px;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .p-howto-vipplan-lead-desc-small {
    font-size: 1.2rem;
    text-align: left;
  }
}

.p-howto-bg-reserve-wrapper {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 0;
  overflow: hidden;
}
.p-howto-bg-reserve-wrapper::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.4);
}
@media screen and (max-width: 767px) {
  .p-howto-bg-reserve-wrapper::before {
    background-color: rgba(0, 0, 0, 0.4);
  }
}
@media screen and (max-width: 767px) {
  .p-howto-bg-reserve-wrapper {
    padding: 60px 0;
  }
}

.p-howto-reserve-lead {
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: center;
  padding: 10px;
  margin-top: 10px;
  margin-bottom: 20px;
}

.p-howto-reserve-area {
  position: relative;
  padding: 80px 0 120px 0;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .p-howto-reserve-area {
    padding: 0;
  }
}

.p-howto-reserve-btnarea {
  margin-bottom: 80px;
}

@media screen and (max-width: 767px) {
  .p-howto-reserve-btnarea-sp {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

.p-howto-access-img {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  padding-top: 100%;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  margin-bottom: 40px;
}

.p-howto-access-name {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: block;
  font-size: 5rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: left;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .p-howto-access-name {
    font-size: 3rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.75;
    margin-bottom: 20px;
  }
}

.p-howto-access-lead {
  display: block;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  margin-bottom: 5px;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .p-howto-access-lead {
    font-size: 1.2rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.4;
    margin-bottom: 5px;
  }
}

.p-howto-access-link {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: inline-block;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: left;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .p-howto-access-link {
    font-size: 1.8rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.2;
  }
}
.p-howto-access-link:hover {
  opacity: 0.7;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  text-decoration: underline;
}

.p-howto-access-fax,
.p-howto-access-mail {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: inline-block;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: left;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .p-howto-access-fax,
  .p-howto-access-mail {
    font-size: 1.8rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.2;
  }
}

.p-howto-access-movie {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  margin: 40px auto 80px auto;
}
.p-howto-access-movie iframe {
  min-height: 315px;
}

.color-yellow {
  background-color: #fcffd5;
}

.color-purple {
  background-color: #bb9fcb;
}

.color-blue {
  background-color: #86c5be;
}

.color-green {
  background-color: #8bc180;
}

.p-howto-access-head {
  position: relative;
  top: 0;
  left: 0;
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 4rem;
  font-weight: bold;
  letter-spacing: 0.15em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-howto-access-head::before, .p-howto-access-head::after {
  content: "";
  width: 50%;
  height: 10px;
  background-color: #ffffff;
}
.p-howto-access-head::before {
  margin-right: 20px;
}
.p-howto-access-head::after {
  margin-left: 20px;
}
@media screen and (max-width: 767px) {
  .p-howto-access-head {
    font-size: 2rem;
    margin: 20px 0;
  }
}

.p-howto-access-flex {
  line-height: 1.6;
  font-size: 1.4rem;
  font-weight: bold;
  margin: 40px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .p-howto-access-flex {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 60px 0;
  }
}

@media screen and (max-width: 767px) {
  .sp-flex {
    margin: 0;
  }
}

.p-howto-access-destination {
  position: relative;
  width: 40%;
  text-align: center;
  padding: 0 20px;
}
@media screen and (max-width: 767px) {
  .p-howto-access-destination {
    padding: 0 10px;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-left: 1px solid #fff;
    margin: 10px 0 10px 40px;
    padding: 10px 20px;
    text-align: left;
  }
  .p-howto-access-destination::after {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #fff;
    bottom: 0;
    left: -10px;
  }
}

.p-howto-access-arrow {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid #ffffff;
  margin-top: 10px;
}
.p-howto-access-arrow::after {
  content: "";
  position: absolute;
  border-style: solid;
  border-width: 10px 0 10px 12px;
  border-color: transparent transparent transparent #ffffff;
  display: inline-block;
  vertical-align: middle;
  top: -10px;
  right: 0;
}
@media screen and (max-width: 767px) {
  .p-howto-access-arrow {
    display: none;
  }
}

.p-howto-access-station {
  width: 30%;
  color: #000000;
  padding: 10px 20px;
  border-radius: 50px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-howto-access-station {
    padding: 5px 10px;
    border-radius: 30px;
    width: 100%;
  }
}

.p-howto-access-googlemaparea {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: block;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-howto-access-googlemaparea {
    padding: 0 20px;
    margin-top: 40px;
  }
}

.p-howto-access-img-box {
  width: 100%;
  margin: 10px auto;
}
@media screen and (max-width: 767px) {
  .p-howto-access-img-box {
    padding: 0 10px;
  }
}

.p-howto-footer-area {
  width: 400px;
  text-align: center;
  margin: 0 auto 20px auto;
}
@media screen and (max-width: 767px) {
  .p-howto-footer-area {
    width: 100%;
  }
}

.p-howto-footer-area-sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-howto-footer-area-sns {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.p-howto-footer-area-sns-icon {
  color: #ffffff;
  text-align: center;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-howto-footer-area-sns-icon {
    width: auto;
    margin-bottom: 20px;
  }
}

.p-howto-footer-area-sns-link {
  display: inline-block;
  width: 40px;
  font-size: 3.8rem;
  color: #ffffff;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-transform: translate3d(0, 0, 0) perspective(0);
          transform: translate3d(0, 0, 0) perspective(0);
  line-height: 1;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.p-howto-footer-area-sns-link:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: translate3d(0, 0, 0) scale3d(1.15, 1.15, 1.15) perspective(0);
          transform: translate3d(0, 0, 0) scale3d(1.15, 1.15, 1.15) perspective(0);
}
@media screen and (max-width: 767px) {
  .p-howto-footer-area-sns-link {
    font-size: 3rem;
    padding: 10px;
  }
}

.p-howto-footer-area-sns-link-warp {
  display: inline-block;
  width: 40px;
  font-size: 2.8rem;
  color: #ffffff;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-transform: rotate3d(0, 0, 1, 0deg) perspective(0);
          transform: rotate3d(0, 0, 1, 0deg) perspective(0);
  line-height: 1;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  margin: 0 auto;
  text-align: center;
}
.p-howto-footer-area-sns-link-warp:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: rotate3d(0, 0, 1, 360deg) perspective(0);
          transform: rotate3d(0, 0, 1, 360deg) perspective(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media screen and (max-width: 767px) {
  .p-howto-footer-area-sns-link-warp {
    width: 34px;
    margin-top: 10px;
  }
}

.p-howto-faq-title {
  position: relative;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: center;
  margin-top: 10px;
  margin-bottom: 20px;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-howto-faq-title {
    margin: 0 auto 10px auto;
  }
}

.p-howto-faq-lead {
  position: relative;
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: left;
  margin-top: 10px;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .p-howto-faq-lead {
    margin: 0 auto;
  }
}

.p-howto-faq-leadarea {
  position: relative;
  background-color: #444;
  padding: 20px;
  margin-bottom: 40px;
  min-height: 220px;
}
.p-howto-faq-leadarea::before {
  content: "\f059";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0) perspective(0);
          transform: translate3d(-50%, -50%, 0) perspective(0);
  font-family: "Font Awesome 5 Free";
  font-size: 15rem;
  font-weight: bold;
  opacity: 0.3;
}
@media screen and (max-width: 767px) {
  .p-howto-faq-leadarea {
    padding: 40px 10px;
    min-height: auto;
  }
}

.p-howto-faq-btnarea {
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .p-howto-faq-btnarea {
    padding: 0 20px;
  }
}

.p-howto-footer-wrapper {
  position: relative;
  width: 100%;
  background-color: #009DA2;
  padding: 80px 0;
  overflow: hidden;
}

.p-howto-footer-area-box {
  display: block;
  text-align: center;
  margin: 0 auto;
  padding: 0;
}

.p-howto-footer-area-copyrightlink {
  display: inline;
  text-decoration: underline;
}

.p-howto-comment-area {
  display: block;
  margin: 40px auto;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-howto-comment-area {
    margin: 40px auto;
  }
}

.p-howto-comment-box {
  position: relative;
  display: inline-block;
  margin: 0 auto;
  padding: 30px 40px;
  background: #FF172F;
  border-radius: 15px;
}
@media screen and (max-width: 767px) {
  .p-howto-comment-box {
    padding: 20px 10px;
  }
}

.p-howto-comment-box:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #FF172F;
}

.p-howto-comment-text {
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 3px;
  line-height: 1.75;
  text-align: center;
  color: #ffffff;
  margin: 0;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-howto-comment-text {
    font-size: 1.6rem;
  }
}

.p-howto-btn-item {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: relative;
  display: block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: center;
  color: #ffffff !important;
  padding: 20px;
  margin: 0 auto;
  background-color: #0074BF;
  z-index: 1;
  overflow: hidden;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 1170px) {
  .p-howto-btn-item {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .p-howto-btn-item {
    width: 100%;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 2px;
    padding: 20px 10px;
    margin: 0 auto 20px auto;
    -webkit-box-shadow: 0.5px 0px 5px 0.5px #FCF103;
            box-shadow: 0.5px 0px 5px 0.5px #FCF103;
  }
}
.p-howto-btn-item::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #009DA2;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  z-index: -1;
  -webkit-transform: translate3d(-100%, 0, 0) perspective(0);
          transform: translate3d(-100%, 0, 0) perspective(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.p-howto-btn-item:hover.p-howto-btn-item::before {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: translate3d(0, 0, 0) perspective(0);
          transform: translate3d(0, 0, 0) perspective(0);
}

.p-howto-pagetop {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 999;
}

.p-howto-pagetop-btn {
  background-color: #0074BF;
  font-size: 3rem;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  margin: 5px auto;
}
.p-howto-pagetop-btn:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  background-color: #005a5d;
}

.p-howto-reservation {
  position: fixed;
  top: 50%;
  left: 0;
  -webkit-transform: translate3d(-300px, -50%, 0) perspective(0);
          transform: translate3d(-300px, -50%, 0) perspective(0);
  z-index: 999;
  -webkit-transition: ease 0.4s;
  transition: ease 0.4s;
}
.p-howto-reservation.active {
  -webkit-transition: ease 0.4s;
  transition: ease 0.4s;
  -webkit-transform: translate3d(0, -50%, 0) perspective(0);
          transform: translate3d(0, -50%, 0) perspective(0);
}

.p-howto-reservation-btn {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  background-color: #FCF103;
  font-size: 1.6rem;
  border-radius: 0 10px 10px 0;
  line-height: 1.4;
  text-align: center;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  color: #000000;
  padding: 10px;
}
.p-howto-reservation-btn span {
  font-size: 4rem;
}
.p-howto-reservation-btn:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  background-color: #0074BF;
}

.p-howto-slide-area {
  position: relative;
  width: 100%;
  height: auto;
  background-color: #000000;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background-color: #ffffff;
}

.p-howto-slide-wrapper:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  top: 0;
  left: 0;
}

.p-howto-slide-titlearea {
  display: block;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0) perspective(0);
          transform: translate3d(-50%, -50%, 0) perspective(0);
  z-index: 1;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.p-howto-slide-title {
  display: inline-block;
  width: auto;
  padding: 20px 40px;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 2px;
  line-height: 1.1;
  text-align: center;
  background-color: #FCF103;
  border: solid 3px #FCF103;
  margin: 0 auto;
  color: #000000;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.p-howto-slide-title:hover {
  background-color: transparent;
  color: #FCF103;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.p-howto-slide-ticker {
  width: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-howto-slide-tickeritem {
  position: relative;
  width: 100%;
  padding: 0;
  margin: 0 auto;
}

.p-howto-slide-thumbnail {
  padding: 0;
  margin: 0 auto;
}

.p-howto-slide-webTickeritem {
  padding: 0;
}

@media screen and (max-width: 767px) {
  .p-howto-media-post-sp {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

.p-howto-media-postlink {
  position: relative;
  background-color: #ffffff;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  overflow: hidden;
  margin-bottom: 20px;
  border: 1px solid #444;
}
@media screen and (max-width: 767px) {
  .p-howto-media-postlink {
    margin-bottom: 40px;
  }
}

.p-howto-media-postin-image {
  position: relative;
  padding-top: 56.25%;
  background-color: #ffffff;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.p-howto-media-postin-image:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale3d(1.1, 1.1, 1.1) perspective(0);
          transform: scale3d(1.1, 1.1, 1.1) perspective(0);
}

.p-howto-media-postarea {
  display: block;
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 5px;
  z-index: 999;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.p-howto-media-postarea:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  opacity: 0.7;
}

.p-howto-media-date,
.p-howto-media-date span {
  width: 100%;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 1.1;
  color: #ffffff;
}

.p-howto-media-postin-name {
  width: 100%;
  font-size: 1.6rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.1;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-howto-media-postin-name {
    font-size: 1.2rem;
  }
}

.p-howto-media-postlink {
  position: relative;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  margin-bottom: 40px;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
}

.p-howto-contact-area {
  max-width: 800px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-howto-contact-area {
    max-width: auto;
    padding: 0 10px;
  }
}

.p-howto-contact-img-box {
  max-width: 500px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-howto-contact-img-box {
    max-width: auto;
    padding: 0 10px;
  }
}

.p-howto-contact-box {
  width: 100%;
  border: 2px solid #ffffff;
  padding: 30px 80px;
  background-color: rgba(0, 0, 0, 0.9);
}
@media screen and (max-width: 767px) {
  .p-howto-contact-box {
    padding: 15px 10px;
  }
}

.p-howto-contact-title {
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.4;
  color: #ffffff;
  margin-bottom: 20px;
  border-bottom: 1px solid #ffffff;
}

.p-howto-contact-text {
  font-family: "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.6;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .p-howto-contact-text {
    font-size: 1.2rem;
    font-weight: normal;
  }
}

.p-howto-contact-tel {
  display: inline-block;
  vertical-align: top;
}

.p-howto-contact-tel-other {
  display: inline;
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: left;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .p-howto-contact-tel-other {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    text-indent: 1px;
    line-height: 1.75;
  }
}

.p-howto-about-cont {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0 auto;
  padding: 120px 0;
  text-align: center;
  z-index: 100;
}

.p-merch-header-wrapper {
  display: none;
}

/*==============================
-Page
===============================*/
.p-merch-bg-area {
  display: block;
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 0;
  background-position: center center;
  z-index: -30;
}
@media screen and (max-width: 767px) {
  .p-merch-bg-area {
    background-position: 62% center;
  }
}

.p-merch-mv-logo-area {
  position: absolute;
  top: 1.2vw;
  right: 1vw;
}
@media screen and (max-width: 767px) {
  .p-merch-mv-logo-area {
    top: 1.5vw;
    right: 2vw;
    width: 20vw;
  }
}

.p-merch-bg-area2 {
  display: block;
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 0;
  background-position: 66% center;
  z-index: -30;
}

.p-merch-bg-area::before,
.p-merch-bg-area2::before {
  background-color: transparent;
  opacity: 0.7;
  z-index: -20;
  background-color: rgba(255, 255, 255, 0.8);
}

.p-merch-wrapper {
  position: relative;
  overflow: hidden;
  background-color: #fff;
  z-index: 10;
}

.c-text-merch-wrapper {
  background-color: #fff;
  padding: 0;
}

.p-merch-mv-area {
  display: block;
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  height: 30vw;
  padding-top: 70%;
}
.p-merch-mv-area::before {
  background-color: transparent;
}
@media screen and (max-width: 767px) {
  .p-merch-mv-area {
    padding-top: 71.25%;
  }
}

.p-merch-item-img-content {
  width: 74%;
  margin: 12vw auto 0;
}
@media screen and (max-width: 767px) {
  .p-merch-item-img-content {
    width: 90%;
  }
}

.p-merch-item-img-area {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  margin-top: 5vw;
  padding-top: 38.25%;
}
.p-merch-item-img-area::before {
  position: absolute;
  background-color: transparent;
}

.p-merch-item-price-area {
  display: inline-block;
  width: 100%;
  margin: 3vw auto;
  text-align: right;
  padding: 0 17.5vw;
}
@media screen and (max-width: 767px) {
  .p-merch-item-price-area {
    width: 75%;
  }
}

.p-merch-item-price-img {
  width: 70%;
}

.p-merch-item-bg-area {
  display: block;
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 0%;
  background-position: center 58vw;
}

.p-merch-profile-bg-area {
  display: block;
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 0%;
}

.p-merch-profile-content {
  margin: 8vw auto 0;
  padding: 0 4vw 1vw;
  width: 79vw;
  max-width: 1500px;
}
@media screen and (max-width: 767px) {
  .p-merch-profile-content {
    width: 85vw;
    padding: 0 0 1vw;
    margin: 12vw auto 0;
  }
}

.p-merch-profile-img {
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 767px) {
  .p-merch-profile-img {
    display: none;
  }
}

.p-merch-profile-img-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .p-merch-profile-img-sp {
    display: block;
    max-width: 100%;
    margin: 0 auto;
    height: auto;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

.p-merch-profile-text-area {
  padding: 0 3vw;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-merch-profile-text-area {
    padding: 0;
    margin: 5vw auto 0;
  }
}

.p-merch-profile-text {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-merch-profile-text {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-merch-profile-text {
  font-size: 1.6rem;
  text-align: left;
  color: #333;
}
.p-merch-profile-text span {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 0;
}
@media screen and (max-width: 767px) {
  .p-merch-profile-text {
    font-size: clamp(1.6rem, 3.4vw, 1.8rem);
    line-height: 1.6;
  }
}
.p-merch-qr-wrapper {
  position: relative;
}

.p-merch-qr-title-img-area {
  margin: 8vw auto 2vw;
  width: 75%;
}
@media screen and (max-width: 767px) {
  .p-merch-qr-title-img-area {
    width: 100%;
  }
}

.p-merch-qr-img-area {
  width: 40%;
  display: block;
  margin: 4vw auto 3vw;
}
@media screen and (max-width: 767px) {
  .p-merch-qr-img-area {
    width: 80%;
  }
}

.p-merch-qr-img-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
}

.p-merch-qr-img-link {
  display: block;
  margin: 0 1vw;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-merch-qr-img-link:hover {
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-transform: scale3d(1.05, 1.05, 1.05);
          transform: scale3d(1.05, 1.05, 1.05);
}

.p-merch-qr-img-nolink {
  display: block;
  margin: 0 1vw;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

.p-merch-qr-img {
  display: inline-block;
}

.p-merch-qr-text-content {
  padding: 0 6vw;
}
@media screen and (max-width: 767px) {
  .p-merch-qr-text-content {
    padding: 0 4vw;
  }
}

.p-merch-qr-title-area {
  margin-top: 2vw;
  padding: 0 4vw;
}

.p-merch-qr-title {
  color: #333;
  text-align: center;
  line-height: 1.5;
  font-size: clamp(2rem, 2vw, 2.4rem);
}
@media screen and (max-width: 767px) {
  .p-merch-qr-title {
    font-size: clamp(1.8rem, 3.6vw, 2.2rem);
    text-align: left;
  }
}

.p-merch-qr-title .pcbr {
  display: block;
}
@media screen and (max-width: 821px) {
  .p-merch-qr-title .pcbr {
    display: none;
  }
}

.p-merch-qr-title .spbr {
  display: none;
}
@media screen and (max-width: 767px) {
  .p-merch-qr-title .spbr {
    display: block;
  }
}
@media screen and (max-width: 400px) {
  .p-merch-qr-title .spbr {
    display: none;
  }
}

.p-merch-qr-desc-area {
  padding: 0 4vw;
  display: inline-block;
  width: 100%;
  margin: 1vw auto 2vw;
  text-align: center;
}
@media screen and (max-width: 1160px) {
  .p-merch-qr-desc-area {
    margin: 2vw auto;
  }
}
@media screen and (max-width: 767px) {
  .p-merch-qr-desc-area {
    margin: 4vw auto;
  }
}

.p-merch-qr-desc {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-merch-qr-desc {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-merch-qr-desc {
  display: inline-block;
  text-align: center;
  font-size: clamp(1.5rem, 1.3vw, 1.6rem);
  color: #333;
}
@media screen and (max-width: 767px) {
  .p-merch-qr-desc {
    font-size: clamp(1.6rem, 3.4vw, 1.8rem);
    text-align: left;
    line-height: 1.65;
  }
}

.p-merch-qr-desc .pcbr {
  display: block;
}
@media screen and (max-width: 821px) {
  .p-merch-qr-desc .pcbr {
    display: none;
  }
}

@media screen and (max-width: 821px) {
  .p-merch-qr-desc br {
    display: none;
  }
}

.p-merch-qr-preview-img-area {
  padding: 2vw 4vw;
  width: 60%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-merch-qr-preview-img-area {
    width: 95%;
  }
}

.p-merch-gallery-wrapper {
  margin: 2vw auto 0;
  width: 85%;
}
@media screen and (max-width: 767px) {
  .p-merch-gallery-wrapper {
    margin: 10vw auto 0;
  }
}

.p-merch-gallery-area {
  padding: 2vw;
}
@media screen and (max-width: 767px) {
  .p-merch-gallery-area {
    padding: 0;
  }
}

.p-merch-gallery-img-area {
  margin-top: 3vw;
}

.p-merch-gallery-area .p-merch-gallery-img-area:nth-of-type(3) {
  margin-top: 6vw;
}

.p-merch-gallery-img {
  width: 70%;
}
@media screen and (max-width: 767px) {
  .p-merch-gallery-img {
    width: 100%;
  }
}

.p-merch-buy-title-img-area {
  width: 35%;
  display: block;
  margin: 6vw auto 2vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-merch-buy-title-img-area {
    margin: 10vw auto 1vw;
    width: 60%;
  }
}

.p-merch-buy-title-text-area {
  display: inline-block;
  width: 100%;
  text-align: center;
  margin: 1vw auto 3vw;
}
@media screen and (max-width: 767px) {
  .p-merch-buy-title-text-area {
    margin: 3vw auto 4vw;
    padding: 0 4vw;
  }
}

.p-merch-buy-title-text {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-merch-buy-title-text {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-merch-buy-title-text {
  width: auto;
  display: inline-block;
  color: #333;
  font-size: clamp(1.8rem, 1.7vw, 2.6rem);
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .p-merch-buy-title-text {
    font-size: clamp(1.6rem, 3.4vw, 1.8rem);
    text-align: center;
  }
}

.p-merch-buy-title-text .spbr {
  display: none;
}
@media screen and (max-width: 767px) {
  .p-merch-buy-title-text .spbr {
    display: block;
  }
}

.p-merch-buy-way-img-area {
  width: 70%;
  margin: 0 auto 4vw;
}
@media screen and (max-width: 767px) {
  .p-merch-buy-way-img-area {
    width: 100%;
    margin: 2vw auto 8vw;
    padding: 0 4vw;
  }
}

/*==============================
-Page
===============================*/
.p-vip-menu-wrapper {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  padding: 80px 40px;
}

@media screen and (max-width: 767px) {
  .p-vip-menu-img-sp {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
  }
}

.p-vip-popup-img-link {
  display: block;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.p-vip-popup-img-link:hover {
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  opacity: 0.7;
}

.p-vip-menu-img-title {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-vip-menu-img-title {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-vip-menu-img-title {
  font-size: 1.4rem;
  color: #ffffff;
  text-align: center;
  margin: 10px auto 20px auto;
}
@media screen and (max-width: 767px) {
  .p-vip-menu-img-title {
    font-size: 1.4rem;
  }
}

.p-vip-menu-text {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .p-vip-menu-text {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.p-vip-menu-text {
  font-size: 1.4rem;
  color: #ffffff;
  text-align: center;
  margin: 10px auto 20px auto;
}

/*==============================
-Single
===============================*/
.s-sc-space {
  display: block;
  padding-top: 20px;
}

.s-sc-title {
  display: block;
  font-size: 2.2rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.75;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .s-sc-title {
    font-size: 2rem;
    letter-spacing: 0.05em;
    line-height: 1.75;
  }
}

.s-sc-header {
  display: block;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.75;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .s-sc-header {
    font-size: 1.8rem;
    line-height: 1.75;
  }
}

.s-sc-benefits {
  display: inline-block;
  position: relative;
  top: 0;
  left: 0;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.75;
  padding-left: 10px;
  color: #ffffff;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .s-sc-benefits {
    font-size: 1.8rem;
    line-height: 1.75;
  }
}
.s-sc-benefits::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
  background-color: #e57d35;
}

.s-sc-guest {
  display: inline-block;
  position: relative;
  top: 0;
  left: 0;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.75;
  padding-left: 10px;
  color: #af945c;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .s-sc-guest {
    font-size: 1.8rem;
    line-height: 1.75;
  }
}
.s-sc-guest::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
  background-color: #af945c;
}

.s-sc-men {
  display: block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.75;
  color: #62FEF9;
}
@media screen and (max-width: 767px) {
  .s-sc-men {
    font-size: 1.4rem;
    line-height: 1.75;
  }
}

.s-sc-ladies {
  display: block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.75;
  color: #F91384;
}
@media screen and (max-width: 767px) {
  .s-sc-ladies {
    font-size: 1.4rem;
    line-height: 1.75;
  }
}

.s-sc-common {
  display: block;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.75;
}
@media screen and (max-width: 767px) {
  .s-sc-common {
    font-size: 1.4rem;
    line-height: 1.75;
  }
}

.s-sc-lead {
  display: block;
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1.75;
  letter-spacing: 0.1em;
  margin-bottom: 15px;
}
@media screen and (max-width: 767px) {
  .s-sc-lead {
    font-size: 1.4rem;
  }
}
.s-sc-lead + .s-sc-lead {
  margin-top: 10px;
}

.s-sc-attention {
  display: inline-block;
  background-color: #691212;
  padding: 2px 10px;
  letter-spacing: 0.1em;
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1.75;
  color: #ffffff;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .s-sc-attention {
    font-size: 1.4rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
}

.s-sc-linklead {
  display: block;
  width: 100%;
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.1em;
  line-height: 1.75;
  color: inherit;
  word-break: break-all;
  text-align: left;
}
.s-sc-linklead::before {
  content: "・";
  font-size: 1.4rem;
  padding-right: 8px;
}
@media screen and (max-width: 767px) {
  .s-sc-linklead {
    font-size: 1.4rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
}

.s-sc-link {
  display: inline;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  line-height: 1.75;
  text-decoration: underline;
  color: inherit;
  word-break: break-all;
  text-align: left;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.s-sc-link:hover {
  text-decoration: none;
  text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
}
@media screen and (max-width: 767px) {
  .s-sc-link {
    font-size: 1.4rem;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
}

.s-sc-movie {
  position: relative;
  padding-top: 56.25%;
  margin-bottom: 10px;
}

.s-sc-movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

/*==============================
-Single
===============================*/
.s-single-wrapper {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  padding: 6vw 0;
}
@media screen and (max-width: 767px) {
  .s-single-wrapper {
    padding: 12vw 6vw;
  }
}
.s-single-wrapper {
  padding: 12vw 3vw;
}
@media screen and (max-width: 767px) {
  .s-single-wrapper {
    padding: 120px 6vw 12vw 6vw;
  }
}

.s-single-post-img {
  display: block;
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-top: 56.25%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.s-single-post-title {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .s-single-post-title {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.s-single-post-title {
  font-size: clamp(2rem, 1.2vw, 1.2vw);
  font-weight: bold;
  color: #333;
  padding: 1vw 0;
  margin: 0 auto;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .s-single-post-title {
    font-size: clamp(2.4rem, 4vw, 4vw);
  }
}

.s-single-post-date {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .s-single-post-date {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.s-single-post-date {
  font-size: clamp(1.6rem, 0.8vw, 0.8vw);
  color: #333;
  padding: 1vw 0;
  margin: 0 auto;
  text-align: right;
}
.s-single-post-date span {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .s-single-post-date span {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.s-single-post-date span {
  font-size: clamp(1.6rem, 0.8vw, 0.8vw);
  color: #333;
  margin: 0 auto;
  text-align: right;
}

.s-single-post-desc {
  display: block;
  font-size: clamp(1.4rem, 1vw, 1vw);
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.65;
}
@media screen and (max-width: 767px) {
  .s-single-post-desc {
    font-size: clamp(1.6rem, 3.4vw, 3.4vw);
  }
}
.s-single-post-desc {
  font-size: clamp(1.6rem, 1vw, 1vw);
  color: #333;
  padding: 3vw 0;
  margin: 0 auto;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .s-single-post-desc {
    padding: 12vw 0;
  }
}

/*==============================
-Single
===============================*/
.s-media-box {
  width: 100%;
  height: auto;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .s-media-box {
    padding: 0;
  }
}

.s-media-related-box {
  background-color: rgba(0, 0, 0, 0.8);
  position: relative;
  padding: 80px 40px 0 40px;
}
@media screen and (max-width: 767px) {
  .s-media-related-box {
    padding: 40px 20px 0 20px;
  }
}

.s-media-img {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 56.25%;
  margin-bottom: 40px;
}

.s-media-post-date,
.s-media-post-date span {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .s-media-post-date,
  .s-media-post-date span {
    font-size: 1.6rem;
  }
}

.s-media-lead {
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  text-align: left;
  line-height: 1.75;
  padding: 0;
  margin-bottom: 40px;
}

.s-media-lead-att {
  background-color: rgba(111, 111, 111, 0.3);
  padding: 10px;
}

.s-media-postlink {
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  overflow: hidden;
  border: 1px solid #333;
  margin-bottom: 40px;
}
.s-media-postin-image {
  position: relative;
  padding-top: 56.25%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.s-media-postin-image:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale3d(1.1, 1.1, 1.1) perspective(0);
          transform: scale3d(1.1, 1.1, 1.1) perspective(0);
}

.s-media-postarea {
  display: block;
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 5px;
  z-index: 999;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
.s-media-postarea:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  opacity: 0.7;
}

.s-media-date,
.s-media-date span {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  width: 100%;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 1.1;
}
@media screen and (max-width: 767px) {
  .s-media-date,
  .s-media-date span {
    font-size: 1.2rem;
  }
}

.s-media-postin-name {
  width: 100%;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: left;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .s-media-postin-name {
    font-size: 1.4rem;
  }
}

.s-media-categorybox {
  display: block;
  width: 100%;
}

.s-media-category-link {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  position: absolute;
  display: inline-block;
  top: 0;
  right: 0;
  -webkit-transform: translate(-5px, 5px);
          transform: translate(-5px, 5px);
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.1;
  text-align: right;
  color: #ffffff;
  padding: 2px 8px;
  margin-bottom: 5px;
  background-color: rgba(0, 0, 0, 0.5);
}

.s-media-report-header {
  display: block;
  font-size: 3rem;
  letter-spacing: 0.05em;
  line-height: 1.1;
  text-align: left;
  color: #000000;
}
@media screen and (max-width: 767px) {
  .s-media-report-header {
    font-size: 1rem;
  }
}

.s-media-report-movie {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin-bottom: 40px;
}

.s-media-report-movie iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.s-media-report-image {
  position: relative;
  padding-top: 56.25%;
  background-color: #ffffff;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  margin-bottom: 40px;
  border: 1px solid #333;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

@media screen and (max-width: 767px) {
  .s-media-report-area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-left: calc(10px / -2);
    margin-right: calc(10px / -2);
    margin-left: -5px;
    margin-right: -5px;
  }
}

@media screen and (max-width: 767px) {
  .s-media-report-imgarea {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
    padding-left: 5px;
    padding-right: 5px;
  }
}

.s-media-report-desc {
  display: block;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: left;
  color: #000000;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .s-media-report-desc {
    font-size: 1.4rem;
  }
}

.s-media-eventwrapper {
  margin-bottom: 40px;
}

.s-media-eventlead {
  font-size: 1.2rem;
  font-weight: normal;
  line-height: 1.75;
  letter-spacing: 0.05em;
  text-align: left;
}
.s-media-eventlead span {
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1.75;
  letter-spacing: 0.05em;
  text-align: left;
}

.s-media-eventleadarea {
  margin-bottom: 10px;
}

.s-media-djs-wrapper {
  margin-top: 80px;
}

.s-media-spfee-wrapper {
  margin-top: 80px;
}

@media screen and (max-width: 767px) {
  .s-media-event-box {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
    padding-left: 5px;
    padding-right: 5px;
  }
}

.s-media-event-imglink {
  position: relative;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.s-media-event-imgarea {
  position: relative;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  margin-bottom: 40px;
  overflow: hidden;
}

.s-media-event-img {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding-top: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .s-media-event-img {
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
}

.s-media-event-area {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  text-align: center;
  margin: 0 auto;
  padding: 10px;
  color: #ffffff;
}

.s-media-event-title {
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 2px;
  line-height: 1.4;
}

.s-media-event-hoverimg {
  position: relative;
}

.s-media-event-imglink {
  display: block;
}

/*==============================
-Single
===============================*/
.s-postcontent-unit {
  margin-top: 0;
}
.s-postcontent-unit + .s-postcontent-unit {
  margin-top: 40px;
}

.s-postcontent-title {
  display: block;
  font-size: 2.2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .s-postcontent-title {
    font-size: 2rem;
    letter-spacing: 0.05em;
    line-height: 1.75;
  }
}

.s-postcontent-header {
  display: block;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .s-postcontent-header {
    font-size: 1.8rem;
    line-height: 1.6;
  }
}

.s-postcontent-lead {
  display: block;
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1.75;
  letter-spacing: 0.05em;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .s-postcontent-lead {
    font-size: 1.2rem;
    line-height: 1.75;
  }
}

.s-postcontent-notes {
  display: inline-block;
  background-color: #691212;
  padding: 2px 10px;
  letter-spacing: 0.05em;
  font-size: 1.1rem;
  font-weight: bold;
  line-height: 1.75;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .s-postcontent-notes {
    font-size: 1.1rem;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
}

.s-postcontent-strong {
  font-weight: bold;
  color: inherit;
  letter-spacing: inherit;
  font-size: inherit;
  line-height: inherit;
}

.s-postcontent-strike {
  text-decoration: line-through;
  color: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  font-size: inherit;
  line-height: inherit;
  word-break: inherit;
  text-align: inherit;
}

.s-postcontent-colored {
  color: #f00;
  text-decoration: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  font-size: inherit;
  line-height: inherit;
  word-break: inherit;
  text-align: inherit;
}

.s-postcontent-big {
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-decoration: inherit;
  color: inherit;
  line-height: inherit;
  word-break: inherit;
  text-align: inherit;
}
@media screen and (max-width: 767px) {
  .s-postcontent-big {
    font-size: 1.6rem;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
}

.s-postcontent-links {
  display: inline;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 2;
  text-decoration: underline;
  color: inherit;
  word-break: inherit;
  text-align: inherit;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.s-postcontent-links:hover {
  text-decoration: none;
  text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
}
@media screen and (max-width: 767px) {
  .s-postcontent-links {
    font-size: 1.3rem;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
}

.s-postcontent-linklead {
  display: block;
  width: 100%;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 2;
  color: inherit;
  word-break: inherit;
  text-align: inherit;
}
@media screen and (max-width: 767px) {
  .s-postcontent-linklead {
    font-size: 1.3rem;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
}

.s-postcontent-inlinelink {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 15px;
  margin-bottom: 20px;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.s-postcontent-inlinelink:hover {
  text-decoration: underline;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}
@media screen and (max-width: 767px) {
  .s-postcontent-inlinelink {
    font-size: 1.4rem;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
}

/*==============================
-Single
===============================*/
.s-regdjs-wrapper {
  padding: 0 40px 40px 40px;
}

.s-regdjs-gallery {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
}

.s-regdjs-gallery-box {
  display: inline-block;
  width: calc(100% - 230px);
  margin-right: 20px;
  margin-bottom: 40px;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .s-regdjs-gallery-box {
    width: 100%;
    margin: 0 auto 40px auto;
  }
}

.s-regdjs-gallery-box-2nd {
  display: inline-block;
  width: 200px;
  height: 200px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  top: 0;
  left: 0;
  overflow: hidden;
  margin-bottom: 40px;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .s-regdjs-gallery-box-2nd {
    width: 100%;
    height: auto;
    margin: 0 auto 40px;
  }
}

.s-regdjs-gallery-box-3rd {
  display: inline-block;
  width: calc(100% - 230px);
  margin-left: 20px;
  margin-bottom: 40px;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .s-regdjs-gallery-box-3rd {
    width: 100%;
    margin: 0 auto 40px auto;
  }
}

@media screen and (max-width: 767px) {
  .s-regdjs-gallery-area-numb {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}

.s-regdjs-gallery-area {
  width: 100%;
  height: 200px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  top: 0;
  left: 0;
  overflow: hidden;
  border: 1px solid #000000;
}
@media screen and (max-width: 767px) {
  .s-regdjs-gallery-area {
    height: auto;
    padding-top: 56.25%;
  }
}

.s-regdjs-title-box {
  display: inline-block;
  width: 200px;
  height: 200px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  top: 0;
  left: 0;
  overflow: hidden;
  margin-bottom: 40px;
  vertical-align: top;
  -webkit-box-shadow: 0.5px 0px 5px 0.5px #FCF103;
          box-shadow: 0.5px 0px 5px 0.5px #FCF103;
}
@media screen and (max-width: 767px) {
  .s-regdjs-title-box {
    width: 100%;
    height: auto;
    margin: 0 auto 40px auto;
  }
}

.s-regdjs-title-box-noimg {
  display: block;
  width: 100%;
  height: auto;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  top: 0;
  left: 0;
  overflow: hidden;
  margin-bottom: 40px;
  vertical-align: top;
  -webkit-box-shadow: 0.5px 0px 5px 0.5px #FCF103;
          box-shadow: 0.5px 0px 5px 0.5px #FCF103;
}
@media screen and (max-width: 767px) {
  .s-regdjs-title-box-noimg {
    width: 100%;
    height: auto;
    margin: 0 auto 40px auto;
  }
}

.s-regdjs-title-noimg {
  position: relative;
  top: 0;
  left: 0;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.1;
  text-align: center;
  vertical-align: middle;
  padding: 10px;
  color: #ffffff;
  background-color: #000000;
}
@media screen and (max-width: 767px) {
  .s-regdjs-title-noimg {
    font-size: 1.8rem;
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
}
.s-regdjs-title-noimg span {
  position: absolute;
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  display: block;
  text-align: right;
  bottom: 10px;
  right: 10px;
}
@media screen and (max-width: 767px) {
  .s-regdjs-title-noimg span {
    font-size: 1.4rem;
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
}

.s-regdjs-title-area {
  width: 100%;
}

.s-regdjs-title {
  position: relative;
  width: 200px;
  height: 200px;
  top: 0;
  left: 0;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.1;
  text-align: left;
  vertical-align: middle;
  padding: 10px;
  color: #ffffff;
  background-color: #000000;
}
@media screen and (max-width: 767px) {
  .s-regdjs-title {
    font-size: 1.8rem;
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
}
.s-regdjs-title span {
  position: absolute;
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.05em;
  display: block;
  text-align: right;
  bottom: 10px;
  right: 10px;
}
@media screen and (max-width: 767px) {
  .s-regdjs-title span {
    font-size: 1.4rem;
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
}

.s-regdjs-logo-img {
  display: block;
  text-align: center;
  margin: 0 auto 40px auto;
}
@media screen and (max-width: 767px) {
  .s-regdjs-logo-img {
    width: 200px;
  }
}

.s-regdjs-prof-lead {
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.75;
  letter-spacing: 0.05em;
  text-align: left;
}

.s-regdjs-snsarea {
  max-width: 450px;
  margin: 0 auto;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-line-pack: center;
      align-content: center;
}
@media screen and (max-width: 767px) {
  .s-regdjs-snsarea {
    max-width: 100%;
  }
}

.s-regdjs-snslink {
  font-size: 3rem;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .s-regdjs-snslink {
    font-size: 2rem;
  }
}
.s-regdjs-snslink:hover {
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  color: #FCF103;
  text-shadow: 4px 4px 4px #01CE97, -4px -4px 4px #01CE97;
}

.s-regdjs-sns {
  display: block;
  text-align: center;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

.s-regdjs-postin-link {
  font-size: 1.4rem;
  font-weight: bold;
  padding: 10px 20px;
  background-color: #af945c;
  color: #000000;
  margin-bottom: 4px;
  text-align: center;
  border: solid 3px #af945c;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .s-regdjs-postin-link {
    padding: 8px 7px;
  }
}
.s-regdjs-postin-link:hover {
  background-color: #000000;
  color: #af945c;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.s-regdjs-sns-linktitle {
  width: 100%;
  color: #444;
  display: block;
  font-weight: bold;
  font-size: 1.4rem;
  line-height: 1.1;
  letter-spacing: 0.05em;
}

.s-regdjs-sns-linkbox {
  display: block;
  width: 100%;
  margin-bottom: 10px;
}

.s-regdjs-sns-linkurl {
  color: #f00;
  display: inline-block;
  line-height: 1.75;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 1.2rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.s-regdjs-sns-linkurl:hover {
  -webkit-transition: 0.2s;
  transition: 0.2s;
  text-decoration: underline;
}

.s-regdjs-movie {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin-bottom: 40px;
}

.s-regdjs-movie iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.s-regdjs-eventwrapper {
  position: relative;
  padding: 80px 40px 0 40px;
}
@media screen and (max-width: 767px) {
  .s-regdjs-eventwrapper {
    padding: 80px 20px 0 20px;
  }
}

.s-regdjs-vertical-area {
  font-family: "Teko", "Yu Gothic Medium", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
  display: inline-block;
  width: 50px;
  margin-right: 30px;
  background-color: #000000;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .s-regdjs-vertical-area {
    display: block;
    width: 100%;
    margin: 0 auto 40px auto;
  }
}

.s-regdjs-regular-area {
  display: inline-block;
  vertical-align: top;
  width: calc(100% - 80px);
}
@media screen and (max-width: 767px) {
  .s-regdjs-regular-area {
    display: block;
    width: 100%;
  }
}

.s-regdjs-event {
  height: 200px;
  font-size: 1.6rem;
  font-weight: normal;
  line-height: 1.75;
  letter-spacing: 0.05em;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  padding: 20px 10px;
  color: #ffffff;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .s-regdjs-event {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 12) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 12) - 10px - 0.1px);
    max-width: calc(100% / (12 / 12) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
    -webkit-transform: rotate(0);
            transform: rotate(0);
    text-align: center;
    padding: 10px;
    height: auto;
    width: 100%;
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 767px) {
  .s-regdjs-postin-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-left: calc(10px / -2);
    margin-right: calc(10px / -2);
    margin-left: -5px;
    margin-right: -5px;
  }
}

@media screen and (max-width: 767px) {
  .s-regdjs-event-box {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
    padding-left: 5px;
    padding-right: 5px;
  }
}

.s-regdjs-event-imglink {
  position: relative;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  margin-bottom: 40px;
  border: 1px solid #000000;
  overflow: hidden;
}

.s-regdjs-event-img {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding-top: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}
@media screen and (max-width: 767px) {
  .s-regdjs-event-img {
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
}
.s-regdjs-event-img:hover {
  -webkit-transform: scale3d(1.1, 1.1, 1.1) perspective(0);
          transform: scale3d(1.1, 1.1, 1.1) perspective(0);
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.s-regdjs-event-img:hover.s-regdjs-event-img::before {
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}
.s-regdjs-event-img:hover .s-regdjs-event-area {
  opacity: 1;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.s-regdjs-event-img::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0);
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

.s-regdjs-event-area {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
  margin: 0 auto;
  padding: 5px;
  color: #ffffff;
  opacity: 0;
}

.s-regdjs-event-title {
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.4;
}

.s-regdjs-event-subtitle,
.s-regdjs-event-subtitle span {
  font-size: 1rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.4;
}

/*==============================
-Single
===============================*/
.s-regular-wrapper {
  padding-bottom: 80px;
}

.s-regular-area {
  padding-bottom: 40px;
}

.s-regular-gallery-box {
  display: inline-block;
  width: calc(100% - 230px);
  margin-right: 20px;
  margin-bottom: 40px;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .s-regular-gallery-box {
    width: 100%;
    margin: 0 auto 40px auto;
  }
}

.s-regular-gallery-box-2nd {
  display: inline-block;
  width: 200px;
  height: 200px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  top: 0;
  left: 0;
  overflow: hidden;
  margin-bottom: 40px;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .s-regular-gallery-box-2nd {
    width: 100%;
    height: auto;
    margin: 0 auto 40px;
  }
}

.s-regular-gallery-box-3rd {
  display: inline-block;
  width: calc(100% - 230px);
  margin-left: 20px;
  margin-bottom: 40px;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .s-regular-gallery-box-3rd {
    width: 100%;
    margin: 0 auto 40px auto;
  }
}

.s-regular-gallery-img-area {
  position: relative;
  width: 100%;
  height: 200px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  top: 0;
  left: 0;
  overflow: hidden;
  border: 1px solid #000000;
}
@media screen and (max-width: 767px) {
  .s-regular-gallery-img-area {
    height: auto;
    padding-top: 100%;
  }
}

.s-regular-gallery-area {
  position: relative;
  width: 100%;
  min-height: 200px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  .s-regular-gallery-area {
    min-height: auto;
  }
}

.s-regular-gallery-header {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: left;
  margin: 0 auto;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.2;
  padding: 10px;
  z-index: 1;
  background-color: #000000;
  color: #ffffff;
}
@media screen and (max-width: 767px) {
  .s-regular-gallery-header {
    font-size: 1.2rem;
  }
}

.s-regular-desc {
  position: relative;
  display: block;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.75;
  letter-spacing: 0.05em;
  text-align: left;
  padding: 10px;
}
@media screen and (max-width: 767px) {
  .s-regular-desc {
    height: auto;
    padding: 10px 0;
  }
}

.s-regular-title-box {
  display: inline-block;
  width: 200px;
  height: 200px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  top: 0;
  left: 0;
  overflow: hidden;
  margin-bottom: 40px;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .s-regular-title-box {
    width: 100%;
    height: auto;
    margin: 0 auto 40px auto;
  }
}

.s-regular-title-area {
  width: 100%;
}

.s-regular-title {
  position: relative;
  width: 200px;
  height: 200px;
  top: 0;
  left: 0;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.1;
  text-align: left;
  vertical-align: middle;
  padding: 10px;
  color: #ffffff;
  background-color: #000000;
}
@media screen and (max-width: 767px) {
  .s-regular-title {
    font-size: 1.8rem;
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
}
.s-regular-title span {
  position: relative;
  font-size: 1.8rem;
  display: block;
  text-align: right;
  bottom: 0;
  right: 0;
}
@media screen and (max-width: 767px) {
  .s-regular-title span {
    font-size: 1.4rem;
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
}

.s-djs-logo-img {
  margin-bottom: 40px;
}

.s-regular-prof-lead {
  color: #444;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.75;
  letter-spacing: 0.05em;
  text-align: left;
}

.s-regular-snsarea {
  max-width: 450px;
  margin: 0 auto;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-line-pack: center;
      align-content: center;
}
@media screen and (max-width: 767px) {
  .s-regular-snsarea {
    max-width: 100%;
  }
}

.s-regular-snslink {
  font-size: 3rem;
  color: #000000;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .s-regular-snslink {
    font-size: 2rem;
  }
}
.s-regular-snslink:hover {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.s-regular-sns {
  display: block;
  text-align: center;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

.s-regular-postin-link {
  font-size: 1.4rem;
  font-weight: bold;
  padding: 10px 20px;
  background-color: #af945c;
  color: #000000;
  margin-bottom: 4px;
  text-align: center;
  border: solid 3px #af945c;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
@media screen and (max-width: 767px) {
  .s-regular-postin-link {
    padding: 8px 7px;
  }
}
.s-regular-postin-link:hover {
  background-color: #000000;
  color: #af945c;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.s-regular-sns-linktitle {
  width: 100%;
  color: #444;
  display: block;
  font-weight: bold;
  font-size: 1.4rem;
  line-height: 1.1;
  letter-spacing: 0.05em;
}

.s-regular-sns-linkbox {
  display: block;
  width: 100%;
  margin-bottom: 10px;
}

.s-regular-sns-linkurl {
  color: #f00;
  display: inline-block;
  line-height: 1.75;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 1.2rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.s-regular-sns-linkurl:hover {
  -webkit-transition: 0.2s;
  transition: 0.2s;
  text-decoration: underline;
}

.s-regular-movie {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin-bottom: 40px;
}

.s-regular-movie iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.s-regular-eventwrapper {
  position: relative;
  padding: 0;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .s-regular-eventwrapper {
    padding: 10px 0;
  }
}

.s-regular-djswrapper {
  position: relative;
  padding: 0;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .s-regular-djswrapper {
    padding: 40px 0;
  }
}

.s-regular-djs-lead {
  font-size: 1.2rem;
  font-weight: normal;
  line-height: 1.75;
  letter-spacing: 0.05em;
  text-align: left;
}
.s-regular-djs-lead span {
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1.75;
  letter-spacing: 0.05em;
  text-align: left;
}

.s-regular-vertical-area {
  display: inline-block;
  width: 40px;
  margin-right: 30px;
  background-color: #000000;
  -webkit-box-shadow: 0.5px 0px 5px 0.5px #FCF103;
          box-shadow: 0.5px 0px 5px 0.5px #FCF103;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .s-regular-vertical-area {
    display: block;
    width: 100%;
    margin: 0 auto 40px auto;
  }
}

.s-regular-vertical {
  height: 200px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.6;
  letter-spacing: 0.05em;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  padding: 20px 10px;
  color: #ffffff;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .s-regular-vertical {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 12) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 12) - 10px - 0.1px);
    max-width: calc(100% / (12 / 12) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
    -webkit-transform: rotate(0);
            transform: rotate(0);
    text-align: center;
    padding: 10px;
    height: auto;
    width: 100%;
    font-size: 1.6rem;
  }
}

.s-regular-regular-area {
  display: inline-block;
  vertical-align: top;
  width: calc(100% - 80px);
}
@media screen and (max-width: 767px) {
  .s-regular-regular-area {
    display: block;
    width: 100%;
  }
}

.s-regular-event {
  height: 200px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.75;
  letter-spacing: 0.05em;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  padding: 20px 10px;
  color: #ffffff;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .s-regular-event {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 12) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 12) - 10px - 0.1px);
    max-width: calc(100% / (12 / 12) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
    -webkit-transform: rotate(0);
            transform: rotate(0);
    text-align: center;
    padding: 10px;
    height: auto;
    width: 100%;
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 767px) {
  .s-regular-postin-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-left: calc(10px / -2);
    margin-right: calc(10px / -2);
    margin-left: -5px;
    margin-right: -5px;
  }
}

@media screen and (max-width: 767px) {
  .s-regular-event-box {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: calc(100% / (12 / 6) - 10px - 0.1px);
        flex-basis: calc(100% / (12 / 6) - 10px - 0.1px);
    max-width: calc(100% / (12 / 6) - 10px);
    position: relative;
    margin: 0 calc(10px / 2);
    padding-left: 5px;
    padding-right: 5px;
  }
}

.s-regular-event-imglink {
  position: relative;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  margin-bottom: 40px;
  border: 1px solid #000000;
  overflow: hidden;
}
.s-regular-event-imglink:hover .s-regular-event-img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.s-regular-event-imglink:hover .s-regular-event-img::before {
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}
.s-regular-event-imglink:hover .s-regular-event-area {
  opacity: 1;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.s-regular-event-img {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding-top: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .s-regular-event-img {
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
}

.s-regular-event-img::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0);
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

.s-regular-event-area {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
  margin: 0 auto;
  padding: 10px;
  color: #ffffff;
  opacity: 0;
}

.s-regular-event-title {
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 1px;
  line-height: 1.4;
}

/*==============================
-S-text
===============================*/
.s-text-label {
  font-size: 2.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 20px;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .s-text-label {
    font-size: 2rem;
    letter-spacing: 0.05em;
    line-height: 1.75;
  }
}

.s-text-label-middle {
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.75;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .s-text-label-middle {
    font-size: 1.8rem;
    line-height: 1.6;
  }
}

.s-text-lead {
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .s-text-lead {
    font-size: 1.4rem;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
}

.s-text-lead + .s-text-label,
.s-text-lead + .s-text-label-middle,
.s-text-link + .s-text-label,
.s-text-link + .s-text-label-middle {
  margin-top: 50px;
}

.s-text-link {
  display: inline;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  margin-top: 15px;
  margin-bottom: 20px;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.s-text-link:hover {
  text-decoration: underline;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}
@media screen and (max-width: 767px) {
  .s-text-link {
    font-size: 1.4rem;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
}

.s-text-notes {
  display: inline-block;
  background-color: #691212;
  letter-spacing: 0.05em;
  padding: 4px 8px 2px 8px;
  font-size: 1.4rem;
  font-weight: bold;
  margin-top: 20px;
  margin-bottom: 5px;
}
@media screen and (max-width: 767px) {
  .s-text-notes {
    font-size: 1.4rem;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
}

.s-text-label-female {
  display: inline-block;
  background-color: #a90245;
  letter-spacing: 0.05em;
  padding: 4px 8px 2px 8px;
  font-size: 1.4rem;
  font-weight: bold;
  margin-top: 20px;
  margin-bottom: 5px;
}
@media screen and (max-width: 767px) {
  .s-text-label-female {
    font-size: 1.4rem;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
}

.s-text-label-male {
  display: inline-block;
  background-color: #0264a9;
  letter-spacing: 0.05em;
  padding: 4px 8px 2px 8px;
  font-size: 1.4rem;
  font-weight: bold;
  margin-top: 20px;
  margin-bottom: 5px;
}
@media screen and (max-width: 767px) {
  .s-text-label-male {
    font-size: 1.4rem;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
}

.s-text-label-privilege {
  display: inline-block;
  background-color: #bd9946;
  letter-spacing: 0.05em;
  padding: 4px 8px 2px 8px;
  font-size: 1.4rem;
  font-weight: bold;
  margin-top: 20px;
  margin-bottom: 5px;
}
@media screen and (max-width: 767px) {
  .s-text-label-privilege {
    font-size: 1.4rem;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
}

.s-text-label-squareimg {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 100%;
  margin-bottom: 10px;
}
.s-text-label-squareimg2 {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  padding-top: 100%;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .s-text-label-squareimg2 {
    padding-top: 56.25%;
  }
}

/* ======================================================
_custom.scss
====================================================== */
main {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  background-color: #ffffff;
}

body {
  background-color: #000000;
  height: 100%;
  position: relative;
  -webkit-font-smoothing: antialiased;
}

a {
  color: inherit;
}

.base-back-sidebar {
  color: #ffffff;
}

.base-back-main,
.c-text-wrapper,
body {
  color: #ffffff;
}

.c-header-trigger-line {
  background-color: #ffffff;
}

.c-loading-wrapper2 {
  background-color: #0a0a0a;
}

.c-text-wrapper a {
  color: #eeeeee;
}

#wpadminbar {
  position: fixed !important;
  top: auto !important;
  bottom: 0 !important;
  opacity: 0.6;
}
@media screen and (max-width: 767px) {
  #wpadminbar {
    position: fixed !important;
    top: auto !important;
    bottom: 0 !important;
  }
}

@media screen and (max-width: 767px) {
  .swiper-container {
    padding: 0 !important;
  }
}

.swiper-button-next,
.swiper-button-prev {
  color: #122269;
}

.swiper-pagination-bullet-active {
  background: #122269;
}

.a-fadein {
  -webkit-animation: a-fadein 0.8s both 0.4s ease;
          animation: a-fadein 0.8s both 0.4s ease;
  visibility: visible !important;
}

@keyframes a-fadein {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 30px, 0);
            transform: translate3d(0, 30px, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}
.bg-fade-slide {
  -webkit-animation: bg-fade-slide 0.3s both 0.2s ease-out;
          animation: bg-fade-slide 0.3s both 0.2s ease-out;
  visibility: visible !important;
}

@-webkit-keyframes bg-fade-slide {
  0% {
    width: 100%;
  }
  100% {
    width: 0;
  }
}

@keyframes bg-fade-slide {
  0% {
    width: 100%;
  }
  100% {
    width: 0;
  }
}
.is-hide {
  display: none !important;
}

.ajax_loading {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.6);
  z-index: 9999;
  -webkit-transition: ease 0.2s;
  transition: ease 0.2s;
}

.ajax_loading::before {
  content: "";
  display: block;
  position: fixed;
  left: 50%;
  top: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  width: 100px;
  height: 100px;
  border-radius: 5px;
  margin: 0 auto;
}

.ajax_loading::after {
  content: "";
  display: block;
  position: fixed;
  left: 50%;
  top: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  width: 82px;
  height: 82px;
  border-radius: 50px;
  margin-top: -41px;
  margin-left: -41px;
  border: 16px solid #8ec3ff;
  border-right: 16px solid white;
  -webkit-animation: rotate 1s infinite linear;
          animation: rotate 1s infinite linear;
  -webkit-box-shadow: #691212;
          box-shadow: #691212;
}

@-webkit-keyframes rotate {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes rotate {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
#performance {
  display: none !important;
}

.base-back-sidebar {
  color: #ffffff;
}

.base-back-main,
.c-text-wrapper,
body {
  color: #ffffff;
}

.c-header-trigger-line {
  background-color: #ffffff;
}

.c-loading-wrapper2 {
  background-color: #0a0a0a;
}

.c-text-wrapper a {
  color: #eeeeee;
}

.swiper-container {
  width: 100%;
}

.swiper-wrapper {
  width: 100%;
}

.swiper-slide {
  background-position: center;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  .swiper-slide {
    width: 100%;
    height: auto;
  }
}

.swiper-pagination {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  margin-top: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  text-align: left;
}

.swiper-pagination-bullet {
  position: relative;
  background-color: transparent;
  opacity: 1;
  width: 100%;
  height: 10px;
  bottom: -5px;
  left: 0;
  border-radius: 0;
  text-align: left;
  margin: 0 5px;
  z-index: 100;
  outline: none;
  padding: 10px 0;
}
.swiper-pagination-bullet::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #FCF103;
}

.swiper-pagination-bullet:first-child {
  margin-left: 0;
}

.swiper-pagination-bullet:last-child {
  margin-right: 0;
}

.swiper-pagination-bullet-active {
  position: relative;
  width: 100%;
  z-index: 100;
  opacity: 1;
  outline: none;
}
.swiper-pagination-bullet-active::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #FCF103;
  z-index: 1000;
}

.swiper-pagination-bullet-active::after {
  content: "";
  position: absolute;
  opacity: 1;
  width: 100%;
  height: 3px;
  top: 50%;
  left: 0;
  -webkit-animation: swiper-pagination-bar 4s both 0s linear;
          animation: swiper-pagination-bar 4s both 0s linear;
  z-index: 1000;
  outline: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

@-webkit-keyframes swiper-pagination-bar {
  0% {
    width: 0;
    left: 0;
    background-color: rgba(1, 206, 151, 0.6);
    -webkit-box-shadow: 1px 1px 2px rgba(1, 206, 151, 0.3), -1px -1px 2px rgba(1, 206, 151, 0.4);
            box-shadow: 1px 1px 2px rgba(1, 206, 151, 0.3), -1px -1px 2px rgba(1, 206, 151, 0.4);
  }
  100% {
    width: 100%;
    left: 0;
    background-color: rgb(1, 206, 151);
    -webkit-box-shadow: 4px 4px 12px rgb(1, 206, 151), -4px -4px 12px rgb(1, 206, 151);
            box-shadow: 4px 4px 12px rgb(1, 206, 151), -4px -4px 12px rgb(1, 206, 151);
  }
}

@keyframes swiper-pagination-bar {
  0% {
    width: 0;
    left: 0;
    background-color: rgba(1, 206, 151, 0.6);
    -webkit-box-shadow: 1px 1px 2px rgba(1, 206, 151, 0.3), -1px -1px 2px rgba(1, 206, 151, 0.4);
            box-shadow: 1px 1px 2px rgba(1, 206, 151, 0.3), -1px -1px 2px rgba(1, 206, 151, 0.4);
  }
  100% {
    width: 100%;
    left: 0;
    background-color: rgb(1, 206, 151);
    -webkit-box-shadow: 4px 4px 12px rgb(1, 206, 151), -4px -4px 12px rgb(1, 206, 151);
            box-shadow: 4px 4px 12px rgb(1, 206, 151), -4px -4px 12px rgb(1, 206, 151);
  }
}
#noise_box {
  --noise_box_height: 100vh;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: var(--noise_box_height);
  overflow: hidden;
}

.block {
  overflow: hidden;
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-animation: c-visual-img-anime 7s both 0s infinite;
  animation: c-visual-img-anime 7s both 0s infinite;
}

.block > span {
  display: inline-block;
  position: absolute;
  left: 0;
  width: 100%;
  line-height: var(--noise_box_height);
  text-align: center;
}

@-webkit-keyframes noise_animation {
  0% {
    left: 0px;
  }
  10% {
    left: 0px;
    -webkit-filter: none;
            filter: none;
  }
  10.25% {
    left: 30px;
    -webkit-filter: hue-rotate(90deg) invert(20%) blur(1px) url("#greenish");
            filter: hue-rotate(90deg) invert(20%) blur(1px) url("#greenish");
  }
  10.5% {
    left: 0px;
    -webkit-filter: none;
            filter: none;
  }
  70% {
    left: 0px;
    -webkit-filter: none;
            filter: none;
  }
  70.25% {
    left: -30px;
    -webkit-filter: hue-rotate(270deg) invert(10%);
            filter: hue-rotate(270deg) invert(10%);
  }
  70.5% {
    left: 0px;
    -webkit-filter: none;
            filter: none;
  }
  100% {
    left: 0px;
  }
}

@keyframes noise_animation {
  0% {
    left: 0px;
  }
  10% {
    left: 0px;
    -webkit-filter: none;
            filter: none;
  }
  10.25% {
    left: 30px;
    -webkit-filter: hue-rotate(90deg) invert(20%) blur(1px) url("#greenish");
            filter: hue-rotate(90deg) invert(20%) blur(1px) url("#greenish");
  }
  10.5% {
    left: 0px;
    -webkit-filter: none;
            filter: none;
  }
  70% {
    left: 0px;
    -webkit-filter: none;
            filter: none;
  }
  70.25% {
    left: -30px;
    -webkit-filter: hue-rotate(270deg) invert(10%);
            filter: hue-rotate(270deg) invert(10%);
  }
  70.5% {
    left: 0px;
    -webkit-filter: none;
            filter: none;
  }
  100% {
    left: 0px;
  }
}
@-webkit-keyframes noise_animation2 {
  0% {
    left: 0px;
  }
  10% {
    left: 0px;
    -webkit-filter: none;
            filter: none;
  }
  10.25% {
    left: -10px;
    -webkit-filter: hue-rotate(90deg) invert(10%);
            filter: hue-rotate(90deg) invert(10%);
  }
  10.5% {
    left: 0px;
    -webkit-filter: none;
            filter: none;
  }
  70% {
    left: 0px;
    -webkit-filter: none;
            filter: none;
  }
  70.25% {
    left: 10px;
    -webkit-filter: hue-rotate(270deg) invert(20%) grayscale(100%) url("#bluish");
            filter: hue-rotate(270deg) invert(20%) grayscale(100%) url("#bluish");
  }
  70.5% {
    left: 0px;
    -webkit-filter: none;
            filter: none;
  }
  100% {
    left: 0px;
  }
}
@keyframes noise_animation2 {
  0% {
    left: 0px;
  }
  10% {
    left: 0px;
    -webkit-filter: none;
            filter: none;
  }
  10.25% {
    left: -10px;
    -webkit-filter: hue-rotate(90deg) invert(10%);
            filter: hue-rotate(90deg) invert(10%);
  }
  10.5% {
    left: 0px;
    -webkit-filter: none;
            filter: none;
  }
  70% {
    left: 0px;
    -webkit-filter: none;
            filter: none;
  }
  70.25% {
    left: 10px;
    -webkit-filter: hue-rotate(270deg) invert(20%) grayscale(100%) url("#bluish");
            filter: hue-rotate(270deg) invert(20%) grayscale(100%) url("#bluish");
  }
  70.5% {
    left: 0px;
    -webkit-filter: none;
            filter: none;
  }
  100% {
    left: 0px;
  }
}
.block:nth-child(1) {
  top: calc(var(--noise_box_height) * 0);
  height: calc(var(--noise_box_height) * 0.1);
}

.block:nth-child(1) > span {
  top: calc(var(--noise_box_height) * 0);
}

.block:nth-child(2) {
  top: calc(var(--noise_box_height) * 0.1);
  height: calc(var(--noise_box_height) * 0.1);
}

.block:nth-child(2) > span {
  top: calc(var(--noise_box_height) * -0.1);
  -webkit-animation: noise_animation 11.9s linear infinite;
          animation: noise_animation 11.9s linear infinite;
}

.block:nth-child(3) {
  top: calc(var(--noise_box_height) * 0.2);
  height: calc(var(--noise_box_height) * 0.1);
}

.block:nth-child(3) > span {
  top: calc(var(--noise_box_height) * -0.2);
  animation: noise_animation2 11.6s linear reverse infinite;
}

.block:nth-child(4) {
  top: calc(var(--noise_box_height) * 0.3);
  height: calc(var(--noise_box_height) * 0.1);
}

.block:nth-child(4) > span {
  top: calc(var(--noise_box_height) * -0.3);
}

.block:nth-child(5) {
  top: calc(var(--noise_box_height) * 0.4);
  height: calc(var(--noise_box_height) * 0.1);
}

.block:nth-child(5) > span {
  top: calc(var(--noise_box_height) * -0.4);
}

.block:nth-child(6) {
  top: calc(var(--noise_box_height) * 0.5);
  height: calc(var(--noise_box_height) * 0.1);
}

.block:nth-child(6) > span {
  top: calc(var(--noise_box_height) * -0.5);
  -webkit-animation: noise_animation 10.9s linear infinite;
          animation: noise_animation 10.9s linear infinite;
}

.block:nth-child(7) {
  top: calc(var(--noise_box_height) * 0.6);
  height: calc(var(--noise_box_height) * 0.1);
}

.block:nth-child(7) > span {
  top: calc(var(--noise_box_height) * -0.6);
}

.block:nth-child(8) {
  top: calc(var(--noise_box_height) * 0.7);
  height: calc(var(--noise_box_height) * 0.1);
}

.block:nth-child(8) > span {
  top: calc(var(--noise_box_height) * -0.7);
  animation: noise_animation 10.5s linear reverse infinite;
}

.block:nth-child(9) {
  top: calc(var(--noise_box_height) * 0.8);
  height: calc(var(--noise_box_height) * 0.1);
}

.block:nth-child(9) > span {
  top: calc(var(--noise_box_height) * -0.8);
  -webkit-animation: noise_animation2 10.1s linear infinite;
          animation: noise_animation2 10.1s linear infinite;
}

.block:nth-child(10) {
  top: calc(var(--noise_box_height) * 0.9);
  height: calc(var(--noise_box_height) * 0.1);
}

.block:nth-child(10) > span {
  top: calc(var(--noise_box_height) * -0.9);
}

.a-fadein {
  -webkit-animation: a-fadein 0.4s both 0s ease;
  animation: a-fadein 0.4s both 0s ease;
  visibility: visible !important;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

@-webkit-keyframes a-fadein {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 20px, 0) perspective(0);
            transform: translate3d(0, 20px, 0) perspective(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0) perspective(0);
            transform: translate3d(0, 0, 0) perspective(0);
  }
}
@keyframes a-fadein {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 20px, 0) perspective(0);
            transform: translate3d(0, 20px, 0) perspective(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0) perspective(0);
            transform: translate3d(0, 0, 0) perspective(0);
  }
}
.a-fadein-right {
  -webkit-animation: a-fadein-right 0.9s both 0.4s ease;
  animation: a-fadein-right 0.9s both 0.4s ease;
  visibility: visible !important;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

@-webkit-keyframes a-fadein-right {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-20px, 0, 0) perspective(0);
            transform: translate3d(-20px, 0, 0) perspective(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0) perspective(0);
            transform: translate3d(0, 0, 0) perspective(0);
  }
}
@keyframes a-fadein-right {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-20px, 0, 0) perspective(0);
            transform: translate3d(-20px, 0, 0) perspective(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0) perspective(0);
            transform: translate3d(0, 0, 0) perspective(0);
  }
}
.a-fadein-pop {
  -webkit-animation: a-fadein-pop 0.9s both 0.4s ease;
  animation: a-fadein-pop 0.9s both 0.4s ease;
  visibility: visible !important;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: perspective(0);
          transform: perspective(0);
}

@-webkit-keyframes a-fadein-pop {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-20px, 0, 0) scale3d(1, 1, 1) perspective(0);
            transform: translate3d(-20px, 0, 0) scale3d(1, 1, 1) perspective(0);
  }
  50% {
    -webkit-transform: translate3d(-20px, 0, 0) scale3d(1.15, 1.15, 1.15) perspective(0);
            transform: translate3d(-20px, 0, 0) scale3d(1.15, 1.15, 1.15) perspective(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0) scale3d(1, 1, 1) perspective(0);
            transform: translate3d(-20px, 0, 0) scale3d(1, 1, 1) perspective(0);
  }
}
@keyframes a-fadein-pop {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-20px, 0, 0) scale3d(1, 1, 1) perspective(0);
            transform: translate3d(-20px, 0, 0) scale3d(1, 1, 1) perspective(0);
  }
  50% {
    -webkit-transform: translate3d(-20px, 0, 0) scale3d(1.15, 1.15, 1.15) perspective(0);
            transform: translate3d(-20px, 0, 0) scale3d(1.15, 1.15, 1.15) perspective(0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0) scale3d(1, 1, 1) perspective(0);
            transform: translate3d(-20px, 0, 0) scale3d(1, 1, 1) perspective(0);
  }
}
.lead-main {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.4;
}

.lead-sub {
  font-size: 1.6rem;
  line-height: 1.6;
}

.lead-link {
  display: inline-block;
  width: auto;
  font-size: 1.3rem;
  line-height: 1.6;
  color: #c00;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.lead-link:hover {
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  opacity: 0.7;
  cursor: pointer;
}

.p-contact-link {
  padding-top: 10px;
}

.display-pc {
  display: block;
}
@media screen and (max-width: 767px) {
  .display-pc {
    display: none;
  }
}

.display-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .display-sp {
    display: block;
  }
}/*# sourceMappingURL=style.css.map */