@import url(https://fonts.googleapis.com/css?family=Roboto);
@-webkit-keyframes neonBox {
  0% {
    border: red 3px solid;
    -webkit-box-shadow: 0px 0px 15px #ff0000, 0px 0px 15px #ff0000 inset;
    box-shadow: 0px 0px 15px #ff0000, 0px 0px 15px #ff0000 inset; }
  98%, 100% {
    border: red 3px solid;
    -webkit-box-shadow: 0px 0px 40px #ff0000, 0px 0px 40px #ff0000 inset;
    box-shadow: 0px 0px 40px #ff0000, 0px 0px 40px #ff0000 inset; } }
@keyframes neonBox {
  0% {
    border: red 3px solid;
    -webkit-box-shadow: 0px 0px 15px #ff0000, 0px 0px 15px #ff0000 inset;
    box-shadow: 0px 0px 15px #ff0000, 0px 0px 15px #ff0000 inset; }
  98%, 100% {
    border: red 3px solid;
    -webkit-box-shadow: 0px 0px 40px #ff0000, 0px 0px 40px #ff0000 inset;
    box-shadow: 0px 0px 40px #ff0000, 0px 0px 40px #ff0000 inset; } }

@-webkit-keyframes neonText {
  0% {
    color: red;
    text-shadow: 0 0 15px red; }
  98%, 100% {
    color: red;
    text-shadow: 0px 0px 40px rgba(220, 0, 0, 0.5), 0px 0px 120px #dc0000, 0px 0px 120px #dc0000, 0px 0px 120px #dc0000; } }

@keyframes neonText {
  0% {
    color: red;
    text-shadow: 0 0 15px red; }
  98%, 100% {
    color: red;
    text-shadow: 0px 0px 40px rgba(220, 0, 0, 0.5), 0px 0px 120px #dc0000, 0px 0px 120px #dc0000, 0px 0px 120px #dc0000; } }

@-webkit-keyframes scrollLine {
  0% {
    -webkit-transform-origin: top;
    transform-origin: top;
    -webkit-transform: scaleY(0);
    transform: scaleY(0); }
  50% {
    -webkit-transform-origin: top;
    transform-origin: top;
    -webkit-transform: scaleY(1);
    transform: scaleY(1); }
  51% {
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transform: scaleY(1);
    transform: scaleY(1); }
  100% {
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transform: scaleY(0);
    transform: scaleY(0); } }

@keyframes scrollLine {
  0% {
    -webkit-transform-origin: top;
    transform-origin: top;
    -webkit-transform: scaleY(0);
    transform: scaleY(0); }
  50% {
    -webkit-transform-origin: top;
    transform-origin: top;
    -webkit-transform: scaleY(1);
    transform: scaleY(1); }
  51% {
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transform: scaleY(1);
    transform: scaleY(1); }
  100% {
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transform: scaleY(0);
    transform: scaleY(0); } }

@font-face {
  font-family: "NotoSansCJKjp";
  font-weight: 700;
  src: url("/assets/fonts/NotoSans_bold.woff") format("woff"), url("/assets/fonts/NotoSans_bold.otf") format("opentype"); }

@font-face {
  font-family: "NotoSansCJKjp";
  font-weight: 900;
  src: url("/assets/fonts/NotoSans_black.woff") format("woff"), url("/assets/fonts/NotoSans_black.otf") format("opentype"); }

@font-face {
  font-family: "NotoSansCJKjp";
  font-weight: 400;
  src: url("/assets/fonts/NotoSans_regular.woff") format("woff"), url("/assets/fonts/NotoSans_regular.otf") format("opentype"); }

html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

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

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline; }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden],
template {
  display: none; }

a {
  background-color: transparent;
  text-decoration: none; }

a:active,
a:hover {
  outline: 0; }

abbr[title] {
  border-bottom: 1px dotted; }

b,
strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

mark {
  background: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0; }

svg:not(:root) {
  overflow: hidden; }

figure {
  margin: 1em 40px; }

hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 0; }

pre {
  overflow: auto; }

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0; }

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

button[disabled],
html input[disabled] {
  cursor: default; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

input {
  line-height: normal; }

input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0; }

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

input[type="search"] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
  box-sizing: content-box; }

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

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

td,
th {
  padding: 0; }

ul,
li {
  list-style: none; }

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

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit; }

html {
  font-size: 16px;
  line-height: 1; }
  @media screen and (min-width: 768px) {
    html {
      font-size: 16px; } }

body {
  width: 100%;
  color: #222;
  font-family: "NotoSansCJKjp", sans-serif;
  font-weight: 400;
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: auto;
  -webkit-font-kerning: normal;
  font-kerning: normal;
  -ms-overflow-style: none;
  overscroll-behavior-y: none;
  cursor: default;
  letter-spacing: 0.05em;
  background: #fad43c; }
  body::-webkit-scrollbar {
    display: none; }

h1, h2, h3, h4, h5, h6 {
  font-family: inherit;
  font-weight: 400;
  line-height: 1;
  color: inherit; }

li > ul, li > ol {
  margin-bottom: 0; }

dd {
  margin-left: 0; }

table {
  width: 100%; }

th {
  text-align: left; }

a {
  text-decoration: none;
  color: #222; }
  a:hover, a:active, a:focus {
    text-decoration: none;
    color: #222; }

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

[src$=".svg"],
[data$=".svg"] {
  width: 100%; }

i,
cite,
em,
address,
dfn {
  font-style: normal; }

code,
pre {
  font-family: Consolas, Menlo, Courier, monospace; }

code {
  padding: 0.2em;
  background-color: rgba(0, 0, 0, 0.06); }

pre code {
  padding: 0;
  background-color: inherit; }

h1, h2, h3, h4, h5, h6,
ul, ol, dl,
blockquote, p, address,
hr,
table,
fieldset, figure,
pre {
  margin-top: 0;
  margin-bottom: 0; }

ul, li, dl, dt, dd {
  padding: 0; }

.l-page {
  position: relative; }

@media screen and (min-width: 768px) {
  .l-header {
    position: relative;
    z-index: 1000;
    width: 100%;
    height: 70px;
    left: 0;
    top: 0; }
    .l-header .header__logo {
      position: absolute;
      display: inline-block;
      width: 180px;
      height: auto;
      right: 80px;
      top: 10px; }
      .l-header .header__logo img {
        width: 100%; } }

@media screen and (max-width: 767px) {
  .l-header {
    position: relative;
    z-index: 1000;
    width: 100%;
    height: 45px; }
    .l-header .header__logo {
      position: absolute;
      top: -2px;
      right: 10px;
      display: inline-block;
      width: 118px;
      height: auto; }
      .l-header .header__logo img {
        width: 100%; } }

@media screen and (min-width: 768px) {
  .l-footer {
    position: relative;
    z-index: 101;
    width: 100%; }
    .l-footer .to-top-btn {
      width: 172px;
      position: absolute;
      left: 0;
      right: 0;
      margin: 0 auto;
      top: -179px; }
      .l-footer .to-top-btn .to-top {
        display: inline-block;
        width: 96px;
        height: auto;
        position: absolute;
        right: 0;
        top: 70px; }
        .l-footer .to-top-btn .to-top img {
          width: 100%; }
      .l-footer .to-top-btn .to-top-man {
        display: inline-block;
        width: 96px;
        height: auto;
        position: absolute;
        left: 0; }
        .l-footer .to-top-btn .to-top-man img {
          width: 100%; }
    .l-footer .footer__sns .sns-list {
      padding: 40px 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
      .l-footer .footer__sns .sns-list .sns__item {
        position: relative;
        display: inline-block;
        width: 310px;
        height: auto; }
        .l-footer .footer__sns .sns-list .sns__item img {
          width: 100%; }
        .l-footer .footer__sns .sns-list .sns__item img {
          -webkit-transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1);
          transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1); }
        .l-footer .footer__sns .sns-list .sns__item:hover img {
          opacity: 0.6; }
      .l-footer .footer__sns .sns-list .sns__link {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0; }
    .l-footer .footer__bottom {
      background: #181818;
      padding: 24px 0; }
      .l-footer .footer__bottom .footer__bottom--inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center; }
      .l-footer .footer__bottom .nav {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start; }
      .l-footer .footer__bottom .nav__item {
        position: relative;
        padding: 0 20px; }
        .l-footer .footer__bottom .nav__item:before {
          content: '|';
          position: absolute;
          left: 0;
          top: 4px;
          color: #fff;
          font-size: 10px; }
        .l-footer .footer__bottom .nav__item:first-child {
          padding-left: 0; }
          .l-footer .footer__bottom .nav__item:first-child:before {
            display: none; }
      .l-footer .footer__bottom .nav__link {
        color: #fff;
        font-size: 10px;
        letter-spacing: 0.075em;
        -webkit-transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1);
        transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1); }
        .l-footer .footer__bottom .nav__link:hover {
          opacity: 0.6; }
      .l-footer .footer__bottom .copyright {
        color: #fff;
        font-size: 10px;
        letter-spacing: 0.075em;
        float: right; } }

@media screen and (max-width: 767px) {
  .l-footer {
    position: relative;
    z-index: 101;
    width: 100%; }
    .l-footer .to-top-btn {
      width: 122px;
      position: absolute;
      left: 0;
      right: 0;
      margin: 0 auto;
      top: -130px; }
      .l-footer .to-top-btn .to-top {
        display: inline-block;
        width: 70px;
        height: auto;
        position: absolute;
        right: 0;
        top: 56px; }
        .l-footer .to-top-btn .to-top img {
          width: 100%; }
      .l-footer .to-top-btn .to-top-man {
        display: inline-block;
        width: 70px;
        height: auto;
        position: absolute;
        left: 0; }
        .l-footer .to-top-btn .to-top-man img {
          width: 100%; }
    .l-footer .footer__sns .sns-list {
      padding: 24px 0; }
      .l-footer .footer__sns .sns-list .sns__item {
        position: relative;
        display: inline-block;
        width: 100%;
        height: auto; }
        .l-footer .footer__sns .sns-list .sns__item img {
          width: 100%; }
        .l-footer .footer__sns .sns-list .sns__item:nth-child(n+2) {
          margin-top: 10px; }
      .l-footer .footer__sns .sns-list .sns__link {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0; }
    .l-footer .footer__bottom {
      background: #181818;
      padding: 24px 0; }
      .l-footer .footer__bottom .nav__item {
        position: relative;
        padding: 0 20px;
        text-align: center; }
        .l-footer .footer__bottom .nav__item:nth-child(n+2) {
          margin-top: 12px; }
      .l-footer .footer__bottom .nav__link {
        color: #fff;
        font-size: 12px;
        letter-spacing: 0.075em; }
      .l-footer .footer__bottom .copyright {
        color: #fff;
        font-size: 10px;
        letter-spacing: 0.075em;
        text-align: center;
        margin-top: 32px; } }

.l-contents {
  position: relative;
  z-index: 100;
  overflow-x: hidden;
  overflow-y: hidden; }

@media screen and (min-width: 768px) {
  .l-index-kv {
    position: relative;
    z-index: 500;
    height: 800px; } }

@media screen and (max-width: 767px) {
  .l-index-kv {
    position: relative;
    z-index: 500;
    height: 100vh; } }

@media screen and (min-width: 768px) {
  .l-kv {
    position: relative;
    z-index: 500;
    width: 100%;
    height: 400px; }
    .l-kv .kv__read {
      position: relative;
      z-index: 2; } }

@media screen and (max-width: 767px) {
  .l-kv {
    position: relative;
    z-index: 500;
    width: 100%;
    height: 300px; }
    .l-kv .kv__read {
      position: relative;
      z-index: 2; } }

.l-section {
  position: relative; }

.l-screen-transition {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  top: -50px;
  height: calc(100vh + 100px);
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: bottom;
  transform-origin: bottom;
  z-index: -1;
  background: #f1f1f1;
  will-change: transform; }
  .l-screen-transition.is-screen-transition--in {
    z-index: 999;
    -webkit-transition: -webkit-transform 0.4s cubic-bezier(0, 0, 0.58, 1);
    transition: -webkit-transform 0.4s cubic-bezier(0, 0, 0.58, 1);
    transition: transform 0.4s cubic-bezier(0, 0, 0.58, 1);
    transition: transform 0.4s cubic-bezier(0, 0, 0.58, 1), -webkit-transform 0.4s cubic-bezier(0, 0, 0.58, 1);
    -webkit-transform: scaleY(1);
    transform: scaleY(1); }
    .l-screen-transition.is-screen-transition--in.is-screen-transition--out {
      z-index: 999;
      -webkit-transform-origin: top !important;
      transform-origin: top !important;
      -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.55, 0.085, 0.68, 0.53);
      transition: -webkit-transform 0.6s cubic-bezier(0.55, 0.085, 0.68, 0.53);
      transition: transform 0.6s cubic-bezier(0.55, 0.085, 0.68, 0.53);
      transition: transform 0.6s cubic-bezier(0.55, 0.085, 0.68, 0.53), -webkit-transform 0.6s cubic-bezier(0.55, 0.085, 0.68, 0.53);
      -webkit-transform: scaleY(0);
      transform: scaleY(0); }

.l-loading {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 10000;
  -webkit-transform: scale(1.08);
  transform: scale(1.08);
  background-color: #FFF;
  opacity: 0;
  display: none; }

.l-bg {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1; }

@media screen and (min-width: 768px) {
  .l-modal {
    position: fixed;
    z-index: 99999;
    width: 100vw;
    height: 100vh;
    background: rgba(80, 79, 45, 0.8);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    overflow: hidden;
    -webkit-transition: 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) opacity;
    transition: 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) opacity;
    -webkit-transition-delay: 0.4s;
    transition-delay: 0.4s;
    opacity: 0;
    pointer-events: none; }
    .l-modal.is-show {
      opacity: 1;
      pointer-events: auto;
      -webkit-transition: 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) opacity;
      transition: 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) opacity; }
      .l-modal.is-show .insta-area .insta-content .icn-close {
        -webkit-transition-delay: 0.4s;
        transition-delay: 0.4s;
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1; }
    .l-modal .modal-area {
      position: relative;
      margin: auto;
      width: 780px;
      height: calc(100vh - 40px);
      max-height: 770px;
      overflow: hidden;
      display: none; }
      .l-modal .modal-area .part1, .l-modal .modal-area .part2, .l-modal .modal-area .part3 {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        pointer-events: none;
        width: 100%;
        height: 100%;
        -webkit-transition: 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275) opacity;
        transition: 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275) opacity;
        -webkit-transition-delay: 0.3s;
        transition-delay: 0.3s;
        opacity: 0; }
        .l-modal .modal-area .part1.is-show, .l-modal .modal-area .part2.is-show, .l-modal .modal-area .part3.is-show {
          opacity: 1;
          pointer-events: auto;
          -webkit-transition: 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275) opacity;
          transition: 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275) opacity; }
          .l-modal .modal-area .part1.is-show .icn-close, .l-modal .modal-area .part2.is-show .icn-close, .l-modal .modal-area .part3.is-show .icn-close {
            -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s;
            -webkit-transform: scale(1);
            transform: scale(1);
            opacity: 1; }
          .l-modal .modal-area .part1.is-show .modal, .l-modal .modal-area .part2.is-show .modal, .l-modal .modal-area .part3.is-show .modal {
            -webkit-transition: cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.6s all;
            transition: cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.6s all;
            pointer-events: none;
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
        .l-modal .modal-area .part1 .icn-close, .l-modal .modal-area .part2 .icn-close, .l-modal .modal-area .part3 .icn-close {
          display: block;
          -webkit-transition: cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.4s all;
          transition: cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.4s all;
          -webkit-transform: scale(0);
          transform: scale(0);
          opacity: 0;
          position: absolute;
          top: 0;
          right: 0;
          width: 60px;
          height: 60px;
          content: "";
          z-index: 4;
          cursor: pointer; }
          .l-modal .modal-area .part1 .icn-close:hover .line:first-child, .l-modal .modal-area .part2 .icn-close:hover .line:first-child, .l-modal .modal-area .part3 .icn-close:hover .line:first-child {
            -webkit-transform: rotate(45deg) scale(0.8);
            transform: rotate(45deg) scale(0.8); }
          .l-modal .modal-area .part1 .icn-close:hover .line:last-child, .l-modal .modal-area .part2 .icn-close:hover .line:last-child, .l-modal .modal-area .part3 .icn-close:hover .line:last-child {
            -webkit-transform: rotate(-45deg) scale(0.8);
            transform: rotate(-45deg) scale(0.8); }
          .l-modal .modal-area .part1 .icn-close .line, .l-modal .modal-area .part2 .icn-close .line, .l-modal .modal-area .part3 .icn-close .line {
            display: block;
            position: absolute;
            top: 50%;
            left: 0;
            width: 100%;
            height: 4px;
            content: "";
            background-color: #fff;
            border-radius: 2px;
            margin-top: -2px;
            -webkit-transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
            transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); }
            .l-modal .modal-area .part1 .icn-close .line:first-child, .l-modal .modal-area .part2 .icn-close .line:first-child, .l-modal .modal-area .part3 .icn-close .line:first-child {
              -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
            .l-modal .modal-area .part1 .icn-close .line:last-child, .l-modal .modal-area .part2 .icn-close .line:last-child, .l-modal .modal-area .part3 .icn-close .line:last-child {
              -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg); }
        .l-modal .modal-area .part1 .icn-btn, .l-modal .modal-area .part2 .icn-btn, .l-modal .modal-area .part3 .icn-btn {
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          margin: auto;
          width: calc(100vh - 250px + 200px);
          max-width: 780px;
          height: calc(100vh - 250px);
          max-height: 585px;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          z-index: 3; }
          .l-modal .modal-area .part1 .icn-btn .btn-next, .l-modal .modal-area .part1 .icn-btn .btn-prev, .l-modal .modal-area .part2 .icn-btn .btn-next, .l-modal .modal-area .part2 .icn-btn .btn-prev, .l-modal .modal-area .part3 .icn-btn .btn-next, .l-modal .modal-area .part3 .icn-btn .btn-prev {
            display: block;
            pointer-events: none;
            position: absolute;
            width: 58px;
            height: 58px;
            content: "";
            cursor: pointer; }
            .l-modal .modal-area .part1 .icn-btn .btn-next:hover .line, .l-modal .modal-area .part1 .icn-btn .btn-prev:hover .line, .l-modal .modal-area .part2 .icn-btn .btn-next:hover .line, .l-modal .modal-area .part2 .icn-btn .btn-prev:hover .line, .l-modal .modal-area .part3 .icn-btn .btn-next:hover .line, .l-modal .modal-area .part3 .icn-btn .btn-prev:hover .line {
              -webkit-transform: scale(0.8);
              transform: scale(0.8); }
            .l-modal .modal-area .part1 .icn-btn .btn-next .line, .l-modal .modal-area .part1 .icn-btn .btn-prev .line, .l-modal .modal-area .part2 .icn-btn .btn-next .line, .l-modal .modal-area .part2 .icn-btn .btn-prev .line, .l-modal .modal-area .part3 .icn-btn .btn-next .line, .l-modal .modal-area .part3 .icn-btn .btn-prev .line {
              display: block;
              position: absolute;
              top: 0;
              left: 0;
              content: "";
              width: 100%;
              height: 100%;
              border-top: 6px solid #fff;
              -webkit-transition: cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.3s transform;
              transition: cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.3s transform; }
          .l-modal .modal-area .part1 .icn-btn .btn-next, .l-modal .modal-area .part2 .icn-btn .btn-next, .l-modal .modal-area .part3 .icn-btn .btn-next {
            right: 12px;
            -webkit-transform: rotate(45deg);
            transform: rotate(45deg); }
            .l-modal .modal-area .part1 .icn-btn .btn-next .line, .l-modal .modal-area .part2 .icn-btn .btn-next .line, .l-modal .modal-area .part3 .icn-btn .btn-next .line {
              border-right: 6px solid #fff; }
          .l-modal .modal-area .part1 .icn-btn .btn-prev, .l-modal .modal-area .part2 .icn-btn .btn-prev, .l-modal .modal-area .part3 .icn-btn .btn-prev {
            left: 12px;
            -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg); }
            .l-modal .modal-area .part1 .icn-btn .btn-prev .line, .l-modal .modal-area .part2 .icn-btn .btn-prev .line, .l-modal .modal-area .part3 .icn-btn .btn-prev .line {
              border-left: 6px solid #fff; }
        .l-modal .modal-area .part1 .modal, .l-modal .modal-area .part2 .modal, .l-modal .modal-area .part3 .modal {
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          -webkit-transition: cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.6s all;
          transition: cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.6s all;
          pointer-events: none;
          -webkit-transform: translate3d(0, 110%, 0);
          transform: translate3d(0, 110%, 0);
          -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          width: 100%;
          height: calc(100vh - 250px);
          max-height: 585px; }
          .l-modal .modal-area .part1 .modal.current, .l-modal .modal-area .part2 .modal.current, .l-modal .modal-area .part3 .modal.current {
            -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
            .l-modal .modal-area .part1 .modal.current .modal-img, .l-modal .modal-area .part2 .modal.current .modal-img, .l-modal .modal-area .part3 .modal.current .modal-img {
              -webkit-transition-delay: 0.2s;
              transition-delay: 0.2s;
              -webkit-transition: cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.6s all;
              transition: cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.6s all;
              opacity: 1; }
            .l-modal .modal-area .part1 .modal.current .text-area, .l-modal .modal-area .part2 .modal.current .text-area, .l-modal .modal-area .part3 .modal.current .text-area {
              opacity: 1; }
              .l-modal .modal-area .part1 .modal.current .text-area .title, .l-modal .modal-area .part2 .modal.current .text-area .title, .l-modal .modal-area .part3 .modal.current .text-area .title {
                opacity: 1; }
              .l-modal .modal-area .part1 .modal.current .text-area .description, .l-modal .modal-area .part2 .modal.current .text-area .description, .l-modal .modal-area .part3 .modal.current .text-area .description {
                opacity: 1; }
          .l-modal .modal-area .part1 .modal .modal-img, .l-modal .modal-area .part2 .modal .modal-img, .l-modal .modal-area .part3 .modal .modal-img {
            display: block;
            position: absolute;
            top: 0;
            bottom: 0;
            right: 0;
            left: 0;
            width: calc((100vh - 250px) / 2 * 1.4);
            height: calc((100vh - 250px) / 2 * 1.4);
            max-width: 400px;
            max-height: 400px;
            overflow: hidden;
            margin: auto;
            -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
            -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
            -webkit-transition: cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.6s all;
            transition: cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.6s all;
            opacity: 0;
            z-index: -1; }
            .l-modal .modal-area .part1 .modal .modal-img .img, .l-modal .modal-area .part2 .modal .modal-img .img, .l-modal .modal-area .part3 .modal .modal-img .img {
              position: absolute;
              top: 0;
              right: 0;
              bottom: 0;
              left: 0;
              background-size: cover;
              background-repeat: no-repeat;
              background-position: 50% 50%;
              opacity: 0; }
              .l-modal .modal-area .part1 .modal .modal-img .img.isCurrent, .l-modal .modal-area .part2 .modal .modal-img .img.isCurrent, .l-modal .modal-area .part3 .modal .modal-img .img.isCurrent {
                opacity: 1; }
          .l-modal .modal-area .part1 .modal .text-area, .l-modal .modal-area .part2 .modal .text-area, .l-modal .modal-area .part3 .modal .text-area {
            position: absolute;
            left: 0;
            bottom: -170px;
            width: 100%;
            background-color: #fff;
            padding: 30px 46px 32px;
            border-radius: 10px;
            opacity: 0;
            -webkit-transition: cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.3s all;
            transition: cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.3s all; }
            .l-modal .modal-area .part1 .modal .text-area .title, .l-modal .modal-area .part2 .modal .text-area .title, .l-modal .modal-area .part3 .modal .text-area .title {
              font-size: 30px;
              font-weight: 700;
              text-align: center;
              opacity: 0;
              -webkit-transition: cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.3s all;
              transition: cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.3s all; }
            .l-modal .modal-area .part1 .modal .text-area .description, .l-modal .modal-area .part2 .modal .text-area .description, .l-modal .modal-area .part3 .modal .text-area .description {
              font-size: 14px;
              line-height: 2;
              margin-bottom: -7px;
              margin-top: 21px;
              font-weight: 700;
              opacity: 0;
              -webkit-transition: cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.3s all;
              transition: cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.3s all; }
    .l-modal .insta-area {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(80, 79, 45, 0.8);
      display: none;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      overflow: hidden; }
      .l-modal .insta-area .insta-content {
        display: block;
        position: relative;
        max-width: 692px;
        height: auto;
        background-color: #8156c2;
        border: 6px solid #fff;
        border-radius: 10px;
        -webkit-box-shadow: 8px  8px 8px -10px #000;
        box-shadow: 8px  8px 8px -10px #000;
        padding: 24px 32px 56px;
        overflow: initial; }
        .l-modal .insta-area .insta-content .icn-close {
          display: block;
          -webkit-transition: cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.4s all;
          transition: cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.4s all;
          -webkit-transform: scale(0);
          transform: scale(0);
          opacity: 0;
          position: absolute;
          top: -80px;
          right: -10px;
          width: 60px;
          height: 60px;
          content: "";
          z-index: 4;
          cursor: pointer; }
          .l-modal .insta-area .insta-content .icn-close .line {
            display: block;
            position: absolute;
            top: 50%;
            left: 0;
            width: 100%;
            height: 4px;
            content: "";
            background-color: #fff;
            border-radius: 2px;
            margin-top: -2px;
            -webkit-transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
            transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); }
            .l-modal .insta-area .insta-content .icn-close .line:first-child {
              -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
            .l-modal .insta-area .insta-content .icn-close .line:last-child {
              -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg); }
          .l-modal .insta-area .insta-content .icn-close:hover .line:first-child {
            -webkit-transform: rotate(45deg) scale(0.8);
            transform: rotate(45deg) scale(0.8); }
          .l-modal .insta-area .insta-content .icn-close:hover .line:last-child {
            -webkit-transform: rotate(-45deg) scale(0.8);
            transform: rotate(-45deg) scale(0.8); }
        .l-modal .insta-area .insta-content .title {
          max-width: 330px;
          margin: 0 auto; }
        .l-modal .insta-area .insta-content .insta-img {
          width: 560px;
          height: auto;
          display: block;
          margin: 0 auto; }
        .l-modal .insta-area .insta-content .description {
          font-size: 14px;
          line-height: 1.7;
          margin-bottom: 45.1px;
          margin-top: 27.1px;
          font-weight: 700;
          color: #fff; } }

@media screen and (max-width: 767px) {
  .l-modal {
    display: block;
    position: fixed;
    z-index: 99999;
    width: 100vw;
    height: 100vh;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) opacity;
    transition: 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) opacity; }
    .l-modal.is-show {
      opacity: 1;
      pointer-events: auto;
      -webkit-transition: 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) opacity;
      transition: 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) opacity;
      cursor: pointer; }
      .l-modal.is-show .insta-area .insta-content .icn-close {
        -webkit-transition-delay: 0.4s;
        transition-delay: 0.4s;
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1; }
    .l-modal .insta-area {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(80, 79, 45, 0.8);
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      overflow: hidden; }
      .l-modal .insta-area .insta-content {
        display: block;
        position: relative;
        max-width: 295px;
        height: auto;
        background-color: #8156c2;
        border: 3px solid #fff;
        border-radius: 10px;
        -webkit-box-shadow: 8px  8px 8px -10px #000;
        box-shadow: 8px  8px 8px -10px #000;
        padding: 15px 12px 18px;
        overflow: initial; }
        .l-modal .insta-area .insta-content .icn-close {
          display: block;
          -webkit-transition: cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.4s all;
          transition: cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.4s all;
          -webkit-transform: scale(0);
          transform: scale(0);
          opacity: 0;
          position: absolute;
          top: -40px;
          right: -10px;
          width: 30px;
          height: 30px;
          content: "";
          z-index: 4;
          cursor: pointer; }
          .l-modal .insta-area .insta-content .icn-close .line {
            display: block;
            position: absolute;
            top: 50%;
            left: 0;
            width: 100%;
            height: 2px;
            content: "";
            background-color: #fff;
            border-radius: 2px;
            margin-top: -2px;
            -webkit-transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
            transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); }
            .l-modal .insta-area .insta-content .icn-close .line:first-child {
              -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
            .l-modal .insta-area .insta-content .icn-close .line:last-child {
              -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg); }
        .l-modal .insta-area .insta-content:hover .line:first-child {
          -webkit-transform: rotate(45deg) scale(0.8);
          transform: rotate(45deg) scale(0.8); }
        .l-modal .insta-area .insta-content:hover .line:last-child {
          -webkit-transform: rotate(-45deg) scale(0.8);
          transform: rotate(-45deg) scale(0.8); }
        .l-modal .insta-area .insta-content .title {
          max-width: 165px;
          margin: 0 auto; }
        .l-modal .insta-area .insta-content .insta-img {
          width: 100%;
          height: auto;
          display: block; }
        .l-modal .insta-area .insta-content .description {
          font-size: 10px;
          font-size: 10px;
          line-height: 1.2;
          margin-bottom: 15px;
          margin-top: 11px;
          font-weight: 700;
          color: #fff; } }

@media screen and (min-width: 768px) {
  .c-headline1 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; }
    .c-headline1 span.en {
      font-family: "Roboto", sans-serif;
      font-weight: 700;
      -webkit-font-feature-settings: "palt" 1;
      font-feature-settings: "palt" 1; } }

