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: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

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

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}

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

a img {
  border: none;
}

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

html {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 62.5%;
  line-height: 1.4;
}

body {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  color: #000000;
  font-size: 3.73333vw;
  font-weight: 400;
}

body * {
  box-sizing: border-box;
  background-repeat: no-repeat;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-feature-settings: "palt";
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
}

body *::-moz-selection {
  background-color: #d3ff25;
  color: #000000;
}

body *::selection {
  background-color: #d3ff25;
  color: #000000;
}

.stop-scrolling {
  overflow-y: hidden !important;
}

.container,
.wrapper {
  position: relative;
  margin: auto;
  width: 100%;
}

a {
  text-decoration: none;
  display: inline-block;
  color: #000000;
}

@media all and (-ms-high-contrast: none) {
  a {
    display: block;
  }
}

a.hover {
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

a.hover:hover {
  opacity: 0.75 !important;
}

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

video {
  display: inline-block;
  width: 100%;
  max-width: 100%;
  height: auto;
}

svg {
  display: block;
  width: 100%;
  vertical-align: bottom;
}

input,
button,
textarea,
select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  font-size: inherit;
  font-family: inherit;
}

.nosynaps .synapsCanvas::after {
  background: url(/zenonzard/images/common/bg_sp.png);
  background-position: center;
  background-size: cover;
  opacity: 1;
}

