@charset "UTF-8";
/*!
Theme Name: Kawaihae
Theme URI: https://Kawaihae.co.jp
Author: shogo yonetani
Author URI: https://panarea.co.jp
Description: Kawaihae
*/
/*Color Management*/
:root {
  --s-font-noto: 'Noto Sans JP';
  --s-font-inter: Inter;
  --fontweight-5: 500;
  --fontweight-6: 600;
  --fontweight-7: 700;
  --fontweight-8: 800;
  --text: #0a0000;
  --color-text: #151515;
  --color-white: #fff;
  --white: #fff;
  --color-gray: #757575;
  --color-lightgray: #ecedf0;
  --color-black: #171617;
  --border-light-black: rgba(31,69,94,.205);
  --border-light-white: rgba(255,255,255,.1025);
  --key1: #f23f03;
  --key2: #90c31f;
  --gray1: #f7f7f7;
  --gray2: #f0f0f0;
  --gray3: #b3b3b3;
  --black1: #262626;
  --black2: #151515;
  --blue1: #0071bc;
  --background1: #130708;
  --background2: #3e3736;
  --background3: #edeae2;
  --background4: #e3dfd2;
  --border-black: rgba(0,0,0,.328);
  --border-white: rgba(255,255,255,.1025); }

/*Basic Color*/
/*Couplate Color*/
/*Footer*/
/*ASIDE*/
/*!color*/
/*!レスポンシブ*/
/*mouse-follower-dev*/
.mf-cursor {
  color: #555555;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10001 !important;
  direction: ltr;
  contain: layout style size;
  pointer-events: none;
  transition: opacity 0.3s, color 0.4s; }
  @media screen and (max-width: 768px) {
    .mf-cursor {
      display: none; } }
  .mf-cursor:before {
    content: "";
    position: absolute;
    top: -24px;
    left: -24px;
    display: block;
    width: 48px;
    height: 48px;
    transform: scale(0.2);
    background: currentColor;
    border-radius: 50%;
    transition: transform 0.25s ease-in-out, opacity 0.1s; }
  .mf-cursor.-inverse {
    color: #aaaaaa; }
  @supports (mix-blend-mode: exclusion) {
    .mf-cursor.-exclusion {
      mix-blend-mode: exclusion; }
      .mf-cursor.-exclusion:before {
        background: #aaaaaa; } }
  .mf-cursor.-pointer:before {
    transform: scale(0.15); }
  .mf-cursor.-text {
    white-space: nowrap; }
    .mf-cursor.-text:before {
      opacity: 0.85;
      transform: scale(1.7); }
    .mf-cursor.-text.-active:before {
      transform: scale(1.6);
      transition-duration: 0.2s; }
  .mf-cursor.-icon:before {
    transform: scale(1.5); }
  .mf-cursor.-icon.-active:before {
    transform: scale(1.4); }
  .mf-cursor.-hidden:before {
    transform: scale(0); }
  .mf-cursor-text {
    position: absolute;
    top: -18px;
    left: -18px;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: scale(0) rotate(10deg);
    opacity: 0;
    color: #fff;
    font-size: 16px;
    line-height: 20px;
    text-align: center;
    transition: opacity 0.4s, transform 0.3s; }
    .mf-cursor.-text .mf-cursor-text, .mf-cursor.-icon .mf-cursor-text {
      opacity: 1;
      transform: scale(1); }
  .mf-cursor-media {
    position: absolute;
    width: 200px !important;
    height: 40px !important;
    margin: -20px 0 0 -100px !important; }
    @media screen and (max-width: 768px) {
      .mf-cursor-media {
        width: 200px !important;
        height: 40px !important;
        margin: -20px 0 0 -100px !important; } }
    .mf-cursor-media img, .mf-cursor-media video {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      border-radius: 0; }
      @supports (object-fit: cover) {
        .mf-cursor-media img, .mf-cursor-media video {
          position: static;
          width: 100%;
          height: 100%;
          object-fit: cover;
          transform: translateZ(0); } }
    .mf-cursor-media-box {
      position: relative;
      width: 100%;
      height: 100%;
      overflow: hidden;
      transform: scale(0) translateZ(0);
      padding: 1px;
      opacity: 0;
      border-radius: 50%;
      transition: transform 0.35s, opacity 0.2s 0.2s; }
      .mf-cursor.-media .mf-cursor-media-box {
        opacity: 1;
        transform: scale(0.696);
        transition-duration: 0.4s, 0.4s;
        transition-delay: 0s, 0s; }

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

body {
  margin: 0; }

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

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

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

[hidden], template {
  display: none; }

a {
  background: transparent; }

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

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

b, strong {
  font-weight: 700; }

dfn {
  font-style: italic; }

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

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

small {
  font-size: 80%; }

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

sup {
  top: -.5em; }

sub {
  bottom: -.25em; }

img {
  border: 0; }

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

figure {
  margin: 1em 40px; }

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

pre {
  overflow: auto; }

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

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

button {
  overflow: visible; }

button, select {
  text-transform: none; }

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

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

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

input {
  line-height: normal; }

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

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

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

fieldset {
  border: 1px solid silver;
  margin: 0 2px;
  padding: .35em .625em .75em; }

legend {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: 700; }

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

td, th {
  padding: 0; }

/*!//normalize.css*/
/*! locomotive-scroll v4.1.3 | MIT License | https://github.com/locomotivemtl/locomotive-scroll */
html.has-scroll-smooth {
  overflow: hidden; }

html.has-scroll-dragging {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.has-scroll-smooth body {
  overflow: hidden; }

.has-scroll-smooth [data-scroll-container] {
  min-height: 100vh; }

[data-scroll-direction=horizontal] [data-scroll-container] {
  display: inline-block;
  height: 100vh;
  white-space: nowrap; }

[data-scroll-direction=horizontal] [data-scroll-section] {
  display: inline-block;
  height: 100%;
  vertical-align: top;
  white-space: nowrap; }

.c-scrollbar {
  height: 100%;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
  transform-origin: center right;
  transition: transform .3s,opacity .3s;
  width: 11px; }

.c-scrollbar:hover {
  transform: scaleX(1.45); }

.c-scrollbar:hover, .has-scroll-dragging .c-scrollbar, .has-scroll-scrolling .c-scrollbar {
  opacity: 1; }

[data-scroll-direction=horizontal] .c-scrollbar {
  bottom: 0;
  height: 10px;
  top: auto;
  transform: scaleY(1);
  width: 100%; }

[data-scroll-direction=horizontal] .c-scrollbar:hover {
  transform: scaleY(1.3); }

.c-scrollbar_thumb {
  background-color: #000;
  border-radius: 10px;
  cursor: -webkit-grab;
  cursor: grab;
  margin: 2px;
  opacity: .5;
  position: absolute;
  right: 0;
  top: 0;
  width: 7px; }

.has-scroll-dragging .c-scrollbar_thumb {
  cursor: -webkit-grabbing;
  cursor: grabbing; }

[data-scroll-direction=horizontal] .c-scrollbar_thumb {
  bottom: 0;
  right: auto; }

/*!basic css*/
html {
  height: 100%;
  font-size: 1.2vw; }
  @media screen and (max-width: 768px) {
    html {
      font-size: 3.5vw; } }

body {
  margin: 0;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  width: auto;
  height: auto;
  font-family: YakuHanJP_Narrow, var(--s-font-inter), 游ゴシック, Yu Gothic, YuGothic, sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  background-color: var(--gray1);
  color: var(--color-text);
  /*
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  opacity: 0;
  */
  transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  padding-bottom: 1px; }
  body::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    z-index: 15;
    display: block;
    width: 100%;
    height: 100%;
    background: url("images/noise.png");
    background-repeat: repeat;
    background-size: 100px;
    pointer-events: none;
    opacity: 1; }

html.no-scroll {
  overflow: hidden; }

body.no-scroll {
  position: fixed;
  width: 100%; }

* {
  color: var(--color-text);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-feature-settings: "palt";
  -ms-overflow-style: none; }
  *::-webkit-scrollbar {
    display: none; }

::selection {
  background-color: #f5e21c;
  color: var(--text); }

/*マウスストーカー*/
.mouse {
  background: #ee781f;
  border-radius: 50%;
  position: fixed;
  z-index: 10010;
  pointer-events: none;
  transition: cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s;
  -o-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s;
  -moz-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s;
  -webkit-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s; }
  @media screen and (max-width: 768px) {
    .mouse {
      display: none; } }

.mouse2 {
  position: fixed;
  z-index: 100001;
  width: 1em;
  height: 1em;
  background: #ee781f;
  margin: -.5em 0 0 -.5em;
  border-radius: 8.2em;
  pointer-events: none;
  transition: transform 0.1s;
  transition-delay: .1s;
  opacity: 0; }
  @media screen and (max-width: 768px) {
    .mouse2 {
      display: none; } }

.mouse2.active {
  border: none;
  background: #ee781f;
  transform: scale(2);
  transition-delay: .1s; }

/*!TEXT*/
p, h1, h2, h3, h4, h5 {
  display: block;
  -webkit-margin-before: 0em;
  -webkit-margin-after: 0em;
  -webkit-margin-start: 0px;
  -webkit-margin-end: 0px;
  margin: 0;
  font-size: 1em; }

h1, h2, h3, h4, h5 {
  position: relative;
  z-index: 15; }

p {
  letter-spacing: 0;
  font-weight: 400;
  line-height: 1.64; }

.sans {
  font-family: 'Inter', Avenir Next,Verdana,'M PLUS 1p', 游ゴシック,Yu Gothic,YuGothic,ヒラギノ角ゴ Pro W3,Hiragino Kaku Gothic Pro,メイリオ,Meiryo,Osaka,sans-serif; }

.serif {
  font-family: "Forum", serif; }

i {
  font-style: normal; }

.emphasis {
  padding: 0 5px;
  background: linear-gradient(var(--key4), var(--key4)) no-repeat;
  background-size: 100%;
  background-position: 0; }

.posCenter {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0); }

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

img.objf {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;'; }

video.objf {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;'; }

iframe.objf {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;'; }

/*!LINK*/
a {
  text-decoration: none; }
  a.not {
    cursor: not-allowed; }
  a[target='_blank'] {
    		/*
      p {
       &::after {
        content: ''; display: inline-block; vertical-align: sub; width: 1em; height: 1em; background: url(images/iconLinkout.svg); background-size: cover; margin-left: 1em;
       }
      }
    		*/ }
  a.arrow {
    display: flex;
    align-items: center; }
    a.arrow > ._arrow {
      position: relative;
      z-index: 15;
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 3.28em;
      height: 3.28em;
      margin-left: 18px;
      border-radius: 3.28em;
      overflow: hidden; }
      a.arrow > ._arrow::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        z-index: -1;
        display: block;
        width: 100%;
        height: 100%;
        background: #ee781f; }
      a.arrow > ._arrow img {
        width: 1em;
        height: 1em; }
  a.positionLink {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

p.btn {
  position: relative;
  z-index: 15;
  display: block; }
  p.btn._liner {
    display: table;
    margin: 0 auto;
    line-height: 3; }
    p.btn._liner::before {
      content: '';
      display: block;
      width: 0;
      height: 1px;
      background: #150606;
      position: absolute;
      bottom: 0;
      left: 0;
      transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
    p.btn._liner::after {
      content: '';
      display: block;
      width: 100%;
      height: 1px;
      background: #150606;
      position: absolute;
      bottom: 0;
      right: 0;
      transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      transition-delay: .246s; }
    p.btn._liner:hover::before {
      width: 100%;
      transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      transition-delay: .246s; }
    p.btn._liner:hover::after {
      width: 0;
      transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }

.noallow {
  cursor: not-allowed !important;
  pointer-events: none !important; }

/*!ul/dl*/
ul, dl {
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0;
  -webkit-padding-start: 0;
  -moz-margin-before: 0;
  -moz-margin-after: 0;
  -moz-margin-start: 0;
  -moz-margin-end: 0;
  -moz-padding-start: 0;
  -ms-margin-before: 0;
  -ms-margin-after: 0;
  -ms-margin-start: 0;
  -ms-margin-end: 0;
  -ms-padding-start: 0;
  -o-margin-before: 0;
  -o-margin-after: 0;
  -o-margin-start: 0;
  -o-margin-end: 0;
  -o-padding-start: 0;
  margin-before: 0;
  margin-after: 0;
  margin-start: 0;
  margin-end: 0;
  padding-start: 0;
  -webkit-padding-left: 0;
  -moz-padding-left: 0;
  -ms-padding-left: 0;
  -o-padding-left: 0;
  padding-left: 0;
  margin-top: 0;
  margin-bottom: 0; }

ul li {
  list-style-type: none; }

dl dd {
  margin-left: 0; }

.clear::after {
  content: '';
  display: block;
  clear: both; }

/*!ASPECT*/
.aspect {
  width: 100%;
  height: auto;
  position: relative;
  overflow: hidden; }
  .aspect.aspect35 {
    padding-top: 35%; }
  .aspect.aspect41 {
    padding-top: 41.4%; }
  .aspect.aspect50 {
    padding-top: 50%; }
  .aspect.aspect56 {
    padding-top: 56.25%; }
  .aspect.aspect61 {
    padding-top: 61.8%; }
  .aspect.aspect75 {
    padding-top: 75%; }
  .aspect.aspect100 {
    padding-top: 100%; }
  .aspect.aspect120 {
    padding-top: 120%; }
  .aspect.aspect141 {
    padding-top: 141.4%; }
  .aspect.aspect178 {
    padding-top: 178%; }
  .aspect.aspect200 {
    padding-top: 200%; }
  .aspect.aspect282 {
    padding-top: 282.8%; }
  .aspect .aspectBlock {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%; }
    .aspect .aspectBlock .aspectInner {
      height: calc(100% + 10rem);
      transform: translateY(-5rem); }
    .aspect .aspectBlock img {
      width: 100%;
      height: auto; }
      .aspect .aspectBlock img.objf {
        width: 100%;
        height: 100%;
        object-fit: cover;
        font-family: 'object-fit: cover;'; }
    .aspect .aspectBlock blockquote {
      width: 100% !important;
      height: 100% !important; }
      .aspect .aspectBlock blockquote iframe {
        width: 100% !important;
        height: 100% !important; }
    .aspect .aspectBlock iframe {
      width: 100%;
      height: 100%; }
    .aspect .aspectBlock video {
      width: 100%;
      height: auto; }

.showImg {
  transform: scale(1.23);
  transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  transition-duration: .82s; }
  .showImg:hover {
    transform: scale(1.1);
    transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }

/*!fugure*/
figure {
  margin: 0; }
  figure figurecaption {
    font-size: .85em;
    margin-top: .41em;
    display: block; }

/*!shadow*/
.sdw {
  box-shadfigureow: 0 1rem 3rem rgba(0, 0, 0, 0.05); }

.shadow {
  box-shadow: 0 2.5rem 2rem -2rem #193b4d66; }

/*!Resposive*/
.hidden-xs {
  display: block !important; }
  @media screen and (max-width: 768px) {
    .hidden-xs {
      display: none !important; } }

.visible-xs {
  display: none !important; }
  @media screen and (max-width: 768px) {
    .visible-xs {
      display: block !important; } }

/*!.sticky*/
.sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 8999; }

/*!page loading*/
#loading {
  position: fixed;
  inset: 0;
  padding: calc(8em / 8 * 2);
  background-color: var(--background1);
  background-image: radial-gradient(circle at 100% 1%, rgba(238, 221, 61, 0.2) 5.0301810865%, transparent 36.2836344237%), radial-gradient(circle at 4% 87%, rgba(238, 221, 61, 0.1) 8.4403061435%, transparent 32.4905727087%);
  background-blend-mode: normal, normal;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  transition: opacity .6s ease, visibility .6s ease; }
  #loading.hide {
    opacity: 0;
    visibility: hidden; }

#content {
  opacity: 0;
  transition: opacity .6s ease; }
  @media screen and (max-width: 768px) {
    #content {
      flex-direction: column; } }
  #content.visible {
    opacity: 1; }

#main {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999999;
  width: 100%;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  background: #ee781f;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }

/*!.inview*/
.inview {
  opacity: 0; }
  .inview.action {
    opacity: 1;
    transition: all cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.615s;
    -o-transition: all cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.615s;
    -moz-transition: all cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.615s;
    -webkit-transition: all cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.615s; }
  .inview.action[data-delay="1"] {
    transition-delay: 0.05s; }
  .inview.action[data-delay="2"] {
    transition-delay: 0.1s; }
  .inview.action[data-delay="3"] {
    transition-delay: 0.15s; }
  .inview.action[data-delay="4"] {
    transition-delay: 0.2s; }
  .inview.action[data-delay="5"] {
    transition-delay: 0.25s; }
  .inview.action[data-delay="6"] {
    transition-delay: 0.3s; }
  .inview.action[data-delay="7"] {
    transition-delay: 0.35s; }
  .inview.action[data-delay="8"] {
    transition-delay: 0.4s; }
  .inview.action[data-delay="9"] {
    transition-delay: 0.45s; }
  .inview.action[data-delay="10"] {
    transition-delay: 0.5s; }

.animated {
  transform: translateY(24.6px); }
  .animated.move {
    transform: translateY(0);
    transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    transition-delay: .205s; }

.animate {
  transform: translateY(-2rem); }
  .animate.move {
    transform: translateY(0);
    transition: cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s;
    -o-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s;
    -moz-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s;
    -webkit-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s; }

.blur {
  filter: blur(10px);
  transform: translate3d(0, 0, 0) perspective(0);
  backface-visibility: hidden;
  will-change: contents; }
  .blur.action {
    filter: blur(0);
    transition: ease .5s; }

/*ベンダープレフィックス登録*/
.animation {
  animation: humbNav 1.5s linear 0s infinite;
  -o-animation: humbNav 1.5s linear 0s infinite;
  -moz-animation: humbNav 1.5s linear 0s infinite;
  -webkit-animation: humbNav 1.5s linear 0s infinite; }

@keyframes humbNav {
  0% {
    width: 30%; }
  50% {
    width: 15%; }
  100% {
    width: 30%; } }
@-webkit-keyframes humbNav {
  0% {
    width: 30%; }
  50% {
    width: 15%; }
  100% {
    width: 30%; } }
@-o-keyframes humbNav {
  0% {
    width: 30%; }
  50% {
    width: 15%; }
  100% {
    width: 30%; } }
/*!input*/
select {
  outline: none;
  text-indent: 0.01px;
  text-overflow: '';
  background: #f8f8f8;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
  border: none;
  width: 100%;
  height: 60px;
  font-size: 1.5rem; }
  select option {
    background-color: #fff;
    color: #333; }

/*!------------------------------------
css_assets(パーツ)
-------------------------------------*/
/*!button*/
.humbBtn {
  position: relative;
  z-index: 15;
  transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
  @media screen and (max-width: 768px) {
    .humbBtn {
      display: block; } }
  .humbBtn span.dots {
    display: block;
    width: 4px;
    height: 4px;
    border-radius: 4px;
    background: #231814;
    position: absolute;
    transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
    .humbBtn span.dots:nth-child(1) {
      top: calc(50% - 8px);
      left: calc(50% - 8px);
      transform: translate(-50%, -50%); }
    .humbBtn span.dots:nth-child(2) {
      top: calc(50% - 8px);
      left: 50%;
      transform: translate(-50%, -50%); }
    .humbBtn span.dots:nth-child(3) {
      top: calc(50% - 8px);
      left: calc(50% + 8px);
      transform: translate(-50%, -50%); }
    .humbBtn span.dots:nth-child(4) {
      top: 50%;
      left: calc(50% - 8px);
      transform: translate(-50%, -50%); }
    .humbBtn span.dots:nth-child(5) {
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%); }
    .humbBtn span.dots:nth-child(6) {
      top: 50%;
      left: calc(50% + 8px);
      transform: translate(-50%, -50%); }
    .humbBtn span.dots:nth-child(7) {
      top: calc(50% + 8px);
      left: calc(50% - 8px);
      transform: translate(-50%, -50%); }
    .humbBtn span.dots:nth-child(8) {
      top: calc(50% + 8px);
      left: 50%;
      transform: translate(-50%, -50%); }
    .humbBtn span.dots:nth-child(9) {
      top: calc(50% + 8px);
      left: calc(50% + 8px);
      transform: translate(-50%, -50%); }
  .humbBtn span.border {
    display: block;
    width: 30%;
    height: 1px;
    border-radius: 2px;
    background: #231814;
    position: absolute;
    transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
    .humbBtn span.border:nth-child(1) {
      top: 40%;
      left: 55%;
      transform: translate(-50%, -50%); }
    .humbBtn span.border:nth-child(2) {
      top: 50%;
      left: 45%;
      transform: translate(-50%, -50%); }
    .humbBtn span.border:nth-child(3) {
      top: 60%;
      left: 50%;
      transform: translate(-50%, -50%); }
  .humbBtn span.borders {
    display: block;
    width: 30%;
    height: 1px;
    border-radius: 2px;
    background: #231814;
    position: absolute;
    transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
    .humbBtn span.borders:nth-child(1) {
      top: 37.5%;
      left: 50%;
      transform: translate(-50%, -50%); }
    .humbBtn span.borders:nth-child(2) {
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%); }
    .humbBtn span.borders:nth-child(3) {
      top: 62.5%;
      left: 50%;
      transform: translate(-50%, -50%); }
  .humbBtn span.txt {
    position: absolute;
    bottom: 0;
    width: 100%;
    text-align: center;
    font-size: .7em;
    color: var(--color-white);
    letter-spacing: 3px; }
  .humbBtn:hover {
    transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
    .humbBtn:hover::before {
      border-radius: 6px;
      transition: cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s;
      -o-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s;
      -moz-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s;
      -webkit-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s; }
    .humbBtn:hover span.dots {
      background: #231814;
      transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
      .humbBtn:hover span.dots:nth-child(1) {
        top: calc(50% - 6px);
        left: calc(50% - 6px); }
      .humbBtn:hover span.dots:nth-child(2) {
        top: calc(50% - 6px);
        left: 50%; }
      .humbBtn:hover span.dots:nth-child(3) {
        top: calc(50% - 6px);
        left: calc(50% + 6px); }
      .humbBtn:hover span.dots:nth-child(4) {
        top: 50%;
        left: calc(50% - 6px); }
      .humbBtn:hover span.dots:nth-child(5) {
        top: 50%;
        left: 50%; }
      .humbBtn:hover span.dots:nth-child(6) {
        top: 50%;
        left: calc(50% + 6px); }
      .humbBtn:hover span.dots:nth-child(7) {
        top: calc(50% + 6px);
        left: calc(50% - 6px); }
      .humbBtn:hover span.dots:nth-child(8) {
        top: calc(50% + 6px);
        left: 50%; }
      .humbBtn:hover span.dots:nth-child(9) {
        top: calc(50% + 6px);
        left: calc(50% + 6px); }
    .humbBtn:hover span.borders {
      transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
      .humbBtn:hover span.borders:nth-child(1) {
        top: 50%; }
      .humbBtn:hover span.borders:nth-child(3) {
        top: 50%; }
  .humbBtn.active {
    transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
    .humbBtn.active::before {
      transform: scale(1);
      pointer-events: none;
      opacity: 0;
      transition: cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s;
      -o-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s;
      -moz-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s;
      -webkit-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s; }
    .humbBtn.active span.dots {
      background: #f5f5f5;
      transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
      .humbBtn.active span.dots:nth-child(1) {
        top: 50%;
        left: calc(50% - 5px); }
      .humbBtn.active span.dots:nth-child(2) {
        top: 50%;
        left: 50%; }
      .humbBtn.active span.dots:nth-child(3) {
        top: 50%;
        left: calc(50% + 5px); }
      .humbBtn.active span.dots:nth-child(4) {
        top: 50%;
        left: calc(50% - 5px); }
      .humbBtn.active span.dots:nth-child(5) {
        top: 50%;
        left: 50%; }
      .humbBtn.active span.dots:nth-child(6) {
        top: 50%;
        left: calc(50% + 5px); }
      .humbBtn.active span.dots:nth-child(7) {
        top: 50%;
        left: calc(50% - 5px); }
      .humbBtn.active span.dots:nth-child(8) {
        top: 50%;
        left: 50%; }
      .humbBtn.active span.dots:nth-child(9) {
        top: 50%;
        left: calc(50% + 5px); }
    .humbBtn.active span.border {
      background: #999 !important;
      transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
      .humbBtn.active span.border:nth-child(1) {
        top: 50%; }
      .humbBtn.active span.border:nth-child(3) {
        top: 50%; }
    .humbBtn.active span.borders {
      background: var(--color-white) !important;
      transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
      .humbBtn.active span.borders:nth-child(1) {
        top: 50%;
        transform: translate(-50%, -50%) rotate(45deg); }
      .humbBtn.active span.borders:nth-child(2) {
        opacity: 0; }
      .humbBtn.active span.borders:nth-child(3) {
        top: 50%;
        transform: translate(-50%, -50%) rotate(-45deg); }
    .humbBtn.active span.txt {
      color: var(--color-white) !important; }
  .humbBtn.scroll span {
    transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }

/*!------------------------------------
css_sections(ブロック)
-------------------------------------*/
/*!#siteHeader------------------------------------------------------------------------------------------------*/
/*公式*/
#siteHead {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 2em;
  z-index: 8000;
  transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
  @media screen and (max-width: 768px) {
    #siteHead {
      padding: .75em; } }
  #siteHead .wrapper {
    padding: .25em;
    border-radius: 6em;
    -webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
    border: solid 1px var(--border-white);
    overflow: hidden; }
  #siteHead nav.global {
    display: flex;
    align-items: center;
    justify-content: space-between; }
    #siteHead nav.global * {
      color: var(--background3); }
    #siteHead nav.global > .left, #siteHead nav.global > .right {
      flex: 1; }
      #siteHead nav.global > .left ul.visible, #siteHead nav.global > .right ul.visible {
        display: none; }
      @media screen and (max-width: 768px) {
        #siteHead nav.global > .left ul, #siteHead nav.global > .right ul {
          display: none; }
          #siteHead nav.global > .left ul.visible, #siteHead nav.global > .right ul.visible {
            display: flex; } }
    #siteHead nav.global > .left ul {
      padding: 0 2.25em;
      justify-content: flex-start; }
    #siteHead nav.global > .center .logo a {
      display: block; }
    #siteHead nav.global > .center .logo img {
      display: block; }
      @media screen and (max-width: 768px) {
        #siteHead nav.global > .center .logo img {
          width: auto;
          height: 20px; } }
    #siteHead nav.global > .right ul {
      justify-content: flex-end; }
    #siteHead nav.global ul {
      display: flex;
      align-items: center;
      gap: calc(1em * 2); }
      #siteHead nav.global ul > li[data-type="button"] {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 8em;
        min-height: 2.5em;
        background: var(--key1);
        border-radius: 4em; }
        @media screen and (max-width: 768px) {
          #siteHead nav.global ul > li[data-type="button"] {
            width: 6em; } }
      #siteHead nav.global ul > li a {
        display: block; }
      #siteHead nav.global ul > li .roll {
        height: 1em;
        overflow: hidden; }
        #siteHead nav.global ul > li .roll > span {
          display: block;
          line-height: 1;
          transition: all cubic-bezier(0.28, 1.52, 0.73, 1.25) 0.41s;
          -o-transition: all cubic-bezier(0.28, 1.52, 0.73, 1.25) 0.41s;
          -moz-transition: all cubic-bezier(0.28, 1.52, 0.73, 1.25) 0.41s;
          -webkit-transition: all cubic-bezier(0.28, 1.52, 0.73, 1.25) 0.41s; }
      #siteHead nav.global ul > li:hover .roll > span {
        transform: translateY(-1em);
        transition: all cubic-bezier(0.28, 1.52, 0.73, 1.25) 0.41s;
        -o-transition: all cubic-bezier(0.28, 1.52, 0.73, 1.25) 0.41s;
        -moz-transition: all cubic-bezier(0.28, 1.52, 0.73, 1.25) 0.41s;
        -webkit-transition: all cubic-bezier(0.28, 1.52, 0.73, 1.25) 0.41s; }
  #siteHead.open {
    transform: translateY(0);
    opacity: 1;
    transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }

