@charset "UTF-8";
@font-face {
  font-family: "Noto Sans JP";
  font-weight: 400;
  src: url('/jp/common/font/NotoSansJP-Regular.woff2') format("woff2"), url('/jp/common/font/NotoSansJP-Regular.woff') format("woff");
}

@font-face {
  font-family: "Noto Sans JP";
  font-weight: 700;
  src: url('/jp/common/font/NotoSansJP-Bold.woff2') format("woff2"), url('/jp/common/font/NotoSansJP-Bold.woff') format("woff");
}

@font-face {
  font-family: "Yaku Han JP";
  font-style: normal;
  font-weight: 400;
  src: url('/jp/common/font/YakuHanJPs-Regular.woff2') format("woff2"), url('/jp/common/font/YakuHanJPs-Regular.woff') format("woff");
}

@font-face {
  font-family: "Yaku Han JP";
  font-style: normal;
  font-weight: 700;
  src: url('/jp/common/font/YakuHanJPs-Bold.woff2') format("woff2"), url('/jp/common/font/YakuHanJPs-Bold.woff') format("woff");
}

*,
*::before,
*::after {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

abbr,
address,
article,
aside,
audio,
b,
blockquote,
body,
canvas,
caption,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
p,
pre,
q,
samp,
section,
small,
span,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
ul,
var,
video {
  background: transparent;
  border: 0;
  outline: 0;
}

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

address,
caption,
h1,
h2,
h3,
h4,
h5,
h6,
th,
dt {
  font-size: 100%;
  font-style: normal;
  font-weight: 400;
}

dd,
dl,
dt,
li,
ol,
ul {
  list-style-position: outside;
  list-style-type: none;
}

nav ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

a {
  color: inherit;
  text-decoration: none;
}

ins {
  text-decoration: none;
}

ins,
mark {
  color: #000000;
  background-color: #ffff99;
}

mark {
  font-style: italic;
  font-weight: 700;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  cursor: help;
  border-bottom: 1px dotted #000000;
}

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

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

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

br {
  letter-spacing: 0;
}

button,
fieldset,
form,
input,
label,
legend,
select,
textarea {
  padding: 0;
  margin: 0;
  font-family: inherit;
  font-size: 100%;
  font-style: inherit;
  font-weight: inherit;
}

input,
select,
textarea,
button {
  vertical-align: middle;
  outline: 0;
  -webkit-appearance: none;
          appearance: none;
}

button,
input[type=button],
input[type=reset],
input[type=submit] {
  cursor: pointer;
}

button,
input,
textarea {
  box-sizing: border-box;
}

textarea {
  resize: vertical;
  border-radius: 0;
}

button {
  color: currentColor;
  background: transparent;
  border: 0;
  border-radius: 0;
}

small {
  vertical-align: baseline;
}

body {
  min-width: 320px;
  line-height: 1.6;
  color: #000000;
  letter-spacing: 0.01em;
  background-color: #0fc5a3;
  font-feature-settings: "palt";
  -webkit-text-size-adjust: 100%;
          text-size-adjust: 100%;
  font-family: "Yaku Han JP", "Noto Sans JP", "Hiragino Sans", sans-serif;
}

/* IE10以上 */
/* stylelint-disable */

/* stylelint-enable */
a,
button {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.1);
}

