@font-face {
  font-family: 'theano-didot';
  font-weight: normal;
  src: url("../font/TheanoDidot-Regular.ttf");
}

@font-face {
  font-family: 'code-bold';
  font-weight: normal;
  src: url("../font/code-bold.otf");
}

@font-face {
  font-family: 'didot';
  font-weight: 100;
  src: url("../font/Didot-Regular.ttf");
}

@font-face {
  font-family: 'koburina';
  font-weight: 300;
  src: url("../font/koburina_StdN_W3.otf");
}




/*!
 * Bootstrap Reboot v4.5.3 (https://getbootstrap.com/)
 * Copyright 2011-2020 The Bootstrap Authors
 * Copyright 2011-2020 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
 */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-text-size-adjust: 100%;
}

article,
aside,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
  display: block;
}

body {
  background-color: #fff;
  color: #212529;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  margin: 0;
  text-align: left;
}

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}

hr {
  -webkit-box-sizing: content-box;
     -moz-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
  overflow: visible;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-bottom: 0;
  margin-top: 0;
}

p {
  margin-bottom: 0;
  margin-top: 0;
}

abbr[title],
abbr[data-original-title] {
  border-bottom: 0;
  cursor: help;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline;
  -moz-text-decoration: underline dotted;
       text-decoration: underline dotted;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
}

address {
  font-style: normal;
  line-height: inherit;
  margin-bottom: 1rem;
}

ol,
ul,
dl {
  margin-bottom: 1rem;
  margin-top: 0;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: 700;
}

dd {
  margin-bottom: 0.5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  background-color: transparent;
  text-decoration: none;
}

a:not([href]):not([class]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-bottom: 1rem;
  margin-top: 0;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0 0 1rem;
}

img {
  max-width: 100%;
  border-style: none;
  vertical-align: middle;
}

ul,
ol {
  list-style: none;
  padding-left: 0;
}

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

caption {
  caption-side: bottom;
  color: #6c757d;
  padding-bottom: 0.75rem;
  padding-top: 0.75rem;
  text-align: left;
}

th {
  text-align: inherit;
  text-align: -webkit-match-parent;
}

label {
  display: inline-block;
  margin-bottom: 0.5rem;
}

button {
  -webkit-border-radius: 0;
     -moz-border-radius: 0;
          border-radius: 0;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  margin: 0;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

[role="button"] {
  cursor: pointer;
}

select {
  word-wrap: normal;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

input[type="radio"],
input[type="checkbox"] {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  border: 0;
  margin: 0;
  min-width: 0;
  padding: 0;
}

legend {
  color: inherit;
  display: block;
  font-size: 1.5rem;
  line-height: inherit;
  margin-bottom: 0.5rem;
  max-width: 100%;
  padding: 0;
  white-space: normal;
  width: 100%;
}

progress {
  vertical-align: baseline;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  -webkit-appearance: none;
  outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

output {
  display: inline-block;
}

summary {
  cursor: pointer;
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}
/*-----------------------------------------------
@keyframes
------------------------------------------------*/
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@-moz-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
  }
}

@-moz-keyframes fadeInUp {
  0% {
    opacity: 0;
    -moz-transform: translateY(20px);
         transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -moz-transform: none;
         transform: none;
  }
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
       -moz-transform: translateY(20px);
         -o-transform: translateY(20px);
            transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
       -moz-transform: none;
         -o-transform: none;
            transform: none;
  }
}

.fadeInUp {
  opacity: 0;
  -webkit-transform: translateY(20px);
     -moz-transform: translateY(20px);
      -ms-transform: translateY(20px);
       -o-transform: translateY(20px);
          transform: translateY(20px);
  -webkit-animation-name: fadeInUp;
     -moz-animation-name: fadeInUp;
          animation-name: fadeInUp;
  -webkit-animation-fill-mode: forwards;
     -moz-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: cubic-bezier(0.545, 0.08, 0.52, 0.975);
     -moz-animation-timing-function: cubic-bezier(0.545, 0.08, 0.52, 0.975);
          animation-timing-function: cubic-bezier(0.545, 0.08, 0.52, 0.975);
}

@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@-moz-keyframes pulse {
  0% {
    -moz-transform: scale(1);
         transform: scale(1);
  }
  50% {
    -moz-transform: scale(1.1);
         transform: scale(1.1);
  }
  100% {
    -moz-transform: scale(1);
         transform: scale(1);
  }
}

@keyframes pulse {
  0% {
    -webkit-transform: scale(1);
       -moz-transform: scale(1);
         -o-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.1);
       -moz-transform: scale(1.1);
         -o-transform: scale(1.1);
            transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
       -moz-transform: scale(1);
         -o-transform: scale(1);
            transform: scale(1);
  }
}

@-webkit-keyframes zoomOut {
  0% {
    -webkit-transform: scale3d(1.2, 1.2, 1.2);
            transform: scale3d(1.2, 1.2, 1.2);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
}

@-moz-keyframes zoomOut {
  0% {
    -moz-transform: scale3d(1.2, 1.2, 1.2);
         transform: scale3d(1.2, 1.2, 1.2);
  }
  100% {
    -moz-transform: scale3d(1, 1, 1);
         transform: scale3d(1, 1, 1);
  }
}

@keyframes zoomOut {
  0% {
    -webkit-transform: scale3d(1.2, 1.2, 1.2);
       -moz-transform: scale3d(1.2, 1.2, 1.2);
            transform: scale3d(1.2, 1.2, 1.2);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
       -moz-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
}

@-webkit-keyframes slideOutLeft {
  0% {
  }
  100% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    pointer-events: none;
  }
}

@-moz-keyframes slideOutLeft {
  0% {
  }
  100% {
    -moz-transform: translateX(100%);
         transform: translateX(100%);
    pointer-events: none;
  }
}

@keyframes slideOutLeft {
  0% {
  }
  100% {
    -webkit-transform: translateX(100%);
       -moz-transform: translateX(100%);
         -o-transform: translateX(100%);
            transform: translateX(100%);
    pointer-events: none;
  }
}

@-webkit-keyframes slideOutLeft02 {
  0% {
    width: 100%;
  }
  100% {
    width: 0;
  }
}

@-moz-keyframes slideOutLeft02 {
  0% {
    width: 100%;
  }
  100% {
    width: 0;
  }
}

@keyframes slideOutLeft02 {
  0% {
    width: 100%;
  }
  100% {
    width: 0;
  }
}

@-webkit-keyframes borderExtend {
  0% {
    height: 0;
  }
  100% {
    height: 50px;
  }
}

@-moz-keyframes borderExtend {
  0% {
    height: 0;
  }
  100% {
    height: 50px;
  }
}

@keyframes borderExtend {
  0% {
    height: 0;
  }
  100% {
    height: 50px;
  }
}

/*====================================================================
contentCenter
====================================================================*/
.contentCenter {
  width: 860px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
}

@media screen and (max-width: 1060px) {
  .contentCenter {
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .contentCenter {
    padding-left: 20px;
    padding-right: 20px;
    width: 100%;
  }
}

/*====================================================================
siteHeader
====================================================================*/
.siteHeader {
  width: 100%;
  padding: 30px 65px 15px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
     -moz-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: fixed;
  top: 0;
  left: 0;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  z-index: 100;
}

.siteHeader.is-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  .siteHeader.is-hidden {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
  }
}

@media screen and (max-width: 1060px) {
  .siteHeader {
    padding: 30px 30px 15px;
  }
}

@media screen and (max-width: 768px) {
  .siteHeader {
    padding: 15px 0 15px 20px;
  }
}

.siteHeader__logo {
  width: 212px;
  height: 84px;
  position: relative;
  font-size: 0;
  overflow: hidden;
  text-indent: -9999px;
  background: url("../images/common/header_logo.png") no-repeat center/contain;
  z-index: 1;
}

@media screen and (max-width: 1060px) {
  .siteHeader__logo {
    width: 180px;
    height: 70px;
  }
}

@media screen and (max-width: 768px) {
  .siteHeader__logo {
    width: 106px;
    height: 42px;
  }
}

.siteHeader__navList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
}

.siteHeader__navItem {
  cursor: pointer;
}

.siteHeader__navItem.hasChild {
  position: relative;
}

@media screen and (min-width: 769px) {
  .siteHeader__navItem.hasChild:hover [class*="__navItemChildList"] {
    opacity: 1;
    visibility: visible;
  }
}