/*!#aside*/
aside#aside {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 7999;
  display: none;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  padding: 0 1em;
  overflow: scroll;
  backdrop-filter: blur(10px); }
  @media screen and (max-width: 768px) {
    aside#aside {
      padding-bottom: 4.1em;
      background: var(--border-black);
      -webkit-backdrop-filter: blur(10px);
      backdrop-filter: blur(10px); } }
  aside#aside .navigation_wrapper {
    display: flex;
    align-items: flex-end;
    flex-direction: column;
    width: 100%;
    margin: 0 auto;
    height: 100%;
    margin: 0 auto;
    padding-top: calc(8.5em / 8 * 5);
    overflow: scroll; }
    @media screen and (max-width: 768px) {
      aside#aside .navigation_wrapper {
        justify-content: flex-start;
        padding-top: calc(8.5em / 8 * 4);
        padding-bottom: calc(8.5em / 12 * 1); } }
    aside#aside .navigation_wrapper .navigation_body {
      position: relative;
      z-index: 15;
      min-width: calc(8em / 8 * 21);
      max-width: 100%;
      padding: calc(8em / 16 * 3);
      background: var(--background2);
      border-radius: calc(8em / 16);
      overflow: hidden;
      -webkit-backdrop-filter: blur(10px);
      backdrop-filter: blur(10px); }
      @media screen and (max-width: 768px) {
        aside#aside .navigation_wrapper .navigation_body {
          min-width: 100%; } }
      aside#aside .navigation_wrapper .navigation_body::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1;
        display: block;
        width: 100%;
        height: 100%;
        background: url(images/noise.png);
        background-repeat: repeat;
        background-size: 100px;
        pointer-events: none;
        opacity: .5; }
    aside#aside .navigation_wrapper ul.list {
      border-top: solid 1px var(--border-light-white); }
      aside#aside .navigation_wrapper ul.list > li {
        border-bottom: solid 1px var(--border-light-white); }
        aside#aside .navigation_wrapper ul.list > li:hover dl > dt::before {
          background: var(--background3);
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
        aside#aside .navigation_wrapper ul.list > li.current dl > dt::before {
          background: var(--key1) !important;
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
        aside#aside .navigation_wrapper ul.list > li dl {
          display: flex;
          align-items: center;
          gap: 0 calc(8.5em / 3); }
          @media screen and (max-width: 768px) {
            aside#aside .navigation_wrapper ul.list > li dl {
              flex-direction: column;
              align-items: flex-start; } }
          aside#aside .navigation_wrapper ul.list > li dl > dt {
            display: flex;
            align-items: center;
            column-gap: calc(1em / 2); }
            aside#aside .navigation_wrapper ul.list > li dl > dt::before {
              content: '';
              display: block;
              width: .9em;
              min-width: .9em;
              height: .9em;
              border-radius: calc(8.5em / 48);
              background: var(--background3);
              transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
              -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
              -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
              -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
            aside#aside .navigation_wrapper ul.list > li dl > dt * {
              color: var(--background3); }
            aside#aside .navigation_wrapper ul.list > li dl > dt:has([data-type="button"]) {
              width: 100%;
              background: var(--key1);
              margin: calc(8em / 32) 0;
              padding: 0 calc(8em / 8);
              border-radius: calc(8em / 32); }
              aside#aside .navigation_wrapper ul.list > li dl > dt:has([data-type="button"]) * {
                color: var(--background3); }
            aside#aside .navigation_wrapper ul.list > li dl > dt a, aside#aside .navigation_wrapper ul.list > li dl > dt div {
              display: flex;
              align-items: center;
              justify-content: space-between;
              column-gap: .615em;
              padding: calc(8.5em / 32 * 3) 0;
              font-size: 1.25em;
              font-weight: 600;
              letter-spacing: -.0205em;
              line-height: 1; }
              @media screen and (max-width: 768px) {
                aside#aside .navigation_wrapper ul.list > li dl > dt a, aside#aside .navigation_wrapper ul.list > li dl > dt div {
                  padding: calc(85px / 6) 0; } }
          @media screen and (max-width: 768px) {
            aside#aside .navigation_wrapper ul.list > li dl > dd {
              padding-bottom: calc(85px / 6); } }
          aside#aside .navigation_wrapper ul.list > li dl > dd ul.children {
            display: flex;
            align-items: center;
            flex-wrap: wrap;
            gap: calc(8.5em / 16); }
          aside#aside .navigation_wrapper ul.list > li dl > dd a, aside#aside .navigation_wrapper ul.list > li dl > dd div {
            display: flex;
            align-items: center;
            column-gap: .615em;
            padding: calc(85px/12) calc(85px/6);
            background: rgba(255, 255, 255, 0.1025);
            border: solid 1px var(--color-white);
            border-radius: calc(85px / 24);
            font-size: 1em;
            font-weight: 600;
            letter-spacing: -.01025em;
            line-height: 1;
            transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
            -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
            -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
            -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
            @media screen and (max-width: 768px) {
              aside#aside .navigation_wrapper ul.list > li dl > dd a, aside#aside .navigation_wrapper ul.list > li dl > dd div {
                font-size: .9em; } }
            aside#aside .navigation_wrapper ul.list > li dl > dd a:hover, aside#aside .navigation_wrapper ul.list > li dl > dd div:hover {
              color: var(--color-black);
              background: var(--color-white);
              transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
              -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
              -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
              -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
      aside#aside .navigation_wrapper ul.list.inview > li {
        opacity: 0; }
      aside#aside .navigation_wrapper ul.list.action > li {
        opacity: 1; }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(0) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((0 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(1) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((1 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(2) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((2 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(3) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((3 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(4) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((4 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(5) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((5 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(6) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((6 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(7) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((7 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(8) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((8 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(9) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((9 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(10) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((10 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(11) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((11 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(12) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((12 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(13) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((13 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(14) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((14 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(15) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((15 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(16) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((16 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(17) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((17 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(18) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((18 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(19) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((19 * 0.0615s) + 0.1025s); }
        aside#aside .navigation_wrapper ul.list.action > li:nth-child(20) {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          transition-delay: calc((20 * 0.0615s) + 0.1025s); }
    aside#aside .navigation_wrapper ul.social {
      display: flex;
      align-items: center;
      justify-content: center;
      column-gap: calc(8.5em / 8);
      filter: brightness(0) invert(1); }
    aside#aside .navigation_wrapper .foot {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      gap: calc(1em / 1);
      margin-top: calc(1em / 4 * 3); }
      @media screen and (max-width: 768px) {
        aside#aside .navigation_wrapper .foot {
          margin-top: calc(1em / 4 * 3); } }
      aside#aside .navigation_wrapper .foot * {
        color: var(--background3); }
      aside#aside .navigation_wrapper .foot ul.basic {
        display: flex;
        align-items: center;
        gap: calc(8.5em / 8);
        font-size: .9em; }
        @media screen and (max-width: 768px) {
          aside#aside .navigation_wrapper .foot ul.basic {
            width: 100%;
            justify-content: center;
            text-align: center; } }
        aside#aside .navigation_wrapper .foot ul.basic > li {
          display: flex;
          align-items: center; }
          @media screen and (max-width: 768px) {
            aside#aside .navigation_wrapper .foot ul.basic > li:last-child {
              display: none; } }
aside#fixNav {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 10001;
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(85px * 2);
  height: calc(85px * 1);
  transition: all cubic-bezier(0.28, 1.52, 0.73, 1.25) 0.41s;
  -o-transition: all cubic-bezier(0.28, 1.52, 0.73, 1.25) 0.41s;
  -moz-transition: all cubic-bezier(0.28, 1.52, 0.73, 1.25) 0.41s;
  -webkit-transition: all cubic-bezier(0.28, 1.52, 0.73, 1.25) 0.41s; }
  @media screen and (max-width: 768px) {
    aside#fixNav {
      width: calc(60px * 2);
      height: calc(60px * 1);
      transform: translateY(0); } }
  aside#fixNav ._menu {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background: var(--color-white); }
    aside#fixNav ._menu p.humbNav {
      display: flex;
      align-items: center;
      column-gap: calc(85px / 6);
      text-transform: uppercase;
      font-size: .9em; }
      aside#fixNav ._menu p.humbNav > span {
        order: 1;
        position: relative;
        display: flex;
        align-content: space-between;
        flex-wrap: wrap;
        width: 4.1em;
        height: .8em;
        margin: 0 auto; }
        aside#fixNav ._menu p.humbNav > span > i {
          display: block;
          width: 4.1em;
          height: 1px;
          background: var(--color-white);
          border-radius: 1px;
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
      aside#fixNav ._menu p.humbNav.active > span {
        align-content: center; }
        aside#fixNav ._menu p.humbNav.active > span > i {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
          aside#fixNav ._menu p.humbNav.active > span > i:nth-child(1) {
            transform: rotate(8deg) translateY(0.5px); }
          aside#fixNav ._menu p.humbNav.active > span > i:nth-child(2) {
            transform: rotate(-8deg) translateY(-0.5px); }

/*!//#siteHeader------------------------------------------------------------------------------------------------*/
/*!#siteFooter------------------------------------------------------------------------------------------------*/
#siteFoot {
  width: 100%;
  padding: 4em 0 2em;
  background: var(--background4);
  overflow: hidden; }
  #siteFoot .wrapper {
    position: relative;
    z-index: 10;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    width: calc(100% / 16 * 15);
    margin: 0 auto; }
    #siteFoot .wrapper > * {
      display: block; }
    #siteFoot .wrapper > .primary {
      width: calc(100% / 15 * 14);
      margin-left: auto;
      margin-right: auto; }
    #siteFoot .wrapper > .secondary {
      width: 100%;
      aspect-ratio: 300/59;
      margin-top: 4em; }
    #siteFoot .wrapper > .tertiary {
      margin-top: 1em; }
  #siteFoot ul.layout {
    display: flex;
    flex-wrap: wrap;
    gap: 2em 6em; }
    @media screen and (max-width: 768px) {
      #siteFoot ul.layout {
        flex-direction: column; } }
    #siteFoot ul.layout > li.col6 {
      flex: 6; }
    #siteFoot ul.layout > li.col2 {
      flex: 2; }
    #siteFoot ul.layout .title {
      opacity: .41;
      font-size: .8em; }
      #siteFoot ul.layout .title + * {
        margin-top: calc(1em * 1); }
  #siteFoot ul.list {
    display: flex;
    flex-direction: column;
    gap: calc(1em / 2);
    font-size: .75em; }
    @media screen and (max-width: 768px) {
      #siteFoot ul.list {
        font-size: 1em; } }
    #siteFoot ul.list > li a:has(.icon) {
      display: flex;
      align-items: center;
      gap: calc(1em / 2); }
      #siteFoot ul.list > li a:has(.icon) i.icon {
        width: 1.3325em;
        min-width: 1.3325em;
        height: 1.3325em;
        filter: brightness(0); }
  #siteFoot .footer-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: .9em; }

/*//!#siteFooter----------------------------------------------------------------------------------------------*/
/*!#index----------------------------------------------------------------------------------------------*/
/*!#siteContent*/
#siteContent {
  position: relative;
  z-index: 15;
  width: 100%;
  transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
  transition-delay: .246s; }
  @media screen and (max-width: 768px) {
    #siteContent {
      width: 100%;
      margin-bottom: 0 !important;
      overflow: hidden; } }
  #siteContent:has(.page_about), #siteContent:has(.page_company) {
    background: var(--background1); }
    #siteContent:has(.page_about)::before, #siteContent:has(.page_company)::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      display: block;
      width: 100%;
      height: 100%;
      background: url(images/pageHead_background-01.png);
      background-size: 100vw;
      background-repeat: no-repeat;
      mix-blend-mode: lighten; }
  #siteContent:has(.page_about) * {
    color: var(--key1); }
  #siteContent:has(.page_company) * {
    color: var(--background3); }
  #siteContent:has(.page_business), #siteContent:has(.page_news), #siteContent:has(.page_contact) {
    background: var(--background2); }
    #siteContent:has(.page_business)::before, #siteContent:has(.page_news)::before, #siteContent:has(.page_contact)::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      display: block;
      width: 100%;
      height: 100%;
      background: url(images/pageHead_background-02.png);
      background-size: 100vw;
      background-repeat: no-repeat;
      mix-blend-mode: lighten; }
      @media screen and (max-width: 768px) {
        #siteContent:has(.page_business)::before, #siteContent:has(.page_news)::before, #siteContent:has(.page_contact)::before {
          background-position: top center; } }
  #siteContent:has(.page_business) * {
    color: var(--background3); }
  #siteContent:has(.page_news)::before, #siteContent:has(.page_contact)::before {
    opacity: .75; }
  #siteContent:has(.page_news) header#pageHeader .wrapper, #siteContent:has(.page_contact) header#pageHeader .wrapper {
    justify-content: center;
    padding: 12em 0 4em; }
    @media screen and (max-width: 768px) {
      #siteContent:has(.page_news) header#pageHeader .wrapper, #siteContent:has(.page_contact) header#pageHeader .wrapper {
        padding: 8em 0 2em; } }
    #siteContent:has(.page_news) header#pageHeader .wrapper hgroup, #siteContent:has(.page_contact) header#pageHeader .wrapper hgroup {
      align-items: center; }
      #siteContent:has(.page_news) header#pageHeader .wrapper hgroup *, #siteContent:has(.page_contact) header#pageHeader .wrapper hgroup * {
        color: var(--background3); }