@media screen and (max-width: 767px) {
  .c-headline1 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; }
    .c-headline1 span.en {
      font-family: "Roboto", sans-serif;
      font-weight: 700;
      -webkit-font-feature-settings: "palt" 1;
      font-feature-settings: "palt" 1; } }

@media screen and (min-width: 768px) {
  .c-inner {
    position: relative;
    width: 1164px;
    margin-left: auto;
    margin-right: auto;
    padding-right: 32px;
    padding-left: 32px; }
  .c-inner--s {
    position: relative;
    width: 1060px;
    margin-left: auto;
    margin-right: auto;
    padding-right: 32px;
    padding-left: 32px; } }

@media screen and (max-width: 767px) {
  .c-inner,
  .c-inner--s {
    position: relative;
    width: 100%;
    padding: 0 12px; } }

.c-bg-img {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }

@media screen and (min-width: 768px) {
  .c-table--col1 > .item {
    padding: 32px 0;
    border-bottom: 1px solid #a8a8aa; }
    .c-table--col1 > .item:first-child {
      border-top: 1px solid #a8a8aa; }
    .c-table--col1 > .item .value {
      width: 100%;
      font-size: 13px;
      line-height: 2;
      margin-bottom: -6.5px;
      margin-top: -6.5px;
      font-weight: 400; }
  .c-table--col2 > .item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 32px 0;
    border-bottom: 1px solid #a8a8aa; }
    .c-table--col2 > .item:first-child {
      border-top: 1px solid #a8a8aa; }
    .c-table--col2 > .item .key {
      width: 140px;
      padding-right: 32px;
      font-size: 12px;
      line-height: 1.74;
      margin-bottom: -4.44px;
      margin-top: -4.44px; }
    .c-table--col2 > .item .value {
      width: calc(100% - 140px);
      font-size: 12px;
      line-height: 1.74;
      margin-bottom: -4.44px;
      margin-top: -4.44px;
      font-weight: 400; } }

@media screen and (max-width: 767px) {
  .c-table--col1 > .item {
    padding: 20px 0;
    border-bottom: 1px solid #a8a8aa; }
    .c-table--col1 > .item:first-child {
      border-top: 1px solid #a8a8aa; }
    .c-table--col1 > .item .value {
      width: 100%;
      font-size: 12px;
      line-height: 2;
      margin-bottom: -6px;
      margin-top: -6px;
      font-weight: 400; }
  .c-table--col2 > .item {
    padding: 20px 0;
    border-bottom: 1px solid #a8a8aa; }
    .c-table--col2 > .item:first-child {
      border-top: 1px solid #a8a8aa; }
    .c-table--col2 > .item .key {
      font-size: 12px;
      line-height: 1.74;
      margin-bottom: -4.44px;
      margin-top: -4.44px; }
    .c-table--col2 > .item .value {
      font-size: 12px;
      line-height: 1.74;
      margin-bottom: -4.44px;
      margin-top: 11.56px;
      font-weight: 400; } }

.c-fade-in {
  -webkit-transform: translateY(80px);
  transform: translateY(80px);
  opacity: 0;
  -webkit-transition: 1.6s 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: 1.6s 0.2s cubic-bezier(0.075, 0.82, 0.165, 1); }
  .c-fade-in.is-appear {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
    opacity: 1; }

.vs-fake-scroll {
  position: relative;
  z-index: -1; }

.vs-container.is-vs {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  overflow: hidden; }

.index .js-hover-animation-item {
  cursor: pointer; }
  .index .js-hover-animation-item .block-img {
    opacity: 0; }
    .index .js-hover-animation-item .block-img.isCurrent {
      opacity: 1; }

@media screen and (min-width: 768px) {
  .index .p-block {
    position: absolute;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg); }
    .index .p-block .block-img {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      overflow: hidden;
      background-size: cover;
      background-repeat: no-repeat;
      background-position: 50% 50%; }
      .index .p-block .block-img .bg {
        position: absolute;
        bottom: 0;
        width: 0;
        height: 0;
        border-style: solid;
        border-color: transparent transparent transparent rgba(0, 0, 0, 0.64);
        -webkit-transform: translate3d(-10px, 10px, 0px);
        transform: translate3d(-10px, 10px, 0px);
        opacity: 0;
        -webkit-transition: 0.2s ease-out;
        transition: 0.2s ease-out; }
    .index .p-block .title {
      position: absolute;
      z-index: 2;
      text-align: center;
      width: 100%;
      -webkit-transition: 0.2s ease-out;
      transition: 0.2s ease-out;
      opacity: 0;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      color: #fff;
      font-size: 24px;
      line-height: 1.25;
      margin-bottom: -3px;
      margin-top: -3px;
      font-weight: 700; }
    .index .p-block .arrow {
      position: absolute;
      width: 0;
      height: 0;
      border-style: solid;
      border-color: transparent transparent #fff transparent;
      opacity: 0;
      -webkit-transition: 0.2s ease-out;
      transition: 0.2s ease-out; }
    .index .p-block .link {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      z-index: 10; }
    .index .p-block:hover .bg {
      -webkit-transform: translate3d(0px, 0px, 0px);
      transform: translate3d(0px, 0px, 0px);
      opacity: 1; }
    .index .p-block:hover .title, .index .p-block:hover .arrow {
      opacity: 1; }
    .index .p-block.block--s {
      width: 105px;
      height: 105px; }
    .index .p-block.block--m {
      width: 220px;
      height: 220px; }
      .index .p-block.block--m .block-img .bg {
        bottom: -90px;
        border-width: 220px 0 0 220px; }
      .index .p-block.block--m .title {
        right: 28%;
        bottom: 17%;
        font-size: 16px;
        line-height: 1.25;
        margin-bottom: -2px;
        margin-top: -2px; }
      .index .p-block.block--m .arrow {
        bottom: 16px;
        left: 16px;
        border-width: 0 0 12px 12px; }
    .index .p-block.block--m2 .title {
      right: 26%;
      bottom: 16%; }
    .index .p-block.block--m2 .block-img .bg {
      bottom: -66px; }
    .index .p-block.block--l {
      width: 445px;
      height: 445px; }
      .index .p-block.block--l .block-img .bg {
        border-width: 220px 0 0 220px; }
      .index .p-block.block--l .title {
        right: 32%;
        bottom: 15%; }
      .index .p-block.block--l .arrow {
        bottom: 36px;
        left: 32px;
        border-width: 0 0 15px 15px; }
  .index .s-part1 {
    position: relative;
    height: 1280px; }
  .index .s-part3 {
    position: relative;
    height: 1214px;
    margin-top: 72px; }
  .index .s-part1 {
    margin-top: 44px; }
    .index .s-part1 .text-area .text {
      font-size: 16px;
      line-height: 2.25;
      margin-bottom: -10px;
      margin-top: -10px;
      font-weight: 700; }
    .index .s-part1 .block-area .block1 {
      top: -195px;
      left: 676px; }
    .index .s-part1 .block-area .block2 {
      top: -32px;
      left: 837px; }
    .index .s-part1 .block-area .block3 {
      top: 16px;
      left: 402px; }
    .index .s-part1 .block-area .block4 {
      top: 292px;
      left: 836px; }
    .index .s-part1 .block-area .block5 {
      top: 502px;
      left: 561px; }
    .index .s-part1 .block-area .block6 {
      top: 291px;
      left: 191px; }
    .index .s-part1 .block-area .block7 {
      top: 454px;
      left: 354px; }
    .index .s-part1 .block-area .block8 {
      top: 455px;
      left: 28px; }
    .index .s-part1 .block-area .block9 {
      top: 617px;
      left: 191px; }
    .index .s-part1 .block-area .block10 {
      top: 103px;
      left: 249px;
      background-color: #fff; }
    .index .s-part1 .block-area .block11 {
      top: 21px;
      left: 333px;
      background-color: #ef4c6b; }
    .index .s-part1 .block-area .block12 {
      top: 128px;
      left: 28px;
      cursor: pointer;
      -webkit-transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1);
      transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1);
      display: none !important; }
      .index .s-part1 .block-area .block12:hover {
        opacity: 0.7; }
    .index .s-part1 .block-area .block-cover {
      position: absolute;
      top: 0;
      left: 408px;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      z-index: -1;
      width: 793px;
      height: 793px;
      background: #fde89a; }
    .index .s-part1 .other-element-area {
      position: absolute;
      z-index: -1;
      top: 0;
      left: 0; }
      .index .s-part1 .other-element-area .img-w1 {
        display: inline-block;
        width: 193px;
        height: auto;
        position: absolute;
        top: 34px;
        left: 990px; }
        .index .s-part1 .other-element-area .img-w1 img {
          width: 100%; }
      .index .s-part1 .other-element-area .img-w2 {
        display: inline-block;
        width: 134px;
        height: auto;
        position: absolute;
        top: 326px;
        left: -64px; }
        .index .s-part1 .other-element-area .img-w2 img {
          width: 100%; }
  .index .s-part2 {
    position: relative;
    height: 1005px;
    margin-top: 132px; }
    .index .s-part2 .block-area .block1 {
      top: -241px;
      left: 192px; }
    .index .s-part2 .block-area .block2 {
      top: -78px;
      left: 355px; }
    .index .s-part2 .block-area .block3 {
      top: 86px;
      left: 518px; }
    .index .s-part2 .block-area .block4 {
      top: -77px;
      left: 28px; }
    .index .s-part2 .block-area .block5 {
      top: 137px;
      left: 80px; }
    .index .s-part2 .block-area .block6 {
      top: 296px;
      left: 570px; }
    .index .s-part2 .block-area .block7 {
      top: 574px;
      left: 359px; }
    .index .s-part2 .block-area .block8 {
      top: 573px;
      left: 27px; }
    .index .s-part2 .block-area .block9 {
      top: 738px;
      left: 192px; }
    .index .s-part2 .block-area .block10 {
      top: -24px;
      left: 822px;
      background-color: #ef4c6b; }
    .index .s-part2 .block-area .block11 {
      top: -24px;
      left: 656px;
      background-color: #8dc556; }
    .index .s-part2 .block-area .block12 {
      top: 60px;
      left: 738px;
      background-color: #fff; }
    .index .s-part2 .block-area .block-cover {
      position: absolute;
      top: -38px;
      left: -60px;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      z-index: -1;
      width: 793px;
      height: 793px;
      background: #fde89a; }
    .index .s-part2 .other-element-area {
      position: absolute;
      z-index: -1;
      top: 0;
      left: 0; }
      .index .s-part2 .other-element-area .img-byc1 {
        display: inline-block;
        width: 216px;
        height: auto;
        position: absolute;
        top: -100px;
        left: 1050px; }
        .index .s-part2 .other-element-area .img-byc1 img {
          width: 100%; }
      .index .s-part2 .other-element-area .img-w1 {
        display: inline-block;
        width: 172px;
        height: auto;
        position: absolute;
        top: -280px;
        left: -50px; }
        .index .s-part2 .other-element-area .img-w1 img {
          width: 100%; }
  .index .other-element-area {
    width: 100%; }
    .index .other-element-area .img-w2 {
      display: inline-block;
      width: 172px;
      height: auto;
      position: absolute;
      top: -214px;
      left: -16px; }
      .index .other-element-area .img-w2 img {
        width: 100%; }
    .index .other-element-area .img-w3 {
      display: inline-block;
      width: 124px;
      height: auto;
      position: absolute;
      top: 340px;
      right: 0; }
      .index .other-element-area .img-w3 img {
        width: 100%; }
    .index .other-element-area .img-w4 {
      display: inline-block;
      width: 124px;
      height: auto;
      position: absolute;
      top: 890px;
      right: 0; }
      .index .other-element-area .img-w4 img {
        width: 100%; }
  .index .s-part3 .block-area .block1 {
    top: -195px;
    left: 682px; }
  .index .s-part3 .block-area .block2 {
    top: -31px;
    left: 845px; }
  .index .s-part3 .block-area .block3 {
    top: 17px;
    left: 406px; }
  .index .s-part3 .block-area .block4 {
    top: 290px;
    left: 846px; }
  .index .s-part3 .block-area .block5 {
    top: 454px;
    left: 683px; }
  .index .s-part3 .block-area .block6 {
    top: 622px;
    left: 846px; }
  .index .s-part3 .block-area .block7 {
    top: 295px;
    left: 194px; }
  .index .s-part3 .block-area .block8 {
    top: 510px;
    left: 247px; }
  .index .s-part3 .block-area .block9 {
    top: 458px;
    left: 30px; }
  .index .s-part3 .block-area .block11 {
    top: 102px;
    left: 252px;
    background-color: #fff; }
  .index .s-part3 .block-area .block12 {
    top: 20px;
    left: 336px;
    background-color: #ef4c6b; }
  .index .s-part3 .block-area .block13 {
    top: 186px;
    left: 1151px;
    background-color: #ef4c6b; }
  .index .s-part3 .block-area .block14 {
    top: 187px;
    left: 989px;
    background-color: #8dc556; }
  .index .s-part3 .block-area .block15 {
    top: 266px;
    left: 1068px;
    background-color: #fff; }
  .index .s-part3 .block-area .block16 {
    top: 921px;
    left: 579px;
    background-color: #ef4c6b; }
  .index .s-part3 .block-area .block17 {
    top: 1003px;
    left: 660px;
    background-color: #fff; }
  .index .s-part3 .block-area .block18 {
    top: 1003px;
    left: 498px;
    background-color: #8dc556; }
  .index .s-part3 .block-area .block19 {
    top: 1085px;
    left: 579px;
    background-color: #ef4c6b; }
  .index .s-part3 .block-area .block-cover {
    position: absolute;
    top: -159px;
    left: 370px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    z-index: -1;
    width: 793px;
    height: 793px;
    background: #fde89a; }
  .index .s-part3 .other-element-area {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0; }
    .index .s-part3 .other-element-area .img-byc1 {
      display: inline-block;
      width: 191px;
      height: auto;
      position: absolute;
      top: -60px;
      left: -20px; }
      .index .s-part3 .other-element-area .img-byc1 img {
        width: 100%; }
    .index .s-part3 .other-element-area .img-byc2 {
      display: inline-block;
      width: 230px;
      height: auto;
      position: absolute;
      top: 856px;
      left: 1032px; }
      .index .s-part3 .other-element-area .img-byc2 img {
        width: 100%; }
    .index .s-part3 .other-element-area .img-w1 {
      display: inline-block;
      width: 151px;
      height: auto;
      position: absolute;
      top: 40px;
      left: 58px;
      z-index: -1; }
      .index .s-part3 .other-element-area .img-w1 img {
        width: 100%; }
    .index .s-part3 .other-element-area .img-w2 {
      display: inline-block;
      width: 164px;
      height: auto;
      position: absolute;
      top: 880px;
      left: -50px; }
      .index .s-part3 .other-element-area .img-w2 img {
        width: 100%; }
    .index .s-part3 .other-element-area .img-w3 {
      display: inline-block;
      width: 212px;
      height: auto;
      position: absolute;
      top: 930px;
      left: 5px; }
      .index .s-part3 .other-element-area .img-w3 img {
        width: 100%; }
  .index .s-enjoy {
    position: relative;
    padding-bottom: 124px;
    margin-top: 12px;
    background: #fff; }
    .index .s-enjoy .bg-enjoy {
      position: absolute;
      top: -41px;
      width: 100%;
      height: 41px;
      background-image: url("/assets/images/pc/bg_ww.png");
      background-repeat: repeat-x; }
    .index .s-enjoy .title {
      text-align: center;
      display: inline-block;
      width: 905px;
      height: auto;
      display: block;
      margin: 0 auto; }
      .index .s-enjoy .title img {
        width: 100%; }
    .index .s-enjoy .text {
      font-size: 18px;
      line-height: 2;
      margin-bottom: 71px;
      margin-top: 63px;
      letter-spacing: 0.025em;
      text-align: center; }
    .index .s-enjoy .img-enjoy {
      display: inline-block;
      width: 100%;
      height: auto; }
      .index .s-enjoy .img-enjoy img {
        width: 100%; }
  .index .s-different {
    position: relative;
    padding-bottom: 136px;
    background: #fff; }
    .index .s-different .title {
      position: relative;
      text-align: center;
      display: inline-block;
      width: 634px;
      height: auto;
      display: block;
      margin: 0 auto; }
      .index .s-different .title img {
        width: 100%; }
      .index .s-different .title .img-title {
        position: relative;
        z-index: 2; }
      .index .s-different .title .img-new {
        position: absolute;
        left: -70px;
        top: -64px;
        width: 100px;
        z-index: 1;
        width: 100px; }
    .index .s-different .text {
      font-size: 18px;
      line-height: 2;
      margin-bottom: 47px;
      margin-top: 41px;
      letter-spacing: 0.025em;
      text-align: center;
      font-weight: 500; }
    .index .s-different .point-list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin-bottom: 90px; }
      .index .s-different .point-list .item {
        position: relative;
        padding-top: 32px;
        width: 296px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center; }
        .index .s-different .point-list .item .point-no {
          display: inline-block;
          width: 200px;
          height: auto;
          position: absolute;
          left: 23px;
          right: 0;
          top: 0;
          margin: auto; }
          .index .s-different .point-list .item .point-no img {
            width: 100%; }
        .index .s-different .point-list .item .thumb {
          width: 296px;
          height: 296px;
          border-radius: 50%; }
          .index .s-different .point-list .item .thumb.thumb1 {
            background-image: url("/assets/images/pc/img_new_point1.jpg");
            background-size: cover;
            background-repeat: no-repeat;
            background-position: 50% 50%; }
          .index .s-different .point-list .item .thumb.thumb2 {
            background-image: url("/assets/images/pc/img_new_point2.jpg");
            background-size: cover;
            background-repeat: no-repeat;
            background-position: 50% 50%; }
          .index .s-different .point-list .item .thumb.thumb3 {
            background-image: url("/assets/images/pc/img_new_point3.jpg");
            background-size: cover;
            background-repeat: no-repeat;
            background-position: 50% 50%; }
        .index .s-different .point-list .item .textarea {
          background: #fff;
          border-radius: 10px;
          width: 100%;
          height: 114px;
          -webkit-box-shadow: 4px 6px 10px rgba(0, 0, 0, 0.15);
          box-shadow: 4px 6px 10px rgba(0, 0, 0, 0.15);
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          margin-top: -40px; }
        .index .s-different .point-list .item .text {
          font-size: 20px;
          line-height: 1.5;
          margin-bottom: -5px;
          margin-top: -5px;
          letter-spacing: 0;
          font-weight: 700; }
          .index .s-different .point-list .item .text .strong {
            color: #e5004f;
            font-size: 24px;
            line-height: 1.5;
            margin-bottom: -6px;
            margin-top: -6px; }
    .index .s-different .more-btn {
      display: inline-block;
      width: 795px;
      height: auto;
      display: block;
      margin: 0 auto;
      border-radius: 10px;
      border: 3px solid #fad43c;
      overflow: hidden;
      margin-bottom: 120px; }
      .index .s-different .more-btn img {
        width: 100%; }
      .index .s-different .more-btn img {
        -webkit-transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1);
        transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1); }
      .index .s-different .more-btn:hover img {
        opacity: 0.7; }
  .index .s-person {
    padding: 120px 0 300px;
    background: #fff; }
    .index .s-person .person {
      background: #eeeeee;
      width: 100%;
      padding: 52px 50px 60px;
      border-radius: 10px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
    .index .s-person .person__introduction {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
      .index .s-person .person__introduction .person-thumb {
        width: 268px;
        height: 268px;
        border-radius: 50%;
        background-image: url("/assets/images/pc/img_person.jpg");
        background-size: cover;
        background-repeat: no-repeat;
        background-position: 50% 50%; }
      .index .s-person .person__introduction .person-name {
        background: #fff;
        border-radius: 10px;
        width: 293px;
        height: 108px;
        -webkit-box-shadow: 4px 6px 10px rgba(0, 0, 0, 0.15);
        box-shadow: 4px 6px 10px rgba(0, 0, 0, 0.15);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        margin-top: -36px; }
        .index .s-person .person__introduction .person-name .text {
          font-size: 18px;
          line-height: 1.5;
          margin-bottom: -4.5px;
          margin-top: -4.5px;
          letter-spacing: 0;
          font-weight: 700;
          text-align: center; }
          .index .s-person .person__introduction .person-name .text .strong {
            font-size: 24px;
            line-height: 1.5;
            margin-bottom: -6px;
            margin-top: -6px; }
    .index .s-person .person__text {
      width: 650px;
      margin-top: 32px; }
      .index .s-person .person__text .title {
        font-size: 24px;
        line-height: 1.5;
        margin-bottom: -6px;
        margin-top: -6px;
        font-weight: 700; }
      .index .s-person .person__text .text {
        font-size: 16px;
        line-height: 2;
        margin-bottom: -8px;
        margin-top: 44px;
        letter-spacing: 0.025em; } }

@media screen and (max-width: 767px) {
  @-webkit-keyframes fadeIn {
    0% {
      opacity: 0; }
    100% {
      opacity: 1; } }
  @keyframes fadeIn {
    0% {
      opacity: 0; }
    100% {
      opacity: 1; } }
  .index .p-block {
    display: none;
    position: relative;
    opacity: 0; }
    .index .p-block .block-img {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      overflow: hidden;
      background-size: cover;
      background-repeat: no-repeat;
      background-position: 50% 50%;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg); }
    .index .p-block .text-content {
      position: absolute;
      top: 260px;
      left: 0;
      z-index: 2;
      padding: 0 18px;
      margin-left: calc(((100vw - 100%) / 2) * -1);
      margin-right: calc(((100vw - 100%) / 2) * -1); }
      .index .p-block .text-content .title {
        text-align: center;
        color: #181818;
        font-size: 16px;
        line-height: 1.1;
        margin-bottom: -0.8px;
        margin-top: -0.8px;
        font-weight: 700; }
      .index .p-block .text-content .description {
        font-size: 11px;
        line-height: 1.5;
        margin-bottom: -2.75px;
        margin-top: 10.25px;
        font-weight: 700; }
    .index .p-block .link {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      z-index: 10; }
    .index .p-block.block--m, .index .p-block.block--l {
      width: 140px;
      height: 140px; }
    .index .p-block.block--s {
      width: 50px;
      height: 50px; }
    .index .p-block.current {
      display: block;
      width: 204px;
      height: 204px;
      margin: 0 auto;
      opacity: 1;
      -webkit-animation: fadeIn 0.3s ease;
      animation: fadeIn 0.3s ease;
      pointer-events: none; }
  .index .block-area {
    position: relative;
    height: 440px;
    max-width: 320px;
    margin: 150px auto 0; }
    .index .block-area::after {
      display: block;
      position: absolute;
      top: -98px;
      left: 34px;
      width: 102px;
      height: 102px;
      content: "";
      background-size: contain;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg); }
    .index .block-area .icn-btn-sp {
      display: block;
      position: absolute;
      top: 176px;
      left: 0;
      width: 100%;
      height: 80px; }
      .index .block-area .icn-btn-sp .btn-next, .index .block-area .icn-btn-sp .btn-prev {
        display: block;
        position: absolute;
        top: 0;
        width: 29px;
        height: 29px;
        content: "";
        cursor: pointer; }
        .index .block-area .icn-btn-sp .btn-next .line, .index .block-area .icn-btn-sp .btn-prev .line {
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          content: "";
          width: 100%;
          height: 100%;
          border-top: 3px solid #fff;
          -webkit-transition: cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.3s transform;
          transition: cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.3s transform; }
      .index .block-area .icn-btn-sp .btn-next {
        right: 22px;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg); }
        .index .block-area .icn-btn-sp .btn-next .line {
          border-right: 3px solid #fff; }
      .index .block-area .icn-btn-sp .btn-prev {
        left: 22px;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg); }
        .index .block-area .icn-btn-sp .btn-prev .line {
          border-left: 3px solid #fff; }
    .index .block-area .slide-nav {
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      height: 80px;
      overflow: initial;
      width: 100%; }
      .index .block-area .slide-nav .count-num {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        position: absolute;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        bottom: -10px;
        left: 0;
        right: 0;
        width: 100%; }
        .index .block-area .slide-nav .count-num .now {
          display: block;
          font-size: 11px;
          font-weight: 700; }
        .index .block-area .slide-nav .count-num .all {
          position: relative;
          display: block;
          font-size: 11px;
          font-weight: 700;
          padding-left: 7px; }
          .index .block-area .slide-nav .count-num .all::after {
            display: block;
            position: absolute;
            top: 0;
            left: 0;
            content: "/"; }
    .index .block-area .current-nav-img {
      display: block;
      position: relative;
      width: 100%;
      max-width: 100%;
      height: 100%;
      margin: 0 auto; }
      .index .block-area .current-nav-img::before {
        display: block;
        position: absolute;
        top: 10px;
        left: 50%;
        width: 48px;
        height: 48px;
        margin-left: -24px;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        border: 3px solid #f6aa01;
        z-index: 1;
        content: "";
        pointer-events: none; }
      .index .block-area .current-nav-img .nav-img {
        position: absolute;
        top: 10px;
        width: 48px;
        height: 48px;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        -webkit-transition: 0.2s ease left;
        transition: 0.2s ease left;
        cursor: pointer; }
        .index .block-area .current-nav-img .nav-img.main-pos {
          left: 136px; }
        .index .block-area .current-nav-img .nav-img.left-front {
          left: 68px; }
        .index .block-area .current-nav-img .nav-img.left-end {
          left: 0px; }
        .index .block-area .current-nav-img .nav-img.right-front {
          left: 204px; }
        .index .block-area .current-nav-img .nav-img.right-end {
          left: 272px; }
        .index .block-area .current-nav-img .nav-img.back-pos-left {
          left: -88px;
          opacity: 0; }
        .index .block-area .current-nav-img .nav-img.back-pos-right {
          left: 330px;
          opacity: 0; }
        .index .block-area .current-nav-img .nav-img .block-img {
          position: absolute;
          top: 0;
          right: 0;
          bottom: 0;
          left: 0;
          overflow: hidden;
          background-size: cover;
          background-repeat: no-repeat;
          background-position: 50% 50%; }
  .index .s-part1, .index .s-part2.s-part3 {
    position: relative; }
  .index .s-part1 {
    margin-top: 14px; }
    .index .s-part1 .text-area {
      text-align: center;
      padding-bottom: 30px; }
      .index .s-part1 .text-area .text {
        font-size: 11px;
        line-height: 1.5;
        margin-bottom: -2.75px;
        margin-top: 23.25px;
        font-weight: 700; }
    .index .s-part1 .info-area {
      padding: 0 32px;
      width: 100%;
      height: auto;
      display: none; }
      .index .s-part1 .info-area .link {
        display: block;
        position: relative; }
    .index .s-part1 .block-area::after {
      background-image: url("/assets/images/pc/img_part1.jpg"); }
    .index .s-part1 .block-area .block11 {
      display: block;
      position: absolute;
      bottom: -72px;
      right: 10px;
      background-color: #fff;
      opacity: 1;
      content: "";
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg); }
    .index .s-part1 .block-area .block12 {
      display: none; }
    .index .s-part1 .block-area .block-cover {
      position: absolute;
      top: 0;
      left: 45px;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      z-index: -1;
      width: 400px;
      height: 400px;
      background: #fde89a; }
    .index .s-part1 .other-element-area {
      position: absolute;
      top: 10px;
      left: -12px; }
      .index .s-part1 .other-element-area .img-w1 {
        display: block;
        display: inline-block;
        width: 64px;
        height: auto;
        height: auto; }
        .index .s-part1 .other-element-area .img-w1 img {
          width: 100%; }
  .index .s-part2 {
    margin-top: 240px; }
    .index .s-part2 .info-area {
      padding: 0 12px;
      width: 100%;
      height: auto; }
      .index .s-part2 .info-area .link {
        display: block;
        position: relative; }
    .index .s-part2 .block-area::after {
      left: 184px;
      background-image: url("/assets/images/pc/img_part2.jpg"); }
    .index .s-part2 .block-area .block10 {
      display: block;
      position: absolute;
      bottom: -27px;
      left: -29px;
      background-color: #ef4c6b;
      content: "";
      opacity: 1;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg); }
    .index .s-part2 .block-area .block11 {
      display: block;
      position: absolute;
      bottom: -66px;
      left: 11px;
      background-color: #fff;
      content: "";
      opacity: 1;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg); }
    .index .s-part2 .block-cover {
      position: absolute;
      top: -5px;
      left: -125px;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      z-index: -1;
      width: 400px;
      height: 400px;
      background: #fde89a; }
    .index .s-part2 .other-element-area {
      position: absolute;
      width: 100%;
      height: 100%;
      z-index: -1;
      top: 0;
      left: 0; }
      .index .s-part2 .other-element-area .img-byc1 {
        display: inline-block;
        width: 80px;
        height: auto;
        position: absolute;
        top: -190px;
        left: 60px;
        -webkit-transform: rotate(-15deg);
        transform: rotate(-15deg); }
        .index .s-part2 .other-element-area .img-byc1 img {
          width: 100%; }
      .index .s-part2 .other-element-area .img-w1 {
        display: inline-block;
        width: 64px;
        height: auto;
        position: absolute;
        top: -185px;
        left: 40px;
        z-index: -1; }
        .index .s-part2 .other-element-area .img-w1 img {
          width: 100%; }
      .index .s-part2 .other-element-area .img-w2 {
        display: inline-block;
        width: 64px;
        height: auto;
        position: absolute;
        top: -110px;
        left: -6px; }
        .index .s-part2 .other-element-area .img-w2 img {
          width: 100%; }
      .index .s-part2 .other-element-area .img-w3 {
        display: inline-block;
        width: 64px;
        height: auto;
        position: absolute;
        top: 0px;
        right: -14px; }
        .index .s-part2 .other-element-area .img-w3 img {
          width: 100%; }
      .index .s-part2 .other-element-area .img-w4 {
        display: inline-block;
        width: 64px;
        height: auto;
        position: absolute;
        bottom: -40px;
        right: 0; }
        .index .s-part2 .other-element-area .img-w4 img {
          width: 100%; }
  .index .s-part3 {
    margin-top: 220px;
    padding-bottom: 140px; }
    .index .s-part3 .block-area::after {
      background-image: url("/assets/images/pc/img_part3.jpg"); }
    .index .s-part3 .block-area .block11 {
      display: block;
      position: absolute;
      bottom: -33px;
      right: -30px;
      background-color: #ef4c6b;
      content: "";
      opacity: 1;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg); }
    .index .s-part3 .block-area .block12 {
      display: block;
      position: absolute;
      bottom: -72px;
      right: 10px;
      background-color: #fff;
      content: "";
      opacity: 1;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg); }
    .index .s-part3 .block-area .block-cover {
      position: absolute;
      top: 0;
      left: 45px;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      z-index: -1;
      width: 400px;
      height: 400px;
      background: #fde89a; }
    .index .s-part3 .other-element-area {
      position: absolute;
      width: 100%;
      height: 100%;
      z-index: -1;
      top: 0;
      left: 0; }
      .index .s-part3 .other-element-area .img-byc1 {
        display: inline-block;
        width: 60px;
        height: auto;
        position: absolute;
        top: -174px;
        right: 24px;
        -webkit-transform: rotate(15deg);
        transform: rotate(15deg); }
        .index .s-part3 .other-element-area .img-byc1 img {
          width: 100%; }
      .index .s-part3 .other-element-area .img-byc2 {
        display: inline-block;
        width: 82px;
        height: auto;
        position: absolute;
        bottom: -120px;
        left: 30px;
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg); }
        .index .s-part3 .other-element-area .img-byc2 img {
          width: 100%; }
      .index .s-part3 .other-element-area .img-w1 {
        display: inline-block;
        width: 64px;
        height: auto;
        position: absolute;
        top: -140px;
        right: 76px;
        z-index: -1; }
        .index .s-part3 .other-element-area .img-w1 img {
          width: 100%; }
      .index .s-part3 .other-element-area .img-w2 {
        display: inline-block;
        width: 64px;
        height: auto;
        position: absolute;
        bottom: -44px;
        left: -10px;
        z-index: -1; }
        .index .s-part3 .other-element-area .img-w2 img {
          width: 100%; }
      .index .s-part3 .other-element-area .img-w3 {
        display: inline-block;
        width: 64px;
        height: auto;
        position: absolute;
        bottom: -112px;
        left: 102px;
        z-index: -1; }
        .index .s-part3 .other-element-area .img-w3 img {
          width: 100%; }
  .index .s-enjoy {
    position: relative;
    padding-bottom: 50px;
    margin-top: 12px;
    background: #fff; }
    .index .s-enjoy .bg-enjoy {
      position: absolute;
      top: -19px;
      width: 100%;
      height: 19px;
      background-image: url("/assets/images/sp/bg_ww.png");
      background-repeat: repeat-x; }
    .index .s-enjoy .title {
      text-align: center;
      display: inline-block;
      width: 75vw;
      height: auto;
      display: block;
      margin: 0 auto; }
      .index .s-enjoy .title img {
        width: 100%; }
    .index .s-enjoy .text {
      font-size: 11px;
      line-height: 1.5;
      margin-bottom: 37.25px;
      margin-top: 29.25px;
      letter-spacing: 0.025em; }
    .index .s-enjoy .img-enjoy {
      display: inline-block;
      width: 100%;
      height: auto; }
      .index .s-enjoy .img-enjoy img {
        width: 100%; }
  .index .s-different {
    position: relative;
    padding-bottom: 40px;
    background: #fff; }
    .index .s-different .title {
      position: relative;
      text-align: center;
      display: inline-block;
      width: 82vw;
      height: auto;
      display: block;
      margin: 0 auto; }
      .index .s-different .title img {
        width: 100%; }
      .index .s-different .title .img-title {
        position: relative;
        z-index: 2; }
      .index .s-different .title .img-new {
        position: absolute;
        left: 14px;
        top: -52px;
        height: 72px;
        z-index: 1;
        width: 72px; }
    .index .s-different .text {
      font-size: 11px;
      line-height: 1.5;
      margin-bottom: 42.25px;
      margin-top: 29.25px;
      letter-spacing: 0.025em;
      text-align: center;
      font-weight: 500; }
    .index .s-different .point-list {
      margin-bottom: 60px; }
      .index .s-different .point-list .item {
        position: relative;
        margin-top: 32px;
        padding-top: 24px;
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center; }
        .index .s-different .point-list .item:first-child {
          margin-top: 0; }
        .index .s-different .point-list .item .point-no {
          display: inline-block;
          width: 160px;
          height: auto;
          position: absolute;
          left: 20px;
          right: 0;
          top: 0;
          margin: auto; }
          .index .s-different .point-list .item .point-no img {
            width: 100%; }
        .index .s-different .point-list .item .thumb {
          width: 75vw;
          height: 75vw;
          border-radius: 50%; }
          .index .s-different .point-list .item .thumb.thumb1 {
            background-image: url("/assets/images/pc/img_new_point1.jpg");
            background-size: cover;
            background-repeat: no-repeat;
            background-position: 50% 50%; }
          .index .s-different .point-list .item .thumb.thumb2 {
            background-image: url("/assets/images/pc/img_new_point2.jpg");
            background-size: cover;
            background-repeat: no-repeat;
            background-position: 50% 50%; }
          .index .s-different .point-list .item .thumb.thumb3 {
            background-image: url("/assets/images/pc/img_new_point3.jpg");
            background-size: cover;
            background-repeat: no-repeat;
            background-position: 50% 50%; }
        .index .s-different .point-list .item .textarea {
          background: #fff;
          border-radius: 10px;
          width: 75vw;
          padding: 24px 0;
          -webkit-box-shadow: 4px 6px 10px rgba(0, 0, 0, 0.15);
          box-shadow: 4px 6px 10px rgba(0, 0, 0, 0.15);
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          margin-top: -40px; }
        .index .s-different .point-list .item .text {
          font-size: 16px;
          line-height: 1.5;
          margin-bottom: -4px;
          margin-top: -4px;
          letter-spacing: 0;
          font-weight: 700; }
          .index .s-different .point-list .item .text .strong {
            color: #e5004f;
            font-size: 19px;
            line-height: 1.5;
            margin-bottom: -4.75px;
            margin-top: -4.75px; }
    .index .s-different .more-btn {
      display: inline-block;
      width: 100%;
      height: auto;
      display: block;
      margin: 0 auto;
      border-radius: 10px;
      border: 3px solid #fad43c;
      overflow: hidden;
      margin-bottom: 120px; }
      .index .s-different .more-btn img {
        width: 100%; }
  .index .s-person {
    padding: 24px 0 166px;
    background: #fff; }
    .index .s-person .person {
      background: #eeeeee;
      width: 100%;
      padding: 40px 28px 36px;
      border-radius: 10px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
      flex-direction: column-reverse; }
    .index .s-person .person__introduction {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      margin-top: 30px; }
      .index .s-person .person__introduction .person-thumb {
        width: 45vw;
        height: 45vw;
        border-radius: 50%;
        background-image: url("/assets/images/pc/img_person.jpg");
        background-size: cover;
        background-repeat: no-repeat;
        background-position: 50% 50%; }
      .index .s-person .person__introduction .person-name {
        background: #fff;
        border-radius: 10px;
        width: 48vw;
        -webkit-box-shadow: 4px 6px 10px rgba(0, 0, 0, 0.15);
        box-shadow: 4px 6px 10px rgba(0, 0, 0, 0.15);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        margin-top: -12px;
        padding: 16px 0; }
        .index .s-person .person__introduction .person-name .text {
          font-size: 9px;
          line-height: 1.5;
          margin-bottom: -2.25px;
          margin-top: -2.25px;
          letter-spacing: 0;
          font-weight: 700;
          text-align: center; }
          .index .s-person .person__introduction .person-name .text .strong {
            font-size: 13px;
            line-height: 1.5;
            margin-bottom: -3.25px;
            margin-top: -3.25px; }
    .index .s-person .person__text {
      width: 100%; }
      .index .s-person .person__text .title {
        font-size: 15px;
        line-height: 1.5;
        margin-bottom: -3.75px;
        margin-top: -3.75px;
        font-weight: 700;
        text-align: center; }
      .index .s-person .person__text .text {
        font-size: 11px;
        line-height: 1.5;
        margin-bottom: -2.75px;
        margin-top: 21.25px;
        letter-spacing: 0.025em; } }

@media screen and (min-width: 768px) {
  .contact .s-message .message {
    font-size: 13px;
    line-height: 2;
    margin-bottom: 73.5px;
    margin-top: -6.5px;
    font-weight: 400; }
    .contact .s-message .message .link {
      color: #ff0000;
      text-decoration: underline; }
  .contact #vue-form {
    position: relative; }
  .contact .progress .progress-list > .item:nth-child(n+2) {
    margin-top: 48px; }
  .contact .progress .progress-list > .item .no {
    display: inline-block;
    font-family: "Roboto", sans-serif;
    font-weight: 700;
    -webkit-font-feature-settings: "palt" 1;
    font-feature-settings: "palt" 1;
    font-size: 21px;
    font-weight: 700;
    color: #ccc; }
  .contact .progress .progress-list > .item .text {
    display: inline-block;
    font-size: 16px;
    font-weight: 900;
    margin-left: 20px;
    color: #ccc; }
  .contact .progress .progress-list > .item.current .no {
    color: #ff0000; }
  .contact .progress .progress-list > .item.current .text {
    color: #181818; }
  .contact .form {
    padding-bottom: 10px; }
  .contact #form-complete .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative; }
  .contact #form-complete .block-body {
    width: 680px; }
    .contact #form-complete .block-body .title {
      font-size: 24px;
      font-weight: 900;
      letter-spacing: .02em; }
    .contact #form-complete .block-body .text {
      font-size: 13px;
      line-height: 2;
      margin-bottom: 49.5px;
      margin-top: 49.5px;
      font-weight: 400; }
    .contact #form-complete .block-body .btn {
      margin-top: 72px;
      font-size: 24px;
      letter-spacing: .02em;
      background: none;
      border: none;
      position: relative;
      padding-bottom: 4px;
      font-weight: 700; }
      .contact #form-complete .block-body .btn:before {
        position: absolute;
        bottom: 0;
        left: 5px;
        content: '';
        width: calc(100% - 10px);
        height: 2px;
        background: #181818;
        -webkit-transition: 0.1s ease-out;
        transition: 0.1s ease-out;
        -webkit-transform-origin: bottom;
        transform-origin: bottom; }
      .contact #form-complete .block-body .btn:hover:before {
        -webkit-transform: scaleY(2);
        transform: scaleY(2); }
  .contact #form-confirm .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
  .contact #form-confirm .table-group tr {
    width: 640px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 36px; }
    .contact #form-confirm .table-group tr:first-child {
      margin-top: 0; }
    .contact #form-confirm .table-group tr:nth-child(2) {
      margin-top: 56px; }
    .contact #form-confirm .table-group tr th {
      font-size: 14px;
      font-weight: 700;
      margin-bottom: 10px; }
      .contact #form-confirm .table-group tr th .form-require-label {
        font-size: 12px;
        color: #ff0000; }
    .contact #form-confirm .table-group tr td {
      font-size: 13px;
      font-weight: 400; }
  .contact #form-confirm .btn {
    margin-top: 72px;
    font-size: 24px;
    letter-spacing: .02em;
    background: none;
    border: none;
    position: relative;
    padding-bottom: 4px;
    font-weight: 700; }
    .contact #form-confirm .btn:before {
      position: absolute;
      bottom: 0;
      left: 5px;
      content: '';
      width: calc(100% - 10px);
      height: 2px;
      background: #181818;
      -webkit-transition: 0.1s ease-out;
      transition: 0.1s ease-out;
      -webkit-transform-origin: bottom;
      transform-origin: bottom; }
    .contact #form-confirm .btn:hover:before {
      -webkit-transform: scaleY(2);
      transform: scaleY(2); }
    .contact #form-confirm .btn.back {
      font-size: 19px;
      margin-left: 10px; }
  .contact #form-input .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 280px; }
  .contact #form-input .form-error-msg {
    font-size: 13px;
    font-weight: 400;
    color: #ff0000;
    margin-top: 8px; }
  .contact #form-input .btn {
    margin-top: 72px;
    font-size: 24px;
    letter-spacing: .02em;
    background: none;
    border: none;
    position: relative;
    padding-bottom: 4px;
    font-weight: 700; }
    .contact #form-input .btn:before {
      position: absolute;
      bottom: 0;
      left: 5px;
      content: '';
      width: calc(100% - 10px);
      height: 2px;
      background: #181818;
      -webkit-transition: 0.1s ease-out;
      transition: 0.1s ease-out;
      -webkit-transform-origin: bottom;
      transform-origin: bottom; }
    .contact #form-input .btn:hover:before {
      -webkit-transform: scaleY(2);
      transform: scaleY(2); }
  .contact #form-input .table-group tr {
    width: 640px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 36px; }
    .contact #form-input .table-group tr:first-child {
      width: 100%;
      margin-top: 0;
      border: 1px solid rgba(0, 0, 0, 0.2);
      padding: 40px;
      position: absolute;
      top: 125px;
      left: 0; }
      .contact #form-input .table-group tr:first-child .form-error-msg {
        position: absolute;
        left: 0;
        bottom: -20px; }
      .contact #form-input .table-group tr:first-child td .custom-input-checkbox > span {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center; }
        .contact #form-input .table-group tr:first-child td .custom-input-checkbox > span label {
          width: 310px !important; }
    .contact #form-input .table-group tr:nth-child(2) {
      margin-top: 0px; }
    .contact #form-input .table-group tr th {
      font-size: 14px;
      font-weight: 700;
      margin-bottom: 10px; }
      .contact #form-input .table-group tr th .form-require-label {
        font-size: 12px;
        color: #ff0000; }
    .contact #form-input .table-group tr td {
      font-size: 13px;
      font-weight: 400; }
    .contact #form-input .table-group tr .custom-input-checkbox input[type=checkbox] {
      font-size: 0;
      position: relative;
      left: -9999px;
      width: 0;
      height: 0;
      margin: 0;
      padding: 0;
      letter-spacing: 0; }
    .contact #form-input .table-group tr .custom-input-checkbox span {
      width: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      white-space: nowrap; }
    .contact #form-input .table-group tr .custom-input-checkbox label {
      width: 180px;
      position: relative;
      font-size: 12px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      padding-left: 30px;
      padding-bottom: 6px;
      cursor: pointer; }
      .contact #form-input .table-group tr .custom-input-checkbox label:nth-child(4) {
        margin-top: 14px; }
      .contact #form-input .table-group tr .custom-input-checkbox label .checkbox-label {
        margin-top: 6px; }
      .contact #form-input .table-group tr .custom-input-checkbox label:before {
        position: absolute;
        z-index: 1;
        top: 2px;
        left: 0;
        width: 20px;
        height: 20px;
        border: 2px;
        background: #fff !important;
        border: rgba(0, 0, 0, 0.2) 1px solid;
        content: ""; }
      .contact #form-input .table-group tr .custom-input-checkbox label:after {
        position: absolute;
        z-index: 2;
        top: 8px;
        left: 6px;
        width: 8px;
        height: 8px;
        border: 2px;
        background: #ff0000;
        content: "";
        -webkit-transition: 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
        transition: 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
        -webkit-transform: scale(0);
        transform: scale(0); }
      .contact #form-input .table-group tr .custom-input-checkbox label.isCheck:after {
        -webkit-transform: scale(1) !important;
        transform: scale(1) !important; }
  .contact .custom-input-text input,
  .contact .custom-input-email input,
  .contact .custom-input-tel input,
  .contact .custom-input-fax input {
    width: 100%;
    height: 56px;
    border: none;
    padding: 0 14px;
    font-size: 14px;
    border: 1px solid rgba(0, 0, 0, 0.2); }
    .contact .custom-input-text input::-webkit-input-placeholder,
    .contact .custom-input-email input::-webkit-input-placeholder,
    .contact .custom-input-tel input::-webkit-input-placeholder,
    .contact .custom-input-fax input::-webkit-input-placeholder {
      color: #e3e3e3;
      font-weight: 400;
      letter-spacing: 0.05em; }
    .contact .custom-input-text input::-moz-placeholder,
    .contact .custom-input-email input::-moz-placeholder,
    .contact .custom-input-tel input::-moz-placeholder,
    .contact .custom-input-fax input::-moz-placeholder {
      color: #e3e3e3;
      font-weight: 400;
      letter-spacing: 0.05em; }
    .contact .custom-input-text input:-ms-input-placeholder,
    .contact .custom-input-email input:-ms-input-placeholder,
    .contact .custom-input-tel input:-ms-input-placeholder,
    .contact .custom-input-fax input:-ms-input-placeholder {
      color: #e3e3e3;
      font-weight: 400;
      letter-spacing: 0.05em; }
    .contact .custom-input-text input::-ms-input-placeholder,
    .contact .custom-input-email input::-ms-input-placeholder,
    .contact .custom-input-tel input::-ms-input-placeholder,
    .contact .custom-input-fax input::-ms-input-placeholder {
      color: #e3e3e3;
      font-weight: 400;
      letter-spacing: 0.05em; }
    .contact .custom-input-text input::placeholder,
    .contact .custom-input-email input::placeholder,
    .contact .custom-input-tel input::placeholder,
    .contact .custom-input-fax input::placeholder {
      color: #e3e3e3;
      font-weight: 400;
      letter-spacing: 0.05em; }
  .contact .custom-input-textarea {
    margin-top: 2px; }
    .contact .custom-input-textarea textarea {
      font-size: 14px;
      line-height: 1.8;
      margin-bottom: -5.6px;
      margin-top: -5.6px;
      width: 100%;
      border: none;
      padding: 10px;
      border: 1px solid rgba(0, 0, 0, 0.2); }
      .contact .custom-input-textarea textarea::-webkit-input-placeholder {
        color: #e3e3e3;
        font-weight: 400;
        letter-spacing: 0.05em; }
      .contact .custom-input-textarea textarea::-moz-placeholder {
        color: #e3e3e3;
        font-weight: 400;
        letter-spacing: 0.05em; }
      .contact .custom-input-textarea textarea:-ms-input-placeholder {
        color: #e3e3e3;
        font-weight: 400;
        letter-spacing: 0.05em; }
      .contact .custom-input-textarea textarea::-ms-input-placeholder {
        color: #e3e3e3;
        font-weight: 400;
        letter-spacing: 0.05em; }
      .contact .custom-input-textarea textarea::placeholder {
        color: #e3e3e3;
        font-weight: 400;
        letter-spacing: 0.05em; } }