[v-cloak] {
  display: none;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes fadeAwayCircle {
  0% {
    opacity: 0;
    transform: scale(0.8);
  }
  10% {
    opacity: 1;
    transform: scale(1);
  }
  100% {
    opacity: 0;
    transform: scale(1.14);
  }
}

.c-arrow-left {
  display: block;
  filter: drop-shadow(0 0 0.8rem rgba(255, 255, 255, 0.6));
}

.c-arrow-left svg {
  display: block;
  width: 100%;
  height: auto;
  fill: #ffffff;
}

.c-arrow-right {
  display: block;
  filter: drop-shadow(0 0 0.8rem rgba(255, 255, 255, 0.6));
}

.c-arrow-right svg {
  display: block;
  width: 100%;
  height: auto;
  fill: #ffffff;
}

.c-button-back {
  position: relative;
  z-index: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.c-button-back::before {
  z-index: -2;
  content: "";
  background-color: #000000;
  transition: background-color 100ms linear;
  transform: skewX(-12deg);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.c-button-back::after {
  z-index: -1;
  content: "";
  opacity: 0;
  transition: opacity 100ms linear;
  transform: skewX(-12deg);
  background-image: repeating-linear-gradient(-45deg, #0fc5a3, #0fc5a3 0.3rem, #0db192 0.3rem, #0db192 0.6rem);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.c-button-back__icon {
  display: block;
  filter: drop-shadow(0 0 0.8rem #ffffff);
}

.c-button-back__text {
  display: block;
}

.c-button-back__text-image {
  display: block;
  width: 100%;
}

.c-glitch {
  position: relative;
}

.c-glitch.is-animating .c-glitch__child--first {
  position: relative;
  z-index: 1;
}

.c-glitch.is-animating .c-glitch__child--second,
.c-glitch.is-animating .c-glitch__child--third {
  visibility: visible;
}

.c-glitch.is-animating .c-glitch__child--second {
  animation: glitchSecond 800ms linear infinite alternate;
}

.c-glitch.is-animating .c-glitch__child--third {
  animation: glitchThird 600ms linear infinite alternate-reverse;
}

.c-glitch--invert.is-animating .c-glitch__child--first {
  animation: glitchFirst 800ms linear alternate infinite;
}

.c-glitch__child--second,
.c-glitch__child--third {
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
  will-change: transform;
}

.c-glitch__child--second {
  opacity: 0.7;
}

.c-glitch__child--third {
  opacity: 0.3;
  transform: scale(1.02);
}

@keyframes glitchFirst {
  0%,
  50%,
  100% {
    filter: invert(0%);
  }
  25%,
  75% {
    filter: invert(30%);
  }
}

@keyframes glitchSecond {
  0% {
    transform: translate3d(0.1rem, -0.3rem, 0);
  }
  20% {
    transform: translate3d(-0.3rem, 0.3rem, 0);
  }
  40% {
    transform: translate3d(-0.3rem, -0.3rem, 0);
  }
  60% {
    transform: translate3d(0.3rem, 0.3rem, 0);
  }
  80% {
    transform: translate3d(0.3rem, -0.3rem, 0);
  }
  100% {
    transform: translate3d(-0.1rem, 0.3rem, 0);
  }
}

@keyframes glitchThird {
  0% {
    transform: scale(1.02) translate3d(0.5rem, -0.2rem, 0);
  }
  20% {
    transform: scale(1.02) translate3d(-1rem, 0.6rem, 0);
  }
  40% {
    transform: scale(1.02) translate3d(0.3rem, -0.5rem, 0);
  }
  60% {
    transform: scale(1.02) translate3d(-0.6rem, 0.3rem, 0);
  }
  80% {
    transform: scale(1.02) translate3d(0.5rem, 0.5rem, 0);
  }
  100% {
    transform: scale(1.02) translate3d(-0.5rem, 0.2rem, 0);
  }
}

.c-modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10200;
  width: 100%;
  height: 100%;
  pointer-events: none;
  visibility: hidden;
}

.c-modal__frame {
  display: block;
  width: 100%;
  height: 100%;
}

.c-modal__frame.is-scroll {
  overflow-x: hidden;
  overflow-y: auto;
}

.c-modal__frame:not(.is-scroll) {
  display: flex;
  align-items: center;
}

.c-modal__overlay {
  background-color: #142557;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.c-modal__wrapper {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.c-modal__content {
  width: 100%;
}

.c-modal-close__wrapper {
  position: relative;
  z-index: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.c-modal-close__wrapper::before {
  z-index: -1;
  content: "";
  background-color: #000000;
  transition: background-color 100ms linear;
  transform: skewX(-12deg);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.c-modal-close__icon {
  display: block;
  filter: drop-shadow(0 0 0.8rem #ffffff);
}

.c-modal-close__icon-image {
  display: block;
  width: 100%;
}

.c-modal-close__text {
  display: block;
}

.c-modal-close__text-image {
  display: block;
  width: 100%;
}

.c-modal {
  transition: visibility 0s 180ms;
}

.c-modal__overlay {
  opacity: 0;
  transition: opacity 180ms linear;
  will-change: opacity;
}

.c-modal__content {
  opacity: 0;
  transition: opacity 180ms linear, transform 0s 180ms;
  transform: scale(1.05);
  will-change: opacity, transform;
}

.c-modal-close {
  opacity: 0;
  transition: opacity 180ms linear, transform 0s 180ms;
  transform: translate3d(0, 4rem, 0);
  will-change: opacity, transform;
}

.c-modal.is-active {
  pointer-events: auto;
  visibility: visible;
  transition: visibility 0s;
}

.c-modal.is-active .c-modal__overlay {
  opacity: 0.9;
  transition: opacity 240ms linear;
}

.c-modal.is-active .c-modal__content {
  opacity: 1;
  transition: opacity 200ms linear, transform 360ms cubic-bezier(0.19, 1, 0.22, 1);
  transform: scale(1);
}

.c-modal.is-active .c-modal-close {
  opacity: 1;
  transition: opacity 200ms linear, transform 360ms cubic-bezier(0.19, 1, 0.22, 1);
  transform: translate3d(0, 0, 0);
}

.c-modal.is-active .c-modal__content,
.c-modal.is-active .c-modal-close {
  transition-delay: 120ms;
}

.c-new {
  display: block;
  width: 8rem;
  font-size: 0;
  color: transparent;
}

.c-new::before {
  display: block;
  padding-top: calc(100% * 38 / 94);
  content: "";
  background-image: url(../images/common/icon/icon_new.svg);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: contain;
}

.c-plus {
  position: relative;
  width: 8rem;
  height: 8rem;
  filter: drop-shadow(0 0 0.8rem #ffffff);
  border: 0.4rem solid #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.c-plus::before {
  position: absolute;
  top: -1.1rem;
  left: -1.1rem;
  width: calc(100% + 2.2rem);
  height: calc(100% + 2.2rem);
  content: "";
  border: 0.4rem solid #ffffff;
  border-radius: 50%;
  opacity: 0;
  will-change: opacity, transform;
}

.c-plus svg {
  width: 37.5%;
  height: 37.5%;
  fill: #ffffff;
  will-change: transform;
}

.c-plus--coming-soon img {
  width: 65%;
  height: auto;
}

.c-skew-left {
  position: relative;
  z-index: 0;
  overflow: hidden;
}

.c-skew-left::before {
  z-index: -1;
  content: "";
  transform: skewX(-20deg);
  transform-origin: right bottom;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.c-skew-right {
  position: relative;
  z-index: 0;
  overflow: hidden;
}

.c-skew-right::before {
  z-index: -1;
  content: "";
  transform: skewX(-20deg);
  transform-origin: left top;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.l-container {
  position: relative;
}

.l-content {
  display: flex;
  flex-direction: column;
}

.l-fixed-bg {
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100vw;
  height: 100vh;
  transform: translate3d(0, 0, 0);
}

.l-fixed-bg__item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.l-fixed-bg__image {
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.l-footer {
  position: relative;
  color: #ffffff;
}

.l-footer__body {
  position: relative;
  z-index: 1;
  background-color: #000000;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.l-footer__wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.l-footer-sitemap__link {
  position: relative;
  display: flex;
  align-items: center;
  color: #ffffff;
  transition: color 100ms linear;
}

.l-footer-sitemap__arrow svg {
  fill: currentColor;
}

.l-footer-sitemap__text {
  line-height: 1.2rem;
}

.l-footer-share__item iframe,
.l-footer-share__item .fb_iframe_widget,
.l-footer-share__item .fb_iframe_widget span {
  display: block;
}

.l-header {
  display: block;
}

.l-header__logo {
  position: absolute;
  z-index: 10;
  width: 10rem;
}

.l-header__logo-link {
  display: block;
}

.l-main {
  position: relative;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.l-nav {
  z-index: 1;
}

.l-nav::before {
  position: absolute;
  content: "";
  background-color: #0fc5a3;
  transform: skew(-20deg);
  transform-origin: center bottom;
}

.l-nav.is-visible {
  opacity: 1;
  transition: opacity 100ms linear, transform 600ms cubic-bezier(0.19, 1, 0.22, 1);
  transform: translate3d(0, 0, 0);
}

.l-nav-logo {
  position: absolute;
  z-index: 1;
}

.l-nav-logo__link {
  display: block;
}

.l-nav-logo__image {
  display: block;
  width: 100%;
}

.l-nav-list {
  display: flex;
}

.l-nav-list__item.is-coming-soon {
  pointer-events: none;
}

.l-nav-button {
  position: relative;
  display: block;
  width: 100%;
}

.l-nav-button .c-new {
  position: absolute;
  z-index: 3;
}

.l-nav-button__bg-frame {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.l-nav-button__bg-image {
  position: absolute;
  top: 0;
  right: 0;
  max-width: none;
  height: 100%;
  transition: filter 120ms linear;
  transform: skewX(20deg) translate3d(0, 0, 0);
  transform-origin: right top;
  object-fit: cover;
}

.l-nav-button__content {
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.l-nav-button__en {
  filter: drop-shadow(0 0 0.6rem rgba(255, 255, 255, 0.8));
}

.l-nav-button__en-image {
  display: block;
  width: auto;
}

.l-nav-button__ja-image {
  display: block;
  width: auto;
}

.l-nav-button__coming-soon {
  box-sizing: content-box;
  opacity: 0.5;
}

.l-nav-button__coming-soon-image {
  display: block;
  width: 100%;
  height: auto;
}

.l-secondary-header {
  position: relative;
  z-index: 0;
  display: flex;
  justify-content: center;
}

.l-secondary-header__bg {
  position: absolute;
  z-index: -1;
  overflow: hidden;
  transform: rotate(-8.5deg);
}

.l-secondary-header__bg::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% + 50vw * 0.14945 + 1rem);
  content: "";
  transform: rotate(8.5deg);
  background-image: repeating-linear-gradient(-36deg, #0c9e82, #0c9e82 0.3rem, #0fc5a3 0.3rem, #0fc5a3 0.9rem);
}

.l-secondary-footer {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  pointer-events: none;
}

.l-secondary-footer__bg {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  transform: skewY(-8.5deg) translate3d(0, 0, 0);
  transform-origin: right bottom;
}

.l-secondary-footer__bg::before {
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: cover;
  transform: skewY(8.5deg);
  transform-origin: right bottom;
}

.l-secondary-footer__dot {
  position: absolute;
  left: -3rem;
  width: calc(100% + 6rem);
  background: url(../images/common/bg/bg_dot_black.svg) center top repeat-x;
  background-size: 3.6rem auto;
  opacity: 0.2;
  transform: rotate(-8.5deg) translate3d(0, 0, 0);
}

.l-wrapper {
  position: relative;
  z-index: 0;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  overflow: hidden;
}

@media screen and (min-width: 760px) and (max-width: 1359px) {
  html {
    font-size: calc(100vw / 136);
  }
}

@media screen and (min-width: 760px) and (min-width: 1360px) {
  html {
    font-size: 62.5%;
  }
}

@media screen and (max-width: 759px) {
  html {
    font-size: calc(100vw / 75);
  }
  body {
    font-size: 2.8rem;
  }
  .c-arrow-left {
    width: 1.6rem;
  }
  .c-arrow-right {
    width: 1.6rem;
  }
  .c-button-back {
    width: 36rem;
    padding: 2.2rem;
  }
  .c-button-back__icon {
    width: 1.8rem;
    margin-right: 2rem;
  }
  .c-button-back__text {
    width: 19.2rem;
  }
  .c-modal__wrapper {
    width: 100%;
    padding: 4rem;
  }
  .c-modal-close {
    width: 22.6rem;
    margin-top: 8rem;
  }
  .c-modal-close__wrapper {
    padding: 2.2rem;
  }
  .c-modal-close__icon {
    width: 2.8rem;
    margin-right: 1.4rem;
  }
  .c-modal-close__text {
    width: 7.6rem;
  }
  .u-display-pc {
    display: none;
  }
  .l-container {
    overflow: hidden;
  }
  .l-content {
    min-height: calc(100vh - 50px);
  }
  .l-footer__body {
    padding: 5.5rem 4rem;
  }
  .l-footer__wrapper {
    align-items: center;
  }
  .l-footer-sitemap {
    display: flex;
  }
  .l-footer-sitemap__item + .l-footer-sitemap__item {
    margin-left: 3.8rem;
  }
  .l-footer-sitemap__arrow {
    width: 1.2rem;
    margin-right: 0.8rem;
  }
  .l-footer-sitemap__text {
    font-size: 2.2rem;
    font-weight: 700;
  }
  .l-footer-share__item + .l-footer-share__item {
    margin-top: 2rem;
  }
  .l-header__logo {
    top: 1rem;
    right: 1rem;
  }
  .l-nav {
    position: relative;
    padding-top: 10rem;
    margin-top: -10rem;
  }
  .l-nav::before {
    top: 0;
    right: 0;
    width: calc(100% - 4rem);
    height: 10.1rem;
  }
  .l-nav-logo {
    top: -8.9rem;
    left: 18.9rem;
    width: 38.8rem;
  }
  .l-nav-list {
    flex-wrap: wrap;
    justify-content: space-between;
    padding-bottom: 4.8rem;
    background-color: #0fc5a3;
  }
  .l-nav-list__item {
    position: relative;
    z-index: 2;
    width: 34rem;
  }
  .l-nav-list__item:nth-child(n+3) {
    margin-top: 2rem;
  }
  .l-nav-list__item:nth-child(odd) .l-nav-button__bg {
    right: 0;
    transform-origin: right bottom;
  }
  .l-nav-list__item:nth-child(odd) .l-nav-button__bg-frame {
    border-right: 0.4rem solid #111111;
  }
  .l-nav-list__item:nth-child(odd) .l-nav-button__bg-image {
    transform-origin: right top;
  }
  .l-nav-list__item:nth-child(odd) .c-new {
    left: 2rem;
  }
  .l-nav-list__item:nth-child(even) .l-nav-button__bg {
    left: 0;
    transform-origin: left top;
  }
  .l-nav-list__item:nth-child(even) .l-nav-button__bg-frame {
    border-left: 0.4rem solid #111111;
  }
  .l-nav-list__item:nth-child(even) .l-nav-button__bg-image {
    transform-origin: left bottom;
  }
  .l-nav-list__item:nth-child(even) .c-new {
    right: 2rem;
  }
  .l-nav-button {
    height: 12.8rem;
  }
  .l-nav-button .c-new {
    top: -1.3rem;
    width: 8rem;
  }
  .l-nav-button__bg {
    position: absolute;
    top: 0;
    width: calc(100% + 4.8rem);
    height: 100%;
    transform: skewX(-20deg);
  }
  .l-nav-button__bg::before {
    position: absolute;
    top: 0.8rem;
    left: 0.8rem;
    width: 100%;
    height: 100%;
    content: "";
    background-color: #000000;
  }
  .l-nav-button__bg-frame {
    border-top: 0.4rem solid #111111;
    border-bottom: 0.4rem solid #111111;
  }
  .l-nav-button__bg-image {
    width: 100%;
  }
  .l-nav-button__en-image {
    height: 2.8rem;
  }
  .l-nav-button__ja {
    margin-top: 0.8rem;
  }
  .l-nav-button__ja-image {
    height: 2.4rem;
  }
  .l-nav-button__coming-soon {
    width: 24.8rem;
    padding-left: 0.8rem;
  }
  .l-secondary-header {
    padding-top: 5.3rem;
    margin-bottom: 15rem;
  }
  .l-secondary-header__bg {
    bottom: calc(100% - 13.6rem);
    left: -2rem;
    width: calc(100% + 4rem);
    height: 21rem;
  }
  .l-secondary-footer {
    height: 52rem;
  }
  .l-secondary-footer__bg {
    height: calc(52rem + 50vw * 0.14945);
  }
  .l-secondary-footer__bg::before {
    background-image: url(../images/common/bg/bg_footer_sp.jpg);
  }
  .l-secondary-footer__dot {
    top: -14rem;
    height: 16.5rem;
  }
}

@media screen and (min-width: 760px) {
  body {
    font-size: 1.6rem;
  }
  .c-arrow-left {
    width: 1.2rem;
  }
  .c-arrow-right {
    width: 1.2rem;
  }
  .c-button-back {
    width: 24rem;
    padding: 1.5rem;
  }
  .c-button-back:hover::after {
    opacity: 1;
  }
  .c-button-back__icon {
    width: 1.2rem;
    margin-right: 1.2rem;
  }
  .c-button-back__text {
    width: 13rem;
  }
  .c-modal__wrapper {
    flex: none;
    width: 104rem;
    padding: 4rem 0;
    margin-right: auto;
    margin-left: auto;
  }
  .c-modal__content {
    position: relative;
  }
  .c-modal-close {
    width: 16rem;
    margin-top: 6rem;
  }
  .c-modal-close:hover .c-modal-close__wrapper::before {
    background-color: #0fc5a3;
  }
  .c-modal-close__wrapper {
    padding: 1.5rem;
  }
  .c-modal-close__icon {
    width: 1.8rem;
    margin-right: 1rem;
  }
  .c-modal-close__text {
    width: 5.2rem;
  }
  .u-display-sp {
    display: none;
  }
  .l-content {
    min-height: calc(100vh - 46px);
  }
  .l-footer__body {
    padding: 2.7rem 0;
  }
  .l-footer__wrapper {
    width: 120rem;
    margin-right: auto;
    margin-left: auto;
  }
  .l-footer-sitemap {
    display: flex;
    align-items: center;
  }
  .l-footer-sitemap__item + .l-footer-sitemap__item {
    margin-left: 3rem;
  }
  .l-footer-sitemap__link:hover {
    color: #0fc5a3;
  }
  .l-footer-sitemap__arrow {
    width: 0.7rem;
    margin-right: 0.8rem;
  }
  .l-footer-sitemap__text {
    font-size: 1.4rem;
  }
  .l-footer-share {
    display: flex;
  }
  .l-footer-share__item + .l-footer-share__item {
    margin-left: 1rem;
  }
  .l-header__logo {
    top: 0;
    right: 0;
  }
  .l-nav {
    position: -webkit-sticky;
    position: sticky;
    bottom: 0;
    left: calc(50% - 63rem);
    display: flex;
    justify-content: flex-end;
    width: 123.3rem;
    padding: 0 1.7rem 2.2rem 0;
    opacity: 0;
    transition: opacity 80ms linear, transform 0s 80ms;
    transform: translate3d(0, 8rem, 0);
  }
  .l-nav::before {
    bottom: 0;
    left: 0;
    width: 100%;
    height: 8rem;
  }
  .l-nav.is-landing {
    position: relative;
    opacity: 1;
    transition: none;
    transform: translate3d(0, 0, 0);
  }
  .l-nav-logo {
    top: -2rem;
    left: 1.2rem;
    width: 25.4rem;
  }
  .l-nav-list {
    position: relative;
    display: flex;
    padding: 0.4rem;
  }
  .l-nav-list::before {
    content: "";
    background-color: #000000;
    box-shadow: 0.8rem 0.8rem 0 #000000;
    transform: skew(-20deg);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .l-nav-list__item {
    position: relative;
    width: 23.2rem;
  }
  .l-nav-list__item:nth-child(n+2) {
    margin-left: 0.4rem;
  }
  .l-nav-button {
    height: 7.2rem;
  }
  .l-nav-button:hover .l-nav-button__bg-image {
    filter: brightness(65%);
  }
  .l-nav-button::before {
    z-index: 2;
    content: "";
    transform: skew(-20deg);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .l-nav-button .c-new {
    top: -1.4rem;
    right: 0;
    left: 0;
    width: 4.4rem;
    margin: 0 auto;
  }
  .l-nav-button__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .l-nav-button__bg-frame {
    transform: skew(-20deg);
  }
  .l-nav-button__bg-image {
    width: calc(100% + 2.6rem);
  }
  .l-nav-button__en-image {
    height: 2rem;
  }
  .l-nav-button__ja {
    margin-top: 0.8rem;
  }
  .l-nav-button__ja-image {
    height: 1.4rem;
  }
  .l-nav-button__coming-soon {
    width: 16.6rem;
  }
  .l-secondary-header {
    padding-top: 5.3rem;
    margin-bottom: 7.5rem;
  }
  .l-secondary-header__bg {
    bottom: calc(100% - 11.2rem);
    left: -4rem;
    width: calc(100% + 8rem);
    height: 40rem;
  }
  .l-secondary-footer {
    height: 40rem;
  }
  .l-secondary-footer__bg {
    height: calc(40rem + 50vw * 0.14945);
  }
  .l-secondary-footer__bg::before {
    background-image: url(../images/common/bg/bg_footer_pc.jpg);
  }
  .l-secondary-footer__dot {
    top: -14rem;
    height: 16.5rem;
  }
  .l-wrapper {
    margin-bottom: -10.2rem;
  }
}

@media all and (-ms-high-contrast: none) {
  html {
    font-family: Verdana, Meiryo, sans-serif;
  }
}

@media all and (-ms-high-contrast: active) {
  html {
    font-family: Verdana, Meiryo, sans-serif;
  }
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome,
  body {
    font-feature-settings: "pkna";
  }
}