hgroup:has(.index) h2 {
  color: var(--background3);
  font-size: 5.125em;
  letter-spacing: -.041em;
  line-height: 1; }
  @media screen and (max-width: 768px) {
    hgroup:has(.index) h2 {
      font-size: 4.1em; } }
hgroup:has(.index) h3 {
  font-weight: normal;
  letter-spacing: -.0205em;
  line-height: 1; }

.slider {
  display: flex;
  align-items: center; }
  .slider .slider__inner {
    display: flex;
    align-items: center; }
    .slider .slider__inner:first-child {
      animation: loop 180s linear infinite; }
    .slider .slider__inner:nth-child(2) {
      animation: loop2 180s -120s linear infinite; }
    .slider .slider__inner:last-child {
      animation: loop3 180s -60s linear infinite; }

@keyframes loop {
  0% {
    transform: translateX(200%); }
  to {
    transform: translateX(-100%); } }
@keyframes loop2 {
  0% {
    transform: translateX(100%); }
  to {
    transform: translateX(-200%); } }
@keyframes loop3 {
  0% {
    transform: translateX(0%); }
  to {
    transform: translateX(-300%); } }
.verticalslider {
  display: block; }
  .verticalslider .verticalslider__inner {
    display: block; }
    .verticalslider .verticalslider__inner:first-child {
      animation: loopV 180s linear infinite; }
    .verticalslider .verticalslider__inner:nth-child(2) {
      animation: loopV2 180s -120s linear infinite; }
    .verticalslider .verticalslider__inner:last-child {
      animation: loopV3 180s -60s linear infinite; }
    .verticalslider .verticalslider__inner .slider__item {
      width: 100%;
      padding: 5px 0; }
      .verticalslider .verticalslider__inner .slider__item .aspect {
        border-radius: 18px;
        overflow: hidden; }
        @media screen and (max-width: 768px) {
          .verticalslider .verticalslider__inner .slider__item .aspect {
            border-radius: 10px; } }