@media screen and (max-width: 767px) {
  .contact .s-message .message {
    font-size: 12px;
    line-height: 2;
    margin-bottom: 34px;
    margin-top: -6px;
    font-weight: 400; }
    .contact .s-message .message .link {
      color: #ff0000;
      text-decoration: underline; }
  .contact #vue-form {
    position: relative; }
  .contact .progress {
    position: absolute;
    top: -90px;
    left: 0; }
    .contact .progress .progress-list {
      width: calc(100vw - 40px);
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: distribute;
      justify-content: space-around; }
      .contact .progress .progress-list > .item .no {
        display: inline-block;
        font-family: "Roboto", sans-serif;
        font-weight: 700;
        -webkit-font-feature-settings: "palt" 1;
        font-feature-settings: "palt" 1;
        font-size: 21px;
        font-weight: 700;
        color: #ccc; }
      .contact .progress .progress-list > .item .text {
        display: inline-block;
        font-size: 16px;
        font-weight: 900;
        margin-left: 20px;
        color: #ccc; }
      .contact .progress .progress-list > .item.current .no {
        color: #ff0000; }
      .contact .progress .progress-list > .item.current .text {
        color: #181818; }
  .contact .form {
    padding-bottom: 10px; }
  .contact #form-complete .inner {
    margin-top: 96px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative; }
  .contact #form-complete .block-body {
    width: 100%; }
    .contact #form-complete .block-body .title {
      font-size: 22px;
      line-height: 1.25;
      margin-bottom: -2.75px;
      margin-top: -2.75px;
      font-weight: 900;
      letter-spacing: .02em; }
    .contact #form-complete .block-body .text {
      font-size: 13px;
      line-height: 2;
      margin-bottom: 49.5px;
      margin-top: 49.5px;
      font-weight: 400; }
    .contact #form-complete .block-body .btn {
      margin-top: 72px;
      font-size: 24px;
      letter-spacing: .02em;
      background: none;
      border: none;
      position: relative;
      padding-bottom: 6px; }
      .contact #form-complete .block-body .btn:before {
        position: absolute;
        bottom: 0;
        left: 5px;
        content: '';
        width: calc(100% - 10px);
        height: 2px;
        background: #181818; }
  .contact #form-confirm .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 96px; }
  .contact #form-confirm .table-group tr {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 36px; }
    .contact #form-confirm .table-group tr:first-child {
      margin-top: 0; }
    .contact #form-confirm .table-group tr:nth-child(2) {
      margin-top: 56px; }
    .contact #form-confirm .table-group tr th {
      font-size: 14px;
      font-weight: 700;
      margin-bottom: 10px; }
      .contact #form-confirm .table-group tr th .form-require-label {
        font-size: 12px;
        color: #ff0000; }
    .contact #form-confirm .table-group tr td {
      font-size: 13px;
      font-weight: 400; }
  .contact #form-confirm .btn {
    margin-top: 72px;
    font-size: 24px;
    letter-spacing: .02em;
    background: none;
    border: none;
    position: relative;
    padding-bottom: 6px; }
    .contact #form-confirm .btn:before {
      position: absolute;
      bottom: 0;
      left: 5px;
      content: '';
      width: calc(100% - 10px);
      height: 1px;
      background: #181818; }
    .contact #form-confirm .btn:hover:before {
      height: 3px; }
    .contact #form-confirm .btn.back {
      font-size: 19px;
      margin-left: 10px; }
  .contact #form-input .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 300px;
    position: relative; }
  .contact #form-input .form-error-msg {
    font-size: 13px;
    font-weight: 400;
    color: #ff0000;
    margin-top: 8px; }
  .contact #form-input .btn {
    margin-top: 72px;
    font-size: 24px;
    letter-spacing: .02em;
    background: none;
    border: none;
    position: relative;
    padding-bottom: 6px;
    font-weight: 700; }
    .contact #form-input .btn:before {
      position: absolute;
      bottom: 0;
      left: 5px;
      content: '';
      width: calc(100% - 10px);
      height: 1px;
      background: #181818; }
  .contact #form-input .table-group tr {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 36px; }
    .contact #form-input .table-group tr:first-child {
      width: 100%;
      margin-top: 0;
      border: 1px solid rgba(0, 0, 0, 0.2);
      padding: 32px;
      position: absolute;
      top: -272px;
      left: 0; }
      .contact #form-input .table-group tr:first-child .form-error-msg {
        position: absolute;
        left: 0;
        bottom: -20px; }
      .contact #form-input .table-group tr:first-child td .custom-input-checkbox > span {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center; }
        .contact #form-input .table-group tr:first-child td .custom-input-checkbox > span label {
          width: 310px !important;
          margin-bottom: 0; }
          .contact #form-input .table-group tr:first-child td .custom-input-checkbox > span label .checkbox-label {
            margin-top: 6px; }
    .contact #form-input .table-group tr:nth-child(2) {
      margin-top: 0px; }
    .contact #form-input .table-group tr th {
      font-size: 14px;
      font-weight: 700;
      margin-bottom: 10px; }
      .contact #form-input .table-group tr th .form-require-label {
        font-size: 12px;
        color: #ff0000; }
    .contact #form-input .table-group tr td {
      font-size: 13px;
      font-weight: 400; }
    .contact #form-input .table-group tr .custom-input-checkbox input[type=checkbox] {
      font-size: 0;
      position: relative;
      left: -9999px;
      width: 0;
      height: 0;
      margin: 0;
      padding: 0;
      letter-spacing: 0; }
    .contact #form-input .table-group tr .custom-input-checkbox span {
      width: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
    .contact #form-input .table-group tr .custom-input-checkbox label {
      width: 180px;
      position: relative;
      font-size: 12px;
      line-height: 1.5;
      margin-bottom: 17px;
      margin-top: -3px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      padding-left: 30px;
      cursor: pointer; }
      .contact #form-input .table-group tr .custom-input-checkbox label .checkbox-label {
        margin-top: 15px; }
      .contact #form-input .table-group tr .custom-input-checkbox label:before {
        position: absolute;
        z-index: 1;
        top: 14px;
        left: 0;
        width: 20px;
        height: 20px;
        border: 2px;
        background: #fff !important;
        border: rgba(0, 0, 0, 0.2) 1px solid;
        content: ""; }
      .contact #form-input .table-group tr .custom-input-checkbox label:after {
        position: absolute;
        z-index: 2;
        top: 20px;
        left: 6px;
        width: 8px;
        height: 8px;
        border: 2px;
        background: #ff0000;
        content: "";
        -webkit-transition: 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
        transition: 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
        -webkit-transform: scale(0);
        transform: scale(0); }
      .contact #form-input .table-group tr .custom-input-checkbox label.isCheck:after {
        -webkit-transform: scale(1) !important;
        transform: scale(1) !important; }
  .contact .custom-input-text input,
  .contact .custom-input-email input,
  .contact .custom-input-tel input,
  .contact .custom-input-fax input {
    width: 100%;
    height: 56px;
    border: none;
    padding: 0 14px;
    font-size: 14px;
    border: 1px solid rgba(0, 0, 0, 0.2); }
    .contact .custom-input-text input::-webkit-input-placeholder,
    .contact .custom-input-email input::-webkit-input-placeholder,
    .contact .custom-input-tel input::-webkit-input-placeholder,
    .contact .custom-input-fax input::-webkit-input-placeholder {
      color: #e3e3e3;
      font-weight: 400;
      letter-spacing: 0.05em; }
    .contact .custom-input-text input::-moz-placeholder,
    .contact .custom-input-email input::-moz-placeholder,
    .contact .custom-input-tel input::-moz-placeholder,
    .contact .custom-input-fax input::-moz-placeholder {
      color: #e3e3e3;
      font-weight: 400;
      letter-spacing: 0.05em; }
    .contact .custom-input-text input:-ms-input-placeholder,
    .contact .custom-input-email input:-ms-input-placeholder,
    .contact .custom-input-tel input:-ms-input-placeholder,
    .contact .custom-input-fax input:-ms-input-placeholder {
      color: #e3e3e3;
      font-weight: 400;
      letter-spacing: 0.05em; }
    .contact .custom-input-text input::-ms-input-placeholder,
    .contact .custom-input-email input::-ms-input-placeholder,
    .contact .custom-input-tel input::-ms-input-placeholder,
    .contact .custom-input-fax input::-ms-input-placeholder {
      color: #e3e3e3;
      font-weight: 400;
      letter-spacing: 0.05em; }
    .contact .custom-input-text input::placeholder,
    .contact .custom-input-email input::placeholder,
    .contact .custom-input-tel input::placeholder,
    .contact .custom-input-fax input::placeholder {
      color: #e3e3e3;
      font-weight: 400;
      letter-spacing: 0.05em; }
  .contact .custom-input-textarea {
    margin-top: 2px; }
    .contact .custom-input-textarea textarea {
      font-size: 14px;
      line-height: 1.8;
      margin-bottom: -5.6px;
      margin-top: -5.6px;
      width: 100%;
      border: none;
      padding: 10px;
      border: 1px solid rgba(0, 0, 0, 0.2); }
      .contact .custom-input-textarea textarea::-webkit-input-placeholder {
        color: #e3e3e3;
        font-weight: 400;
        letter-spacing: 0.05em; }
      .contact .custom-input-textarea textarea::-moz-placeholder {
        color: #e3e3e3;
        font-weight: 400;
        letter-spacing: 0.05em; }
      .contact .custom-input-textarea textarea:-ms-input-placeholder {
        color: #e3e3e3;
        font-weight: 400;
        letter-spacing: 0.05em; }
      .contact .custom-input-textarea textarea::-ms-input-placeholder {
        color: #e3e3e3;
        font-weight: 400;
        letter-spacing: 0.05em; }
      .contact .custom-input-textarea textarea::placeholder {
        color: #e3e3e3;
        font-weight: 400;
        letter-spacing: 0.05em; } }

