@charset "UTF-8";
/*!
Theme Name: Anyglo
Theme URI: http://underscores.me/
Author: Heads.Inc
Author URI: -------
Description: Anyglo コーポレートサイト（theme slug: anyglo_2026）
Version: 1.0.0
License: GNU General Public License v2 or later
/*! --------------------------------------------------------------
　　このCSSファイルは .scssファイルからコンパイルされたものです。
　　直接編集しないように注意してください。a
--------------------------------------------------------------- */
/* 基本設定
============================================================================ */
/* base > color
============================================================================================================ */
/* 基本色一覧*/
/*白*/
/*黒*/
/*灰色*/
/*黄*/
/*赤*/
/*青*/
/*緑*/
/*金*/
/* mixin
============================================================================ */
/* フォントサイズをremに変換するmixin ($base-font-sizeはbase/_base.scssに)*/
/* フレックスボックス */
/* SCSS メディアクエリ */
/*最後の要素の余白リセット*/
/*
 * Mixin for placeholder
 * @include placeholderColor(#00ff00);
 */
figure {
  display: block;
  margin-block-start: 0;
  margin-block-end: 0;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

img {
  vertical-align: bottom;
  line-height: 0;
  font-size: 0;
  backface-visibility: hidden;
}

/*-------------------------------------------------------------
display指定class

【only】
.pc-only / .tab-only / .pad-only / .sp-only /.se-only
.pctab-only / .tabsp-only / .sp-none

-------------------------------------------------------------*/
.pc-only {
  display: block !important;
}
@media (max-width: 1024px) {
  .pc-only {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .pc-only {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .pc-only {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .pc-only {
    display: none !important;
  }
}
.pc-only--flex {
  display: flex !important;
}
@media (max-width: 1024px) {
  .pc-only--flex {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .pc-only--flex {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .pc-only--flex {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .pc-only--flex {
    display: none !important;
  }
}

.tab-only {
  display: none !important;
}
@media (max-width: 1024px) {
  .tab-only {
    display: block !important;
  }
}
@media (max-width: 768px) {
  .tab-only {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .tab-only {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .tab-only {
    display: none !important;
  }
}
.tab-only--flex {
  display: none !important;
}
@media (max-width: 1024px) {
  .tab-only--flex {
    display: flex !important;
  }
}
@media (max-width: 768px) {
  .tab-only--flex {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .tab-only--flex {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .tab-only--flex {
    display: none !important;
  }
}

.pad-only {
  display: none !important;
}
@media (max-width: 1024px) {
  .pad-only {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .pad-only {
    display: block !important;
  }
}
@media (max-width: 767px) {
  .pad-only {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .pad-only {
    display: none !important;
  }
}
.pad-only--flex {
  display: none !important;
}
@media (max-width: 1024px) {
  .pad-only--flex {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .pad-only--flex {
    display: flex !important;
  }
}
@media (max-width: 767px) {
  .pad-only--flex {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .pad-only--flex {
    display: none !important;
  }
}

.sp-only {
  display: none !important;
}
@media (max-width: 1024px) {
  .sp-only {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .sp-only {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .sp-only {
    display: block !important;
  }
}
@media (max-width: 320px) {
  .sp-only {
    display: block !important;
  }
}
.sp-only--flex {
  display: none !important;
}
@media (max-width: 1024px) {
  .sp-only--flex {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .sp-only--flex {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .sp-only--flex {
    display: flex !important;
  }
}
@media (max-width: 320px) {
  .sp-only--flex {
    display: flex !important;
  }
}

.se-only {
  display: none !important;
}
@media (max-width: 1024px) {
  .se-only {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .se-only {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .se-only {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .se-only {
    display: block !important;
  }
}
.se-only--flex {
  display: none !important;
}
@media (max-width: 1024px) {
  .se-only--flex {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .se-only--flex {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .se-only--flex {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .se-only--flex {
    display: flex !important;
  }
}

.pctab-only {
  display: block !important;
}
@media (max-width: 1024px) {
  .pctab-only {
    display: block !important;
  }
}
@media (max-width: 768px) {
  .pctab-only {
    display: block !important;
  }
}
@media (max-width: 767px) {
  .pctab-only {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .pctab-only {
    display: none !important;
  }
}
.pctab-only--flex {
  display: flex !important;
}
@media (max-width: 1024px) {
  .pctab-only--flex {
    display: flex !important;
  }
}
@media (max-width: 768px) {
  .pctab-only--flex {
    display: flex !important;
  }
}
@media (max-width: 767px) {
  .pctab-only--flex {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .pctab-only--flex {
    display: none !important;
  }
}

.tabsp-only {
  display: none !important;
}
@media (max-width: 1024px) {
  .tabsp-only {
    display: block !important;
  }
}
@media (max-width: 768px) {
  .tabsp-only {
    display: block !important;
  }
}
@media (max-width: 767px) {
  .tabsp-only {
    display: block !important;
  }
}
@media (max-width: 320px) {
  .tabsp-only {
    display: block !important;
  }
}
.tabsp-only--flex {
  display: none !important;
}
@media (max-width: 1024px) {
  .tabsp-only--flex {
    display: flex !important;
  }
}
@media (max-width: 768px) {
  .tabsp-only--flex {
    display: flex !important;
  }
}
@media (max-width: 767px) {
  .tabsp-only--flex {
    display: flex !important;
  }
}
@media (max-width: 320px) {
  .tabsp-only--flex {
    display: flex !important;
  }
}

@media (max-width: 767px) {
  .sp-none {
    display: none;
  }
}
@media (max-width: 320px) {
  .sp-none {
    display: none;
  }
}

/* 共通部分
============================================================================ */
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

li {
  list-style: none;
}

ul,
ol,
dl,
p {
  padding: 0;
  margin: 0;
}

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

a {
  color: inherit;
  /* ress.cssだとunderlineがつくのを阻止 */
  text-decoration: none;
}

select {
  color: #020617;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  line-height: 1 !important;
  position: relative;
}

table {
  table-layout: fixed;
  /* ress.css用 */
  border-collapse: collapse;
  border-spacing: 0;
}

td input {
  max-width: 100%;
}

i,
em {
  font-style: normal;
}

* {
  box-sizing: border-box;
}

small {
  font-size: 100%;
}
html,
body {
  width: 100%;
  line-height: 2.0625;
  color: #020617;
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0em;
  font-size: 16px;
  font-weight: 300;
  position: relative;
  -webkit-print-color-adjust: exact;
  overflow-x: hidden;
  overflow-x: clip;
  -ms-overflow-style: none; /* IE, Edge 対応 */
  scrollbar-width: none; /* Firefox 対応 */
}
@media (max-width: 767px) {
  html,
  body {
    font-size: 16px;
    font-size: 7.2727272727vw;
    line-height: 2.0625;
  }
}
html::-webkit-scrollbar,
body::-webkit-scrollbar { /* Chrome, Safari 対応 */
  display: none;
}

body {
  opacity: 0;
  pointer-events: none;
}
body.loaded {
  opacity: 1;
  pointer-events: auto;
  transition: opacity 1s;
}

a {
  -moz-transition: 0.6s;
  -o-transition: 0.6s;
  -webkit-transition: 0.6s;
  -webkit-transition-delay: 0.6s;
  transition: 0.6s;
}
a:hover {
  text-decoration: none;
}
@media (hover: hover) and (min-width: 768px) {
  a:hover {
    opacity: 0.7;
  }
}

#Wrapper {
  display: flex;
  flex-direction: column;
  background: #fff;
  min-height: 100vh;
  height: 100%;
  margin: 0 auto;
  overflow: hidden;
  overflow: clip;
}
@media (max-width: 767px) {
  #Wrapper {
    border: none;
  }
}

#Footer {
  margin-top: auto;
  height: 100%;
}

img.object_fit {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  font-family: "object-fit: cover;";
}

.equalspace-1em {
  letter-spacing: 1em;
  text-indent: 1em;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.youtube-wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  height: 0;
}

.youtube-item {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/* base > heading
============================================================================================================ */
/* 基本設定 */
h1 {
  font-size: 34px;
  font-size: 2.125rem;
}
@media (max-width: 767px) {
  h1 {
    font-size: 22px;
    font-size: 1.375rem;
  }
}

h2 {
  font-size: 30px;
  font-size: 1.875rem;
}
@media (max-width: 767px) {
  h2 {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

h3 {
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: bold;
}

h4 {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: bold;
}

h5 {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
}

h6 {
  font-size: 18px;
  font-size: 1.125rem;
}

img.size-auto,
img.size-large,
img.size-full,
img.size-medium {
  max-width: 100%;
  height: auto;
}

.alignleft,
img.alignleft {
  display: inline;
  float: left;
  margin-right: 15px;
  margin-top: 4px;
}

.alignright,
img.alignright {
  display: inline;
  float: right;
  margin-left: 15px;
  margin-top: 4px;
}

.aligncenter,
img.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

img.alignleft,
img.alignright,
img.aligncenter {
  margin-bottom: 12px;
}

.wp-caption {
  background: #f1f1f1;
  border: none;
  border-radius: 0;
  color: #888;
  font-size: 12px;
  line-height: 18px;
  margin-bottom: 20px;
  padding: 4px;
  text-align: center;
}

.wp-caption img {
  margin: 5px;
}

.wp-caption p.wp-caption-text {
  margin: 0 0 4px;
}

.wp-smiley {
  margin: 0;
}

div.wpcf7-mail-sent-ok {
  border: 2px solid #398f14;
  padding: 50px 10px;
  text-align: center;
  font-weight: bold;
  margin: 50px 0;
}

.comments-area {
  margin: 0 auto 60px;
}

.comments-area > :last-child {
  margin-bottom: 0;
}

.comment-list + .comment-respond {
  border-top: 1px solid #eaeaea;
  border-top: 1px solid rgba(51, 51, 51, 0.1);
}

.comment-list + .comment-respond,
.comment-navigation + .comment-respond {
  padding-top: 1.6em;
}

.comments-title,
.comment-reply-title {
  border-top: 1px solid #d50000;
  border-bottom: 1px solid #d50000;
  padding: 12px 6px;
  font-weight: bold;
}

.comments-title {
  margin-bottom: 1.3333em;
}

.comment-list {
  list-style: none;
  margin: 0;
}

.comment-list article,
.comment-list .pingback,
.comment-list .trackback {
  border-top: 1px solid #eaeaea;
  border-top: 1px solid rgba(51, 51, 51, 0.1);
  padding: 1.6em 0;
}

.comment-list .children {
  list-style: none;
  margin: 0;
}

.comment-list .children > li {
  padding-left: 0.8em;
}

.comment-author {
  color: #707070;
  color: rgba(51, 51, 51, 0.7);
  margin-bottom: 0.4em;
}

.comment-author a:hover {
  border-bottom: 1px solid #707070;
  border-bottom: 1px solid rgba(51, 51, 51, 0.7);
}

.comment-author .avatar {
  float: left;
  height: 24px;
  margin-right: 0.8em;
  width: 24px;
}

.comment-metadata,
.pingback .edit-link {
  color: #707070;
  color: rgba(51, 51, 51, 0.7);
  font-size: 12px;
  line-height: 1.5;
}

.comment-metadata a,
.pingback .edit-link a {
  color: #707070;
  color: rgba(51, 51, 51, 0.7);
}

.comment-metadata a:hover,
.pingback .edit-link a:hover {
  border-bottom: 1px solid #333;
}

.comment-metadata a:hover,
.comment-metadata a:focus,
.pingback .edit-link a:hover,
.pingback .edit-link a:focus {
  color: #333;
}

.comment-metadata {
  margin-bottom: 1.6em;
}

.comment-metadata .edit-link {
  margin-left: 1em;
}

.pingback .edit-link {
  margin-left: 1em;
}

.pingback .edit-link:before {
  top: 5px;
}

.comment-content ul,
.comment-content ol {
  margin: 0 0 1.6em 1.3333em;
}

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

.comment-content > :last-child {
  margin-bottom: 0;
}

.comment-list .reply {
  font-size: 12px;
}

.comment-list .reply a {
  border: 1px solid #eaeaea;
  border: 1px solid rgba(51, 51, 51, 0.1);
  color: #707070;
  color: rgba(51, 51, 51, 0.7);
  display: inline-block;
  font-family: "Noto Sans", sans-serif;
  font-weight: 700;
  line-height: 1;
  margin-top: 2em;
  padding: 0.4167em 0.8333em;
  text-transform: uppercase;
}

.comment-list .reply a:hover,
.comment-list .reply a:focus {
  border-color: #333;
  color: #333;
  outline: 0;
}

.comment-form {
  padding-top: 1.6em;
}

.comment-form label {
  color: #707070;
  color: rgba(51, 51, 51, 0.7);
  font-family: "Noto Sans", sans-serif;
  font-size: 12px;
  font-weight: 700;
  display: block;
  letter-spacing: 0.04em;
  line-height: 1.5;
  text-transform: uppercase;
}

.comment-form #comment,
.comment-form input[type=text],
.comment-form input[type=email],
.comment-form input[type=url] {
  width: 100%;
  max-width: 100%;
  border-radius: 6px;
  padding: 3px;
  border: 1px solid #ccc;
}

.comment-form input[type=submit] {
  margin: 20px auto;
}

.comment-notes,
.comment-awaiting-moderation,
.logged-in-as,
.form-allowed-tags {
  color: #707070;
  color: rgba(51, 51, 51, 0.7);
  font-size: 12px;
  line-height: 1.5;
  margin-bottom: 2em;
}

.logged-in-as a:hover {
  border-bottom: 1px solid #333;
}

.no-comments {
  border-top: 1px solid #eaeaea;
  border-top: 1px solid rgba(51, 51, 51, 0.1);
  color: #707070;
  color: rgba(51, 51, 51, 0.7);
  font-weight: 700;
  padding-top: 1.6em;
}

.comment-navigation + .no-comments {
  border-top: 0;
}

.form-allowed-tags code {
  font-family: monospace;
}

.form-submit {
  margin-bottom: 0;
}

/*.required {
	color: #c0392b;
}*/
.comment-reply-title small {
  font-size: 100%;
}

.comment-reply-title small a {
  border: 0;
  float: right;
  height: 32px;
  overflow: hidden;
  width: 26px;
}

.comment-reply-title small a:before {
  content: "\f405";
  font-size: 32px;
  position: relative;
  top: -3px;
}

.comment-form #wp-comment-cookies-consent {
  margin: 0 10px 0 0;
}

.comment-form .comment-form-cookies-consent label {
  display: inline;
  font-size: 12px;
  font-weight: normal;
  letter-spacing: 0;
  text-transform: none;
}

.editor-content__blocks {
  display: flex;
  flex-direction: column;
  gap: 5vw;
}
@media (max-width: 1024px) {
  .editor-content__blocks {
    gap: 64px;
  }
}
@media (max-width: 767px) {
  .editor-content__blocks {
    gap: 10.9090909091vw;
  }
}
.editor-content__block {
  display: flex;
  flex-direction: column;
  gap: 2.5vw;
}
@media (max-width: 1024px) {
  .editor-content__block {
    gap: 32px;
  }
}
@media (max-width: 767px) {
  .editor-content__block {
    gap: 5.4545454545vw;
  }
}
.editor-content__block > * {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.editor-content h1 {
  font-size: 18px;
  font-size: 2.8125vw;
  margin-top: 3.125vw;
  margin-bottom: 3.125vw;
}
@media (max-width: 1024px) {
  .editor-content h1 {
    font-size: 36px;
    font-size: 2.25rem;
    margin-top: 40px;
    margin-bottom: 40px;
  }
}
@media (max-width: 767px) {
  .editor-content h1 {
    font-size: 25px;
    font-size: 11.3636363636vw;
    margin-top: 9.0909090909vw;
    margin-bottom: 9.0909090909vw;
  }
}
.editor-content h2 {
  position: relative;
  padding-left: 7.5vw;
  font-size: 16px;
  font-size: 2.5vw;
  font-weight: 900;
  line-height: 1.59375;
  letter-spacing: 0.1em;
  margin-top: 3.125vw;
  margin-bottom: 3.125vw;
}
@media (max-width: 1024px) {
  .editor-content h2 {
    padding-left: 96px;
    font-size: 32px;
    font-size: 2rem;
    margin-top: 40px;
    margin-bottom: 40px;
  }
}
@media (max-width: 767px) {
  .editor-content h2 {
    padding-left: 9.0909090909vw;
    font-size: 9px;
    font-size: 4.0909090909vw;
    font-weight: 900;
    line-height: 1.6111111111;
    margin-top: 9.0909090909vw;
    margin-bottom: 9.0909090909vw;
  }
}
.editor-content h2:before {
  content: "";
  position: absolute;
  left: -6.25vw;
  top: 0;
  width: 12.5vw;
  height: 1.85em;
  background: url("img/common/heading_brush.svg") no-repeat left center;
  background-size: contain;
}
@media (max-width: 1024px) {
  .editor-content h2:before {
    left: -80px;
    width: 160px;
  }
}
@media (max-width: 767px) {
  .editor-content h2:before {
    left: -7.2727272727vw;
    width: 14.5454545455vw;
  }
}
.editor-content h3 {
  border-left: 0.9375vw solid #1d4ed8;
  padding-left: 1.25vw;
  font-size: 12px;
  font-size: 1.875vw;
  font-weight: 700;
  line-height: 1.5833333333;
  letter-spacing: 0.1em;
  margin-top: 3.125vw;
  margin-bottom: 3.125vw;
}
@media (max-width: 1024px) {
  .editor-content h3 {
    border-left-width: 12px;
    padding-left: 16px;
    font-size: 24px;
    font-size: 1.5rem;
    margin-top: 40px;
    margin-bottom: 40px;
  }
}
@media (max-width: 767px) {
  .editor-content h3 {
    border-left-width: 12px;
    padding-left: 3.1818181818vw;
    font-size: 9px;
    font-size: 4.0909090909vw;
    line-height: 1.6111111111;
    margin-top: 9.0909090909vw;
    margin-bottom: 9.0909090909vw;
  }
}
.editor-content h4 {
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 700;
  line-height: 1.6111111111;
  letter-spacing: 0.1em;
  margin-top: 3.125vw;
  margin-bottom: 3.125vw;
}
@media (max-width: 1024px) {
  .editor-content h4 {
    font-size: 18px;
    font-size: 1.125rem;
    margin-top: 40px;
    margin-bottom: 40px;
  }
}
@media (max-width: 767px) {
  .editor-content h4 {
    font-size: 8px;
    font-size: 3.6363636364vw;
    line-height: 1.625;
    margin-top: 9.0909090909vw;
    margin-bottom: 9.0909090909vw;
  }
}
.editor-content h4:after {
  content: "";
  display: block;
  width: 9.375vw;
  height: 0.15625vw;
  margin-top: 0.625vw;
  background-color: #1d4ed8;
}
@media (max-width: 1024px) {
  .editor-content h4:after {
    width: 120px;
    height: 2px;
    margin-top: 8px;
  }
}
@media (max-width: 767px) {
  .editor-content h4:after {
    width: 27.2727272727vw;
    margin-top: 1.8181818182vw;
  }
}
.editor-content h5 {
  font-size: 11px;
  font-size: 1.71875vw;
  margin-top: 1.5625vw;
  margin-bottom: 1.5625vw;
}
@media (max-width: 1024px) {
  .editor-content h5 {
    font-size: 22px;
    font-size: 1.375rem;
    margin-top: 20px;
    margin-bottom: 20px;
  }
}
@media (max-width: 767px) {
  .editor-content h5 {
    font-size: 16px;
    font-size: 7.2727272727vw;
    margin-top: 4.5454545455vw;
    margin-bottom: 4.5454545455vw;
  }
}
.editor-content h6 {
  font-size: 10px;
  font-size: 1.5625vw;
  margin-top: 1.5625vw;
  margin-bottom: 1.5625vw;
}
@media (max-width: 1024px) {
  .editor-content h6 {
    font-size: 20px;
    font-size: 1.25rem;
    margin-top: 20px;
    margin-bottom: 20px;
  }
}
@media (max-width: 767px) {
  .editor-content h6 {
    font-size: 15px;
    font-size: 6.8181818182vw;
    margin-top: 4.5454545455vw;
    margin-bottom: 4.5454545455vw;
  }
}
.editor-content p {
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
}
@media (max-width: 1024px) {
  .editor-content p {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .editor-content p {
    font-size: 7px;
    font-size: 3.1818181818vw;
    line-height: 2;
    letter-spacing: 0.1em;
  }
}
.editor-content p strong {
  font-weight: normal;
}
.editor-content table {
  width: 100%;
  border: 1px solid #eee;
}
.editor-content table tr th,
.editor-content table tr td {
  padding: 0.5em;
  border: 1px solid #eee;
}
.editor-content table tr th {
  background: #ffd5d5;
  width: 24%;
  max-width: 240px;
  color: #d50000;
}
.editor-content ul, .editor-content ul li {
  list-style: disc;
  margin-left: 10px;
}
.editor-content ol, .editor-content ol li {
  list-style: decimal;
  margin-left: 10px;
}
.editor-content a {
  color: #1d4ed8;
  text-decoration: underline;
}
.editor-content blockquote {
  background: #eee;
  padding: 20px;
  border-radius: 0 30px 30px 0;
  border-left: 5px solid #020617;
}
@media (max-width: 767px) {
  .editor-content blockquote {
    padding: 4.5454545455vw;
    border-radius: 0 6.8181818182vw 6.8181818182vw 0;
  }
}
.editor-content blockquote cite {
  text-align: right;
  margin-top: 20px;
  display: block;
}
.editor-content pre {
  border: 1px solid #eee;
  margin-top: 20px;
  margin-bottom: 20px;
  padding: 0.5em;
}

/* layout
============================================================================ */
/* layout > common
============================================================================================================ */
.common-main {
  width: 100%;
  height: 100%;
  margin-top: 8.75vw;
  padding-bottom: 0;
}
@media (max-width: 1024px) {
  .common-main {
    margin-top: 112px;
  }
}
@media (max-width: 767px) {
  .common-main {
    margin-top: 18.1818181818vw;
  }
}
.common-main > *:not(.common-pageTtl) {
  position: relative;
  z-index: 1;
}

/* layout > header
============================================================================== */
.common-header {
  width: 100%;
  height: 8.75vw;
  background: transparent;
  color: #020617;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  transition: 0.5s;
}
@media (max-width: 1024px) {
  .common-header {
    height: 112px;
  }
}
@media (max-width: 767px) {
  .common-header {
    height: 18.1818181818vw;
  }
}
.common-header__inner {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  position: relative;
  max-width: 93.75vw;
  width: calc(100% - 6.25vw);
  height: 5vw;
  margin: 3.125vw auto 0;
  padding: 0 2.5vw;
  background-color: rgba(255, 255, 255, 0.4);
  backdrop-filter: blur(5px);
}
@media (max-width: 1024px) {
  .common-header__inner {
    max-width: 1200px;
    width: calc(100% - 80px);
    height: 64px;
    margin-top: 32px;
    padding: 0 32px;
  }
}
@media (max-width: 767px) {
  .common-header__inner {
    width: 100%;
    height: 100%;
    margin-top: 0;
    padding: 0 6.3636363636vw;
    background-color: transparent;
    backdrop-filter: none;
  }
}
.common-header__logo {
  position: relative;
  z-index: 2;
  width: 9.375vw;
  font-size: 0;
}
@media (max-width: 1024px) {
  .common-header__logo {
    width: 120px;
  }
}
@media (min-width: 768px) and (max-width: 900px) {
  .common-header__logo {
    width: 100px;
  }
}
@media (max-width: 767px) {
  .common-header__logo {
    display: none;
  }
}
.common-header__logo:before {
  content: "";
  position: absolute;
  top: -10px;
  bottom: -10px;
  left: -26px;
  right: -34px;
  pointer-events: none;
  background: url("img/common/mark_corner_tl.svg") left top/12px 12px no-repeat, url("img/common/mark_corner_bl.svg") left bottom/12px 12px no-repeat, url("img/common/mark_center_t.svg") right top/20px 12px no-repeat, url("img/common/mark_center_b.svg") right bottom/20px 12px no-repeat;
}
@media (max-width: 767px) {
  .common-header__logo:before {
    display: none;
  }
}
.common-header__logo a {
  display: block;
  width: 100%;
}
.common-header__logo img {
  width: 100%;
}
.common-header__toggle {
  display: none;
  position: relative;
  cursor: pointer;
}
@media (max-width: 767px) {
  .common-header__toggle {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    align-content: normal;
    flex-direction: column;
    gap: 0.4545454545vw;
    position: absolute;
    top: 9.0909090909vw;
    right: 7.2727272727vw;
    z-index: 3;
    width: 17.7272727273vw;
    height: 17.7272727273vw;
    transition: opacity 0.5s ease, visibility 0.5s ease;
  }
  .common-header__toggle.is-footer-hide:not(.open) {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }
  .common-header__toggle:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    pointer-events: none;
    background: linear-gradient(#1d4ed8, #1d4ed8) left top/2px 1.8181818182vw no-repeat, linear-gradient(#1d4ed8, #1d4ed8) left top/1.8181818182vw 2px no-repeat, linear-gradient(#1d4ed8, #1d4ed8) left bottom/2px 1.8181818182vw no-repeat, linear-gradient(#1d4ed8, #1d4ed8) left bottom/1.8181818182vw 2px no-repeat, linear-gradient(#1d4ed8, #1d4ed8) right top/2px 1.8181818182vw no-repeat, linear-gradient(#1d4ed8, #1d4ed8) right top/1.8181818182vw 2px no-repeat, linear-gradient(#1d4ed8, #1d4ed8) right bottom/2px 1.8181818182vw no-repeat, linear-gradient(#1d4ed8, #1d4ed8) right bottom/1.8181818182vw 2px no-repeat;
  }
  .common-header__toggle.open:before {
    background: linear-gradient(#fff, #fff) left top/2px 1.8181818182vw no-repeat, linear-gradient(#fff, #fff) left top/1.8181818182vw 2px no-repeat, linear-gradient(#fff, #fff) left bottom/2px 1.8181818182vw no-repeat, linear-gradient(#fff, #fff) left bottom/1.8181818182vw 2px no-repeat, linear-gradient(#fff, #fff) right top/2px 1.8181818182vw no-repeat, linear-gradient(#fff, #fff) right top/1.8181818182vw 2px no-repeat, linear-gradient(#fff, #fff) right bottom/2px 1.8181818182vw no-repeat, linear-gradient(#fff, #fff) right bottom/1.8181818182vw 2px no-repeat;
  }
  .common-header__toggle.open .common-header__toggleIcon--menu {
    display: none;
  }
  .common-header__toggle.open .common-header__toggleIcon--close {
    display: block;
  }
  .common-header__toggle.open .common-header__toggleTxt--menu {
    display: none;
  }
  .common-header__toggle.open .common-header__toggleTxt--close {
    display: block;
    color: #fff;
  }
}
.common-header__toggleIcon {
  display: block;
  width: 7.2727272727vw;
  height: 7.2727272727vw;
}
.common-header__toggleIcon--close {
  display: none;
}
.common-header__toggleTxt {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  color: #000;
  font-size: 8px;
  font-size: 3.6363636364vw;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.05em;
}
.common-header__toggleTxt--close {
  display: none;
}
@media (max-width: 1024px) {
  .common-header__nav {
    display: flex;
    align-items: center;
    flex: 1 1 auto;
    min-width: 0;
  }
}
@media (max-width: 767px) {
  .common-header__nav {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    padding: 0;
    overflow-y: auto;
    background: rgba(29, 78, 216, 0.8);
    backdrop-filter: blur(16px);
    opacity: 0;
    visibility: hidden;
    transform: translateX(100%);
    transition: opacity 0.4s ease, transform 0.4s ease, visibility 0s linear 0.4s;
    z-index: 2;
  }
  .common-header__nav.open {
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: opacity 0.4s ease, transform 0s, visibility 0s;
  }
}
.common-header__menu {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  position: absolute;
  top: 50%;
  left: calc(50% + 1.796875vw);
  transform: translate(-50%, -50%);
  gap: 3.125vw;
}
@media (max-width: 1024px) {
  .common-header__menu {
    position: static;
    transform: none;
    margin: 0 auto;
    padding: 0 16px;
    gap: 24px;
  }
}
@media (min-width: 768px) and (max-width: 900px) {
  .common-header__menu {
    gap: 14px;
    padding: 0 10px;
  }
}
@media (max-width: 767px) {
  .common-header__menu {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    align-content: normal;
    flex-direction: column;
    position: static;
    top: auto;
    left: auto;
    transform: none;
    gap: 0;
    height: auto;
    padding-top: 44.0909090909vw;
  }
}
.common-header__menu li {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1;
  text-transform: uppercase;
}
@media (max-width: 1024px) {
  .common-header__menu li {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media (min-width: 768px) and (max-width: 900px) {
  .common-header__menu li {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) {
  .common-header__menu li {
    font-size: 16px;
    font-size: 7.2727272727vw;
    font-style: normal;
    text-align: center;
    color: #fff;
    margin-top: 5.4545454545vw;
  }
}
@media (max-width: 767px) {
  .common-header__menu li:first-of-type {
    margin-top: 0;
  }
}
.common-header__menu li a {
  display: inline-block;
  position: relative;
}
.common-header__menu li a::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -5px;
  width: 100%;
  height: 2px;
  background-color: #1d4ed8;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.3s ease;
  pointer-events: none;
}
@media (hover: hover) and (min-width: 768px) {
  .common-header__menu li a:hover::before {
    transform: scaleX(1);
  }
}
.common-header__menu li a:hover {
  opacity: 1;
}
.common-header__menuContact {
  display: none;
}
@media (max-width: 767px) {
  .common-header__menuContact {
    display: block;
  }
}
.common-header__menuContact a {
  color: #1d4ed8;
}
@media (max-width: 767px) {
  .common-header__menuContact a {
    color: #fff;
  }
}
@media (max-width: 767px) {
  .common-header__navFoot {
    flex-direction: column;
    align-items: center;
    gap: 9.0909090909vw;
    margin-top: 18.1818181818vw;
  }
}
@media (max-width: 767px) {
  .common-header__navSns {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    align-content: normal;
    flex-direction: row;
    gap: 3.1818181818vw;
  }
  .common-header__navSns .common-footer__snsIcon {
    width: 6.3636363636vw;
    height: 6.3636363636vw;
  }
}
.common-header__contact {
  position: absolute;
  top: 50%;
  right: 2.5vw;
  transform: translateY(-50%);
  z-index: 2;
}
@media (max-width: 1024px) {
  .common-header__contact {
    position: relative;
    top: auto;
    transform: none;
    margin-left: 8px;
    flex: 0 0 auto;
  }
}
@media (min-width: 768px) and (max-width: 900px) {
  .common-header__contact {
    margin-left: 30px;
  }
}
.common-header__contact:before {
  content: "";
  position: absolute;
  top: -10px;
  bottom: -9px;
  left: -34px;
  right: -26px;
  pointer-events: none;
  background: url("img/common/mark_center_t.svg") left top/20px 12px no-repeat, url("img/common/mark_center_b.svg") left bottom/20px 12px no-repeat, url("img/common/mark_corner_tr.svg") right top/12px 12px no-repeat, url("img/common/mark_corner_br.svg") right bottom/12px 12px no-repeat;
}
.common-header__contact a {
  display: inline-block;
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1;
  text-transform: uppercase;
  color: #1d4ed8;
  position: relative;
}
.common-header__contact a::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -5px;
  width: 100%;
  height: 2px;
  background-color: #1d4ed8;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.3s ease;
  pointer-events: none;
}
@media (hover: hover) and (min-width: 768px) {
  .common-header__contact a:hover::before {
    transform: scaleX(1);
  }
}
.common-header__contact a:hover {
  opacity: 1;
}
@media (max-width: 1024px) {
  .common-header__contact a {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media (min-width: 768px) and (max-width: 900px) {
  .common-header__contact a {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) {
  .common-header__contact {
    display: none;
  }
}

@media (max-width: 767px) {
  body.is-menuOpen {
    overflow: hidden;
  }
}

[id] {
  scroll-margin-top: 8.75vw;
}
@media (max-width: 1024px) {
  [id] {
    scroll-margin-top: 112px;
  }
}
@media (max-width: 767px) {
  [id] {
    scroll-margin-top: 18.1818181818vw;
  }
}

/*  layout > footer
============================================================================================================ */
.common-footer {
  position: relative;
  background-color: #fff;
}
.common-footer__marquee {
  overflow: hidden;
  padding: 12.5vw 0 0;
  margin-bottom: -1.5625vw;
}
@media (max-width: 1024px) {
  .common-footer__marquee {
    padding: 160px 0 0;
    margin-bottom: -20px;
  }
}
@media (max-width: 767px) {
  .common-footer__marquee {
    padding: 27.2727272727vw 0 0;
  }
}
.common-footer__marqueeRow {
  display: flex;
  width: -moz-max-content;
  width: max-content;
  white-space: nowrap;
  animation: footerMarquee 24s linear infinite;
}
.common-footer__marqueeTxt {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-style: italic;
  color: #1d4ed8;
  font-size: 60px;
  font-size: 9.375vw;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
  padding-right: 3.125vw;
}
@media (max-width: 1024px) {
  .common-footer__marqueeTxt {
    font-size: 120px;
    font-size: 7.5rem;
    padding-right: 40px;
  }
}
@media (max-width: 767px) {
  .common-footer__marqueeTxt {
    font-size: 60px;
    font-size: 27.2727272727vw;
    padding-right: 9.0909090909vw;
  }
}
.common-footer__body {
  position: relative;
  overflow: hidden;
  background-color: #1d4ed8;
  color: #fff;
  padding: 6.25vw 0 1.25vw;
}
@media (max-width: 1024px) {
  .common-footer__body {
    padding: 80px 0 16px;
  }
}
@media (max-width: 767px) {
  .common-footer__body {
    padding: 14.5454545455vw 0 3.6363636364vw;
  }
}
.common-footer__deco {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
  pointer-events: none;
  background-image: -webkit-image-set(url("img/common/footer/footer_deco_pc.webp") type("image/webp"), url("img/common/footer/footer_deco_pc.png") type("image/png"));
  background-image: image-set(url("img/common/footer/footer_deco_pc.webp") type("image/webp"), url("img/common/footer/footer_deco_pc.png") type("image/png"));
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media (max-width: 767px) {
  .common-footer__deco {
    background-image: -webkit-image-set(url("img/common/footer/footer_deco_sp.webp") type("image/webp"), url("img/common/footer/footer_deco_sp.png") type("image/png"));
    background-image: image-set(url("img/common/footer/footer_deco_sp.webp") type("image/webp"), url("img/common/footer/footer_deco_sp.png") type("image/png"));
  }
}
.common-footer__inner {
  position: relative;
  z-index: 1;
  max-width: 100vw;
  width: 100%;
  margin: 0 auto;
  padding: 0 3.125vw;
}
@media (max-width: 1024px) {
  .common-footer__inner {
    max-width: 1280px;
    padding: 0 40px;
  }
}
@media (max-width: 767px) {
  .common-footer__inner {
    padding: 0 4.5454545455vw;
  }
}
.common-footer__cols {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
  align-content: normal;
  flex-direction: row;
  gap: 3.125vw;
  align-items: end;
}
@media (max-width: 1024px) {
  .common-footer__cols {
    gap: 40px;
  }
}
@media (max-width: 767px) {
  .common-footer__cols {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0;
  }
}
.common-footer__logo {
  width: 21.484375vw;
  margin-bottom: 3.90625vw;
}
@media (max-width: 1024px) {
  .common-footer__logo {
    width: 275px;
    margin-bottom: 50px;
  }
}
@media (max-width: 767px) {
  .common-footer__logo {
    width: 36.3636363636vw;
    order: 1;
    align-self: flex-start;
    margin-bottom: 9.0909090909vw;
  }
}
.common-footer__logo img {
  display: block;
  width: 100%;
}
.common-footer__left {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-start;
  align-content: normal;
  flex-direction: column;
}
@media (max-width: 767px) {
  .common-footer__left {
    display: contents;
  }
}
@media (max-width: 767px) {
  .common-footer__nav {
    order: 2;
    align-self: flex-start;
    margin-bottom: 9.5454545455vw;
  }
}
.common-footer__navMenu li {
  margin-bottom: 2.5vw;
}
@media (max-width: 1024px) {
  .common-footer__navMenu li {
    margin-bottom: 32px;
  }
}
@media (max-width: 767px) {
  .common-footer__navMenu li {
    margin-bottom: 5.4545454545vw;
  }
}
.common-footer__navMenu li:last-child {
  margin-bottom: 0;
}
.common-footer__navMenu li a {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: baseline;
  align-content: normal;
  flex-direction: row;
  gap: 1.25vw;
}
@media (max-width: 1024px) {
  .common-footer__navMenu li a {
    gap: 16px;
  }
}
@media (max-width: 767px) {
  .common-footer__navMenu li a {
    gap: 1.8181818182vw;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .common-footer__navMenu li a:hover {
    opacity: 1;
  }
  .common-footer__navMenu li a:hover .common-footer__navBar {
    width: 1.875vw;
  }
}
@media (hover: hover) and (min-width: 768px) and (max-width: 1024px) {
  .common-footer__navMenu li a:hover .common-footer__navBar {
    width: 24px;
  }
}
@media (hover: hover) and (min-width: 768px) and (max-width: 767px) {
  .common-footer__navMenu li a:hover .common-footer__navBar {
    width: 3.6363636364vw;
  }
}
.common-footer__navEn {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-size: 3.125vw;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media (max-width: 1024px) {
  .common-footer__navEn {
    font-size: 40px;
    font-size: 2.5rem;
  }
}
@media (max-width: 767px) {
  .common-footer__navEn {
    font-size: 12px;
    font-size: 5.4545454545vw;
    letter-spacing: 0.05em;
  }
}
.common-footer__navJa {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media (max-width: 1024px) {
  .common-footer__navJa {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media (max-width: 767px) {
  .common-footer__navJa {
    font-size: 7px;
    font-size: 3.1818181818vw;
  }
}
.common-footer__navBar {
  display: inline-block;
  vertical-align: middle;
  width: 0;
  height: 0.15625vw;
  margin-right: 1.25vw;
  background-color: #fff;
  transition: width 0.3s;
}
@media (max-width: 1024px) {
  .common-footer__navBar {
    height: 2px;
    margin-right: 16px;
  }
}
@media (max-width: 767px) {
  .common-footer__navBar {
    width: 3.6363636364vw;
    height: 0.4545454545vw;
    margin-right: 1.8181818182vw;
    vertical-align: 0.35em;
  }
}
.common-footer__guideline {
  display: inline-block;
  align-self: flex-start;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  margin-top: 3.125vw;
  position: relative;
}
.common-footer__guideline::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 100%;
  height: 1px;
  background-color: currentColor;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.3s ease;
  pointer-events: none;
}
@media (hover: hover) and (min-width: 768px) {
  .common-footer__guideline:hover::before {
    transform: scaleX(1);
  }
}
@media (max-width: 1024px) {
  .common-footer__guideline {
    font-size: 16px;
    font-size: 1rem;
    margin-top: 40px;
  }
}
@media (max-width: 767px) {
  .common-footer__guideline {
    font-size: 7px;
    font-size: 3.1818181818vw;
    order: 6;
    align-self: center;
    margin-top: 9.0909090909vw;
    text-align: center;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .common-footer__guideline:hover {
    opacity: 1;
  }
}
.common-footer__right {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-end;
  align-content: normal;
  flex-direction: column;
}
@media (max-width: 767px) {
  .common-footer__right {
    display: contents;
  }
}
.common-footer__sns {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  gap: 1.875vw;
  margin-bottom: 2.5vw;
}
@media (max-width: 1024px) {
  .common-footer__sns {
    gap: 24px;
    margin-bottom: 32px;
  }
}
@media (max-width: 767px) {
  .common-footer__sns {
    order: 3;
    align-self: flex-start;
    justify-content: flex-start;
    gap: 3.1818181818vw;
    margin-bottom: 0;
  }
}
.common-footer__sns li a {
  display: block;
}
@media (hover: hover) and (min-width: 768px) {
  .common-footer__sns li a:hover {
    opacity: 0.7;
  }
}
.common-footer__snsIcon {
  display: block;
  width: 2.34375vw;
  height: 2.34375vw;
  background-color: #fff;
  transition: background-color 0.3s;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}
@media (max-width: 1024px) {
  .common-footer__snsIcon {
    width: 30px;
    height: 30px;
  }
}
@media (max-width: 767px) {
  .common-footer__snsIcon {
    width: 6.3636363636vw;
    height: 6.3636363636vw;
  }
}
.common-footer__snsIcon--facebook {
  -webkit-mask-image: url("img/common/footer/sns_facebook.svg");
  mask-image: url("img/common/footer/sns_facebook.svg");
}
.common-footer__snsIcon--x {
  -webkit-mask-image: url("img/common/footer/sns_x.svg");
  mask-image: url("img/common/footer/sns_x.svg");
}
.common-footer__snsIcon--instagram {
  -webkit-mask-image: url("img/common/footer/sns_instagram.svg");
  mask-image: url("img/common/footer/sns_instagram.svg");
}
.common-footer__btns {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: stretch;
  align-content: normal;
  flex-direction: column;
  gap: 1.875vw;
}
@media (max-width: 1024px) {
  .common-footer__btns {
    gap: 24px;
  }
}
@media (max-width: 767px) {
  .common-footer__btns {
    order: 4;
    align-items: center;
    gap: 5.4545454545vw;
    margin-top: 29.0909090909vw;
  }
}
.common-footer__address {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-end;
  align-content: normal;
  flex-direction: column;
  gap: 1.25vw;
  margin-top: 3.125vw;
  text-align: right;
}
@media (max-width: 1024px) {
  .common-footer__address {
    gap: 16px;
    margin-top: 40px;
  }
}
@media (max-width: 767px) {
  .common-footer__address {
    order: 5;
    align-items: center;
    gap: 3.6363636364vw;
    margin-top: 9.0909090909vw;
    text-align: center;
  }
}
.common-footer__addressTxt {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media (max-width: 1024px) {
  .common-footer__addressTxt {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .common-footer__addressTxt {
    font-size: 8px;
    font-size: 3.6363636364vw;
  }
}
.common-footer__map {
  display: inline-flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  gap: 0.625vw;
}
@media (max-width: 1024px) {
  .common-footer__map {
    gap: 8px;
  }
}
@media (max-width: 767px) {
  .common-footer__map {
    gap: 1.8181818182vw;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .common-footer__map:hover {
    opacity: 1;
  }
}
.common-footer__mapTxt {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  position: relative;
}
.common-footer__mapTxt::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 100%;
  height: 1px;
  background-color: currentColor;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.3s ease;
  pointer-events: none;
}
@media (hover: hover) and (min-width: 768px) {
  .common-footer__mapTxt:hover::before {
    transform: scaleX(1);
  }
}
@media (max-width: 1024px) {
  .common-footer__mapTxt {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .common-footer__mapTxt {
    font-size: 8px;
    font-size: 3.6363636364vw;
  }
}
.common-footer__mapIcon {
  display: block;
  width: 1.25vw;
  height: 1.25vw;
}
@media (max-width: 1024px) {
  .common-footer__mapIcon {
    width: 16px;
    height: 16px;
  }
}
@media (max-width: 767px) {
  .common-footer__mapIcon {
    width: 3.6363636364vw;
    height: 3.6363636364vw;
  }
}
.common-footer__sub {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  gap: 0.46875vw;
  margin-top: 6.25vw;
}
@media (max-width: 1024px) {
  .common-footer__sub {
    gap: 6px;
    margin-top: 80px;
  }
}
@media (max-width: 767px) {
  .common-footer__sub {
    order: 7;
    justify-content: center;
    gap: 1.8181818182vw;
    margin-top: 5.4545454545vw;
  }
}
.common-footer__sub a {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  position: relative;
}
.common-footer__sub a::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 100%;
  height: 1px;
  background-color: currentColor;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.3s ease;
  pointer-events: none;
}
@media (hover: hover) and (min-width: 768px) {
  .common-footer__sub a:hover::before {
    transform: scaleX(1);
  }
}
@media (max-width: 1024px) {
  .common-footer__sub a {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media (max-width: 767px) {
  .common-footer__sub a {
    font-size: 9px;
    font-size: 4.0909090909vw;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .common-footer__sub a:hover {
    opacity: 1;
  }
}
.common-footer__subSep {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-size: 9px;
  font-size: 1.40625vw;
  line-height: 1;
}
@media (max-width: 1024px) {
  .common-footer__subSep {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media (max-width: 767px) {
  .common-footer__subSep {
    font-size: 9px;
    font-size: 4.0909090909vw;
  }
}
.common-footer__copyWrap {
  background-color: #fff;
  padding: 1.25vw 0;
}
@media (max-width: 1024px) {
  .common-footer__copyWrap {
    padding: 16px 0;
  }
}
@media (max-width: 767px) {
  .common-footer__copyWrap {
    padding: 3.6363636364vw 0;
  }
}
.common-footer__copyright {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  display: block;
  text-align: center;
  color: #020617;
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media (max-width: 1024px) {
  .common-footer__copyright {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media (max-width: 767px) {
  .common-footer__copyright {
    font-size: 9px;
    font-size: 4.0909090909vw;
  }
}

@keyframes footerMarquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
/* layout > front page （TOP,HOME）
============================================================================================================ */
.top-kv {
  position: relative;
  height: 61.015625vw;
  margin-top: -8.75vw;
}
@media (max-width: 1024px) {
  .top-kv {
    margin-top: -112px;
  }
}
@media (max-width: 767px) {
  .top-kv {
    --kv-center: calc((100svh - 184.7727272727vw) / 2);
    height: 100vh;
    height: 100svh;
    margin-top: -18.1818181818vw;
  }
}
.top-kv__clip {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.top-kv__zoom {
  position: absolute;
  inset: 0;
  will-change: transform;
}
.top-kv__bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: no-repeat top left;
  background-size: 112.34375vw auto;
  background-image: -webkit-image-set(url("img/top/bg_fv.webp") type("image/webp"), url("img/top/bg_fv.png") type("image/png"));
  background-image: image-set(url("img/top/bg_fv.webp") type("image/webp"), url("img/top/bg_fv.png") type("image/png"));
  -webkit-mask: url("img/top/seq_fv_reveal.webp?v=260806b") no-repeat 0 0/100% 2385.4%;
  mask: url("img/top/seq_fv_reveal.webp?v=260806b") no-repeat 0 0/100% 2385.4%;
}
@media (max-width: 767px) {
  .top-kv__bg {
    -webkit-mask: none;
    mask: none;
    clip-path: polygon(-200% 0%, -60% 0%, 0% 100%, -200% 100%);
    top: calc(8.1818181818vw + var(--kv-center));
    background-image: -webkit-image-set(url("img/top/bg_fv_sp.webp") type("image/webp"), url("img/top/bg_fv_sp.png") type("image/png"));
    background-image: image-set(url("img/top/bg_fv_sp.webp") type("image/webp"), url("img/top/bg_fv_sp.png") type("image/png"));
    background-size: 100% auto;
  }
}
.top-kv__copy, .top-kv__copyWhite {
  position: absolute;
  left: 13.359375vw;
  top: 24.921875vw;
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-style: italic;
  font-size: 53.5px;
  font-size: 8.359375vw;
  font-weight: 600;
  line-height: 1.6;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .top-kv__copy, .top-kv__copyWhite {
    left: 7.2727272727vw;
    top: calc(85.9090909091vw + var(--kv-center));
    font-size: 21.5px;
    font-size: 9.7727272727vw;
    line-height: 1.2093023256;
  }
}
.top-kv__copy {
  color: #1d4ed8;
  text-shadow: 0 0 1.5625vw rgba(255, 255, 255, 0.75);
  opacity: 0;
}
@media (max-width: 767px) {
  .top-kv__copy {
    text-shadow: 0 0 2.7272727273vw rgba(255, 255, 255, 0.75);
  }
}
.top-kv__knockout {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  -webkit-mask-image: url("img/top/bg_fv.png");
  -webkit-mask-image: -webkit-image-set(url("img/top/bg_fv.webp") type("image/webp"), url("img/top/bg_fv.png") type("image/png"));
  mask-image: image-set(url("img/top/bg_fv.webp") type("image/webp"), url("img/top/bg_fv.png") type("image/png"));
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: top left;
  mask-position: top left;
  -webkit-mask-size: 112.34375vw auto;
  mask-size: 112.34375vw auto;
}
@media (max-width: 767px) {
  .top-kv__knockout {
    clip-path: polygon(-200% 0%, -60% 0%, 0% 100%, -200% 100%);
    top: calc(8.1818181818vw + var(--kv-center));
    -webkit-mask-image: url("img/top/bg_fv_sp.png");
    -webkit-mask-image: -webkit-image-set(url("img/top/bg_fv_sp.webp") type("image/webp"), url("img/top/bg_fv_sp.png") type("image/png"));
    mask-image: image-set(url("img/top/bg_fv_sp.webp") type("image/webp"), url("img/top/bg_fv_sp.png") type("image/png"));
    -webkit-mask-size: 100% auto;
    mask-size: 100% auto;
  }
}
.top-kv__reveal {
  position: absolute;
  inset: 0;
  pointer-events: none;
  -webkit-mask: url("img/top/seq_fv_reveal.webp?v=260806b") no-repeat 0 0/100% 2385.4%;
  mask: url("img/top/seq_fv_reveal.webp?v=260806b") no-repeat 0 0/100% 2385.4%;
}
@media (max-width: 767px) {
  .top-kv__reveal {
    -webkit-mask: none;
    mask: none;
  }
}
.top-kv__copyWhite {
  color: #fff;
}
@media (max-width: 767px) {
  .top-kv__copyWhite {
    top: 77.7272727273vw;
  }
}
.top-kv__line {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 46.71875vw;
  width: 2px;
  height: 12.5vw;
  background-color: #fff;
  overflow: hidden;
}
.top-kv__line:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #1d4ed8;
  animation: fvLineFlow 2.2s cubic-bezier(0.65, 0, 0.35, 1) infinite;
}
@media (max-width: 767px) {
  .top-kv__line {
    top: auto;
    bottom: -27.5vw;
    height: 45.4545454545vw;
  }
}

body.loaded .top-kv .top-kv__copy {
  animation: fvCopyFade 0.9s ease 0.5s forwards;
}
body.loaded .top-kv .top-kv__bg,
body.loaded .top-kv .top-kv__reveal {
  animation: fvSeqPlay 0.77s steps(23, jump-none) 1.2s forwards;
}
@media (max-width: 767px) {
  body.loaded .top-kv .top-kv__bg,
  body.loaded .top-kv .top-kv__reveal {
    animation: none;
  }
}
@media (max-width: 767px) {
  body.loaded .top-kv .top-kv__bg,
  body.loaded .top-kv .top-kv__knockout {
    animation: fvSplashIn 1.1s cubic-bezier(0.65, 0, 0.35, 1) 1.6s forwards;
  }
}

.top-mission__headingEn, .top-about__headingEn, .top-news__headingEn, .top-numbers__headingEn {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-style: italic;
  color: #1d4ed8;
  font-size: 32px;
  font-size: 5vw;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media (max-width: 1024px) {
  .top-mission__headingEn, .top-about__headingEn, .top-news__headingEn, .top-numbers__headingEn {
    font-size: 64px;
    font-size: 4rem;
  }
}
@media (max-width: 767px) {
  .top-mission__headingEn, .top-about__headingEn, .top-news__headingEn, .top-numbers__headingEn {
    font-size: 20px;
    font-size: 9.0909090909vw;
  }
}
.top-mission__headingJa, .top-about__headingJa, .top-news__headingJa, .top-numbers__headingJa {
  color: #1d4ed8;
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1em;
  margin-top: 1.25vw;
}
@media (max-width: 1024px) {
  .top-mission__headingJa, .top-about__headingJa, .top-news__headingJa, .top-numbers__headingJa {
    font-size: 16px;
    font-size: 1rem;
    margin-top: 16px;
  }
}
@media (max-width: 767px) {
  .top-mission__headingJa, .top-about__headingJa, .top-news__headingJa, .top-numbers__headingJa {
    font-size: 8px;
    font-size: 3.6363636364vw;
    letter-spacing: 0.05em;
    margin-top: 3.6363636364vw;
  }
}

.top-mission__btn, .top-about__btn, .top-services__btn, .top-news__btn {
  line-height: 0;
}
.top-mission__btn > a, .top-about__btn > a, .top-services__btn > a, .top-news__btn > a {
  vertical-align: top;
}

.top-mission {
  position: relative;
  margin-top: 11.796875vw;
}
@media (max-width: 1024px) {
  .top-mission {
    margin-top: 151px;
  }
}
@media (max-width: 767px) {
  .top-mission {
    margin-top: 16.5909090909vw;
  }
}
.top-mission__deco {
  position: absolute;
  top: -4.609375vw;
  left: 27.890625vw;
  width: 72.109375vw;
  aspect-ratio: 923/995;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/top/deco_mission.webp") type("image/webp"), url("img/top/deco_mission.png") type("image/png"));
  background-image: image-set(url("img/top/deco_mission.webp") type("image/webp"), url("img/top/deco_mission.png") type("image/png"));
}
@media (max-width: 1024px) {
  .top-mission__deco {
    top: -59px;
    left: 357px;
    width: 923px;
  }
}
@media (max-width: 767px) {
  .top-mission__deco {
    top: 14.3181818182vw;
    left: 0;
    width: 100%;
    aspect-ratio: 440/657;
    background-image: -webkit-image-set(url("img/top/deco_mission_sp.webp") type("image/webp"), url("img/top/deco_mission_sp.png") type("image/png"));
    background-image: image-set(url("img/top/deco_mission_sp.webp") type("image/webp"), url("img/top/deco_mission_sp.png") type("image/png"));
  }
}
.top-mission__deco.js-seq-reveal {
  -webkit-mask: url("img/top/seq_mission_deco.webp?v=260805d") no-repeat 0 0/100% 1300%;
  mask: url("img/top/seq_mission_deco.webp?v=260805d") no-repeat 0 0/100% 1300%;
}
.top-mission__deco.js-seq-reveal.is-inview {
  animation: missionDecoSeq 0.43s steps(13, jump-none) 0.2s both;
}
@media (max-width: 767px) {
  .top-mission__deco.js-seq-reveal {
    -webkit-mask: linear-gradient(45deg, #000 45%, transparent 55%) no-repeat 100% 0%/300% 300%;
    mask: linear-gradient(45deg, #000 45%, transparent 55%) no-repeat 100% 0%/300% 300%;
  }
  .top-mission__deco.js-seq-reveal.is-inview {
    animation: softSweepUpRight 1.2s cubic-bezier(0.65, 0, 0.35, 1) forwards;
  }
}
.top-mission__inner {
  position: relative;
  z-index: 1;
  max-width: 93.75vw;
  width: 100%;
  margin: 0 auto;
  padding: 0 3.125vw;
}
@media (max-width: 1024px) {
  .top-mission__inner {
    max-width: 1200px;
    padding: 0 40px;
  }
}
@media (max-width: 767px) {
  .top-mission__inner {
    max-width: none;
    padding: 0 7.2727272727vw;
  }
}
.top-mission__copy {
  margin-top: 4.0625vw;
  width: 61.015625vw;
}
@media (max-width: 1024px) {
  .top-mission__copy {
    margin-top: 52px;
    width: 781px;
  }
}
@media (max-width: 767px) {
  .top-mission__copy {
    margin-top: 12.7272727273vw;
    width: 85.4545454545vw;
  }
}
.top-mission__copy img {
  display: block;
  width: 100%;
  height: auto;
}
.top-mission__txt {
  width: 42.1875vw;
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
  margin-top: 4.0625vw;
}
@media (max-width: 1024px) {
  .top-mission__txt {
    width: 540px;
    font-size: 16px;
    font-size: 1rem;
    margin-top: 52px;
  }
}
@media (max-width: 767px) {
  .top-mission__txt {
    width: 100%;
    font-size: 7px;
    font-size: 3.1818181818vw;
    margin-top: 3.6363636364vw;
  }
}
.top-mission__txt + .top-mission__txt {
  margin-top: 1.25vw;
}
@media (max-width: 1024px) {
  .top-mission__txt + .top-mission__txt {
    margin-top: 16px;
  }
}
@media (max-width: 767px) {
  .top-mission__txt + .top-mission__txt {
    margin-top: 1.8181818182vw;
  }
}
.top-mission__btn {
  margin-top: 3.125vw;
}
@media (max-width: 1024px) {
  .top-mission__btn {
    margin-top: 40px;
  }
}
@media (max-width: 767px) {
  .top-mission__btn {
    margin-top: 9.0909090909vw;
  }
}

.top-about {
  position: relative;
  height: 62.5vw;
  margin-top: 21.875vw;
  background-color: #1d4ed8;
  color: #fff;
  overflow: hidden;
}
@media (max-width: 767px) {
  .top-about {
    height: 217.5vw;
    margin-top: 45.4545454545vw;
  }
}
.top-about__artTop, .top-about__artBtm {
  visibility: hidden;
  -webkit-mask-size: 300% 300%;
  mask-size: 300% 300%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}
.top-about__artTop {
  -webkit-mask-image: linear-gradient(90deg, #000 45%, transparent 55%);
  mask-image: linear-gradient(90deg, #000 45%, transparent 55%);
  -webkit-mask-position: 100% 50%;
  mask-position: 100% 50%;
}
.top-about__artBtm {
  -webkit-mask-image: linear-gradient(270deg, #000 45%, transparent 55%);
  mask-image: linear-gradient(270deg, #000 45%, transparent 55%);
  -webkit-mask-position: 0% 50%;
  mask-position: 0% 50%;
}
.top-about.is-inview .top-about__artTop {
  visibility: visible;
  animation: softSweepLTR 0.45s cubic-bezier(0.65, 0, 0.35, 1) 1s forwards;
}
.top-about.is-inview .top-about__artBtm {
  visibility: visible;
  animation: softSweepRTL 0.3s cubic-bezier(0.65, 0, 0.35, 1) 1.5s forwards;
}
@media (prefers-reduced-motion: reduce) {
  .top-about__artTop, .top-about__artBtm {
    visibility: visible !important;
    -webkit-mask: none !important;
    mask: none !important;
    animation: none !important;
  }
}
.top-about .top-about__inner {
  opacity: 0;
}
.top-about.is-inview .top-about__inner {
  animation: fadeRevealIn 0.7s ease-out 0.5s forwards;
}
@media (prefers-reduced-motion: reduce) {
  .top-about .top-about__inner {
    opacity: 1 !important;
    animation: none !important;
  }
}
.top-about__artTop {
  position: absolute;
  top: 0;
  left: 0;
  width: 37.8125vw;
  aspect-ratio: 484/580;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/top/deco_tate_brush_01.webp") type("image/webp"), url("img/top/deco_tate_brush_01.png") type("image/png"));
  background-image: image-set(url("img/top/deco_tate_brush_01.webp") type("image/webp"), url("img/top/deco_tate_brush_01.png") type("image/png"));
}
@media (max-width: 767px) {
  .top-about__artTop {
    width: 100%;
    aspect-ratio: 440/357;
    background-image: -webkit-image-set(url("img/top/deco_tate_brush_01_sp.webp") type("image/webp"), url("img/top/deco_tate_brush_01_sp.png") type("image/png"));
    background-image: image-set(url("img/top/deco_tate_brush_01_sp.webp") type("image/webp"), url("img/top/deco_tate_brush_01_sp.png") type("image/png"));
  }
}
.top-about__artBtm {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  aspect-ratio: 1280/295;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/top/deco_tate_brush_02.webp") type("image/webp"), url("img/top/deco_tate_brush_02.png") type("image/png"));
  background-image: image-set(url("img/top/deco_tate_brush_02.webp") type("image/webp"), url("img/top/deco_tate_brush_02.png") type("image/png"));
}
@media (max-width: 767px) {
  .top-about__artBtm {
    aspect-ratio: 440/295;
    background-image: -webkit-image-set(url("img/top/deco_tate_brush_02_sp.webp") type("image/webp"), url("img/top/deco_tate_brush_02_sp.png") type("image/png"));
    background-image: image-set(url("img/top/deco_tate_brush_02_sp.webp") type("image/webp"), url("img/top/deco_tate_brush_02_sp.png") type("image/png"));
  }
}
.top-about__inner {
  position: relative;
  max-width: 93.75vw;
  width: 100%;
  height: 100%;
  margin: 0 auto;
  padding: 0 3.125vw;
}
@media (max-width: 767px) {
  .top-about__inner {
    max-width: none;
    padding: 0 7.2727272727vw;
  }
}
.top-about__tateLine {
  position: absolute;
}
.top-about__tateLine--1 {
  left: 29.453125vw;
  top: 9.375vw;
  height: 46.875vw;
}
.top-about__tateLine--2 {
  left: 23.203125vw;
  top: 12.5vw;
  height: 41.640625vw;
}
.top-about__tateLine--3 {
  left: 16.953125vw;
  top: 30.3125vw;
  height: 25.9375vw;
}
.top-about__tateLine img {
  display: block;
  width: auto;
  height: 100%;
}
@media (max-width: 767px) {
  .top-about__tateLine.top-about__tateLine--1 {
    left: 83.6363636364vw;
    top: 18.1818181818vw;
    height: 87.2727272727vw;
  }
  .top-about__tateLine.top-about__tateLine--2 {
    left: 70.9090909091vw;
    top: 23.6363636364vw;
    height: 77.5vw;
  }
  .top-about__tateLine.top-about__tateLine--3 {
    left: 58.1818181818vw;
    top: 57.2727272727vw;
    height: 48.1818181818vw;
  }
}
.top-about__body {
  position: absolute;
  left: 48.4375vw;
  top: 16.875vw;
  width: 42.1875vw;
}
@media (max-width: 767px) {
  .top-about__body {
    position: absolute;
    left: 7.2727272727vw;
    right: 7.2727272727vw;
    top: 106.5909090909vw;
    width: auto;
  }
}
.top-about__headingEn {
  color: #fff;
}
.top-about__headingJa {
  color: #fff;
}
.top-about__txt {
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
  margin-top: 2.5vw;
}
@media (max-width: 767px) {
  .top-about__txt {
    font-size: 8px;
    font-size: 3.6363636364vw;
    margin-top: 5.4545454545vw;
  }
}
.top-about__btn {
  margin-top: 3.125vw;
}
@media (max-width: 767px) {
  .top-about__btn {
    margin-top: 9.0909090909vw;
  }
}
@media (max-width: 767px) {
  .top-about__btn .btn-arrow.btn-arrow--light {
    border-color: #fff;
  }
  .top-about__btn .btn-arrow.btn-arrow--light:hover {
    color: #fff;
    border-color: #fff;
  }
}

.top-services {
  position: relative;
  margin-top: 21.875vw;
}
@media (max-width: 767px) {
  .top-services {
    margin-top: 45.4545454545vw;
  }
}
.top-services__pin {
  position: relative;
}
.top-services__inner {
  position: relative;
  z-index: 1;
  max-width: 93.75vw;
  width: 100%;
  height: 49.0625vw;
  margin: 0 auto;
  padding: 0 3.125vw;
}
@media (max-width: 767px) {
  .top-services__inner {
    max-width: none;
    display: flex;
    flex-direction: column;
    height: auto;
    padding: 0 4.5454545455vw;
  }
}
.top-services__deco {
  position: absolute;
  pointer-events: none;
  background: no-repeat center/contain;
}
.top-services__deco--ink {
  top: calc(50% - 52.109375vw);
  left: calc(50% - 57.578125vw);
  width: 62.1875vw;
  aspect-ratio: 796/402;
  background-image: -webkit-image-set(url("img/top/deco_ink_01.webp") type("image/webp"), url("img/top/deco_ink_01.png") type("image/png"));
  background-image: image-set(url("img/top/deco_ink_01.webp") type("image/webp"), url("img/top/deco_ink_01.png") type("image/png"));
}
@media (max-width: 767px) {
  .top-services__deco--ink {
    top: -64.7727272727vw;
    left: -49.3181818182vw;
    width: 162.9545454545vw;
    aspect-ratio: 717/362;
    background-image: -webkit-image-set(url("img/top/deco_ink_sp_03.webp") type("image/webp"), url("img/top/deco_ink_sp_03.png") type("image/png"));
    background-image: image-set(url("img/top/deco_ink_sp_03.webp") type("image/webp"), url("img/top/deco_ink_sp_03.png") type("image/png"));
  }
}
.top-services__deco--ink2 {
  display: none;
}
@media (max-width: 767px) {
  .top-services__deco--ink2 {
    display: block;
    top: calc(50% + 69.3181818182vw);
    left: -52.7272727273vw;
    width: 162.9545454545vw;
    aspect-ratio: 717/362;
    background-image: -webkit-image-set(url("img/top/deco_ink_sp_02.webp") type("image/webp"), url("img/top/deco_ink_sp_02.png") type("image/png"));
    background-image: image-set(url("img/top/deco_ink_sp_02.webp") type("image/webp"), url("img/top/deco_ink_sp_02.png") type("image/png"));
  }
}
.top-services__deco--splash {
  top: calc(50% - 46.640625vw);
  left: calc(50% + 15.625vw);
  width: 48.125vw;
  aspect-ratio: 616/520;
  background-image: -webkit-image-set(url("img/common/deco_splash_27a.webp") type("image/webp"), url("img/common/deco_splash_27a.png") type("image/png"));
  background-image: image-set(url("img/common/deco_splash_27a.webp") type("image/webp"), url("img/common/deco_splash_27a.png") type("image/png"));
}
@media (max-width: 767px) {
  .top-services__deco--splash {
    top: -34.7727272727vw;
    left: 47.5vw;
    width: 75vw;
    aspect-ratio: 330/279;
    background-image: -webkit-image-set(url("img/common/deco_splash_27a_sp.webp") type("image/webp"), url("img/common/deco_splash_27a_sp.png") type("image/png"));
    background-image: image-set(url("img/common/deco_splash_27a_sp.webp") type("image/webp"), url("img/common/deco_splash_27a_sp.png") type("image/png"));
  }
}
.top-services__deco--dash {
  top: calc(50% - 47.34375vw);
  left: calc(50% - 2.890625vw);
  width: 51.875vw;
  aspect-ratio: 664/242;
  transform: scaleX(-1);
  background-image: -webkit-image-set(url("img/common/deco_splash_29b.webp") type("image/webp"), url("img/common/deco_splash_29b.png") type("image/png"));
  background-image: image-set(url("img/common/deco_splash_29b.webp") type("image/webp"), url("img/common/deco_splash_29b.png") type("image/png"));
}
@media (max-width: 767px) {
  .top-services__deco--dash {
    transform: none;
  }
  .top-services__deco--dash.js-deco-reveal.is-inview {
    animation-name: decoWipeRight;
  }
  .top-services__deco--dash {
    top: -43.1818181818vw;
    left: 22.5vw;
    width: 78.4090909091vw;
    aspect-ratio: 345/126;
    background-image: -webkit-image-set(url("img/common/deco_splash_29_sp.webp") type("image/webp"), url("img/common/deco_splash_29_sp.png") type("image/png"));
    background-image: image-set(url("img/common/deco_splash_29_sp.webp") type("image/webp"), url("img/common/deco_splash_29_sp.png") type("image/png"));
  }
}
.top-services__body {
  position: relative;
  width: 38.59375vw;
  padding-left: 2.65625vw;
}
@media (max-width: 767px) {
  .top-services__body {
    order: 2;
    width: 100%;
    padding-left: 5.9090909091vw;
    margin-top: 9.0909090909vw;
  }
}
.top-services__label {
  color: #1d4ed8;
  font-size: 12px;
  font-size: 1.875vw;
  font-weight: 700;
  line-height: 1.5833333333;
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
  .top-services__label {
    font-size: 9px;
    font-size: 4.0909090909vw;
  }
}
.top-services__labelEn {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-style: italic;
  font-weight: 600;
}
.top-services__dots {
  position: absolute;
  left: 0;
  top: 21.09375vw;
  display: flex;
  flex-direction: column;
  gap: 1.25vw;
}
@media (max-width: 767px) {
  .top-services__dots {
    top: 35.2272727273vw;
    gap: 3.6363636364vw;
  }
}
.top-services__dot {
  width: 0.78125vw;
  height: 0.78125vw;
  border-radius: 50%;
  background-color: #d9d9d9;
  transition: background-color 0.3s ease;
}
@media (max-width: 767px) {
  .top-services__dot {
    width: 2.2727272727vw;
    height: 2.2727272727vw;
  }
}
.top-services__dot.is-active {
  background-color: #1d4ed8;
}
.top-services__states {
  position: relative;
  margin-top: 3.125vw;
  min-height: 42.96875vw;
}
@media (max-width: 767px) {
  .top-services__states {
    margin-top: 6.5909090909vw;
    min-height: 66.3636363636vw;
  }
}
.top-services__state {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease, visibility 0.4s ease;
}
.top-services__state.is-active {
  opacity: 1;
  visibility: visible;
}
.top-services__name {
  color: #1d4ed8;
  font-size: 20px;
  font-size: 3.125vw;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
  .top-services__name {
    font-size: 16px;
    font-size: 7.2727272727vw;
    line-height: 1;
    letter-spacing: 0.05em;
  }
}
.top-services__nameEn {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-style: italic;
  color: #1d4ed8;
  font-size: 12px;
  font-size: 1.875vw;
  font-weight: 600;
  line-height: 1.5833333333;
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
  .top-services__nameEn {
    font-size: 8px;
    font-size: 3.6363636364vw;
    line-height: 1;
    letter-spacing: 0.05em;
    margin-top: 3.6363636364vw;
  }
}
.top-services__txt {
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
  margin-top: 3.125vw;
}
@media (max-width: 767px) {
  .top-services__txt {
    font-size: 7px;
    font-size: 3.1818181818vw;
    margin-top: 3.6363636364vw;
  }
}
.top-services__subs {
  margin-top: 1.25vw;
}
@media (max-width: 767px) {
  .top-services__subs {
    margin-top: 1.8181818182vw;
  }
}
.top-services__sub {
  position: relative;
  padding-left: 2.03125vw;
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
}
.top-services__sub + .top-services__sub {
  margin-top: 0.3125vw;
}
@media (max-width: 767px) {
  .top-services__sub {
    padding-left: 4.5454545455vw;
    font-size: 7px;
    font-size: 3.1818181818vw;
  }
  .top-services__sub + .top-services__sub {
    margin-top: 0;
  }
}
.top-services__sub:before {
  content: "";
  position: absolute;
  left: 0;
  top: calc(50% - 0.390625vw);
  width: 0.78125vw;
  height: 0.78125vw;
  background-color: #1d4ed8;
}
@media (max-width: 767px) {
  .top-services__sub:before {
    top: calc(50% - 0.9090909091vw);
    width: 1.8181818182vw;
    height: 1.8181818182vw;
  }
}
.top-services__btn {
  margin-top: 3.125vw;
}
@media (max-width: 767px) {
  .top-services__btn {
    display: none;
  }
}
.top-services__diagram {
  position: absolute;
  top: 1.40625vw;
  left: 43.90625vw;
  width: 46.953125vw;
  height: 46.171875vw;
}
@media (max-width: 767px) {
  .top-services__diagram {
    order: 1;
    position: relative;
    top: auto;
    left: auto;
    width: 90.9090909091vw;
    height: 89.3181818182vw;
    margin: 0 auto;
  }
}
.top-services__dia {
  position: absolute;
  width: 40.72%;
  height: 41.4%;
  border: 2px solid #1d4ed8;
  transform: rotate(45deg);
  cursor: pointer;
}
@media (max-width: 767px) {
  .top-services__dia {
    border-width: 1px;
  }
}
.top-services__dia--1 {
  left: 8.43%;
  top: 8.57%;
}
.top-services__dia--2 {
  left: 50.86%;
  top: 8.57%;
}
.top-services__dia--3 {
  left: 8.43%;
  top: 50.03%;
}
.top-services__dia--4 {
  left: 50.86%;
  top: 50.03%;
}
.top-services__dia:before {
  content: "";
  position: absolute;
  inset: -2px;
  background: linear-gradient(135deg, rgb(142, 166.5, 235.5), #1d4ed8);
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}
.top-services__dia.is-active {
  z-index: 2;
  border-color: transparent;
}
.top-services__dia.is-active:before {
  opacity: 1;
}
.top-services__dia.is-active .top-services__diaLabel {
  opacity: 0;
}
.top-services__dia.is-active .top-services__diaMenu {
  opacity: 1;
}
.top-services__dia.is-active.top-services__dia--nomenu .top-services__diaLabel {
  opacity: 1;
  color: #fff;
}
.top-services__diaMenu {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.625vw;
  transform: rotate(-45deg);
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}
.top-services__diaMenu li {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  color: #fff;
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 600;
  line-height: 1.4;
}
@media (max-width: 767px) {
  .top-services__diaMenu li {
    font-size: 6px;
    font-size: 2.7272727273vw;
  }
}
.top-services__diaMenuJa {
  font-family: "Noto Sans JP", sans-serif !important;
}
.top-services__diaLabel {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  transform: rotate(-45deg);
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  color: #020617;
  font-size: 12px;
  font-size: 1.875vw;
  font-weight: 600;
  line-height: 1.5833333333;
  transition: opacity 0.3s ease;
}
@media (max-width: 767px) {
  .top-services__diaLabel {
    font-size: 8px;
    font-size: 3.6363636364vw;
  }
}
.top-services__node {
  position: absolute;
  z-index: 1;
  width: 0.9375vw;
  height: 0.9375vw;
  margin: -0.46875vw 0 0 -0.46875vw;
  background-color: #1d4ed8;
}
@media (max-width: 767px) {
  .top-services__node {
    width: 1.8181818182vw;
    height: 1.8181818182vw;
    margin: -0.9090909091vw 0 0 -0.9090909091vw;
  }
}
.top-services__node--1 {
  animation: orbitDia2 7.73s linear infinite;
  animation-delay: -0.274s;
}
.top-services__node--2 {
  animation: orbitDia2 8.6s linear infinite;
  animation-delay: -6.425s;
}
.top-services__node--3 {
  animation: orbitDia2 6.58s linear infinite;
  animation-delay: -1.664s;
}
.top-services__node--4 {
  animation: orbitDia3 6.2s linear infinite;
  animation-delay: -0.004s;
}
.top-services__node--5 {
  animation: orbitDia4 6.27s linear infinite;
  animation-delay: -4.707s;
}
.top-services__node--6 {
  animation: orbitDia3 8.21s linear infinite;
  animation-delay: -2.07s;
}
.top-services__node--7 {
  animation: orbitDia3 6.93s linear infinite;
  animation-delay: -3.465s;
}
.top-services__node--8 {
  animation: orbitDia4 9.36s linear infinite;
  animation-delay: -4.68s;
}
.top-services__dia--2.is-active ~ .top-services__node--1 {
  z-index: 3;
}
.top-services__dia--2.is-active ~ .top-services__node--2 {
  z-index: 3;
}
.top-services__dia--2.is-active ~ .top-services__node--3 {
  z-index: 3;
}
.top-services__dia--3.is-active ~ .top-services__node--4 {
  z-index: 3;
}
.top-services__dia--3.is-active ~ .top-services__node--6 {
  z-index: 3;
}
.top-services__dia--3.is-active ~ .top-services__node--7 {
  z-index: 3;
}
.top-services__dia--4.is-active ~ .top-services__node--5 {
  z-index: 3;
}
.top-services__dia--4.is-active ~ .top-services__node--8 {
  z-index: 3;
}
.top-services__labelJaSp {
  display: none;
}
@media (max-width: 767px) {
  .top-services__labelJa {
    display: none;
  }
  .top-services__labelJaSp {
    display: inline;
  }
}

.top-numbers {
  position: relative;
  margin-top: 21.875vw;
}
@media (max-width: 767px) {
  .top-numbers {
    margin-top: 36.3636363636vw;
  }
}
.top-numbers__inner {
  position: relative;
  z-index: 1;
  max-width: 93.75vw;
  width: 100%;
  margin: 0 auto;
  padding: 0 3.125vw;
}
@media (max-width: 767px) {
  .top-numbers__inner {
    max-width: none;
    padding: 0 7.2727272727vw;
  }
}
.top-numbers__deco {
  position: absolute;
  pointer-events: none;
  background: no-repeat center/contain;
  z-index: 0;
}
.top-numbers__deco--ink1 {
  top: -28.28125vw;
  left: 31.71875vw;
  width: 62.1875vw;
  aspect-ratio: 796/402;
  background-image: -webkit-image-set(url("img/top/deco_ink_03.webp") type("image/webp"), url("img/top/deco_ink_03.png") type("image/png"));
  background-image: image-set(url("img/top/deco_ink_03.webp") type("image/webp"), url("img/top/deco_ink_03.png") type("image/png"));
}
@media (max-width: 767px) {
  .top-numbers__deco--ink1 {
    display: none;
  }
}
.top-numbers__deco--news {
  top: -0.625vw;
  left: 67.109375vw;
  width: 32.890625vw;
  aspect-ratio: 421/313;
  background-image: -webkit-image-set(url("img/top/deco_news.webp") type("image/webp"), url("img/top/deco_news.png") type("image/png"));
  background-image: image-set(url("img/top/deco_news.webp") type("image/webp"), url("img/top/deco_news.png") type("image/png"));
}
@media (max-width: 767px) {
  .top-numbers__deco--news {
    top: 34.7727272727vw;
    left: 57.2727272727vw;
    width: 42.7272727273vw;
    aspect-ratio: 188/140;
  }
}
.top-numbers__deco--ink2 {
  top: 26.875vw;
  left: 0;
  width: 62.1875vw;
  aspect-ratio: 796/402;
  background-image: -webkit-image-set(url("img/top/deco_ink_04.webp") type("image/webp"), url("img/top/deco_ink_04.png") type("image/png"));
  background-image: image-set(url("img/top/deco_ink_04.webp") type("image/webp"), url("img/top/deco_ink_04.png") type("image/png"));
}
@media (max-width: 767px) {
  .top-numbers__deco--ink2 {
    top: 109.7727272727vw;
    left: -52.7272727273vw;
    width: 162.9545454545vw;
    aspect-ratio: 717/362;
    background-image: -webkit-image-set(url("img/top/deco_ink_sp_01.webp") type("image/webp"), url("img/top/deco_ink_sp_01.png") type("image/png"));
    background-image: image-set(url("img/top/deco_ink_sp_01.webp") type("image/webp"), url("img/top/deco_ink_sp_01.png") type("image/png"));
  }
}
.top-numbers__deco--ink3 {
  top: 53.671875vw;
  left: 16.484375vw;
  width: 80.078125vw;
  aspect-ratio: 1025/518;
  background-image: -webkit-image-set(url("img/top/deco_ink_02.webp") type("image/webp"), url("img/top/deco_ink_02.png") type("image/png"));
  background-image: image-set(url("img/top/deco_ink_02.webp") type("image/webp"), url("img/top/deco_ink_02.png") type("image/png"));
}
@media (max-width: 767px) {
  .top-numbers__deco--ink3 {
    top: 236.3636363636vw;
    left: -48.6363636364vw;
    width: 162.9545454545vw;
    aspect-ratio: 717/362;
    background-image: -webkit-image-set(url("img/top/deco_ink_sp_04.webp") type("image/webp"), url("img/top/deco_ink_sp_04.png") type("image/png"));
    background-image: image-set(url("img/top/deco_ink_sp_04.webp") type("image/webp"), url("img/top/deco_ink_sp_04.png") type("image/png"));
  }
}
.top-numbers__deco--splash {
  top: 66.25vw;
  left: 0;
  width: 25.15625vw;
  aspect-ratio: 322/317;
  background-image: -webkit-image-set(url("img/common/deco_splash_27b.webp") type("image/webp"), url("img/common/deco_splash_27b.png") type("image/png"));
  background-image: image-set(url("img/common/deco_splash_27b.webp") type("image/webp"), url("img/common/deco_splash_27b.png") type("image/png"));
}
@media (max-width: 767px) {
  .top-numbers__deco--splash {
    top: 248.6363636364vw;
    left: 0;
    width: 41.5909090909vw;
    aspect-ratio: 183/181;
    background-image: -webkit-image-set(url("img/common/deco_splash_27b_sp.webp") type("image/webp"), url("img/common/deco_splash_27b_sp.png") type("image/png"));
    background-image: image-set(url("img/common/deco_splash_27b_sp.webp") type("image/webp"), url("img/common/deco_splash_27b_sp.png") type("image/png"));
  }
}
.top-numbers__group {
  margin-top: 6.25vw;
}
@media (max-width: 767px) {
  .top-numbers__group {
    margin-top: 14.5454545455vw;
  }
}
.top-numbers__cat {
  position: relative;
  display: flex;
  align-items: center;
  width: 19.296875vw;
  height: 3.75vw;
  justify-content: center;
  color: #020617;
  font-size: 12px;
  font-size: 1.875vw;
  font-weight: 900;
  line-height: 1.5833333333;
  letter-spacing: 0.1em;
}
.top-numbers__cat:before {
  content: "";
  position: absolute;
  inset: -0.15625vw;
  pointer-events: none;
  background: url("img/common/mark_corner_tl.svg") left top/0.9375vw 0.9375vw no-repeat, url("img/common/mark_corner_bl.svg") left bottom/0.9375vw 0.9375vw no-repeat, url("img/common/mark_corner_tr.svg") right top/0.9375vw 0.9375vw no-repeat, url("img/common/mark_corner_br.svg") right bottom/0.9375vw 0.9375vw no-repeat;
}
@media (max-width: 767px) {
  .top-numbers__cat {
    width: 48.8636363636vw;
    height: 9.0909090909vw;
    justify-content: center;
    padding-left: 0;
    font-size: 10px;
    font-size: 4.5454545455vw;
  }
  .top-numbers__cat:before {
    inset: -2px;
    background: url("img/common/mark_corner_tl.svg") left top/12px 12px no-repeat, url("img/common/mark_corner_bl.svg") left bottom/12px 12px no-repeat, url("img/common/mark_corner_tr.svg") right top/12px 12px no-repeat, url("img/common/mark_corner_br.svg") right bottom/12px 12px no-repeat;
  }
}
.top-numbers__list {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-start;
  align-content: normal;
  flex-direction: row;
  margin-top: 3.125vw;
  margin-left: -2.1875vw;
}
@media (max-width: 767px) {
  .top-numbers__list {
    display: block;
    margin-top: 9.0909090909vw;
    margin-left: 0;
  }
}
.top-numbers__item {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-start;
  align-content: normal;
  flex-direction: row;
  width: 30.625vw;
}
@media (max-width: 767px) {
  .top-numbers__item {
    width: 100%;
    margin-bottom: 5.4545454545vw;
  }
  .top-numbers__item:last-of-type {
    margin-bottom: 0;
  }
}
.top-numbers__itemIcon {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  width: 9.53125vw;
  height: 9.53125vw;
  flex: none;
}
@media (max-width: 767px) {
  .top-numbers__itemIcon {
    width: 21.8181818182vw;
    height: 21.8181818182vw;
  }
}
.top-numbers__itemIcon img {
  width: 100%;
  height: auto;
}
.top-numbers__itemBody {
  width: 21.09375vw;
}
@media (max-width: 767px) {
  .top-numbers__itemBody {
    width: auto;
    flex: 1;
    margin-left: 3.6363636364vw;
  }
}
.top-numbers__itemLabel {
  margin-top: 1.640625vw;
  color: #020617;
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 700;
  line-height: 1.6111111111;
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
  .top-numbers__itemLabel {
    margin-top: 2.0454545455vw;
    font-size: 9px;
    font-size: 4.0909090909vw;
  }
}
.top-numbers__itemValue {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: baseline;
  align-content: normal;
  flex-direction: row;
  margin-top: 0.625vw;
}
@media (max-width: 767px) {
  .top-numbers__itemValue {
    margin-top: 2.0454545455vw;
  }
}
.top-numbers__itemNum {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  color: #1d4ed8;
  font-size: 32px;
  font-size: 5vw;
  font-weight: 600;
  line-height: 1;
}
@media (max-width: 767px) {
  .top-numbers__itemNum {
    font-size: 20px;
    font-size: 9.0909090909vw;
  }
}
.top-numbers__itemBigUnit {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  color: #1d4ed8;
  font-size: 20px;
  font-size: 3.125vw;
  font-weight: 500;
  line-height: 1;
}
@media (max-width: 767px) {
  .top-numbers__itemBigUnit {
    font-size: 16px;
    font-size: 7.2727272727vw;
  }
}
.top-numbers__itemUnit {
  color: #020617;
  font-size: 12px;
  font-size: 1.875vw;
  font-weight: 700;
  line-height: 1.5833333333;
  letter-spacing: 0;
  margin-left: 0.3125vw;
}
@media (max-width: 767px) {
  .top-numbers__itemUnit {
    font-size: 12px;
    font-size: 5.4545454545vw;
  }
}
.top-numbers__itemOver {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  color: #020617;
  font-size: 12px;
  font-size: 1.875vw;
  font-weight: 600;
  line-height: 1.5833333333;
  margin-left: 0.3125vw;
  position: relative;
  top: -0.15625vw;
}
@media (max-width: 767px) {
  .top-numbers__itemOver {
    font-size: 12px;
    font-size: 5.4545454545vw;
  }
}

.top-partners {
  overflow: hidden;
  margin-top: 12.5vw;
}
@media (max-width: 1024px) {
  .top-partners {
    margin-top: 160px;
  }
}
@media (max-width: 767px) {
  .top-partners {
    margin-top: 27.2727272727vw;
  }
}
.top-partners__list {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  margin-left: -1.5625vw;
  width: -moz-max-content;
  width: max-content;
  animation: topMarquee 30s linear infinite;
}
@media (max-width: 1024px) {
  .top-partners__list {
    margin-left: -20px;
  }
}
@media (max-width: 767px) {
  .top-partners__list {
    margin-left: -4.7727272727vw;
  }
}
.top-partners__item {
  width: 15.625vw;
  height: 7.8125vw;
  margin-right: 1.875vw;
  background-color: #dddddd;
}
@media (max-width: 1024px) {
  .top-partners__item {
    width: 200px;
    height: 100px;
    margin-right: 24px;
  }
}
@media (max-width: 767px) {
  .top-partners__item {
    width: 26.3636363636vw;
    height: 13.1818181818vw;
    margin-right: 1.3636363636vw;
  }
}
.top-partners__item picture {
  display: block;
  width: 100%;
  height: 100%;
}
.top-partners__item img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-news {
  position: relative;
  margin-top: 21.875vw;
}
@media (max-width: 1024px) {
  .top-news {
    margin-top: 280px;
  }
}
@media (max-width: 767px) {
  .top-news {
    margin-top: 45.4545454545vw;
  }
}
@media (max-width: 767px) {
  .top-news .mod-news__item {
    margin-bottom: 9.0909090909vw;
  }
  .top-news .mod-news__item:last-of-type {
    margin-bottom: 0;
  }
}
.top-news__deco {
  position: absolute;
  top: -2.890625vw;
  left: 67.109375vw;
  width: 32.890625vw;
  aspect-ratio: 421/313;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/top/deco_news.webp") type("image/webp"), url("img/top/deco_news.png") type("image/png"));
  background-image: image-set(url("img/top/deco_news.webp") type("image/webp"), url("img/top/deco_news.png") type("image/png"));
}
@media (max-width: 1024px) {
  .top-news__deco {
    top: -37px;
    left: 859px;
    width: 421px;
  }
}
@media (max-width: 767px) {
  .top-news__deco {
    top: -17.2727272727vw;
    left: 57.2727272727vw;
    width: 42.7272727273vw;
  }
}
.top-news__deco2 {
  position: absolute;
  bottom: -21.875vw;
  left: -0.15625vw;
  width: 51.875vw;
  aspect-ratio: 664/242;
  z-index: 0;
  pointer-events: none;
  transform: scaleX(-1);
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/common/deco_splash_29.webp") type("image/webp"), url("img/common/deco_splash_29.png") type("image/png"));
  background-image: image-set(url("img/common/deco_splash_29.webp") type("image/webp"), url("img/common/deco_splash_29.png") type("image/png"));
}
@media (max-width: 1024px) {
  .top-news__deco2 {
    bottom: -280px;
    left: -2px;
    width: 664px;
  }
}
@media (max-width: 767px) {
  .top-news__deco2 {
    transform: none;
  }
  .top-news__deco2.js-deco-reveal.is-inview {
    animation-name: decoWipeLeft;
  }
  .top-news__deco2 {
    bottom: -38.8636363636vw;
    left: 0;
    width: 88.1818181818vw;
    aspect-ratio: 388/142;
    background-image: -webkit-image-set(url("img/common/deco_splash_29b_sp2.webp") type("image/webp"), url("img/common/deco_splash_29b_sp2.png") type("image/png"));
    background-image: image-set(url("img/common/deco_splash_29b_sp2.webp") type("image/webp"), url("img/common/deco_splash_29b_sp2.png") type("image/png"));
  }
}
.top-news__deco3 {
  position: absolute;
  top: 56.71875vw;
  left: 58.046875vw;
  width: 48.125vw;
  aspect-ratio: 616/520;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/common/deco_splash_27c.webp") type("image/webp"), url("img/common/deco_splash_27c.png") type("image/png"));
  background-image: image-set(url("img/common/deco_splash_27c.webp") type("image/webp"), url("img/common/deco_splash_27c.png") type("image/png"));
}
@media (max-width: 1024px) {
  .top-news__deco3 {
    top: 726px;
    left: 743px;
    width: 616px;
  }
}
@media (max-width: 767px) {
  .top-news__deco3 {
    display: none;
  }
}
.top-news__inner {
  position: relative;
  z-index: 1;
  max-width: 93.75vw;
  width: 100%;
  margin: 0 auto;
  padding: 0 3.125vw;
}
@media (max-width: 1024px) {
  .top-news__inner {
    max-width: 1200px;
    padding: 0 40px;
  }
}
@media (max-width: 767px) {
  .top-news__inner {
    max-width: none;
    padding: 0 7.2727272727vw;
  }
}
.top-news__list {
  margin-top: 7.03125vw;
}
@media (max-width: 1024px) {
  .top-news__list {
    margin-top: 90px;
  }
}
@media (max-width: 767px) {
  .top-news__list {
    margin-top: 9.0909090909vw;
  }
}
@media (max-width: 767px) {
  .top-news .mod-news__ttl {
    line-height: 1.8125;
  }
}
.top-news__btn {
  text-align: center;
  margin-top: 3.75vw;
}
@media (max-width: 1024px) {
  .top-news__btn {
    margin-top: 48px;
  }
}
@media (max-width: 767px) {
  .top-news__btn {
    display: block;
    margin-top: 12.7272727273vw;
  }
}

.top-recruit {
  margin-top: 21.875vw;
}
@media (max-width: 1024px) {
  .top-recruit {
    margin-top: 280px;
  }
}
@media (max-width: 767px) {
  .top-recruit {
    margin-top: 45.4545454545vw;
  }
}

@keyframes topDiaOrbit {
  0% {
    top: -1px;
    left: -1px;
  }
  25% {
    top: -1px;
    left: calc(100% + 1px);
  }
  50% {
    top: calc(100% + 1px);
    left: calc(100% + 1px);
  }
  75% {
    top: calc(100% + 1px);
    left: -1px;
  }
  100% {
    top: -1px;
    left: -1px;
  }
}
@keyframes missionDecoSeq {
  from {
    -webkit-mask-position: 0 0%;
    mask-position: 0 0%;
  }
  to {
    -webkit-mask-position: 0 100%;
    mask-position: 0 100%;
  }
}
@keyframes fvSeqPlay {
  from {
    -webkit-mask-position: 0 0%;
    mask-position: 0 0%;
  }
  to {
    -webkit-mask-position: 0 99.834%;
    mask-position: 0 99.834%;
  }
}
@keyframes topMarquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@keyframes fvCopyFade {
  to {
    opacity: 1;
  }
}
@keyframes fvSplashIn {
  from {
    clip-path: polygon(-200% 0%, -60% 0%, 0% 100%, -200% 100%);
  }
  to {
    clip-path: polygon(-200% 0%, 100% 0%, 160% 100%, -200% 100%);
  }
}
@keyframes fvLineFlow {
  0% {
    transform: scaleY(0);
    transform-origin: top center;
  }
  45% {
    transform: scaleY(1);
    transform-origin: top center;
  }
  55% {
    transform: scaleY(1);
    transform-origin: bottom center;
  }
  100% {
    transform: scaleY(0);
    transform-origin: bottom center;
  }
}
@media (prefers-reduced-motion: reduce) {
  .top-kv__bg, body.loaded .top-kv .top-kv__bg {
    animation: none;
    clip-path: none;
  }
  .top-kv__knockout, body.loaded .top-kv .top-kv__knockout {
    animation: none;
    clip-path: none;
  }
  .top-kv__copy, body.loaded .top-kv .top-kv__copy {
    animation: none;
    opacity: 1;
  }
  .top-kv__line:before {
    animation: none;
  }
  .top-partners__list {
    animation: none;
  }
  .top-services__node {
    animation: none;
  }
}
/* layout > archive
============================================================================================================ */
.archive-post {
  max-width: 93.75vw;
  width: 100%;
  margin: 0 auto;
  padding: 0 3.125vw;
}
@media (max-width: 1024px) {
  .archive-post {
    max-width: 1200px;
    padding: 0 40px;
  }
}
@media (max-width: 767px) {
  .archive-post {
    padding: 0 7.2727272727vw;
  }
}
.archive-post__cat {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  gap: 1.875vw;
  margin-bottom: 3.75vw;
}
@media (max-width: 1024px) {
  .archive-post__cat {
    gap: 24px;
    margin-bottom: 48px;
  }
}
@media (max-width: 767px) {
  .archive-post__cat {
    justify-content: flex-start;
    gap: 1.8181818182vw;
    margin-bottom: 8.1818181818vw;
  }
}
.archive-post__cat li {
  display: flex;
}
@media (max-width: 767px) {
  .archive-post__cat li {
    flex: 0 0 auto;
  }
}
.archive-post__cat li a {
  display: inline-flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  box-sizing: border-box;
  min-width: 15.234375vw;
  width: 100%;
  padding: 0.78125vw 1.25vw;
  border: 0.15625vw solid #1d4ed8;
  background-color: #fff;
  color: #1d4ed8;
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
  white-space: nowrap;
  transition: 0.3s;
}
@media (max-width: 1024px) {
  .archive-post__cat li a {
    min-width: 195px;
    padding: 10px 16px;
    border-width: 2px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media (max-width: 767px) {
  .archive-post__cat li a {
    font-size: 8px;
    font-size: 3.6363636364vw;
    min-width: 0;
    width: 26.8181818182vw;
    padding: 2.2727272727vw 4.5454545455vw;
    border-width: 0.4545454545vw;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .archive-post__cat li a:hover {
    opacity: 1;
    background-color: rgba(29, 78, 216, 0.3);
  }
}
.archive-post__cat li a.is-current {
  opacity: 1;
  background-color: #1d4ed8;
  color: #fff;
}
.archive-post__inner {
  width: 100%;
}
.archive-post__empty {
  font-size: 8px;
  font-size: 1.25vw;
  text-align: center;
  padding: 3.125vw 0;
}
@media (max-width: 1024px) {
  .archive-post__empty {
    font-size: 16px;
    font-size: 1rem;
    padding: 40px 0;
  }
}
@media (max-width: 767px) {
  .archive-post__empty {
    font-size: 14px;
    font-size: 6.3636363636vw;
    padding: 13.6363636364vw 0;
  }
}
.archive-post__pager .wp-pagenavi {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  gap: 0.625vw;
  margin-top: 2.5vw;
}
@media (max-width: 1024px) {
  .archive-post__pager .wp-pagenavi {
    gap: 8px;
    margin-top: 32px;
  }
}
@media (max-width: 767px) {
  .archive-post__pager .wp-pagenavi {
    gap: 1.1363636364vw;
    margin-top: 12.7272727273vw;
  }
}
.archive-post__pager .wp-pagenavi .pages {
  display: none;
}
.archive-post__pager .wp-pagenavi .first,
.archive-post__pager .wp-pagenavi .previouspostslink,
.archive-post__pager .wp-pagenavi .nextpostslink,
.archive-post__pager .wp-pagenavi .last {
  height: 1.40625vw;
  background-color: #020617;
  transition: background-color 0.3s;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}
@media (max-width: 1024px) {
  .archive-post__pager .wp-pagenavi .first,
  .archive-post__pager .wp-pagenavi .previouspostslink,
  .archive-post__pager .wp-pagenavi .nextpostslink,
  .archive-post__pager .wp-pagenavi .last {
    height: 18px;
  }
}
@media (max-width: 767px) {
  .archive-post__pager .wp-pagenavi .first,
  .archive-post__pager .wp-pagenavi .previouspostslink,
  .archive-post__pager .wp-pagenavi .nextpostslink,
  .archive-post__pager .wp-pagenavi .last {
    height: 4.0909090909vw;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .archive-post__pager .wp-pagenavi .first:hover,
  .archive-post__pager .wp-pagenavi .previouspostslink:hover,
  .archive-post__pager .wp-pagenavi .nextpostslink:hover,
  .archive-post__pager .wp-pagenavi .last:hover {
    opacity: 1;
    background-color: #1d4ed8;
  }
}
.archive-post__pager .wp-pagenavi .first {
  width: 1.40625vw;
  -webkit-mask-image: url("img/common/pager_arrow_double.svg");
  mask-image: url("img/common/pager_arrow_double.svg");
  transform: scaleX(-1);
  margin-right: 0.9375vw;
}
@media (max-width: 1024px) {
  .archive-post__pager .wp-pagenavi .first {
    width: 18px;
    margin-right: 12px;
  }
}
@media (max-width: 767px) {
  .archive-post__pager .wp-pagenavi .first {
    width: 4.0909090909vw;
    margin-right: 2.5vw;
  }
}
.archive-post__pager .wp-pagenavi .previouspostslink {
  width: 0.78125vw;
  -webkit-mask-image: url("img/common/pager_arrow.svg");
  mask-image: url("img/common/pager_arrow.svg");
  transform: scaleX(-1);
  margin-right: 1.875vw;
}
@media (max-width: 1024px) {
  .archive-post__pager .wp-pagenavi .previouspostslink {
    width: 10px;
    margin-right: 24px;
  }
}
@media (max-width: 767px) {
  .archive-post__pager .wp-pagenavi .previouspostslink {
    width: 2.2727272727vw;
    margin-right: 4.3181818182vw;
  }
}
.archive-post__pager .wp-pagenavi .nextpostslink {
  width: 0.78125vw;
  -webkit-mask-image: url("img/common/pager_arrow.svg");
  mask-image: url("img/common/pager_arrow.svg");
  margin-left: 1.875vw;
}
@media (max-width: 1024px) {
  .archive-post__pager .wp-pagenavi .nextpostslink {
    width: 10px;
    margin-left: 24px;
  }
}
@media (max-width: 767px) {
  .archive-post__pager .wp-pagenavi .nextpostslink {
    width: 2.2727272727vw;
    margin-left: 4.3181818182vw;
  }
}
.archive-post__pager .wp-pagenavi .last {
  width: 1.40625vw;
  -webkit-mask-image: url("img/common/pager_arrow_double.svg");
  mask-image: url("img/common/pager_arrow_double.svg");
  margin-left: 0.9375vw;
}
@media (max-width: 1024px) {
  .archive-post__pager .wp-pagenavi .last {
    width: 18px;
    margin-left: 12px;
  }
}
@media (max-width: 767px) {
  .archive-post__pager .wp-pagenavi .last {
    width: 4.0909090909vw;
    margin-left: 2.5vw;
  }
}
.archive-post__pager .wp-pagenavi .page,
.archive-post__pager .wp-pagenavi .current {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  position: relative;
  isolation: isolate;
  width: 3.125vw;
  height: 5.625vw;
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-style: italic;
  font-size: 12px;
  font-size: 1.875vw;
  font-weight: 600;
  line-height: 1;
  color: #020617;
  transition: color 0.3s;
}
@media (max-width: 1024px) {
  .archive-post__pager .wp-pagenavi .page,
  .archive-post__pager .wp-pagenavi .current {
    width: 40px;
    height: 72px;
    font-size: 24px;
    font-size: 1.5rem;
  }
}
@media (max-width: 767px) {
  .archive-post__pager .wp-pagenavi .page,
  .archive-post__pager .wp-pagenavi .current {
    font-size: 12px;
    font-size: 5.4545454545vw;
    width: 9.0909090909vw;
    height: 16.3636363636vw;
  }
}
.archive-post__pager .wp-pagenavi .page:before,
.archive-post__pager .wp-pagenavi .current:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 3.203125vw;
  height: 5.625vw;
  transform: translate(-50%, -30%);
  background: url("img/common/pager_drip.svg") no-repeat center/contain;
  z-index: -1;
  opacity: 0;
  transition: opacity 0.3s;
}
@media (max-width: 1024px) {
  .archive-post__pager .wp-pagenavi .page:before,
  .archive-post__pager .wp-pagenavi .current:before {
    width: 41px;
    height: 72px;
  }
}
@media (max-width: 767px) {
  .archive-post__pager .wp-pagenavi .page:before,
  .archive-post__pager .wp-pagenavi .current:before {
    width: 9.3181818182vw;
    height: 16.3636363636vw;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .archive-post__pager .wp-pagenavi .page:hover,
  .archive-post__pager .wp-pagenavi .current:hover {
    opacity: 1;
    color: #1d4ed8;
  }
}
.archive-post__pager .wp-pagenavi .current {
  color: #fff;
  pointer-events: none;
}
.archive-post__pager .wp-pagenavi .current:before {
  opacity: 1;
}

/* layout > single
============================================================================================================ */
.single-post {
  width: 100%;
  padding: 1.5625vw 0 0;
}
@media (max-width: 1024px) {
  .single-post {
    padding: 20px 0 0;
  }
}
@media (max-width: 767px) {
  .single-post {
    padding: 4.5454545455vw 0 0;
  }
}
.single-post__container {
  max-width: 93.75vw;
  width: 100%;
  margin: 0 auto;
  padding: 0 3.125vw;
}
@media (max-width: 1024px) {
  .single-post__container {
    max-width: 1200px;
    padding: 0 40px;
  }
}
@media (max-width: 767px) {
  .single-post__container {
    padding: 0 7.2727272727vw;
  }
}
.single-post__inner {
  width: 100%;
}
.single-post__head {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  margin-bottom: 5vw;
}
@media (max-width: 1024px) {
  .single-post__head {
    flex-wrap: wrap;
    gap: 16px 24px;
    margin-bottom: 64px;
  }
}
@media (max-width: 767px) {
  .single-post__head {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-start;
    align-content: normal;
    flex-direction: column;
    margin-bottom: 7.2727272727vw;
  }
}
.single-post__heading {
  color: #1d4ed8;
  font-size: 16px;
  font-size: 2.5vw;
  font-weight: 900;
  line-height: 1.59375;
  letter-spacing: 0.1em;
  margin-bottom: 5vw;
}
@media (max-width: 1024px) {
  .single-post__heading {
    font-size: 32px;
    font-size: 2rem;
    margin-bottom: 64px;
  }
}
@media (max-width: 767px) {
  .single-post__heading {
    font-size: 10px;
    font-size: 4.5454545455vw;
    line-height: 1.6;
    letter-spacing: 0.05em;
    margin-bottom: 5.4545454545vw;
  }
}
.single-post__meta {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  gap: 1.875vw;
}
@media (max-width: 1024px) {
  .single-post__meta {
    gap: 24px;
  }
}
@media (max-width: 767px) {
  .single-post__meta {
    gap: 3.6363636364vw;
    margin-bottom: 0;
  }
}
.single-post__share {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  margin-top: 5.3125vw;
}
@media (max-width: 1024px) {
  .single-post__share {
    margin-top: 68px;
  }
}
@media (max-width: 767px) {
  .single-post__share {
    margin-top: 7.2727272727vw;
  }
}
.single-post__shareList {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  gap: 1.25vw;
}
@media (max-width: 1024px) {
  .single-post__shareList {
    gap: 16px;
  }
}
@media (max-width: 767px) {
  .single-post__shareList {
    gap: 2.7272727273vw;
  }
}
.single-post__shareLink {
  display: block;
  width: 2.34375vw;
  height: 2.34375vw;
  transition: 0.3s;
}
@media (max-width: 1024px) {
  .single-post__shareLink {
    width: 30px;
    height: 30px;
  }
}
@media (max-width: 767px) {
  .single-post__shareLink {
    width: 7.2727272727vw;
    height: 7.2727272727vw;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .single-post__shareLink:hover {
    opacity: 0.7;
  }
}
.single-post__shareIcon {
  display: block;
  width: 100%;
  height: 100%;
}
.single-post__date {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-style: italic;
  color: #1d4ed8;
  font-size: 12px;
  font-size: 1.875vw;
  font-weight: 600;
  line-height: 1;
}
@media (max-width: 1024px) {
  .single-post__date {
    font-size: 24px;
    font-size: 1.5rem;
  }
}
@media (max-width: 767px) {
  .single-post__date {
    font-size: 10px;
    font-size: 4.5454545455vw;
  }
}
.single-post__cat {
  display: inline-flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  min-width: 15.234375vw;
  padding: 0.9375vw 1.25vw;
  background-color: #1d4ed8;
  color: #fff;
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media (max-width: 1024px) {
  .single-post__cat {
    min-width: 195px;
    padding: 12px 16px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media (max-width: 767px) {
  .single-post__cat {
    font-size: 8px;
    font-size: 3.6363636364vw;
    min-width: 26.8181818182vw;
    height: 7.2727272727vw;
    padding: 0 5.4545454545vw;
  }
}
.single-post__thumb {
  width: 75vw;
  max-width: 100%;
  margin: 0 auto 5vw;
  aspect-ratio: 960/539;
  overflow: hidden;
}
@media (max-width: 1024px) {
  .single-post__thumb {
    width: 960px;
    margin-bottom: 64px;
  }
}
@media (max-width: 767px) {
  .single-post__thumb {
    width: 100%;
    aspect-ratio: auto;
    margin-bottom: 14.5454545455vw;
  }
}
.single-post__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 767px) {
  .single-post__thumb img {
    height: auto;
  }
}
.single-post__divider {
  height: 2px;
  background-color: rgba(29, 78, 216, 0.3);
  margin: 1.25vw 0 3.75vw;
}
@media (max-width: 1024px) {
  .single-post__divider {
    margin: 16px 0 48px;
  }
}
@media (max-width: 767px) {
  .single-post__divider {
    margin: 1.8181818182vw 0 3.6363636364vw;
  }
}
.single-post__nav {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  gap: 1.875vw;
  margin-bottom: 12.8125vw;
}
@media (max-width: 1024px) {
  .single-post__nav {
    gap: 40px;
    margin-bottom: 164px;
  }
}
@media (max-width: 767px) {
  .single-post__nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    align-content: normal;
    flex-direction: row;
    gap: 9.0909090909vw 4.5454545455vw;
    margin-bottom: 18.1818181818vw;
  }
}
.single-post__navItem {
  width: 30%;
}
@media (max-width: 767px) {
  .single-post__navItem {
    width: auto;
    line-height: 1;
  }
}
.single-post__navItem--next {
  text-align: right;
}
@media (max-width: 767px) {
  .single-post__navLink {
    display: inline-block;
    padding: 2.2727272727vw 0;
    margin: -2.2727272727vw 0;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .single-post__navLink:hover {
    opacity: 0.7;
  }
}
.single-post__navLabel {
  position: relative;
  display: inline-block;
  color: #1d4ed8;
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 700;
  line-height: 1.6111111111;
  letter-spacing: 0.1em;
  margin-bottom: 0.9375vw;
}
@media (max-width: 1024px) {
  .single-post__navLabel {
    font-size: 18px;
    font-size: 1.125rem;
    margin-bottom: 12px;
  }
}
@media (max-width: 767px) {
  .single-post__navLabel {
    font-size: 8px;
    font-size: 3.6363636364vw;
    margin-bottom: 0;
  }
}
.single-post__navItem--prev .single-post__navLabel {
  padding-left: 1.875vw;
}
@media (max-width: 1024px) {
  .single-post__navItem--prev .single-post__navLabel {
    padding-left: 24px;
  }
}
@media (max-width: 767px) {
  .single-post__navItem--prev .single-post__navLabel {
    padding-left: 5vw;
  }
}
.single-post__navItem--prev .single-post__navLabel:before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 0.625vw;
  height: 1.25vw;
  background-color: #1d4ed8;
  -webkit-mask: url("img/common/pager_arrow.svg") no-repeat center/contain;
  mask: url("img/common/pager_arrow.svg") no-repeat center/contain;
  transform: translateY(-50%) scaleX(-1);
}
@media (max-width: 1024px) {
  .single-post__navItem--prev .single-post__navLabel:before {
    width: 8px;
    height: 16px;
  }
}
@media (max-width: 767px) {
  .single-post__navItem--prev .single-post__navLabel:before {
    width: 1.3636363636vw;
    height: 2.7272727273vw;
  }
}
.single-post__navItem--next .single-post__navLabel {
  padding-right: 1.875vw;
}
@media (max-width: 1024px) {
  .single-post__navItem--next .single-post__navLabel {
    padding-right: 24px;
  }
}
@media (max-width: 767px) {
  .single-post__navItem--next .single-post__navLabel {
    padding-right: 5vw;
  }
}
.single-post__navItem--next .single-post__navLabel:after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 0.625vw;
  height: 1.25vw;
  background-color: #1d4ed8;
  -webkit-mask: url("img/common/pager_arrow.svg") no-repeat center/contain;
  mask: url("img/common/pager_arrow.svg") no-repeat center/contain;
  transform: translateY(-50%);
}
@media (max-width: 1024px) {
  .single-post__navItem--next .single-post__navLabel:after {
    width: 8px;
    height: 16px;
  }
}
@media (max-width: 767px) {
  .single-post__navItem--next .single-post__navLabel:after {
    width: 1.3636363636vw;
    height: 2.7272727273vw;
  }
}
.single-post__navTtl {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  color: #020617;
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 700;
  line-height: 1.6111111111;
  letter-spacing: 0.1em;
}
@media (max-width: 1024px) {
  .single-post__navTtl {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media (max-width: 767px) {
  .single-post__navTtl {
    display: none;
  }
}
.single-post__navBack {
  margin: 0 auto;
}
@media (max-width: 767px) {
  .single-post__navBack {
    order: 3;
    margin: 0 auto;
  }
}
.single-post__bottomHead {
  text-align: center;
  margin-bottom: 5.3125vw;
}
@media (max-width: 1024px) {
  .single-post__bottomHead {
    margin-bottom: 68px;
  }
}
@media (max-width: 767px) {
  .single-post__bottomHead {
    margin-bottom: 15.4545454545vw;
  }
}
.single-post__bottomTtl {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  color: #1d4ed8;
  font-size: 20px;
  font-size: 3.125vw;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  margin-bottom: 0.9375vw;
}
@media (max-width: 1024px) {
  .single-post__bottomTtl {
    font-size: 40px;
    font-size: 2.5rem;
    margin-bottom: 12px;
  }
}
@media (max-width: 767px) {
  .single-post__bottomTtl {
    font-size: 16px;
    font-size: 7.2727272727vw;
  }
}
.single-post__bottomSub {
  color: #1d4ed8;
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media (max-width: 1024px) {
  .single-post__bottomSub {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .single-post__bottomSub {
    font-size: 8px;
    font-size: 3.6363636364vw;
  }
}
@media (max-width: 767px) {
  .single-post__bottomRow {
    margin-bottom: 10.9090909091vw;
  }
}
.single-post__bottomRow .mod-news__item:first-child .mod-news__link {
  padding-top: 0;
}
.single-post__bottomRow .mod-news__item:last-child .mod-news__link {
  padding-bottom: 0;
}

/*  layout > container
============================================================================================================ */
.l-container--1000 {
  max-width: 1000px;
  margin-right: auto;
  margin-left: auto;
}
@media (max-width: 1024px) {
  .l-container--1000 {
    max-width: 95%;
  }
}
@media (max-width: 767px) {
  .l-container--1000 {
    max-width: 156.8181818182vw;
  }
}

/*  layout > form
============================================================================================================ */
.form__row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: normal;
  align-content: normal;
  flex-direction: row;
}
@media (max-width: 767px) {
  .form__row {
    align-items: flex-start;
  }
}
.form__row:nth-of-type(n + 2) {
  margin-top: 30px;
}
@media (max-width: 767px) {
  .form__row:nth-of-type(n + 2) {
    margin-top: 13.6363636364vw;
  }
}
.form__row.kinds .form__col:nth-of-type(2) {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: normal;
  align-content: normal;
  flex-direction: row;
}
.form__row.content {
  margin-top: 40px;
}
@media (max-width: 767px) {
  .form__row.content {
    margin-top: 13.6363636364vw;
  }
}
.form__col:first-of-type {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 2;
  width: 173px;
}
@media (max-width: 767px) {
  .form__col:first-of-type {
    font-size: 14px;
    font-size: 6.3636363636vw;
    line-height: 1.25;
    width: 100%;
    margin-bottom: 4.5454545455vw;
  }
}
.form__col:nth-of-type(2) {
  font-size: 14px;
  font-size: 0.875rem;
  width: 411px;
}
@media (max-width: 767px) {
  .form__col:nth-of-type(2) {
    font-size: 14px;
    font-size: 6.3636363636vw;
    width: 100%;
  }
}
.form__note {
  font-size: 14px;
  font-size: 0.875rem;
  display: block;
  width: 100%;
  margin-top: 16px;
}
@media (max-width: 767px) {
  .form__note {
    font-size: 14px;
    font-size: 6.3636363636vw;
    text-indent: -1em;
    padding-left: 1em;
    margin-top: 6.8181818182vw;
  }
}
.form__note a {
  color: blue;
  text-decoration: underline;
}
.form__btn {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: normal;
  align-content: normal;
  flex-direction: row;
  margin-top: 70px;
}
@media (max-width: 767px) {
  .form__btn {
    align-items: center;
    flex-direction: column-reverse;
    margin-top: 22.7272727273vw;
  }
}
.form__btn-col.submit {
  margin-top: 0;
}
.form__btn-col.back {
  margin-top: 0;
}
.form__btn-col.back:before {
  left: auto;
  right: 0;
  transform: rotateY(180deg);
}

/* layout > 404
============================================================================================================ */
.page-404 {
  padding: 92px 0 0;
}
@media (max-width: 767px) {
  .page-404 {
    padding: 30vw 0 0;
  }
}
.page-404 h2 {
  font-size: 30px;
  font-size: 1.875rem;
  text-align: center;
  line-height: 1;
  color: #020617;
  margin-bottom: 24px;
}
@media (max-width: 767px) {
  .page-404 h2 {
    font-size: 22px;
    font-size: 10vw;
    margin-bottom: 10.6818181818vw;
  }
}
.page-404 h3 {
  font-size: 22px;
  font-size: 1.375rem;
  text-align: center;
  color: #020617;
  line-height: 1;
  margin-bottom: 31px;
}
@media (max-width: 767px) {
  .page-404 h3 {
    font-size: 19px;
    font-size: 8.6363636364vw;
    line-height: 1.7105263158;
    margin-bottom: 15.9090909091vw;
  }
}
.page-404__icn {
  max-width: 155px;
  margin: 0 auto 21px;
}
@media (max-width: 767px) {
  .page-404__icn {
    max-width: 58.6363636364vw;
    margin-bottom: 12.2727272727vw;
  }
}
.page-404__info {
  font-size: 14px;
  font-size: 0.875rem;
  max-width: 489px;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .page-404__info {
    font-size: 15px;
    font-size: 6.8181818182vw;
    max-width: 142.9545454545vw;
  }
}
.page-404__info a {
  text-decoration: underline;
  text-underline-offset: 1px;
}

/* layout
============================================================================ */
/* layout > page > company
============================================================================================================ */
.page-company {
  padding-top: 0;
  padding-bottom: 0;
}
.page-company__inner {
  position: relative;
  z-index: 1;
  max-width: 93.75vw;
  width: 100%;
  margin: 0 auto;
  padding: 0 3.125vw;
}
@media (max-width: 1024px) {
  .page-company__inner {
    max-width: 1200px;
    padding: 0 40px;
  }
}
@media (max-width: 767px) {
  .page-company__inner {
    padding: 0 7.2727272727vw;
  }
}
.page-company__lead {
  position: relative;
}
.page-company__leadTtl {
  width: 41.40625vw;
  margin-top: 1.09375vw;
}
@media (max-width: 1024px) {
  .page-company__leadTtl {
    width: 530px;
    margin-top: 14px;
  }
}
@media (max-width: 767px) {
  .page-company__leadTtl {
    width: 75.4545454545vw;
  }
}
.page-company__leadTtl img {
  display: block;
  width: 100%;
  height: auto;
}
.page-company__leadTxt {
  width: 50vw;
  max-width: 100%;
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
  margin-top: 2.5vw;
}
@media (max-width: 1024px) {
  .page-company__leadTxt {
    width: 640px;
    font-size: 16px;
    font-size: 1rem;
    margin-top: 42px;
  }
}
@media (max-width: 767px) {
  .page-company__leadTxt {
    width: 100%;
    font-size: 7px;
    font-size: 3.1818181818vw;
    margin-top: 3.6363636364vw;
  }
}
.page-company__leadBtn {
  margin-top: 2.5vw;
}
@media (max-width: 1024px) {
  .page-company__leadBtn {
    margin-top: 32px;
  }
}
@media (max-width: 767px) {
  .page-company__leadBtn {
    margin-top: 9.0909090909vw;
    line-height: 0;
  }
}
.page-company__decoLead {
  position: absolute;
  top: 31.015625vw;
  left: 53.046875vw;
  width: 48.125vw;
  aspect-ratio: 616/520;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/company/deco_mix_01.webp") type("image/webp"), url("img/company/deco_mix_01.png") type("image/png"));
  background-image: image-set(url("img/company/deco_mix_01.webp") type("image/webp"), url("img/company/deco_mix_01.png") type("image/png"));
}
@media (max-width: 1024px) {
  .page-company__decoLead {
    top: 383px;
    left: 679px;
    width: 616px;
  }
}
@media (max-width: 767px) {
  .page-company__decoLead {
    top: 94.3181818182vw;
    left: 38.6363636364vw;
    width: 79.3181818182vw;
  }
}
.page-company__decoLead2 {
  position: absolute;
  top: 34.6875vw;
  left: 48.046875vw;
  width: 51.875vw;
  aspect-ratio: 664/242;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/company/deco_splash_02.webp") type("image/webp"), url("img/company/deco_splash_02.png") type("image/png"));
  background-image: image-set(url("img/company/deco_splash_02.webp") type("image/webp"), url("img/company/deco_splash_02.png") type("image/png"));
}
@media (max-width: 1024px) {
  .page-company__decoLead2 {
    top: 431px;
    left: 615px;
    width: 664px;
  }
}
@media (max-width: 767px) {
  .page-company__decoLead2 {
    top: 101.1363636364vw;
    left: 10.9090909091vw;
    width: 78.4090909091vw;
  }
}
.page-company__decoLead3 {
  position: absolute;
  top: 40vw;
  left: -14.0625vw;
  width: 41.40625vw;
  aspect-ratio: 530/317;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/company/deco_mix_02.webp") type("image/webp"), url("img/company/deco_mix_02.png") type("image/png"));
  background-image: image-set(url("img/company/deco_mix_02.webp") type("image/webp"), url("img/company/deco_mix_02.png") type("image/png"));
}
@media (max-width: 1024px) {
  .page-company__decoLead3 {
    top: 499px;
    left: -180px;
    width: 530px;
  }
}
@media (max-width: 767px) {
  .page-company__decoLead3 {
    display: none;
  }
}
.page-company__officers {
  position: relative;
  margin-top: 21.875vw;
}
@media (max-width: 1024px) {
  .page-company__officers {
    margin-top: 280px;
  }
}
@media (max-width: 767px) {
  .page-company__officers {
    margin-top: 36.5909090909vw;
  }
}
.page-company__decoOfficers {
  position: absolute;
  top: 82.421875vw;
  left: -4.921875vw;
  width: 41.40625vw;
  aspect-ratio: 530/317;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/company/deco_mix_03.webp") type("image/webp"), url("img/company/deco_mix_03.png") type("image/png"));
  background-image: image-set(url("img/company/deco_mix_03.webp") type("image/webp"), url("img/company/deco_mix_03.png") type("image/png"));
}
@media (max-width: 1024px) {
  .page-company__decoOfficers {
    top: 1055px;
    left: -63px;
    width: 530px;
  }
}
@media (max-width: 767px) {
  .page-company__decoOfficers {
    top: 396.3636363636vw;
    left: -12.9545454545vw;
    width: 65.9090909091vw;
  }
}
.page-company__officer {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
  align-content: normal;
  flex-direction: row;
  margin-bottom: 10.46875vw;
}
@media (max-width: 1024px) {
  .page-company__officer {
    gap: 7.8125vw;
    margin-bottom: 134px;
  }
}
@media (max-width: 767px) {
  .page-company__officer {
    display: block;
    gap: 0;
    margin-bottom: 18.1818181818vw;
  }
}
.page-company__officer:last-child {
  margin-bottom: 0;
}
.page-company__officerPhoto {
  width: 37.5vw;
  margin-left: -3.125vw;
}
@media (max-width: 1024px) {
  .page-company__officerPhoto {
    width: 480px;
    margin-left: -40px;
  }
}
@media (max-width: 767px) {
  .page-company__officerPhoto {
    width: auto;
    margin-left: -7.2727272727vw;
    margin-right: -7.2727272727vw;
  }
}
.page-company__officerPhoto img {
  display: block;
  width: 100%;
  height: auto;
}
.page-company__officerPhoto.js-reveal {
  overflow: visible;
}
@media (max-width: 1024px) {
  .page-company__officerPhoto.js-reveal {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }
  .page-company__officerPhoto.js-reveal > * {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }
  .page-company__officerPhoto.js-reveal:before, .page-company__officerPhoto.js-reveal:after {
    content: none !important;
  }
}
.page-company__officerPhotoIn {
  position: relative;
}
.page-company__officerPhotoHover, .page-company__officerPhotoBrush {
  position: absolute;
  top: 0;
  left: -17.9166666667%;
  width: 135.8333333333%;
  height: 100%;
  pointer-events: none;
  opacity: 0;
}
.page-company__officerPhotoHover img, .page-company__officerPhotoBrush img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.page-company__officerPhotoHover {
  transition: opacity 0.3s ease-out;
}
.page-company__officerPhotoBrush {
  clip-path: inset(0 100% 0 0);
  transition: opacity 0.3s ease-out, clip-path 0.25s cubic-bezier(0.19, 0.8, 0.32, 1);
}
.page-company__officerPhotoIn > picture:not(.page-company__officerPhotoHover):not(.page-company__officerPhotoBrush) {
  transition: opacity 0.3s ease-out;
}
@media (min-width: 1025px) and (hover: hover) {
  .page-company__officerPhoto:hover .page-company__officerPhotoHover, .page-company__officerPhoto:hover .page-company__officerPhotoBrush {
    opacity: 1;
  }
  .page-company__officerPhoto:hover .page-company__officerPhotoBrush {
    clip-path: inset(0 0 0 0);
  }
  .page-company__officerPhoto:hover .page-company__officerPhotoIn > picture:not(.page-company__officerPhotoHover):not(.page-company__officerPhotoBrush) {
    opacity: 0;
  }
}
@media (max-width: 1024px) {
  .page-company__officerPhoto:hover .page-company__officerPhotoHover, .page-company__officerPhoto:hover .page-company__officerPhotoBrush {
    opacity: 0;
  }
  .page-company__officerPhoto:hover .page-company__officerPhotoBrush {
    clip-path: inset(0 100% 0 0);
  }
  .page-company__officerPhoto:hover .page-company__officerPhotoIn > picture:not(.page-company__officerPhotoHover):not(.page-company__officerPhotoBrush) {
    opacity: 1;
  }
  .page-company__officerPhoto.is-animated .page-company__officerPhotoHover, .page-company__officerPhoto.is-animated .page-company__officerPhotoBrush {
    opacity: 1;
  }
  .page-company__officerPhoto.is-animated .page-company__officerPhotoBrush {
    clip-path: inset(0 0 0 0);
  }
  .page-company__officerPhoto.is-animated .page-company__officerPhotoIn > picture:not(.page-company__officerPhotoHover):not(.page-company__officerPhotoBrush) {
    opacity: 0;
  }
}
@media (max-width: 767px) {
  .page-company__officer + .page-company__officer .page-company__officerPhoto img {
    margin-bottom: -4.0909090909vw;
  }
}
.page-company__officerBody {
  width: 43.75vw;
}
@media (max-width: 1024px) {
  .page-company__officerBody {
    width: 560px;
  }
}
@media (max-width: 767px) {
  .page-company__officerBody {
    width: 100%;
    margin-top: 9.0909090909vw;
  }
}
.page-company__officerRole {
  font-size: 12px;
  font-size: 1.875vw;
  font-weight: 700;
  line-height: 1.5833333333;
  letter-spacing: 0;
}
@media (max-width: 1024px) {
  .page-company__officerRole {
    font-size: 24px;
    font-size: 1.5rem;
  }
}
@media (max-width: 767px) {
  .page-company__officerRole {
    font-size: 9px;
    font-size: 4.0909090909vw;
  }
}
.page-company__officerEn {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-weight: 700;
  line-height: 1;
  margin-left: 0.3125vw;
  margin-right: 0.625vw;
}
@media (max-width: 1024px) {
  .page-company__officerEn {
    margin-left: 4px;
    margin-right: 8px;
  }
}
@media (max-width: 767px) {
  .page-company__officerEn {
    margin-left: 0.6818181818vw;
    margin-right: 1.1363636364vw;
  }
}
.page-company__officerEn--post {
  margin-right: 0;
}
@media (max-width: 1024px) {
  .page-company__officerEn--post {
    margin-right: 0;
  }
}
@media (max-width: 767px) {
  .page-company__officerEn--post {
    margin-right: 0;
  }
}
.page-company__officerName {
  font-size: 20px;
  font-size: 3.125vw;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.05em;
  margin-top: 0.625vw;
}
@media (max-width: 1024px) {
  .page-company__officerName {
    font-size: 40px;
    font-size: 2.5rem;
    margin-top: 8px;
  }
}
@media (max-width: 767px) {
  .page-company__officerName {
    font-size: 12px;
    font-size: 5.4545454545vw;
    margin-top: 1.8181818182vw;
  }
}
.page-company__officerTxt {
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
  margin-top: 1.875vw;
}
@media (max-width: 1024px) {
  .page-company__officerTxt {
    font-size: 16px;
    font-size: 1rem;
    margin-top: 24px;
  }
}
@media (max-width: 767px) {
  .page-company__officerTxt {
    font-size: 7px;
    font-size: 3.1818181818vw;
    margin-top: 5.4545454545vw;
  }
}
.page-company__officerTxt + .page-company__officerTxt {
  margin-top: 0.625vw;
}
@media (max-width: 1024px) {
  .page-company__officerTxt + .page-company__officerTxt {
    margin-top: 8px;
  }
}
@media (max-width: 767px) {
  .page-company__officerTxt + .page-company__officerTxt {
    margin-top: 1.8181818182vw;
  }
}
.page-company__heading {
  margin-bottom: 6.25vw;
}
@media (max-width: 1024px) {
  .page-company__heading {
    margin-bottom: 80px;
  }
}
@media (max-width: 767px) {
  .page-company__heading {
    margin-bottom: 14.5454545455vw;
  }
}
.page-company__headingEn {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-style: italic;
  color: #1d4ed8;
  font-size: 32px;
  font-size: 5vw;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media (max-width: 1024px) {
  .page-company__headingEn {
    font-size: 64px;
    font-size: 4rem;
  }
}
@media (max-width: 767px) {
  .page-company__headingEn {
    font-size: 20px;
    font-size: 9.0909090909vw;
  }
}
.page-company__headingJa {
  color: #1d4ed8;
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1em;
  margin-top: 1.25vw;
}
@media (max-width: 1024px) {
  .page-company__headingJa {
    font-size: 16px;
    font-size: 1rem;
    margin-top: 16px;
  }
}
@media (max-width: 767px) {
  .page-company__headingJa {
    font-size: 8px;
    font-size: 3.6363636364vw;
    margin-top: 5.4545454545vw;
  }
}
.page-company__profile {
  position: relative;
  margin-top: 21.875vw;
}
@media (max-width: 1024px) {
  .page-company__profile {
    margin-top: 280px;
  }
}
@media (max-width: 767px) {
  .page-company__profile {
    margin-top: 45.4545454545vw;
  }
}
.page-company__decoOfficers2 {
  position: absolute;
  top: 30.15625vw;
  left: -5.078125vw;
  width: 62.1875vw;
  aspect-ratio: 796/402;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/company/deco_mix_05.webp") type("image/webp"), url("img/company/deco_mix_05.png") type("image/png"));
  background-image: image-set(url("img/company/deco_mix_05.webp") type("image/webp"), url("img/company/deco_mix_05.png") type("image/png"));
}
@media (max-width: 1024px) {
  .page-company__decoOfficers2 {
    top: 386px;
    left: -65px;
    width: 796px;
  }
}
@media (max-width: 767px) {
  .page-company__decoOfficers2 {
    top: 177.0454545455vw;
    left: -52.7272727273vw;
    width: 162.9545454545vw;
  }
}
.page-company__decoOfficers3 {
  position: absolute;
  top: 84.375vw;
  left: 12.109375vw;
  width: 62.1875vw;
  aspect-ratio: 796/402;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/company/deco_mix_06.webp") type("image/webp"), url("img/company/deco_mix_06.png") type("image/png"));
  background-image: image-set(url("img/company/deco_mix_06.webp") type("image/webp"), url("img/company/deco_mix_06.png") type("image/png"));
}
@media (max-width: 1024px) {
  .page-company__decoOfficers3 {
    top: 1080px;
    left: 155px;
    width: 796px;
  }
}
@media (max-width: 767px) {
  .page-company__decoOfficers3 {
    top: 384.0909090909vw;
    left: -52.7272727273vw;
    width: 162.9545454545vw;
  }
}
.page-company__decoProfile {
  position: absolute;
  top: -19.296875vw;
  left: 70.390625vw;
  width: 33.28125vw;
  aspect-ratio: 426/487;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/company/deco_splash_03.webp?v=260724") type("image/webp"), url("img/company/deco_splash_03.png?v=260724") type("image/png"));
  background-image: image-set(url("img/company/deco_splash_03.webp?v=260724") type("image/webp"), url("img/company/deco_splash_03.png?v=260724") type("image/png"));
}
@media (max-width: 1024px) {
  .page-company__decoProfile {
    top: -246px;
    left: 901px;
    width: 426px;
  }
}
@media (max-width: 767px) {
  .page-company__decoProfile {
    top: -11.8181818182vw;
    left: 55vw;
    width: 51.5909090909vw;
  }
}
.page-company__decoProfile2 {
  position: absolute;
  opacity: 0.5;
  top: 18.28125vw;
  left: 52.109375vw;
  width: 51.875vw;
  aspect-ratio: 664/242;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/company/deco_splash_02.webp") type("image/webp"), url("img/company/deco_splash_02.png") type("image/png"));
  background-image: image-set(url("img/company/deco_splash_02.webp") type("image/webp"), url("img/company/deco_splash_02.png") type("image/png"));
}
@media (max-width: 1024px) {
  .page-company__decoProfile2 {
    top: 234px;
    left: 667px;
    width: 664px;
  }
}
@media (max-width: 767px) {
  .page-company__decoProfile2 {
    top: 71.8181818182vw;
    left: 37.0454545455vw;
    width: 78.4090909091vw;
  }
}
.page-company__decoProfile3 {
  position: absolute;
  opacity: 0.5;
  top: 68.125vw;
  left: -9.84375vw;
  width: 41.40625vw;
  aspect-ratio: 530/317;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/company/deco_mix_04.webp") type("image/webp"), url("img/company/deco_mix_04.png") type("image/png"));
  background-image: image-set(url("img/company/deco_mix_04.webp") type("image/webp"), url("img/company/deco_mix_04.png") type("image/png"));
}
@media (max-width: 1024px) {
  .page-company__decoProfile3 {
    top: 872px;
    left: -126px;
    width: 530px;
  }
}
@media (max-width: 767px) {
  .page-company__decoProfile3 {
    top: 195.2272727273vw;
    left: 24.7727272727vw;
    width: 65.9090909091vw;
    background-image: -webkit-image-set(url("img/company/deco_mix_03.webp") type("image/webp"), url("img/company/deco_mix_03.png") type("image/png"));
    background-image: image-set(url("img/company/deco_mix_03.webp") type("image/webp"), url("img/company/deco_mix_03.png") type("image/png"));
  }
}
.page-company__decoProfile4 {
  position: absolute;
  top: 117.65625vw;
  left: 60.078125vw;
  width: 33.28125vw;
  aspect-ratio: 426/487;
  z-index: 1;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/company/deco_splash_03_black.webp") type("image/webp"), url("img/company/deco_splash_03_black.png") type("image/png"));
  background-image: image-set(url("img/company/deco_splash_03_black.webp") type("image/webp"), url("img/company/deco_splash_03_black.png") type("image/png"));
}
@media (max-width: 1024px) {
  .page-company__decoProfile4 {
    top: 1506px;
    left: 769px;
    width: 426px;
  }
}
@media (max-width: 767px) {
  .page-company__decoProfile4 {
    top: 371.8181818182vw;
    left: 55vw;
    width: 51.5909090909vw;
  }
}
.page-company__table {
  width: 81.25vw;
  max-width: 100%;
  margin-left: 3.125vw;
}
@media (max-width: 1024px) {
  .page-company__table {
    width: 1040px;
    margin-left: 40px;
  }
}
@media (max-width: 767px) {
  .page-company__table {
    width: 100%;
    margin-left: 0;
  }
}
.page-company__row {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-start;
  align-content: normal;
  flex-direction: row;
  padding: 2.5vw 0;
}
.page-company__row:first-child {
  padding-top: 0;
}
.page-company__row {
  border-bottom: 0.15625vw solid rgba(29, 78, 216, 0.3);
}
@media (max-width: 1024px) {
  .page-company__row {
    padding: 32px 0;
    border-bottom-width: 2px;
  }
}
@media (max-width: 767px) {
  .page-company__row {
    display: block;
    padding: 5.4545454545vw 0;
    border-bottom-width: 0.4545454545vw;
  }
}
.page-company__rowLabel {
  width: 20.078125vw;
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
}
@media (max-width: 1024px) {
  .page-company__rowLabel {
    width: 257px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media (max-width: 767px) {
  .page-company__rowLabel {
    width: 100%;
    font-size: 7px;
    font-size: 3.1818181818vw;
    font-weight: 700;
  }
}
.page-company__rowValue {
  width: calc(100% - 20.078125vw);
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
}
@media (max-width: 1024px) {
  .page-company__rowValue {
    width: calc(100% - 257px);
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media (max-width: 767px) {
  .page-company__rowValue {
    width: 100%;
    font-size: 7px;
    font-size: 3.1818181818vw;
    margin-top: 1.8181818182vw;
  }
}
.page-company__rowValue > p + p {
  margin-top: 0.3125vw;
}
@media (max-width: 1024px) {
  .page-company__rowValue > p + p {
    margin-top: 4px;
  }
}
@media (max-width: 767px) {
  .page-company__rowValue > p + p {
    margin-top: 1.8181818182vw;
  }
}
.page-company__office {
  margin-bottom: 1.25vw;
}
@media (max-width: 1024px) {
  .page-company__office {
    margin-bottom: 16px;
  }
}
@media (max-width: 767px) {
  .page-company__office {
    margin-bottom: 1.8181818182vw;
  }
}
.page-company__office:last-child {
  margin-bottom: 0;
}
.page-company__office p + p {
  margin-top: 0.3125vw;
}
@media (max-width: 1024px) {
  .page-company__office p + p {
    margin-top: 4px;
  }
}
@media (max-width: 767px) {
  .page-company__office p + p {
    margin-top: 0;
  }
}
.page-company__partners {
  position: relative;
  margin-top: 12.34375vw;
}
@media (max-width: 1024px) {
  .page-company__partners {
    margin-top: 158px;
  }
}
@media (max-width: 767px) {
  .page-company__partners {
    margin-top: 18.1818181818vw;
  }
}
.page-company__decoPartners {
  position: absolute;
  top: 2.734375vw;
  left: -7.890625vw;
  width: 76.953125vw;
  aspect-ratio: 985/498;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/company/deco_mix_07.webp") type("image/webp"), url("img/company/deco_mix_07.png") type("image/png"));
  background-image: image-set(url("img/company/deco_mix_07.webp") type("image/webp"), url("img/company/deco_mix_07.png") type("image/png"));
}
@media (max-width: 1024px) {
  .page-company__decoPartners {
    top: 35px;
    left: -101px;
    width: 985px;
  }
}
@media (max-width: 767px) {
  .page-company__decoPartners {
    top: 5.9090909091vw;
    left: -67.7272727273vw;
    width: 162.9545454545vw;
  }
}
.page-company__partnerList {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  -moz-column-gap: 2.265625vw;
       column-gap: 2.265625vw;
  row-gap: 2.03125vw;
}
@media (max-width: 1024px) {
  .page-company__partnerList {
    grid-template-columns: repeat(4, 1fr);
    -moz-column-gap: 29px;
         column-gap: 29px;
    row-gap: 26px;
  }
}
@media (max-width: 767px) {
  .page-company__partnerList {
    grid-template-columns: repeat(3, 1fr);
    -moz-column-gap: 1.3636363636vw;
         column-gap: 1.3636363636vw;
    row-gap: 1.8181818182vw;
  }
}
.page-company__partnerItem {
  aspect-ratio: 2/1;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .page-company__partnerItem {
    display: block;
  }
  .page-company__partnerItem:nth-child(n+9) {
    display: none;
  }
}
.page-company__partnerItem img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
}
.page-company__partnerList.js-pop .page-company__partnerItem {
  transform: translate3d(0, 0, 0) scale(1);
  transform-origin: center bottom;
  clip-path: inset(0%);
  transition: transform 1.1s cubic-bezier(0.22, 0.61, 0.36, 1), clip-path 1.1s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.page-company__partnerList.js-pop:not(.is-inview) .page-company__partnerItem {
  clip-path: inset(30%);
}
.page-company__partnerList.js-pop:not(.is-inview) .page-company__partnerItem:nth-child(4n+1) {
  transform: translate3d(0, 120%, 0) scale(0);
}
.page-company__partnerList.js-pop:not(.is-inview) .page-company__partnerItem:nth-child(4n+2) {
  transform: translate3d(0, 90%, 0) scale(0);
}
.page-company__partnerList.js-pop:not(.is-inview) .page-company__partnerItem:nth-child(4n+3) {
  transform: translate3d(0, 60%, 0) scale(0);
}
.page-company__partnerList.js-pop:not(.is-inview) .page-company__partnerItem:nth-child(4n) {
  transform: translate3d(0, 30%, 0) scale(0);
}
@media (prefers-reduced-motion: reduce) {
  .page-company__partnerList.js-pop .page-company__partnerItem, .page-company__partnerList.js-pop:not(.is-inview) .page-company__partnerItem {
    transform: none;
    clip-path: none;
    transition: none;
  }
}
.page-company__access {
  position: relative;
  margin-top: 21.875vw;
}
@media (max-width: 1024px) {
  .page-company__access {
    margin-top: 280px;
  }
}
@media (max-width: 767px) {
  .page-company__access {
    margin-top: 45.4545454545vw;
  }
}
.page-company__decoAccess {
  position: absolute;
  top: -10.9375vw;
  left: 66.71875vw;
  width: 36.5625vw;
  aspect-ratio: 468/281;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/company/deco_splash_01.webp?v=260724") type("image/webp"), url("img/company/deco_splash_01.png?v=260724") type("image/png"));
  background-image: image-set(url("img/company/deco_splash_01.webp?v=260724") type("image/webp"), url("img/company/deco_splash_01.png?v=260724") type("image/png"));
}
@media (max-width: 1024px) {
  .page-company__decoAccess {
    top: -140px;
    left: 854px;
    width: 468px;
  }
}
@media (max-width: 767px) {
  .page-company__decoAccess {
    top: -22.7272727273vw;
    left: 40vw;
    width: 70.2272727273vw;
  }
}
.page-company__decoAccess2 {
  position: absolute;
  bottom: -26.71875vw;
  left: 42.1875vw;
  width: 57.734375vw;
  aspect-ratio: 739/419;
  z-index: 1;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/company/deco_splash_04.webp") type("image/webp"), url("img/company/deco_splash_04.png") type("image/png"));
  background-image: image-set(url("img/company/deco_splash_04.webp") type("image/webp"), url("img/company/deco_splash_04.png") type("image/png"));
}
@media (max-width: 1024px) {
  .page-company__decoAccess2 {
    bottom: -377px;
    left: 550px;
    width: 721px;
  }
}
@media (max-width: 767px) {
  .page-company__decoAccess2 {
    bottom: -45.6818181818vw;
    left: 21.1363636364vw;
    width: 76.8181818182vw;
  }
}
.page-company__access .page-company__heading {
  margin-bottom: 4.375vw;
}
@media (max-width: 1024px) {
  .page-company__access .page-company__heading {
    margin-bottom: 56px;
  }
}
@media (max-width: 767px) {
  .page-company__access .page-company__heading {
    margin-bottom: 6.8181818182vw;
  }
}
@media (max-width: 767px) {
  .page-company__map {
    margin-left: -7.2727272727vw;
    margin-right: -7.2727272727vw;
  }
}
.page-company__map iframe {
  display: block;
  width: 100%;
  height: 25vw;
  border: 0;
}
@media (max-width: 1024px) {
  .page-company__map iframe {
    height: 320px;
  }
}
@media (max-width: 767px) {
  .page-company__map iframe {
    height: 54.5454545455vw;
  }
}
.page-company__accessCols {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-start;
  align-content: normal;
  flex-direction: row;
  margin-top: 3.125vw;
}
@media (max-width: 1024px) {
  .page-company__accessCols {
    margin-top: 40px;
  }
}
@media (max-width: 767px) {
  .page-company__accessCols {
    display: block;
    margin-top: 9.0909090909vw;
  }
}
.page-company__accessCol {
  width: 43.75vw;
}
@media (max-width: 1024px) {
  .page-company__accessCol {
    width: 560px;
  }
}
@media (max-width: 767px) {
  .page-company__accessCol {
    width: 100%;
    margin-bottom: 7.2727272727vw;
  }
  .page-company__accessCol:last-child {
    margin-bottom: 0;
  }
}
.page-company__accessLabel {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  color: #1d4ed8;
  font-size: 12px;
  font-size: 1.875vw;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media (max-width: 1024px) {
  .page-company__accessLabel {
    font-size: 24px;
    font-size: 1.5rem;
  }
}
@media (max-width: 767px) {
  .page-company__accessLabel {
    font-size: 9px;
    font-size: 4.0909090909vw;
  }
}
.page-company__accessTxt {
  max-width: 100%;
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
  margin-top: 1.875vw;
}
@media (max-width: 1024px) {
  .page-company__accessTxt {
    width: 440px;
    font-size: 18px;
    font-size: 1.125rem;
    margin-top: 24px;
  }
}
@media (max-width: 767px) {
  .page-company__accessTxt {
    width: 100%;
    font-size: 7px;
    font-size: 3.1818181818vw;
    margin-top: 3.6363636364vw;
  }
}
.page-company__accessTxt + .page-company__accessTxt {
  margin-top: 0.625vw;
}
@media (max-width: 1024px) {
  .page-company__accessTxt + .page-company__accessTxt {
    margin-top: 8px;
  }
}
@media (max-width: 767px) {
  .page-company__accessTxt + .page-company__accessTxt {
    margin-top: 0.9090909091vw;
  }
}
.page-company__accessCol:last-child .page-company__accessTxt {
  width: auto;
  margin-top: 1.25vw;
}
@media (max-width: 1024px) {
  .page-company__accessCol:last-child .page-company__accessTxt {
    margin-top: 16px;
  }
}
@media (max-width: 767px) {
  .page-company__accessCol:last-child .page-company__accessTxt {
    margin-top: 3.6363636364vw;
  }
}
.page-company__recruit {
  margin-top: 21.25vw;
}
@media (max-width: 1024px) {
  .page-company__recruit {
    margin-top: 272px;
  }
}
@media (max-width: 767px) {
  .page-company__recruit {
    margin-top: 45.4545454545vw;
  }
}

/* layout > page > mission
============================================================================ */
.page-mission {
  padding-top: 0;
  padding-bottom: 0;
}
.page-mission__inner {
  position: relative;
  z-index: 1;
  max-width: 93.75vw;
  width: 100%;
  margin: 0 auto;
  padding: 0 3.125vw;
}
@media (max-width: 1024px) {
  .page-mission__inner {
    max-width: 1200px;
    padding: 0 40px;
  }
}
@media (max-width: 767px) {
  .page-mission__inner {
    padding: 0 7.2727272727vw;
  }
}
.page-mission__leadTtl {
  width: 45.703125vw;
}
@media (max-width: 1024px) {
  .page-mission__leadTtl {
    width: 585px;
  }
}
@media (max-width: 767px) {
  .page-mission__leadTtl {
    width: 83.1818181818vw;
  }
}
.page-mission__leadTtl img {
  display: block;
  width: 100%;
  height: auto;
}
.page-mission__leadTxt {
  width: 50vw;
  max-width: 100%;
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
  margin-top: 2.1875vw;
}
@media (max-width: 1024px) {
  .page-mission__leadTxt {
    width: 640px;
    font-size: 18px;
    font-size: 1.125rem;
    margin-top: 28px;
  }
}
@media (max-width: 767px) {
  .page-mission__leadTxt {
    width: 100%;
    font-size: 7px;
    font-size: 3.1818181818vw;
    margin-top: 3.6363636364vw;
  }
}
.page-mission__leadTxt + .page-mission__leadTxt {
  margin-top: 1.25vw;
}
@media (max-width: 1024px) {
  .page-mission__leadTxt + .page-mission__leadTxt {
    margin-top: 16px;
  }
}
@media (max-width: 767px) {
  .page-mission__leadTxt + .page-mission__leadTxt {
    margin-top: 1.8181818182vw;
  }
}
.page-mission__heading {
  position: relative;
  z-index: 1;
}
.page-mission__headingEn {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-style: italic;
  color: #1d4ed8;
  font-size: 32px;
  font-size: 5vw;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media (max-width: 1024px) {
  .page-mission__headingEn {
    font-size: 64px;
    font-size: 4rem;
  }
}
@media (max-width: 767px) {
  .page-mission__headingEn {
    font-size: 20px;
    font-size: 9.0909090909vw;
  }
}
.page-mission__headingJa {
  color: #1d4ed8;
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1em;
  margin-top: 1.25vw;
}
@media (max-width: 1024px) {
  .page-mission__headingJa {
    font-size: 16px;
    font-size: 1rem;
    margin-top: 16px;
  }
}
@media (max-width: 767px) {
  .page-mission__headingJa {
    font-size: 8px;
    font-size: 3.6363636364vw;
    margin-top: 5.4545454545vw;
  }
}
.page-mission__vision {
  position: relative;
  margin-top: 21.875vw;
}
@media (max-width: 1024px) {
  .page-mission__vision {
    margin-top: 280px;
  }
}
@media (max-width: 767px) {
  .page-mission__vision {
    margin-top: 63.6363636364vw;
  }
}
.page-mission__decoVision {
  position: absolute;
  top: -27.890625vw;
  left: 29.21875vw;
  width: 70.78125vw;
  aspect-ratio: 906/795;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/mission/deco_spray_01.webp") type("image/webp"), url("img/mission/deco_spray_01.png") type("image/png"));
  background-image: image-set(url("img/mission/deco_spray_01.webp") type("image/webp"), url("img/mission/deco_spray_01.png") type("image/png"));
}
@media (max-width: 1024px) {
  .page-mission__decoVision {
    top: -357px;
    left: 374px;
    width: 906px;
  }
}
@media (max-width: 767px) {
  .page-mission__decoVision {
    top: -82.7272727273vw;
    left: 0;
    width: 100vw;
    aspect-ratio: 440/532;
    background-image: -webkit-image-set(url("img/mission/deco_spray_01_sp.webp") type("image/webp"), url("img/mission/deco_spray_01_sp.png") type("image/png"));
    background-image: image-set(url("img/mission/deco_spray_01_sp.webp") type("image/webp"), url("img/mission/deco_spray_01_sp.png") type("image/png"));
  }
}
.page-mission__visionRow {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-start;
  align-content: normal;
  flex-direction: row;
  margin-top: 5vw;
}
@media (max-width: 1024px) {
  .page-mission__visionRow {
    margin-top: 64px;
  }
}
@media (max-width: 767px) {
  .page-mission__visionRow {
    display: block;
    margin-top: 14.5454545455vw;
  }
}
.page-mission__visionArt {
  position: relative;
  width: 41.09375vw;
  aspect-ratio: 526/280;
}
@media (max-width: 1024px) {
  .page-mission__visionArt {
    width: 526px;
  }
}
@media (max-width: 767px) {
  .page-mission__visionArt {
    width: 100%;
  }
}
.page-mission__visionArt picture {
  position: absolute;
  top: -0.3571428571%;
  left: -0.1901140684%;
  width: 100.3802281369%;
}
.page-mission__visionArt img {
  display: block;
  width: 100%;
  height: auto;
}
.page-mission__artStrokes {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  -webkit-mask: url("img/mission/txt_storymakers_mask.png?v=260724") no-repeat center/100% 100%;
  mask: url("img/mission/txt_storymakers_mask.png?v=260724") no-repeat center/100% 100%;
}
.page-mission__artStroke {
  position: absolute;
  width: 128.71%;
  aspect-ratio: 677/293;
  background: no-repeat center/100% 100%;
  clip-path: polygon(-17.2% -150%, 4.36% 250%, -500% 250%, -500% -150%);
}
@media (max-width: 767px) {
  .page-mission__artStroke {
    width: 125.21%;
    aspect-ratio: 4708/2233;
  }
}
.page-mission__artStroke--1 {
  top: -28.58%;
  left: -73.77%;
  background-image: -webkit-image-set(url("img/mission/brush_story_01.webp") type("image/webp"), url("img/mission/brush_story_01.png") type("image/png"));
  background-image: image-set(url("img/mission/brush_story_01.webp") type("image/webp"), url("img/mission/brush_story_01.png") type("image/png"));
}
@media (max-width: 767px) {
  .page-mission__artStroke--1 {
    top: -32.48%;
    left: -72.95%;
    background-image: -webkit-image-set(url("img/mission/brush_story_01_sp.webp") type("image/webp"), url("img/mission/brush_story_01_sp.png") type("image/png"));
    background-image: image-set(url("img/mission/brush_story_01_sp.webp") type("image/webp"), url("img/mission/brush_story_01_sp.png") type("image/png"));
  }
}
.page-mission__artStroke--2 {
  top: -7.86%;
  left: -51.72%;
  background-image: -webkit-image-set(url("img/mission/brush_story_02.webp") type("image/webp"), url("img/mission/brush_story_02.png") type("image/png"));
  background-image: image-set(url("img/mission/brush_story_02.webp") type("image/webp"), url("img/mission/brush_story_02.png") type("image/png"));
  clip-path: polygon(95.64% -150%, 117.2% 250%, 600% 250%, 600% -150%);
}
@media (max-width: 767px) {
  .page-mission__artStroke--2 {
    top: -11.74%;
    left: -50.88%;
    background-image: -webkit-image-set(url("img/mission/brush_story_02_sp.webp") type("image/webp"), url("img/mission/brush_story_02_sp.png") type("image/png"));
    background-image: image-set(url("img/mission/brush_story_02_sp.webp") type("image/webp"), url("img/mission/brush_story_02_sp.png") type("image/png"));
  }
}
.page-mission__artStroke--3 {
  top: 22.86%;
  left: -40.31%;
  background-image: -webkit-image-set(url("img/mission/brush_story_03.webp") type("image/webp"), url("img/mission/brush_story_03.png") type("image/png"));
  background-image: image-set(url("img/mission/brush_story_03.webp") type("image/webp"), url("img/mission/brush_story_03.png") type("image/png"));
}
@media (max-width: 767px) {
  .page-mission__artStroke--3 {
    top: 18.99%;
    left: -39.47%;
    background-image: -webkit-image-set(url("img/mission/brush_story_03_sp.webp") type("image/webp"), url("img/mission/brush_story_03_sp.png") type("image/png"));
    background-image: image-set(url("img/mission/brush_story_03_sp.webp") type("image/webp"), url("img/mission/brush_story_03_sp.png") type("image/png"));
  }
}
.page-mission__artStroke--4 {
  top: 42.86%;
  left: -10.65%;
  background-image: -webkit-image-set(url("img/mission/brush_story_04.webp") type("image/webp"), url("img/mission/brush_story_04.png") type("image/png"));
  background-image: image-set(url("img/mission/brush_story_04.webp") type("image/webp"), url("img/mission/brush_story_04.png") type("image/png"));
  clip-path: polygon(95.64% -150%, 117.2% 250%, 600% 250%, 600% -150%);
}
@media (max-width: 767px) {
  .page-mission__artStroke--4 {
    top: 39.03%;
    left: -9.79%;
    background-image: -webkit-image-set(url("img/mission/brush_story_04_sp.webp") type("image/webp"), url("img/mission/brush_story_04_sp.png") type("image/png"));
    background-image: image-set(url("img/mission/brush_story_04_sp.webp") type("image/webp"), url("img/mission/brush_story_04_sp.png") type("image/png"));
  }
}
.page-mission__visionArt.js-brush-reveal.is-inview .page-mission__artStroke--1 {
  animation: brushGenS1 var(--sm-dur1, 0.24s) var(--sm-ease1, ease) var(--sm-delay1, 0.3s) forwards;
}
.page-mission__visionArt.js-brush-reveal.is-inview .page-mission__artStroke--2 {
  animation: brushGenS2 var(--sm-dur2, 0.3s) var(--sm-ease2, ease) var(--sm-delay2, 0.73s) forwards;
}
.page-mission__visionArt.js-brush-reveal.is-inview .page-mission__artStroke--3 {
  animation: brushGenS3 var(--sm-dur3, 0.32s) var(--sm-ease3, ease) var(--sm-delay3, 1.15s) forwards;
}
.page-mission__visionArt.js-brush-reveal.is-inview .page-mission__artStroke--4 {
  animation: brushGenS4 var(--sm-dur4, 0.32s) var(--sm-ease4, ease) var(--sm-delay4, 1.44s) forwards;
}
@media (max-width: 767px) {
  .page-mission__visionArt.js-brush-reveal.is-inview picture {
    animation: lineArtHide 0.3s linear 1.7s forwards;
  }
}
@keyframes lineArtHide {
  to {
    opacity: 0;
  }
}
.page-mission__visionTxt {
  width: 39.609375vw;
  margin-left: 6.796875vw;
  margin-top: 6.875vw;
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
}
@media (max-width: 1024px) {
  .page-mission__visionTxt {
    width: 507px;
    margin-left: 87px;
    margin-top: 88px;
  }
}
@media (max-width: 767px) {
  .page-mission__visionTxt {
    width: 100%;
    margin-left: 0;
    margin-top: 9.3181818182vw;
    font-size: 7px;
    font-size: 3.1818181818vw;
  }
}
.page-mission__decoSplash01 {
  position: absolute;
  top: 43.28125vw;
  left: 46.796875vw;
  width: 51.875vw;
  aspect-ratio: 664/242;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/common/deco_splash_29.webp") type("image/webp"), url("img/common/deco_splash_29.png") type("image/png"));
  background-image: image-set(url("img/common/deco_splash_29.webp") type("image/webp"), url("img/common/deco_splash_29.png") type("image/png"));
}
@media (max-width: 1024px) {
  .page-mission__decoSplash01 {
    top: 554px;
    left: 599px;
    width: 664px;
  }
}
@media (max-width: 767px) {
  .page-mission__decoSplash01 {
    top: 135.4545454545vw;
    left: 37.2727272727vw;
    width: 78.4090909091vw;
  }
}
.page-mission__decoSpray02 {
  position: absolute;
  top: 34.84375vw;
  left: -14.140625vw;
  width: 76.953125vw;
  aspect-ratio: 985/498;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/mission/deco_spray_02.webp") type("image/webp"), url("img/mission/deco_spray_02.png") type("image/png"));
  background-image: image-set(url("img/mission/deco_spray_02.webp") type("image/webp"), url("img/mission/deco_spray_02.png") type("image/png"));
}
@media (max-width: 1024px) {
  .page-mission__decoSpray02 {
    top: 446px;
    left: -181px;
    width: 985px;
  }
}
@media (max-width: 767px) {
  .page-mission__decoSpray02 {
    top: 121.8181818182vw;
    left: -77.0454545455vw;
    width: 162.9545454545vw;
  }
}
.page-mission__value {
  position: relative;
  margin-top: 22.8125vw;
}
@media (max-width: 1024px) {
  .page-mission__value {
    margin-top: 292px;
  }
}
@media (max-width: 767px) {
  .page-mission__value {
    margin-top: 45.4545454545vw;
  }
}
.page-mission__valueList {
  margin-top: 5vw;
}
@media (max-width: 1024px) {
  .page-mission__valueList {
    margin-top: 64px;
  }
}
@media (max-width: 767px) {
  .page-mission__valueList {
    margin-top: 14.5454545455vw;
  }
}
.page-mission__valueItem {
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  min-height: 15vw;
}
@media (max-width: 1024px) {
  .page-mission__valueItem {
    min-height: 192px;
  }
}
@media (max-width: 767px) {
  .page-mission__valueItem {
    display: block;
    min-height: 0;
    padding: 0;
  }
}
@media (max-width: 767px) {
  .page-mission__valueItem + .page-mission__valueItem {
    margin-top: 9.0909090909vw;
  }
}
.page-mission__valueHead {
  width: 52.03125vw;
  padding-left: 2.5vw;
}
@media (max-width: 1024px) {
  .page-mission__valueHead {
    width: 666px;
    padding-left: 32px;
  }
}
@media (max-width: 767px) {
  .page-mission__valueHead {
    position: relative;
    width: auto;
    margin: 0 -2.7272727273vw;
    padding: 5.4545454545vw 2.7272727273vw;
  }
  .page-mission__valueHead:before, .page-mission__valueHead:after {
    content: "";
    position: absolute;
    left: -0.4545454545vw;
    width: calc(100% + 0.9090909091vw);
    height: 2.7272727273vw;
    pointer-events: none;
  }
  .page-mission__valueHead:before {
    top: -0.4545454545vw;
    background: url("img/common/mark_corner_tl.svg") left top/2.7272727273vw 2.7272727273vw no-repeat, url("img/common/mark_corner_tr.svg") right top/2.7272727273vw 2.7272727273vw no-repeat;
  }
  .page-mission__valueHead:after {
    bottom: -0.4545454545vw;
    background: url("img/common/mark_corner_bl.svg") left bottom/2.7272727273vw 2.7272727273vw no-repeat, url("img/common/mark_corner_br.svg") right bottom/2.7272727273vw 2.7272727273vw no-repeat;
  }
}
.page-mission__valueEn {
  position: relative;
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-style: italic;
  color: #020617;
  font-size: 32px;
  font-size: 5vw;
  font-weight: 600;
  line-height: 1;
}
@media (max-width: 1024px) {
  .page-mission__valueEn {
    font-size: 64px;
    font-size: 4rem;
  }
}
@media (max-width: 767px) {
  .page-mission__valueEn {
    font-size: 20px;
    font-size: 9.0909090909vw;
  }
}
.page-mission__valueItem--single .page-mission__valueHead {
  padding-left: 0;
}
@media (max-width: 1024px) {
  .page-mission__valueItem--single .page-mission__valueHead {
    padding-left: 0;
  }
}
@media (max-width: 767px) {
  .page-mission__valueItem--single .page-mission__valueHead {
    padding-left: 2.7272727273vw;
  }
}
.page-mission__valueItem--single .page-mission__valueEn {
  color: #1d4ed8;
}
@media (max-width: 767px) {
  .page-mission__valueItem--single .page-mission__valueEn {
    color: #020617;
  }
}
.page-mission__valueItem--single .page-mission__valueJa, .page-mission__valueItem--single .page-mission__valueTxt {
  display: none;
}
@media (max-width: 767px) {
  .page-mission__valueItem--single .page-mission__valueJa, .page-mission__valueItem--single .page-mission__valueTxt {
    display: block;
  }
}
.page-mission__valueEnTxt {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  border: 0;
  white-space: nowrap;
}
.page-mission__valueEnArt {
  display: block;
  position: relative;
  height: 5vw;
  opacity: 0;
}
@media (max-width: 1024px) {
  .page-mission__valueEnArt {
    height: 64px;
  }
}
@media (max-width: 767px) {
  .page-mission__valueEnArt {
    height: 9.0909090909vw;
  }
}
.page-mission__valueEnArt img {
  position: absolute;
  display: block;
  height: auto;
}
.page-mission__valueEnArt--blue {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 1;
}
.page-mission__valueJa picture {
  display: block;
  position: relative;
  height: 3.75vw;
}
@media (max-width: 1024px) {
  .page-mission__valueJa picture {
    height: 48px;
  }
}
@media (max-width: 767px) {
  .page-mission__valueJa picture {
    height: 6.5909090909vw;
  }
}
.page-mission__valueJa img {
  position: absolute;
  display: block;
  height: auto;
}
.page-mission__valueItem:nth-child(1) .page-mission__valueEnArt img {
  width: 37.8359375vw;
  left: 0.359375vw;
  top: 0.53125vw;
}
@media (max-width: 1024px) {
  .page-mission__valueItem:nth-child(1) .page-mission__valueEnArt img {
    width: 484.3px;
    left: 4.6px;
    top: 6.8px;
  }
}
@media (max-width: 767px) {
  .page-mission__valueItem:nth-child(1) .page-mission__valueEnArt img {
    width: 68.7926136364vw;
    left: 0.6534090909vw;
    top: 0.9659090909vw;
  }
}
.page-mission__valueItem:nth-child(2) .page-mission__valueEnArt img {
  width: 19.3984375vw;
  left: 0.3671875vw;
  top: 0.78125vw;
}
@media (max-width: 1024px) {
  .page-mission__valueItem:nth-child(2) .page-mission__valueEnArt img {
    width: 248.3px;
    left: 4.7px;
    top: 10px;
  }
}
@media (max-width: 767px) {
  .page-mission__valueItem:nth-child(2) .page-mission__valueEnArt img {
    width: 35.2698863636vw;
    left: 0.6676136364vw;
    top: 1.4204545455vw;
  }
}
.page-mission__valueItem:nth-child(3) .page-mission__valueEnArt img {
  width: 29.6875vw;
  left: 0.359375vw;
  top: 0.4921875vw;
}
@media (max-width: 1024px) {
  .page-mission__valueItem:nth-child(3) .page-mission__valueEnArt img {
    width: 380px;
    left: 4.6px;
    top: 6.3px;
  }
}
@media (max-width: 767px) {
  .page-mission__valueItem:nth-child(3) .page-mission__valueEnArt img {
    width: 53.9772727273vw;
    left: 0.6534090909vw;
    top: 0.8948863636vw;
  }
}
.page-mission__valueItem:nth-child(4) .page-mission__valueEnArt img {
  width: 44.1640625vw;
  left: 0.3671875vw;
  top: 0.734375vw;
}
@media (max-width: 1024px) {
  .page-mission__valueItem:nth-child(4) .page-mission__valueEnArt img {
    width: 565.3px;
    left: 4.7px;
    top: 9.4px;
  }
}
@media (max-width: 767px) {
  .page-mission__valueItem:nth-child(4) .page-mission__valueEnArt img {
    width: 80.2982954545vw;
    left: 0.6676136364vw;
    top: 1.3352272727vw;
  }
}
.page-mission__valueItem:nth-child(5) .page-mission__valueEnArt img {
  width: 41.640625vw;
  left: 0.359375vw;
  top: 0.4921875vw;
}
@media (max-width: 1024px) {
  .page-mission__valueItem:nth-child(5) .page-mission__valueEnArt img {
    width: 533px;
    left: 4.6px;
    top: 6.3px;
  }
}
@media (max-width: 767px) {
  .page-mission__valueItem:nth-child(5) .page-mission__valueEnArt img {
    width: 75.7102272727vw;
    left: 0.6534090909vw;
    top: 0.8948863636vw;
  }
}
.page-mission__valueItem:nth-child(1) .page-mission__valueJa img {
  width: 15.5234375vw;
  left: 0.0625vw;
  top: 0.375vw;
}
@media (max-width: 1024px) {
  .page-mission__valueItem:nth-child(1) .page-mission__valueJa img {
    width: 198.7px;
    left: 0.8px;
    top: 4.8px;
  }
}
@media (max-width: 767px) {
  .page-mission__valueItem:nth-child(1) .page-mission__valueJa img {
    width: 27.0954545455vw;
    left: 0.1090909091vw;
    top: 0.6545454545vw;
  }
}
.page-mission__valueItem:nth-child(2) .page-mission__valueJa img {
  width: 15.6484375vw;
  left: 0.1484375vw;
  top: 0.375vw;
}
@media (max-width: 1024px) {
  .page-mission__valueItem:nth-child(2) .page-mission__valueJa img {
    width: 200.3px;
    left: 1.9px;
    top: 4.8px;
  }
}
@media (max-width: 767px) {
  .page-mission__valueItem:nth-child(2) .page-mission__valueJa img {
    width: 27.3136363636vw;
    left: 0.2590909091vw;
    top: 0.6545454545vw;
  }
}
.page-mission__valueItem:nth-child(3) .page-mission__valueJa img {
  width: 18.9296875vw;
  left: 0.109375vw;
  top: 0.3671875vw;
}
@media (max-width: 1024px) {
  .page-mission__valueItem:nth-child(3) .page-mission__valueJa img {
    width: 242.3px;
    left: 1.4px;
    top: 4.7px;
  }
}
@media (max-width: 767px) {
  .page-mission__valueItem:nth-child(3) .page-mission__valueJa img {
    width: 33.0409090909vw;
    left: 0.1909090909vw;
    top: 0.6409090909vw;
  }
}
.page-mission__valueItem:nth-child(4) .page-mission__valueJa img {
  width: 31.328125vw;
  left: 0.1796875vw;
  top: 0.375vw;
}
@media (max-width: 1024px) {
  .page-mission__valueItem:nth-child(4) .page-mission__valueJa img {
    width: 401px;
    left: 2.3px;
    top: 4.8px;
  }
}
@media (max-width: 767px) {
  .page-mission__valueItem:nth-child(4) .page-mission__valueJa img {
    width: 54.6818181818vw;
    left: 0.3136363636vw;
    top: 0.6545454545vw;
  }
}
.page-mission__valueItem:nth-child(5) .page-mission__valueJa img {
  width: 28.4375vw;
  left: 0.03125vw;
  top: 0.421875vw;
}
@media (max-width: 1024px) {
  .page-mission__valueItem:nth-child(5) .page-mission__valueJa img {
    width: 364px;
    left: 0.4px;
    top: 5.4px;
  }
}
@media (max-width: 767px) {
  .page-mission__valueItem:nth-child(5) .page-mission__valueJa img {
    width: 49.6363636364vw;
    left: 0.0545454545vw;
    top: 0.7363636364vw;
  }
}
.page-mission__valueSpray {
  position: absolute;
  top: -2.109375vw;
  left: -8.75vw;
  width: 101.875vw;
  height: calc(100% + 4.0625vw);
  z-index: 2;
  pointer-events: none;
  background: no-repeat center/100% 100%;
  background-image: -webkit-image-set(url("img/mission/brush_value.webp") type("image/webp"), url("img/mission/brush_value.png") type("image/png"));
  background-image: image-set(url("img/mission/brush_value.webp") type("image/webp"), url("img/mission/brush_value.png") type("image/png"));
  clip-path: inset(0 100% 0 0);
}
@media (max-width: 1024px) {
  .page-mission__valueSpray {
    top: -27px;
    left: -112px;
    width: 1304px;
    height: calc(100% + 52px);
  }
}
@media (max-width: 767px) {
  .page-mission__valueSpray {
    top: -3.6363636364vw;
    left: -10vw;
    width: calc(100% + 20vw);
    height: calc(100% + 7.2727272727vw);
  }
}
.page-mission__valueItem.js-spray-reveal .page-mission__valueEn {
  color: #1d4ed8;
}
.page-mission__valueItem.js-spray-reveal .page-mission__valueJa,
.page-mission__valueItem.js-spray-reveal .page-mission__valueTxt {
  opacity: 0;
}
.page-mission__valueItem.js-spray-reveal:before, .page-mission__valueItem.js-spray-reveal:after {
  opacity: 0;
}
.page-mission__valueItem.js-spray-reveal .page-mission__valueHead:before, .page-mission__valueItem.js-spray-reveal .page-mission__valueHead:after {
  opacity: 0;
}
.page-mission__valueItem.js-spray-reveal.is-inview .page-mission__valueSpray {
  animation: sprayWipe 1.1s cubic-bezier(0.77, 0, 0.18, 1) forwards;
}
.page-mission__valueItem.js-spray-reveal.is-inview .page-mission__valueEnArt {
  animation: revealShow 0.2s linear 0.55s forwards;
}
.page-mission__valueItem.js-spray-reveal.is-inview .page-mission__valueEnArt--blue {
  animation: revealHide 0.2s linear 0.55s forwards;
}
.page-mission__valueItem.js-spray-reveal.is-inview .page-mission__valueJa,
.page-mission__valueItem.js-spray-reveal.is-inview .page-mission__valueTxt {
  animation: revealShow 0.2s linear 0.55s forwards;
}
.page-mission__valueItem.js-spray-reveal.is-inview:before, .page-mission__valueItem.js-spray-reveal.is-inview:after {
  animation: revealShow 0.2s linear 0.55s forwards;
}
.page-mission__valueItem.js-spray-reveal.is-inview .page-mission__valueHead:before, .page-mission__valueItem.js-spray-reveal.is-inview .page-mission__valueHead:after {
  animation: revealShow 0.2s linear 0.55s forwards;
}
.page-mission__valueItem--single.js-spray-reveal.is-inview .page-mission__valueEn {
  animation: none;
}
@media (max-width: 767px) {
  .page-mission__valueItem--single.js-spray-reveal.is-inview .page-mission__valueEn {
    animation: sprayEnSwap 0.2s linear 0.55s forwards;
  }
}
.page-mission__valueJa {
  color: #1d4ed8;
  font-size: 20px;
  font-size: 3.125vw;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.02em;
  margin-top: 1.25vw;
}
@media (max-width: 1024px) {
  .page-mission__valueJa {
    font-size: 40px;
    font-size: 2.5rem;
    margin-top: 16px;
  }
}
@media (max-width: 767px) {
  .page-mission__valueJa {
    font-size: 12px;
    font-size: 5.4545454545vw;
    margin-top: 1.8181818182vw;
  }
}
.page-mission__valueTxt {
  width: 32.96875vw;
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
}
@media (max-width: 1024px) {
  .page-mission__valueTxt {
    width: 422px;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .page-mission__valueTxt {
    width: 100%;
    font-size: 7px;
    font-size: 3.1818181818vw;
    margin-top: 5.4545454545vw;
    padding-left: 0;
  }
}
.page-mission__valueItem--marked:before, .page-mission__valueItem--marked:after {
  content: "";
  position: absolute;
  left: -2px;
  width: calc(100% + 4px);
  height: 12px;
  pointer-events: none;
}
@media (max-width: 767px) {
  .page-mission__valueItem--marked:before, .page-mission__valueItem--marked:after {
    display: none;
  }
}
.page-mission__valueItem--marked:before {
  top: -2px;
  background: url("img/common/mark_corner_tl.svg") left top/12px 12px no-repeat, url("img/common/mark_corner_tr.svg") right top/12px 12px no-repeat, url("img/common/mark_center_t.svg") left 48.90625vw top/20px 12px no-repeat;
}
@media (max-width: 1024px) {
  .page-mission__valueItem--marked:before {
    background: url("img/common/mark_corner_tl.svg") left top/12px 12px no-repeat, url("img/common/mark_corner_tr.svg") right top/12px 12px no-repeat, url("img/common/mark_center_t.svg") left 626px top/20px 12px no-repeat;
  }
}
.page-mission__valueItem--marked:after {
  bottom: -2px;
  background: url("img/common/mark_corner_bl.svg") left bottom/12px 12px no-repeat, url("img/common/mark_corner_br.svg") right bottom/12px 12px no-repeat, url("img/common/mark_center_b.svg") left 48.90625vw bottom/20px 12px no-repeat;
}
@media (max-width: 1024px) {
  .page-mission__valueItem--marked:after {
    background: url("img/common/mark_corner_bl.svg") left bottom/12px 12px no-repeat, url("img/common/mark_corner_br.svg") right bottom/12px 12px no-repeat, url("img/common/mark_center_b.svg") left 626px bottom/20px 12px no-repeat;
  }
}
.page-mission__decoSplash02 {
  position: absolute;
  bottom: -18.4375vw;
  left: -8.046875vw;
  width: 51.875vw;
  aspect-ratio: 664/242;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/mission/deco_splash_29b.webp") type("image/webp"), url("img/mission/deco_splash_29b.png") type("image/png"));
  background-image: image-set(url("img/mission/deco_splash_29b.webp") type("image/webp"), url("img/mission/deco_splash_29b.png") type("image/png"));
}
@media (max-width: 1024px) {
  .page-mission__decoSplash02 {
    bottom: -236px;
    left: -103px;
    width: 664px;
  }
}
@media (max-width: 767px) {
  .page-mission__decoSplash02 {
    top: 317.7272727273vw;
    bottom: auto;
    left: 0;
    width: 88.1818181818vw;
  }
}
.page-mission__decoSpray03 {
  position: absolute;
  top: 78.75vw;
  left: 24.6875vw;
  width: 76.953125vw;
  aspect-ratio: 985/498;
  z-index: 0;
  pointer-events: none;
  background: no-repeat center/contain;
  background-image: -webkit-image-set(url("img/mission/deco_spray_02.webp") type("image/webp"), url("img/mission/deco_spray_02.png") type("image/png"));
  background-image: image-set(url("img/mission/deco_spray_02.webp") type("image/webp"), url("img/mission/deco_spray_02.png") type("image/png"));
}
@media (max-width: 1024px) {
  .page-mission__decoSpray03 {
    top: 1008px;
    left: 316px;
    width: 985px;
  }
}
@media (max-width: 767px) {
  .page-mission__decoSpray03 {
    top: 306.5909090909vw;
    left: -40.6818181818vw;
    width: 162.9545454545vw;
  }
}
.page-mission__recruit {
  margin-top: 21.875vw;
}
@media (max-width: 1024px) {
  .page-mission__recruit {
    margin-top: 280px;
  }
}
@media (max-width: 767px) {
  .page-mission__recruit {
    margin-top: 45.4545454545vw;
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-mission__artStroke {
    clip-path: none !important;
    animation: none !important;
  }
}
@media (prefers-reduced-motion: reduce) and (max-width: 767px) {
  .page-mission__visionArt picture {
    opacity: 0;
    animation: none !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .page-mission__valueSpray {
    display: none;
  }
  .page-mission__valueItem.js-spray-reveal .page-mission__valueJa,
  .page-mission__valueItem.js-spray-reveal .page-mission__valueTxt {
    opacity: 1;
  }
  .page-mission__valueItem.js-spray-reveal:before, .page-mission__valueItem.js-spray-reveal:after {
    opacity: 1;
  }
  .page-mission__valueItem.js-spray-reveal .page-mission__valueHead:before, .page-mission__valueItem.js-spray-reveal .page-mission__valueHead:after {
    opacity: 1;
  }
  .page-mission__valueItem.js-spray-reveal .page-mission__valueEn {
    color: #020617;
    animation: none;
  }
  .page-mission__valueItem.js-spray-reveal .page-mission__valueEnArt {
    opacity: 1;
    animation: none !important;
  }
  .page-mission__valueItem.js-spray-reveal .page-mission__valueEnArt--blue {
    opacity: 0 !important;
    animation: none !important;
  }
  .page-mission__valueItem--single.js-spray-reveal .page-mission__valueEn {
    color: #1d4ed8;
  }
}
@media (prefers-reduced-motion: reduce) and (max-width: 767px) {
  .page-mission__valueItem--single.js-spray-reveal .page-mission__valueEn {
    color: #020617;
  }
}
/* module > mission brush（THE STORY MAKERS 筆入れ。前縁はストローク軸-7.1°に直交・S1/S3=左→右・S2/S4=右→左）
============================================================================ */
@keyframes brushGenS1 {
  from {
    clip-path: polygon(-17.2% -150%, 4.36% 250%, -500% 250%, -500% -150%);
  }
  to {
    clip-path: polygon(95.64% -150%, 117.2% 250%, -500% 250%, -500% -150%);
  }
}
@keyframes brushGenS2 {
  from {
    clip-path: polygon(95.64% -150%, 117.2% 250%, 600% 250%, 600% -150%);
  }
  to {
    clip-path: polygon(-17.2% -150%, 4.36% 250%, 600% 250%, 600% -150%);
  }
}
@keyframes brushGenS3 {
  from {
    clip-path: polygon(-17.2% -150%, 4.36% 250%, -500% 250%, -500% -150%);
  }
  to {
    clip-path: polygon(95.64% -150%, 117.2% 250%, -500% 250%, -500% -150%);
  }
}
@keyframes brushGenS4 {
  from {
    clip-path: polygon(95.64% -150%, 117.2% 250%, 600% 250%, 600% -150%);
  }
  to {
    clip-path: polygon(-17.2% -150%, 4.36% 250%, 600% 250%, 600% -150%);
  }
}
/* layout > page > service
============================================================================ */
.page-service {
  position: relative;
  padding-top: 0;
  padding-bottom: 0;
}
.page-service__inner {
  position: relative;
  z-index: 1;
  max-width: 93.75vw;
  width: 100%;
  margin: 0 auto;
  padding: 0 3.125vw;
}
@media (max-width: 767px) {
  .page-service__inner {
    max-width: none;
    padding: 0 7.2727272727vw;
  }
}
.page-service__intro {
  position: relative;
  padding-top: 6.796875vw;
  min-height: 44.921875vw;
}
@media (max-width: 767px) {
  .page-service__intro {
    padding-top: 5.4545454545vw;
    min-height: 0;
  }
}
.page-service__introBody {
  position: relative;
  z-index: 1;
  width: 36.09375vw;
}
@media (max-width: 767px) {
  .page-service__introBody {
    width: 100%;
  }
}
.page-service__introCatch {
  color: #1d4ed8;
  font-size: 12px;
  font-size: 1.875vw;
  font-weight: 900;
  line-height: 1.5833333333;
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
  .page-service__introCatch {
    font-size: 9px;
    font-size: 4.0909090909vw;
    line-height: 1.6111111111;
    letter-spacing: 0;
  }
}
.page-service__introTxt {
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
  margin-top: 3.125vw;
}
@media (max-width: 767px) {
  .page-service__introTxt {
    font-size: 7px;
    font-size: 3.1818181818vw;
    margin-top: 5.4545454545vw;
  }
}
@media (max-width: 767px) {
  .page-service__introNote.sp-none {
    display: none;
  }
}
.page-service__introNote {
  display: flex;
  align-items: center;
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  color: #1d4ed8;
  font-size: 12px;
  font-size: 1.875vw;
  font-weight: 600;
  line-height: 1.5833333333;
  white-space: nowrap;
  margin-top: 3.125vw;
  margin-left: 16.328125vw;
}
@media (max-width: 767px) {
  .page-service__introNote {
    color: #020617;
    font-size: 9px;
    font-size: 4.0909090909vw;
    line-height: 1.3888888889;
    margin-top: 9.0909090909vw;
    margin-left: 0;
    text-align: center;
  }
}
.page-service__introNote:after {
  content: "";
  display: inline-block;
  width: 0.703125vw;
  height: 1.71875vw;
  background-color: #1d4ed8;
  -webkit-mask: url("img/common/arw_btn.svg") no-repeat center/contain;
  mask: url("img/common/arw_btn.svg") no-repeat center/contain;
  margin-left: 1.25vw;
  flex: none;
}
@media (max-width: 767px) {
  .page-service__introNote:after {
    display: block;
    width: 5vw;
    height: 2.2727272727vw;
    margin: 1.5909090909vw auto 0;
    -webkit-mask: url("img/common/arw_note_down.svg?v=260806") no-repeat center/contain;
    mask: url("img/common/arw_note_down.svg?v=260806") no-repeat center/contain;
  }
}
.page-service__diagram {
  position: absolute;
  top: -8.046875vw;
  left: 44.21875vw;
  width: 46.953125vw;
  height: 46.171875vw;
}
@media (max-width: 767px) {
  .page-service__diagram {
    position: relative;
    top: auto;
    left: auto;
    width: 85.4545454545vw;
    height: 84.0909090909vw;
    margin: 9.0909090909vw auto 0;
  }
}
.page-service__dia {
  position: absolute;
  display: block;
  width: 40.72%;
  height: 41.4%;
  border: 2px solid #1d4ed8;
  transform: rotate(45deg);
}
@media (max-width: 767px) {
  .page-service__dia {
    border-width: 1px;
  }
}
.page-service__dia--1 {
  left: 8.43%;
  top: 8.57%;
}
.page-service__dia--2 {
  left: 50.86%;
  top: 8.57%;
}
.page-service__dia--3 {
  left: 8.43%;
  top: 50.03%;
}
.page-service__dia--4 {
  left: 50.86%;
  top: 50.03%;
}
.page-service__dia:before {
  content: "";
  position: absolute;
  inset: -2px;
  background: linear-gradient(135deg, rgb(142, 166.5, 235.5), #1d4ed8);
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}
@media (hover: hover) and (min-width: 768px) {
  .page-service__dia:hover {
    z-index: 2;
    opacity: 1;
    border-color: transparent;
  }
  .page-service__dia:hover:before {
    opacity: 1;
  }
  .page-service__dia:hover .page-service__diaLabel {
    opacity: 0;
  }
  .page-service__dia:hover .page-service__diaMenu {
    opacity: 1;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .page-service__dia--nomenu:hover .page-service__diaLabel {
    opacity: 1;
    color: #fff;
  }
}
.page-service__diaLabel {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  transform: rotate(-45deg);
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  color: #020617;
  font-size: 12px;
  font-size: 1.875vw;
  font-weight: 600;
  line-height: 1.5833333333;
  transition: opacity 0.3s ease;
}
@media (max-width: 767px) {
  .page-service__diaLabel {
    font-size: 8px;
    font-size: 3.6363636364vw;
    line-height: 1.375;
  }
}
.page-service__diaMenu {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.625vw;
  transform: rotate(-45deg);
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}
.page-service__diaMenu li {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  color: #fff;
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 600;
  line-height: 1.4;
}
@media (max-width: 767px) {
  .page-service__diaMenu li {
    font-size: 6px;
    font-size: 2.7272727273vw;
  }
}
.page-service__diaMenuJa {
  font-family: "Noto Sans JP", sans-serif !important;
}
.page-service__node {
  position: absolute;
  z-index: 1;
  width: 0.9375vw;
  height: 0.9375vw;
  margin: -0.46875vw 0 0 -0.46875vw;
  background-color: #1d4ed8;
}
@media (max-width: 767px) {
  .page-service__node {
    width: 2.2727272727vw;
    height: 2.2727272727vw;
    margin: -1.1363636364vw 0 0 -1.1363636364vw;
  }
}
.page-service__node--1 {
  animation: orbitDia2 7.73s linear infinite;
  animation-delay: -0.274s;
}
.page-service__node--2 {
  animation: orbitDia2 8.6s linear infinite;
  animation-delay: -6.425s;
}
.page-service__node--3 {
  animation: orbitDia2 6.58s linear infinite;
  animation-delay: -1.664s;
}
.page-service__node--4 {
  animation: orbitDia3 6.2s linear infinite;
  animation-delay: -0.004s;
}
.page-service__node--5 {
  animation: orbitDia4 6.27s linear infinite;
  animation-delay: -4.707s;
}
.page-service__node--6 {
  animation: orbitDia3 8.21s linear infinite;
  animation-delay: -2.07s;
}
.page-service__node--7 {
  animation: orbitDia3 6.93s linear infinite;
  animation-delay: -3.465s;
}
.page-service__node--8 {
  animation: orbitDia4 9.36s linear infinite;
  animation-delay: -4.68s;
}
.page-service__dia--2:hover ~ .page-service__node--1, .page-service__dia--2.is-active ~ .page-service__node--1 {
  z-index: 3;
}
.page-service__dia--2:hover ~ .page-service__node--2, .page-service__dia--2.is-active ~ .page-service__node--2 {
  z-index: 3;
}
.page-service__dia--2:hover ~ .page-service__node--3, .page-service__dia--2.is-active ~ .page-service__node--3 {
  z-index: 3;
}
.page-service__dia--3:hover ~ .page-service__node--4, .page-service__dia--3.is-active ~ .page-service__node--4 {
  z-index: 3;
}
.page-service__dia--3:hover ~ .page-service__node--6, .page-service__dia--3.is-active ~ .page-service__node--6 {
  z-index: 3;
}
.page-service__dia--3:hover ~ .page-service__node--7, .page-service__dia--3.is-active ~ .page-service__node--7 {
  z-index: 3;
}
.page-service__dia--4:hover ~ .page-service__node--5, .page-service__dia--4.is-active ~ .page-service__node--5 {
  z-index: 3;
}
.page-service__dia--4:hover ~ .page-service__node--8, .page-service__dia--4.is-active ~ .page-service__node--8 {
  z-index: 3;
}
.page-service__section {
  position: relative;
  margin-top: 21.875vw;
}
@media (max-width: 767px) {
  .page-service__section {
    margin-top: 45.4545454545vw;
  }
}
.page-service__intro + .page-service__section {
  margin-top: 20.390625vw;
}
@media (max-width: 767px) {
  .page-service__intro + .page-service__section {
    margin-top: 45.4545454545vw;
  }
}
.page-service__head {
  position: relative;
  z-index: 1;
}
.page-service__headEn {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-style: italic;
  color: #1d4ed8;
  font-size: 32px;
  font-size: 5vw;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .page-service__headEn {
    font-size: 20px;
    font-size: 9.0909090909vw;
  }
}
.page-service__headJa {
  color: #1d4ed8;
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 500;
  line-height: 1.6111111111;
  letter-spacing: 0.1em;
  margin-top: 1.25vw;
}
@media (max-width: 767px) {
  .page-service__headJa {
    font-size: 8px;
    font-size: 3.6363636364vw;
    line-height: 1;
    letter-spacing: 0.05em;
    margin-top: 3.6363636364vw;
  }
}
@media (max-width: 767px) {
  .page-service__rows {
    display: flex;
    gap: 2.7272727273vw;
    margin: calc(9.0909090909vw - 3px) -7.2727272727vw 0;
    padding: 3px 7.2727272727vw 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }
  .page-service__rows::-webkit-scrollbar {
    display: none;
  }
  .page-service__rows {
    cursor: grab;
  }
  .page-service__rows.is-grabbing {
    cursor: grabbing;
  }
}
.page-service__row {
  display: flex;
  gap: 6.25vw;
  align-items: flex-start;
  margin-top: 12.5vw;
}
.page-service__row:first-child {
  margin-top: 9.375vw;
}
.page-service__row--rev {
  flex-direction: row-reverse;
}
@media (max-width: 767px) {
  .page-service__row {
    flex: 0 0 85.4545454545vw;
    display: block;
    margin-top: 0;
    scroll-snap-align: center;
  }
  .page-service__row:first-child {
    margin-top: 0;
  }
}
.page-service__photo {
  width: 35.9375vw;
}
@media (max-width: 767px) {
  .page-service__photo {
    width: 100%;
  }
}
.page-service__photoFrame {
  position: relative;
  width: 100%;
  aspect-ratio: 460/355;
}
.page-service__photoFrame.js-reveal {
  overflow: visible;
}
.page-service__photoFrame.js-reveal:after {
  top: 1.5625vw;
  left: 1.5625vw;
  width: calc(100% - 3.125vw);
  height: calc(100% - 3.125vw);
}
@media (max-width: 767px) {
  .page-service__photoFrame.js-reveal:after {
    top: 4.5454545455vw;
    left: 4.5454545455vw;
    width: calc(100% - 9.0909090909vw);
    height: calc(100% - 9.0909090909vw);
  }
}
.page-service__photoFrame:before {
  content: "";
  position: absolute;
  inset: -0.15625vw;
  pointer-events: none;
  background: url("img/common/mark_corner_tl.svg") left top/0.9375vw 0.9375vw no-repeat, url("img/common/mark_corner_bl.svg") left bottom/0.9375vw 0.9375vw no-repeat, url("img/common/mark_corner_tr.svg") right top/0.9375vw 0.9375vw no-repeat, url("img/common/mark_corner_br.svg") right bottom/0.9375vw 0.9375vw no-repeat;
}
@media (max-width: 767px) {
  .page-service__photoFrame {
    aspect-ratio: 376/292;
  }
  .page-service__photoFrame:before {
    inset: -2px;
    background: url("img/common/mark_corner_tl.svg") left top/12px 12px no-repeat, url("img/common/mark_corner_bl.svg") left bottom/12px 12px no-repeat, url("img/common/mark_corner_tr.svg") right top/12px 12px no-repeat, url("img/common/mark_corner_br.svg") right bottom/12px 12px no-repeat;
  }
}
.page-service__photoImg {
  position: absolute;
  inset: 1.5625vw;
  display: block;
  background-color: #dddddd;
}
@media (max-width: 767px) {
  .page-service__photoImg {
    inset: 4.5454545455vw;
  }
}
.page-service__photoImg picture {
  display: block;
  width: 100%;
  height: 100%;
}
.page-service__photoImg img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-service__body {
  width: 45.3125vw;
  position: relative;
  z-index: 1;
}
@media (max-width: 767px) {
  .page-service__body {
    width: 100%;
    margin-top: 6.3636363636vw;
  }
}
.page-service__name {
  color: #020617;
  font-size: 16px;
  font-size: 2.5vw;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.05em;
  position: relative;
  align-items: baseline;
  padding-left: 2.1875vw;
}
.page-service__name:before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 0.9375vw;
  height: 3.125vw;
  background-color: #1d4ed8;
}
@media (max-width: 767px) {
  .page-service__name {
    font-size: 12px;
    font-size: 5.4545454545vw;
    line-height: 1.5833333333;
    letter-spacing: 0.1em;
    padding-left: 3.6363636364vw;
  }
  .page-service__name:before {
    width: 1.8181818182vw;
    height: 8.6363636364vw;
  }
}
.page-service__name small {
  font-size: 12px;
  font-size: 1.875vw;
  display: inline-block;
}
@media (max-width: 767px) {
  .page-service__name small {
    font-size: 9px;
    font-size: 4.0909090909vw;
  }
}
.page-service__name--ja {
  min-height: 3.125vw;
  align-items: center;
}
@media (max-width: 767px) {
  .page-service__name--ja {
    min-height: 0;
  }
}
.page-service__catch {
  color: #1d4ed8;
  font-size: 12px;
  font-size: 1.875vw;
  font-weight: 900;
  line-height: 1.5833333333;
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
  .page-service__catch {
    font-size: 9px;
    font-size: 4.0909090909vw;
    line-height: 1.6111111111;
  }
}
.page-service__name + .page-service__catch {
  margin-top: 3.125vw;
}
@media (max-width: 767px) {
  .page-service__name + .page-service__catch {
    margin-top: 7.2727272727vw;
  }
}
.page-service__name--ja + .page-service__catch {
  margin-top: 3.75vw;
}
@media (max-width: 767px) {
  .page-service__name--ja + .page-service__catch {
    margin-top: 7.2727272727vw;
  }
}
.page-service__txt {
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
  margin-top: 1.875vw;
}
@media (max-width: 767px) {
  .page-service__txt {
    font-size: 7px;
    font-size: 3.1818181818vw;
    margin-top: 3.6363636364vw;
  }
}
.page-service__subTtl {
  color: #1d4ed8;
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 700;
  line-height: 1.6111111111;
  letter-spacing: 0.1em;
  margin-top: 2.5vw;
}
@media (max-width: 767px) {
  .page-service__subTtl {
    font-size: 8px;
    font-size: 3.6363636364vw;
    line-height: 1.625;
    margin-top: 5.4545454545vw;
  }
}
.page-service__subs {
  margin-top: 1.25vw;
}
@media (max-width: 767px) {
  .page-service__subs {
    margin-top: 1.8181818182vw;
  }
}
.page-service__sub {
  position: relative;
  padding-left: 2.03125vw;
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
  .page-service__sub {
    padding-left: 5.9090909091vw;
    font-size: 7px;
    font-size: 3.1818181818vw;
  }
}
.page-service__sub + .page-service__sub {
  margin-top: 0.3125vw;
}
@media (max-width: 767px) {
  .page-service__sub + .page-service__sub {
    margin-top: 0.4545454545vw;
  }
}
.page-service__sub:before {
  content: "";
  position: absolute;
  left: 0;
  top: calc(50% - 0.390625vw);
  width: 0.78125vw;
  height: 0.78125vw;
  background-color: #1d4ed8;
}
@media (max-width: 767px) {
  .page-service__sub:before {
    top: calc(50% - 1.1363636364vw);
    width: 2.2727272727vw;
    height: 2.2727272727vw;
  }
}
.page-service__link {
  margin-top: 2.5vw;
}
@media (max-width: 767px) {
  .page-service__link {
    margin-top: 5.4545454545vw;
  }
}
.page-service__link a {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 1.25vw;
  color: #1d4ed8;
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 700;
  line-height: 1.625;
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
  .page-service__link a {
    gap: 3.6363636364vw;
    font-size: 8px;
    font-size: 3.6363636364vw;
  }
}
.page-service__link a:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: calc(100% - 2.5vw);
  height: 2px;
  background-color: #1d4ed8;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.3s ease;
}
@media (max-width: 767px) {
  .page-service__link a:after {
    width: calc(100% - 7.2727272727vw);
  }
}
@media (hover: hover) and (min-width: 768px) {
  .page-service__link a:hover:after {
    transform: scaleX(1);
  }
}
.page-service__linkIcon {
  display: block;
  width: 1.25vw;
  height: 1.25vw;
  background: url("img/common/icn_extlink.svg?v=260805") center/contain no-repeat;
}
@media (max-width: 767px) {
  .page-service__linkIcon {
    width: 3.6363636364vw;
    height: 3.6363636364vw;
  }
}
.page-service__dots {
  display: none;
}
@media (max-width: 767px) {
  .page-service__dots {
    display: flex;
    justify-content: center;
    gap: 3.6363636364vw;
    margin-top: 7.2727272727vw;
  }
}
@media (max-width: 767px) {
  .page-service__dot {
    width: 2.2727272727vw;
    height: 2.2727272727vw;
    border-radius: 50%;
    background-color: #d9d9d9;
    transition: background-color 0.3s ease;
    cursor: pointer;
  }
  .page-service__dot.is-active {
    background-color: #1d4ed8;
  }
}
.page-service__deco {
  position: absolute;
  z-index: 0;
  pointer-events: none;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.page-service__deco--maInk1 {
  left: -2.1875vw;
  top: -23.828125vw;
  width: 62.1875vw;
  aspect-ratio: 796/402;
  background-image: -webkit-image-set(url("img/top/deco_ink_06.webp") type("image/webp"), url("img/top/deco_ink_06.png") type("image/png"));
  background-image: image-set(url("img/top/deco_ink_06.webp") type("image/webp"), url("img/top/deco_ink_06.png") type("image/png"));
}
@media (max-width: 767px) {
  .page-service__deco--maInk1 {
    left: -52.7272727273vw;
    top: 145vw;
    width: 162.9545454545vw;
    aspect-ratio: 717/362;
    background-image: -webkit-image-set(url("img/top/deco_ink_sp_07.webp") type("image/webp"), url("img/top/deco_ink_sp_07.png") type("image/png"));
    background-image: image-set(url("img/top/deco_ink_sp_07.webp") type("image/webp"), url("img/top/deco_ink_sp_07.png") type("image/png"));
  }
}
.page-service__deco--maSplash1 {
  left: 56.71875vw;
  top: -20.078125vw;
  width: 48.125vw;
  aspect-ratio: 616/520;
  background-image: -webkit-image-set(url("img/common/deco_splash_27a.webp") type("image/webp"), url("img/common/deco_splash_27a.png") type("image/png"));
  background-image: image-set(url("img/common/deco_splash_27a.webp") type("image/webp"), url("img/common/deco_splash_27a.png") type("image/png"));
}
@media (max-width: 767px) {
  .page-service__deco--maSplash1 {
    left: 38.6363636364vw;
    top: -38.4090909091vw;
    width: 79.3181818182vw;
    aspect-ratio: 349/295;
    background-image: -webkit-image-set(url("img/common/deco_splash_27a_sp2.webp") type("image/webp"), url("img/common/deco_splash_27a_sp2.png") type("image/png"));
    background-image: image-set(url("img/common/deco_splash_27a_sp2.webp") type("image/webp"), url("img/common/deco_splash_27a_sp2.png") type("image/png"));
  }
}
.page-service__deco--maSplash2 {
  left: 51.71875vw;
  top: -16.328125vw;
  width: 51.875vw;
  aspect-ratio: 664/242;
  background-image: -webkit-image-set(url("img/common/deco_splash_29.webp") type("image/webp"), url("img/common/deco_splash_29.png") type("image/png"));
  background-image: image-set(url("img/common/deco_splash_29.webp") type("image/webp"), url("img/common/deco_splash_29.png") type("image/png"));
}
@media (max-width: 767px) {
  .page-service__deco--maSplash2 {
    left: 10.9090909091vw;
    top: -38.8636363636vw;
    width: 78.4090909091vw;
    aspect-ratio: 345/126;
    background-image: -webkit-image-set(url("img/common/deco_splash_29_sp.webp") type("image/webp"), url("img/common/deco_splash_29_sp.png") type("image/png"));
    background-image: image-set(url("img/common/deco_splash_29_sp.webp") type("image/webp"), url("img/common/deco_splash_29_sp.png") type("image/png"));
  }
}
.page-service__deco--maInk2 {
  left: 15.78125vw;
  top: 40.9375vw;
  width: 62.1875vw;
  aspect-ratio: 796/402;
  background-image: -webkit-image-set(url("img/top/deco_ink_05.webp") type("image/webp"), url("img/top/deco_ink_05.png") type("image/png"));
  background-image: image-set(url("img/top/deco_ink_05.webp") type("image/webp"), url("img/top/deco_ink_05.png") type("image/png"));
}
@media (max-width: 767px) {
  .page-service__deco--maInk2 {
    display: none;
  }
}
.page-service__deco--maSplash3 {
  left: 74.0625vw;
  top: 52.34375vw;
  width: 33.28125vw;
  aspect-ratio: 426/487;
  background-image: -webkit-image-set(url("img/common/deco_splash_30a.webp") type("image/webp"), url("img/common/deco_splash_30a.png") type("image/png"));
  background-image: image-set(url("img/common/deco_splash_30a.webp") type("image/webp"), url("img/common/deco_splash_30a.png") type("image/png"));
}
@media (max-width: 767px) {
  .page-service__deco--maSplash3 {
    left: 55vw;
    top: 189.5454545455vw;
    width: 51.5909090909vw;
    aspect-ratio: 227/260;
    background-image: -webkit-image-set(url("img/common/deco_splash_30a_sp.webp") type("image/webp"), url("img/common/deco_splash_30a_sp.png") type("image/png"));
    background-image: image-set(url("img/common/deco_splash_30a_sp.webp") type("image/webp"), url("img/common/deco_splash_30a_sp.png") type("image/png"));
  }
}
.page-service__deco--mkSplash1 {
  left: -1.25vw;
  top: 42.03125vw;
  width: 34.84375vw;
  aspect-ratio: 446/267;
  background-image: -webkit-image-set(url("img/common/deco_splash_27e.webp") type("image/webp"), url("img/common/deco_splash_27e.png") type("image/png"));
  background-image: image-set(url("img/common/deco_splash_27e.webp") type("image/webp"), url("img/common/deco_splash_27e.png") type("image/png"));
}
@media (max-width: 767px) {
  .page-service__deco--mkSplash1 {
    left: 32.5vw;
    top: 206.1363636364vw;
    width: 65.9090909091vw;
    aspect-ratio: 290/173;
    background-image: -webkit-image-set(url("img/common/deco_splash_27e_sp.webp") type("image/webp"), url("img/common/deco_splash_27e_sp.png") type("image/png"));
    background-image: image-set(url("img/common/deco_splash_27e_sp.webp") type("image/webp"), url("img/common/deco_splash_27e_sp.png") type("image/png"));
  }
}
.page-service__deco--mkSplash2 {
  left: 64.296875vw;
  top: 92.34375vw;
  width: 41.40625vw;
  aspect-ratio: 530/317;
  background-image: -webkit-image-set(url("img/common/deco_splash_27d.webp") type("image/webp"), url("img/common/deco_splash_27d.png") type("image/png"));
  background-image: image-set(url("img/common/deco_splash_27d.webp") type("image/webp"), url("img/common/deco_splash_27d.png") type("image/png"));
}
@media (max-width: 767px) {
  .page-service__deco--mkSplash2 {
    display: none;
  }
}
.page-service__deco--omInk1 {
  left: 15.78125vw;
  top: -24.6875vw;
  width: 62.1875vw;
  aspect-ratio: 796/402;
  background-image: -webkit-image-set(url("img/top/deco_ink_07.webp") type("image/webp"), url("img/top/deco_ink_07.png") type("image/png"));
  background-image: image-set(url("img/top/deco_ink_07.webp") type("image/webp"), url("img/top/deco_ink_07.png") type("image/png"));
}
@media (max-width: 767px) {
  .page-service__deco--omInk1 {
    left: -52.7272727273vw;
    top: 175.4545454545vw;
    width: 162.9545454545vw;
    aspect-ratio: 717/362;
    background-image: -webkit-image-set(url("img/top/deco_ink_sp_05.webp") type("image/webp"), url("img/top/deco_ink_sp_05.png") type("image/png"));
    background-image: image-set(url("img/top/deco_ink_sp_05.webp") type("image/webp"), url("img/top/deco_ink_sp_05.png") type("image/png"));
  }
}
.page-service__deco--omSplash1 {
  left: 74.0625vw;
  top: -15.625vw;
  width: 33.28125vw;
  aspect-ratio: 426/487;
  background-image: -webkit-image-set(url("img/common/deco_splash_30a.webp") type("image/webp"), url("img/common/deco_splash_30a.png") type("image/png"));
  background-image: image-set(url("img/common/deco_splash_30a.webp") type("image/webp"), url("img/common/deco_splash_30a.png") type("image/png"));
}
@media (max-width: 767px) {
  .page-service__deco--omSplash1 {
    left: 55vw;
    top: 207.5vw;
    width: 51.5909090909vw;
    aspect-ratio: 227/260;
    background-image: -webkit-image-set(url("img/common/deco_splash_30a_sp.webp") type("image/webp"), url("img/common/deco_splash_30a_sp.png") type("image/png"));
    background-image: image-set(url("img/common/deco_splash_30a_sp.webp") type("image/webp"), url("img/common/deco_splash_30a_sp.png") type("image/png"));
  }
}
.page-service__deco--otSplash1 {
  left: -4.375vw;
  top: -21.953125vw;
  width: 33.28125vw;
  aspect-ratio: 426/487;
  background-image: -webkit-image-set(url("img/common/deco_splash_30b.webp") type("image/webp"), url("img/common/deco_splash_30b.png") type("image/png"));
  background-image: image-set(url("img/common/deco_splash_30b.webp") type("image/webp"), url("img/common/deco_splash_30b.png") type("image/png"));
}
@media (max-width: 767px) {
  .page-service__deco--otSplash1 {
    left: -4.7727272727vw;
    top: 204.0909090909vw;
    width: 51.5909090909vw;
    aspect-ratio: 227/260;
    background-image: -webkit-image-set(url("img/common/deco_splash_30b_sp.webp") type("image/webp"), url("img/common/deco_splash_30b_sp.png") type("image/png"));
    background-image: image-set(url("img/common/deco_splash_30b_sp.webp") type("image/webp"), url("img/common/deco_splash_30b_sp.png") type("image/png"));
  }
}
.page-service__deco--otInk1 {
  left: 38.90625vw;
  top: -16.09375vw;
  width: 62.1875vw;
  aspect-ratio: 796/402;
  background-image: -webkit-image-set(url("img/top/deco_ink_08.webp") type("image/webp"), url("img/top/deco_ink_08.png") type("image/png"));
  background-image: image-set(url("img/top/deco_ink_08.webp") type("image/webp"), url("img/top/deco_ink_08.png") type("image/png"));
}
@media (max-width: 767px) {
  .page-service__deco--otInk1 {
    left: -46.8181818182vw;
    top: 188.8636363636vw;
    width: 162.9545454545vw;
    aspect-ratio: 717/362;
    background-image: -webkit-image-set(url("img/top/deco_ink_sp_06.webp") type("image/webp"), url("img/top/deco_ink_sp_06.png") type("image/png"));
    background-image: image-set(url("img/top/deco_ink_sp_06.webp") type("image/webp"), url("img/top/deco_ink_sp_06.png") type("image/png"));
  }
}
.page-service__deco--otSplash2 {
  left: 64.296875vw;
  top: 80.625vw;
  width: 41.40625vw;
  aspect-ratio: 530/317;
  background-image: -webkit-image-set(url("img/common/deco_splash_27d.webp") type("image/webp"), url("img/common/deco_splash_27d.png") type("image/png"));
  background-image: image-set(url("img/common/deco_splash_27d.webp") type("image/webp"), url("img/common/deco_splash_27d.png") type("image/png"));
}
@media (max-width: 767px) {
  .page-service__deco--otSplash2 {
    display: none;
  }
}
.page-service__deco--otSplash3 {
  left: -1.25vw;
  top: 86.171875vw;
  width: 34.84375vw;
  aspect-ratio: 446/267;
  background-image: -webkit-image-set(url("img/common/deco_splash_27f.webp") type("image/webp"), url("img/common/deco_splash_27f.png") type("image/png"));
  background-image: image-set(url("img/common/deco_splash_27f.webp") type("image/webp"), url("img/common/deco_splash_27f.png") type("image/png"));
}
@media (max-width: 767px) {
  .page-service__deco--otSplash3 {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-service__node {
    animation: none;
  }
}
/* layout > page > contact
============================================================================================================ */
.page-contact {
  position: relative;
  padding-top: 0;
  padding-bottom: 0;
}
@media (max-width: 767px) {
  .page-contact {
    padding-top: 0;
    padding-bottom: 0;
  }
}
@media (max-width: 767px) {
  .page-contact .wpcf7-not-valid-tip {
    font-size: 8px;
    font-size: 3.6363636364vw;
  }
}
.page-contact__splash {
  position: absolute;
  top: -12.96875vw;
  right: 0%;
  width: min(93.90625vw, 100%);
  aspect-ratio: 1202/607;
  z-index: 0;
  pointer-events: none;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain;
  background-image: -webkit-image-set(url("img/common/splash_01.webp") type("image/webp"), url("img/common/splash_01.png") type("image/png"));
  background-image: image-set(url("img/common/splash_01.webp") type("image/webp"), url("img/common/splash_01.png") type("image/png"));
}
@media (max-width: 1024px) {
  .page-contact__splash {
    top: -106px;
    width: min(1202px, 100%);
  }
}
@media (max-width: 767px) {
  .page-contact__splash {
    display: none;
  }
}
.page-contact__inner {
  position: relative;
  z-index: 1;
  max-width: 93.75vw;
  width: 100%;
  margin: 0 auto;
  padding: 0 3.125vw;
}
@media (max-width: 1024px) {
  .page-contact__inner {
    max-width: 1200px;
    padding: 0 40px;
  }
}
@media (max-width: 767px) {
  .page-contact__inner {
    padding: 0 7.2727272727vw;
  }
}
.page-contact__note {
  display: block;
  text-align: right;
  color: #020617;
  font-size: 7px;
  font-size: 1.09375vw;
  margin-bottom: 1.5625vw;
}
@media (max-width: 1024px) {
  .page-contact__note {
    font-size: 14px;
    font-size: 0.875rem;
    margin-bottom: 20px;
  }
}
@media (max-width: 767px) {
  .page-contact__note {
    font-size: 6.5px;
    font-size: 2.9545454545vw;
    margin-bottom: 3.6363636364vw;
  }
}
.page-contact__req {
  color: #d50000;
  margin-left: 4px;
}
.page-contact__row {
  margin-bottom: 2.65625vw;
}
@media (max-width: 1024px) {
  .page-contact__row {
    margin-bottom: 34px;
  }
}
@media (max-width: 767px) {
  .page-contact__row {
    margin-bottom: 9.0909090909vw;
  }
}
.page-contact__label {
  display: block;
  font-weight: 700;
  color: #020617;
  font-size: 9px;
  font-size: 1.40625vw;
  line-height: 1.6111111111;
  letter-spacing: 0.1em;
  margin-bottom: 0.9375vw;
}
@media (max-width: 1024px) {
  .page-contact__label {
    font-size: 18px;
    font-size: 1.125rem;
    margin-bottom: 12px;
  }
}
@media (max-width: 767px) {
  .page-contact__label {
    font-size: 8px;
    font-size: 3.6363636364vw;
    margin-bottom: 2.7272727273vw;
  }
}
.page-contact__form .page-contact__input,
.page-contact__form .page-contact__textarea,
.page-contact__form .page-contact__select {
  display: block;
  width: 100%;
  border: 0.15625vw solid rgba(29, 78, 216, 0.302);
  border-radius: 0.3125vw;
  background-color: #fff;
  color: #020617;
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 500;
  line-height: 1.6111111111 !important;
  letter-spacing: 0.1em;
  padding: 0.46875vw 1.09375vw;
  transition: border-color 0.2s;
}
@media (max-width: 1024px) {
  .page-contact__form .page-contact__input,
  .page-contact__form .page-contact__textarea,
  .page-contact__form .page-contact__select {
    font-size: 18px;
    font-size: 1.125rem;
    border-width: 2px;
    border-radius: 4px;
    padding: 6px 14px;
  }
}
@media (max-width: 767px) {
  .page-contact__form .page-contact__input,
  .page-contact__form .page-contact__textarea,
  .page-contact__form .page-contact__select {
    font-size: 8px;
    font-size: 3.6363636364vw;
    padding: 1.3636363636vw 3.1818181818vw;
    border-width: 0.4545454545vw;
    border-radius: 0.9090909091vw;
  }
}
.page-contact__form .page-contact__input::-moz-placeholder, .page-contact__form .page-contact__textarea::-moz-placeholder, .page-contact__form .page-contact__select::-moz-placeholder {
  color: #a0a0a0;
}
.page-contact__form .page-contact__input::placeholder,
.page-contact__form .page-contact__textarea::placeholder,
.page-contact__form .page-contact__select::placeholder {
  color: #a0a0a0;
}
.page-contact__form .page-contact__input:focus,
.page-contact__form .page-contact__textarea:focus,
.page-contact__form .page-contact__select:focus {
  outline: none;
  border-color: #1d4ed8;
}
.page-contact__form .page-contact__textarea {
  height: 15.625vw;
  resize: vertical;
  line-height: 1.6111111111;
}
@media (max-width: 1024px) {
  .page-contact__form .page-contact__textarea {
    height: 200px;
  }
}
@media (max-width: 767px) {
  .page-contact__form .page-contact__textarea {
    height: 36.3636363636vw;
  }
}
.page-contact__form .page-contact__select {
  height: auto;
  padding-right: 3.4375vw;
  cursor: pointer;
  background-image: url("./img/common/arw_select.svg");
  background-repeat: no-repeat;
  background-size: 1.09375vw;
  background-position: center right 1.40625vw;
}
@media (max-width: 1024px) {
  .page-contact__form .page-contact__select {
    padding-right: 44px;
    background-size: 14px;
    background-position: center right 18px;
  }
}
@media (max-width: 767px) {
  .page-contact__form .page-contact__select {
    padding-right: 10vw;
    background-size: 3.1818181818vw;
    background-position: center right 4.0909090909vw;
  }
}
.page-contact__selectWrap {
  position: relative;
}
.page-contact__agree {
  margin: 3.125vw 0 4.6875vw;
  text-align: left;
}
@media (max-width: 1024px) {
  .page-contact__agree {
    margin: 40px 0 60px;
  }
}
@media (max-width: 767px) {
  .page-contact__agree {
    margin: 15.9090909091vw 0 12.2727272727vw;
    padding: 0 1.8181818182vw;
  }
}
.page-contact__agree .wpcf7-form-control-wrap,
.page-contact__agree .wpcf7-form-control,
.page-contact__agree .wpcf7-list-item,
.page-contact__agree label {
  display: block;
  margin: 0;
  padding: 0;
}
.page-contact__check {
  position: relative;
  margin-bottom: 0.9375vw;
}
@media (max-width: 1024px) {
  .page-contact__check {
    margin-bottom: 12px;
  }
}
@media (max-width: 767px) {
  .page-contact__check {
    margin-bottom: 2.7272727273vw;
  }
}
.page-contact__check:last-child {
  margin-bottom: 0;
}
.page-contact .wpcf7-form input[type=checkbox] {
  position: absolute;
  top: 0;
  left: 0;
  width: 1.5625vw;
  height: 1.5625vw;
  margin: 0;
  opacity: 0;
  cursor: pointer;
  z-index: 2;
}
@media (max-width: 1024px) {
  .page-contact .wpcf7-form input[type=checkbox] {
    width: 20px;
    height: 20px;
  }
}
@media (max-width: 767px) {
  .page-contact .wpcf7-form input[type=checkbox] {
    width: 4.0909090909vw;
    height: 4.0909090909vw;
  }
}
.page-contact__checkTxt, .page-contact .wpcf7-form input[type=checkbox] + .wpcf7-list-item-label {
  position: relative;
  display: block;
  padding-left: 2.5vw;
  color: #020617;
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.1em;
  cursor: pointer;
}
@media (max-width: 1024px) {
  .page-contact__checkTxt, .page-contact .wpcf7-form input[type=checkbox] + .wpcf7-list-item-label {
    padding-left: 32px;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media (max-width: 767px) {
  .page-contact__checkTxt, .page-contact .wpcf7-form input[type=checkbox] + .wpcf7-list-item-label {
    font-size: 8px;
    font-size: 3.6363636364vw;
    padding-left: 6.3636363636vw;
  }
}
.page-contact__checkTxt:before, .page-contact .wpcf7-form input[type=checkbox] + .wpcf7-list-item-label:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 1.40625vw;
  height: 1.40625vw;
  margin: 0;
  background: unset;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 62%;
  border: 0.15625vw solid #020617;
  border-radius: 0.3125vw;
  box-sizing: border-box;
  transition: 0.2s;
}
@media (max-width: 1024px) {
  .page-contact__checkTxt:before, .page-contact .wpcf7-form input[type=checkbox] + .wpcf7-list-item-label:before {
    width: 18px;
    height: 18px;
    border-width: 2px;
    border-radius: 4px;
  }
}
@media (max-width: 767px) {
  .page-contact__checkTxt:before, .page-contact .wpcf7-form input[type=checkbox] + .wpcf7-list-item-label:before {
    width: 4.0909090909vw;
    height: 4.0909090909vw;
    border-width: 0.4545454545vw;
    border-radius: 0.9090909091vw;
  }
}
.page-contact__checkTxt:after, .page-contact .wpcf7-form input[type=checkbox] + .wpcf7-list-item-label:after {
  display: none;
}
.page-contact__checkLink {
  color: inherit;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
  position: relative;
  z-index: 3;
}
@media (hover: hover) and (min-width: 768px) {
  .page-contact__checkLink:hover {
    opacity: 0.7;
  }
}
.page-contact__checkInput:checked + .page-contact__checkTxt:before, .page-contact__checkInput:checked + .wpcf7-list-item-label:before {
  background-color: #1d4ed8;
  background-image: url("img/common/check.svg") !important;
  border-color: #1d4ed8;
}
.page-contact__checkInput:focus-visible + .page-contact__checkTxt:before, .page-contact__checkInput:focus-visible + .wpcf7-list-item-label:before {
  outline: 2px solid #1d4ed8;
  outline-offset: 2px;
}
.page-contact__submit {
  text-align: center;
  margin-top: 2.5vw;
}
@media (max-width: 1024px) {
  .page-contact__submit {
    margin-top: 32px;
  }
}
@media (max-width: 767px) {
  .page-contact__submit {
    margin-top: 6.3636363636vw;
  }
}
.page-contact__submit .page-contact__btn-wrapper {
  position: relative;
}
.page-contact__submit .page-contact__submit-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  opacity: 0;
  border: none;
  padding: 0;
  margin: 0;
  z-index: 2;
}
.page-contact__submit .wpcf7-spinner {
  position: absolute;
  top: 50%;
  right: -30px;
  transform: translateY(-50%);
  margin: 0;
}

/* layout > page > privacy-policy
============================================================================================================ */
.page-privacy {
  padding-top: 0;
  padding-bottom: 0;
}
@media (max-width: 767px) {
  .page-privacy {
    padding-top: 0;
    padding-bottom: 0;
  }
}
.page-privacy__inner {
  max-width: 93.75vw;
  width: 100%;
  margin: 0 auto;
  padding: 0 3.125vw;
}
@media (max-width: 1024px) {
  .page-privacy__inner {
    max-width: 1200px;
    padding: 0 40px;
  }
}
@media (max-width: 767px) {
  .page-privacy__inner {
    padding: 0 7.2727272727vw;
  }
}
.page-privacy__block {
  margin-top: 4.921875vw;
}
@media (max-width: 1024px) {
  .page-privacy__block {
    margin-top: 63px;
  }
}
@media (max-width: 767px) {
  .page-privacy__block {
    margin-top: 9.0909090909vw;
  }
}
.page-privacy__block:first-of-type {
  margin-top: 0;
}
.page-privacy__ttl {
  font-size: 16px;
  font-size: 2.5vw;
  font-weight: 900;
  line-height: 1.59375;
  letter-spacing: 0.1em;
  margin-bottom: 1.875vw;
}
@media (max-width: 1024px) {
  .page-privacy__ttl {
    font-size: 32px;
    font-size: 2rem;
    margin-bottom: 24px;
  }
}
@media (max-width: 767px) {
  .page-privacy__ttl {
    font-size: 9px;
    font-size: 4.0909090909vw;
    line-height: 1.6111111111;
    margin-bottom: 2.7272727273vw;
  }
}
.page-privacy__txt {
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
}
@media (max-width: 1024px) {
  .page-privacy__txt {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .page-privacy__txt {
    font-size: 7px;
    font-size: 3.1818181818vw;
  }
}
.page-privacy__note {
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
  padding-left: 1.3em;
  text-indent: -1.3em;
}
@media (max-width: 1024px) {
  .page-privacy__note {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .page-privacy__note {
    font-size: 7px;
    font-size: 3.1818181818vw;
  }
}
.page-privacy__noteMark {
  margin-right: 0.15em;
}
.page-privacy__contact {
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
  margin-top: 0.625vw;
}
@media (max-width: 1024px) {
  .page-privacy__contact {
    font-size: 18px;
    font-size: 1.125rem;
    margin-top: 8px;
  }
}
@media (max-width: 767px) {
  .page-privacy__contact {
    font-size: 8px;
    font-size: 3.6363636364vw;
    margin-top: 2.7272727273vw;
  }
}
.page-privacy__contact + .page-privacy__contact {
  margin-top: 0;
}
.page-privacy__contact a {
  color: inherit;
  word-break: break-all;
}
.page-privacy__version {
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.1em;
  margin-top: 6.25vw;
}
@media (max-width: 1024px) {
  .page-privacy__version {
    font-size: 18px;
    font-size: 1.125rem;
    margin-top: 80px;
  }
}
@media (max-width: 767px) {
  .page-privacy__version {
    font-size: 7px;
    font-size: 3.1818181818vw;
    margin-top: 9.0909090909vw;
  }
}

/* module
============================================================================ */
/* module > Page Title
============================================================================ */
.common-pageTtl {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding-top: 25vw;
  padding-bottom: 6.25vw;
}
@media (max-width: 1024px) {
  .common-pageTtl {
    padding-top: 320px;
    padding-bottom: 80px;
  }
}
@media (max-width: 767px) {
  .common-pageTtl {
    padding-top: 63.6363636364vw;
    padding-bottom: 9.0909090909vw;
  }
}
.common-pageTtl__bg {
  position: absolute;
  top: -8.75vw;
  left: 0;
  right: 0;
  bottom: -10.9375vw;
  z-index: 0;
  pointer-events: none;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  background-image: -webkit-image-set(url("img/common/bg_kv.webp") type("image/webp"), url("img/common/bg_kv.png") type("image/png"));
  background-image: image-set(url("img/common/bg_kv.webp") type("image/webp"), url("img/common/bg_kv.png") type("image/png"));
  background-color: transparent;
  -webkit-mask-image: linear-gradient(135deg, #000 45%, transparent 55%);
  mask-image: linear-gradient(135deg, #000 45%, transparent 55%);
  -webkit-mask-size: 300% 300%;
  mask-size: 300% 300%;
  -webkit-mask-position: 100% 100%;
  mask-position: 100% 100%;
}
@media (max-width: 1024px) {
  .common-pageTtl__bg {
    top: -112px;
    bottom: -140px;
  }
}
@media (max-width: 767px) {
  .common-pageTtl__bg {
    top: -18.1818181818vw;
    bottom: -31.8181818182vw;
    background-image: -webkit-image-set(url("img/common/bg_kv_sp.webp") type("image/webp"), url("img/common/bg_kv_sp.png") type("image/png"));
    background-image: image-set(url("img/common/bg_kv_sp.webp") type("image/webp"), url("img/common/bg_kv_sp.png") type("image/png"));
  }
}
.common-pageTtl__splash {
  position: absolute;
  top: 28.4375vw;
  right: -1.875vw;
  width: 93.90625vw;
  aspect-ratio: 1202/607;
  z-index: 0;
  pointer-events: none;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain;
  background-image: -webkit-image-set(url("img/common/splash_01.webp") type("image/webp"), url("img/common/splash_01.png") type("image/png"));
  background-image: image-set(url("img/common/splash_01.webp") type("image/webp"), url("img/common/splash_01.png") type("image/png"));
}
@media (max-width: 1024px) {
  .common-pageTtl__splash {
    top: 364px;
    right: -24px;
    width: min(1202px, 100%);
  }
}
@media (max-width: 767px) {
  .common-pageTtl__splash {
    display: none;
  }
}
.common-pageTtl__inner {
  position: relative;
  z-index: 1;
  max-width: 93.75vw;
  width: 100%;
  margin: 0 auto;
  padding: 0 3.125vw;
}
@media (max-width: 1024px) {
  .common-pageTtl__inner {
    max-width: 1200px;
    padding: 0 40px;
  }
}
@media (max-width: 767px) {
  .common-pageTtl__inner {
    padding: 0 7.2727272727vw;
  }
}
.common-pageTtl__en {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  color: #020617;
  font-size: 40px;
  font-size: 6.25vw;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media (max-width: 1024px) {
  .common-pageTtl__en {
    font-size: 80px;
    font-size: 5rem;
  }
}
@media (max-width: 767px) {
  .common-pageTtl__en {
    font-size: 20px;
    font-size: 9.0909090909vw;
  }
}
.common-pageTtl--company {
  padding-bottom: 5.15625vw;
}
@media (max-width: 1024px) {
  .common-pageTtl--company {
    padding-bottom: 66px;
  }
}
@media (max-width: 767px) {
  .common-pageTtl--company {
    padding-bottom: 12.7272727273vw;
  }
}
.common-pageTtl__ja {
  color: #020617;
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1em;
  margin-top: 2.5vw;
}
@media (max-width: 1024px) {
  .common-pageTtl__ja {
    font-size: 18px;
    font-size: 1.125rem;
    margin-top: 32px;
  }
}
@media (max-width: 767px) {
  .common-pageTtl__ja {
    font-size: 8px;
    font-size: 3.6363636364vw;
    margin-top: 2.7272727273vw;
  }
}

body.loaded .common-pageTtl__bg {
  animation: kvReveal 0.85s cubic-bezier(0.45, 0, 0.25, 1) 0.5s forwards;
}

@keyframes kvReveal {
  0% {
    -webkit-mask-position: 100% 100%;
    mask-position: 100% 100%;
  }
  100% {
    -webkit-mask-position: 0% 0%;
    mask-position: 0% 0%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .common-pageTtl__bg,
  body.loaded .common-pageTtl__bg {
    animation: none;
    -webkit-mask-image: none;
    mask-image: none;
  }
}
/* module > form
============================================================================ */
/*////////////////////////// 基本スタイル //////////////////////////*/
input[type=text], input[type=email], input[type=tel], select, textarea {
  font-size: 14px;
  font-size: 0.875rem;
}
input[type=text]:-moz-placeholder, input[type=email]:-moz-placeholder, input[type=tel]:-moz-placeholder, select:-moz-placeholder, textarea:-moz-placeholder {
  color: #aaa;
}
input[type=text]:placeholder-shown, input[type=email]:placeholder-shown, input[type=tel]:placeholder-shown, select:placeholder-shown, textarea:placeholder-shown {
  color: #aaa;
}
input[type=text]::-webkit-input-placeholder, input[type=email]::-webkit-input-placeholder, input[type=tel]::-webkit-input-placeholder, select::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: #aaa;
}
input[type=text]:-moz-placeholder, input[type=email]:-moz-placeholder, input[type=tel]:-moz-placeholder, select:-moz-placeholder, textarea:-moz-placeholder {
  color: #aaa;
  opacity: 1;
}
input[type=text]::-moz-placeholder, input[type=email]::-moz-placeholder, input[type=tel]::-moz-placeholder, select::-moz-placeholder, textarea::-moz-placeholder {
  color: #aaa;
  opacity: 1;
}
input[type=text]:-ms-input-placeholder, input[type=email]:-ms-input-placeholder, input[type=tel]:-ms-input-placeholder, select:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #aaa;
}
input[type=text], input[type=email], input[type=tel], select, textarea {
  width: 100%;
  padding: 2px 7px;
  min-height: auto;
  outline: none;
  background: #fff;
  border: 1px solid gray;
  box-sizing: border-box;
  -webkit-appearance: none; /* ベンダープレフィックス(Google Chrome、Safari用) */
  -moz-appearance: none; /* ベンダープレフィックス(Firefox用) */
  vertical-align: bottom;
}
@media (max-width: 767px) {
  input[type=text], input[type=email], input[type=tel], select, textarea {
    font-size: 14px;
    font-size: 6.3636363636vw;
    padding: 0 3.1818181818vw;
  }
}

/*////////////////////////// テキストエリア //////////////////////////*/
textarea {
  height: 238px;
}
@media (max-width: 767px) {
  textarea {
    height: 122.7272727273vw;
  }
}

/*////////////////////////// セレクトボックス //////////////////////////*/
select {
  height: 39px;
  -webkit-appearance: none; /* ベンダープレフィックス(Google Chrome、Safari用) */
  -moz-appearance: none; /* ベンダープレフィックス(Firefox用) */
  appearance: none; /* 標準のスタイルを無効にする */
  position: relative;
  background-image: url("./img/common/arw_select.svg");
  background-repeat: no-repeat;
  background-size: 20px;
  background-position: center right 10px;
  box-sizing: border-box;
}

::-ms-expand { /* select要素のデザインを無効にする（IE用） */
  display: none;
}

/*////////////////////////// ラジオボタン //////////////////////////*/
.mw_wp_form .mwform-radio-field.horizontal-item {
  position: relative;
  margin-right: 30px;
}
@media (max-width: 767px) {
  .mw_wp_form .mwform-radio-field.horizontal-item {
    margin-right: 6.8181818182vw;
  }
}
.mw_wp_form .mwform-radio-field.horizontal-item + .horizontal-item {
  margin-left: 0;
  margin-right: 30px;
}
@media (max-width: 767px) {
  .mw_wp_form .mwform-radio-field.horizontal-item + .horizontal-item {
    margin-right: 6.8181818182vw;
  }
}
.mw_wp_form .mwform-radio-field-text {
  display: inline-flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 300;
}
@media (max-width: 767px) {
  .mw_wp_form .mwform-radio-field-text {
    font-size: 15px;
    font-size: 6.8181818182vw;
    line-height: 1.5;
  }
}
.mw_wp_form input[type=radio] {
  position: absolute;
  opacity: 0;
}
.mw_wp_form input[type=radio] + .mwform-radio-field-text:before {
  content: "";
  background: #fff;
  border-radius: 50%;
  border: 1px solid black;
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-right: 10px;
  vertical-align: top;
  cursor: pointer;
  text-align: center;
  transition: all 250ms ease;
}
.mw_wp_form input[type=radio]:checked + .mwform-radio-field-text:before {
  background-color: #3197EE;
  box-shadow: inset 0 0 0 2px #fff;
}
.mw_wp_form input[type=radio]:focus + .mwform-radio-field-text:before {
  outline: none;
  border-color: #3197EE;
}
.mw_wp_form input[type=radio] + .mwform-radio-field-text:empty:before {
  margin-right: 0;
}

.wpcf7-form .wpcf7-radio .wpcf7-list-item {
  position: relative;
  margin-right: 30px;
  cursor: pointer;
}
@media (max-width: 767px) {
  .wpcf7-form .wpcf7-radio .wpcf7-list-item {
    margin-right: 6.8181818182vw;
  }
}
.wpcf7-form .wpcf7-radio .wpcf7-list-item:first-of-type {
  margin-left: 0;
}

.wpcf7-radio .wpcf7-list-item-label {
  display: inline-flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 300;
}
@media (max-width: 767px) {
  .wpcf7-radio .wpcf7-list-item-label {
    font-size: 15px;
    font-size: 6.8181818182vw;
    line-height: 1.5;
  }
}
.wpcf7-radio input[type=radio] {
  position: absolute;
  opacity: 0;
}
.wpcf7-radio input[type=radio] + .wpcf7-list-item-label:before {
  content: "";
  background: #fff;
  border-radius: 50%;
  border: 1px solid black;
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-right: 10px;
  vertical-align: top;
  cursor: pointer;
  text-align: center;
  transition: all 250ms ease;
}
.wpcf7-radio input[type=radio]:checked + .wpcf7-list-item-label:before {
  background-color: #3197EE;
  box-shadow: inset 0 0 0 2px #fff;
}
.wpcf7-radio input[type=radio]:focus + .wpcf7-list-item-label:before {
  outline: none;
  border-color: #3197EE;
}
.wpcf7-radio input[type=radio] + .wpcf7-list-item-label:empty:before {
  margin-right: 0;
}
.wpcf7-radio input[type=radio] {
  position: absolute;
  opacity: 0;
}
.wpcf7-radio input[type=radio] + .wpcf7-list-item-label:before {
  content: "";
  background: #fff;
  border-radius: 50%;
  border: 1px solid black;
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-right: 10px;
  vertical-align: top;
  cursor: pointer;
  text-align: center;
  transition: all 250ms ease;
}
.wpcf7-radio input[type=radio]:checked + .wpcf7-list-item-label:before {
  background-color: #3197EE;
  box-shadow: inset 0 0 0 2px #fff;
}
.wpcf7-radio input[type=radio]:focus + .wpcf7-list-item-label:before {
  outline: none;
  border-color: #3197EE;
}
.wpcf7-radio input[type=radio] + .wpcf7-list-item-label:empty:before {
  margin-right: 0;
}

/*///////////////// チェックボックス //////////////////////////*/
.mw_wp_form .mwform-checkbox-field.horizontal-item {
  display: block;
}
.mw_wp_form .mwform-checkbox-field.horizontal-item + .horizontal-item {
  margin-left: 0;
}
.mw_wp_form .mwform-checkbox-field.horizontal-item:nth-of-type(n + 2) {
  margin-top: 20px;
}
.mw_wp_form .mwform-checkbox-field-text {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: 300;
}
@media (max-width: 767px) {
  .mw_wp_form .mwform-checkbox-field-text {
    font-size: 15px;
    font-size: 6.8181818182vw;
    line-height: 1.5;
  }
}
.mw_wp_form input[type=checkbox] {
  position: absolute;
  opacity: 0;
}
.mw_wp_form input[type=checkbox] + .mwform-checkbox-field-text {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  position: relative;
}
.mw_wp_form input[type=checkbox] + .mwform-checkbox-field-text:before {
  content: "";
  display: inline-block;
  background: #fff;
  width: 24px;
  height: 24px;
  border: 2px solid #000;
  border-radius: 4px;
  margin-right: 16px;
  cursor: pointer;
  transition: all 250ms ease;
}
@media (max-width: 767px) {
  .mw_wp_form input[type=checkbox] + .mwform-checkbox-field-text:before {
    width: 9.0909090909vw;
    height: 9.0909090909vw;
    border-radius: 1.3636363636vw;
    margin-right: 5.4545454545vw;
  }
}
.mw_wp_form input[type=checkbox] + .mwform-checkbox-field-text:after {
  content: "";
  position: absolute;
  top: 5px;
  left: 9px;
  z-index: 1;
  width: 7px;
  height: 12px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(45deg);
  opacity: 0;
  pointer-events: none;
}
@media (max-width: 767px) {
  .mw_wp_form input[type=checkbox] + .mwform-checkbox-field-text:after {
    top: 1.8181818182vw;
    left: 3.4090909091vw;
    width: 2.7272727273vw;
    height: 4.5454545455vw;
  }
}
.mw_wp_form input[type=checkbox]:checked + .mwform-checkbox-field-text:before {
  background-color: #1d4ed8;
  border-color: #1d4ed8;
}
.mw_wp_form input[type=checkbox]:checked + .mwform-checkbox-field-text:after {
  opacity: 1;
}
.mw_wp_form input[type=checkbox]:focus + .mwform-checkbox-field-text:before {
  outline: none;
  border-color: #1d4ed8;
}
.mw_wp_form input[type=checkbox] + .mwform-checkbox-field-text:empty:before {
  margin-right: 0;
}

.wpcf7-form .wpcf7-checkbox .wpcf7-list-item {
  display: block;
  margin-left: 0;
}
.wpcf7-form .wpcf7-checkbox .wpcf7-list-item:nth-of-type(n + 2) {
  margin-top: 20px;
}
@media (max-width: 767px) {
  .wpcf7-form .wpcf7-checkbox .wpcf7-list-item:nth-of-type(n + 2) {
    margin-top: 6.8181818182vw;
  }
}
.wpcf7-form .wpcf7-list-item-label {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: 300;
}
@media (max-width: 767px) {
  .wpcf7-form .wpcf7-list-item-label {
    font-size: 15px;
    font-size: 6.8181818182vw;
    line-height: 1.5;
  }
}
.wpcf7-form input[type=checkbox] {
  position: absolute;
  opacity: 0;
}
.wpcf7-form input[type=checkbox] + .wpcf7-list-item-label {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  position: relative;
}
.wpcf7-form input[type=checkbox] + .wpcf7-list-item-label:before {
  content: "";
  display: inline-block;
  background: #fff;
  width: 24px;
  height: 24px;
  border: 2px solid #000;
  border-radius: 4px;
  margin-right: 16px;
  cursor: pointer;
  transition: all 250ms ease;
}
@media (max-width: 767px) {
  .wpcf7-form input[type=checkbox] + .wpcf7-list-item-label:before {
    width: 9.0909090909vw;
    height: 9.0909090909vw;
    border-radius: 1.3636363636vw;
    margin-right: 5.4545454545vw;
  }
}
.wpcf7-form input[type=checkbox] + .wpcf7-list-item-label:after {
  content: "";
  position: absolute;
  top: 5px;
  left: 9px;
  z-index: 1;
  width: 7px;
  height: 12px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(45deg);
  opacity: 0;
  pointer-events: none;
}
@media (max-width: 767px) {
  .wpcf7-form input[type=checkbox] + .wpcf7-list-item-label:after {
    top: 1.8181818182vw;
    left: 3.4090909091vw;
    width: 2.7272727273vw;
    height: 4.5454545455vw;
  }
}
.wpcf7-form input[type=checkbox]:checked + .wpcf7-list-item-label:before {
  background-color: #1d4ed8;
  border-color: #1d4ed8;
}
.wpcf7-form input[type=checkbox]:checked + .wpcf7-list-item-label:after {
  opacity: 1;
}
.wpcf7-form input[type=checkbox]:focus + .wpcf7-list-item-label:before {
  outline: none;
  border-color: #1d4ed8;
}
.wpcf7-form input[type=checkbox] + .wpcf7-list-item-label:empty:before {
  margin-right: 0;
}

/*////////////////////////// ファイル添付 //////////////////////////*/
.mw_wp_form .form__row.file input[type=file] {
  display: none;
}
.mw_wp_form .form__row.file .form__col {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
}
.mw_wp_form .form__row.file .form__col .file_name {
  display: inline-block;
  word-break: break-all;
  line-height: 1.2;
  max-width: 40%;
  margin-left: 20px;
}
@media (max-width: 767px) {
  .mw_wp_form .form__row.file .form__col .file_name {
    max-width: 60%;
    margin-top: 4.5454545455vw;
    margin-left: 0;
  }
}
.mw_wp_form .form__row.file .mw-wp-form_file a {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.mw_wp_form .file_label {
  font-size: 16px;
  font-size: 1rem;
}
.mw_wp_form .file_label:-moz-placeholder {
  color: #aaa;
}
.mw_wp_form .file_label:placeholder-shown {
  color: #aaa;
}
.mw_wp_form .file_label::-webkit-input-placeholder {
  color: #aaa;
}
.mw_wp_form .file_label:-moz-placeholder {
  color: #aaa;
  opacity: 1;
}
.mw_wp_form .file_label::-moz-placeholder {
  color: #aaa;
  opacity: 1;
}
.mw_wp_form .file_label:-ms-input-placeholder {
  color: #aaa;
}
.mw_wp_form .file_label {
  display: block;
  width: 172px;
  padding: 2px 7px;
  min-height: auto;
  border-radius: 10px;
  outline: none;
  text-align: center;
  background: #ddd;
  cursor: pointer;
}
@media (max-width: 767px) {
  .mw_wp_form .file_label {
    font-size: 14px;
    font-size: 6.3636363636vw;
    padding: 0 3.1818181818vw;
    border-radius: 3.4090909091vw;
  }
}
.mw_wp_form .mwform-file-delete {
  margin-left: 15px;
  margin-right: 10px;
}
@media (max-width: 767px) {
  .mw_wp_form .mwform-file-delete {
    margin-left: 6.8181818182vw;
    margin-right: 4.5454545455vw;
  }
}

.mw_wp_form_confirm .file_label {
  display: none;
}

.wpcf7-form .form__row.file input[type=file] {
  display: none;
}
.wpcf7-form .form__row.file .form__col {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
}
.wpcf7-form .form__row.file .form__col .file_name {
  display: inline-block;
  word-break: break-all;
  line-height: 1.2;
  max-width: 40%;
  margin-left: 20px;
}
@media (max-width: 767px) {
  .wpcf7-form .form__row.file .form__col .file_name {
    max-width: 60%;
    margin-top: 4.5454545455vw;
    margin-left: 0;
  }
}
.wpcf7-form .form__row.file a {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.wpcf7-form .file_label {
  font-size: 16px;
  font-size: 1rem;
}
.wpcf7-form .file_label:-moz-placeholder {
  color: #aaa;
}
.wpcf7-form .file_label:placeholder-shown {
  color: #aaa;
}
.wpcf7-form .file_label::-webkit-input-placeholder {
  color: #aaa;
}
.wpcf7-form .file_label:-moz-placeholder {
  color: #aaa;
  opacity: 1;
}
.wpcf7-form .file_label::-moz-placeholder {
  color: #aaa;
  opacity: 1;
}
.wpcf7-form .file_label:-ms-input-placeholder {
  color: #aaa;
}
.wpcf7-form .file_label {
  display: block;
  width: 172px;
  padding: 2px 7px;
  min-height: auto;
  border-radius: 10px;
  outline: none;
  text-align: center;
  background: #ddd;
  cursor: pointer;
}
@media (max-width: 767px) {
  .wpcf7-form .file_label {
    font-size: 14px;
    font-size: 6.3636363636vw;
    padding: 0 3.1818181818vw;
    border-radius: 3.4090909091vw;
  }
}

.page-contact.confirm .file_label {
  display: none;
}

/*////////////////////////// ボタン //////////////////////////*/
input[type=button], input[type=reset], input[type=submit] {
  cursor: pointer;
}

/*////////////////////////// 入力画面・確認画面 //////////////////////////*/
.mw_wp_form_input .error {
  width: 100%;
}
.mw_wp_form_input .form__btn-col:first-of-type {
  display: none;
}

.mw_wp_form_confirm .form__row {
  margin-top: 40px;
}
@media (max-width: 767px) {
  .mw_wp_form_confirm .form__row {
    margin-top: 14.5454545455vw;
  }
}
.mw_wp_form_confirm .form__row.mail_confirm {
  display: none;
}
.mw_wp_form_confirm .form__col:nth-of-type(2) {
  font-size: 14px;
  font-size: 0.875rem;
}
@media (max-width: 767px) {
  .mw_wp_form_confirm .form__col:nth-of-type(2) {
    font-size: 14px;
    font-size: 6.3636363636vw;
  }
}
.mw_wp_form_confirm .form__btn {
  margin-top: 60px;
}
@media (max-width: 767px) {
  .mw_wp_form_confirm .form__btn {
    margin-top: 20.4545454545vw;
  }
}
.mw_wp_form_confirm .form__btn-col.btn__more {
  margin: 0;
}
.mw_wp_form_confirm .form__btn-col:first-of-type {
  display: block;
}
@media (max-width: 767px) {
  .mw_wp_form_confirm .form__btn-col.back {
    margin-top: 15.9090909091vw;
  }
}
.mw_wp_form_confirm .form__note {
  display: none;
}

.wpcf7-spinner {
  display: none;
}

/* module > btn
============================================================================ */
.btn-arrow {
  display: inline-flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  width: 20.859375vw;
  max-width: 100%;
  height: 4.375vw;
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-style: italic;
  font-size: 10px;
  font-size: 1.5625vw;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.1em;
  border: 0.15625vw solid currentColor;
  border-radius: 0;
  padding: 0.9375vw 2.34375vw 0.9375vw 0;
  transition: 0.3s;
  cursor: pointer;
}
@media (max-width: 1024px) {
  .btn-arrow {
    width: 267px;
    height: 56px;
    font-size: 20px;
    font-size: 1.25rem;
    border-width: 2px;
    padding: 12px 30px 12px 0;
  }
}
@media (max-width: 767px) {
  .btn-arrow {
    width: 50.6818181818vw;
    height: 10.9090909091vw;
    font-size: 10px;
    font-size: 4.5454545455vw;
    border-width: 2px;
    padding: 2.7272727273vw 6.8181818182vw 2.7272727273vw 0;
  }
}
.btn-arrow:after {
  content: "";
  width: 0.703125vw;
  height: 1.71875vw;
  background-color: currentColor;
  -webkit-mask: url("img/common/arw_btn.svg") no-repeat center/contain;
  mask: url("img/common/arw_btn.svg") no-repeat center/contain;
  position: absolute;
  right: 2.421875vw;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.3s;
}
@media (max-width: 1024px) {
  .btn-arrow:after {
    width: 9px;
    height: 22px;
    right: 31px;
  }
}
@media (max-width: 767px) {
  .btn-arrow:after {
    width: 2.0454545455vw;
    height: 5vw;
    right: 5.2272727273vw;
  }
}
.btn-arrow:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  z-index: -1;
  width: 150%;
  aspect-ratio: 435/164;
  transform: translate(-100%, -50%);
  -webkit-mask: url("img/common/btn_brush.svg") no-repeat center/100% 100%;
  mask: url("img/common/btn_brush.svg") no-repeat center/100% 100%;
  transition: transform 0.4s ease;
}
@media (hover: hover) and (min-width: 768px) {
  .btn-arrow:hover:before {
    transform: translate(-19%, -50%);
  }
}
@media (hover: hover) and (min-width: 768px) {
  .btn-arrow:hover {
    opacity: 1;
  }
}
.btn-arrow--fill {
  color: #fff;
  background-color: #1d4ed8;
  border-color: #1d4ed8;
}
.btn-arrow--fill:before {
  background-color: #fff;
}
@media (hover: hover) and (min-width: 768px) {
  .btn-arrow--fill:hover {
    color: #1d4ed8;
    border-color: #fff;
  }
}
.btn-arrow--outline {
  color: #1d4ed8;
  background-color: #fff;
}
.btn-arrow--outline:before {
  background-color: #1d4ed8;
}
@media (hover: hover) and (min-width: 768px) {
  .btn-arrow--outline:hover {
    color: #fff;
    border-color: #1d4ed8;
  }
}
@media (max-width: 767px) {
  .btn-arrow--outline {
    color: #fff;
    background-color: #fff;
    border-color: #1d4ed8;
  }
  .btn-arrow--outline:before {
    transform: translate(-19%, -50%);
  }
}
.btn-arrow--light {
  color: #fff;
  background-color: #1d4ed8;
}
@media (max-width: 767px) {
  .btn-arrow--light:not(.btn-arrow--footer) {
    border-color: #1d4ed8;
    transition: none;
  }
  .btn-arrow--light:not(.btn-arrow--footer):before {
    transition: none;
  }
  .btn-arrow--light:not(.btn-arrow--footer):hover {
    color: #fff;
    border-color: #1d4ed8;
  }
  .btn-arrow--light:not(.btn-arrow--footer):hover:before {
    transform: translate(-100%, -50%);
  }
}
.btn-arrow--light:before {
  background-color: #fff;
}
@media (hover: hover) and (min-width: 768px) {
  .btn-arrow--light:hover {
    color: #1d4ed8;
    border-color: #fff;
  }
}
.btn-arrow--footer {
  width: 21.875vw;
  height: 4.0625vw;
  padding-right: 4.0625vw;
}
.btn-arrow--footer:after {
  right: 3.4375vw;
}
@media (max-width: 1024px) {
  .btn-arrow--footer {
    width: 280px;
    height: 52px;
    padding-right: 52px;
  }
  .btn-arrow--footer:after {
    right: 44px;
  }
}
@media (max-width: 767px) {
  .btn-arrow--footer {
    width: 63.6363636364vw;
    height: 11.8181818182vw;
    padding-right: 11.8181818182vw;
  }
  .btn-arrow--footer:after {
    right: 10vw;
  }
}
.btn-arrow--back {
  padding: 0.9375vw 0 0.9375vw 2.34375vw;
}
@media (max-width: 1024px) {
  .btn-arrow--back {
    padding: 12px 0 12px 30px;
  }
}
@media (max-width: 767px) {
  .btn-arrow--back {
    padding: 2.7272727273vw 0 2.7272727273vw 6.8181818182vw;
  }
}
.btn-arrow--back:after {
  right: auto;
  left: 2.421875vw;
  transform: translateY(-50%) scaleX(-1);
}
@media (max-width: 1024px) {
  .btn-arrow--back:after {
    right: auto;
    left: 31px;
  }
}
@media (max-width: 767px) {
  .btn-arrow--back:after {
    right: auto;
    left: 5.2272727273vw;
  }
}
.btn-arrow--back:before {
  left: auto;
  right: 0;
  transform: translate(100%, -50%) scaleX(-1);
}
@media (max-width: 767px) {
  .btn-arrow--back:before {
    transform: translate(19%, -50%) scaleX(-1);
  }
}
@media (hover: hover) and (min-width: 768px) {
  .btn-arrow--back:hover:before {
    transform: translate(19%, -50%) scaleX(-1);
  }
}

.btn__more {
  font-size: 14px;
  font-size: 0.875rem;
  position: relative;
  display: block;
  width: 261px;
  padding: 15px 0;
  margin: 50px auto 0;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1em;
  left: 0.05em;
  background: #020617;
  color: #fff;
  text-align: center;
  cursor: pointer;
}
@media (max-width: 767px) {
  .btn__more {
    font-size: 13px;
    font-size: 5.9090909091vw;
    width: 98.8636363636vw;
    padding-bottom: 9.0909090909vw;
    margin-top: 19.3181818182vw;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .btn__more:hover {
    opacity: 1;
  }
}

/*  module > breadcrumbs
============================================================================================================ */
/* module > pagination （WP-Pagenavi）
============================================================================ */
.mod-news__item:nth-of-type(n + 2) {
  border-top: 0.15625vw solid rgba(29, 78, 216, 0.3);
}
@media (max-width: 1024px) {
  .mod-news__item:nth-of-type(n + 2) {
    border-top-width: 2px;
  }
}
@media (max-width: 767px) {
  .mod-news__item:nth-of-type(n + 2) {
    border-top: none;
  }
}
@media (max-width: 767px) {
  .mod-news__item {
    margin-bottom: 10.4545454545vw;
  }
  .mod-news__item:last-of-type {
    margin-bottom: 0;
  }
}
.mod-news__link {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  padding: 2.5vw 0;
}
@media (max-width: 1024px) {
  .mod-news__link {
    padding: 32px 0;
  }
}
@media (max-width: 767px) {
  .mod-news__link {
    display: block;
    position: relative;
    padding: 0;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .mod-news__link:hover {
    opacity: 1;
  }
  .mod-news__link:hover .mod-news__thumb img {
    transform: scale(1.25);
  }
  .mod-news__link:hover .mod-news__date {
    color: rgba(29, 78, 216, 0.6);
  }
  .mod-news__link:hover .mod-news__cat {
    background-color: rgba(29, 78, 216, 0.6);
  }
  .mod-news__link:hover .mod-news__ttl {
    color: rgba(29, 78, 216, 0.7);
  }
}
.mod-news__thumb {
  width: 28.57%;
  aspect-ratio: 320/180;
  background-color: #dddddd;
  overflow: hidden;
}
@media (max-width: 767px) {
  .mod-news__thumb {
    width: 100%;
  }
}
.mod-news__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.4s ease;
}
.mod-news__body {
  width: 67.85%;
}
@media (max-width: 767px) {
  .mod-news__body {
    width: 100%;
    padding-top: 3.6363636364vw;
  }
}
.mod-news__meta {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  margin-bottom: 1.875vw;
}
@media (max-width: 1024px) {
  .mod-news__meta {
    margin-bottom: 24px;
  }
}
@media (max-width: 767px) {
  .mod-news__meta {
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 2.7272727273vw;
  }
}
.mod-news__date {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-style: italic;
  font-size: 16px;
  font-size: 2.5vw;
  font-weight: 600;
  line-height: 1;
  color: #1d4ed8;
  transition: color 0.3s;
}
@media (max-width: 1024px) {
  .mod-news__date {
    font-size: 32px;
    font-size: 2rem;
  }
}
@media (max-width: 767px) {
  .mod-news__date {
    font-size: 16px;
    font-size: 7.2727272727vw;
  }
}
.mod-news__cat {
  display: inline-flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  min-width: 10.9375vw;
  height: 2.34375vw;
  margin-left: 1.875vw;
  padding: 0 0.9375vw;
  background-color: #1d4ed8;
  color: #fff;
  font-size: 7px;
  font-size: 1.09375vw;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
  transition: background-color 0.3s;
}
@media (max-width: 1024px) {
  .mod-news__cat {
    min-width: 140px;
    height: 30px;
    margin-left: 24px;
    padding: 0 12px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) {
  .mod-news__cat {
    font-size: 7px;
    font-size: 3.1818181818vw;
    min-width: 31.8181818182vw;
    height: auto;
    padding: 1.8181818182vw 2.7272727273vw;
    margin-left: 0vw;
  }
}
.mod-news__ttl {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  color: #1d4ed8;
  font-size: 9px;
  font-size: 1.40625vw;
  font-weight: 700;
  line-height: 1.6111111111;
  letter-spacing: 0.1em;
  transition: color 0.3s;
}
@media (max-width: 1024px) {
  .mod-news__ttl {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media (max-width: 767px) {
  .mod-news__ttl {
    font-size: 8px;
    font-size: 3.6363636364vw;
    line-height: 1.625;
  }
}
.mod-news__arrow {
  display: none;
}

/* module > recruit
============================================================================ */
.mod-recruit {
  position: relative;
}
.mod-recruit__band {
  position: relative;
  background-image: linear-gradient(#c8c8c8, #c8c8c8);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% calc(100% - 13.90625vw + 6px);
  padding: 9.375vw 0 9.375vw;
}
@media (max-width: 1024px) {
  .mod-recruit__band {
    padding: 120px 0 120px;
  }
}
@media (max-width: 767px) {
  .mod-recruit__band {
    background-image: linear-gradient(#dddddd, #dddddd);
    background-size: 100% calc(100% - 40.4545454545vw + 6px);
    padding: 18.1818181818vw 0 18.1818181818vw;
  }
}
.mod-recruit__band:before, .mod-recruit__band:after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  aspect-ratio: 1280/89;
  background: no-repeat center/100% 100%;
  pointer-events: none;
}
@media (max-width: 767px) {
  .mod-recruit__band:before, .mod-recruit__band:after {
    aspect-ratio: 440/89;
  }
}
.mod-recruit__band:before {
  top: 0.078125vw;
  background-image: -webkit-image-set(url("img/company/bg_recruit_edge_top.webp") type("image/webp"), url("img/company/bg_recruit_edge_top.png") type("image/png"));
  background-image: image-set(url("img/company/bg_recruit_edge_top.webp") type("image/webp"), url("img/company/bg_recruit_edge_top.png") type("image/png"));
}
@media (max-width: 767px) {
  .mod-recruit__band:before {
    top: 0.2272727273vw;
    background-image: -webkit-image-set(url("img/company/bg_recruit_edge_top_sp.webp") type("image/webp"), url("img/company/bg_recruit_edge_top_sp.png") type("image/png"));
    background-image: image-set(url("img/company/bg_recruit_edge_top_sp.webp") type("image/webp"), url("img/company/bg_recruit_edge_top_sp.png") type("image/png"));
  }
}
.mod-recruit__band:after {
  bottom: 0.078125vw;
  background-image: -webkit-image-set(url("img/company/bg_recruit_edge_btm.webp") type("image/webp"), url("img/company/bg_recruit_edge_btm.png") type("image/png"));
  background-image: image-set(url("img/company/bg_recruit_edge_btm.webp") type("image/webp"), url("img/company/bg_recruit_edge_btm.png") type("image/png"));
}
@media (max-width: 767px) {
  .mod-recruit__band:after {
    bottom: 0.2272727273vw;
    background-image: -webkit-image-set(url("img/company/bg_recruit_edge_btm_sp.webp") type("image/webp"), url("img/company/bg_recruit_edge_btm_sp.png") type("image/png"));
    background-image: image-set(url("img/company/bg_recruit_edge_btm_sp.webp") type("image/webp"), url("img/company/bg_recruit_edge_btm_sp.png") type("image/png"));
  }
}
.mod-recruit__bg {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  -webkit-mask: url("img/company/bg_recruit_edge_top.png") no-repeat left top/100% auto, linear-gradient(#000, #000) no-repeat center/100% calc(100% - 13.90625vw + 6px), url("img/company/bg_recruit_edge_btm.png") no-repeat left bottom/100% auto;
  mask: url("img/company/bg_recruit_edge_top.png") no-repeat left top/100% auto, linear-gradient(#000, #000) no-repeat center/100% calc(100% - 13.90625vw + 6px), url("img/company/bg_recruit_edge_btm.png") no-repeat left bottom/100% auto;
}
@media (max-width: 767px) {
  .mod-recruit__bg {
    -webkit-mask: url("img/company/bg_recruit_edge_top_sp.png") no-repeat left top/100% auto, linear-gradient(#000, #000) no-repeat center/100% calc(100% - 40.4545454545vw + 6px), url("img/company/bg_recruit_edge_btm_sp.png") no-repeat left bottom/100% auto;
    mask: url("img/company/bg_recruit_edge_top_sp.png") no-repeat left top/100% auto, linear-gradient(#000, #000) no-repeat center/100% calc(100% - 40.4545454545vw + 6px), url("img/company/bg_recruit_edge_btm_sp.png") no-repeat left bottom/100% auto;
  }
}
.mod-recruit__bg:after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(255, 255, 255, 0.65);
}
.mod-recruit__bg picture {
  display: block;
  width: 100%;
  height: 100%;
}
.mod-recruit__bg img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.mod-recruit__inner {
  position: relative;
  z-index: 2;
  max-width: 93.75vw;
  width: 100%;
  margin: 0 auto;
  padding: 0 3.125vw;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-start;
  align-content: normal;
  flex-direction: row;
  gap: 6.25vw;
}
@media (max-width: 1024px) {
  .mod-recruit__inner {
    max-width: 1200px;
    padding: 0 40px;
    gap: 80px;
  }
}
@media (max-width: 767px) {
  .mod-recruit__inner {
    display: block;
    padding: 0 7.2727272727vw;
  }
}
.mod-recruit__body {
  width: 40.625vw;
}
@media (max-width: 1024px) {
  .mod-recruit__body {
    width: 520px;
  }
}
@media (max-width: 767px) {
  .mod-recruit__body {
    width: 100%;
  }
}
.mod-recruit__ttl {
  font-family: "futura-pt", "Futura", "Noto Sans JP", sans-serif;
  font-style: italic;
  color: #1d4ed8;
  font-size: 40px;
  font-size: 6.25vw;
  font-weight: 700;
  line-height: 1;
}
@media (max-width: 1024px) {
  .mod-recruit__ttl {
    font-size: 80px;
    font-size: 5rem;
  }
}
@media (max-width: 767px) {
  .mod-recruit__ttl {
    font-size: 20px;
    font-size: 9.0909090909vw;
  }
}
.mod-recruit__txt {
  font-size: 8px;
  font-size: 1.25vw;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.1em;
  margin-top: 2.5vw;
}
@media (max-width: 1024px) {
  .mod-recruit__txt {
    font-size: 16px;
    font-size: 1rem;
    margin-top: 32px;
  }
}
@media (max-width: 767px) {
  .mod-recruit__txt {
    font-size: 7px;
    font-size: 3.1818181818vw;
    margin-top: 5.4545454545vw;
  }
}
.mod-recruit__btn {
  margin-top: 3.125vw;
}
@media (max-width: 1024px) {
  .mod-recruit__btn {
    margin-top: 40px;
  }
}
@media (max-width: 767px) {
  .mod-recruit__btn {
    margin-top: 36.3636363636vw;
    text-align: right;
    line-height: 0;
  }
}
.mod-recruit__img {
  width: 9.375vw;
  height: 9.375vw;
  margin-top: 9.6875vw;
  background-color: #fff;
}
@media (max-width: 1024px) {
  .mod-recruit__img {
    width: 120px;
    height: 120px;
    margin-top: 124px;
  }
}
@media (max-width: 767px) {
  .mod-recruit__img {
    width: 27.2727272727vw;
    height: 27.2727272727vw;
    margin-top: 5.4545454545vw;
  }
}

/* module > reveal
============================================================================ */
.js-reveal {
  position: relative;
  overflow: hidden;
}
.js-reveal > * {
  opacity: 0;
}
.js-reveal:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #1d4ed8;
  transform: scaleX(0);
  transform-origin: left center;
  pointer-events: none;
  z-index: 1;
}
.js-reveal.is-inview > * {
  animation: revealShow 0.01s linear 0.55s forwards;
}
.js-reveal.is-inview:after {
  animation: revealCurtain 1.1s cubic-bezier(0.77, 0, 0.18, 1) forwards, revealCurtainGone 0.01s linear 1.1s forwards;
}

@keyframes revealCurtain {
  0% {
    transform: scaleX(0);
    transform-origin: left center;
  }
  45% {
    transform: scaleX(1);
    transform-origin: left center;
  }
  55% {
    transform: scaleX(1);
    transform-origin: right center;
  }
  100% {
    transform: scaleX(0);
    transform-origin: right center;
  }
}
@keyframes revealShow {
  to {
    opacity: 1;
  }
}
@keyframes revealHide {
  to {
    opacity: 0;
  }
}
@keyframes revealCurtainGone {
  to {
    opacity: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .js-reveal > * {
    opacity: 1;
  }
  .js-reveal:after {
    display: none;
  }
  .js-reveal.is-inview > * {
    animation: none;
  }
  .js-fade-reveal {
    opacity: 1 !important;
    animation: none !important;
  }
  .js-soft-reveal {
    visibility: visible !important;
    -webkit-mask: none !important;
    mask: none !important;
    animation: none !important;
  }
  .js-bg-reveal {
    background-color: #1d4ed8 !important;
    animation: none !important;
  }
  .js-seq-reveal {
    visibility: visible !important;
    -webkit-mask: none !important;
    mask: none !important;
    animation: none !important;
  }
}
.js-seq-reveal {
  visibility: hidden;
}
.js-seq-reveal.is-inview {
  visibility: visible;
}

.js-bg-reveal.js-bg-reveal {
  background-color: transparent;
}
.js-bg-reveal.is-inview {
  animation: bgRevealBlue 0.4s ease-out forwards;
}

@keyframes bgRevealBlue {
  to {
    background-color: #1d4ed8;
  }
}
.js-soft-reveal {
  visibility: hidden;
  -webkit-mask-image: linear-gradient(135deg, #000 45%, transparent 55%);
  mask-image: linear-gradient(135deg, #000 45%, transparent 55%);
  -webkit-mask-size: 300% 300%;
  mask-size: 300% 300%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: 100% 100%;
  mask-position: 100% 100%;
}
.js-soft-reveal.is-inview {
  visibility: visible;
  animation: softSweepTLBR 1.2s cubic-bezier(0.65, 0, 0.35, 1) forwards;
}
.js-soft-reveal--rtl {
  -webkit-mask-image: linear-gradient(270deg, #000 45%, transparent 55%);
  mask-image: linear-gradient(270deg, #000 45%, transparent 55%);
  -webkit-mask-position: 0% 50%;
  mask-position: 0% 50%;
}
.js-soft-reveal--rtl.is-inview {
  animation: softSweepRTL 0.5s cubic-bezier(0.65, 0, 0.35, 1) forwards;
}
.js-soft-reveal--ltr {
  -webkit-mask-image: linear-gradient(90deg, #000 45%, transparent 55%);
  mask-image: linear-gradient(90deg, #000 45%, transparent 55%);
  -webkit-mask-position: 100% 50%;
  mask-position: 100% 50%;
}
.js-soft-reveal--ltr.is-inview {
  animation: softSweepLTR 0.5s cubic-bezier(0.65, 0, 0.35, 1) forwards;
}
.js-soft-reveal--down {
  -webkit-mask-image: linear-gradient(225deg, #000 45%, transparent 55%);
  mask-image: linear-gradient(225deg, #000 45%, transparent 55%);
  -webkit-mask-position: 0% 100%;
  mask-position: 0% 100%;
}
.js-soft-reveal--down.is-inview {
  animation: softSweepDown 1.2s cubic-bezier(0.65, 0, 0.35, 1) forwards;
}

@keyframes softSweepTLBR {
  to {
    -webkit-mask-position: 0% 0%;
    mask-position: 0% 0%;
  }
}
@keyframes softSweepLTR {
  to {
    -webkit-mask-position: 0% 50%;
    mask-position: 0% 50%;
  }
}
@keyframes softSweepRTL {
  to {
    -webkit-mask-position: 100% 50%;
    mask-position: 100% 50%;
  }
}
@keyframes softSweepDown {
  to {
    -webkit-mask-position: 100% 0%;
    mask-position: 100% 0%;
  }
}
@keyframes softSweepUpRight {
  to {
    -webkit-mask-position: 0% 100%;
    mask-position: 0% 100%;
  }
}
.js-fade-reveal {
  opacity: 0;
}
.js-fade-reveal.is-inview {
  animation: fadeRevealIn 0.7s ease-out forwards;
}

@keyframes fadeRevealIn {
  to {
    opacity: 1;
  }
}
@keyframes sprayWipe {
  0% {
    clip-path: inset(0 100% 0 0);
  }
  45% {
    clip-path: inset(0 0 0 0);
  }
  55% {
    clip-path: inset(0 0 0 0);
  }
  100% {
    clip-path: inset(0 0 0 100%);
  }
}
@keyframes sprayEnSwap {
  to {
    color: #020617;
  }
}
@keyframes brushInUp {
  from {
    clip-path: polygon(-150% 50%, 50% 250%, 50% 250%, -150% 50%);
  }
  to {
    clip-path: polygon(50% -150%, 250% 50%, 50% 250%, -150% 50%);
  }
}
@keyframes brushInDown {
  from {
    clip-path: polygon(50% -150%, 250% 50%, 250% 50%, 50% -150%);
  }
  to {
    clip-path: polygon(-150% 50%, 50% 250%, 250% 50%, 50% -150%);
  }
}
.js-deco-reveal {
  visibility: hidden;
}
.js-deco-reveal.is-inview {
  visibility: visible;
  animation: brushInUp 1.2s cubic-bezier(0.65, 0, 0.35, 1) forwards;
}

.js-deco-reveal--down.is-inview {
  animation-name: brushInDown;
}

.js-deco-reveal--left.is-inview {
  animation-name: decoInLeft;
  animation-duration: 0.5s;
}

.js-deco-reveal--right.is-inview {
  animation-name: decoInRight;
  animation-duration: 0.5s;
}

.js-deco-reveal--rtl.is-inview {
  animation-name: decoWipeLeft;
}

.js-deco-reveal--ltr.is-inview {
  animation-name: decoWipeRight;
}

@keyframes decoWipeRight {
  from {
    clip-path: polygon(-100% 0%, -50% 0%, -50% 100%, -100% 100%);
  }
  to {
    clip-path: polygon(-100% 0%, 150% 0%, 150% 100%, -100% 100%);
  }
}
@keyframes decoWipeLeft {
  from {
    clip-path: polygon(150% 0%, 200% 0%, 200% 100%, 150% 100%);
  }
  to {
    clip-path: polygon(-50% 0%, 200% 0%, 200% 100%, -50% 100%);
  }
}
.js-deco-reveal--downright.is-inview {
  animation-name: brushInDownRight;
}

.js-deco-reveal--upleft.is-inview {
  animation-name: brushInUpLeft;
}

@keyframes decoInLeft {
  from {
    clip-path: polygon(100% 0%, 200% 0%, 200% 100%, 100% 100%);
  }
  to {
    clip-path: polygon(0% 0%, 200% 0%, 200% 100%, 0% 100%);
  }
}
@keyframes decoInRight {
  from {
    clip-path: polygon(-100% 0%, 0% 0%, 0% 100%, -100% 100%);
  }
  to {
    clip-path: polygon(-100% 0%, 100% 0%, 100% 100%, -100% 100%);
  }
}
@keyframes brushInDownRight {
  from {
    clip-path: polygon(-150% 50%, 50% -150%, 50% -150%, -150% 50%);
  }
  to {
    clip-path: polygon(-150% 50%, 50% -150%, 250% 50%, 50% 250%);
  }
}
@keyframes brushInUpLeft {
  from {
    clip-path: polygon(250% 50%, 50% 250%, 50% 250%, 250% 50%);
  }
  to {
    clip-path: polygon(250% 50%, 50% 250%, -150% 50%, 50% -150%);
  }
}
@media (prefers-reduced-motion: reduce) {
  .js-deco-reveal,
  .js-deco-reveal--down,
  .js-deco-reveal--left,
  .js-deco-reveal--right,
  .js-deco-reveal--rtl,
  .js-deco-reveal--ltr,
  .js-deco-reveal--downright,
  .js-deco-reveal--upleft {
    visibility: visible;
    clip-path: none;
  }
  .js-deco-reveal.is-inview,
  .js-deco-reveal--down.is-inview,
  .js-deco-reveal--left.is-inview,
  .js-deco-reveal--right.is-inview,
  .js-deco-reveal--rtl.is-inview,
  .js-deco-reveal--ltr.is-inview,
  .js-deco-reveal--downright.is-inview,
  .js-deco-reveal--upleft.is-inview {
    animation: none;
  }
}
.is-skip, .is-skip *, .is-skip:before, .is-skip:after, .is-skip *:before, .is-skip *:after {
  animation-duration: 0s !important;
  animation-delay: 0s !important;
}

/* module > dia orbit（サービス図ドット周回キーフレーム）
============================================================================ */
@keyframes orbitDia2 {
  0% {
    left: 71.215%;
    top: 0%;
  }
  25% {
    left: 100%;
    top: 29.272%;
  }
  50% {
    left: 71.215%;
    top: 58.545%;
  }
  75% {
    left: 42.429%;
    top: 29.272%;
  }
  100% {
    left: 71.215%;
    top: 0%;
  }
}
@keyframes orbitDia3 {
  0% {
    left: 28.785%;
    top: 41.455%;
  }
  25% {
    left: 57.571%;
    top: 70.728%;
  }
  50% {
    left: 28.785%;
    top: 100%;
  }
  75% {
    left: 0%;
    top: 70.728%;
  }
  100% {
    left: 28.785%;
    top: 41.455%;
  }
}
@keyframes orbitDia4 {
  0% {
    left: 71.215%;
    top: 41.455%;
  }
  25% {
    left: 100%;
    top: 70.728%;
  }
  50% {
    left: 71.215%;
    top: 100%;
  }
  75% {
    left: 42.429%;
    top: 70.728%;
  }
  100% {
    left: 71.215%;
    top: 41.455%;
  }
}/*# sourceMappingURL=style.css.map */