@keyframes loopV {
  0% {
    transform: translateY(200%); }
  to {
    transform: translateY(-100%); } }
@keyframes loopV2 {
  0% {
    transform: translateY(100%); }
  to {
    transform: translateY(-200%); } }
@keyframes loopV3 {
  0% {
    transform: translateY(0%); }
  to {
    transform: translateY(-300%); } }
.hide_title {
  position: relative;
  z-index: 15;
  display: inline-flex;
  padding-bottom: calc(8.5em / 32);
  overflow: hidden; }
  .hide_title::before, .hide_title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    height: 1px;
    background: var(--color-text); }
  .hide_title::before {
    width: 100%;
    opacity: .205; }
  .hide_title::after {
    width: 0; }
  .hide_title span {
    display: block;
    transition: all cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.615s;
    -o-transition: all cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.615s;
    -moz-transition: all cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.615s;
    -webkit-transition: all cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.615s;
    transition-delay: .205s; }
  .hide_title.done span {
    transform: translateY(150%); }
  .hide_title.gone::after {
    width: 100%;
    transition: all cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.615s;
    -o-transition: all cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.615s;
    -moz-transition: all cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.615s;
    -webkit-transition: all cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.615s; }
  .hide_title.gone span {
    transform: translateY(0);
    transition-delay: .5175s; }

.hide_text {
  line-height: 1.2;
  overflow: hidden; }
  .hide_text.inview i {
    display: block;
    transform: translateY(1.2em); }
  .hide_text.inview.action i {
    transform: translateY(0);
    transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
    -o-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
    -moz-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
    -webkit-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s; }

.button_wrap {
  display: flex;
  align-items: center; }
  .button_wrap.left {
    justify-content: flex-start; }
    @media screen and (max-width: 768px) {
      .button_wrap.left {
        justify-content: flex-end; } }
  .button_wrap.right {
    justify-content: flex-end; }

.button {
  display: flex;
  align-items: center;
  column-gap: calc(1em / 2);
  padding: calc(1em / 4 * 3) calc(1em / 2);
  border-radius: calc(1em * 8);
  border: solid 1px;
  overflow: hidden; }
  .button .text {
    display: flex;
    align-items: center;
    justify-content: center;
    transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
  .button .icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1em;
    height: 1em;
    opacity: 0;
    line-height: 1;
    overflow: hidden;
    transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    transition-delay: .1025s; }
  .button.red {
    border-color: var(--key1); }
    .button.red * {
      color: var(--key1); }
    .button.red .icon {
      fill: var(--key1); }
  .button.white {
    border-color: var(--background3); }
    .button.white * {
      color: var(--background3); }
    .button.white .icon {
      fill: var(--background3); }
  .button:hover .text, .button:hover .icon {
    transform: translateX(0.5em);
    transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
  .button:hover .icon {
    opacity: 1; }
  .button:hover .text {
    transition-delay: .1025s; }

.noentry {
  filter: opacity(0.41) !important;
  pointer-events: none !important;
  cursor: not-allowed; }

.comingsoon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 180px;
  background: #f7f7f7;
  filter: opacity(0.5); }

.idx {
  position: relative;
  z-index: 15; }
  .idx .wrapper {
    width: calc(100% / 16 * 15);
    margin-left: auto;
    margin-right: auto; }
  .idx.kv .image {
    position: relative;
    z-index: 15;
    aspect-ratio: 1440/800;
    overflow: hidden; }
    @media screen and (max-width: 768px) {
      .idx.kv .image {
        aspect-ratio: 9/16; } }
    .idx.kv .image::after {
      content: '';
      position: absolute;
      left: 0;
      bottom: -1px;
      display: block;
      width: 100%;
      height: 50%;
      background: linear-gradient(to bottom, transparent, var(--background1)); }
    .idx.kv .image .inner {
      height: calc(100% + 80px); }
  .idx.kv .copy {
    position: absolute;
    bottom: 0;
    z-index: 15;
    width: 100%; }
    @media screen and (max-width: 768px) {
      .idx.kv .copy dl {
        width: calc(100% / 15 * 14);
        margin-left: auto;
        margin-right: auto; } }
    .idx.kv .copy dl dt {
      font-size: 6em;
      letter-spacing: -.0205em; }
      @media screen and (max-width: 768px) {
        .idx.kv .copy dl dt {
          font-size: 3.5em; } }
      .idx.kv .copy dl dt span {
        display: block; }
        .idx.kv .copy dl dt span.primary * {
          font-weight: 600;
          color: var(--key1); }
        .idx.kv .copy dl dt span.secondary {
          margin-top: -.2em; }
          @media screen and (max-width: 768px) {
            .idx.kv .copy dl dt span.secondary {
              margin-top: 0; } }
          .idx.kv .copy dl dt span.secondary * {
            font-style: italic;
            color: var(--background3); }
      .idx.kv .copy dl dt + dd {
        margin-top: 1em; }
    .idx.kv .copy dl dd {
      display: flex;
      flex-direction: column;
      gap: .5em;
      font-size: 1.23em;
      font-weight: 600; }
      .idx.kv .copy dl dd * {
        color: var(--key1); }
      .idx.kv .copy dl dd span {
        display: block; }
  .idx.introduction {
    position: relative;
    z-index: 15;
    padding: 4em 0 6em;
    background: var(--background1); }
    @media screen and (max-width: 768px) {
      .idx.introduction {
        padding: 4em 0 4em; } }
    .idx.introduction * {
      color: var(--key1); }
    @media screen and (max-width: 768px) {
      .idx.introduction .introduction-head {
        width: calc(100% / 15 * 14);
        margin-left: auto;
        margin-right: auto; } }
    .idx.introduction .introduction-head + * {
      margin-top: calc(1em * 1.5); }
    .idx.introduction .introduction-body {
      position: relative;
      z-index: 15; }
      @media screen and (max-width: 768px) {
        .idx.introduction .introduction-body {
          width: calc(100% / 15 * 14);
          margin-left: auto;
          margin-right: auto; } }
      .idx.introduction .introduction-body .outline {
        width: 100%;
        margin-left: auto;
        margin-left: auto;
        line-height: 1.8;
        font-weight: 600; }
        .idx.introduction .introduction-body .outline + * {
          margin-top: calc(1em * 1.5); }
          @media screen and (max-width: 768px) {
            .idx.introduction .introduction-body .outline + * {
              margin-top: calc(1em * 1); } }
    .idx.introduction .introduction-foot {
      position: relative;
      z-index: 15;
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 1em;
      padding: calc(1em * 1.5) 0; }
      @media screen and (max-width: 768px) {
        .idx.introduction .introduction-foot {
          flex-direction: column;
          padding: calc(1em * 2) 0 calc(1em * 3); } }
      .idx.introduction .introduction-foot::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        display: block;
        width: 0;
        height: 1px;
        background: var(--key1); }
      .idx.introduction .introduction-foot > .text i {
        font-style: italic; }
      .idx.introduction .introduction-foot > .icons {
        display: flex;
        align-items: center;
        padding-right: calc(1em / 4 * 3); }
        .idx.introduction .introduction-foot > .icons > li {
          width: 4em;
          height: 4em;
          margin-right: calc(1em / 4 * -3);
          border-radius: 4em;
          overflow: hidden; }
          .idx.introduction .introduction-foot > .icons > li:nth-child(0) {
            z-index: calc(100 - 0); }
          .idx.introduction .introduction-foot > .icons > li:nth-child(1) {
            z-index: calc(100 - 1); }
          .idx.introduction .introduction-foot > .icons > li:nth-child(2) {
            z-index: calc(100 - 2); }
          .idx.introduction .introduction-foot > .icons > li:nth-child(3) {
            z-index: calc(100 - 3); }
          .idx.introduction .introduction-foot > .icons > li:nth-child(4) {
            z-index: calc(100 - 4); }
          .idx.introduction .introduction-foot > .icons > li:nth-child(5) {
            z-index: calc(100 - 5); }
          .idx.introduction .introduction-foot > .icons > li:nth-child(6) {
            z-index: calc(100 - 6); }
          .idx.introduction .introduction-foot > .icons > li:nth-child(7) {
            z-index: calc(100 - 7); }
          .idx.introduction .introduction-foot > .icons > li:nth-child(8) {
            z-index: calc(100 - 8); }
          .idx.introduction .introduction-foot > .icons > li:nth-child(9) {
            z-index: calc(100 - 9); }
          .idx.introduction .introduction-foot > .icons > li:nth-child(10) {
            z-index: calc(100 - 10); }
          .idx.introduction .introduction-foot > .icons > li:nth-child(11) {
            z-index: calc(100 - 11); }
          .idx.introduction .introduction-foot > .icons > li:nth-child(12) {
            z-index: calc(100 - 12); }
          .idx.introduction .introduction-foot > .icons > li:nth-child(13) {
            z-index: calc(100 - 13); }
          .idx.introduction .introduction-foot > .icons > li:nth-child(14) {
            z-index: calc(100 - 14); }
          .idx.introduction .introduction-foot > .icons > li:nth-child(15) {
            z-index: calc(100 - 15); }
      .idx.introduction .introduction-foot.gone::after {
        width: 100%;
        transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
        -o-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
        -moz-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
        -webkit-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s; }
    .idx.introduction #cv {
      position: absolute;
      top: -55vw;
      right: -10vw;
      z-index: -1;
      width: 50vw;
      opacity: .1; }
      @media screen and (max-width: 768px) {
        .idx.introduction #cv {
          width: 100vh;
          top: 50%;
          left: 50%;
          right: initial;
          transform: translate(-50%, -50%); } }
  .idx.business {
    padding: 5em 0 8em;
    background: var(--background2); }
    @media screen and (max-width: 768px) {
      .idx.business {
        padding: 4em 0; } }
    .idx.business * {
      color: var(--background3); }
    .idx.business .business-head {
      display: flex;
      align-items: end;
      justify-content: space-between; }
      @media screen and (max-width: 768px) {
        .idx.business .business-head {
          width: calc(100% / 15 * 14);
          margin-left: auto;
          margin-right: auto;
          align-items: flex-start;
          flex-direction: column;
          gap: .5em; } }
      .idx.business .business-head + * {
        margin-top: -2em; }
        @media screen and (max-width: 768px) {
          .idx.business .business-head + * {
            margin-top: 2em; } }
    .idx.business .business-diagram {
      position: relative;
      z-index: 15; }
      .idx.business .business-diagram .background {
        position: absolute;
        top: 0;
        left: calc(100% / 30 * -1);
        right: calc(100% / 30 * -1);
        width: calc(100% / 15 * 16);
        height: auto;
        z-index: -1;
        opacity: .205; }
        @media screen and (max-width: 768px) {
          .idx.business .business-diagram .background {
            opacity: .328; } }
      .idx.business .business-diagram + * {
        margin-top: 4em; }
        @media screen and (max-width: 768px) {
          .idx.business .business-diagram + * {
            margin-top: 2em; } }
    .idx.business .business-body hgroup + * {
      margin-top: 1.5em; }
    .idx.business .business-body ul.division {
      position: relative;
      z-index: 15; }
      .idx.business .business-body ul.division::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 0;
        height: 1px;
        background: var(--background3); }
      .idx.business .business-body ul.division > li {
        position: relative;
        z-index: 15;
        padding: calc(1em / 4 * 3) 0; }
        .idx.business .business-body ul.division > li .belt {
          display: flex;
          align-items: center;
          opacity: .4; }
          .idx.business .business-body ul.division > li .belt > .icon {
            display: block;
            width: 0;
            width: 0;
            height: 0;
            border-radius: calc(1em / 4);
            overflow: hidden;
            transform: scale(0);
            transform-origin: left bottom;
            transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
            -o-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
            -moz-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
            -webkit-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s; }
          .idx.business .business-body ul.division > li .belt > .text {
            flex: 1;
            display: flex;
            align-items: baseline;
            justify-content: space-between; }
            @media screen and (max-width: 768px) {
              .idx.business .business-body ul.division > li .belt > .text {
                flex-direction: column;
                align-items: flex-start; } }
            .idx.business .business-body ul.division > li .belt > .text > .en {
              font-weight: 600;
              font-size: 3em;
              letter-spacing: -.041em; }
              @media screen and (max-width: 768px) {
                .idx.business .business-body ul.division > li .belt > .text > .en {
                  font-size: 1.75em;
                  letter-spacing: -.0205em; } }
            .idx.business .business-body ul.division > li .belt > .text > .jp {
              font-weight: normal; }
              @media screen and (max-width: 768px) {
                .idx.business .business-body ul.division > li .belt > .text > .jp {
                  font-size: .8em; } }
        .idx.business .business-body ul.division > li::after {
          content: '';
          position: absolute;
          bottom: 0;
          left: 0;
          display: block;
          width: 0;
          height: 1px;
          background: var(--background3); }
        .idx.business .business-body ul.division > li.current .belt {
          opacity: 1; }
          .idx.business .business-body ul.division > li.current .belt > .icon {
            width: 3.5em;
            height: 3.5em;
            margin-right: calc(1em / 4 * 3);
            transform: scale(1);
            transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
            -o-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
            -moz-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
            -webkit-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s; }
          .idx.business .business-body ul.division > li.current .belt > .text > .jp {
            font-weight: 600; }
        .idx.business .business-body ul.division > li.gone::after {
          width: 100%;
          transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
          -o-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
          -moz-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
          -webkit-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s; }
      .idx.business .business-body ul.division.gone::before {
        width: 100%;
        transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
        -o-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
        -moz-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
        -webkit-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s; }
    .idx.business .business-body + * {
      margin-top: 2.5em; }
      @media screen and (max-width: 768px) {
        .idx.business .business-body + * {
          margin-top: 1.5em; } }
  .idx.news {
    padding: 0 0 8em;
    background: var(--background2); }
    @media screen and (max-width: 768px) {
      .idx.news {
        padding: 0 0 6em; } }
    .idx.news .news-head + * {
      margin-top: 2em; }
    .idx.news .news-body {
      padding-left: 17.36vw; }
      @media screen and (max-width: 768px) {
        .idx.news .news-body {
          padding-left: 0; } }
    .idx.news ul.flex {
      display: flex;
      gap: calc(1em * 1); }
      @media screen and (max-width: 768px) {
        .idx.news ul.flex {
          flex-direction: column; } }
      .idx.news ul.flex > li {
        max-width: 320px;
        border-radius: calc(1em / 4);
        overflow: hidden;
        transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
        @media screen and (max-width: 768px) {
          .idx.news ul.flex > li {
            width: 100%;
            max-width: 100%; }
            .idx.news ul.flex > li:nth-child(2n) {
              margin-left: auto; } }
        .idx.news ul.flex > li .card {
          display: flex;
          flex-direction: column;
          justify-content: space-between;
          gap: 3em;
          height: 100%;
          padding: calc(1em / 4); }
          .idx.news ul.flex > li .card * {
            color: var(--background3); }
          .idx.news ul.flex > li .card .content {
            display: flex;
            flex-direction: column;
            gap: 1.25em; }
            @media screen and (max-width: 768px) {
              .idx.news ul.flex > li .card .content {
                flex-direction: row;
                gap: .75em; } }
          .idx.news ul.flex > li .card .click {
            padding: calc(1em / 2);
            opacity: 0;
            font-size: .9em;
            letter-spacing: -.0205em;
            text-align: right;
            transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
            -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
            -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
            -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
            @media screen and (max-width: 768px) {
              .idx.news ul.flex > li .card .click {
                display: none; } }
          .idx.news ul.flex > li .card .image {
            aspect-ratio: 3/2;
            border-radius: calc(1em / 4);
            overflow: hidden; }
            @media screen and (max-width: 768px) {
              .idx.news ul.flex > li .card .image {
                width: 80px;
                min-width: 80px;
                aspect-ratio: 3/3; } }
            .idx.news ul.flex > li .card .image .inner {
              height: calc(100% + 40px);
              transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
              -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
              -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
              -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
          .idx.news ul.flex > li .card .text {
            display: flex;
            flex-direction: column;
            gap: calc(1em / 4);
            padding: 0 calc(1em / 2); }
            @media screen and (max-width: 768px) {
              .idx.news ul.flex > li .card .text {
                flex: 1; } }
            .idx.news ul.flex > li .card .text time {
              font-size: .8em; }
          .idx.news ul.flex > li .card:hover .image .inner {
            transform: scale(1.05);
            transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s;
            -o-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s;
            -moz-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s;
            -webkit-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s; }
          .idx.news ul.flex > li .card:hover .click {
            opacity: 1;
            transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s;
            -o-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s;
            -moz-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s;
            -webkit-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s; }
        .idx.news ul.flex > li:hover {
          background: var(--border-black);
          transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s;
          -o-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s;
          -moz-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s;
          -webkit-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s; }
  .idx.press {
    padding: 3em 0;
    background: var(--background3);
    overflow: hidden; }
    .idx.press .wrapper .title {
      font-size: 1.64em;
      text-align: center; }
      .idx.press .wrapper .title + * {
        margin-top: 1.5em; }
    .idx.press .slider > .slider__inner > .slider__item {
      padding: 0 2em; }
      @media screen and (max-width: 768px) {
        .idx.press .slider > .slider__inner > .slider__item {
          padding: 0 1.25em; } }

.item_title {
  display: flex;
  align-items: center;
  gap: calc(8em / 16);
  font-weight: 600; }
  .item_title::before {
    content: '';
    display: block;
    width: calc(8em / 64 * 7);
    height: calc(8em / 64 * 7);
    gap: calc(8em / 32);
    background: var(--key1);
    border-radius: calc(8em / 32); }
  .item_title + * {
    margin-top: calc(8em / 16); }

.rollIn h1, .rollIn span {
  transform: translateY(100%);
  opacity: 0;
  transition: transform 0.6s ease, opacity 0.6s ease; }
.rollIn.is-visible h1, .rollIn.is-visible span {
  transform: translateY(0);
  opacity: 1; }
.rollIn.is-visible h1 {
  transition-delay: 0.4s; }
.rollIn.is-visible span {
  transition-delay: 0.2s; }

.mf-cursor-media {
  max-width: 200px;
  max-height: 40px;
  border-radius: 0; }
  .mf-cursor-media img {
    max-width: 200px;
    max-height: 40px;
    object-fit: cover;
    display: block; }

header#pageHeader {
  position: relative;
  z-index: 15;
  overflow: hidden; }
  header#pageHeader .wrapper {
    display: flex;
    align-items: center;
    gap: calc(8.5em / 8 * 1);
    width: calc(100% / 16 * 14);
    margin-left: auto;
    margin-right: auto;
    padding: 18em 0 6em; }
    @media screen and (max-width: 768px) {
      header#pageHeader .wrapper {
        justify-content: center;
        padding: 8em 0 2em; } }
    header#pageHeader .wrapper .text {
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      width: 100%; }
      @media screen and (max-width: 768px) {
        header#pageHeader .wrapper .text {
          align-items: center;
          justify-content: center;
          flex-direction: column; } }
    header#pageHeader .wrapper hgroup {
      position: relative;
      z-index: 15;
      display: flex;
      align-items: flex-start;
      flex-direction: column-reverse; }
      @media screen and (max-width: 768px) {
        header#pageHeader .wrapper hgroup {
          align-items: center; } }
      header#pageHeader .wrapper hgroup h1 {
        display: flex;
        align-items: center;
        gap: calc(8.5em / 64 * 3);
        font-weight: 600; }
      header#pageHeader .wrapper hgroup span {
        position: relative;
        z-index: 15;
        font-size: 2em;
        font-weight: 500;
        letter-spacing: -.041em;
        line-height: 1;
        text-transform: uppercase; }