.synapsCanvas {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.synapsCanvas::after {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("../images/common/background_dots.png");
  background-repeat: repeat;
  opacity: 0.3;
}

.is-pc {
  display: none !important;
}

@media screen and (min-width: 750px) {
  .nosynaps .synapsCanvas::after {
    background: url(/zenonzard/images/common/bg.png);
  }
  body {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

@media screen and (min-width: 900px) {
  .container {
    max-width: auto;
    min-width: 1160px;
  }
  .is-pc {
    display: block !important;
  }
  .is-sp {
    display: none !important;
  }
}

.l-header {
  background: #000000;
}

.l-header__follow {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  margin: auto;
  width: 100%;
  z-index: 9998;
  background: #000000;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  -webkit-transform: translate3d(0, -103%, 0);
          transform: translate3d(0, -103%, 0);
}

.l-header__follow.is-show {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

.l-header__inner {
  overflow: hidden;
}

.l-header__logo {
  padding: 2.66667vw 0 2.66667vw 5.33333vw;
  width: 42.66667vw;
}

.l-header__menubtn {
  position: relative;
  width: 26%;
}

.l-header__menutxt {
  position: relative;
  margin: auto;
  color: #000000;
  padding: 0 5.33333vw 0 0;
  text-align: right;
}

.l-header__menutxt--txt {
  padding: 0 1.33333vw 0 0;
  font-weight: 700;
  font-size: 18px;
  font-size: 4.8vw;
  line-height: 1;
}

@media screen and (min-width: 750px) {
  .l-header__menutxt--txt {
    font-size: 23.04px;
    font-size: 2.304rem;
  }
}

.l-header__menutxt--close {
  display: none;
}

.l-header__menutxt--line {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  height: 2px;
  width: 5.33333vw;
  background: #000000;
}

.l-header__menubg {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}

.l-header__menubg--accent {
  right: 6px;
}

.l-header__svg svg {
  fill: #FFF;
}

.l-header .is-open .l-header__svg svg {
  fill: #000;
}

.l-header .is-open .l-header__menutxt {
  color: #FFF;
}

.l-header .is-open .l-header__menutxt--txt {
  display: none;
}

.l-header .is-open .l-header__menutxt--close {
  -webkit-animation: fadeIn 0.5s;
          animation: fadeIn 0.5s;
  display: inline-block;
}

.l-header .is-open .l-header__menutxt--line {
  -webkit-animation: sideIn 0.5s;
          animation: sideIn 0.5s;
  -webkit-transform-origin: 100% 50%;
          transform-origin: 100% 50%;
  background: #FFF;
}

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0.4em, 0, 0);
            transform: translate3d(0.4em, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0.4em, 0, 0);
            transform: translate3d(0.4em, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}

@-webkit-keyframes fadeInSide {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0.4em, 0, 0);
            transform: translate3d(0.4em, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInSide {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0.4em, 0, 0);
            transform: translate3d(0.4em, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}

@-webkit-keyframes sideIn {
  from {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  to {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
}

@keyframes sideIn {
  from {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  to {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
}

@media screen and (min-width: 750px) {
  .l-header__logo {
    padding: 16px 0 16px 40px;
    width: 220px;
  }
  .l-header__menubtn {
    position: relative;
    width: 196px;
  }
  .l-header__menutxt {
    padding: 0 40px 0 0;
  }
  .l-header__menutxt--txt {
    padding: 0 10px 0 0;
  }
  .l-header__menutxt--line {
    width: 40px;
  }
}

@media screen and (min-width: 900px) {
  .l-header__navlist {
    display: -webkit-box;
    display: flex;
  }
  .l-header__navitem a {
    padding: 0.5em 0.8em 0.2em;
    font-family: "Teko", sans-serif;
    font-weight: 700;
    letter-spacing: 0.1em;
    font-style: italic;
    color: #FFF;
    -webkit-transition: 0.2s;
    transition: 0.2s;
  }
  .l-header__navitem a:hover {
    color: #d3ff25;
  }
  .l-header__logo {
    padding: 16px 0 16px 0;
    width: 200px;
  }
  .l-header__inner {
    width: 1160px;
    padding: 0 40px;
    margin: auto;
  }
}

.l-footer {
  position: relative;
  background: #FFF;
}

.l-footer__inner {
  position: relative;
  padding: 8vw 5.33333vw 0;
}

.l-footer__block {
  margin: 5.33333vw 0 0 0;
}

.l-footer__table {
  font-size: 11px;
  font-size: 2.93333vw;
}

@media screen and (min-width: 750px) {
  .l-footer__table {
    font-size: 14.08px;
    font-size: 1.408rem;
  }
}

.l-footer__table th,
.l-footer__table td {
  padding: 0.2em 0.2em 0.2em 0;
}

.l-footer__table th {
  width: 6em;
}

.l-footer__item {
  margin: 0.2em 0 0 0;
  font-size: 11px;
  font-size: 2.93333vw;
  padding: 0 0 0 1em;
  text-indent: -1em;
}

@media screen and (min-width: 750px) {
  .l-footer__item {
    font-size: 14.08px;
    font-size: 1.408rem;
  }
}

.l-footer__logo {
  margin: 5.33333vw auto 0 auto;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  width: 50%;
}

.l-footer__logo li {
  margin: 0.2em;
}

.l-footer__copywrite {
  margin: 0.2em auto 0 auto;
  text-align: center;
  font-size: 12px;
  font-size: 3.2vw;
}

@media screen and (min-width: 750px) {
  .l-footer__copywrite {
    font-size: 15.36px;
    font-size: 1.536rem;
  }
}

.l-footer__mascot {
  width: 22.66667vw;
  margin: 0 0 0 auto;
  -webkit-transform: translate3d(0, -25%, 0);
          transform: translate3d(0, -25%, 0);
}

.l-footer__links {
  border-top: 1px solid  #CCC;
  background: #f2f2f2;
}

.l-footer__links li {
  text-align: center;
  width: 100%;
}

.l-footer__links li a {
  display: block;
  padding: 5.33333vw;
  font-size: 10px;
  font-size: 2.66667vw;
}

@media screen and (min-width: 750px) {
  .l-footer__links li a {
    font-size: 12.8px;
    font-size: 1.28rem;
  }
}

@media screen and (min-width: 750px) {
  .l-footer__inner {
    padding: 60px 40px 0;
  }
  .l-footer__block {
    margin: 40px 0 0 0;
  }
  .l-footer__logo {
    margin: 40px auto 0 auto;
  }
  .l-footer__copywrite__mascot {
    width: 170px;
  }
  .l-footer__links li a {
    padding: 30px 40px;
  }
}

@media screen and (min-width: 900px) {
  .l-footer__inner {
    width: 1040px;
    padding: 60px 40px 40px;
    margin: auto;
  }
  .l-footer__colum {
    width: calc(100% - 300px);
  }
  .l-footer__mascot {
    position: absolute;
    top: 0;
    right: 20px;
    width: 282px;
    -webkit-transform: translate3d(0, -20%, 0);
            transform: translate3d(0, -20%, 0);
  }
}

.l-main {
  overflow: hidden;
  margin: auto;
}

.c-slash {
  position: absolute;
  top: 0;
  right: -50%;
  left: -50%;
  height: 40vw;
  width: 200%;
  margin: auto;
  opacity: 0.7;
  -webkit-transform-origin: 50%;
          transform-origin: 50%;
  -webkit-transform: rotate(-15deg) translate3d(0, 26.8%, 0);
          transform: rotate(-15deg) translate3d(0, 26.8%, 0);
  overflow: hidden;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
          clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}

.c-slash--reverse {
  -webkit-transform: rotate(15deg) translate3d(0, 26.8%, 0);
          transform: rotate(15deg) translate3d(0, 26.8%, 0);
}

.c-slash--reverse .c-slash__bg {
  -webkit-transform: rotate(-15deg) translate3d(-100%, -26.8%, 0);
          transform: rotate(-15deg) translate3d(-100%, -26.8%, 0);
}

.c-slash--addimg {
  opacity: 1;
}

.c-slash__bg {
  position: relative;
  width: 80%;
  height: 320%;
  -webkit-transform: rotate(-15deg) translate3d(100%, -26.8%, 0);
          transform: rotate(-15deg) translate3d(100%, -26.8%, 0);
  margin: auto;
  overflow: hidden;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  background-size: cover;
}

.c-slash__bg--skyblue {
  background: #22d2ff;
}

.c-slash__bg--purple {
  background: #f600ff;
}

.c-slash.is-show .c-slash__bg {
  -webkit-transform: rotate(15deg) translate3d(0, -26.8%, 0);
          transform: rotate(15deg) translate3d(0, -26.8%, 0);
}

.c-slash--reverse.is-show .c-slash__bg {
  -webkit-transform: rotate(-15deg) translate3d(0, -26.8%, 0);
          transform: rotate(-15deg) translate3d(0, -26.8%, 0);
}

@media screen and (min-width: 750px) {
  .c-slash {
    height: 300px;
    -webkit-transform: rotate(-15deg) translate3d(0, 100.5px, 0);
            transform: rotate(-15deg) translate3d(0, 100.5px, 0);
  }
  .c-slash--reverse {
    -webkit-transform: rotate(15deg) translate3d(0, 100.5px, 0);
            transform: rotate(15deg) translate3d(0, 100.5px, 0);
  }
}

@media screen and (min-width: 900px) {
  .c-slash {
    height: 300px;
    -webkit-transform: rotate(-15deg) translate3d(0, 144.72px, 0);
            transform: rotate(-15deg) translate3d(0, 144.72px, 0);
  }
  .c-slash--reverse {
    -webkit-transform: rotate(15deg) translate3d(0, 144.72px, 0);
            transform: rotate(15deg) translate3d(0, 144.72px, 0);
  }
}

.c-btn {
  text-align: center;
}

.c-btn.js-fadeBtn a {
  opacity: 0;
  -webkit-transform: skew(-16deg) scaleX(0);
          transform: skew(-16deg) scaleX(0);
}

.c-btn.js-fadeBtn a::after {
  -webkit-transform: scaleX(0) skew(16deg);
          transform: scaleX(0) skew(16deg);
}

.c-btn.js-fadeBtn span {
  -webkit-transform: skew(16deg) translate3d(10px, 0, 0);
          transform: skew(16deg) translate3d(10px, 0, 0);
  opacity: 0;
}

.c-btn a {
  position: relative;
  margin: auto;
  display: inline-block;
  padding: 3.73333vw 10.66667vw;
  min-width: 53.33333vw;
  -webkit-transform-origin: 100% 0;
          transform-origin: 100% 0;
  -webkit-transform: skew(-16deg) scaleX(1);
          transform: skew(-16deg) scaleX(1);
  border-radius: 6px;
  background: -webkit-gradient(linear, left bottom, left top, from(#5bff00), to(#fbff00));
  background: linear-gradient(0deg, #5bff00, #fbff00);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.c-btn span {
  display: inline-block;
  -webkit-transform: skew(16deg) translate3d(0, 0, 0);
          transform: skew(16deg) translate3d(0, 0, 0);
  font-size: 18px;
  font-size: 4.8vw;
  font-style: italic;
  font-weight: 700;
  line-height: 1;
}

@media screen and (min-width: 750px) {
  .c-btn span {
    font-size: 23.04px;
    font-size: 2.304rem;
  }
}

.c-btn.is-show a {
  -webkit-transform: skew(-16deg) scaleX(1);
          transform: skew(-16deg) scaleX(1);
  opacity: 1;
}

.c-btn.is-show a span {
  -webkit-transition: 0.5s;
  transition: 0.5s;
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
  opacity: 1;
  -webkit-transform: skew(16deg) translate3d(0, 0, 0);
          transform: skew(16deg) translate3d(0, 0, 0);
}

@-webkit-keyframes btnLine {
  0% {
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
    -webkit-transform: scaleX(0) skew(16deg);
            transform: scaleX(0) skew(16deg);
  }
  100% {
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
    -webkit-transform: scaleX(1) skew(16deg);
            transform: scaleX(1) skew(16deg);
  }
}

@keyframes btnLine {
  0% {
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
    -webkit-transform: scaleX(0) skew(16deg);
            transform: scaleX(0) skew(16deg);
  }
  100% {
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
    -webkit-transform: scaleX(1) skew(16deg);
            transform: scaleX(1) skew(16deg);
  }
}

@-webkit-keyframes btnLineBack {
  0% {
    -webkit-transform-origin: 100% 0;
            transform-origin: 100% 0;
    -webkit-transform: scaleX(1) skew(16deg);
            transform: scaleX(1) skew(16deg);
  }
  100% {
    -webkit-transform-origin: 100% 0;
            transform-origin: 100% 0;
    -webkit-transform: scaleX(0) skew(16deg);
            transform: scaleX(0) skew(16deg);
  }
}

@keyframes btnLineBack {
  0% {
    -webkit-transform-origin: 100% 0;
            transform-origin: 100% 0;
    -webkit-transform: scaleX(1) skew(16deg);
            transform: scaleX(1) skew(16deg);
  }
  100% {
    -webkit-transform-origin: 100% 0;
            transform-origin: 100% 0;
    -webkit-transform: scaleX(0) skew(16deg);
            transform: scaleX(0) skew(16deg);
  }
}

@media screen and (min-width: 750px) {
  .c-btn a {
    padding: 24px 80px;
    min-width: 400px;
  }
  .c-btn a::after {
    -webkit-transition: 0.2s;
    transition: 0.2s;
    width: 74px;
    left: -15px;
  }
  .c-btn a:hover::after {
    width: 100px;
  }
}

@media all and (-ms-high-contrast: none) {
  .c-morearrow svg {
    width: 18px;
    height: 16px;
  }
}

.c-form--check, .c-form--radio {
  display: none;
}

.c-form--check + label, .c-form--radio + label {
  display: block;
  position: relative;
  padding: 0.5em 0 0.5em 30px;
  line-height: 1.1;
}

.c-form--check + label::after, .c-form--radio + label::after, .c-form--check + label::before, .c-form--radio + label::before {
  content: '';
  position: absolute;
}

.c-form--check + label::after, .c-form--radio + label::after {
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 20px;
  height: 20px;
  background: #CCC;
}

.c-form--check + label::before, .c-form--radio + label::before {
  z-index: 1;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 3px;
  width: 14px;
  height: 14px;
  background: #FFF;
}

.c-form--check:checked + label::after, .c-form--radio:checked + label::after {
  background: -webkit-gradient(linear, right top, left top, from(#ff4200), to(#ffbc00));
  background: linear-gradient(-90deg, #ff4200, #ffbc00);
}

.c-form--textarea, .c-form--select {
  position: relative;
  width: 100%;
  resize: none;
  padding: 0.32em 0.64em;
  overflow-x: hidden;
  border: 1px solid #CCC;
  background: #FFF;
}

.c-form {
  position: relative;
}

.c-form--textarea ::-webkit-input-placeholder {
  color: #CCC;
}

.c-form--textarea ::-moz-placeholder {
  color: #CCC;
}

.c-form--textarea :-ms-input-placeholder {
  color: #CCC;
}

.c-form--textarea ::-ms-input-placeholder {
  color: #CCC;
}

.c-form--textarea ::placeholder {
  color: #CCC;
}

.c-form--select {
  -webkit-appearance: menulist;
     -moz-appearance: menulist;
          appearance: menulist;
}

.c-form--radio + label::after {
  border-radius: 50%;
}

.c-form--radio + label::before {
  border-radius: 50%;
}

.p-box {
  position: relative;
  padding: 8vw 0;
}

.p-box--zeropadding {
  padding: 0 0 !important;
}

.p-box__inner {
  width: 100%;
  padding: 0 5.33333vw;
  margin: auto;
}

.p-box__block {
  position: relative;
  margin: 5.33333vw 0 0 0;
}

.p-box__head {
  position: relative;
  text-align: center;
}

.p-box__body {
  position: relative;
  margin: auto;
}

.p-box__txttitle {
  display: inline-block;
  font-family: "Teko", sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
  font-style: italic;
  padding: 0.3em 0.3em 0.1em;
  font-size: 18px;
  font-size: 4.8vw;
  line-height: 1;
  background: #000;
  color: #FFF;
}

@media screen and (min-width: 750px) {
  .p-box__txttitle {
    font-size: 23.04px;
    font-size: 2.304rem;
  }
}

.p-box.u-bg--black .p-box__txttitle {
  background: #FFF;
  color: #000;
}

.p-box__list {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
}

.p-box__item {
  margin: 1.33333vw;
}

.p-box__img {
  position: relative;
  text-align: center;
}

.p-box__background {
  background-repeat: no-repeat;
  background-size: cover;
}

.p-box__background--card {
  background-image: url("../images/top/game_cardimage.jpg");
}

@media screen and (min-width: 750px) {
  .p-box {
    padding: 60px 0;
  }
  .p-box__inner {
    max-width: 1080px;
    padding: 0 40px;
  }
  .p-box__inner--small {
    width: 800px;
  }
  .p-box__title {
    text-align: center;
  }
  .p-box__body {
    width: 100%;
    max-width: 1080px;
  }
  .p-box__block {
    margin: 40px 0 0 0;
  }
  .p-box__item {
    margin: 10px;
  }
}

.p-section__inner {
  max-width: 1160px;
  padding: 5.33333vw;
  margin: auto;
}

.p-section__title {
  margin: 5.33333vw 0 0 0;
  font-family: "Teko", sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
  font-style: italic;
  font-size: 40px;
  font-size: 10.66667vw;
}

@media screen and (min-width: 750px) {
  .p-section__title {
    font-size: 51.2px;
    font-size: 5.12rem;
  }
}

.p-section__title--japanese {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 30px;
  font-size: 8vw;
}

@media screen and (min-width: 750px) {
  .p-section__title--japanese {
    font-size: 38.4px;
    font-size: 3.84rem;
  }
}

.p-section__body {
  margin: 5.33333vw 0 0 0;
}

@media screen and (min-width: 750px) {
  .p-section__inner {
    max-width: 1160px;
    padding: 40px;
  }
  .p-section__title {
    margin: 40px 0 0 0;
    font-size: 72px;
    font-size: 7.2rem;
  }
  .p-section__title--japanese {
    font-size: 60px;
    font-size: 6rem;
  }
  .p-section__body {
    margin: 40px 0 0 0;
  }
}

.p-firstview {
  position: relative;
  height: 100vh;
  background: #FFF;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.p-firstview__visual {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  background: url("../images/top/mainvis_bg.jpg");
  background-size: cover;
  background-position: 0 0;
}

.p-firstview__visual--chara {
  width: 100%;
  height: 70%;
  -webkit-transform: translate3d(0, 10%, 0);
          transform: translate3d(0, 10%, 0);
  background: url("../images/top/mainvis_chara@1x.png");
  background-size: cover;
  background-position: 0 0;
}

.p-firstview__visual--animationStart {
  -webkit-animation: bg-slider1 10s linear infinite;
          animation: bg-slider1 10s linear infinite;
}

.p-firstview__visual--animationStart .p-firstview__visual--chara {
  -webkit-animation: bg-slider2 18s linear infinite;
          animation: bg-slider2 18s linear infinite;
}

@-webkit-keyframes bg-slider1 {
  from {
    background-position: 100vw 0;
  }
  to {
    background-position: 100% 0;
  }
}

@keyframes bg-slider1 {
  from {
    background-position: 100vw 0;
  }
  to {
    background-position: 100% 0;
  }
}

@-webkit-keyframes bg-slider2 {
  from {
    background-position: 100vw 0;
  }
  to {
    background-position: 100% 0;
  }
}

@keyframes bg-slider2 {
  from {
    background-position: 100vw 0;
  }
  to {
    background-position: 100% 0;
  }
}

.p-firstview__bottom {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 5.33333vw;
  margin: auto;
}

.p-firstview__title {
  margin: auto;
  width: 89.33333vw;
}

.p-firstview__news {
  margin: auto;
  width: 89.33333vw;
}

.p-firstview__appstore {
  width: 100%;
  margin: 2.66667vw auto 0;
}

.p-firstview__catch {
  position: absolute;
  top: 2.66667vw;
  left: 2.66667vw;
  z-index: 1;
  width: 71.73333vw;
}

.p-firstview__pickup {
  position: absolute;
  width: 100%;
  max-width: 1080px;
  left: 0;
  right: -5vw;
  -webkit-transform: translate3d(0, -5%, 0);
          transform: translate3d(0, -5%, 0);
  margin: auto;
  text-align: right;
}

.p-firstview__pickup a {
  width: 31.2vw;
  right: 5.33333vw;
  position: relative;
  -webkit-animation: float 6s ease-in-out infinite;
          animation: float 6s ease-in-out infinite;
  box-shadow: 0 5px 10px 0px rgba(0, 0, 0, 0.2);
  -webkit-filter: drop-shadow(0 0 10px rgba(49, 245, 255, 0.5));
          filter: drop-shadow(0 0 10px rgba(49, 245, 255, 0.5));
  opacity: 1;
}

.p-firstview__pickup a:hover {
  -webkit-animation-play-state: paused;
          animation-play-state: paused;
}

@-webkit-keyframes float {
  0% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
  25% {
    box-shadow: 0 25px 10px 0px rgba(0, 0, 0, 0.1);
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px);
  }
  50% {
    box-shadow: 0 5px 10px 0px rgba(0, 0, 0, 0.2);
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
  }
  70% {
    box-shadow: 0 20px 10px 0px rgba(0, 0, 0, 0.1);
    -webkit-transform: translateY(-4px);
            transform: translateY(-4px);
  }
  100% {
    box-shadow: 0 5px 10px 0px rgba(0, 0, 0, 0.2);
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
}

@keyframes float {
  0% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
  25% {
    box-shadow: 0 25px 10px 0px rgba(0, 0, 0, 0.1);
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px);
  }
  50% {
    box-shadow: 0 5px 10px 0px rgba(0, 0, 0, 0.2);
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
  }
  70% {
    box-shadow: 0 20px 10px 0px rgba(0, 0, 0, 0.1);
    -webkit-transform: translateY(-4px);
            transform: translateY(-4px);
  }
  100% {
    box-shadow: 0 5px 10px 0px rgba(0, 0, 0, 0.2);
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
}

.p-firstview__fbtn .c-btn a {
  left: 0.66667vw;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}

@media screen and (min-width: 750px) {
  .p-firstview__title {
    width: 670px;
  }
  .p-firstview__bottom {
    bottom: 40px;
  }
  .p-firstview__news {
    width: 670px;
  }
  .p-firstview__appstore {
    margin: 20px auto 0;
  }
  .p-firstview__catch {
    width: 302px;
    top: 20px;
    left: 0;
  }
  .p-firstview__pickup {
    right: 0;
  }
  .p-firstview__pickup a {
    width: 234px;
    right: 40px;
  }
  .p-firstview__fbtn .c-btn a {
    left: 5px;
  }
}

@media screen and (min-width: 900px) {
  .p-firstview__visual {
    position: relative;
    max-width: 1920px;
    margin: auto;
    background-color: #FFF;
    background: url("../images/top/mainvis.jpg");
    background-size: cover;
    background-position: center;
    -webkit-animation: none;
            animation: none;
  }
  .p-firstview__visual--chara {
    display: none;
    background: none;
  }
  .p-firstview__title {
    width: 285px;
    padding: 10px;
  }
  .p-firstview__bottom {
    margin: auto;
  }
  .p-firstview__news {
    width: 100%;
    max-width: 900px;
  }
  .p-firstview__catch {
    width: 1080px;
    margin: auto;
    top: 20px;
    left: 0;
    right: 0;
  }
  .p-firstview__pickup {
    -webkit-transform: translate3d(0, 5%, 0);
            transform: translate3d(0, 5%, 0);
  }
  .p-firstview__pickup a {
    right: auto;
  }
}

.p-title__bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.p-title {
  position: relative;
  width: 100%;
  text-align: center;
}

.p-title.is-active .p-title__bg--pic {
  -webkit-transform-origin: 50%;
          transform-origin: 50%;
  -webkit-animation: scales 20s linear forwards;
          animation: scales 20s linear forwards;
}

@-webkit-keyframes scales {
  from {
    -webkit-transform: translate3d(25%, 0, 0) scale(1);
            transform: translate3d(25%, 0, 0) scale(1);
  }
  to {
    -webkit-transform: translate3d(-25%, 0, 0) scale(1);
            transform: translate3d(-25%, 0, 0) scale(1);
  }
}

@keyframes scales {
  from {
    -webkit-transform: translate3d(25%, 0, 0) scale(1);
            transform: translate3d(25%, 0, 0) scale(1);
  }
  to {
    -webkit-transform: translate3d(-25%, 0, 0) scale(1);
            transform: translate3d(-25%, 0, 0) scale(1);
  }
}

.p-title__outer {
  position: relative;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  background: #000000;
}

.p-title__inner {
  position: relative;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  height: 100vh;
  background: #000;
}

.p-title__bg {
  width: 100%;
  opacity: 0.3;
}

.p-title__bg picture {
  display: block;
}

.p-title__bg img,
.p-title__bg iframe {
  width: 100% !important;
  height: 100% !important;
}

.p-title__txt {
  position: relative;
  color: #FFF;
  line-height: 1;
}

.p-title__heading {
  position: relative;
  font-family: "Teko", sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
  font-style: italic;
  font-size: 40px;
  font-size: 10.66667vw;
  line-height: 0.8;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  opacity: 0;
}

@media screen and (min-width: 750px) {
  .p-title__heading {
    font-size: 51.2px;
    font-size: 5.12rem;
  }
}

.p-title__heading.is-show {
  opacity: 1;
}

.p-title__lead {
  position: relative;
  display: inline-block;
  padding: 0em 0.3em 0.2em 0.2em;
}

.p-title__lead span {
  position: relative;
  opacity: 0;
  z-index: 1;
  color: #000000;
  font-weight: 700;
  font-style: italic;
  font-size: 12px;
  font-size: 3.2vw;
}

@media screen and (min-width: 750px) {
  .p-title__lead span {
    font-size: 15.36px;
    font-size: 1.536rem;
  }
}

.p-title__lead::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background: #FFF;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.p-title__lead.is-show span {
  opacity: 1;
}

.p-title__lead.is-show::after {
  width: 100%;
}

.p-title__square {
  position: absolute;
  width: 8vw;
  height: 8vw;
  top: 0;
  left: 0;
  -webkit-transform-origin: 0 50%;
          transform-origin: 0 50%;
  -webkit-transform: translate(-50%, -50%) scaleX(0);
          transform: translate(-50%, -50%) scaleX(0);
  background: #FFF;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.p-title__square--skyblue {
  background: -webkit-gradient(linear, right top, left top, from(#136ffb), to(#22d2ff));
  background: linear-gradient(-90deg, #136ffb, #22d2ff);
}

.p-title__square--purp {
  background: -webkit-gradient(linear, right top, left top, from(#6104df), to(#f600ff));
  background: linear-gradient(-90deg, #6104df, #f600ff);
}

.p-title__square.is-show {
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
  -webkit-transform: translate(-50%, -50%) scaleX(1);
          transform: translate(-50%, -50%) scaleX(1);
}

@media screen and (min-width: 750px) {
  .p-title__square {
    width: 60px;
    height: 60px;
  }
  @-webkit-keyframes scales {
    from {
      -webkit-transform: translate3d(0, 0, 0) scale(1);
              transform: translate3d(0, 0, 0) scale(1);
    }
    to {
      -webkit-transform: translate3d(0, 0, 0) scale(1.25);
              transform: translate3d(0, 0, 0) scale(1.25);
    }
  }
  @keyframes scales {
    from {
      -webkit-transform: translate3d(0, 0, 0) scale(1);
              transform: translate3d(0, 0, 0) scale(1);
    }
    to {
      -webkit-transform: translate3d(0, 0, 0) scale(1.25);
              transform: translate3d(0, 0, 0) scale(1.25);
    }
  }
}

@media screen and (min-width: 900px) {
  .p-title__heading {
    font-size: 100px;
    font-size: 10.0rem;
  }
  .p-title__lead {
    font-size: 30px;
    font-size: 3.0rem;
  }
}

.p-news .p-news__item::before, .p-news .p-news__item dl::before, .p-news__item .p-news dl::before, .p-news .p-news__kakko::before, .p-news .u-kakko::before, .p-news .p-news__item::after, .p-news .p-news__item dl::after, .p-news__item .p-news dl::after, .p-news .p-news__kakko::after, .p-news .u-kakko::after {
  content: "";
  position: absolute;
  z-index: 1;
  width: 10px;
  height: 10px;
  -webkit-transition: 0.1s;
  transition: 0.1s;
}

.p-news__link {
  display: block;
}

.p-news__item {
  position: relative;
  margin: 6.66667vw 0 0 0;
  padding: 2.66667vw;
  background: rgba(255, 255, 255, 0.6);
}

.p-news__item::before {
  left: 0;
  top: 0;
  border-left: 2px solid #000000;
  border-top: 2px solid #000000;
}

.p-news__item::after {
  left: 0;
  bottom: 0;
  border-left: 2px solid #000000;
  border-bottom: 2px solid #000000;
}

.p-news__item dl {
  display: block;
}

.p-news__item dl::before {
  right: 0;
  top: 0;
  border-right: 2px solid #000000;
  border-top: 2px solid #000000;
}

.p-news__item dl::after {
  right: 0;
  bottom: 0;
  border-right: 2px solid #000000;
  border-bottom: 2px solid #000000;
}

.p-news__kakko {
  position: relative;
}

.p-news__kakko--1::before {
  left: 0;
  top: 0;
  border-left: 2px solid #000000;
  border-top: 2px solid #000000;
}

.p-news__kakko--1::after {
  left: 0;
  bottom: 0;
  border-left: 2px solid #000000;
  border-bottom: 2px solid #000000;
}

.p-news__kakko--2::before {
  right: 0;
  top: 0;
  border-right: 2px solid #000000;
  border-top: 2px solid #000000;
}

.p-news__kakko--2::after {
  right: 0;
  bottom: 0;
  border-right: 2px solid #000000;
  border-bottom: 2px solid #000000;
}

.p-news__date {
  position: relative;
  display: inline-block;
  padding: 0.25em 0.3em 0.05em;
  line-height: 1;
  color: #fff;
}

.p-news__date time {
  position: relative;
}

.p-news__date::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
}

.p-news__category {
  padding: 0.1em 0.4em 0.1em 0.2em;
  border-radius: 4px;
  font-size: 0.8em;
  color: #000000;
  font-weight: 700;
  font-style: italic;
}

.p-news__category.information {
  background: -webkit-gradient(linear, left bottom, left top, from(#ff4200), to(#ffbc00));
  background: linear-gradient(0deg, #ff4200, #ffbc00);
}

.p-news__category.official {
  background: -webkit-gradient(linear, left bottom, left top, from(#5bff00), to(#fbff00));
  background: linear-gradient(0deg, #5bff00, #fbff00);
}

.p-news__category.defect, .p-news__category.maintenance, .p-news__category.others {
  background: #d1d1d1;
}

.p-news__category.campaign {
  background: #ffbc00;
}

.p-news__category.event {
  background: #5bff00;
}

.p-news__category.shop {
  background: -webkit-gradient(linear, left bottom, left top, from(#cccccc), to(#f2f2f2));
  background: linear-gradient(0deg, #cccccc, #f2f2f2);
}

.p-news__category.battle {
  background: #ff3b00;
}

.p-news__category.others {
  background: #666;
  color: #FFF;
}

.p-news__category[class$="-gray"] {
  background: #d1d1d1;
}

.p-news__category[class$="-red"] {
  background: #ff3b00;
}

.p-news__category[class$="-orange"] {
  background: #ffbc00;
}

.p-news__category[class$="-green"] {
  background: #5bff00;
}

.p-news__category[class$="-yellow"] {
  background: #fbff00;
}

.p-news__category[class$="-blue"] {
  background: #22d2ff;
}

.p-news__category[class$="-purple"] {
  background: #fa5eff;
}

.p-news__headline {
  margin: 0.5em 0 0 0;
  font-size: 16px;
  font-size: 4.26667vw;
  font-style: italic;
}

@media screen and (min-width: 750px) {
  .p-news__headline {
    font-size: 20.48px;
    font-size: 2.048rem;
  }
}

@media screen and (min-width: 750px) {
  .p-news__item {
    margin: 50px 0 0 0;
    padding: 20px;
  }
}

@media screen and (min-width: 900px) {
  .p-news__link:hover .p-news__date {
    -webkit-transition: 0.2s;
    transition: 0.2s;
    color: #000;
  }
  .p-news__link:hover .p-news__date::before {
    -webkit-transition: 0.2s;
    transition: 0.2s;
    background: #d3ff25;
  }
  .p-news__link:hover .p-news__item::before {
    -webkit-transform: translate3d(-4px, -4px, 0);
            transform: translate3d(-4px, -4px, 0);
  }
  .p-news__link:hover .p-news__item::after {
    -webkit-transform: translate3d(-4px, 4px, 0);
            transform: translate3d(-4px, 4px, 0);
  }
  .p-news__link:hover .p-news__item dl::before {
    -webkit-transform: translate3d(4px, -4px, 0);
            transform: translate3d(4px, -4px, 0);
  }
  .p-news__link:hover .p-news__item dl::after {
    -webkit-transform: translate3d(4px, 4px, 0);
            transform: translate3d(4px, 4px, 0);
  }
}

.p-info {
  border: 2px solid #000000;
}

.p-info__head {
  background: #000000;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
          align-items: stretch;
  overflow: hidden;
}

.p-info__title--fix {
  display: block;
  padding: 2.13333vw 2.66667vw 2.66667vw;
  font-weight: 700;
  line-height: 1;
  color: #FFF;
}

.p-info__more {
  position: relative;
  font-family: "Teko", sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
  font-style: italic;
  font-size: 14px;
  font-size: 3.73333vw;
}

@media screen and (min-width: 750px) {
  .p-info__more {
    font-size: 17.92px;
    font-size: 1.792rem;
  }
}

.p-info__anchor {
  height: calc(100% - 2px);
  position: relative;
  padding: 0 4vw 0 4.53333vw;
  margin: 0 -2.4vw 0 0;
  -webkit-transform: skewX(-30deg);
          transform: skewX(-30deg);
  background: #FFF;
  line-height: 1;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  vertical-align: bottom;
}

.p-info__anchor span {
  -webkit-transform: skewX(30deg);
          transform: skewX(30deg);
  margin: 0.15em 0 0 0;
}

.p-info__anchor .c-morearrow {
  -webkit-transform: skewX(30deg);
          transform: skewX(30deg);
  width: 2.13333vw;
  margin: -0.26667vw 0 0 0.8vw;
}

.p-info__body {
  padding: 0 2.66667vw;
  background: rgba(255, 255, 255, 0.8);
}

.p-info__item {
  padding: 2.66667vw 0 2.66667vw 0;
  border-bottom: 1px solid #000000;
}

.p-info__item:last-child {
  border-bottom: none;
}

.p-info__item dt {
  white-space: nowrap;
}

.p-info__item dt time {
  vertical-align: middle;
}

.p-info__item dd {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.p-info__item dd a {
  position: relative;
  display: inline;
  padding-bottom: 1px;
  line-height: 1.1;
}

.p-info__item dd a:hover {
  text-decoration: underline;
}

@media screen and (min-width: 750px) {
  .p-info__title--fix {
    padding: 16px 20px 16px;
  }
  .p-info__anchor {
    padding: 0 30px 0 34px;
    margin: 0 -15px 0 0;
  }
  .p-info__anchor .c-morearrow {
    width: 16px;
    margin: -2px 0 0 6px;
  }
  .p-info__body {
    padding: 0 20px;
  }
  .p-info__item {
    padding: 20px 0 20px 0;
  }
}

.p-appstore {
  position: relative;
}

.p-appstore--gradient {
  background: -webkit-gradient(linear, left bottom, left top, from(#ff4200), to(#ffbc00));
  background: linear-gradient(0deg, #ff4200, #ffbc00);
}

.p-appstore--padding {
  padding: 5.33333vw 0 0 0;
}

.p-appstore__title {
  position: absolute;
  z-index: 2;
  -webkit-transform: translate3d(0, -50%, 0);
          transform: translate3d(0, -50%, 0);
  text-align: center;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.p-appstore__title--txt {
  position: relative;
  display: inline-block;
  padding: 0.2em 0.6em 0.4em 0.4em;
  line-height: 1;
}

.p-appstore__title--txt span {
  position: relative;
  font-size: 16px;
  font-size: 4.26667vw;
  color: #FFF;
  font-weight: 700;
  font-style: italic;
}

@media screen and (min-width: 750px) {
  .p-appstore__title--txt span {
    font-size: 20.48px;
    font-size: 2.048rem;
  }
}

.p-appstore__title--txt::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: skewX(-15deg);
          transform: skewX(-15deg);
  background: #000;
}

.p-appstore__follow {
  position: relative;
  left: 0;
  z-index: 9997;
  width: 100%;
  padding: 2.66667vw 5.33333vw;
  margin: auto;
  -webkit-transform: translate3d(0, 100%, 0);
          transform: translate3d(0, 100%, 0);
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.p-appstore__follow.is-follow {
  background: -webkit-gradient(linear, left bottom, left top, from(#ff4200), to(#ffbc00));
  background: linear-gradient(0deg, #ff4200, #ffbc00);
}

.p-appstore__follow.is-show {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

.p-appstore__list {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-pack: center;
          justify-content: center;
  margin: auto;
}

.p-appstore__item {
  width: calc(100vw / 3 - 6.4vw);
  margin: 0.66667vw;
}

@media screen and (min-width: 750px) {
  .p-appstore--padding {
    padding: 20px 0 0 0;
  }
  .p-appstore__follow {
    padding: 20px 40px;
  }
  .p-appstore__item {
    width: 120px;
    margin: 5px;
  }
}

@media screen and (min-width: 900px) {
  .p-appstore__follow {
    min-width: 1080px;
    padding: 10px 20px;
  }
  .p-appstore__title--txt span {
    font-size: 32px;
    font-size: 3.2rem;
  }
  .p-appstore__item {
    width: 140px;
    margin: 10px;
  }
  .p-appstore__item a {
    -webkit-transition: 0.2s;
    transition: 0.2s;
  }
  .p-appstore__item a:hover {
    opacity: 0.7;
  }
}

.p-bnr__slider {
  overflow: visible !important;
}

.p-bnr__navigation {
  position: absolute;
  z-index: 9999;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  top: 0;
  bottom: 0;
  margin: auto;
  height: 24px;
}

.p-bnr__navigation:focus {
  outline: none;
}

.p-bnr__navigation--prev {
  left: 5.33333vw;
  border-right: 14px solid #000000;
}

.p-bnr__navigation--next {
  right: 5.33333vw;
  border-left: 14px solid #000000;
}

.p-bnr__navigation--disable {
  opacity: 0.5;
}

.p-bnr__pagination {
  position: absolute;
  width: 100%;
  height: 12px;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  bottom: -18px;
}

.p-bnr__pagination__button {
  width: 12px;
  height: 12px;
  background: #e1e1e1;
  border-radius: 100%;
  margin: 5px;
}

.p-bnr__pagination__button:focus {
  outline: none;
}

.p-bnr__pagination__button--active {
  background: -webkit-gradient(linear, left bottom, left top, from(#ff4200), to(#ffbc00));
  background: linear-gradient(0deg, #ff4200, #ffbc00);
}

.p-bnr__item {
  text-align: center;
}

@media screen and (min-width: 750px) {
  .p-bnr__navigation--prev {
    left: 40px;
  }
  .p-bnr__navigation--next {
    right: 40px;
  }
}

@media screen and (min-width: 900px) {
  .p-bnr {
    margin-bottom: 60px !important;
  }
}

.p-contents {
  margin: 16vw 0 0 0;
}

.p-contents__head {
  position: relative;
  z-index: 1;
}

.p-contents__body {
  position: relative;
  z-index: 0;
}

@media screen and (min-width: 750px) {
  .p-contents {
    margin: 120px 0 0 0;
  }
  .p-contents__body {
    width: 100%;
  }
}

.p-movie {
  position: relative;
  width: 100%;
  padding: 56.25% 0 0 0;
  background: #000;
  overflow: hidden;
}

.p-movie__poster {
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  cursor: pointer;
}

.p-movie__poster:hover .p-movie__playbtn {
  -webkit-transform: scale(1);
          transform: scale(1);
}

.p-movie__thumnail img {
  width: 100%;
}

.p-movie__playbtn {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 11.73333vw;
  height: 11.73333vw;
  max-width: 88px;
  -webkit-transform: scale(0.85);
          transform: scale(0.85);
  -webkit-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
}

.p-movie__player {
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 100%;
  height: 100%;
}

.p-movie__player iframe {
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 750px) {
  .p-movie__playbtn {
    width: 88px;
    height: 88px;
  }
}

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

.p-share__item {
  font-size: 0 !important;
  margin: 5px;
}

.p-linkbnr {
  width: 100%;
  margin: 8vw auto;
}

.p-linkbnr img {
  width: 100%;
}

.p-linkbnr__anchor {
  background: #000000;
}

.p-linkbnr__anchor--disable {
  position: relative;
  text-align: center;
}

.p-linkbnr__anchor--disable img {
  opacity: 0.5;
}

.p-linkbnr__anchor--disable::after {
  content: 'COMING SOON...';
  position: absolute;
  right: 5px;
  bottom: 5px;
  margin: auto;
  color: #FFF;
  font-size: 18px;
  font-size: 4.8vw;
  line-height: 1;
}

@media screen and (min-width: 750px) {
  .p-linkbnr__anchor--disable::after {
    font-size: 23.04px;
    font-size: 2.304rem;
  }
}

@media screen and (min-width: 750px) {
  .p-linkbnr__anchor--disable::after {
    right: 10px;
    bottom: 10px;
    font-size: 36px;
    font-size: 3.6rem;
  }
}

@media screen and (min-width: 900px) {
  .p-linkbnr {
    width: 750px;
    margin: 60px auto;
  }
  .p-linkbnr--highmargin {
    margin-top: 250px;
  }
}

.p-official__list {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
}

.p-official__item {
  width: 10.93333vw;
  margin: 1.33333vw;
}

@media screen and (min-width: 750px) {
  .p-official__item {
    width: 82px;
    margin: 10px;
  }
}

@media screen and (min-width: 900px) {
  .p-official__item {
    width: 60px;
  }
  .p-official__item a {
    -webkit-transition: 0.2s;
    transition: 0.2s;
  }
  .p-official__item a:hover {
    opacity: 0.7;
  }
}

.p-nav {
  -webkit-animation: fadeIn 0.5s;
          animation: fadeIn 0.5s;
  display: none;
  position: fixed;
  z-index: 9999999999;
  width: 100%;
  height: 100vh;
  overflow-y: scroll;
  background: url("../images/common/nav_bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  color: #FFF;
}

.p-nav__inner {
  padding: 5.33333vw 5.33333vw 16vw;
}

.p-nav__anchor a {
  font-family: "Teko", sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
  font-style: italic;
  font-size: 26px;
  font-size: 6.93333vw;
  padding: 1.33333vw 2vw 1.33333vw 0;
  color: #FFF;
}

@media screen and (min-width: 750px) {
  .p-nav__anchor a {
    font-size: 33.28px;
    font-size: 3.328rem;
  }
}

.p-nav__block {
  margin: 8vw 0 0 0;
}

.p-nav__title {
  position: relative;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  text-align: center;
  margin: 0 0 5.33333vw 0;
}

.p-nav__title span {
  font-weight: 700;
  font-size: 18px;
  font-size: 4.8vw;
  white-space: nowrap;
  padding: 0 1em;
}

@media screen and (min-width: 750px) {
  .p-nav__title span {
    font-size: 23.04px;
    font-size: 2.304rem;
  }
}

.p-nav__title::before, .p-nav__title::after {
  content: '';
  width: 100%;
  height: 1px;
  background: #FFF;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0.4em, 0, 0);
            transform: translate3d(0.4em, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}

@media screen and (min-width: 750px) and (max-width: 900px) {
  .p-nav {
    display: none;
  }
}

@media screen and (min-width: 900px) {
  .p-nav {
    display: none;
  }
}

.p-feature {
  margin: auto;
}

.p-feature__outer {
  font-size: 28px;
  font-size: 7.46667vw;
  padding: 1em 0 0 0;
  position: relative;
}

@media screen and (min-width: 750px) {
  .p-feature__outer {
    font-size: 35.84px;
    font-size: 3.584rem;
  }
}

.p-feature__item {
  background: #000;
}

.p-feature__inner {
  background: #000;
  position: relative;
}

.p-feature__head {
  display: -webkit-box;
  display: flex;
}

.p-feature__title {
  width: calc(1em + 5.33333vw);
  position: relative;
  padding: 2.66667vw 2.66667vw 2.66667vw 1.86667vw;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  font-family: "Teko", sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
  font-style: italic;
  letter-spacing: 0.15em;
  text-align: right;
  color: #FFF;
  line-height: 0.8;
}

.p-feature__visual {
  position: relative;
}

.p-feature__figure {
  -webkit-transform: translate3d(0, -1em, 0);
          transform: translate3d(0, -1em, 0);
}

.p-feature__figure img {
  width: 100%;
}

.p-feature__body {
  position: relative;
  margin: -1em 0 0 0;
}

.p-feature__sentence {
  font-size: 12px;
  font-size: 3.2vw;
  padding: 2.66667vw;
  margin: 2.66667vw 0 0 0;
}

@media screen and (min-width: 750px) {
  .p-feature__sentence {
    font-size: 15.36px;
    font-size: 1.536rem;
  }
}

.p-feature__subtitle {
  display: inline-block;
  padding: 0.1em;
  line-height: 1;
  background: #FFF;
  font-weight: 700;
}

.p-feature__description {
  margin: 1.33333vw 0 0 0;
  color: #FFF;
}

@media screen and (min-width: 750px) {
  .p-feature__title {
    width: calc(1em + 40px);
    padding: 20px 20px 20px 14px;
  }
  .p-feature__sentence {
    padding: 20px;
    margin: 20px 0 0 0;
  }
  .p-feature__description {
    margin: 10px 0 0 0;
  }
}

@media screen and (min-width: 900px) {
  .p-feature__list {
    width: 720px;
    margin: auto;
    display: -webkit-box;
    display: flex;
  }
  .p-feature__item {
    -webkit-box-flex: 2.5;
            flex: 2.5;
    -webkit-transition: 0.2s;
    transition: 0.2s;
    overflow: hidden;
  }
  .p-feature__item.is-open {
    -webkit-box-flex: 5;
            flex: 5;
  }
  .p-feature .js-video--pc {
    opacity: 0;
  }
  .p-feature .is-open .p-feature__btn {
    display: none;
  }
  .p-feature .is-open .js-video--pc {
    opacity: 1;
  }
  .p-feature__outer {
    font-size: 48px;
    font-size: 4.8rem;
    padding: 0;
    height: 100%;
  }
  .p-feature__inner {
    position: relative;
    width: 360px;
    background: #000;
  }
  .p-feature__head {
    justify-content: space-around;
    padding: 30px;
  }
  .p-feature__title {
    width: 1em;
    position: relative;
    padding: 0;
    -webkit-transition: 0.2s;
    transition: 0.2s;
    font-size: 46px;
    font-size: 4.6rem;
    white-space: nowrap;
  }
  .p-feature__figure {
    position: relative;
    overflow: hidden;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  .p-feature__figure img {
    width: 100%;
    height: auto;
  }
  .p-feature__sentence {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 20px;
  }
  .p-feature__description {
    margin: 10px 0 0 0;
    color: #FFF;
  }
  .p-feature__btn {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: center;
            justify-content: center;
    -webkit-box-align: center;
            align-items: center;
    overflow: hidden;
    background: #000;
    font-size: 48px;
    font-size: 4.8rem;
    -webkit-transition: 0.2s;
    transition: 0.2s;
    cursor: pointer;
  }
  .p-feature__btn .p-feature__title {
    pointer-events: none;
    line-height: 1;
    width: 1em;
  }
  .p-feature__btn:hover .p-feature__btnimg {
    opacity: 0.8;
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  .p-feature__btnimg {
    position: absolute;
    top: -10%;
    left: -10%;
    right: -10%;
    bottom: -10%;
    margin: auto;
    width: 120%;
    height: 120%;
    background-size: cover;
    background-position: center;
    -webkit-filter: blur(4px);
            filter: blur(4px);
    opacity: 0.25;
    -webkit-transition: 0.2s;
    transition: 0.2s;
  }
  .p-feature__btnimg--support01 {
    background: url("../images/top/aisupport_01.jpg");
  }
  .p-feature__btnimg--support02 {
    background: url("../images/top/aisupport_02.jpg");
  }
  .p-feature__btnimg--support03 {
    background: url("../images/top/aisupport_03.jpg");
  }
  .p-feature__btnimg--game01 {
    background: url("../images/top/game_01.jpg");
  }
  .p-feature__btnimg--game02 {
    background: url("../images/top/game_02.jpg");
  }
  .p-feature__btnimg--game03 {
    background: url("../images/top/game_03.jpg");
  }
}

.p-slider__content {
  -webkit-transition: 0.2s;
  transition: 0.2s;
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
}

.p-slider__item--active .p-slider__content {
  -webkit-transform: scale(1);
          transform: scale(1);
}

.p-thumnail {
  padding: 0 26.66667vw 0 13.33333vw;
}

.p-thumnail__container {
  padding: 0 10%;
  overflow: visible !important;
}

.p-thumnail__item {
  width: 100px !important;
  height: 80px !important;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  -webkit-transform: scale(0.75) skew(-20deg);
          transform: scale(0.75) skew(-20deg);
  overflow: hidden;
}

.p-thumnail__item--active {
  -webkit-transform: scale(1) skew(-20deg);
          transform: scale(1) skew(-20deg);
  z-index: 1;
}

.p-thumnail__item a {
  width: 158px;
  -webkit-transform: skew(20deg) translate3d(-20px, 0, 0);
          transform: skew(20deg) translate3d(-20px, 0, 0);
}

.p-thumnail__item a img {
  width: 100% !important;
}

@media screen and (min-width: 750px) {
  .p-thumnail {
    padding: 0 200px 0 100px;
  }
}

@media screen and (min-width: 900px) {
  .p-thumnail__item {
    width: 148px !important;
    height: 112px !important;
  }
  .p-thumnail__item a {
    width: 192px;
  }
}

.p-chara .p-chara--lead {
  font-size: 0.6em;
}

.p-chara__item {
  position: relative;
  font-size: 14px;
  font-size: 3.73333vw;
  overflow: hidden;
}

@media screen and (min-width: 750px) {
  .p-chara__item {
    font-size: 17.92px;
    font-size: 1.792rem;
  }
}

.p-chara__wrapper {
  margin: 5.33333vw 0 0 0;
}

.p-chara__inner {
  position: relative;
  display: -webkit-box;
  display: flex;
  align-content: flex-end;
  flex-wrap: nowrap;
  padding: 0 0 0 5.33333vw;
}

.p-chara__outer {
  position: relative;
}

.p-chara__container {
  margin: 5.33333vw 0 0 0;
}

.p-chara__navigation {
  display: -webkit-box;
  display: flex;
  position: absolute;
  z-index: 9997;
  right: 5px;
}

.p-chara__navigation > div {
  width: 10.93333vw;
  margin: 1.6vw 0.8vw 0;
  overflow: hidden;
  -webkit-transform: skew(-20deg);
          transform: skew(-20deg);
  background: #FFF;
  box-shadow: 0 0 1.33333vw rgba(0, 0, 0, 0.25);
  outline: none;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  cursor: pointer;
  text-align: center;
}

.p-chara__navigation > div:active {
  -webkit-transform: scale(0.9) skew(-20deg);
          transform: scale(0.9) skew(-20deg);
}

.p-chara__navigation > div img {
  width: 5.06667vw;
  -webkit-transform: skew(20deg);
          transform: skew(20deg);
}

.p-chara__image {
  position: absolute;
  width: 75%;
  right: 0;
  top: 0;
}

.p-chara__profile {
  position: relative;
  margin: 0 0 0 0;
  width: 80%;
  line-height: 1;
}

.p-chara__band {
  position: relative;
  display: inline-block;
  padding: 0.2em 0.4em 0.4em;
}

.p-chara__band span {
  position: relative;
  color: #FFF;
}

.p-chara__band--bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
}

.p-chara__catch {
  position: relative;
  margin: 5.33333vw 0 0 0;
  font-weight: 700;
  background: #FFF;
  padding: 1.06667vw 1.33333vw 1.33333vw 1.33333vw;
}

.p-chara__catch--ruby {
  padding: 2.66667vw 2.66667vw 1.33333vw 2.66667vw;
}

.p-chara__catch span {
  font-size: 13px;
  font-size: 3.46667vw;
}

@media screen and (min-width: 750px) {
  .p-chara__catch span {
    font-size: 16.64px;
    font-size: 1.664rem;
  }
}

.p-chara__ruby {
  position: absolute;
  z-index: 1;
  top: 0.66667vw;
  font-size: 7px;
  font-size: 1.86667vw;
  letter-spacing: -0.1em;
  color: #FFF;
  font-weight: 400;
  white-space: nowrap;
}

@media screen and (min-width: 750px) {
  .p-chara__ruby {
    font-size: 8.96px;
    font-size: 0.896rem;
  }
}

.p-chara__ruby.left {
  left: 0.5em;
  text-align: left;
}

.p-chara__ruby.right {
  right: 0.5em;
  text-align: right;
}

.p-chara__ruby.center {
  left: 0;
  right: 0;
  margin: auto;
  text-align: center;
}

.p-chara__name {
  margin: 1.33333vw 0 0 0;
  font-weight: 700;
  font-size: 16px;
  font-size: 4.26667vw;
}

@media screen and (min-width: 750px) {
  .p-chara__name {
    font-size: 20.48px;
    font-size: 2.048rem;
  }
}

.p-chara__nameen {
  margin: 1.33333vw 0 0 0;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  color: #666;
}

.p-chara__nameen::before {
  content: '';
  width: 30px;
  height: 1px;
  margin-right: 0.2em;
  background: #666;
}

.p-chara__cv {
  margin: 2.66667vw 0 0 0;
  font-weight: 700;
  color: #FFF;
}

.p-chara__box {
  position: relative;
  margin: 4vw 0 0 0;
  padding: 5.33333vw;
  background: rgba(255, 255, 255, 0.6);
}

.p-chara__from {
  font-weight: 700;
  display: -webkit-box;
  display: flex;
  font-size: 13px;
  font-size: 3.46667vw;
}

@media screen and (min-width: 750px) {
  .p-chara__from {
    font-size: 16.64px;
    font-size: 1.664rem;
  }
}

.p-chara__from span {
  display: block;
  padding: 0.2em 0.4em;
  background: #000000;
  color: #FFF;
  line-height: 1;
  vertical-align: bottom;
}

.p-chara__from span:nth-child(2) {
  background: #FFF;
  color: #000000;
}

.p-chara__txt {
  margin: 1.33333vw 0 0 0;
  line-height: 1.2;
}

.p-chara__ainame {
  margin: 46.66667vw 0 0 0;
  font-weight: 700;
  font-style: italic;
  font-size: 40px;
  font-size: 10.66667vw;
  letter-spacing: -0.08em;
  text-shadow: 0 0 2px #FFF;
}

@media screen and (min-width: 750px) {
  .p-chara__ainame {
    font-size: 51.2px;
    font-size: 5.12rem;
  }
}

.p-chara .c-slash {
  margin: 18.66667vw 0 0 0;
  opacity: 1;
}

.p-chara .c-slash__bg {
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.p-chara .c-slash__bg .c-slash__pic {
  display: block;
  max-width: 1080px;
  margin: auto;
  -webkit-transform: translate3d(-15%, 26.8%, 0);
          transform: translate3d(-15%, 26.8%, 0);
  opacity: 0.3;
}

@media screen and (min-width: 750px) {
  .p-chara__navigation > div {
    width: 60px;
    margin: 12px 6px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
  }
  .p-chara__navigation > div img {
    width: 38px;
    -webkit-transform: skew(20deg);
            transform: skew(20deg);
  }
  .p-chara__wrapper {
    margin: 40px 0 0 0;
  }
  .p-chara__inner {
    padding: 0 0 0 40px;
  }
  .p-chara__ruby {
    top: 7px;
  }
  .p-chara__catch {
    margin: 40px 0 0 0;
    padding: 2px 10px 10px 10px;
  }
  .p-chara__catch--ruby {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 18px 16px 10px;
  }
  .p-chara__name {
    margin: 10px 0 0 0;
  }
  .p-chara__nameen {
    margin: 10px 0 0 0;
  }
  .p-chara__cv {
    margin: 20px 0 0 0;
  }
  .p-chara__box {
    position: relative;
    margin: 30px 0 0 0;
    padding: 40px;
  }
  .p-chara__txt {
    margin: 10px 0 0 0;
  }
  .p-chara__ainame {
    margin: 350px 0 0 0;
    opacity: 0.75;
  }
}

@media screen and (min-width: 900px) {
  .p-chara__container {
    overflow: visible !important;
  }
  .p-chara__wrapper {
    margin: 0 0 0 0;
  }
  .p-chara__navigation {
    width: 1080px;
    margin: auto;
    left: 0;
    right: 0;
    -webkit-box-pack: end;
            justify-content: flex-end;
  }
  .p-chara__item {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .p-chara__outer {
    width: 900px;
    margin: auto;
  }
  .p-chara__inner {
    padding: 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
            flex-direction: row-reverse;
    -webkit-box-align: center;
            align-items: center;
  }
  .p-chara__image {
    position: relative;
    width: 100px;
    top: 0;
    right: 400px;
  }
  .p-chara__image img {
    display: block;
    width: 590px;
    max-width: inherit !important;
  }
  .p-chara__profile {
    margin: 0 auto 0 0;
  }
  .p-chara__catch {
    font-size: 24px;
    font-size: 2.4rem;
    padding: 2px 10px 10px 10px;
  }
  .p-chara__catch--ruby {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 18px 16px 10px;
  }
  .p-chara__name {
    font-size: 32px;
    font-size: 3.2rem;
  }
  .p-chara__nameen {
    font-size: 28px;
    font-size: 2.8rem;
  }
  .p-chara__nameen::before {
    width: 40px;
  }
  .p-chara__cv {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .p-chara__box {
    width: 500px;
    padding: 20px;
  }
  .p-chara__from {
    font-size: 22px;
    font-size: 2.2rem;
  }
  .p-chara__ainame {
    font-size: 100px;
    font-size: 10rem;
    margin: 80px 0 0 0;
  }
  .p-chara .c-slash {
    margin: 80px 0 0 0;
  }
  .p-chara .c-slash__bg .c-slash__pic {
    display: block;
    max-width: 1080px;
    margin: auto;
    -webkit-transform: translate3d(0, 26.8%, 0);
            transform: translate3d(0, 26.8%, 0);
    opacity: 0.3;
  }
}

.p-loading {
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  background: #000000;
}

.p-loading--another {
  z-index: 0;
  background: none;
}

.p-loading__inner {
  position: relative;
  width: 100px;
  height: 30px;
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

.p-loading__square {
  position: absolute;
  width: 0;
  height: 30px;
}

.p-loading__square--1 {
  -webkit-animation: loadingSquare-1 6s 0s infinite;
          animation: loadingSquare-1 6s 0s infinite;
  background: -webkit-gradient(linear, right top, left top, from(#5bff00), to(#fbff00));
  background: linear-gradient(-90deg, #5bff00, #fbff00);
}

.p-loading__square--2 {
  -webkit-animation: loadingSquare-2 6s 0s infinite;
          animation: loadingSquare-2 6s 0s infinite;
  background: -webkit-gradient(linear, right top, left top, from(#ff4200), to(#ffbc00));
  background: linear-gradient(-90deg, #ff4200, #ffbc00);
}

.p-loading__square--3 {
  -webkit-animation: loadingSquare-3 6s 0s infinite;
          animation: loadingSquare-3 6s 0s infinite;
  background: -webkit-gradient(linear, right top, left top, from(#6104df), to(#f600ff));
  background: linear-gradient(-90deg, #6104df, #f600ff);
}

@-webkit-keyframes loadingSquare-1 {
  0% {
    width: 0;
    left: 0;
  }
  15% {
    width: 100px;
    left: 0;
  }
  30% {
    width: 100px;
    left: 100%;
  }
  100% {
    width: 100px;
    left: 100%;
  }
}

@keyframes loadingSquare-1 {
  0% {
    width: 0;
    left: 0;
  }
  15% {
    width: 100px;
    left: 0;
  }
  30% {
    width: 100px;
    left: 100%;
  }
  100% {
    width: 100px;
    left: 100%;
  }
}

@-webkit-keyframes loadingSquare-2 {
  0% {
    width: 0;
    left: 0;
  }
  33% {
    width: 0;
  }
  48% {
    width: 100px;
    left: 0;
  }
  63% {
    width: 100px;
    left: 100%;
  }
  100% {
    width: 100px;
    left: 100%;
  }
}

@keyframes loadingSquare-2 {
  0% {
    width: 0;
    left: 0;
  }
  33% {
    width: 0;
  }
  48% {
    width: 100px;
    left: 0;
  }
  63% {
    width: 100px;
    left: 100%;
  }
  100% {
    width: 100px;
    left: 100%;
  }
}

@-webkit-keyframes loadingSquare-3 {
  0% {
    width: 0;
    left: 0;
  }
  66% {
    width: 0;
    left: 0;
  }
  81% {
    width: 100px;
    left: 0;
  }
  96% {
    width: 100px;
    left: 100%;
  }
  100% {
    width: 100px;
    left: 100%;
  }
}

@keyframes loadingSquare-3 {
  0% {
    width: 0;
    left: 0;
  }
  66% {
    width: 0;
    left: 0;
  }
  81% {
    width: 100px;
    left: 0;
  }
  96% {
    width: 100px;
    left: 100%;
  }
  100% {
    width: 100px;
    left: 100%;
  }
}

.p-article__head {
  width: 100%;
}

.p-article__head--news {
  background: url("../images/news/news_bg.jpg");
  background-size: cover;
}

.p-article__head--alpha {
  background: #000000;
}

.p-article__title {
  padding: 7.46667vw 5.33333vw 5.33333vw 5.33333vw;
  font-size: 40px;
  font-size: 10.66667vw;
  text-align: center;
  color: #FFF;
  line-height: 1;
}

@media screen and (min-width: 750px) {
  .p-article__title {
    font-size: 51.2px;
    font-size: 5.12rem;
  }
}

.p-article__body {
  padding: 5.33333vw 0;
  margin: 5.33333vw auto;
  width: 89.33333vw;
  margin: auto;
}

.p-article__subtitle {
  font-size: 24px;
  font-size: 6.4vw;
  font-weight: 700;
  font-style: italic;
}

@media screen and (min-width: 750px) {
  .p-article__subtitle {
    font-size: 30.72px;
    font-size: 3.072rem;
  }
}

.p-article__block {
  margin: 5.33333vw 0 0 0;
}

@media screen and (min-width: 750px) {
  .p-article__title {
    padding: 50px 40px 40px 40px;
  }
  .p-article__body {
    padding: 80px 0;
    width: 670px;
  }
  .p-article__block {
    margin: 40px 0 0 0;
  }
}

@media screen and (min-width: 900px) {
  .p-article__title {
    padding: 100px 0 80px 0;
    font-size: 100px;
    font-size: 10rem;
  }
  .p-article__body {
    padding: 60px 0;
    margin: 60px auto;
    width: 900px;
  }
  .p-article__subtitle {
    font-size: 36px;
    font-size: 3.6rem;
  }
  .p-article__item {
    margin: 50px 0 0 0;
    padding: 26px 16px;
  }
  .p-article__date {
    font-size: 16px;
    font-size: 4.26667vw;
  }
}

@media screen and (min-width: 900px) and (min-width: 750px) {
  .p-article__date {
    font-size: 20.48px;
    font-size: 2.048rem;
  }
}

@media screen and (min-width: 900px) {
  .p-article__headline {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

.p-wordpress {
  padding: 2.66667vw 2.66667vw 4vw 2.66667vw;
  background: rgba(255, 255, 255, 0.6);
}

.p-wordpress .aligncenter {
  text-align: center;
}

.p-wordpress h2,
.p-wordpress h3,
.p-wordpress h4 {
  margin: 5.33333vw 0 0 0;
}

.p-wordpress h1 {
  font-size: 24px;
  font-size: 6.4vw;
  font-weight: 700;
}

@media screen and (min-width: 750px) {
  .p-wordpress h1 {
    font-size: 30.72px;
    font-size: 3.072rem;
  }
}

.p-wordpress h2 {
  font-size: 18px;
  font-size: 4.8vw;
  font-weight: 700;
}

@media screen and (min-width: 750px) {
  .p-wordpress h2 {
    font-size: 23.04px;
    font-size: 2.304rem;
  }
}

.p-wordpress h3 {
  font-weight: 700;
}

.p-wordpress p,
.p-wordpress table,
.p-wordpress ul,
.p-wordpress figure {
  margin: 2.66667vw 0 0 0;
}

.p-wordpress li {
  margin: 0.2em 0 0 0;
}

.p-wordpress table {
  width: 100%;
}

.p-wordpress table th,
.p-wordpress table td {
  padding: 0.2em;
}

.p-wordpress table th {
  background: #000000;
  color: #FFF;
}

.p-wordpress table th,
.p-wordpress table td {
  border: 1px solid #666;
}

.p-wordpress a {
  color: #666;
  font-weight: 400;
  margin: 0.2em 0 0 0;
  word-break: break-all;
  font-size: 12px;
  font-size: 3.2vw;
  text-decoration: underline;
}

@media screen and (min-width: 750px) {
  .p-wordpress a {
    font-size: 15.36px;
    font-size: 1.536rem;
  }
}

.p-wordpress strong {
  font-weight: 700;
}

@media screen and (min-width: 750px) {
  .p-wordpress {
    padding: 20px 20px 30px 20px;
  }
  .p-wordpress h2,
  .p-wordpress h3,
  .p-wordpress h4 {
    margin: 40px 0 0 0;
  }
  .p-wordpress p,
  .p-wordpress table,
  .p-wordpress ul,
  .p-wordpress figure {
    margin: 20px 0 0 0;
  }
  .p-wordpress table {
    border-collapse: seprate;
    border-spacing: 0px;
    /**
      tr {

        &:first-child {
          td {
            border-top: 1px solid $base;
          }
        }

        &:last-child {

          th {
            border-bottom: 1px solid $base;
          }
        }
      }

      th {
        width: 20%;
        border-bottom: 1px solid #FFF;
      }

      td {
        width: 80%;
        border-bottom: 1px solid $base;
      }
**/
  }
  .p-wordpress table th,
  .p-wordpress table td {
    display: table-cell;
    padding: 0.4em;
  }
}

.p-webview {
  padding: 5.33333vw;
}

.p-webview__box {
  margin: 5.33333vw 0 0 0;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
}

.p-webview__subtitle {
  padding: 2.66667vw;
  background: #000000;
  color: #FFF;
  font-weight: 700;
  line-height: 1;
}

.p-webview__list {
  background: #FFF;
  padding: 0 2.66667vw;
}

.p-webview__item {
  padding: 2.66667vw 0;
  border-bottom: 1px solid #000;
}

.p-webview__item:last-child {
  border: none;
}

.p-webview__item dt {
  font-weight: 700;
  line-height: 1;
}

.p-webview__item dd {
  margin: 1.33333vw 0 0 0;
  color: #333;
}

.p-webview__txt {
  padding: 2.66667vw;
  font-size: 14px;
  font-size: 3.73333vw;
  color: #333;
  background: #FFF;
}

@media screen and (min-width: 750px) {
  .p-webview__txt {
    font-size: 17.92px;
    font-size: 1.792rem;
  }
}

.p-webview__txt li {
  margin: 2.13333vw 0 0 0;
}

.p-webview__txt li:first-child {
  margin: 0;
}

.p-webview__txt a {
  display: inline;
  color: #136ffb;
}

.p-webview__txt table {
  width: 100%;
  border-bottom: 1px solid #f2f2f2;
}

.p-webview__txt table th,
.p-webview__txt table td {
  display: block;
  padding: 1%;
}

.p-webview__txt table th {
  background: #f2f2f2;
}

.p-webview__txt table td {
  border-right: 1px solid #f2f2f2;
  border-left: 1px solid #f2f2f2;
}

.p-webview__inneritem {
  text-indent: -2.5em;
  padding-left: 3.0em;
}

.p-webview__inneritem li:first-child {
  margin: 2.13333vw 0 0 0;
}

.p-webview__notice {
  margin: 0.5em 0 0 0;
  font-size: 0.8em;
}

.p-webview__sublist li {
  padding: 0 0 0 0.5em;
  margin: 0.66667vw 0 0 0;
  font-size: 12px;
  font-size: 3.2vw;
}

@media screen and (min-width: 750px) {
  .p-webview__sublist li {
    font-size: 15.36px;
    font-size: 1.536rem;
  }
}

.p-webview__subheading {
  margin: 2vw 0 0 0;
  font-weight: 700;
  font-size: 14px;
  font-size: 3.73333vw;
}

@media screen and (min-width: 750px) {
  .p-webview__subheading {
    font-size: 17.92px;
    font-size: 1.792rem;
  }
}

.p-webview__sentence {
  margin: 2vw 0 0 0;
}

.p-webview__accordion .js-accordion__btn {
  padding: 4vw 2.66667vw;
  background: #F2f2f2;
  line-height: 1.1;
}

.p-webview__accordion .js-accordion__contents {
  padding: 0 0;
  margin: 0 0;
  overflow: hidden;
}

.p-webview__anchor {
  color: blue;
  text-decoration: underline;
}

.p-webview .c-btn span {
  font-size: 15px;
  font-size: 4vw;
}

@media screen and (min-width: 750px) {
  .p-webview .c-btn span {
    font-size: 19.2px;
    font-size: 1.92rem;
  }
}

@media screen and (min-width: 750px) {
  .p-webview {
    max-width: 1080px;
    margin: auto;
    padding: 40px;
  }
  .p-webview__box {
    margin: 40px 0 0 0;
  }
  .p-webview__subtitle {
    padding: 20px;
  }
  .p-webview__list {
    padding: 0 20px;
  }
  .p-webview__item {
    padding: 20px 0;
  }
  .p-webview__item dd {
    margin: 10px 0 0 0;
  }
  .p-webview__txt {
    padding: 20px;
  }
  .p-webview__txt li {
    margin: 16px 0 0 0;
  }
  .p-webview__inneritem {
    text-indent: -2.5em;
    padding-left: 3.0em;
  }
  .p-webview__inneritem li:first-child {
    margin: 16px 0 0 0;
  }
  .p-webview__sublist li {
    margin: 5px 0 0 0;
  }
  .p-webview__subheading {
    margin: 15px 0 0 0;
  }
  .p-webview__sentence {
    margin: 15px 0 0 0;
  }
  .p-webview__accordion .js-accordion__btn {
    padding: 20px;
  }
  .p-webview__accordion .js-accordion__contents {
    margin: 0;
  }
}

.p-modal {
  display: none;
  opacity: 0;
  position: fixed;
  background: rgba(0, 0, 0, 0.9);
  z-index: 9999;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  margin: auto;
}

.p-modal__outer {
  position: relative;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  justify-content: space-around;
  height: 100%;
}

.p-modal__inner {
  position: relative;
  width: calc(100% - 10.66667vw);
  height: 100%;
  padding: 5.33333vw 0;
  margin: auto;
}

.p-modal__close {
  position: absolute;
  top: 5.33333vw;
  right: 0;
}

.p-modal .p-modal__closebtn span:nth-child(1), .p-modal__closebtn .p-modal span:nth-child(1), .p-modal .p-modal__closebtn span:nth-child(2), .p-modal__closebtn .p-modal span:nth-child(2), .p-modal .p-modal__closebtn span:nth-child(3), .p-modal__closebtn .p-modal span:nth-child(3), .p-modal .p-modal__closebtn span:nth-child(4), .p-modal__closebtn .p-modal span:nth-child(4) {
  display: block;
  position: absolute;
  width: 2.13333vw;
  height: 2.13333vw;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.p-modal__closebtn {
  position: relative;
  z-index: 1;
  width: 8vw;
  height: 8vw;
  cursor: pointer;
  background: rgba(0, 0, 0, 0.2);
}

.p-modal__closebtn:hover span:nth-child(1) {
  -webkit-transform: translate(-4px, -4px);
          transform: translate(-4px, -4px);
}

.p-modal__closebtn:hover span:nth-child(2) {
  -webkit-transform: translate(4px, -4px);
          transform: translate(4px, -4px);
}

.p-modal__closebtn:hover span:nth-child(3) {
  -webkit-transform: translate(4px, 4px);
          transform: translate(4px, 4px);
}

.p-modal__closebtn:hover span:nth-child(4) {
  -webkit-transform: translate(-4px, 4px);
          transform: translate(-4px, 4px);
}

.p-modal__closebtn span:nth-child(1) {
  top: 0;
  left: 0;
  border-top: 2px solid #FFF;
  border-left: 2px solid #FFF;
}

.p-modal__closebtn span:nth-child(2) {
  top: 0;
  right: 0;
  border-top: 2px solid #FFF;
  border-right: 2px solid #FFF;
}

.p-modal__closebtn span:nth-child(3) {
  bottom: 0;
  right: 0;
  border-bottom: 2px solid #FFF;
  border-right: 2px solid #FFF;
}

.p-modal__closebtn span:nth-child(4) {
  bottom: 0;
  left: 0;
  border-bottom: 2px solid #FFF;
  border-left: 2px solid #FFF;
}

.p-modal__closebtn span:nth-child(5), .p-modal__closebtn span:nth-child(6) {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 6.4vw;
  height: 0.53333vw;
  background: #FFF;
}

.p-modal__closebtn span:nth-child(5) {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.p-modal__closebtn span:nth-child(6) {
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}

.p-modal__media {
  position: relative;
  width: 100%;
  height: 100%;
  max-width: 900px;
  margin: auto;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
}

.p-modal__media--larger {
  max-width: 1200px;
}

.p-modal__media iframe {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.p-modal__mediainner {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

@media screen and (min-width: 750px) {
  .p-modal__inner {
    width: calc(100% - 80px);
    padding: 40px 0;
  }
  .p-modal .p-modal__closebtn span:nth-child(1), .p-modal__closebtn .p-modal span:nth-child(1), .p-modal .p-modal__closebtn span:nth-child(2), .p-modal__closebtn .p-modal span:nth-child(2), .p-modal .p-modal__closebtn span:nth-child(3), .p-modal__closebtn .p-modal span:nth-child(3), .p-modal .p-modal__closebtn span:nth-child(4), .p-modal__closebtn .p-modal span:nth-child(4) {
    width: 10px;
    height: 10px;
  }
  .p-modal__close {
    position: absolute;
    top: 40px;
    right: 0;
  }
  .p-modal__closebtn {
    width: 50px;
    height: 50px;
  }
  .p-modal__closebtn span:nth-child(1) {
    border-top: 2px solid #FFF;
    border-left: 2px solid #FFF;
  }
  .p-modal__closebtn span:nth-child(2) {
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
  }
  .p-modal__closebtn span:nth-child(3) {
    border-bottom: 2px solid #FFF;
    border-right: 2px solid #FFF;
  }
  .p-modal__closebtn span:nth-child(4) {
    border-bottom: 2px solid #FFF;
    border-left: 2px solid #FFF;
  }
  .p-modal__closebtn span:nth-child(5), .p-modal__closebtn span:nth-child(6) {
    width: 34px;
    height: 2px;
  }
}

@media screen and (min-width: 900px) {
  .p-modal__outer {
    overflow: visible;
  }
}

.p-accordion__inner {
  border: 1px solid #000000;
}

.p-accordion__btn {
  text-align: center;
}

.p-accordion__btn a {
  padding: 2.66667vw;
  cursor: pointer;
}

.p-accordion__btn img {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.p-accordion__contents {
  padding: 0 0;
  overflow: hidden;
}

.p-accordion__contents--space {
  padding: 0 5.33333vw;
}

.p-accordion.is-show .p-accordion__btn img {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}

@media screen and (min-width: 750px) {
  .p-accordion__btn a {
    padding: 20px;
  }
  .p-accordion__contents--space {
    padding: 0 40px;
  }
}

.p-campaign__item {
  margin: 5.33333vw 0 0 0;
}

.p-campaign__item:first-child {
  margin: 0 0 0 0;
}

.p-campaign__inner {
  padding: 2vw;
}

.p-campaign__label {
  display: -webkit-box;
  display: flex;
}

.p-campaign__sns {
  margin: 0.66667vw;
}

.p-campaign__date {
  margin: 1.33333vw 0 0 0;
  font-size: 12px;
  font-size: 3.2vw;
  display: inline-block;
}

@media screen and (min-width: 750px) {
  .p-campaign__date {
    font-size: 15.36px;
    font-size: 1.536rem;
  }
}

.p-campaign__link {
  margin: 1.33333vw 0 0 0;
}

.p-campaign__description {
  margin: 2.66667vw 0 0 0;
  padding: 0.5em;
  font-size: 12px;
  font-size: 3.2vw;
  background: rgba(255, 255, 255, 0.8);
}

@media screen and (min-width: 750px) {
  .p-campaign__description {
    font-size: 15.36px;
    font-size: 1.536rem;
  }
}

@media screen and (min-width: 750px) {
  .p-campaign__item {
    margin: 40px 0 0 0;
  }
  .p-campaign__item:first-child {
    margin: 0 0 0 0;
  }
  .p-campaign__inner {
    margin: 15px;
    padding: 15px;
  }
  .p-campaign__label {
    display: -webkit-box;
    display: flex;
  }
  .p-campaign__sns {
    margin: 5px;
  }
  .p-campaign__date {
    margin: 10px 0 0 0;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .p-campaign__link {
    margin: 10px 0 0 0;
  }
  .p-campaign__description {
    margin: 20px 0 0 0;
    font-size: 20px;
    font-size: 2rem;
  }
}

.p-pagetop {
  position: relative;
}

.p-pagetop__inner {
  position: fixed;
  z-index: 9998;
  right: 2.66667vw;
  bottom: 8vw;
  width: 13.6vw;
  min-width: 60px;
  opacity: 1;
}

.p-pagetop__inner.is-hide {
  -webkit-transition: 0.2s;
  transition: 0.2s;
  opacity: 0;
  pointer-events: none;
}

@media screen and (min-width: 750px) {
  .p-pagetop__inner {
    right: 20px;
    bottom: 20px;
    width: 102px;
  }
}

.p-tvcm {
  margin-bottom: -16vw;
}

.p-tvcm__body {
  position: relative;
  background-color: #fbff00;
}

.p-tvcm__thumb {
  position: relative;
  background: #000000;
}

.p-tvcm__thumb a .p-movie_playbtn {
  -webkit-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
}

.p-tvcm__thumb a:hover .p-movie__playbtn {
  -webkit-transform: scale(1);
          transform: scale(1);
}

.p-tvcm__thumb video {
  opacity: 0.65;
}

.p-tvcm__talent {
  width: 38.13333vw;
  position: absolute;
  left: 0;
  bottom: 0;
  margin: auto;
  text-align: left;
  pointer-events: none;
}

.p-tvcm__btns {
  width: 64%;
  margin: 0 0 0 auto;
}

@media screen and (min-width: 750px) {
  .p-tvcm {
    margin-bottom: -120px;
  }
}

@media screen and (min-width: 750px) and (max-width: 900px) {
  .p-tvcm__talent {
    width: 286px;
  }
}

@media screen and (min-width: 900px) {
  .p-tvcm__talent {
    width: 100%;
    max-width: 1080px;
    right: 0;
  }
}

.p-tab__inner {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  background: #f2f2f2;
  padding: 1.33333vw 2.13333vw;
  border-radius: 10px;
}

.p-tab__item {
  width: 50%;
  margin: 0.66667vw 0;
}

.p-tab__item img {
  -webkit-filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.2));
          filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.2));
}

.p-tab--information .p-tab__item {
  width: 33%;
}

@media screen and (min-width: 750px) {
  .p-tab__inner {
    flex-wrap: wrap;
    padding: 10px 16px;
  }
  .p-tab__item {
    width: 50%;
    margin: 5px 0;
  }
}

@media screen and (min-width: 900px) {
  .p-tab__inner {
    flex-wrap: nowrap;
    -webkit-box-pack: justify;
            justify-content: space-between;
    padding: 10px 16px;
  }
  .p-tab__item {
    width: auto;
  }
  .p-tab--information .p-tab__inner {
    padding: 10px 24px;
  }
}

.p-followlink {
  position: fixed;
  z-index: 999;
  width: 24vw;
}

.p-followlink--left {
  left: 2.13333vw;
}

.p-followlink--bottom {
  bottom: 16vw;
}

.p-followlink__chara {
  position: relative;
}

.p-followlink__chara--1 {
  position: relative;
  -webkit-transform: scale(0);
          transform: scale(0);
  -webkit-transition: 0.2s;
  transition: 0.2s;
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}

.p-followlink__chara--2 {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}

.p-followlink__chara--3 {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

.p-followlink.is-active .p-followlink__chara--1 {
  -webkit-transform: scale(1);
          transform: scale(1);
}

.p-followlink.is-active .p-followlink__chara--2 {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transform-origin: 50% 100%;
          transform-origin: 50% 100%;
  opacity: 1;
  -webkit-animation: jump 2000ms 1000ms infinite;
          animation: jump 2000ms 1000ms infinite;
}

.p-followlink.is-active .p-followlink__chara--3 {
  opacity: 1;
}

@-webkit-keyframes jump {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  3% {
    -webkit-transform: translate(0, 2%) scale(1, 0.8);
            transform: translate(0, 2%) scale(1, 0.8);
  }
  10% {
    -webkit-transform: translate(0, -20%) scale(1, 1);
            transform: translate(0, -20%) scale(1, 1);
  }
  20% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

@keyframes jump {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  3% {
    -webkit-transform: translate(0, 2%) scale(1, 0.8);
            transform: translate(0, 2%) scale(1, 0.8);
  }
  10% {
    -webkit-transform: translate(0, -20%) scale(1, 1);
            transform: translate(0, -20%) scale(1, 1);
  }
  20% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

@media screen and (min-width: 750px) {
  .p-followlink {
    width: 180px;
  }
  .p-followlink--left {
    left: 16px;
  }
  .p-followlink--bottom {
    bottom: 120px;
  }
}

.u-pos--relative {
  position: relative;
}

.u-pos--absolute {
  position: absolute;
}

.u-pos--center {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.u-t--0 {
  top: 0;
}

.u-r--0 {
  right: 0;
}

.u-b--0 {
  bottom: 0;
}

.u-l--0 {
  left: 0;
}

.u-flex {
  display: -webkit-box;
  display: flex;
}

.u-flex__item--colum2 {
  width: calc(100% / 2);
}

.u-flex__item--colum3 {
  width: calc(100% / 3);
}

.u-flex__item--colum4 {
  width: calc(100% / 4);
}

.u-flex__item--colum5 {
  width: calc(100% / 5);
}

.u-flex__item--colum6 {
  width: calc(100% / 6);
}

.u-flex__item--colum7 {
  width: calc(100% / 7);
}

.u-flex__item--colum8 {
  width: calc(100% / 8);
}

.u-flex--column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
}

.u-flex--align-center {
  -webkit-box-align: center;
          align-items: center;
}

.u-flex--just-space {
  -webkit-box-pack: justify;
          justify-content: space-between;
}

.u-flex--just-center {
  -webkit-box-pack: center;
          justify-content: center;
}

.u-flex--just-end {
  -webkit-box-pack: end;
          justify-content: flex-end;
}

.u-flex--align-center {
  -webkit-box-align: center;
          align-items: center;
}

.u-flex--wrap {
  flex-wrap: wrap;
}

.u-align--right {
  text-align: right !important;
}

.u-align--left {
  text-align: left !important;
}

.u-align--center {
  text-align: center !important;
}

.u-bg--black {
  background: #000;
}

.u-font--teko {
  font-family: "Teko", sans-serif;
  letter-spacing: 0.1em;
  font-style: italic;
}

.u-font--bold {
  font-weight: 700;
}

.u-font--italic {
  font-style: italic;
}

.u-font--regular {
  font-weight: 400;
}

.u-mg__top--0 {
  margin-top: 0vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--0 {
    margin-top: 0px !important;
  }
}

.u-mg__top--5 {
  margin-top: 0.66667vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--5 {
    margin-top: 5px !important;
  }
}

.u-mg__top--10 {
  margin-top: 1.33333vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--10 {
    margin-top: 10px !important;
  }
}

.u-mg__top--15 {
  margin-top: 2vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--15 {
    margin-top: 15px !important;
  }
}

.u-mg__top--20 {
  margin-top: 2.66667vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--20 {
    margin-top: 20px !important;
  }
}

.u-mg__top--25 {
  margin-top: 3.33333vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--25 {
    margin-top: 25px !important;
  }
}

.u-mg__top--30 {
  margin-top: 4vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--30 {
    margin-top: 30px !important;
  }
}

.u-mg__top--35 {
  margin-top: 4.66667vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--35 {
    margin-top: 35px !important;
  }
}

.u-mg__top--40 {
  margin-top: 5.33333vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--40 {
    margin-top: 40px !important;
  }
}

.u-mg__top--45 {
  margin-top: 6vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--45 {
    margin-top: 45px !important;
  }
}

.u-mg__top--50 {
  margin-top: 6.66667vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--50 {
    margin-top: 50px !important;
  }
}

.u-mg__top--55 {
  margin-top: 7.33333vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--55 {
    margin-top: 55px !important;
  }
}

.u-mg__top--60 {
  margin-top: 8vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--60 {
    margin-top: 60px !important;
  }
}

.u-mg__top--65 {
  margin-top: 8.66667vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--65 {
    margin-top: 65px !important;
  }
}

.u-mg__top--70 {
  margin-top: 9.33333vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--70 {
    margin-top: 70px !important;
  }
}

.u-mg__top--75 {
  margin-top: 10vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--75 {
    margin-top: 75px !important;
  }
}

.u-mg__top--80 {
  margin-top: 10.66667vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--80 {
    margin-top: 80px !important;
  }
}

.u-mg__top--85 {
  margin-top: 11.33333vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--85 {
    margin-top: 85px !important;
  }
}

.u-mg__top--90 {
  margin-top: 12vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--90 {
    margin-top: 90px !important;
  }
}

.u-mg__top--95 {
  margin-top: 12.66667vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--95 {
    margin-top: 95px !important;
  }
}

.u-mg__top--100 {
  margin-top: 13.33333vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--100 {
    margin-top: 100px !important;
  }
}

.u-mg__top--105 {
  margin-top: 14vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--105 {
    margin-top: 105px !important;
  }
}

.u-mg__top--110 {
  margin-top: 14.66667vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--110 {
    margin-top: 110px !important;
  }
}

.u-mg__top--115 {
  margin-top: 15.33333vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--115 {
    margin-top: 115px !important;
  }
}

.u-mg__top--120 {
  margin-top: 16vw !important;
}

@media screen and (min-width: 750px) {
  .u-mg__top--120 {
    margin-top: 120px !important;
  }
}

.u-mg__side--auto {
  margin-left: auto;
  margin-right: auto;
}

.u-mg__left--10 {
  margin-left: 1.33333vw;
}

.u-mg__left--20 {
  margin-left: 2.66667vw;
}

@media screen and (min-width: 750px) {
  .u-mg__left--10 {
    margin-left: 10px;
  }
  .u-mg__left--20 {
    margin-left: 20px;
  }
}

.p-news__item::before, .p-news__item dl::before, .p-news__kakko::before, .u-kakko::before, .p-news__item::after, .p-news__item dl::after, .p-news__kakko::after, .u-kakko::after {
  content: '';
  position: absolute;
  z-index: 1;
  width: 10px;
  height: 10px;
  -webkit-transition: 0.1s;
  transition: 0.1s;
}

.u-kakko {
  position: relative;
}

.u-kakko--1::before {
  left: 0;
  top: 0;
  border-left: 2px solid #000000;
  border-top: 2px solid #000000;
}

.u-kakko--1::after {
  left: 0;
  bottom: 0;
  border-left: 2px solid #000000;
  border-bottom: 2px solid #000000;
}

.u-kakko--2::before {
  right: 0;
  top: 0;
  border-right: 2px solid #000000;
  border-top: 2px solid #000000;
}

.u-kakko--2::after {
  right: 0;
  bottom: 0;
  border-right: 2px solid #000000;
  border-bottom: 2px solid #000000;
}

/*# sourceMappingURL=map/style.css.map */