.u-text-indent {
  text-indent: 1em !important; }

.u-text-note {
  margin-left: 1em !important;
  text-indent: -1em !important; }

.u-text-nowrap {
  white-space: nowrap !important; }

.u-text-breakword {
  word-wrap: break-word !important;
  overflow-wrap: break-word !important; }

.u-text-justify {
  text-align: justify !important;
  text-justify: inter-ideograph !important; }

.u-text-none {
  text-transform: none !important; }

.u-text-lowercase {
  text-transform: lowercase !important; }

.u-text-uppercase {
  text-transform: uppercase !important; }

.u-text-capitalize {
  text-transform: capitalize !important; }

.u-text-smallcaps {
  font-variant: small-caps !important; }

.u-text-vertical {
  -webkit-writing-mode: vertical-rl !important;
  -ms-writing-mode: tb-rl !important;
  writing-mode: vertical-rl !important;
  -webkit-text-orientation: mixed !important;
  text-orientation: mixed !important; }

.u-text-vertical--upright {
  -webkit-text-orientation: upright !important;
  text-orientation: upright !important; }

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

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

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

.u-text-top {
  vertical-align: top !important; }

.u-text-middle {
  vertical-align: middle !important; }

.u-text-bottom {
  vertical-align: bottom !important; }

.u-mt-zero {
  margin-top: 0 !important; }

.u-mb-zero {
  margin-bottom: 0 !important; }

.u-ml-zero {
  margin-left: 0 !important; }

.u-mr-zero {
  margin-right: 0 !important; }

.u-align-left {
  display: block !important;
  margin-left: 0 !important;
  margin-right: auto !important; }

.u-align-center {
  display: block !important;
  margin-right: auto !important;
  margin-left: auto !important; }

.u-align-right {
  display: block !important;
  margin-left: auto !important;
  margin-right: 0 !important; }

@media screen and (min-width: 768px) {
  .u-sp-only {
    display: none !important; } }

@media screen and (max-width: 767px) {
  .u-pc-only {
    display: none !important; } }