.-page {
  position: relative;
  z-index: 25;
  padding-bottom: 8em; }
  .-page > .wrapper {
    display: block;
    width: calc(100% / 16 * 15);
    margin-left: auto;
    margin-right: auto; }
    .-page > .wrapper.document_wrapper {
      width: calc(100% / 16 * 12); }
      @media screen and (max-width: 768px) {
        .-page > .wrapper.document_wrapper {
          width: calc(100% / 16 * 14); } }
  .-page .page_main .page_body .page_block hgroup {
    position: relative;
    z-index: 15;
    display: flex;
    align-items: end;
    justify-content: flex-end;
    flex-direction: row-reverse;
    column-gap: calc(8.5em / 16);
    padding-top: calc(8.5em / 32 * 5); }
    @media screen and (max-width: 768px) {
      .-page .page_main .page_body .page_block hgroup {
        padding: calc(8.5em / 32 * 4) calc(8.5em / 32 * 2); } }
    .-page .page_main .page_body .page_block hgroup::after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      display: block;
      width: 0;
      height: 1px;
      background: var(--background3); }
    .-page .page_main .page_body .page_block hgroup.gone::after {
      width: 100%;
      transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
      -o-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
      -moz-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
      -webkit-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s; }
    .-page .page_main .page_body .page_block hgroup span, .-page .page_main .page_body .page_block hgroup time {
      position: relative;
      z-index: 15;
      display: flex;
      align-items: center;
      column-gap: calc(8.5em / 16);
      font-size: 1.1275em;
      font-weight: 600;
      letter-spacing: -.0328em;
      color: var(--text);
      text-transform: uppercase; }
      @media screen and (max-width: 768px) {
        .-page .page_main .page_body .page_block hgroup span, .-page .page_main .page_body .page_block hgroup time {
          font-size: 1em; } }
      .-page .page_main .page_body .page_block hgroup span::before, .-page .page_main .page_body .page_block hgroup time::before {
        content: '';
        display: block;
        width: .5em;
        height: .5em;
        background: var(--background2);
        clip-path: polygon(0 0, 100% 50%, 0 100%);
        overflow: hidden; }
    .-page .page_main .page_body .page_block hgroup h2 {
      display: flex;
      align-items: center;
      gap: calc(8.5em / 64* 3);
      font-size: .75em;
      font-weight: var(--fontweight-6);
      color: var(--text); }
      .-page .page_main .page_body .page_block hgroup h2.large {
        font-size: 1em; }
        .-page .page_main .page_body .page_block hgroup h2.large::before {
          content: '';
          display: block;
          width: 1.1275em;
          height: 1.1275em;
          background: url(images/favicon.svg);
          background-size: cover; }
          @media screen and (max-width: 768px) {
            .-page .page_main .page_body .page_block hgroup h2.large::before {
              width: 1em;
              height: 1em; } }
      .-page .page_main .page_body .page_block hgroup h2.xlarge {
        font-size: 6em;
        line-height: .85;
        text-transform: uppercase; }
        @media screen and (max-width: 768px) {
          .-page .page_main .page_body .page_block hgroup h2.xlarge {
            font-size: 3em;
            white-space: nowrap; } }
    .-page .page_main .page_body .page_block hgroup + * {
      margin-top: calc(1em * 3); }
      @media screen and (max-width: 768px) {
        .-page .page_main .page_body .page_block hgroup + * {
          margin-top: calc(1em * 1); } }
    .-page .page_main .page_body .page_block hgroup.red::after {
      background: var(--key1); }
    .-page .page_main .page_body .page_block hgroup.red span::before {
      background: var(--key1); }
    .-page .page_main .page_body .page_block hgroup:has(.xlarge) {
      align-items: flex-start;
      flex-wrap: wrap; }
      .-page .page_main .page_body .page_block hgroup:has(.xlarge) span {
        min-width: 17.778vw;
        font-size: .85em;
        white-space: nowrap; }
        @media screen and (max-width: 768px) {
          .-page .page_main .page_body .page_block hgroup:has(.xlarge) span {
            min-width: initial; } }
        .-page .page_main .page_body .page_block hgroup:has(.xlarge) span::before {
          background: var(--background3);
          clip-path: polygon(0 0, 100% 0, 50% 100%); }
  .-page .page_main .page_body .page_block ~ .page_block {
    margin-top: calc(1em * 5); }
    @media screen and (max-width: 768px) {
      .-page .page_main .page_body .page_block ~ .page_block {
        margin-top: calc(1em * 3); } }
  .-page .page_main .page_body .page_block .page_cell ~ .page_cell {
    margin-top: calc(8.5em / 8 * 6); }
    @media screen and (max-width: 768px) {
      .-page .page_main .page_body .page_block .page_cell ~ .page_cell {
        margin-top: calc(8.5em / 8 * 4); } }