.siteHeader__navItemLink {
  padding: 15px 25px;
  display: block;
  cursor: pointer;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

@media screen and (max-width: 1060px) {
  .siteHeader__navItemLink {
    padding: 15px 20px;
  }
}

.siteHeader__navItemLinkText {
  position: relative;
  color: #231815;
  font-size: 1.5rem;
  font-family: "Helvetica Neue", sans-serif;
  letter-spacing: 0.1em;
  cursor: pointer;
}

@media all and (-ms-high-contrast: none) {
  .siteHeader__navItemLinkText {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  }
}

.siteHeader__navItemLinkText::before {
  content: '';
  width: 10px;
  height: 10px;
  display: block;
  position: absolute;
  top: 4px;
  left: -5px;
  -webkit-transform: translate(-100%, -100%);
     -moz-transform: translate(-100%, -100%);
      -ms-transform: translate(-100%, -100%);
       -o-transform: translate(-100%, -100%);
          transform: translate(-100%, -100%);
  -webkit-border-radius: 100%;
     -moz-border-radius: 100%;
          border-radius: 100%;
  background-color: #942a00;
  opacity: 0;
  cursor: pointer;
}

@media screen and (min-width: 769px) {
  .siteHeader__navItem:hover .siteHeader__navItemLinkText::before {
    opacity: 1;
  }
}

.siteHeader__navItemChildList {
  padding: 15px 0;
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-transform: translateY(100%);
     -moz-transform: translateY(100%);
      -ms-transform: translateY(100%);
       -o-transform: translateY(100%);
          transform: translateY(100%);
  background: rgba(255, 255, 255, 0.1);
  cursor: pointer;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  opacity: 0;
  visibility: hidden;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

@media screen and (max-width: 1060px) {
  .siteHeader__navItemChildList {
    padding: 15px 0;
  }
}

.siteHeader__navItemChildLink {
  padding: 8px 50px;
  display: block;
  cursor: pointer;
}

@media screen and (max-width: 1060px) {
  .siteHeader__navItemChildLink {
    padding: 8px 20px;
  }
}

.siteHeader__navItemChildLinkText {
  position: relative;
  color: #231815;
  font-size: 1.5rem;
  font-family: "Helvetica Neue", sans-serif;
  letter-spacing: 0.1em;
  cursor: pointer;
}

@media all and (-ms-high-contrast: none) {
  .siteHeader__navItemChildLinkText {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  }
}

.siteHeader__navItemChildLinkText::before {
  content: '';
  width: 10px;
  height: 10px;
  display: block;
  position: absolute;
  top: 4px;
  left: -5px;
  -webkit-transform: translate(-100%, -100%);
     -moz-transform: translate(-100%, -100%);
      -ms-transform: translate(-100%, -100%);
       -o-transform: translate(-100%, -100%);
          transform: translate(-100%, -100%);
  -webkit-border-radius: 100%;
     -moz-border-radius: 100%;
          border-radius: 100%;
  background-color: #942a00;
  opacity: 0;
  cursor: pointer;
}

@media screen and (min-width: 769px) {
  .siteHeader__navItemChildLink:hover .siteHeader__navItemChildLinkText::before {
    opacity: 1;
  }
}

@media screen and (max-width: 768px) {
  .siteHeader__navBtn {
    width: 70px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
  }
}

.siteHeader__navBtn::before {
  content: "";
  width: 1px;
  height: 1px;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
     -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: #231815;
  -webkit-border-radius: 100%;
     -moz-border-radius: 100%;
          border-radius: 100%;
  -webkit-transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

@media screen and (max-width: 768px) {
  .siteHeader__navBtnDot {
    width: 5px;
    height: 5px;
    display: block;
    background: #231815;
    -webkit-border-radius: 100%;
       -moz-border-radius: 100%;
            border-radius: 100%;
    position: absolute;
    top: 50%;
    -webkit-transition: left 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s, background 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.3s, -webkit-transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s;
    transition: left 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s, background 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.3s, -webkit-transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s;
    -o-transition: left 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s, background 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.3s, -o-transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s;
    -moz-transition: left 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s, transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s, background 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.3s, -moz-transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s;
    transition: left 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s, transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s, background 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.3s;
    transition: left 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s, transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s, background 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.3s, -webkit-transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s, -moz-transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s, -o-transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s;
  }
}

@media screen and (max-width: 768px) {
  .siteHeader__navBtnDot:nth-child(1) {
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
         -o-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 30%;
  }
}

@media screen and (max-width: 768px) {
  .siteHeader__navBtnDot:nth-child(2) {
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
       -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
         -o-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
}

@media screen and (max-width: 768px) {
  .siteHeader__navBtnDot:nth-child(3) {
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
         -o-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 63%;
  }
}

.siteHeader__navSp {
  width: 100%;
  height: 100%;
  padding: 70px 20px;
  position: fixed;
  top: 0;
  left: 0;
  background: #000;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  -webkit-transition: all 0.5s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.5s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.5s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.5s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  overflow-y: scroll;
}

.siteHeader__navSpPageList {
  margin-top: 50px;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: start;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: start;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.siteHeader__navSpPageItem {
  width: 100%;
  opacity: 0;
  -webkit-transform: translateY(40px);
     -moz-transform: translateY(40px);
      -ms-transform: translateY(40px);
       -o-transform: translateY(40px);
          transform: translateY(40px);
  -webkit-transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.6s;
  -o-transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.6s;
  -moz-transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.6s;
  transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.6s;
}

.siteHeader__navSpPageLink {
  padding: 15px;
  display: block;
  color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
  font-family: "code-bold", sans-serif;
  letter-spacing: 0.38em;
  text-align: center;
}

.aco__dots{
  color: #942a00;
  font-size: 5px;
  vertical-align: super;
}


.child{
  display: none;
}

.siteHeader__navSpPageList__aco__itemArea{
  padding: 5px;
  display: block;
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  font-family: "code-bold", sans-serif;
  letter-spacing: 0.38em;
  text-align: center;
}







.siteHeader__navBtn.is-active [class*="__navBtnDot"] {
  background: #942a00;
  -webkit-transition: left 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s, background 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.2s, -webkit-transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: left 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s, background 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.2s, -webkit-transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: left 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s, background 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.2s, -o-transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: left 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s, transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s, background 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.2s, -moz-transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: left 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s, transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s, background 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.2s;
  transition: left 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s, transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s, background 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.2s, -webkit-transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s, -moz-transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s, -o-transform 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.siteHeader__navBtn.is-active [class*="__navBtnDot"]:nth-child(1), .siteHeader__navBtn.is-active [class*="__navBtnDot"]:nth-child(3) {
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
     -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.siteHeader__navBtn.is-active::before {
  width: 80%;
  height: 80%;
  background: #1a1a1a;
  -webkit-transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.3s;
  -o-transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.3s;
  -moz-transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.3s;
  transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.3s;
}

.siteHeader__navSp.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  -webkit-transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s;
  -o-transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s;
  -moz-transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s;
  transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.4s;
}

.siteHeader__navSp.is-active [class*="__navSpPageItem"] {
  opacity: 1;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
}

.siteHeader__navSp.is-active [class*="__navSpPageItem"]:nth-child(1) {
  margin-top: -3rem;
  -webkit-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.7s;
  -o-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.7s;
  -moz-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.7s;
  transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.7s;
}

.siteHeader__navSp.is-active [class*="__navSpPageItem"]:nth-child(2) {
  -webkit-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.8s;
  -o-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.8s;
  -moz-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.8s;
  transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.8s;
}

.siteHeader__navSp.is-active [class*="__navSpPageItem"]:nth-child(3) {
  -webkit-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.9s;
  -o-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.9s;
  -moz-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.9s;
  transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.9s;
}

.siteHeader__navSp.is-active [class*="__navSpPageItem"]:nth-child(4) {
  -webkit-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1s;
  -o-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1s;
  -moz-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1s;
  transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1s;
}

.siteHeader__navSp.is-active [class*="__navSpPageItem"]:nth-child(5) {
  -webkit-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1.1s;
  -o-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1.1s;
  -moz-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1.1s;
  transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1.1s;
}

.siteHeader__navSp.is-active [class*="__navSpPageItem"]:nth-child(6) {
  -webkit-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1.2s;
  -o-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1.2s;
  -moz-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1.2s;
  transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1.2s;
}

.siteHeader__navSp.is-active [class*="__navSpPageItem"]:nth-child(7) {
  -webkit-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1.4s;
  -o-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1.4s;
  -moz-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1.4s;
  transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1.4s;
}

.siteHeader__navSp.is-active [class*="__navSpPageItem"]:nth-child(8) {
  -webkit-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1.6s;
  -o-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1.6s;
  -moz-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1.6s;
  transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 1.6s;
}

.siteHeader__logo.is-active {
  -webkit-transition: all 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.5s;
  -o-transition: all 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.5s;
  -moz-transition: all 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.5s;
  transition: all 0.2s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.5s;
  background-image: url("../images/common/header_logo-white.png");
}

/*====================================================================
siteFooter
====================================================================*/
.siteFooter {
  padding: 80px 65px 15px;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

@media screen and (max-width: 1060px) {
  .siteFooter {
    padding: 80px 30px 15px;
  }
}

@media screen and (max-width: 768px) {
  .siteFooter {
    padding: 50px 20px 20px;
  }
}

.topPage .siteFooter {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
     -moz-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.siteFooter__contactLinkArea {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.siteFooter__contactLink {
  color: #231815;
  font-size: 6.5rem;
  font-family: "code-bold", sans-serif;
  text-align: center;
  letter-spacing: 0.38em;
}

@media screen and (max-width: 768px) {
  .topPage .siteFooter__contactLink {
    padding-left: 1.5rem;
  }
}

@media screen and (max-width: 1060px) {
  .siteFooter__contactLink {
    font-size: 5rem;
  }
}

@media screen and (max-width: 768px) {
  .siteFooter__contactLink {
    font-size: 4rem;
  }
}

.siteFooter__logo {
  width: 16vw;
  margin: 80px auto 0;
  display: block;
}

@media screen and (min-width: 769px) {
  .siteFooter__logo {
    -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  }
}

@media screen and (min-width: 769px) {
  .siteFooter__logo:hover {
    opacity: 0.6;
  }
}

@media screen and (max-width: 768px) {
  .siteFooter__logo {
    width: 32vw;
    margin-top: 40px;
  }
}

.topPage .siteFooter__logo {
  pointer-events: none;
  -webkit-transition: none;
  -o-transition: none;
  -moz-transition: none;
  transition: none;
  -webkit-animation: none;
     -moz-animation: none;
          animation: none;
}

.topPage .siteFooter__logo img {
  opacity: 0;
}

.siteFooter__pageList {
  margin-top: 100px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 1200px) and (min-width: 768px) {
  .topPage .siteFooter__pageList {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.siteFooter__pageItem {
  margin-left: 35px;
}

.siteFooter__pageItem:nth-child(1) {
  margin-left: 0;
}

.topPage .siteFooter__pageItem:last-child {
  display: none;
}

.siteFooter__pageLink {
  display: block;
  color: #231815;
  font-size: 2.6rem;
  font-family: "code-bold", sans-serif;
  letter-spacing: 0.38em;
}

@media screen and (max-width: 1200px) and (min-width: 768px) {
  .siteFooter__pageLink {
    font-size: 3.2vw;
  }
}

.topPage .siteFooter__pageLink {
  font-size: 4rem;
}

.siteFooter__gridArea {
  margin-top: 90px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
     -moz-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
     -moz-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

@media screen and (max-width: 1060px) {
  .siteFooter__gridArea {
    margin-top: 40px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.topPage .siteFooter__gridArea {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
     -moz-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}

.siteFooter__gridAreaLeftArea {
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

@media screen and (max-width: 1060px) {
  .siteFooter__gridAreaLeftArea {
    width: 100%;
  }
}

.siteFooter__gridAreaLeftAreaText {
  font-size: 1.8rem;
  font-family: "Helvetica Neue", sans-serif;
  line-height: 1.7;
  letter-spacing: 0.075em;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

@media screen and (max-width: 1060px) {
  .siteFooter__gridAreaLeftAreaText {
    font-size: 1.5rem;
  }
  .siteFooter__gridAreaLeftAreaText br {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  .siteFooter__gridAreaLeftAreaText {
    font-size: 1.4rem;
    text-align: center;
  }
}

@media all and (-ms-high-contrast: none) {
  .siteFooter__gridAreaLeftAreaText {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  }
}

.siteFooter__gridAreaRightArea {
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

@media screen and (max-width: 1060px) {
  .siteFooter__gridAreaRightArea {
    width: 100%;
    margin-top: 30px;
  }
}

.siteFooter__gridAreaRightAreaSnsList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
     -moz-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

@media screen and (max-width: 1060px) {
  .siteFooter__gridAreaRightAreaSnsList {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.siteFooter__gridAreaRightAreaSnsItem {
  width: 29px;
  margin-left: 50px;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.siteFooter__gridAreaRightAreaSnsItem:nth-child(1) {
  margin-left: 0;
}

@media screen and (max-width: 1060px) {
  .siteFooter__gridAreaRightAreaSnsItem {
    margin-left: 20px;
  }
}

@media screen and (max-width: 768px) {
  .siteFooter__gridAreaRightAreaSnsItem {
    margin-left: 50px;
  }
}

.siteFooter__gridAreaRightAreaSnsLink {
  display: block;
}

@media screen and (min-width: 769px) {
  .siteFooter__gridAreaRightAreaSnsLink {
    -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  }
}

@media screen and (min-width: 769px) {
  .siteFooter__gridAreaRightAreaSnsLink:hover {
    -webkit-transform: scale(1.5);
       -moz-transform: scale(1.5);
        -ms-transform: scale(1.5);
         -o-transform: scale(1.5);
            transform: scale(1.5);
  }
}

.siteFooter__copy {
  margin-top: 80px;
  font-size: 1.2rem;
  font-family: "Helvetica Neue", sans-serif;
  letter-spacing: 0.075em;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

@media screen and (max-width: 1060px) {
  .siteFooter__copy {
    margin-top: 40px;
    text-align: center;
  }
}

@media all and (-ms-high-contrast: none) {
  .siteFooter__copy {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  }
}

.topPage .siteFooter__copy {
  -webkit-box-ordinal-group: 5;
  -webkit-order: 4;
     -moz-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4;
}

/*====================================================================
lowerPageFv
====================================================================*/
.lowerPageFv {
  height: -webkit-calc(100vh - 108px);
  height: -moz-calc(100vh - 108px);
  height: calc(100vh - 108px);
  padding: 115px 65px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  overflow: hidden;
}

.lowerPageFv__title {
  padding: 3px;
  position: relative;
  overflow: hidden;
}

.lowerPageFv__titleText {
  display: block;
  font-size: 8rem;
  font-family: "code-bold", sans-serif;
  letter-spacing: 0.38em;
  text-indent: 0.38em;
  text-align: center;
}

.cgPage .lowerPageFv__titleText {
  padding-left: .5em;
}

@media screen and (max-width: 768px) {
  .lowerPageFv__titleText {
    font-size: 4rem;
  }
}

.lowerPageFv__titleShadow {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  background: #fff;
  -webkit-animation: slideOutLeft 0.6s 1s cubic-bezier(0.545, 0.08, 0.52, 0.975) forwards;
     -moz-animation: slideOutLeft 0.6s 1s cubic-bezier(0.545, 0.08, 0.52, 0.975) forwards;
          animation: slideOutLeft 0.6s 1s cubic-bezier(0.545, 0.08, 0.52, 0.975) forwards;
}

.lowerPageFv__desc {
  position: relative;
  text-align: center;
  overflow: hidden;
}

.lowerPageFv__descText {
  font-size: 1.6rem;
  font-family: "Helvetica Neue", sans-serif;
  font-weight: 300;
  letter-spacing: 0.075em;
}

@media screen and (max-width: 768px) {
  .lowerPageFv__descText {
    font-size: 1.3rem;
  }
}

@media all and (-ms-high-contrast: none) {
  .lowerPageFv__descText {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  }
}

.lowerPageFv__descShadow {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  background: #fff;
  -webkit-animation: slideOutLeft 0.6s 1.5s cubic-bezier(0.545, 0.08, 0.52, 0.975) forwards;
     -moz-animation: slideOutLeft 0.6s 1.5s cubic-bezier(0.545, 0.08, 0.52, 0.975) forwards;
          animation: slideOutLeft 0.6s 1.5s cubic-bezier(0.545, 0.08, 0.52, 0.975) forwards;
}

.lowerPageFv__scrollBar {
  padding: 60px 30px 30px;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
     -moz-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
       -o-transform: translateX(-50%);
          transform: translateX(-50%);
  color: #231815;
  font-size: 1.2rem;
  font-family: "Helvetica Neue", sans-serif;
  letter-spacing: 0.075em;
}

@media screen and (min-width: 769px) {
  .lowerPageFv__scrollBar {
    -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  }
}

@media screen and (min-width: 769px) {
  .lowerPageFv__scrollBar:hover {
    letter-spacing: 0.3em;
  }
}

@media all and (-ms-high-contrast: none) {
  .lowerPageFv__scrollBar {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  }
}

.lowerPageFv__scrollBar::before {
  content: "";
  width: 1px;
  height: 50px;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
     -moz-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
       -o-transform: translateX(-50%);
          transform: translateX(-50%);
  background: #231815;
  -webkit-animation: borderExtend 1.5s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.2s forwards infinite;
     -moz-animation: borderExtend 1.5s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.2s forwards infinite;
          animation: borderExtend 1.5s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0.2s forwards infinite;
}

/*====================================================================
articleText
====================================================================*/
.articleText {
  font-size: 1.4rem;
  line-height: 2;
  letter-spacing: 0.2em;
}

.articleText.textEn {
  letter-spacing: 0.075em;
}

@media screen and (max-width: 768px) {
  .articleText {
    font-size: 1.3rem;
  }
}


/*====================================================================
entryLink
====================================================================*/
.entryLink{
  width: 150px;
  margin: 20px 0 0 auto;

  font-size: 1.4rem;
  line-height: 2;
  letter-spacing: 0.2em;
}

.entryLink a{
  display: block;
  color: #fff;
  background: #000;
  text-align: center;
  padding: 10px 0 12px;
}













/*====================================================================
articleTitle
====================================================================*/
.articleTitle {
  font-size: 4rem;
  font-weight: bold;
  font-family: 'code-bold', sans-serif;
  line-height: 1.4;
  letter-spacing: 0.38em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .articleTitle {
    font-size: 2.9rem;
  }
}

/*====================================================================
articleSubTitle
====================================================================*/
.articleSubTitle {
  font-size: 1.6rem;
  font-weight: bold;
  font-family: 'code-bold', sans-serif;
  line-height: 1.8;
  letter-spacing: 0.2em;
}

/*====================================================================
articleTextList
====================================================================*/
.articleTextList__item {
  padding-left: 1.3em;
  text-indent: -1.3em;
  font-size: 1.4rem;
  line-height: 2;
  letter-spacing: 0.2em;
}

/*====================================================================
articleCaption
====================================================================*/
.articleCaption {
  font-size: 1.3rem;
  line-height: 1.6;
  letter-spacing: 0.075em;
}

/*====================================================================
gridArea
====================================================================*/
.gridArea {
  margin-top: 150px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
     -moz-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
}

@media screen and (max-width: 768px) {
  .gridArea {
    margin-top: 70px;
  }
  .gridArea.text_thumb {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
       -moz-box-orient: vertical;
       -moz-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .gridArea.thumb_text {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.gridArea:nth-child(1) {
  margin-top: 0;
}

.gridArea__row {
  width: -webkit-calc((100% - 35px) / 2);
  width: -moz-calc((100% - 35px) / 2);
  width: calc((100% - 35px) / 2);
}

@media screen and (max-width: 768px) {
  .gridArea__row {
    width: 100%;
  }
}

.gridArea__row.textArea {
  padding-top: 60px;
}

@media screen and (max-width: 768px) {
  .gridArea__row.textArea {
    margin-top: 20px;
    padding-top: 0;
  }
}

.gridArea__rowThumb {
  width: -webkit-calc(100% +  200px);
  width: -moz-calc(100% +  200px);
  width: calc(100% +  200px);
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

@media screen and (max-width: 1060px) {
  .gridArea__rowThumb {
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .gridArea__rowThumb.big {
    width: 100%;
  }
}

.gridArea__rowThumb.hoverToggle {
  padding-top: 60px;
  position: relative;
}

@media screen and (max-width: 768px) {
  .gridArea__rowThumb.hoverToggle {
    padding-top: 30px;
    padding-bottom: 40px;
  }
}

.gridArea__rowThumb.hoverToggle img:nth-child(1) {
  width: 100%;
  position: relative;
}

@media screen and (max-width: 1060px) {
  .gridArea__rowThumb.hoverToggle img:nth-child(1) {
    width: -webkit-calc(100% - 60px);
    width: -moz-calc(100% - 60px);
    width: calc(100% - 60px);
  }
}

@media screen and (max-width: 768px) {
  .gridArea__rowThumb.hoverToggle img:nth-child(1) {
    width: -webkit-calc(100% - 30px);
    width: -moz-calc(100% - 30px);
    width: calc(100% - 30px);
  }
}

.gridArea__rowThumb.hoverToggle img:nth-child(2) {
  width: -webkit-calc(100% - 60px);
  width: -moz-calc(100% - 60px);
  width: calc(100% - 60px);
  position: absolute;
  top: 0;
}

@media screen and (max-width: 768px) {
  .gridArea__rowThumb.hoverToggle img:nth-child(2) {
    width: -webkit-calc(100% - 30px);
    width: -moz-calc(100% - 30px);
    width: calc(100% - 30px);
  }
}

.gridArea__rowThumb.hoverToggle img:nth-child(3) {
  width: -webkit-calc(100% - 60px);
  width: -moz-calc(100% - 60px);
  width: calc(100% - 60px);
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

@media screen and (max-width: 768px) {
  .gridArea__rowThumb.hoverToggle img:nth-child(3) {
    width: -webkit-calc(100% - 30px);
    width: -moz-calc(100% - 30px);
    width: calc(100% - 30px);
    bottom: 40px;
  }
}

.gridArea__rowThumb.hoverToggle.right img:nth-child(2) {
  right: 0;
}

@media screen and (max-width: 1060px) {
  .gridArea__rowThumb.hoverToggle.left img:nth-child(1) {
    margin-left: 60px;
  }
}

@media screen and (max-width: 768px) {
  .gridArea__rowThumb.hoverToggle.left img:nth-child(1) {
    margin-left: 30px;
  }
}

.gridArea__rowThumb.hoverToggle.left img:nth-child(2) {
  left: 0;
}

.gridArea__rowThumb.hoverToggle.left img:nth-child(3) {
  left: auto;
  right: 0;
}

@media screen and (min-width: 769px) {
  .gridArea__rowThumb.hoverToggle:hover img:nth-child(3) {
    opacity: 0;
  }
}

.gridArea__rowThumb.hoverToggle.is-active img:nth-child(3) {
  opacity: 0;
}

.gridArea__row:nth-child(2n+1) .gridArea__rowThumb {
  margin-left: -200px;
  padding-left: 60px;
}

@media screen and (max-width: 1060px) {
  .gridArea__row:nth-child(2n+1) .gridArea__rowThumb {
    margin-left: 0;
    padding-left: 0;
  }
}

@media screen and (max-width: 768px) {
  .gridArea__row:nth-child(2n+1) .gridArea__rowThumb {
    margin: 0 auto;
  }
}

.gridArea__row:nth-child(2n) .gridArea__rowThumb {
  margin-right: -200px;
  padding-right: 60px;
}

@media screen and (max-width: 1060px) {
  .gridArea__row:nth-child(2n) .gridArea__rowThumb {
    margin-right: 0;
    padding-right: 0;
  }
}

@media screen and (max-width: 768px) {
  .gridArea__row:nth-child(2n) .gridArea__rowThumb {
    margin: 0 auto;
  }
}

.gridArea__rowThumbPaginationList {
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.gridArea__rowThumbPaginationItem {
  width: 7px;
  height: 7px;
  margin-left: 10px;
  -webkit-border-radius: 100%;
     -moz-border-radius: 100%;
          border-radius: 100%;
  border: 1px solid #231815;
}

@media screen and (max-width: 768px) {
  .gridArea__rowThumbPaginationItem {
    -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  }
}

.gridArea__rowThumbPaginationItem:nth-child(1) {
  margin-left: 0;
}

.gridArea__rowThumbPaginationItem.is-active {
  background: #231815;
}

.gridArea .articleCaption {
  margin-top: 15px;
  font-family: "Helvetica Neue", sans-serif;
}

@media screen and (max-width: 768px) {
  .gridArea .articleCaption {
    margin-top: 15px;
  }
}

@media all and (-ms-high-contrast: none) {
  .gridArea .articleCaption {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  }
}

.gridArea .articleText {
  margin-top: 50px;
}

@media screen and (max-width: 768px) {
  .gridArea .articleText {
    margin-top: 35px;
  }
}

/*====================================================================
cursor
====================================================================*/
.cursor,
.follower {
  -webkit-border-radius: 50%;
     -moz-border-radius: 50%;
          border-radius: 50%;
  position: absolute;
  top: 0;
  left: 0;
  cursor: none;
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  .cursor,
  .follower {
    display: none;
  }
}

.cursor.is-hidden,
.follower.is-hidden {
  opacity: 0;
}

@media screen and (min-width: 769px) {
  .cursor.is-hidden,
  .follower.is-hidden {
    -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  }
}

.cursor {
  width: 10px;
  height: 10px;
  background-color: #942a00;
  z-index: 1001;
}

.follower {
  -webkit-transition: 0.5s cubic-bezier(0.19, 1, 0.22, 1);
  -o-transition: 0.5s cubic-bezier(0.19, 1, 0.22, 1);
  -moz-transition: 0.5s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.5s cubic-bezier(0.19, 1, 0.22, 1);
  width: 0px;
  height: 0px;
  background-color: rgba(31, 34, 31, 0.5);
  z-index: 1000;
}

.follower.is-active {
  width: 40px;
  height: 40px;
}

/*====================================================================
alphabet
====================================================================*/
.alphabet__text {
  font-size: 35vw;
  font-family: "didot", serif;
  line-height: 1;
}

@media screen and (max-width: 768px) {
  .alphabet__text {
    font-size: 180px;
  }
}

.cgPage .lowerPageFv .alphabet {
  position: absolute;
  bottom: 7%;
  left: -5%;
}

.companyPage .alphabet {
  position: absolute;
  top: 15%;
  right: 15%;
  -webkit-transform: translateX(100%);
     -moz-transform: translateX(100%);
      -ms-transform: translateX(100%);
       -o-transform: translateX(100%);
          transform: translateX(100%);
}

@media screen and (max-width: 768px) {
  .companyPage .alphabet {
    top: 0;
    right: -7%;
    -webkit-transform: none;
       -moz-transform: none;
        -ms-transform: none;
         -o-transform: none;
            transform: none;
  }
}

@media screen and (max-width: 768px) {
  .companyPage .alphabet__text {
    font-size: 50vw;
  }
}



.recruitPage .alphabet {
  position: absolute;
  top: 15%;
  right: 15%;
  -webkit-transform: translateX(100%);
     -moz-transform: translateX(100%);
      -ms-transform: translateX(100%);
       -o-transform: translateX(100%);
          transform: translateX(100%);
}

@media screen and (max-width: 768px) {
  .recruitPage .alphabet {
    top: -3%;
    right: -15%;
    -webkit-transform: none;
       -moz-transform: none;
        -ms-transform: none;
         -o-transform: none;
            transform: none;
  }
}

@media screen and (max-width: 768px) {
  .recruitPage .alphabet__text {
    font-size: 50vw;
  }
}


.recruitPage .recruitPageSec__contact .alphabet {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translate(-70%, -50%);
     -moz-transform: translate(-70%, -50%);
      -ms-transform: translate(-70%, -50%);
       -o-transform: translate(-70%, -50%);
          transform: translate(-70%, -50%);
}

@media screen and (max-width: 1060px) {
  .recruitPage .recruitPageSec__contact .alphabet {
    -webkit-transform: translate(-20%, -50%);
       -moz-transform: translate(-20%, -50%);
        -ms-transform: translate(-20%, -50%);
         -o-transform: translate(-20%, -50%);
            transform: translate(-20%, -50%);
  }
}

@media screen and (max-width: 768px) {
  .recruitPage .recruitPageSec__contact .alphabet {
    top: -20%;
    left: 10%;
  }
}



@media screen and (max-width: 768px) {
  .contactPage .alphabet {
    top: 0;
    -webkit-transform: translate(-30%, -120%);
       -moz-transform: translate(-30%, -120%);
        -ms-transform: translate(-30%, -120%);
         -o-transform: translate(-30%, -120%);
            transform: translate(-30%, -120%);
  }
}





.contactPage .alphabet {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translate(-70%, -50%);
     -moz-transform: translate(-70%, -50%);
      -ms-transform: translate(-70%, -50%);
       -o-transform: translate(-70%, -50%);
          transform: translate(-70%, -50%);
}

@media screen and (max-width: 1060px) {
  .contactPage .alphabet {
    -webkit-transform: translate(-20%, -50%);
       -moz-transform: translate(-20%, -50%);
        -ms-transform: translate(-20%, -50%);
         -o-transform: translate(-20%, -50%);
            transform: translate(-20%, -50%);
  }
}

@media screen and (max-width: 768px) {
  .contactPage .alphabet {
    top: 0;
    -webkit-transform: translate(-30%, -120%);
       -moz-transform: translate(-30%, -120%);
        -ms-transform: translate(-30%, -120%);
         -o-transform: translate(-30%, -120%);
            transform: translate(-30%, -120%);
  }
}

@media screen and (max-width: 768px) {
  .contactPage .alphabet__text {
    font-size: 50vw;
  }
}

.privacyPage .alphabet {
  position: absolute;
  top: 45%;
  left: 0;
  -webkit-transform: translateX(-100%);
     -moz-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
       -o-transform: translateX(-100%);
          transform: translateX(-100%);
}

@media screen and (max-width: 768px) {
  .privacyPage .alphabet {
    top: -90px;
    left: auto;
    right: -3%;
    -webkit-transform: translate(0, -100%);
       -moz-transform: translate(0, -100%);
        -ms-transform: translate(0, -100%);
         -o-transform: translate(0, -100%);
            transform: translate(0, -100%);
  }
}

.worksPage .alphabet {
  position: absolute;
  top: -12%;
  right: 15%;
  -webkit-transform: translateX(100%);
     -moz-transform: translateX(100%);
      -ms-transform: translateX(100%);
       -o-transform: translateX(100%);
          transform: translateX(100%);
}

@media screen and (max-width: 768px) {
  .worksPage .alphabet {
    top: -5%;
    right: -22%;
    -webkit-transform: none;
       -moz-transform: none;
        -ms-transform: none;
         -o-transform: none;
            transform: none;
  }
}



.visionPage .alphabet {
  position: absolute;
  top: 4%;
  right: 15%;
  -webkit-transform: translateX(100%);
     -moz-transform: translateX(100%);
      -ms-transform: translateX(100%);
       -o-transform: translateX(100%);
          transform: translateX(100%);
}

@media screen and (max-width: 768px) {
  .visionPage .alphabet {
    top: 16%;
    right: -7%;
    -webkit-transform: none;
       -moz-transform: none;
        -ms-transform: none;
         -o-transform: none;
            transform: none;
  }
}

.webPage .alphabet {
  position: absolute;
  top: 35%;
  right: 3%;
  -webkit-transform: translateX(100%);
     -moz-transform: translateX(100%);
      -ms-transform: translateX(100%);
       -o-transform: translateX(100%);
          transform: translateX(100%);
}

@media screen and (max-width: 768px) {
  .webPage .alphabet {
    -webkit-transform: none;
       -moz-transform: none;
        -ms-transform: none;
         -o-transform: none;
            transform: none;
    bottom: 0;
    top: auto;
    right: -2%;
  }
}

.moviePage .alphabet {
  position: absolute;
}

.moviePage .shooting .alphabet {
  bottom: -5%;
  right: 10%;
  -webkit-transform: translateX(100%);
     -moz-transform: translateX(100%);
      -ms-transform: translateX(100%);
       -o-transform: translateX(100%);
          transform: translateX(100%);
}

@media screen and (max-width: 768px) {
  .moviePage .shooting .alphabet {
    bottom: auto;
    top: 45%;
    right: 0;
    -webkit-transform: translateX(25%);
       -moz-transform: translateX(25%);
        -ms-transform: translateX(25%);
         -o-transform: translateX(25%);
            transform: translateX(25%);
  }
}

.moviePage .graphic .alphabet {
  top: 55%;
  left: 15%;
  -webkit-transform: translateX(-100%);
     -moz-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
       -o-transform: translateX(-100%);
          transform: translateX(-100%);
}

@media screen and (max-width: 768px) {
  .moviePage .graphic .alphabet {
    top: 35%;
    left: 0;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
         -o-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.moviePage .movie .alphabet {
  top: 40%;
  right: 20%;
  -webkit-transform: translateX(100%);
     -moz-transform: translateX(100%);
      -ms-transform: translateX(100%);
       -o-transform: translateX(100%);
          transform: translateX(100%);
}

@media screen and (max-width: 768px) {
  .moviePage .movie .alphabet {
    top: 45%;
  }
}

/*====================================================================
swiper-button-prev, swiper-button-next
====================================================================*/
.customPrevBtn,
.customNextBtn {
  width: 50px;
  height: 50px;
  margin: 0;
  top: 0;
  left: auto;
  cursor: none;
}

.customPrevBtn::before,
.customNextBtn::before {
  content: '';
  width: 30px;
  height: 2px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
     -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: #231815;
}

@media screen and (max-width: 768px) {
  .customPrevBtn::before,
  .customNextBtn::before {
    width: 15px;
  }
}

.customPrevBtn::after,
.customNextBtn::after {
  content: '';
  width: 10px;
  height: 10px;
  font-size: 0;
  position: absolute;
  top: 50%;
  border-bottom: 2px solid #231815;
}

@media screen and (max-width: 768px) {
  .customPrevBtn::after,
  .customNextBtn::after {
    width: 8px;
    height: 8px;
  }
}

.customPrevBtn::after {
  border-left: 2px solid #231815;
  left: 9px;
  -webkit-transform: translateY(-50%) rotate(45deg);
     -moz-transform: translateY(-50%) rotate(45deg);
      -ms-transform: translateY(-50%) rotate(45deg);
       -o-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
}

@media screen and (max-width: 768px) {
  .customPrevBtn::after {
    left: 16px;
  }
}

.customNextBtn::after {
  border-right: 2px solid #231815;
  right: 9px;
  -webkit-transform: translateY(-50%) rotate(-45deg);
     -moz-transform: translateY(-50%) rotate(-45deg);
      -ms-transform: translateY(-50%) rotate(-45deg);
       -o-transform: translateY(-50%) rotate(-45deg);
          transform: translateY(-50%) rotate(-45deg);
}

@media screen and (max-width: 768px) {
  .customNextBtn::after {
    right: 16px;
  }
}

/*====================================================================
textBox
====================================================================*/
.textBoxWrap {
  display: block;
}

.textBoxWrap input[type="text"],
.textBoxWrap input[type="email"],
.textBoxWrap input[type="url"] {
  width: 100%;
  padding: 10px 8px;
  display: block;
  border: 1px solid #a7a3a1;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.textBoxWrap input[type="text"]:focus,
.textBoxWrap input[type="email"]:focus,
.textBoxWrap input[type="url"]:focus {
  border-color: #231815;
}

/*====================================================================
textAreaWrap
====================================================================*/
.textAreaWrap {
  display: block;
}

.textAreaWrap textarea {
  width: 100%;
  max-height: 170px;
  padding: 10px 8px;
  display: block;
  border: 1px solid #a7a3a1;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.textAreaWrap textarea:focus {
  border-color: #231815;
}

/*====================================================================
selectBoxWrap
====================================================================*/
.selectBoxWrap {
  display: block;
  position: relative;
}

.selectBoxWrap::after {
  content: "";
  width: 12px;
  height: 12px;
  display: block;
  position: absolute;
  top: 50%;
  right: 15px;
  -webkit-transform: translateY(-50%) rotate(-45deg);
     -moz-transform: translateY(-50%) rotate(-45deg);
      -ms-transform: translateY(-50%) rotate(-45deg);
       -o-transform: translateY(-50%) rotate(-45deg);
          transform: translateY(-50%) rotate(-45deg);
  border-left: 1px solid #a7a3a1;
  border-bottom: 1px solid #a7a3a1;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.selectBoxWrap.short {
  display: inline-block;
  width: 80px;
}

.selectBoxWrap.short::after {
  width: 8px;
  height: 8px;
}

.selectBoxWrap select {
  width: 100%;
  padding: 10px 40px 10px 8px;
  display: block;
  border: 1px solid #a7a3a1;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  cursor: auto;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.selectBoxWrap select:focus {
  border-color: #231815;
}

/*====================================================================
checkBoxWrap
====================================================================*/
.checkBoxWrap {
  display: block;
}

.checkBoxWrap input[type="checkbox"] {
  display: none;
}

.checkBoxWrap__text {
  padding-left: 25px;
  position: relative;
}

.checkBoxWrap__text::before {
  content: "";
  width: 15px;
  height: 15px;
  display: inline-block;
  position: absolute;
  top: 5px;
  left: 0;
  border: 1px solid #231815;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.checkBoxWrap__text::after {
  content: "";
  width: 9px;
  height: 5px;
  border-bottom: 1px solid #231815;
  border-left: 1px solid #231815;
  position: absolute;
  top: 8px;
  left: 3px;
  -webkit-transform: rotate(-45deg);
     -moz-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
       -o-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transition: all 0.1s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.1s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.1s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.1s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  opacity: 0;
}

.checkBoxWrap__textLink {
  color: #231815;
  text-decoration: underline;
}

@media screen and (min-width: 769px) {
  .checkBoxWrap__textLink {
    -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  }
}

@media screen and (min-width: 769px) {
  .checkBoxWrap__textLink:hover {
    opacity: 0.6;
  }
}

.checkBoxWrap input[type="checkbox"]:checked + [class*="__text"]::after {
  opacity: 1;
}

/*====================================================================
submitBtn
====================================================================*/
.submitBtn {
  min-width: 200px;
  padding: 20px 15px;
  background: #231815;
  border: 2px solid #231815;
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0.3em;
  text-align: center;
  cursor: none !important;
}

@media screen and (min-width: 769px) {
  .submitBtn {
    -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  }
}

@media screen and (min-width: 769px) {
  .submitBtn:hover {
    background: #fff;
    color: #231815;
  }
}

/*====================================================================
textRequire
====================================================================*/
.textRequire {
  margin-left: 10px;
  display: inline-block;
  color: #a7a3a1;
  font-size: 1.2rem;
  letter-spacing: 0.2em;
}

/*====================================================================
errorMessage
====================================================================*/
.errorMessage {
  margin-top: 5px;
  color: #942a00;
  font-size: 1.4rem;
  letter-spacing: 0.2em;
}

/*====================================================================
bgDebris
====================================================================*/
.bgDebris img {
  max-width: 100%;
  width: 100%;
  height: auto;
}

.bgDebris [class^="bgDebris__item0"] {
  position: absolute;
  z-index: -1;
  width: 26rem;
  height: 26rem;
}

@media screen and (max-width: 768px) {
  .bgDebris [class^="bgDebris__item0"] {
    width: 12.5rem;
    height: 12.5rem;
  }
}





.worksPage .bgDebris__item01 {
  top: 9vw;
  right: 4vw;
}

@media screen and (max-width: 768px) {
  .worksPage .bgDebris__item01 {
    top: 9rem;
    right: 0;
  }
}

.worksPage .bgDebris__item02 {
  top: 27vw;
  left: 0;
}

@media screen and (max-width: 768px) {
  .worksPage .bgDebris__item02 {
    top: 36rem;
    left: -4rem;
  }
}

.worksPage .bgDebris__item03 {
  top: 54vw;
  left: -6vw;
}

@media screen and (max-width: 768px) {
  .worksPage .bgDebris__item03 {
    top: 122rem;
    left: -6rem;
  }
}

.worksPage .bgDebris__item04 {
  top: 72vw;
  right: -5vw;
}

@media screen and (max-width: 768px) {
  .worksPage .bgDebris__item04 {
    top: 84rem;
    right: -5rem;
  }
}

.worksPage .bgDebris__item05 {
  top: 99vw;
  right: 4vw;
}

@media screen and (max-width: 768px) {
  .worksPage .bgDebris__item05 {
    top: 170rem;
    right: 0;
  }
}

.worksPage .bgDebris__item06 {
  top: 117vw;
  left: -6vw;
}

@media screen and (max-width: 768px) {
  .worksPage .bgDebris__item06 {
    top: 258rem;
    left: -6rem;
  }
}

.worksPage .bgDebris__item07 {
  bottom: 57vw;
  right: -4vw;
}

@media screen and (max-width: 768px) {
  .worksPage .bgDebris__item07 {
    bottom: 40rem;
    right: -4rem;
  }
}












































.visionPage .bgDebris__item01 {
  top: 9vw;
  right: 4vw;
}

@media screen and (max-width: 768px) {
  .visionPage .bgDebris__item01 {
    top: 9rem;
    right: 0;
  }
}

.visionPage .bgDebris__item02 {
  top: 27vw;
  left: 0;
}

@media screen and (max-width: 768px) {
  .visionPage .bgDebris__item02 {
    top: 36rem;
    left: -4rem;
  }
}

.visionPage .bgDebris__item03 {
  top: 54vw;
  left: -6vw;
}

@media screen and (max-width: 768px) {
  .visionPage .bgDebris__item03 {
    top: 99rem;
    left: -6rem;
  }
}

.visionPage .bgDebris__item04 {
  top: 72vw;
  right: -5vw;
}

@media screen and (max-width: 768px) {
  .visionPage .bgDebris__item04 {
    top: 126rem;
    right: -5rem;
  }
}

.visionPage .bgDebris__item05 {
  top: 99vw;
  right: 4vw;
}

@media screen and (max-width: 768px) {
  .visionPage .bgDebris__item05 {
    top: 162rem;
    right: 0;
  }
}

.visionPage .bgDebris__item06 {
  top: 117vw;
  left: -6vw;
}

@media screen and (max-width: 768px) {
  .visionPage .bgDebris__item06 {
    top: 297rem;
    left: -6rem;
  }
}

.visionPage .bgDebris__item07 {
  bottom: -6vw;
  right: -4vw;
}

@media screen and (max-width: 768px) {
  .visionPage .bgDebris__item07 {
    bottom: -6rem;
    right: -4rem;
  }
}

.cgPage .bgDebris__item01 {
  top: 9vw;
  right: 4vw;
}

@media screen and (max-width: 768px) {
  .cgPage .bgDebris__item01 {
    top: 9rem;
    right: 0;
  }
}

.cgPage .bgDebris__item02 {
  top: 27vw;
  left: 8vw;
}

@media screen and (max-width: 768px) {
  .cgPage .bgDebris__item02 {
    top: 37rem;
    left: 4rem;
  }
}

.cgPage .bgDebris__item03 {
  top: 54vw;
  left: -6vw;
}

@media screen and (max-width: 768px) {
  .cgPage .bgDebris__item03 {
    top: 59rem;
    left: -4rem;
  }
}

.cgPage .bgDebris__item04 {
  top: 135vw;
  right: -5vw;
}

@media screen and (max-width: 768px) {
  .cgPage .bgDebris__item04 {
    top: 195rem;
    right: -5rem;
  }
}

.cgPage .bgDebris__item05 {
  top: 162vw;
  left: -6vw;
}

@media screen and (max-width: 768px) {
  .cgPage .bgDebris__item05 {
    top: 206rem;
    left: -4rem;
  }
}

.cgPage .bgDebris__item06 {
  bottom: -6vw;
  right: -4vw;
}

@media screen and (max-width: 768px) {
  .cgPage .bgDebris__item06 {
    bottom: -6rem;
    right: -4rem;
  }
}

.webPage .bgDebris__item01 {
  top: 9vw;
  left: 4vw;
}

@media screen and (max-width: 768px) {
  .webPage .bgDebris__item01 {
    top: 9rem;
    left: 0;
  }
}

.webPage .bgDebris__item02 {
  top: 7vw;
  left: 8vw;
  width: 12.5rem;
  height: 12.5rem;
}

@media screen and (max-width: 768px) {
  .webPage .bgDebris__item02 {
    top: 7rem;
    left: 4rem;
    width: 7rem;
    height: 7rem;
  }
}

.webPage .bgDebris__item03 {
  top: 20vw;
  right: 0;
}

@media screen and (max-width: 768px) {
  .webPage .bgDebris__item03 {
    top: 30rem;
    right: -4rem;
  }
}

.webPage .bgDebris__item04 {
  top: 30vw;
  left: -4vw;
}

@media screen and (max-width: 768px) {
  .webPage .bgDebris__item04 {
    top: 41rem;
    left: -4rem;
  }
}

.webPage .bgDebris__item05 {
  top: 90vw;
  right: -3vw;
}

@media screen and (max-width: 768px) {
  .webPage .bgDebris__item05 {
    top: 130rem;
    right: -4rem;
  }
}

.webPage .bgDebris__item06 {
  bottom: -10vw;
  left: -4vw;
}

@media screen and (max-width: 768px) {
  .webPage .bgDebris__item06 {
    bottom: -6rem;
    left: 43%;
  }
}

.moviePage .bgDebris__item01 {
  top: 13vw;
  left: 4vw;
}

@media screen and (max-width: 768px) {
  .moviePage .bgDebris__item01 {
    top: 9rem;
    left: 0;
  }
}

.moviePage .bgDebris__item02 {
  top: 15vw;
  right: 4vw;
}

@media screen and (max-width: 768px) {
  .moviePage .bgDebris__item02 {
    top: 30rem;
    right: -4rem;
  }
}

.moviePage .bgDebris__item03 {
  top: 23vw;
  right: 10vw;
  width: 12.5rem;
  height: 12.5rem;
}

@media screen and (max-width: 768px) {
  .moviePage .bgDebris__item03 {
    top: 37rem;
    right: 0;
    width: 7rem;
    height: 7rem;
  }
}

.moviePage .bgDebris__item04 {
  top: 74vw;
  right: 8vw;
}

@media screen and (max-width: 768px) {
  .moviePage .bgDebris__item04 {
    display: none;
  }
}

.moviePage .bgDebris__item05 {
  top: 102vw;
  left: -4vw;
}

@media screen and (max-width: 768px) {
  .moviePage .bgDebris__item05 {
    top: 110rem;
    left: auto;
    right: -4rem;
  }
}

.moviePage .bgDebris__item06 {
  top: 135vw;
  right: -4vw;
}

@media screen and (max-width: 768px) {
  .moviePage .bgDebris__item06 {
    top: 180rem;
    right: -4rem;
  }
}

.moviePage .bgDebris__item07 {
  top: 165vw;
  left: 8vw;
}

@media screen and (max-width: 768px) {
  .moviePage .bgDebris__item07 {
    top: 232rem;
    left: -4rem;
  }
}

.moviePage .bgDebris__item08 {
  bottom: -6vw;
  right: 0;
}

@media screen and (max-width: 768px) {
  .moviePage .bgDebris__item08 {
    bottom: 36rem;
    right: -4rem;
  }
}

.companyPage .bgDebris__item01 {
  top: 10vw;
  right: 4vw;
}

@media screen and (max-width: 768px) {
  .companyPage .bgDebris__item01 {
    top: 9rem;
    right: 0;
  }
}

.companyPage .bgDebris__item02 {
  top: 25vw;
  left: 10vw;
}

@media screen and (max-width: 768px) {
  .companyPage .bgDebris__item02 {
    top: 35rem;
    left: -4rem;
  }
}

.companyPage .bgDebris__item03 {
  top: 45vw;
  left: -6vw;
}

@media screen and (max-width: 768px) {
  .companyPage .bgDebris__item03 {
    top: 54rem;
    left: -4rem;
  }
}

.companyPage .bgDebris__item04 {
  top: 85vw;
  right: -4vw;
}

@media screen and (max-width: 768px) {
  .companyPage .bgDebris__item04 {
    top: 215rem;
    right: -4rem;
  }
}

.companyPage .bgDebris__item05 {
  top: 100vw;
  left: 4vw;
}

@media screen and (max-width: 768px) {
  .companyPage .bgDebris__item05 {
    top: 272rem;
    left: auto;
    right: -4rem;
  }
}

.companyPage .bgDebris__item06 {
  top: 135vw;
  right: 4vw;
}

@media screen and (max-width: 768px) {
  .companyPage .bgDebris__item06 {
    display: none;
  }
}

.companyPage .bgDebris__item07 {
  bottom: -6vw;
  left: -4vw;
}

@media screen and (max-width: 768px) {
  .companyPage .bgDebris__item07 {
    bottom: -9rem;
    left: -5rem;
  }
}

.recruitPage .bgDebris__item01 {
  top: 10vw;
  right: 4vw;
}

@media screen and (max-width: 768px) {
  .recruitPage .bgDebris__item01 {
    top: 9rem;
    right: 0;
  }
}

.recruitPage .bgDebris__item02 {
  top: 25vw;
  left: 10vw;
}

@media screen and (max-width: 768px) {
  .recruitPage .bgDebris__item02 {
    top: 35rem;
    left: -4rem;
  }
}

.recruitPage .bgDebris__item03 {
  top: 45vw;
  left: -6vw;
}

@media screen and (max-width: 768px) {
  .recruitPage .bgDebris__item03 {
    top: 54rem;
    left: -4rem;
  }
}

.recruitPage .bgDebris__item04 {
  top: 100vw;
  right: -4vw;
}

@media screen and (max-width: 768px) {
  .recruitPage .bgDebris__item04 {
    top: 215rem;
    right: -6rem;
  }
}

.recruitPage .bgDebris__item05 {
  top: 100vw;
  left: -10vw;
}

@media screen and (max-width: 1060px) {
  .recruitPage .bgDebris__item05{
    top: 115rem;
    left: -17rem;
  }
}

@media screen and (max-width: 768px) {
  .recruitPage .bgDebris__item05 {
    top: 272rem;
    left: -8rem;
  }
}

.recruitPage .bgDebris__item06 {
  top: 135vw;
  right: 4vw;
}

@media screen and (max-width: 768px) {
  .recruitPage .bgDebris__item06 {
    display: none;
  }
}

.recruitPage .bgDebris__item07 {
  bottom: -6vw;
  left: -4vw;
}

@media screen and (max-width: 768px) {
  .recruitPage .bgDebris__item07 {
    bottom: -9rem;
    left: -5rem;
  }
}

.contactPage .bgDebris__item01 {
  top: 9vw;
  right: 4vw;
}

@media screen and (max-width: 768px) {
  .contactPage .bgDebris__item01 {
    top: 9rem;
    right: 0;
  }
}

.contactPage .bgDebris__item02 {
  top: 20vw;
  left: 10vw;
}

@media screen and (max-width: 768px) {
  .contactPage .bgDebris__item02 {
    top: 44rem;
    left: 3rem;
  }
}

.contactPage .bgDebris__item03 {
  top: 25vw;
  right: 7vw;
}

@media screen and (max-width: 768px) {
  .contactPage .bgDebris__item03 {
    top: 58rem;
    right: auto;
    left: -5rem;
  }
}

.contactPage .bgDebris__item04 {
  top: 61vw;
  right: -4vw;
}

@media screen and (max-width: 768px) {
  .contactPage .bgDebris__item04 {
    top: 80rem;
    right: -4rem;
  }
}

.contactPage .bgDebris__item05 {
  top: 100vw;
  left: 4vw;
}

@media screen and (max-width: 768px) {
  .contactPage .bgDebris__item05 {
    display: none;
  }
}

.contactPage .bgDebris__item06 {
  bottom: -2vw;
  right: 10vw;
}

@media screen and (max-width: 768px) {
  .contactPage .bgDebris__item06 {
    bottom: 66rem;
    right: auto;
    left: -6rem;
  }
}

.privacyPage .bgDebris__item01 {
  top: 6vw;
  right: 6vw;
}

@media screen and (max-width: 768px) {
  .privacyPage .bgDebris__item01 {
    top: 9rem;
    right: 0;
  }
}

.privacyPage .bgDebris__item02 {
  top: 20vw;
  left: 4vw;
}

@media screen and (max-width: 768px) {
  .privacyPage .bgDebris__item02 {
    top: 33rem;
    left: -4rem;
  }
}

.privacyPage .bgDebris__item03 {
  top: 50vw;
  left: -4vw;
}

@media screen and (max-width: 768px) {
  .privacyPage .bgDebris__item03 {
    top: 50rem;
    left: auto;
    right: 0;
  }
}

.privacyPage .bgDebris__item04 {
  top: 65vw;
  right: -10vw;
}

@media screen and (max-width: 768px) {
  .privacyPage .bgDebris__item04 {
    top: 82rem;
    left: -5rem;
  }
}

.privacyPage .bgDebris__item05 {
  top: 135vw;
  left: 10vw;
}

@media screen and (max-width: 768px) {
  .privacyPage .bgDebris__item05 {
    top: 244rem;
    left: auto;
    right: -4rem;
  }
}

.privacyPage .bgDebris__item06 {
  top: 165vw;
  right: 8vw;
}

@media screen and (max-width: 768px) {
  .privacyPage .bgDebris__item06 {
    top: 402rem;
    left: auto;
    right: -4rem;
  }
}

.privacyPage .bgDebris__item07 {
  bottom: -6vw;
  left: 4vw;
}

@media screen and (max-width: 768px) {
  .privacyPage .bgDebris__item07 {
    bottom: -8rem;
    left: -5rem;
  }
}

/*====================================================================
COMMON LAYOUT
====================================================================*/
html {
  font-size: 62.5%;
}

@media screen and (max-width: 768px) {
  html {
    font-size: -webkit-calc(10vw / 3.75);
    font-size: -moz-calc(10vw / 3.75);
    font-size: calc(10vw / 3.75);
  }
}

body {
  position: relative;
  overflow-x: hidden;
  -webkit-font-feature-settings: 'palt' 1;
     -moz-font-feature-settings: 'palt' 1;
          font-feature-settings: 'palt' 1;
  font-weight: 300;
}

body::after {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  background: #000;
  z-index: 300;
  -webkit-animation: slideOutLeft02 0.5s 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) forwards;
     -moz-animation: slideOutLeft02 0.5s 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) forwards;
          animation: slideOutLeft02 0.5s 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) forwards;
}

*:focus {
  outline: none;
}

@media screen and (max-width: 768px) {
  * {
    cursor: auto;
  }
}

*::-moz-selection {
  background: #231815;
  color: #fff;
}

*::selection {
  background: #231815;
  color: #fff;
}

* {
  cursor: none;
}

a {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/*-----------------------------------------------
PC/SP
------------------------------------------------*/
.u-pcDb {
  display: block;
}

.u-pcDib {
  display: inline-block;
}

.u-pcDin {
  display: inline;
}

.u-pcDf {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
}

.u-pcDt {
  display: table;
}

.u-pcDtc {
  display: table-cell;
}

.u-spDb,
.u-spDib,
.u-spDin,
.u-spDf,
.u-spDt,
.u-spDtc {
  display: none;
}

@media screen and (max-width: 768px) {
  .u-pcDb,
  .u-pcDib,
  .u-pcDin,
  .u-pcDf,
  .u-pcDt,
  .u-pcDtc {
    display: none;
  }
  .u-spDb {
    display: block;
  }
  .u-spDib {
    display: inline-block;
  }
  .u-spDin {
    display: inline;
  }
  .u-spDf {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
  .u-spDt {
    display: table;
  }
  .u-spDtc {
    display: table-cell;
  }
}

/*-----------------------------------------------
main
------------------------------------------------*/
.siteContent {
  min-height: -webkit-calc(100vh - 115px);
  min-height: -moz-calc(100vh - 115px);
  min-height: calc(100vh - 115px);
}

@media screen and (max-width: 768px) {
  .siteContent {
    min-height: -webkit-calc(100vh - 50px);
    min-height: -moz-calc(100vh - 50px);
    min-height: calc(100vh - 50px);
  }
}

body:not(.topPage) .siteContent {
  position: relative;
}

@media screen and (max-width: 768px) {
  #luxy {
    max-width: 100%;
    width: 100%;
    overflow: hidden;
  }
}

/*====================================================================
topPageSec
====================================================================*/
.topPageSec {
  padding: 130px 60px 80px;
}

@media screen and (max-width: 768px) {
  .topPageSec {
    padding: 80px 20px 30px;
  }
}

@media screen and (max-width: 768px) {
  .topPageSec__cubeSpace {
    height: -webkit-calc(32vw * 2.8);
    height: -moz-calc(32vw * 2.8);
    height: calc(32vw * 2.8);
    margin-bottom: -webkit-calc(32vw * -0.6);
    margin-bottom: -moz-calc(32vw * -0.6);
    margin-bottom: calc(32vw * -0.6);
  }
}

.topPageSec__cubeBreak {
  pointer-events: none;
  z-index: -100;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.topPageSec__pageList {
  padding-top: 190%;
  position: relative;
}

@media screen and (max-width: 1150px) {
  .topPageSec__pageList {
    padding-top: 250%;
  }
}

@media screen and (max-width: 768px) {
  .topPageSec__pageList {
    padding-top: 0;
  }
}

.topPageSec__pageItem {
  position: absolute;
}

@media screen and (max-width: 768px) {
  .topPageSec__pageItem {
    width: 100% !important;
    position: static;
  }
}

.topPageSec__pageItem:nth-child(1) {
  width: 35%;
  min-width: 400px;
  top: 29%;
  left: 0;
}

@media screen and (max-width: 1150px) {
  .topPageSec__pageItem:nth-child(1) {
    top: 22%;
  }
}

@media screen and (max-width: 768px) {
  .topPageSec__pageItem:nth-child(1) {
    min-width: inherit;
    margin-top: 0;
  }
}

.topPageSec__pageItem:nth-child(2) {
  width: 16%;
  min-width: 200px;
  top: 5%;
  right: 0;
}

@media screen and (max-width: 1150px) {
  .topPageSec__pageItem:nth-child(2) {
    top: 3%;
  }
}

@media screen and (max-width: 768px) {
  .topPageSec__pageItem:nth-child(2) {
    min-width: inherit;
  }
}

.topPageSec__pageItem:nth-child(3) {
  width: 16%;
  min-width: 200px;
  top: 50%;
  left: 0;
}

@media screen and (max-width: 1150px) {
  .topPageSec__pageItem:nth-child(3) {
    top: 42%;
  }
}

@media screen and (max-width: 768px) {
  .topPageSec__pageItem:nth-child(3) {
    min-width: inherit;
  }
}

.topPageSec__pageItem:nth-child(5) {
  width: 29%;
  min-width: 250px;
  bottom: 19%;
  right: 0;
}

@media screen and (max-width: 1600px) {
  .topPageSec__pageItem:nth-child(5) {
    bottom: 27vw;
  }
}

@media screen and (max-width: 1400px) and (min-width: 768px) {
  .topPageSec__pageItem:nth-child(5) {
    bottom: 15vw;
  }
}

@media screen and (max-width: 768px) {
  .topPageSec__pageItem:nth-child(5) {
    min-width: inherit;
  }
}

.topPageSec__pageItem:nth-child(6) {
  width: 16%;
  min-width: 150px;
  bottom: 5%;
  left: 38%;
}

@media screen and (max-width: 1300px) and (min-width: 768px) {
  .topPageSec__pageItem:nth-child(6) {
    bottom: -7vw;
  }
}

@media screen and (max-width: 1000px) {
  .topPageSec__pageItem:nth-child(6) {
    bottom: -22vw;
  }
}

@media screen and (max-width: 768px) {
  .topPageSec__pageItem:nth-child(6) {
    min-width: inherit;
    bottom: 0;
  }
}

.topPageSec__pageLink {
  display: block;
}

@media screen and (max-width: 768px) {
  .topPageSec__pageLink {
    padding: 25vw 0 2rem 25vw;
    position: relative;
  }
}

@media screen and (max-width: 768px) {
  .topPageSec__pageItem:nth-child(3) [class$="__pageLink"] {
    padding-top: 60vw;
  }
}

@media screen and (max-width: 768px) {
  .topPageSec__pageItem:nth-child(5) [class$="__pageLink"] {
    padding-top: 40vw;
  }
}

.topPageSec__pageLinkAlphabet {
  position: absolute;
  color: #231815;
  font-size: 35vw;
  font-family: "didot", serif;
  font-weight: 100;
  line-height: 1;
}

.topPageSec__pageItem:nth-child(1) [class*="__pageLinkAlphabet"] {
  top: 0;
  left: -10vw;
  -webkit-transform: translateY(-100%);
     -moz-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
       -o-transform: translateY(-100%);
          transform: translateY(-100%);
}

@media screen and (max-width: 768px) {
  .topPageSec__pageItem:nth-child(1) [class*="__pageLinkAlphabet"] {
    top: 0;
    left: auto;
    right: -5vw;
    -webkit-transform: none;
       -moz-transform: none;
        -ms-transform: none;
         -o-transform: none;
            transform: none;
  }
}

.topPageSec__pageItem:nth-child(2) [class*="__pageLinkAlphabet"] {
  bottom: -4vw;
  left: 0;
  -webkit-transform: translateY(100%);
     -moz-transform: translateY(100%);
      -ms-transform: translateY(100%);
       -o-transform: translateY(100%);
          transform: translateY(100%);
}

@media screen and (max-width: 1600px) {
  .topPageSec__pageItem:nth-child(2) [class*="__pageLinkAlphabet"] {
    bottom: -2vw;
  }
}

@media screen and (max-width: 1300px) and (min-width: 678px) {
  .topPageSec__pageItem:nth-child(2) [class*="__pageLinkAlphabet"] {
    bottom: 0;
  }
}

@media screen and (max-width: 768px) {
  .topPageSec__pageItem:nth-child(2) [class*="__pageLinkAlphabet"] {
    bottom: auto;
    top: 25vw;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
         -o-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.topPageSec__pageItem:nth-child(3) [class*="__pageLinkAlphabet"] {
  top: 0;
  right: 0;
  -webkit-transform: translate(100%, -70%);
     -moz-transform: translate(100%, -70%);
      -ms-transform: translate(100%, -70%);
       -o-transform: translate(100%, -70%);
          transform: translate(100%, -70%);
}

@media screen and (max-width: 768px) {
  .topPageSec__pageItem:nth-child(3) [class*="__pageLinkAlphabet"] {
    top: 25vw;
    right: auto;
    left: 25vw;
    -webkit-transform: none;
       -moz-transform: none;
        -ms-transform: none;
         -o-transform: none;
            transform: none;
  }
}

.topPageSec__pageItem:nth-child(5) [class*="__pageLinkAlphabet"] {
  right: -9vw;
  -webkit-transform: translateY(-110%);
     -moz-transform: translateY(-110%);
      -ms-transform: translateY(-110%);
       -o-transform: translateY(-110%);
          transform: translateY(-110%);
}

@media screen and (max-width: 768px) {
  .topPageSec__pageItem:nth-child(5) [class*="__pageLinkAlphabet"] {
    top: 3vw;
    right: -8vw;
    -webkit-transform: none;
       -moz-transform: none;
        -ms-transform: none;
         -o-transform: none;
            transform: none;
  }
}

.topPageSec__pageItem:nth-child(6) [class*="__pageLinkAlphabet"] {
  top: 0;
  left: 0;
  -webkit-transform: translate(-105%, 0);
     -moz-transform: translate(-105%, 0);
      -ms-transform: translate(-105%, 0);
       -o-transform: translate(-105%, 0);
          transform: translate(-105%, 0);
}

@media screen and (max-width: 768px) {
  .topPageSec__pageItem:nth-child(6) [class*="__pageLinkAlphabet"] {
    top: 25vw;
    left: 0;
    -webkit-transform: translateX(-40%);
       -moz-transform: translateX(-40%);
        -ms-transform: translateX(-40%);
         -o-transform: translateX(-40%);
            transform: translateX(-40%);
  }
}

.topPageSec__pageLinkTitle {
  color: #231815;
  font-size: 3rem;
  font-family: "code-bold", sans-serif;
  letter-spacing: 0.38em;
  line-height: 1;
}

.topPageSec__pageItem:nth-child(5) .topPageSec__pageLinkTitle {
  padding-top: 15vw;
}

@media screen and (max-width: 768px) {
  .topPageSec__pageItem:nth-child(5) .topPageSec__pageLinkTitle {
    padding-top: 0;
  }
}

.topPageSec__pageItem:nth-child(6) .topPageSec__pageLinkTitle {
  padding-top: 3vw;
}

@media screen and (max-width: 768px) {
  .topPageSec__pageItem:nth-child(6) .topPageSec__pageLinkTitle {
    padding-top: 0;
  }
}

.topPageSec__pageLinkArticleTextArea {
  margin-top: 50px;
}

@media screen and (max-width: 768px) {
  .topPageSec__pageLinkArticleTextArea {
    margin-top: 15px;
  }
}

.topPageSec__pageLinkArticleText {
  color: #231815;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.topPageSec__pageLinkArticleText.textJp {
  opacity: 1;
}


@media screen and (max-width: 768px) {
  .topPageSec__pageLink {
    pointer-events: all;
  }
}

.topPageSec__pageLinkSPEN {
  opacity: 1;
}

@media screen and (max-width: 768px) {
  .topPageSec__pageLinkSPEN {
    position: absolute;
    right: 0;
    bottom: 0;
    font-size: 1.3rem;
    text-decoration: underline;
    letter-spacing: .1em;
  }
}

.topPageSec__pageLinkSPJP {
  opacity: 0;
}

@media screen and (max-width: 768px) {
  .topPageSec__pageLinkSPJP {
    opacity: 1;
    position: absolute;
    right: 0;
    bottom: 0;
    font-size: 1.3rem;
    text-decoration: underline;
    letter-spacing: .1em;
  }
}

.topPageSec__siteTitle {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
     -moz-transform: translateY(-50%) translateX(-50%);
      -ms-transform: translateY(-50%) translateX(-50%);
       -o-transform: translateY(-50%) translateX(-50%);
          transform: translateY(-50%) translateX(-50%);
  margin-top: 2em;
  font-size: 12vw;
  font-family: "didot", serif;
  font-weight: 100;
  letter-spacing: 0.01em;
  line-height: 1;
  text-align: center;
}

@media screen and (max-width: 1600px) and (min-width: 768px) {
  .topPageSec__siteTitle {
    top: 55%;
    font-size: 10vw;
  }
}

@media screen and (max-width: 768px) {
  .topPageSec__siteTitle {
    margin-top: 50px;
    position: static;
    -webkit-transform: none;
       -moz-transform: none;
        -ms-transform: none;
         -o-transform: none;
            transform: none;
  }
}

/*====================================================================
cgPageSec
====================================================================*/
.cgPageSec {
  padding: 100px 0;
}

@media screen and (max-width: 768px) {
  .cgPageSec {
    padding: 50px 0;
  }
}

.cgPageSec__title {
  margin-top: 170px;
}

.cgPageSec__title:nth-of-type(1) {
  margin-top: 0;
}

.cgPageSec__title + .gridArea {
  margin-top: 0;
}





/*====================================================================
worksPageSec
====================================================================*/
.worksPageSec {
  padding: 100px 0;
}

@media screen and (max-width: 768px) {
  .worksPageSec {
    padding: 50px 0;
  }
}

.worksPageSec__inner {
  position: relative;
}

.worksPageSec__catch {
  font-size: 3rem;
  font-family: "didot", serif;
  line-height: 1.7;
  letter-spacing: 0.075em;
  text-transform: uppercase;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .worksPageSec__catch {
    font-size: 1.7rem;
  }
}

.worksPageSec__messageTitle {
  margin-top: 70px;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 2;
  letter-spacing: 0.5em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .worksPageSec__messageTitle {
    margin-top: 50px;
    font-size: 1.6rem;
  }
}

.worksPageSec__messageText {
  margin-top: 30px;
  font-size: 1.6rem;
  line-height: 2.4;
  letter-spacing: 0.3em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .worksPageSec__messageText {
    margin-top: 20px;
    font-size: 1.3rem;
  }
}

.worksPageSec__infoList {
  margin-top: 160px;
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoList {
    margin-top: 80px;
  }
}

.worksPageSec__infoItem {
  margin-top: 95px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItem {
    margin-top: 58px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}



.worksPageSec__infoItem:nth-child(1) {
  margin-top: 0;
}

.worksPageSec__infoItemTitle {
  width: 300px;
  font-family: "code-bold", sans-serif;
  font-weight: 400;
  font-size: 2rem;
  line-height: 1.7;
  letter-spacing: 0.38em;
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItemTitle {
    width: 100%;
    padding-bottom: 30px;
  }
}

.worksPageSec__infoItemTextArea {
  width: -webkit-calc(100% - 300px);
  width: -moz-calc(100% - 300px);
  width: calc(100% - 300px);
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItemTextArea {
    width: 100%;
    margin-top: 25px;
  }
}

.worksPageSec__infoItemTextAreaTitle {
  font-size: 1.7rem;
  font-weight: bold;
  line-height: 1.8;
  letter-spacing: 0.3em;
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItemTextAreaTitle {
    font-size: 1.6rem;
  }
}

/*
.worksPageSec__infoItemTextAreaSubTitle {
  margin-top: 25px;
  font-size: 1.3rem;
  letter-spacing: 0.075em;
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItemTextAreaSubTitle {
    margin-top: 10px;
  }
}
*/


.worksPageSec__infoItemTextItem{
  width: calc(100% - 200px);
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItemTextItem{
    width: 100%;
  }
}



.worksPageSec__infoItemTextAreaText {
  position: relative;
  overflow-y: scroll;
  height: 450px;
  /* -ms-overflow-style: none;
  scrollbar-width: none; */
}

/* .worksPageSec__infoItemTextAreaText::-webkit-scrollbar {
  display: none;
} */

.worksPageSec__infoItemTextAreaText::after{
  content: '';
  position: absolute;
  width: 100%;
  height: 40%;
  bottom: 0;
  left: 0;
  opacity: 1;
  background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, #fff 100%);
  pointer-events: none;
  transition: opacity 0.6s ease;
  z-index: 1;
}

.worksPageSec__infoItemTextAreaText.is-active::after {
  opacity: 0;
  transition: opacity 0.6s ease;
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItemTextAreaText {
    height: 400px;
  }
}

.worksPageSec__infoItemTextAreaText__inner{
  width: 100%;
}

.worksPageSec__infoItemTextAreaText__inner__content{
  width: 100%;
}

.worksPageSec__infoItemTextAreaText__inner__content:nth-child(2){
  padding-top: 10px;
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItemTextAreaText__inner__content:nth-child(2){
    padding-top: 35px;
  }
}


.worksPageSec__infoItemTextAreaText__year{
  font-family: "code-bold", sans-serif;
  padding-bottom: 13px;
  font-weight: 400;
  font-size: 2rem;
  line-height: 1.7;
  letter-spacing: 0.3em;
}


@media screen and (max-width: 768px) {

  .worksPageSec__infoItemTextAreaText__year{
    font-size: 2rem;
    letter-spacing: 0.3em;
  }
}







.worksPageSec__infoItemTextAreaText__item{
  display: table;
  font-weight: 300;
  padding-bottom: 13px;
  font-size: 1.4rem;
  line-height: 1.8;
}


@media screen and (max-width: 768px) {
  .worksPageSec__infoItemTextAreaText__item{
    line-height: 1.3;
    font-size: 1.3rem;
    padding-bottom: 10px;
  }
}

.worksPageSec__infoItemTextAreaText__item--icon{
  float: left;
}

.worksPageSec__infoItemTextAreaText__item--txt{
  display: table-cell;
  vertical-align: middle;
}



.worksPageSec__infoItemDetailList {
  margin-top: 80px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
     -moz-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItemDetailList {
    margin-top: 40px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.worksPageSec__infoItemDetailItem {
  width: -webkit-calc((100% - 50px) / 2);
  width: -moz-calc((100% - 50px) / 2);
  width: calc((100% - 50px) / 2);
  margin-top: 50px;
}

.worksPageSec__infoItemDetailItem:nth-child(1), .worksPageSec__infoItemDetailItem:nth-child(2) {
  margin-top: 0;
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItemDetailItem {
    width: 100%;
    margin-top: 35px;
  }
  .worksPageSec__infoItemDetailItem:nth-child(2) {
    margin-top: 35px;
  }
}

.worksPageSec__infoItemDetailItemNumber {
  padding-bottom: 5px;
  display: inline-block;
  border-bottom: 3px solid #231815;
  font-size: 3rem;
  font-family: "didot", serif;
  font-weight: bold;
  letter-spacing: 0.075em;
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItemDetailItemNumber {
    padding-bottom: 0;
    font-size: 2.5rem;
  }
}

.worksPageSec__infoItemDetailItemTitle {
  margin-top: 20px;
  font-size: 1.7rem;
  letter-spacing: 0.3em;
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItemDetailItemTitle {
    margin-top: 25px;
    font-size: 1.6rem;
  }
}

.worksPageSec__infoItemDetailItemSubTitle {
  margin-top: 5px;
  font-size: 1.3rem;
  line-height: 1.7;
  letter-spacing: 0.1em;
}

.worksPageSec__infoItemDetailItemText {
  margin-top: 20px;
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItemDetailItemText {
    margin-top: 15px;
  }
}

.worksPageSec__infoItemSliderAreaWrap {
  width: -webkit-calc(100% - 200px);
  width: -moz-calc(100% - 200px);
  width: calc(100% - 200px);
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItemSliderAreaWrap {
    width: 100%;
  }
}

.worksPageSec__infoItemSliderArea {
  width: 76%;
  margin: 0;
  padding-top: 60px;
  overflow: visible;
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItemSliderArea {
    width: -webkit-calc(100% - 100px);
    width: -moz-calc(100% - 100px);
    width: calc(100% - 100px);
    margin-top: 45px;
  }
}

.worksPageSec__infoItemSliderAreaSlideItem {
  opacity: 0.4;
  -webkit-transition: opacity 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: opacity 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: opacity 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: opacity 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.worksPageSec__infoItemSliderAreaSlideItem.swiper-slide-active {
  opacity: 1;
}

.worksPageSec__infoItemSliderAreaSlideItemTitle {
  margin-bottom: 25px;
  font-size: 1.7rem;
  font-weight: bold;
  letter-spacing: 0.3em;
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItemSliderAreaSlideItemTitle {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItemSliderArea .customPrevBtn,
  .worksPageSec__infoItemSliderArea .customNextBtn {
    width: 40px;
    height: 40px;
  }
}

.worksPageSec__infoItemSliderArea .customPrevBtn {
  right: 50px;
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItemSliderArea .customPrevBtn {
    right: -webkit-calc(-100px + 40px);
    right: -moz-calc(-100px + 40px);
    right: calc(-100px + 40px);
  }
  .worksPageSec__infoItemSliderArea .customPrevBtn::after {
    left: 13px;
  }
}

.worksPageSec__infoItemSliderArea .customNextBtn {
  right: 0;
}

@media screen and (max-width: 768px) {
  .worksPageSec__infoItemSliderArea .customNextBtn {
    right: -100px;
  }
  .worksPageSec__infoItemSliderArea .customNextBtn::after {
    right: 13px;
  }
}

.worksPageSec__infoItemSliderArea .swiper-pagination {
  width: auto;
  bottom: auto;
  top: -10px;
  left: 0;
  font-size: 2rem;
  font-family: "didot", serif;
}

.worksPageSec__infoItemSliderArea .swiper-pagination-current {
  font-size: 2rem;
}

.worksPageSec__infoItemSliderArea .swiper-pagination-total {
  font-size: 3rem;
}



















/*====================================================================
visionPageSec
====================================================================*/
.visionPageSec {
  padding: 100px 0;
}

@media screen and (max-width: 768px) {
  .visionPageSec {
    padding: 50px 0;
  }
}

.visionPageSec__inner {
  position: relative;
}

.visionPageSec__catch {
  font-size: 3rem;
  font-family: "didot", serif;
  line-height: 1.7;
  letter-spacing: 0.075em;
  text-transform: uppercase;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .visionPageSec__catch {
    font-size: 1.7rem;
  }
}

.visionPageSec__messageTitle {
  margin-top: 70px;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 2;
  letter-spacing: 0.5em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .visionPageSec__messageTitle {
    margin-top: 50px;
    font-size: 1.6rem;
  }
}

.visionPageSec__messageText {
  margin-top: 30px;
  font-size: 1.6rem;
  line-height: 2.4;
  letter-spacing: 0.3em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .visionPageSec__messageText {
    margin-top: 20px;
    font-size: 1.3rem;
  }
}

.visionPageSec__infoList {
  margin-top: 160px;
}

@media screen and (max-width: 768px) {
  .visionPageSec__infoList {
    margin-top: 80px;
  }
}

.visionPageSec__infoItem {
  margin-top: 140px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 768px) {
  .visionPageSec__infoItem {
    margin-top: 70px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.visionPageSec__infoItem:nth-child(1) {
  margin-top: 0;
}

.visionPageSec__infoItemTitle {
  width: 200px;
  font-family: "code-bold", sans-serif;
  font-size: 2rem;
  line-height: 1.7;
  letter-spacing: 0.38em;
}

@media screen and (max-width: 768px) {
  .visionPageSec__infoItemTitle {
    width: 100%;
  }
}

.visionPageSec__infoItemTextArea {
  width: -webkit-calc(100% - 200px);
  width: -moz-calc(100% - 200px);
  width: calc(100% - 200px);
}

@media screen and (max-width: 768px) {
  .visionPageSec__infoItemTextArea {
    width: 100%;
    margin-top: 25px;
  }
}

.visionPageSec__infoItemTextAreaTitle {
  font-size: 1.7rem;
  font-weight: bold;
  line-height: 1.8;
  letter-spacing: 0.3em;
}

@media screen and (max-width: 768px) {
  .visionPageSec__infoItemTextAreaTitle {
    font-size: 1.6rem;
  }
}

.visionPageSec__infoItemTextAreaSubTitle {
  margin-top: 25px;
  font-size: 1.3rem;
  letter-spacing: 0.075em;
}

@media screen and (max-width: 768px) {
  .visionPageSec__infoItemTextAreaSubTitle {
    margin-top: 10px;
  }
}

.visionPageSec__infoItemTextAreaText {
  margin-top: 40px;
}

@media screen and (max-width: 768px) {
  .visionPageSec__infoItemTextAreaText {
    margin-top: 30px;
  }
}

.visionPageSec__infoItemDetailList {
  margin-top: 80px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
     -moz-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media screen and (max-width: 768px) {
  .visionPageSec__infoItemDetailList {
    margin-top: 40px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.visionPageSec__infoItemDetailItem {
  width: -webkit-calc((100% - 50px) / 2);
  width: -moz-calc((100% - 50px) / 2);
  width: calc((100% - 50px) / 2);
  margin-top: 50px;
}

.visionPageSec__infoItemDetailItem:nth-child(1), .visionPageSec__infoItemDetailItem:nth-child(2) {
  margin-top: 0;
}

@media screen and (max-width: 768px) {
  .visionPageSec__infoItemDetailItem {
    width: 100%;
    margin-top: 35px;
  }
  .visionPageSec__infoItemDetailItem:nth-child(2) {
    margin-top: 35px;
  }
}

.visionPageSec__infoItemDetailItemNumber {
  padding-bottom: 5px;
  display: inline-block;
  border-bottom: 3px solid #231815;
  font-size: 3rem;
  font-family: "didot", serif;
  font-weight: bold;
  letter-spacing: 0.075em;
}

@media screen and (max-width: 768px) {
  .visionPageSec__infoItemDetailItemNumber {
    padding-bottom: 0;
    font-size: 2.5rem;
  }
}

.visionPageSec__infoItemDetailItemTitle {
  margin-top: 20px;
  font-size: 1.7rem;
  letter-spacing: 0.3em;
}

@media screen and (max-width: 768px) {
  .visionPageSec__infoItemDetailItemTitle {
    margin-top: 25px;
    font-size: 1.6rem;
  }
}

.visionPageSec__infoItemDetailItemSubTitle {
  margin-top: 5px;
  font-size: 1.3rem;
  line-height: 1.7;
  letter-spacing: 0.1em;
}

.visionPageSec__infoItemDetailItemText {
  margin-top: 20px;
}

@media screen and (max-width: 768px) {
  .visionPageSec__infoItemDetailItemText {
    margin-top: 15px;
  }
}

.visionPageSec__infoItemSliderAreaWrap {
  width: -webkit-calc(100% - 200px);
  width: -moz-calc(100% - 200px);
  width: calc(100% - 200px);
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  .visionPageSec__infoItemSliderAreaWrap {
    width: 100%;
  }
}

.visionPageSec__infoItemSliderArea {
  width: 76%;
  margin: 0;
  padding-top: 60px;
  overflow: visible;
}

@media screen and (max-width: 768px) {
  .visionPageSec__infoItemSliderArea {
    width: -webkit-calc(100% - 100px);
    width: -moz-calc(100% - 100px);
    width: calc(100% - 100px);
    margin-top: 45px;
  }
}

.visionPageSec__infoItemSliderAreaSlideItem {
  opacity: 0.4;
  -webkit-transition: opacity 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: opacity 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: opacity 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: opacity 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.visionPageSec__infoItemSliderAreaSlideItem.swiper-slide-active {
  opacity: 1;
}

.visionPageSec__infoItemSliderAreaSlideItemTitle {
  margin-bottom: 25px;
  font-size: 1.7rem;
  font-weight: bold;
  letter-spacing: 0.3em;
}

@media screen and (max-width: 768px) {
  .visionPageSec__infoItemSliderAreaSlideItemTitle {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 768px) {
  .visionPageSec__infoItemSliderArea .customPrevBtn,
  .visionPageSec__infoItemSliderArea .customNextBtn {
    width: 40px;
    height: 40px;
  }
}

.visionPageSec__infoItemSliderArea .customPrevBtn {
  right: 50px;
}

@media screen and (max-width: 768px) {
  .visionPageSec__infoItemSliderArea .customPrevBtn {
    right: -webkit-calc(-100px + 40px);
    right: -moz-calc(-100px + 40px);
    right: calc(-100px + 40px);
  }
  .visionPageSec__infoItemSliderArea .customPrevBtn::after {
    left: 13px;
  }
}

.visionPageSec__infoItemSliderArea .customNextBtn {
  right: 0;
}

@media screen and (max-width: 768px) {
  .visionPageSec__infoItemSliderArea .customNextBtn {
    right: -100px;
  }
  .visionPageSec__infoItemSliderArea .customNextBtn::after {
    right: 13px;
  }
}

.visionPageSec__infoItemSliderArea .swiper-pagination {
  width: auto;
  bottom: auto;
  top: -10px;
  left: 0;
  font-size: 2rem;
  font-family: "didot", serif;
}

.visionPageSec__infoItemSliderArea .swiper-pagination-current {
  font-size: 2rem;
}

.visionPageSec__infoItemSliderArea .swiper-pagination-total {
  font-size: 3rem;
}

/*====================================================================
webPageSec
====================================================================*/
.webPageSec {
  padding: 100px 0;
}

@media screen and (max-width: 768px) {
  .webPageSec {
    padding: 50px 0 0;
  }
}

.webPageSec__inner {
  position: relative;
}

@media screen and (max-width: 768px) {
  .webPageSec__inner {
    padding-bottom: 60%;
  }
}

/*====================================================================
moviePageSec
====================================================================*/
.moviePageSec {
  padding: 100px 0;
}

@media screen and (max-width: 768px) {
  .moviePageSec {
    padding: 50px 0;
  }
}

.moviePageSec__block {
  margin-top: -115px;
  padding: -webkit-calc(115px + 60px) 0 60px;
  padding: -moz-calc(115px + 60px) 0 60px;
  padding: calc(115px + 60px) 0 60px;
  position: relative;
}

@media screen and (max-width: 768px) {
  .moviePageSec__block {
    margin-top: -webkit-calc( -50px - 50px);
    margin-top: -moz-calc( -50px - 50px);
    margin-top: calc( -50px - 50px);
    padding: -webkit-calc(50px + 40px + 50px) 0 40px;
    padding: -moz-calc(50px + 40px + 50px) 0 40px;
    padding: calc(50px + 40px + 50px) 0 40px;
  }
}

.moviePageSec__title {
  margin-bottom: 45px;
  font-size: 4rem;
  font-weight: bold;
  font-family: 'code-bold', sans-serif;
  text-align: center;
  letter-spacing: 0.38em;
}

@media screen and (max-width: 768px) {
  .moviePageSec__title {
    margin-bottom: 35px;
    font-size: 2.9rem;
  }
}

.moviePageSec__textArea {
  margin-top: 60px;
  position: relative;
}

@media screen and (max-width: 768px) {
  .moviePageSec__textArea {
    margin-top: 30px;
  }
}

.moviePageSec__textArea.left {
  padding-right: 28%;
}

@media screen and (max-width: 768px) {
  .moviePageSec__textArea.left {
    padding-right: 20%;
  }
}

.moviePageSec__textArea.right {
  padding-left: 28%;
}

@media screen and (max-width: 768px) {
  .moviePageSec__textArea.right {
    padding-left: 20%;
  }
}

.moviePageSec__textAreaTitle {
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.3em;
}

.moviePageSec__textAreaSubTitle {
  margin-top: 20px;
  font-size: 1.3rem;
  font-weight: normal;
  line-height: 1.7;
  letter-spacing: 0.075em;
}

@media screen and (max-width: 768px) {
  .moviePageSec__textAreaSubTitle {
    margin-top: 5px;
  }
}

.moviePageSec__textAreaArticleText {
  margin-top: 35px;
}

@media screen and (max-width: 768px) {
  .moviePageSec__textAreaArticleText {
    margin-top: 20px;
  }
}

.moviePageSec__thumbArea01 {
  padding-top: 70px;
  position: relative;
}

.moviePageSec__thumbArea01Thumb {
  width: 60%;
}

.moviePageSec__thumbArea01Thumb:nth-child(2) {
  position: absolute;
  top: 0;
  right: 0;
}

.moviePageSec__thumb {
  width: 60%;
}

@media screen and (max-width: 768px) {
  .moviePageSec__thumb {
    width: 100%;
  }
}

.moviePageSec__sliderArea {
  width: 100vw;
  margin: 0 -webkit-calc((100% - 100vw) / 2);
  margin: 0 -moz-calc((100% - 100vw) / 2);
  margin: 0 calc((100% - 100vw) / 2);
  padding-top: 50px;
}

.moviePageSec__sliderArea .customPrevBtn {
  right: 60px;
}

.moviePageSec__sliderArea .customNextBtn {
  right: 10px;
}

/*====================================================================
companyPageSec
====================================================================*/
.companyPageSec {
  padding: 100px 0;
}

@media screen and (max-width: 768px) {
  .companyPageSec {
    padding: 50px 0;
  }
}

.companyPageSec__block {
  margin-top: 160px;
  position: relative;
}

@media screen and (max-width: 768px) {
  .companyPageSec__block {
    margin-top: 70px;
  }
}

.companyPageSec__block:nth-of-type(1) {
  margin-top: 0;
}

@media screen and (max-width: 768px) {
  .companyPageSec .articleTitle {
    padding-left: .5em;
  }
}

.companyPageSec__subTitle {
  margin-top: 80px;
  font-size: 2rem;
  font-family: 'code-bold', sans-serif;
  font-weight: bold;
  letter-spacing: 0.38em;
}

@media screen and (max-width: 768px) {
  .companyPageSec__subTitle {
    margin-top: 40px;
  }
}

.companyPageSec__headTitle {
  margin: 40px 0 15px;
  padding-bottom: 8px;
  display: inline-block;
  border-bottom: 3px solid #231815;
  font-size: 1.6rem;
  letter-spacing: 0.2em;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .companyPageSec__headTitle {
    margin: 30px 0 10px;
    font-size: 1.5rem;
  }
}

.companyPageSec__infoList {
  margin-top: 40px;
}

@media screen and (max-width: 768px) {
  .companyPageSec__infoList {
    margin-top: 20px;
  }
}

.companyPageSec__infoItem {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
}

.companyPageSec__infoItemRow {
  padding: 15px 5px;
  border-top: 1px solid rgba(204, 204, 204, 0.4);
}

@media screen and (max-width: 768px) {
  .companyPageSec__infoItemRow {
    padding: 10px 3px;
  }
}

.companyPageSec__infoItemRow:nth-child(1) {
  width: 200px;
}

@media screen and (max-width: 768px) {
  .companyPageSec__infoItemRow:nth-child(1) {
    width: 100px;
  }
}

.companyPageSec__infoItemRow:nth-child(2) {
  width: -webkit-calc(100% - 200px);
  width: -moz-calc(100% - 200px);
  width: calc(100% - 200px);
}

@media screen and (max-width: 768px) {
  .companyPageSec__infoItemRow:nth-child(2) {
    width: -webkit-calc(100% - 100px);
    width: -moz-calc(100% - 100px);
    width: calc(100% - 100px);
  }
}

@media screen and (max-width: 768px) {
  .companyPageSec__infoItemRowTitle {
    font-size: 1.2rem;
  }
}

@media screen and (max-width: 768px) {
  .companyPageSec__infoItemRowText {
    font-size: 1.2rem;
  }
}

.companyPageSec__accordionBtnList {
  margin-top: 50px;
}

.companyPageSec__accordionBtnItem {
  margin-top: 40px;
}

.companyPageSec__accordionBtnItem:nth-child(1) {
  margin-top: 0;
}

.companyPageSec__accordionBtnLink {
  padding: 5px 50px 5px 5px;
  display: block;
  position: relative;
  border-bottom: 1px solid #231815;
  color: #231815;
  font-size: 1.7rem;
  font-weight: bold;
  letter-spacing: 0.3em;
}

@media screen and (max-width: 768px) {
  .companyPageSec__accordionBtnLink {
    font-size: 1.5rem;
  }
}

.companyPageSec__accordionBtnLink::after {
  content: '';
  width: 12px;
  height: 12px;
  display: block;
  position: absolute;
  top: 50%;
  right: 5px;
  -webkit-transform: translateY(-50%) rotate(45deg);
     -moz-transform: translateY(-50%) rotate(45deg);
      -ms-transform: translateY(-50%) rotate(45deg);
       -o-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  border-bottom: 1px solid #231815;
  border-right: 1px solid #231815;
  -webkit-transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.companyPageSec__accordionBtnLink.is-active::after {
  -webkit-transform: translateY(-50%) rotate(-135deg);
     -moz-transform: translateY(-50%) rotate(-135deg);
      -ms-transform: translateY(-50%) rotate(-135deg);
       -o-transform: translateY(-50%) rotate(-135deg);
          transform: translateY(-50%) rotate(-135deg);
}

.companyPageSec__accordionContent {
  padding: 50px 15px 25px;
  display: none;
}

@media screen and (max-width: 768px) {
  .companyPageSec__accordionContent {
    padding: 30px 15px 25px;
  }
}

.companyPageSec__accordionContentText {
  font-weight: bold;
}


/*====================================================================
recruitPageSec
====================================================================*/
.recruitPageSec {
  padding: 100px 0;
}

@media screen and (max-width: 768px) {
  .recruitPageSec {
    padding: 50px 0;
  }
}

.recruitPageSec__block {
  margin-top: 160px;
  position: relative;
}

@media screen and (max-width: 768px) {
  .recruitPageSec__block {
    margin-top: 70px;
  }
}

.recruitPageSec__block:nth-of-type(1) {
  margin-top: 0;
}

@media screen and (max-width: 768px) {
  .recruitPageSec .articleTitle {
    padding-left: .5em;
  }
}

.recruitPageSec__subTitle {
  margin-top: 80px;
  font-size: 2rem;
  font-family: 'code-bold', sans-serif;
  font-weight: bold;
  letter-spacing: 0.38em;
}

@media screen and (max-width: 768px) {
  .recruitPageSec__subTitle {
    margin-top: 40px;
  }
}

.recruitPageSec__headTitle {
  margin: 40px 0 15px;
  padding-bottom: 8px;
  display: inline-block;
  border-bottom: 3px solid #231815;
  font-size: 1.6rem;
  letter-spacing: 0.2em;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .recruitPageSec__headTitle {
    margin: 30px 0 10px;
    font-size: 1.5rem;
  }
}

.recruitPageSec__infoList {
  margin-top: 40px;
}

@media screen and (max-width: 768px) {
  .recruitPageSec__infoList {
    margin-top: 20px;
  }
}

.recruitPageSec__infoItem {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
}

.recruitPageSec__infoItemRow {
  padding: 15px 5px;
  border-top: 1px solid rgba(204, 204, 204, 0.4);
}

@media screen and (max-width: 768px) {
  .recruitPageSec__infoItemRow {
    padding: 10px 3px;
  }
}

.recruitPageSec__infoItemRow:nth-child(1) {
  width: 200px;
}

@media screen and (max-width: 768px) {
  .recruitPageSec__infoItemRow:nth-child(1) {
    width: 100px;
  }
}

.recruitPageSec__infoItemRow:nth-child(2) {
  width: -webkit-calc(100% - 200px);
  width: -moz-calc(100% - 200px);
  width: calc(100% - 200px);
}

@media screen and (max-width: 768px) {
  .recruitPageSec__infoItemRow:nth-child(2) {
    width: -webkit-calc(100% - 100px);
    width: -moz-calc(100% - 100px);
    width: calc(100% - 100px);
  }
}

@media screen and (max-width: 768px) {
  .recruitPageSec__infoItemRowTitle {
    font-size: 1.2rem;
  }
}

@media screen and (max-width: 768px) {
  .recruitPageSec__infoItemRowText {
    font-size: 1.2rem;
  }
}



.recruitPageSec__accordionBtnList {
  margin-top: 50px;
}

.recruitPageSec__accordionBtnItem {
  margin-top: 40px;
}

.recruitPageSec__accordionBtnItem:nth-child(1) {
  margin-top: 0;
}

.recruitPageSec__accordionBtnLink {
  padding: 5px 50px 5px 5px;
  display: block;
  position: relative;
  border-bottom: 1px solid #231815;
  color: #231815;
  font-size: 1.7rem;
  font-weight: bold;
  letter-spacing: 0.3em;
}

@media screen and (max-width: 768px) {
  .recruitPageSec__accordionBtnLink {
    font-size: 1.5rem;
  }
}

.recruitPageSec__accordionBtnLink::after {
  content: '';
  width: 12px;
  height: 12px;
  display: block;
  position: absolute;
  top: 50%;
  right: 5px;
  -webkit-transform: translateY(-50%) rotate(45deg);
     -moz-transform: translateY(-50%) rotate(45deg);
      -ms-transform: translateY(-50%) rotate(45deg);
       -o-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  border-bottom: 1px solid #231815;
  border-right: 1px solid #231815;
  -webkit-transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.3s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.recruitPageSec__accordionBtnLink.is-active::after {
  -webkit-transform: translateY(-50%) rotate(-135deg);
     -moz-transform: translateY(-50%) rotate(-135deg);
      -ms-transform: translateY(-50%) rotate(-135deg);
       -o-transform: translateY(-50%) rotate(-135deg);
          transform: translateY(-50%) rotate(-135deg);
}

.recruitPageSec__accordionContent {
  padding: 50px 15px 25px;
  display: none;
}

@media screen and (max-width: 768px) {
  .recruitPageSec__accordionContent {
    padding: 30px 15px 25px;
  }
}

.recruitPageSec__accordionContentText {
  font-weight: bold;
}

/* 下記はフォーム部分 */
.recruitPageSec__contact{
  padding: 100px 0;
}

@media screen and (max-width: 768px) {
  .recruitPageSec__contact{
    padding: 150px 0;
  }
}

.recruitPageSec__telArea {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}

.recruitPageSec__telAreaTitle {
  font-size: 4rem;
  font-family: "code-bold", sans-serif;
  text-align: center;
  letter-spacing: 0.38em;
}

@media screen and (max-width: 768px) {
  .recruitPageSec__telAreaTitle {
    font-size: 2.9rem;
  }
}

.recruitPageSec__telAreaSubTitle {
  margin-top: 35px;
  font-size: 1.6rem;
  text-align: center;
  letter-spacing: 0.2em;
}

@media screen and (max-width: 768px) {
  .recruitPageSec__telAreaSubTitle {
    margin-top: 20px;
  }
}

.recruitPageSec__telAreaLink {
  margin-top: 15px;
  color: #231815;
  font-size: 4rem;
  font-family: "code-bold", sans-serif;
  text-align: center;
  letter-spacing: 0.38em;
}

@media screen and (max-width: 768px) {
  .recruitPageSec__telAreaLink {
    font-size: 2.9rem;
  }
}

@media screen and (min-width: 769px) {
  .recruitPageSec__telAreaLink {
    -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  }
}

@media screen and (min-width: 769px) {
  .recruitPageSec__telAreaLink:hover {
    opacity: 0.6;
  }
}

@media screen and (max-width: 768px) {
  .recruitPageSec__telAreaLink {
    margin-top: 15px;
  }
}

.recruitPageSec__telAreaText {
  margin-top: 15px;
  font-size: 1.6rem;
  font-family: "code-bold", sans-serif;
  letter-spacing: 0.38em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .recruitPageSec__telAreaText {
    margin-top: 10px;
  }
}

.recruitPageSec__mailArea {
  margin-top: -140px;
  padding-top: 140px
}

@media screen and (max-width: 768px) {
  .recruitPageSec__mailArea {
    margin-top: -80px;
    padding-top: 80px
  }
}

.recruitPageSec__mailAreaHeadTitle {
  font-size: 4rem;
  font-family: "code-bold", sans-serif;
  text-align: center;
  letter-spacing: 0.38em;
}

@media screen and (max-width: 768px) {
  .recruitPageSec__mailAreaHeadTitle {
    font-size: 2.9rem;
  }
}

.recruitPageSec__mailAreaHeadSubTitle {
  margin-top: 45px;
  font-size: 1.6rem;
  letter-spacing: 0.38em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .recruitPageSec__mailAreaHeadSubTitle {
    margin-top: 35px;
  }
}

.recruitPageSec__mailAreaFormArea {
  margin-top: 25px;
}

.recruitPageSec__mailAreaFormAreaTabBtnList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 40px;
}

.recruitPageSec__mailAreaFormAreaTabBtnItem {
  width: 50%;
}

.recruitPageSec__mailAreaFormAreaTabBtnLink {
  padding-bottom: 30px;
  display: block;
  position: relative;
  pointer-events: auto;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.recruitPageSec__mailAreaFormAreaTabBtnLink::after {
  content: "";
  width: 12px;
  height: 12px;
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%) rotate(-45deg);
     -moz-transform: translateX(-50%) rotate(-45deg);
      -ms-transform: translateX(-50%) rotate(-45deg);
       -o-transform: translateX(-50%) rotate(-45deg);
          transform: translateX(-50%) rotate(-45deg);
  border-left: 2px solid #a7a3a1;
  border-bottom: 2px solid #a7a3a1;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.recruitPageSec__mailAreaFormAreaTabBtnLinkText {
  padding: 13px;
  display: block;
  position: relative;
  border-bottom: 3px solid #a7a3a1;
  color: #a7a3a1;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.2em;
  text-align: center;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.recruitPageSec__mailAreaFormAreaTabBtnLinkText::after {
  content: '';
  width: 0;
  height: 3px;
  position: absolute;
  bottom: 0;
  -webkit-transform: translateY(100%);
     -moz-transform: translateY(100%);
      -ms-transform: translateY(100%);
       -o-transform: translateY(100%);
          transform: translateY(100%);
  background: #231815;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

@media screen and (max-width: 768px) {
  .recruitPageSec__mailAreaFormAreaTabBtnLinkText {
    font-size: 1.4rem;
  }
}

.recruitPageSec__mailAreaFormAreaTabBtnItem:nth-child(1) [class*="__mailAreaFormAreaTabBtnLinkText"]::after {
  right: 0;
}

.recruitPageSec__mailAreaFormAreaTabBtnItem:nth-child(2) [class*="__mailAreaFormAreaTabBtnLinkText"]::after {
  left: 0;
}

@media screen and (min-width: 769px) {
  .recruitPageSec__mailAreaFormAreaTabBtnLink:not(.is-current):hover::after {
    bottom: -5px;
  }
  .recruitPageSec__mailAreaFormAreaTabBtnLink:not(.is-current):hover [class*="__mailAreaFormAreaTabBtnLinkText"] {
    letter-spacing: 0.4em;
  }
}

.recruitPageSec__mailAreaFormAreaTabBtnLink.is-active {
  pointer-events: none;
}

.recruitPageSec__mailAreaFormAreaTabBtnLink.is-active::after {
  border-left-color: #231815;
  border-bottom-color: #231815;
}

.recruitPageSec__mailAreaFormAreaTabBtnLink.is-active [class*="__mailAreaFormAreaTabBtnLinkText"] {
  color: #231815;
}

.recruitPageSec__mailAreaFormAreaTabBtnLink.is-active [class*="__mailAreaFormAreaTabBtnLinkText"]::after {
  width: 100%;
}

.recruitPageSec__mailAreaFormAreaForm {
  overflow: visible;
  opacity: 1;
  visibility: visible;
  height: 100%;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}


.recruitPageSec__mailAreaFormAreaFormInputItem {
  margin-top: 25px;
}

.recruitPageSec__mailAreaFormAreaFormInputItem:nth-child(1) {
  margin-top: 0;
}

.recruitPageSec__mailAreaFormAreaFormInputItemTitle {
  display: inline-block;
  font-size: 1.4rem;
  letter-spacing: 0.2em;
}

.recruitPageSec__mailAreaFormAreaFormInputItemBody {
  margin-top: 5px;
}

.recruitPageSec__mailAreaFormAreaFormTimeArea {
  margin-top: 25px;
}

.recruitPageSec__mailAreaFormAreaFormTimeAreaText {
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 2;
  letter-spacing: 0.2em;
}

.recruitPageSec__mailAreaFormAreaFormTimeAreaTitle {
  margin: 15px 0 10px;
  display: inline-block;
  font-size: 1.4rem;
  letter-spacing: 0.2em;
}

.recruitPageSec__mailAreaFormAreaFormTimeAreaCaption {
  margin-left: 10px;
  display: inline-block;
  color: #a7a3a1;
  font-size: 1.2rem;
  letter-spacing: 0.2em;
}

.recruitPageSec__mailAreaFormAreaFormTimeAreaClmArea {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.recruitPageSec .selectBoxWrap {
  margin-left: 20px;
}

.recruitPageSec .selectBoxWrap:nth-of-type(1) {
  margin-left: 0;
}

.recruitPageSec__mailAreaFormAreaFormTimeAreaClmAreaText {
  margin-left: 10px;
  font-size: 1.4rem;
  letter-spacing: 0.2em;
}

.recruitPageSec__mailAreaFormAreaFormCheckArea {
  margin-top: 50px;
}

.recruitPageSec__mailAreaFormAreaFormCheckArea .checkBoxWrap {
  margin-top: 25px;
}

.recruitPageSec__mailAreaFormAreaFormCheckArea .checkBoxWrap:nth-of-type(1) {
  margin-top: 0;
}

.recruitPageSec__mailAreaFormAreaFormSubmitArea {
  margin-top: 50px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}






























/*====================================================================
privacyPageSec
====================================================================*/
.privacyPageSec {
  padding: 100px 0;
}

@media screen and (max-width: 768px) {
  .privacyPageSec {
    padding: 50px 0;
  }
}

.privacyPageSec__inner {
  position: relative;
}

.privacyPageSec__title {
  margin: 60px 0 15px;
}

@media screen and (max-width: 768px) {
  .privacyPageSec__title {
    margin: 50px 0 10px;
  }
}

.privacyPageSec__textItem {
  margin-top: 8px;
}

.privacyPageSec__textItem:nth-child(1) {
  margin-top: 0;
}































/*====================================================================
contactPageSec
====================================================================*/
.contactPageSec {
  padding: 100px 0;
}

@media screen and (max-width: 768px) {
  .contactPageSec {
    padding: 50px 0;
  }
}

.contactPageSec__telArea {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}

.contactPageSec__telAreaTitle {
  font-size: 4rem;
  font-family: "code-bold", sans-serif;
  text-align: center;
  letter-spacing: 0.38em;
}

@media screen and (max-width: 768px) {
  .contactPageSec__telAreaTitle {
    font-size: 2.9rem;
  }
}

.contactPageSec__telAreaSubTitle {
  margin-top: 35px;
  font-size: 1.6rem;
  text-align: center;
  letter-spacing: 0.2em;
}

@media screen and (max-width: 768px) {
  .contactPageSec__telAreaSubTitle {
    margin-top: 20px;
  }
}

.contactPageSec__telAreaLink {
  margin-top: 15px;
  color: #231815;
  font-size: 4rem;
  font-family: "code-bold", sans-serif;
  text-align: center;
  letter-spacing: 0.38em;
}

@media screen and (max-width: 768px) {
  .contactPageSec__telAreaLink {
    font-size: 2.9rem;
  }
}

@media screen and (min-width: 769px) {
  .contactPageSec__telAreaLink {
    -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
    transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  }
}

@media screen and (min-width: 769px) {
  .contactPageSec__telAreaLink:hover {
    opacity: 0.6;
  }
}

@media screen and (max-width: 768px) {
  .contactPageSec__telAreaLink {
    margin-top: 15px;
  }
}

.contactPageSec__telAreaText {
  margin-top: 15px;
  font-size: 1.6rem;
  font-family: "code-bold", sans-serif;
  letter-spacing: 0.38em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .contactPageSec__telAreaText {
    margin-top: 10px;
  }
}

.contactPageSec__mailArea {
  margin-top: -140px;
  padding-top: 140px
}

@media screen and (max-width: 768px) {
  .contactPageSec__mailArea {
    margin-top: -80px;
    padding-top: 80px
  }
}

.contactPageSec__mailAreaHeadTitle {
  font-size: 4rem;
  font-family: "code-bold", sans-serif;
  text-align: center;
  letter-spacing: 0.38em;
}

@media screen and (max-width: 768px) {
  .contactPageSec__mailAreaHeadTitle {
    font-size: 2.9rem;
  }
}

.contactPageSec__mailAreaHeadSubTitle {
  margin-top: 45px;
  font-size: 1.6rem;
  letter-spacing: 0.38em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .contactPageSec__mailAreaHeadSubTitle {
    margin-top: 35px;
  }
}

.contactPageSec__mailAreaFormArea {
  margin-top: 25px;
}

.contactPageSec__mailAreaFormAreaTabBtnList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 40px;
}

.contactPageSec__mailAreaFormAreaTabBtnItem {
  width: 50%;
}

.contactPageSec__mailAreaFormAreaTabBtnLink {
  padding-bottom: 30px;
  display: block;
  position: relative;
  pointer-events: auto;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.contactPageSec__mailAreaFormAreaTabBtnLink::after {
  content: "";
  width: 12px;
  height: 12px;
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%) rotate(-45deg);
     -moz-transform: translateX(-50%) rotate(-45deg);
      -ms-transform: translateX(-50%) rotate(-45deg);
       -o-transform: translateX(-50%) rotate(-45deg);
          transform: translateX(-50%) rotate(-45deg);
  border-left: 2px solid #a7a3a1;
  border-bottom: 2px solid #a7a3a1;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.contactPageSec__mailAreaFormAreaTabBtnLinkText {
  padding: 13px;
  display: block;
  position: relative;
  border-bottom: 3px solid #a7a3a1;
  color: #a7a3a1;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.2em;
  text-align: center;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.contactPageSec__mailAreaFormAreaTabBtnLinkText::after {
  content: '';
  width: 0;
  height: 3px;
  position: absolute;
  bottom: 0;
  -webkit-transform: translateY(100%);
     -moz-transform: translateY(100%);
      -ms-transform: translateY(100%);
       -o-transform: translateY(100%);
          transform: translateY(100%);
  background: #231815;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

@media screen and (max-width: 768px) {
  .contactPageSec__mailAreaFormAreaTabBtnLinkText {
    font-size: 1.4rem;
  }
}

.contactPageSec__mailAreaFormAreaTabBtnItem:nth-child(1) [class*="__mailAreaFormAreaTabBtnLinkText"]::after {
  right: 0;
}

.contactPageSec__mailAreaFormAreaTabBtnItem:nth-child(2) [class*="__mailAreaFormAreaTabBtnLinkText"]::after {
  left: 0;
}

@media screen and (min-width: 769px) {
  .contactPageSec__mailAreaFormAreaTabBtnLink:not(.is-current):hover::after {
    bottom: -5px;
  }
  .contactPageSec__mailAreaFormAreaTabBtnLink:not(.is-current):hover [class*="__mailAreaFormAreaTabBtnLinkText"] {
    letter-spacing: 0.4em;
  }
}

.contactPageSec__mailAreaFormAreaTabBtnLink.is-active {
  pointer-events: none;
}

.contactPageSec__mailAreaFormAreaTabBtnLink.is-active::after {
  border-left-color: #231815;
  border-bottom-color: #231815;
}

.contactPageSec__mailAreaFormAreaTabBtnLink.is-active [class*="__mailAreaFormAreaTabBtnLinkText"] {
  color: #231815;
}

.contactPageSec__mailAreaFormAreaTabBtnLink.is-active [class*="__mailAreaFormAreaTabBtnLinkText"]::after {
  width: 100%;
}

.contactPageSec__mailAreaFormAreaForm {
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  height: 0;
  -webkit-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.4s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.contactPageSec__mailAreaFormAreaForm.is-active {
  opacity: 1;
  visibility: visible;
  height: inherit;
  -webkit-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -o-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  -moz-transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
  transition: all 0.8s cubic-bezier(0.545, 0.08, 0.52, 0.975) 0s;
}

.contactPageSec__mailAreaFormAreaFormInputItem {
  margin-top: 25px;
}

.contactPageSec__mailAreaFormAreaFormInputItem:nth-child(1) {
  margin-top: 0;
}

.contactPageSec__mailAreaFormAreaFormInputItemTitle {
  display: inline-block;
  font-size: 1.4rem;
  letter-spacing: 0.2em;
}

.contactPageSec__mailAreaFormAreaFormInputItemBody {
  margin-top: 5px;
}

.contactPageSec__mailAreaFormAreaFormTimeArea {
  margin-top: 25px;
}

.contactPageSec__mailAreaFormAreaFormTimeAreaText {
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 2;
  letter-spacing: 0.2em;
}

.contactPageSec__mailAreaFormAreaFormTimeAreaTitle {
  margin: 15px 0 10px;
  display: inline-block;
  font-size: 1.4rem;
  letter-spacing: 0.2em;
}

.contactPageSec__mailAreaFormAreaFormTimeAreaCaption {
  margin-left: 10px;
  display: inline-block;
  color: #a7a3a1;
  font-size: 1.2rem;
  letter-spacing: 0.2em;
}

.contactPageSec__mailAreaFormAreaFormTimeAreaClmArea {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.contactPageSec .selectBoxWrap {
  margin-left: 20px;
}

.contactPageSec .selectBoxWrap:nth-of-type(1) {
  margin-left: 0;
}

.contactPageSec__mailAreaFormAreaFormTimeAreaClmAreaText {
  margin-left: 10px;
  font-size: 1.4rem;
  letter-spacing: 0.2em;
}

.contactPageSec__mailAreaFormAreaFormCheckArea {
  margin-top: 50px;
}

.contactPageSec__mailAreaFormAreaFormCheckArea .checkBoxWrap {
  margin-top: 25px;
}

.contactPageSec__mailAreaFormAreaFormCheckArea .checkBoxWrap:nth-of-type(1) {
  margin-top: 0;
}

.contactPageSec__mailAreaFormAreaFormSubmitArea {
  margin-top: 50px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}


.loadimg{
  width: 150px;
  max-width: 100%;
  margin: auto;
  display: block;
  transform: translate(-50%, -120%);
  position: absolute;
  left: 50%;
  top: 50%;
}

.progress {
  background-color: #fff;
  color: rgba(255,255,255,0.5);
  height: 100%;
  position: fixed;
  width: 100vw;
  z-index: 999;
}

.progress_bar {
  border-top: 1px solid rgb(0, 0, 0);
  position: absolute;
  top:50%;
  left: 0;
  width: 0%;
}

.progress_text {
  font-size: 16px;
  margin-top: 30px;
  position: absolute;
  text-align: center;
  top: 50%;
  width: 100%;
  color: rgba(0,0,0,0.5);
}

.progress_complete .progress_bar {
  border-top-color: rgb(255, 255, 255);
}

/*# sourceMappingURL=style.css.map */