.page_about .page_about-outline {
  position: relative;
  z-index: 15;
  width: calc(100% / 15 * 14);
  margin-left: auto;
  margin-right: auto;
  isolation: isolate; }
  @media screen and (max-width: 768px) {
    .page_about .page_about-outline {
      width: calc(100% / 14 * 13); } }
  .page_about .page_about-outline .background {
    position: absolute;
    top: 0;
    left: calc(100% / 14 * -1);
    width: calc(100% / 14 * 16);
    height: 100%;
    z-index: -5;
    opacity: .328; }
    .page_about .page_about-outline .background ul {
      display: flex;
      flex-direction: column;
      justify-content: space-evenly;
      height: 100%; }
      @media screen and (max-width: 768px) {
        .page_about .page_about-outline .background ul {
          flex-direction: row; } }
      .page_about .page_about-outline .background ul > li {
        display: flex;
        align-items: center;
        justify-content: space-around; }
        @media screen and (max-width: 768px) {
          .page_about .page_about-outline .background ul > li {
            flex-direction: column; } }
        .page_about .page_about-outline .background ul > li:nth-child(1) {
          padding-right: 17.36vw; }
          @media screen and (max-width: 768px) {
            .page_about .page_about-outline .background ul > li:nth-child(1) {
              padding-right: 0; } }
        .page_about .page_about-outline .background ul > li:nth-child(3) {
          padding-left: 17.36vw; }
          @media screen and (max-width: 768px) {
            .page_about .page_about-outline .background ul > li:nth-child(3) {
              padding-right: 0; } }
        .page_about .page_about-outline .background ul > li img {
          width: auto;
          max-width: initial;
          height: 8em; }
          @media screen and (max-width: 768px) {
            .page_about .page_about-outline .background ul > li img {
              height: 4em; } }
  .page_about .page_about-outline .layer {
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    will-change: transform;
    pointer-events: none; }
  @media (prefers-reduced-motion: reduce) {
    .page_about .page_about-outline .layer {
      transition: none !important; } }
  .page_about .page_about-outline .page_about-outline_head .copy dl dt {
    font-size: 6em;
    letter-spacing: -.0205em; }
    @media screen and (max-width: 768px) {
      .page_about .page_about-outline .page_about-outline_head .copy dl dt {
        font-size: 3.5em; } }
    .page_about .page_about-outline .page_about-outline_head .copy dl dt span {
      display: block; }
      .page_about .page_about-outline .page_about-outline_head .copy dl dt span.primary * {
        font-weight: 600;
        color: var(--background3) !important; }
      .page_about .page_about-outline .page_about-outline_head .copy dl dt span.secondary {
        margin-top: -.2em; }
        @media screen and (max-width: 768px) {
          .page_about .page_about-outline .page_about-outline_head .copy dl dt span.secondary {
            margin-top: 0; } }
        .page_about .page_about-outline .page_about-outline_head .copy dl dt span.secondary * {
          font-style: italic; }
    .page_about .page_about-outline .page_about-outline_head .copy dl dt + dd {
      margin-top: 1em; }
  .page_about .page_about-outline .page_about-outline_head .copy dl dd {
    display: flex;
    flex-direction: column;
    gap: .5em;
    font-size: 1.5em;
    font-weight: 600; }
    @media screen and (max-width: 768px) {
      .page_about .page_about-outline .page_about-outline_head .copy dl dd {
        font-size: 1.25em; } }
    .page_about .page_about-outline .page_about-outline_head .copy dl dd * {
      color: var(--key1); }
    .page_about .page_about-outline .page_about-outline_head .copy dl dd span {
      display: block; }
  .page_about .page_about-outline .page_about-outline_head + * {
    margin-top: 3em; }
  .page_about .page_about-outline .page_about-outline_body .outline {
    display: flex;
    flex-direction: column;
    gap: 2em; }
    .page_about .page_about-outline .page_about-outline_body .outline .outline-block {
      display: flex;
      flex-direction: column;
      gap: 1em;
      font-size: 1.125em;
      font-weight: 600; }
      @media screen and (max-width: 768px) {
        .page_about .page_about-outline .page_about-outline_body .outline .outline-block {
          font-size: 1em; } }
  .page_about .page_about-outline .page_about-outline_foot {
    margin-top: 8em;
    text-align: center; }
    @media screen and (max-width: 768px) {
      .page_about .page_about-outline .page_about-outline_foot {
        margin-top: 5em; }
        .page_about .page_about-outline .page_about-outline_foot img {
          width: auto;
          height: 3em; } }
.page_about .page_about-team .page_about-team_body ul.grid {
  display: flex;
  flex-wrap: wrap;
  gap: 4em; }
  @media screen and (max-width: 768px) {
    .page_about .page_about-team .page_about-team_body ul.grid {
      gap: 3em 1em; } }
  .page_about .page_about-team .page_about-team_body ul.grid > li {
    display: flex;
    flex-direction: column;
    gap: 1.25em;
    width: calc((100% / 3) - (4em * 2 / 3)); }
    @media screen and (max-width: 768px) {
      .page_about .page_about-team .page_about-team_body ul.grid > li {
        width: calc((100% / 2) - (1em * 1 / 2)); } }
    .page_about .page_about-team .page_about-team_body ul.grid > li > .copy {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-direction: column;
      gap: 1em;
      width: 100%;
      height: 100%;
      font-weight: 600;
      font-size: 1.25em; }
      @media screen and (max-width: 768px) {
        .page_about .page_about-team .page_about-team_body ul.grid > li > .copy {
          font-size: 1.125em; } }
      .page_about .page_about-team .page_about-team_body ul.grid > li > .copy .copy-block {
        display: flex;
        flex-direction: column;
        gap: .5em; }
    .page_about .page_about-team .page_about-team_body ul.grid > li > .image {
      aspect-ratio: 5/6;
      border-radius: calc(1em / 4);
      overflow: hidden; }
      .page_about .page_about-team .page_about-team_body ul.grid > li > .image .inner {
        width: 100%;
        height: calc(100% + 20px); }
      .page_about .page_about-team .page_about-team_body ul.grid > li > .image img {
        will-change: transform; }
    .page_about .page_about-team .page_about-team_body ul.grid > li > .text {
      display: flex;
      flex-direction: column;
      gap: .75em; }
      .page_about .page_about-team .page_about-team_body ul.grid > li > .text .name {
        display: flex;
        flex-direction: column-reverse; }
        .page_about .page_about-team .page_about-team_body ul.grid > li > .text .name > .jp {
          font-weight: 600;
          font-size: .75em; }
        .page_about .page_about-team .page_about-team_body ul.grid > li > .text .name > .en {
          font-size: 1.5em; }
      .page_about .page_about-team .page_about-team_body ul.grid > li > .text .position {
        opacity: .75;
        font-size: .75em; }
      .page_about .page_about-team .page_about-team_body ul.grid > li > .text .profile {
        font-size: .85em;
        opacity: 0;
        filter: blur(15px); }
        .page_about .page_about-team .page_about-team_body ul.grid > li > .text .profile.action {
          opacity: 1;
          filter: blur(0);
          transition-delay: .41s; }

.page_business.front-page {
  padding-top: calc((2em * 2) + (.25em * 2) + 2.5em); }
  @media screen and (max-width: 768px) {
    .page_business.front-page {
      padding-top: calc((.75em * 2) + (.25em * 2) + 2.5em); } }
.page_business .page_business-diagram {
  position: relative;
  z-index: 15; }
  .page_business .page_business-diagram .background {
    position: absolute;
    top: 0;
    left: calc(100% / 30 * -1);
    right: calc(100% / 30 * -1);
    width: calc(100% / 15 * 16);
    height: auto;
    z-index: -1;
    opacity: .205; }
    @media screen and (max-width: 768px) {
      .page_business .page_business-diagram .background {
        opacity: .328; } }
  .page_business .page_business-diagram + * {
    margin-top: 4em; }
    @media screen and (max-width: 768px) {
      .page_business .page_business-diagram + * {
        margin-top: 2em; } }
.page_business .page_business-body hgroup + * {
  margin-top: 1.5em; }
.page_business .page_business-body ul.division {
  position: relative;
  z-index: 15; }
  .page_business .page_business-body ul.division::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 0;
    height: 1px;
    background: var(--background3); }
  .page_business .page_business-body ul.division > li {
    position: relative;
    z-index: 15;
    padding: calc(1em / 4 * 3) 0; }
    .page_business .page_business-body ul.division > li .belt {
      opacity: .4;
      cursor: pointer; }
      .page_business .page_business-body ul.division > li .belt > .belt-head {
        display: flex;
        flex-direction: column;
        gap: calc(1em / 4 * 2); }
        @media screen and (max-width: 768px) {
          .page_business .page_business-body ul.division > li .belt > .belt-head {
            width: calc(100% / 15 * 14);
            margin-left: auto;
            margin-right: auto; } }
        .page_business .page_business-body ul.division > li .belt > .belt-head .text {
          flex: 1;
          display: flex;
          align-items: baseline;
          justify-content: space-between; }
          @media screen and (max-width: 768px) {
            .page_business .page_business-body ul.division > li .belt > .belt-head .text {
              flex-direction: column;
              align-items: flex-start; } }
          .page_business .page_business-body ul.division > li .belt > .belt-head .text > .en {
            font-weight: 600;
            font-size: 3em;
            letter-spacing: -.041em; }
            @media screen and (max-width: 768px) {
              .page_business .page_business-body ul.division > li .belt > .belt-head .text > .en {
                font-size: 1.75em;
                letter-spacing: -.0205em; } }
          .page_business .page_business-body ul.division > li .belt > .belt-head .text > .jp {
            font-weight: normal; }
            @media screen and (max-width: 768px) {
              .page_business .page_business-body ul.division > li .belt > .belt-head .text > .jp {
                font-size: .8em; } }
        .page_business .page_business-body ul.division > li .belt > .belt-head .belt-head-text {
          display: none; }
          @media screen and (max-width: 768px) {
            .page_business .page_business-body ul.division > li .belt > .belt-head .belt-head-text {
              font-size: .9em; } }
      .page_business .page_business-body ul.division > li .belt > .belt-body {
        display: none;
        margin-top: 1em;
        padding: calc(1em / 4 * 5) 0;
        border-top: dotted 1px var(--background3); }
        @media screen and (max-width: 768px) {
          .page_business .page_business-body ul.division > li .belt > .belt-body {
            width: calc(100% / 15 * 14);
            margin-left: auto;
            margin-right: auto; } }
      .page_business .page_business-body ul.division > li .belt > .belt-foot {
        display: none;
        padding: calc(1em / 4 * 4) 0;
        border-top: dotted 1px var(--background3); }
      .page_business .page_business-body ul.division > li .belt ul.division_child {
        display: flex;
        flex-direction: column;
        gap: calc(1em / 4 * 3); }
        @media screen and (max-width: 768px) {
          .page_business .page_business-body ul.division > li .belt ul.division_child {
            gap: calc(1em / 4 * 2); } }
        .page_business .page_business-body ul.division > li .belt ul.division_child > li {
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
          .page_business .page_business-body ul.division > li .belt ul.division_child > li a {
            display: flex;
            align-items: center;
            gap: calc(1em / 4 * 4); }
            .page_business .page_business-body ul.division > li .belt ul.division_child > li a > .icon {
              display: block;
              width: 3em;
              height: 3em;
              background: var(--border-light-white);
              border-radius: calc(1em / 4 * 3);
              overflow: hidden; }
              .page_business .page_business-body ul.division > li .belt ul.division_child > li a > .icon img {
                transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
                -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
                -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
                -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
            .page_business .page_business-body ul.division > li .belt ul.division_child > li a > .text {
              font-weight: 600;
              font-size: 1.25em;
              letter-spacing: -.0205em; }
          .page_business .page_business-body ul.division > li .belt ul.division_child > li:hover {
            opacity: 1 !important;
            transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
            -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
            -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
            -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
            .page_business .page_business-body ul.division > li .belt ul.division_child > li:hover > .icon img {
              transform: scale(1.05);
              transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
              -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
              -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
              -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
        .page_business .page_business-body ul.division > li .belt ul.division_child:hover > li {
          opacity: .4;
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
    .page_business .page_business-body ul.division > li::after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      display: block;
      width: 0;
      height: 1px;
      background: var(--background3); }
    .page_business .page_business-body ul.division > li:hover .belt {
      opacity: 1; }
    .page_business .page_business-body ul.division > li.current {
      padding-top: calc(1em / 4 * 4);
      padding-bottom: calc(1em / 4 * 9); }
      .page_business .page_business-body ul.division > li.current .belt {
        opacity: 1; }
        .page_business .page_business-body ul.division > li.current .belt > .belt-head .text > .jp {
          font-weight: 600; }
    .page_business .page_business-body ul.division > li.gone::after {
      width: 100%;
      transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
      -o-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
      -moz-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
      -webkit-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s; }
  .page_business .page_business-body ul.division.gone::before {
    width: 100%;
    transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
    -o-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
    -moz-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s;
    -webkit-transition: cubic-bezier(0.43, 0.05, 0.17, 1) 1s 0.1025s; }
.page_business .page_business-body + * {
  margin-top: 2.5em; }
  @media screen and (max-width: 768px) {
    .page_business .page_business-body + * {
      margin-top: 1.5em; } }

#pageHeader .business_child dl > dt {
  font-size: 4em;
  font-weight: 600;
  letter-spacing: -.0205em; }
  @media screen and (max-width: 768px) {
    #pageHeader .business_child dl > dt {
      font-size: 2.5em; } }
#pageHeader .business_child dl > dd {
  font-size: 1.25em;
  font-weight: 600; }
#pageHeader .business_child dl + * {
  margin-top: calc(1em / 4 * 3); }

.page_business .page_business-child-body {
  display: flex;
  flex-direction: column;
  gap: calc(1em * 1.5); }
  @media screen and (max-width: 768px) {
    .page_business .page_business-child-body {
      gap: 0; } }
  .page_business .page_business-child-body .page_business-child-body_head {
    aspect-ratio: 2/1;
    background: var(--border-light-white);
    overflow: hidden; }
    .page_business .page_business-child-body .page_business-child-body_head .inner {
      width: 100%;
      height: calc(100% + 40px); }
  .page_business .page_business-child-body .page_business-child-body_body {
    display: flex;
    flex-wrap: wrap;
    gap: calc(1em * 1.5) calc(1em * 4); }
    @media screen and (max-width: 768px) {
      .page_business .page_business-child-body .page_business-child-body_body {
        flex-direction: column;
        margin-top: calc(1em / 2); } }
    .page_business .page_business-child-body .page_business-child-body_body > .text {
      flex: 1;
      padding: 1em 0; }
      @media screen and (max-width: 768px) {
        .page_business .page_business-child-body .page_business-child-body_body > .text {
          order: 2;
          width: calc(100% / 15 * 14);
          margin-left: auto;
          margin-right: auto; } }
      .page_business .page_business-child-body .page_business-child-body_body > .text > span {
        display: block;
        font-size: .85em; }
        .page_business .page_business-child-body .page_business-child-body_body > .text > span + * {
          margin-top: 1.5em; }
      .page_business .page_business-child-body .page_business-child-body_body > .text .text-body dl {
        display: flex;
        flex-direction: column;
        gap: 1em; }
        .page_business .page_business-child-body .page_business-child-body_body > .text .text-body dl > dt {
          font-size: 1.5em; }
        .page_business .page_business-child-body .page_business-child-body_body > .text .text-body dl > dd {
          font-size: .9em; }
      .page_business .page_business-child-body .page_business-child-body_body > .text .text-foot {
        margin-top: calc(1em * 1.5);
        padding-top: calc(1em * 1.5);
        border-top: dotted 1px var(--background3); }
        .page_business .page_business-child-body .page_business-child-body_body > .text .text-foot ul.store_list > li a {
          display: flex;
          align-items: center;
          flex-wrap: wrap;
          gap: calc(1em / 4 * 1) calc(1em / 4 * 3); }
          .page_business .page_business-child-body .page_business-child-body_body > .text .text-foot ul.store_list > li a > span {
            display: block; }
            .page_business .page_business-child-body .page_business-child-body_body > .text .text-foot ul.store_list > li a > span.title {
              font-weight: 600; }
            .page_business .page_business-child-body .page_business-child-body_body > .text .text-foot ul.store_list > li a > span.address {
              font-size: .85em; }
            .page_business .page_business-child-body .page_business-child-body_body > .text .text-foot ul.store_list > li a > span.icon {
              width: 1em;
              min-width: 1em;
              height: 1em; }
              .page_business .page_business-child-body .page_business-child-body_body > .text .text-foot ul.store_list > li a > span.icon svg {
                fill: var(--background3);
                transform: rotate(-45deg); }
        .page_business .page_business-child-body .page_business-child-body_body > .text .text-foot .text-foot-title {
          display: flex;
          align-items: center;
          gap: calc(8em / 16); }
          .page_business .page_business-child-body .page_business-child-body_body > .text .text-foot .text-foot-title::before {
            content: '';
            display: block;
            width: .5em;
            height: .5em;
            background: var(--background3);
            clip-path: polygon(0 0, 100% 50%, 0 100%);
            overflow: hidden; }
          .page_business .page_business-child-body .page_business-child-body_body > .text .text-foot .text-foot-title + * {
            margin-top: calc(8em / 16 * 3); }
          .page_business .page_business-child-body .page_business-child-body_body > .text .text-foot .text-foot-title ~ .text-foot-title {
            margin-top: calc(8em / 16 * 6); }
        .page_business .page_business-child-body .page_business-child-body_body > .text .text-foot ul.table {
          display: flex;
          flex-direction: column;
          gap: calc(8em / 8 * 1);
          font-size: .9em; }
          .page_business .page_business-child-body .page_business-child-body_body > .text .text-foot ul.table > li {
            display: flex; }
            .page_business .page_business-child-body .page_business-child-body_body > .text .text-foot ul.table > li > .title {
              flex: 1; }
            .page_business .page_business-child-body .page_business-child-body_body > .text .text-foot ul.table > li > .content {
              flex: 3;
              display: flex;
              flex-direction: column;
              gap: calc(8em / 16); }
    .page_business .page_business-child-body .page_business-child-body_body > .image {
      flex: 1; }
      @media screen and (max-width: 768px) {
        .page_business .page_business-child-body .page_business-child-body_body > .image {
          order: 1;
          width: 100%; } }
      .page_business .page_business-child-body .page_business-child-body_body > .image ul {
        display: flex;
        flex-direction: column;
        gap: calc(1em * 1) calc(1em / 2); }
        @media screen and (max-width: 768px) {
          .page_business .page_business-child-body .page_business-child-body_body > .image ul {
            flex-direction: row; } }
        .page_business .page_business-child-body .page_business-child-body_body > .image ul.sticky {
          top: calc((2em * 2) + (.25em * 2) + 2.5em); }
          @media screen and (max-width: 768px) {
            .page_business .page_business-child-body .page_business-child-body_body > .image ul.sticky {
              top: calc((.75em * 2) + (.25em * 2) + 2.5em); } }
        .page_business .page_business-child-body .page_business-child-body_body > .image ul > li {
          aspect-ratio: 2/1;
          background: var(--border-light-white);
          overflow: hidden; }
          .page_business .page_business-child-body .page_business-child-body_body > .image ul > li .inner {
            width: 100%;
            height: calc(100% + 40px); }
.page_business .page_body .page_block:nth-child(2n) .page_business-child-body_body > .text {
  order: 2; }

.page_news .page_news-body ul.flex {
  display: flex;
  flex-wrap: wrap;
  gap: calc(1em * 1);
  width: 100%;
  max-width: calc((320px * 3) + (1em * 2));
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .page_news .page_news-body ul.flex {
      flex-direction: column; } }
  .page_news .page_news-body ul.flex > li {
    width: 320px;
    border-radius: calc(1em / 4);
    overflow: hidden;
    transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
    @media screen and (max-width: 768px) {
      .page_news .page_news-body ul.flex > li {
        width: 100%;
        max-width: 100%; }
        .page_news .page_news-body ul.flex > li:nth-child(2n) {
          margin-left: auto; } }
    .page_news .page_news-body ul.flex > li .card {
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      gap: 3em;
      height: 100%;
      padding: calc(1em / 4); }
      .page_news .page_news-body ul.flex > li .card * {
        color: var(--background3); }
      .page_news .page_news-body ul.flex > li .card .content {
        display: flex;
        flex-direction: column;
        gap: 1.25em; }
        @media screen and (max-width: 768px) {
          .page_news .page_news-body ul.flex > li .card .content {
            flex-direction: row;
            gap: .75em; } }
      .page_news .page_news-body ul.flex > li .card .click {
        padding: calc(1em / 2);
        opacity: 0;
        font-size: .9em;
        letter-spacing: -.0205em;
        text-align: right;
        transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
        @media screen and (max-width: 768px) {
          .page_news .page_news-body ul.flex > li .card .click {
            display: none; } }
      .page_news .page_news-body ul.flex > li .card .image {
        aspect-ratio: 3/2;
        background: var(--border-light-white);
        border-radius: calc(1em / 4);
        overflow: hidden; }
        @media screen and (max-width: 768px) {
          .page_news .page_news-body ul.flex > li .card .image {
            width: 80px;
            min-width: 80px;
            aspect-ratio: 3/3; } }
        .page_news .page_news-body ul.flex > li .card .image .inner {
          height: calc(100% + 40px);
          transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
          -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
      .page_news .page_news-body ul.flex > li .card .text {
        display: flex;
        flex-direction: column;
        gap: calc(1em / 4);
        padding: 0 calc(1em / 2); }
        @media screen and (max-width: 768px) {
          .page_news .page_news-body ul.flex > li .card .text {
            flex: 1; } }
        .page_news .page_news-body ul.flex > li .card .text time {
          font-size: .8em; }
      .page_news .page_news-body ul.flex > li .card:hover .image .inner {
        transform: scale(1.05);
        transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s;
        -o-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s;
        -moz-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s;
        -webkit-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s; }
      .page_news .page_news-body ul.flex > li .card:hover .click {
        opacity: 1;
        transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s;
        -o-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s;
        -moz-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s;
        -webkit-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s; }
    .page_news .page_news-body ul.flex > li:hover {
      background: var(--border-black);
      transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s;
      -o-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s;
      -moz-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s;
      -webkit-transition: cubic-bezier(0.22, 0.61, 0.36, 1) 1.25s; }
.page_news .page_news-body .page_news-body-content {
  width: 100%;
  max-width: calc((320px * 3) + (1em * 2));
  margin: 0 auto; }
  .page_news .page_news-body .page_news-body-content * {
    color: var(--background3); }
  .page_news .page_news-body .page_news-body-content h1 {
    font-size: 2em; }
    @media screen and (max-width: 768px) {
      .page_news .page_news-body .page_news-body-content h1 {
        font-size: 1.75em; } }
  .page_news .page_news-body .page_news-body-content .page_news-body-content-head + * {
    margin-top: 1em; }
    @media screen and (max-width: 768px) {
      .page_news .page_news-body .page_news-body-content .page_news-body-content-head + * {
        margin-top: calc(1em / 4 * 3); } }

.page_company .page_company-outline .page_company-outline_body {
  padding-left: 17.36vw; }
  @media screen and (max-width: 768px) {
    .page_company .page_company-outline .page_company-outline_body {
      width: calc(100% / 15 * 14);
      margin-left: auto;
      margin-right: auto;
      padding-left: 0; } }
.page_company .page_company-outline ul.table {
  display: flex;
  flex-direction: column;
  gap: 2em; }
  @media screen and (max-width: 768px) {
    .page_company .page_company-outline ul.table {
      gap: 1.25em; } }
  .page_company .page_company-outline ul.table > li {
    display: flex;
    align-items: baseline; }
    .page_company .page_company-outline ul.table > li > .title {
      flex: 1;
      font-weight: 600; }
    .page_company .page_company-outline ul.table > li > .content {
      flex: 3; }
.page_company .page_company-outline ul.disc {
  display: flex;
  flex-direction: column;
  gap: calc(1em / 2); }
  .page_company .page_company-outline ul.disc > li {
    display: flex;
    align-items: center;
    gap: calc(1em / 4 * 3); }
    .page_company .page_company-outline ul.disc > li::before {
      content: '';
      display: block;
      width: calc(1em / 2);
      min-width: calc(1em / 2);
      height: calc(1em / 2);
      background: var(--background3);
      border-radius: calc(1em / 2); }
.page_company .page_company-office .page_company-office_body #myCarousel {
  --f-arrow-pos: 10px;
  --f-arrow-color: var(--background3);
  --f-arrow-width: 40px;
  --f-arrow-height: 40px;
  --f-arrow-svg-width: 20px;
  --f-arrow-svg-height: 20px;
  --f-arrow-svg-stroke-width: 2px;
  --f-arrow-border-radius: 50%; }
.page_company .page_company-office .page_company-office_body #myCarousel .f-carousel__slide {
  display: flex;
  align-items: center;
  justify-content: center; }
.page_company .page_company-office .page_company-office_body #myCarousel img {
  max-width: 100%;
  max-height: 100%;
  height: auto; }
.page_company .page_company-history .page_company-history_body {
  padding-left: 17.36vw; }
  @media screen and (max-width: 768px) {
    .page_company .page_company-history .page_company-history_body {
      width: calc(100% / 15 * 14);
      margin-left: auto;
      margin-right: auto;
      padding-left: 0; } }
.page_company .page_company-history ul.table {
  display: flex;
  flex-direction: column;
  gap: 2em; }
  @media screen and (max-width: 768px) {
    .page_company .page_company-history ul.table {
      gap: 1.25em; } }
  .page_company .page_company-history ul.table > li {
    display: flex;
    align-items: baseline;
    gap: .25em .75em; }
    @media screen and (max-width: 768px) {
      .page_company .page_company-history ul.table > li {
        flex-direction: column; } }
    .page_company .page_company-history ul.table > li > .year {
      display: flex;
      align-items: baseline;
      width: 2.5em;
      font-size: 1.75em;
      font-weight: 600; }
    .page_company .page_company-history ul.table > li > .item {
      flex: 1;
      display: flex;
      flex-direction: column;
      gap: .5em; }
      @media screen and (max-width: 768px) {
        .page_company .page_company-history ul.table > li > .item {
          width: 100%; } }
      .page_company .page_company-history ul.table > li > .item > li {
        display: flex;
        align-items: baseline; }
        .page_company .page_company-history ul.table > li > .item > li > .month {
          flex: 1;
          font-weight: 600; }
          @media screen and (max-width: 768px) {
            .page_company .page_company-history ul.table > li > .item > li > .month {
              font-weight: 500; } }
        .page_company .page_company-history ul.table > li > .item > li > .content {
          flex: 5; }
          @media screen and (max-width: 768px) {
            .page_company .page_company-history ul.table > li > .item > li > .content {
              flex: 3; } }

.page_privacy .page_head p {
  font-size: 0.9em !important; }
.page_privacy .page_head nav {
  margin: calc(8.5em / 16 * 3) calc(8.5em / 8 * 2);
  padding: calc(8.5em / 8 * 2);
  background: #f7f7f7; }
  @media screen and (max-width: 768px) {
    .page_privacy .page_head nav {
      margin: calc(8.5em / 16 * 3) 0;
      padding: calc(8.5em / 16 * 2); } }
  .page_privacy .page_head nav > span {
    display: block;
    color: var(--color-gray);
    margin-bottom: calc(8.5em / 16 * 1); }
  .page_privacy .page_head nav ul > li a {
    display: block;
    padding: calc(8.5em / 32 * 1) 0;
    transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
    -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
    @media screen and (max-width: 768px) {
      .page_privacy .page_head nav ul > li a {
        padding: calc(8.5em / 64 * 1) 0; } }
    .page_privacy .page_head nav ul > li a:hover {
      opacity: .5;
      transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
      -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
.page_privacy ul.list {
  padding: calc(8.5em / 16 * 4) 0;
  border-top: solid 1px rgba(0, 0, 0, 0.1025);
  border-bottom: solid 1px rgba(0, 0, 0, 0.1025); }
  .page_privacy ul.list > li ~ li {
    margin-top: calc(8.5em / 16 * 3); }
  .page_privacy ul.list > li[data-number] {
    display: flex;
    align-items: flex-start;
    justify-content: center; }
    .page_privacy ul.list > li[data-number]::before {
      content: attr(data-number) "";
      display: block;
      width: 3rem;
      font-weight: 600;
      font-size: 1.3325em;
      color: #ee781f;
      line-height: 1.64; }
  .page_privacy ul.list + p {
    margin-top: calc(85px / 8 * 3); }
.page_privacy dl._list {
  margin: 0 calc(8.5em / 16 * 4); }
  @media screen and (max-width: 768px) {
    .page_privacy dl._list {
      margin: 0; } }
  .page_privacy dl._list > dt {
    font-size: 1.3325em;
    font-weight: 600; }
    .page_privacy dl._list > dt + dd {
      margin-top: 12px; }
  .page_privacy dl._list > dd {
    padding-left: 1em;
    font-size: .9em; }
    .page_privacy dl._list > dd > * + * {
      margin-top: calc(8.5em / 16); }
.page_privacy ul.disc {
  display: flex;
  flex-direction: column;
  gap: calc(8.5em / 32); }
  .page_privacy ul.disc > li {
    display: flex;
    align-items: baseline;
    column-gap: calc(8.5em / 16);
    line-height: 1.5; }
    .page_privacy ul.disc > li::before {
      content: '';
      width: 1em;
      min-width: 1em;
      height: 1em;
      background: var(--color-black);
      border-radius: 50%;
      transform: scale(0.41); }
.page_privacy ul.number {
  display: flex;
  flex-direction: column;
  gap: calc(8.5em / 32);
  counter-reset: num; }
  .page_privacy ul.number > li {
    display: flex;
    align-items: baseline;
    column-gap: calc(8.5em / 16);
    line-height: 1.5; }
    .page_privacy ul.number > li::before {
      counter-increment: num;
      content: counter(num);
      width: 1em;
      min-width: 1em;
      height: 1em; }
.page_privacy .contactus > ul {
  display: flex;
  flex-direction: column;
  padding: calc(8.5em / 16 * 2) 0;
  background: var(--color-lightgray); }
  .page_privacy .contactus > ul > li {
    padding: calc(8.5em / 16 * 2);
    border-bottom: solid 1px var(--border-light-black); }
    .page_privacy .contactus > ul > li > dl {
      display: flex; }
      @media screen and (max-width: 768px) {
        .page_privacy .contactus > ul > li > dl {
          flex-direction: column;
          row-gap: calc(8.5em / 32); } }
      .page_privacy .contactus > ul > li > dl > dt {
        flex: 1;
        font-weight: 600; }
      .page_privacy .contactus > ul > li > dl > dd {
        flex: 3; }

.-page.entry header {
  background: #0100a7;
  background: url(images/noise.png), #0100a7;
  background-repeat: repeat;
  background-size: 100px; }
  .-page.entry header * {
    color: var(--color-white); }
  .-page.entry header + .thumbnail {
    margin-bottom: calc(100% / 32 * -3); }
    @media screen and (max-width: 768px) {
      .-page.entry header + .thumbnail {
        margin-bottom: calc(100% / 32 * -4); } }
.-page.entry section {
  background: var(--color-white); }
  .-page.entry section.nul {
    background: initial; }

.formWrap {
  position: relative;
  z-index: 15; }
  .formWrap .caption {
    border-bottom: solid 1px var(--border-light-black);
    padding-bottom: 2.05em;
    margin-bottom: 2.46em;
    font-size: .8em; }
    @media screen and (max-width: 768px) {
      .formWrap .caption {
        padding: 0;
        padding-bottom: 1.23em;
        margin-bottom: 2.05em; } }
    .formWrap .caption .focus {
      font-weight: 600; }

ul.listDocForm li {
  margin-bottom: 1.23em; }
  @media screen and (max-width: 768px) {
    ul.listDocForm li {
      margin-bottom: 1.64em; } }
  ul.listDocForm li.hidden {
    display: none; }
  ul.listDocForm li:last-child {
    margin-bottom: 0; }

dl.listDocForm {
  display: flex;
  flex-wrap: wrap; }
  dl.listDocForm dt {
    width: 100%; }
    dl.listDocForm dt p {
      display: flex;
      align-items: baseline;
      column-gap: calc(8.5em /32);
      font-weight: 600; }
      dl.listDocForm dt p small[data-type="必須"] {
        color: #e04645; }
      dl.listDocForm dt p small[data-type="任意"] {
        color: #aaa; }
      dl.listDocForm dt p small::before {
        content: attr(data-type) "";
        display: block; }
      dl.listDocForm dt p.must {
        position: relative;
        z-index: 15;
        display: table; }
  dl.listDocForm dd {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    column-gap: calc(85px / 4);
    width: 100%;
    margin-top: 5px; }
    @media screen and (max-width: 768px) {
      dl.listDocForm dd {
        column-gap: calc(85px / 8);
        margin-top: 3px; } }
    dl.listDocForm dd > br {
      display: none; }
    dl.listDocForm dd span.caption {
      display: block;
      width: 100%;
      margin-top: .41em;
      font-size: .85em; }

.mw_wp_form {
  max-width: 768px;
  margin: 0 auto;
  padding: calc(8.5em / 8 * 3);
  background: var(--color-white);
  border-radius: calc(8.5em / 32);
  overflow: hidden; }
  @media screen and (max-width: 768px) {
    .mw_wp_form {
      padding: calc(100% / 44 * 3);
      border-radius: calc(8.5em / 32); } }
  .mw_wp_form .horizontal-item + .horizontal-item {
    margin: 0 !important; }
  .mw_wp_form span.mwform-checkbox-field {
    position: relative;
    z-index: 15;
    margin-right: 6px; }
    .mw_wp_form span.mwform-checkbox-field input {
      position: absolute;
      top: 0;
      left: 0;
      opacity: 0;
      pointer-events: none; }
      .mw_wp_form span.mwform-checkbox-field input:checked + span.mwform-checkbox-field-text::after {
        transform: scale(1);
        transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
    .mw_wp_form span.mwform-checkbox-field span.mwform-checkbox-field-text {
      display: block;
      border: solid 1px #eeeeee;
      background: #f8f8f8;
      padding: 8px 18px 8px 44px;
      border-radius: 5px; }
      .mw_wp_form span.mwform-checkbox-field span.mwform-checkbox-field-text::before {
        content: '';
        position: absolute;
        left: 12px;
        top: calc(50% - 10px);
        display: block;
        width: 20px;
        height: 20px;
        border-radius: 3px;
        background: var(--color-white);
        border: solid 1px var(--border-light-black); }
      .mw_wp_form span.mwform-checkbox-field span.mwform-checkbox-field-text::after {
        content: '';
        position: absolute;
        left: 16px;
        top: calc(50% - 6px);
        display: block;
        width: 14px;
        height: 14px;
        border-radius: 2px;
        background: var(--color-key1);
        transform: scale(0);
        transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
  .mw_wp_form span.mwform-radio-field {
    position: relative;
    z-index: 15; }
    .mw_wp_form span.mwform-radio-field input {
      position: absolute;
      top: 0;
      left: 0;
      opacity: 0;
      pointer-events: none; }
      .mw_wp_form span.mwform-radio-field input:checked + span.mwform-radio-field-text::after {
        transform: scale(1);
        transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
    .mw_wp_form span.mwform-radio-field span.mwform-radio-field-text {
      display: block;
      border: solid 1px #eeeeee;
      background: var(--color-white);
      padding: 8px 18px 8px 44px;
      border-radius: 5px; }
      .mw_wp_form span.mwform-radio-field span.mwform-radio-field-text::before {
        content: '';
        position: absolute;
        left: 12px;
        top: calc(50% - 10px);
        display: block;
        width: 20px;
        height: 20px;
        border-radius: 20px;
        background: var(--color-white);
        border: solid 1px var(--border-light-black); }
      .mw_wp_form span.mwform-radio-field span.mwform-radio-field-text::after {
        content: '';
        position: absolute;
        left: 16px;
        top: calc(50% - 6px);
        display: block;
        width: 14px;
        height: 14px;
        border-radius: 14px;
        background: var(--color-key1);
        transform: scale(0);
        transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -o-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -moz-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s;
        -webkit-transition: cubic-bezier(0.55, 0.05, 0.22, 0.99) 0.328s; }
  .mw_wp_form form > p {
    display: none; }
  .mw_wp_form input::placeholder {
    color: #aaa; }
  .mw_wp_form input:focus::-webkit-input-placeholder {
    color: transparent; }
  .mw_wp_form input:focus::-moz-placeholder {
    color: transparent; }
  .mw_wp_form input:focus::-ms-input-placeholder {
    color: transparent; }
  .mw_wp_form input:focus::placeholder {
    color: transparent; }
  .mw_wp_form input[type="text"], .mw_wp_form textarea {
    width: 100%;
    height: auto;
    border: solid 1px rgba(0, 0, 0, 0.1025);
    background: var(--color-white);
    border-radius: 0;
    line-height: 1.5;
    color: #231814;
    font-size: 16px;
    border-radius: 6px;
    -webkit-appearance: none;
    appearance: none; }
  .mw_wp_form select {
    width: 100%;
    height: auto;
    border: solid 1px rgba(0, 0, 0, 0.1025);
    background: var(--color-white);
    border-radius: 0;
    line-height: 1.5;
    color: #231814;
    font-size: 16px;
    border-radius: 6px; }
  .mw_wp_form input[type="text"], .mw_wp_form textarea {
    padding: .82em; }
  .mw_wp_form select {
    position: relative;
    z-index: 15;
    padding: 0 .82em; }
    .mw_wp_form select::after {
      content: '';
      position: absolute;
      right: .82em;
      top: calc(50% - .5em);
      display: block;
      width: 1em;
      height: 1em;
      background: url(images/icn-arrow-p.svg);
      background-size: cover; }
  .mw_wp_form input[type="radio"] + span {
    color: #252525; }
  .mw_wp_form input[type="text"]#namehead, .mw_wp_form input[type="text"]#kanahead {
    flex: 1; }
  .mw_wp_form input[type="text"]#namebody, .mw_wp_form input[type="text"]#kanabody {
    flex: 1; }
  .mw_wp_form input[type="text"]#postcode {
    width: 10em; }
  .mw_wp_form input[type="text"]#address1, .mw_wp_form input[type="text"]#address2 {
    flex: 1;
    margin-right: 1em; }
  .mw_wp_form input[type="text"]#address3 {
    flex: 2; }
  .mw_wp_form input[type="text"]#old {
    width: 10em;
    margin-right: 1em; }
  .mw_wp_form input[type="text"]#date2, .mw_wp_form input[type="text"]#date3 {
    margin-top: 1em; }
  .mw_wp_form input[type="text"]#year, .mw_wp_form input[type="text"]#month, .mw_wp_form input[type="text"]#date {
    width: 8.2em; }
    .mw_wp_form input[type="text"]#year + span, .mw_wp_form input[type="text"]#month + span, .mw_wp_form input[type="text"]#date + span {
      margin: 0 .82em 0 .41em; }
  .mw_wp_form input[type="text"].address {
    margin-top: 7px; }
  .mw_wp_form select {
    height: 4em; }
  .mw_wp_form label {
    /*line-height: 4em;*/ }
  .mw_wp_form input[type="text"]:focus, .mw_wp_form textarea:focus, .mw_wp_form select:focus {
    outline: none;
    border: solid 1px #a0a0a0; }
  .mw_wp_form input[type="submit"] {
    width: 100%;
    max-width: 18rem;
    height: 4em;
    border: none;
    font-weight: bold;
    text-align: center;
    line-height: 4em;
    font-size: 1em;
    background: #150606;
    color: var(--color-white);
    position: relative;
    margin: 0 auto;
    border-radius: 6px;
    overflow: hidden;
    display: block;
    transition: cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s; }
    @media screen and (max-width: 768px) {
      .mw_wp_form input[type="submit"] {
        height: 4em;
        line-height: 4em; } }
    .mw_wp_form input[type="submit"]:hover {
      background: #0b0f15;
      transition: cubic-bezier(0.22, 0.61, 0.36, 1) 0.3s; }
  .mw_wp_form.mw_wp_form_confirm ul.listDocForm li.entryBtnWrap {
    display: flex; }
    .mw_wp_form.mw_wp_form_confirm ul.listDocForm li.entryBtnWrap input[type="submit"].back {
      order: 1;
      background: #252525; }
  .mw_wp_form.mw_wp_form_confirm dl.listDocForm dd {
    background: #f7f7f7;
    padding: 1.23em 2.46em;
    border-radius: 4px;
    border: solid 1px #eee;
    color: #777; }
  .mw_wp_form.mw_wp_form_confirm dl.listDocForm dl.listComplete {
    font-weight: 500; }
  .mw_wp_form.mw_wp_form_complete .completeWrap > * ~ * {
    margin-top: .82em; }
  .mw_wp_form.mw_wp_form_complete .completeWrap dl.listComplete dt p {
    font-weight: 500;
    font-size: 1.41em;
    margin-top: .82em; }

/*//!#index----------------------------------------------------------------------------------------------*/
/* ie hack */
@media all and (-ms-high-contrast: none) {
  .headerLogo img {
    width: 100%;
    height: 4.5vw; }

  a.btn > span.circle {
    border: solid 2px rgba(240, 95, 64, 0.2); }

  ul.listFooterNav > li span.circle {
    border: solid 2px rgba(240, 95, 64, 0.2); }

  .careerstepWrap .flexWrap > .flexCenter .inner {
    border: solid 2px rgba(240, 95, 64, 0.8); }

  .secIndex.sec1 .kv_leadcopy .kv_leadcopy_inner {
    width: 100%; }

  .secIndex.sec3 .indexService .swiper-button-prev {
    left: auto;
    bottom: auto; }

  dl.listFootnav dt a {
    display: inline-block; }

  .secPage.root .flexWrap > .flexItem {
    width: calc((100% / 3) - 0.01px); }

  ul.listPhilosophy {
    justify-content: space-around; }

  .member_wrapper .f_wrapper .__left {
    position: relative; }

  header.pageHeader {
    height: 31.5em; }

  ul.listLGBtn a.btn {
    width: 100%; }

  ul.listLogos li img {
    width: 8em; }

  ul.listLogos {
    justify-content: space-between; } }
/*ヘッダー調整*/
nav.globalNav ul.listGlobal li span.en {
  white-space: nowrap; }

/*page_csr*/
.card_text ._body > img {
  margin-bottom: 0.82em; }

/*page_career*/
.careerImg {
  margin-bottom: 2.05em; }

/*page_csr*/
dl.listSDGs dt > span {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-left: 0;
  margin: 0 1.23em; }

dl.listSDGs dt > span img {
  width: calc(50% - 2px); }

dl.listSDGs dt > span img:nth-child(n+3) {
  margin-top: 4px; }

/*page_business/~*/
p.writer {
  text-align: right;
  font-size: 1em;
  margin-top: 0.82em; }
  p.writer > span {
    display: block;
    font-size: .8em;
    margin-bottom: .205em; }

/*page_movie*/
.secPage.lp.movie h2.pageTtl {
  background: #fff; }

/*single-events*/
body.single-events .flexLower {
  margin-bottom: 6.15em; }

.secPage.basic.eventForm .wrapper {
  padding-bottom: 0; }

/*page_about 事業紹介 画像調整*/
@media screen and (max-width: 768px) {
  .type_wrapper ._stokerImg {
    position: absolute;
    right: 0;
    left: auto; } }
/*crosstalk 調整*/
.interview_wrapper ._body p.box ~ p.box {
  margin-top: 1.125em; }

.interview_wrapper ._body p.box span {
  font-size: 0.625em;
  font-weight: 600; }
