@charset "UTF-8";
/*
 * 基本設計について
 * このプロジェクトは、基本的にPCファーストで設計されています。
 * 詳細は、_global/_breakpoints.scssを参照してください。
 */
/*
 * リセットCSSについて
 * ブラウザのデフォルトスタイルをリセットします。
 */
/*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.min.css */
*,
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
  min-width: 0;
}

html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
}

body {
  margin: 0;
}

main {
  display: block;
}

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

dt {
  font-weight: 700;
}

dd {
  margin-left: 0;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

pre {
  /* stylelint-disable-next-line font-family-no-duplicate-names */
  font-family: monospace, monospace;
  font-size: inherit;
}

address {
  font-style: inherit;
}

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

abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp {
  /* stylelint-disable-next-line font-family-no-duplicate-names */
  font-family: monospace, monospace;
  font-size: inherit;
}

small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit;
}

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

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

option {
  padding: 0;
}

fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}

legend {
  padding: 0;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

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

[type=search] {
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

[type=number] {
  -moz-appearance: textfield;
}

label[for] {
  cursor: pointer;
}

details {
  display: block;
}

summary {
  display: list-item;
}

[contenteditable]:focus {
  outline: auto;
}

table {
  border-color: inherit;
  border-collapse: collapse;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: 700;
}

/*
 * フォントについて
 * フォントの定義を行います。
 */
/*
 * 変数について
 * プロジェクト全体で使用される変数を定義します。
 */
:root {
  --font-size__base: 16;
  --font-family__base: "Noto Sans JP", sans-serif;
  --font-family__jost: "Jost", sans-serif;
  --font-family__montserrat: "Montserrat", sans-serif;
  --max-width__base: 1920;
  --width__contents: 1280;
  --space-inline__base: 25;
  --width__breakpoint: calc(
    var(--width__contents) + (var(--space-inline__base) * 2)
  );
  --js-height__header: 68px;
  --color__text: #343232;
  --color__brand-red: #d70c18;
  --color__brand-orange: #e7410b;
  --color__brand-orange-light: #f84103;
  --color__brand-cyan: #5fbfc6;
  --color__brand-cyan-light: #5fc0c6;
  --color__brand-navy: #05315c;
  --color__error: #e53e3e;
  --color__error-light: #fed7d7;
  --color__warning: #dd6b20;
  --color__warning-light: #feebc8;
  --color__success: #38a169;
  --color__success-light: #c6f6d5;
  --color__form-label: #6b5c57;
  --color__form-border: #cdc6c2;
  --color__form-placeholder: #bababa;
  --color__form-divider: #ebe9e8;
  --color__black: #050505;
  --color__gray-900: #1a222c;
  --color__gray-600: #090a0c;
  --color__gray-500: #5d5d5d;
  --color__gray-300: #b9bcbf;
  --color__gray-200: #e3e3e3;
  --color__gray-100: #f7f7f7;
  --color__line: #06c755;
  --color__x: #000;
  --color__instagram: #ff0069;
  --color__facebook: #0866ff;
  --color__youtube: #f03;
  --opacity__hover: 0.6;
  --duration__base: 0.3s;
  --radius__base: 26;
}

/*
 * ベースについて
 * 全体の基本的なスタイルを定義します。
 * フォント、色、共通の要素などの基本設定が含まれています。
 */
html {
  --_font-size: var(--font-size__base);
  --_width: var(--width__breakpoint);
  scroll-padding-top: calc(var(--wp-admin--admin-bar--height, 0) + var(--js-height__header, 0));
  font-size: calc(var(--_font-size) * 1px);
}

body {
  font-family: var(--font-family__base);
  color: var(--color__text);
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
}

img,
svg {
  width: 100%;
  height: auto;
}

a {
  display: inline-block;
}

:focus-visible {
  outline: 2px solid var(--color__main);
  outline-offset: 2px;
}

#wpadminbar {
  position: fixed !important;
}

.grecaptcha-badge {
  visibility: hidden;
}

/*
 * スクリプトについて
 * JavaScriptと連携するスタイルを定義します。
 * JSで追加されるクラスやアニメーション関連のスタイルが含まれています。
 * クラス名は、js-accordionのように命名します。
 */
:root {
  --scroll-animation-duration: 0.8s;
  --scroll-animation-delay: 0s;
  --scroll-animation-easing: cubic-bezier(0.22, 1, 0.36, 1);
  --scroll-animation-distance: calc(40 * 1rem / var(--font-size__base));
}

.js-scroll-reveal,
[data-scroll-animation] {
  --_duration: var(--scroll-animation-duration);
  --_delay: var(--scroll-animation-delay);
  --_easing: var(--scroll-animation-easing);
  --_distance: var(--scroll-animation-distance);
  transition-duration: var(--_duration);
  transition-delay: var(--_delay);
  transition-timing-function: var(--_easing);
}

.js-scroll-reveal,
[data-scroll-animation=fade-in-up] {
  opacity: 0;
  transform: translateY(var(--_distance));
  transition-property: opacity, transform;
}

.js-scroll-reveal.is-visible,
[data-scroll-animation=fade-in-up].is-visible {
  opacity: 1;
  transform: translateY(0);
}

[data-scroll-animation=fade-in] {
  opacity: 0;
  transition-property: opacity;
}

[data-scroll-animation=fade-in].is-visible {
  opacity: 1;
}

[data-scroll-animation=fade-in-down] {
  opacity: 0;
  transform: translateY(calc(var(--_distance) * -1));
  transition-property: opacity, transform;
}

[data-scroll-animation=fade-in-down].is-visible {
  opacity: 1;
  transform: translateY(0);
}

[data-scroll-animation=fade-in-left] {
  opacity: 0;
  transform: translateX(calc(var(--_distance) * -1));
  transition-property: opacity, transform;
}

[data-scroll-animation=fade-in-left].is-visible {
  opacity: 1;
  transform: translateX(0);
}

[data-scroll-animation=fade-in-right] {
  opacity: 0;
  transform: translateX(var(--_distance));
  transition-property: opacity, transform;
}

[data-scroll-animation=fade-in-right].is-visible {
  opacity: 1;
  transform: translateX(0);
}

[data-scroll-animation=scale-in] {
  opacity: 0;
  transform: scale(0.9);
  transition-property: opacity, transform;
}

[data-scroll-animation=scale-in].is-visible {
  opacity: 1;
  transform: scale(1);
}

[data-scroll-animation=clip-up] {
  -webkit-clip-path: inset(100% 0 0 0);
          clip-path: inset(100% 0 0 0);
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
}

[data-scroll-animation=clip-up].is-visible {
  -webkit-clip-path: inset(0 0 0 0);
          clip-path: inset(0 0 0 0);
}

[data-scroll-animation=clip-down] {
  -webkit-clip-path: inset(0 0 100% 0);
          clip-path: inset(0 0 100% 0);
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
}

[data-scroll-animation=clip-down].is-visible {
  -webkit-clip-path: inset(0 0 0 0);
          clip-path: inset(0 0 0 0);
}

[data-scroll-animation=wipe-right] {
  --_duration: 1.2s;
  --_easing: cubic-bezier(0.65, 0, 0.35, 1);
  -webkit-clip-path: inset(0 100% 0 0);
          clip-path: inset(0 100% 0 0);
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
}

[data-scroll-animation=wipe-right].is-visible {
  -webkit-clip-path: inset(0 0 0 0);
          clip-path: inset(0 0 0 0);
}

[data-scroll-animation=wipe-left] {
  --_duration: 1.2s;
  --_easing: cubic-bezier(0.65, 0, 0.35, 1);
  -webkit-clip-path: inset(0 0 0 100%);
          clip-path: inset(0 0 0 100%);
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
}

[data-scroll-animation=wipe-left].is-visible {
  -webkit-clip-path: inset(0 0 0 0);
          clip-path: inset(0 0 0 0);
}
html {
  scrollbar-gutter: stable;
}

html:has(.js-overlay__trigger[aria-expanded=true]) {
  overflow-y: hidden;
}

.js-height-accordion__body {
  overflow: hidden;
  transition: height var(--duration__base);
  height: calc(var(--_collapsed-height, 590) * 1rem / var(--font-size__base));
}

.js-accordion__panel {
  display: grid;
  grid-template-rows: 0fr; /* 初期状態で高さを0に */
  transition: grid-template-rows var(--duration__base); /* スムーズなアニメーション */
}

.js-accordion__panel > div {
  overflow: hidden; /* 子要素がはみ出ないように */
}

.js-accordion__panel:not([hidden]) {
  grid-template-rows: 1fr; /* 開いた状態では高さを自動調整 */
}

/*
 * レイアウトについて
 * ページの構造を形成するレイアウト要素を定義します。
 * インナー、その他汎用的なレイアウトなどが含まれています。
 * クラス名は、l-innerのように命名します。
 */
.l-page {
  display: grid;
  grid-template-rows: auto 1fr auto;
  grid-template-columns: 100%;
  min-height: 100dvh;
}

.l-page__content {
  padding-top: var(--js-height__header, calc(72 * 1rem / var(--font-size__base)));
}

.l-page__fixed-button {
  position: fixed;
  right: calc(80 * 1rem / var(--font-size__base));
  bottom: calc(40 * 1rem / var(--font-size__base));
  z-index: 50;
  display: none;
}

.l-inner {
  --_max-width: var(--width__contents, 1280);
  --_padding-inline: var(--space-inline__base, 25);
  --_padding-right: var(--_padding-inline);
  --_padding-left: var(--_padding-inline);
  --_padding-inline__total: calc(var(--_padding-right) + var(--_padding-left));
  max-width: calc(var(--_max-width) * 1px + var(--_padding-inline__total) * 1rem / var(--font-size__base));
  width: 100%;
  margin-inline: auto;
  padding-right: calc(var(--_padding-right) * 1rem / var(--font-size__base));
  padding-left: calc(var(--_padding-left) * 1rem / var(--font-size__base));
}

.l-inner--fluid {
  max-width: calc(var(--_max-width) * 1rem / var(--font-size__base) + var(--_padding-inline__total) * 1rem / var(--font-size__base));
}

.l-inner--release-left .l-inner__content {
  margin-left: calc(50% - var(--js-width__viewport) / 2);
  padding-left: calc(var(--js-width__viewport) / 2 - 50%);
}

.l-inner--release-right .l-inner__content {
  margin-right: calc(50% - var(--js-width__viewport) / 2);
  padding-right: calc(var(--js-width__viewport) / 2 - 50%);
}

.l-grid {
  --_max-width: 1200;
  --_min-width__column: 300;
  --_column-gap: 40;
  --_row-gap: 30;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(calc(var(--_min-width__column) * 1px), 1fr));
  -moz-column-gap: calc(var(--_column-gap) / var(--_max-width) * 100%);
       column-gap: calc(var(--_column-gap) / var(--_max-width) * 100%);
  row-gap: min(var(--_row-gap) / var(--_max-width) * 100vw, var(--_row-gap) * 1px);
}

.l-container--sidebar {
  display: grid;
  grid-template-columns: 1fr calc(300 * 1rem / var(--font-size__base));
  -moz-column-gap: calc(32 * 1rem / var(--font-size__base));
       column-gap: calc(32 * 1rem / var(--font-size__base));
}

.l-2-columns {
  --_width__left: 700;
  --_width__right: 450;
  --_column-gap: 50;
  --_width__total: calc(
    var(--_width__left) + var(--_column-gap) + var(--_width__right)
  );
  display: grid;
  grid-template-columns: calc(var(--_width__left) / var(--_width__total) * 100%) calc(var(--_width__right) / var(--_width__total) * 100%);
  -moz-column-gap: calc(var(--_column-gap) / var(--_width__total) * 100%);
       column-gap: calc(var(--_column-gap) / var(--_width__total) * 100%);
}

.l-2-columns--release-left {
  margin-left: max(50% - var(--js-width__viewport) / 2, 50% - var(--max-width__base) * 1px / 2);
}

.l-2-columns--release-right {
  margin-right: max(50% - var(--js-width__viewport) / 2, 50% - var(--max-width__base) * 1px / 2);
}

.l-2-columns--reverse {
  grid-template-columns: calc(var(--_width__right) / var(--_width__total) * 100%) calc(var(--_width__left) / var(--_width__total) * 100%);
}

.l-2-columns--reverse > *:last-child {
  order: -1;
}

.l-2-columns--release-left.l-2-columns--reverse {
  margin-right: max(50% - var(--js-width__viewport) / 2, 50% - var(--max-width__base) * 1px / 2);
  margin-left: auto;
}

.l-2-columns--release-right.l-2-columns--reverse {
  margin-right: auto;
  margin-left: max(50% - var(--js-width__viewport) / 2, 50% - var(--max-width__base) * 1px / 2);
}

.l-2-columns-pc {
  --_width__left: 585;
  --_width__right: 584;
  --_column-gap: 30;
  --_width__total: calc(
    var(--_width__left) + var(--_column-gap) + var(--_width__right)
  );
}

/*
 * モジュールについて
 * 再利用可能なUIモジュールを定義します。
 * ボタン、フォーム、モーダルなどのモジュールが含まれています。
 * クラス名は、m-buttonのように命名します。
 */
.m-works {
  --_bg-color: #ededed;
  position: relative;
  z-index: 10;
  padding-bottom: calc(98 * 1rem / var(--font-size__base));
  background-image: linear-gradient(to bottom, transparent 0, transparent var(--_overlap), var(--_bg-color) var(--_overlap), var(--_bg-color) 100%);
}

.m-works__inner {
  position: relative;
}

.m-works__header {
  display: flex;
  align-items: flex-start;
  gap: calc(30 * 1rem / var(--font-size__base));
}

.m-works__header .m-title {
  gap: calc(40 * 1rem / var(--font-size__base));
}

.m-works__carousel {
  --_card-hover-offset: calc(24 * 1rem / var(--font-size__base));
  --_card-shadow-offset: calc(24 * 1rem / var(--font-size__base));
  --_speed: 30s;
  position: relative;
  margin-top: calc(var(--_card-hover-offset) * -1);
  padding-top: var(--_card-hover-offset);
  padding-bottom: var(--_card-shadow-offset);
  margin-bottom: calc(var(--_card-shadow-offset) * -1);
  overflow: hidden;
}

.m-works__slider {
  display: flex;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

.m-works__list {
  --_gap: calc(20 * 1rem / var(--font-size__base));
  display: flex;
  gap: var(--_gap);
  padding-left: var(--_gap);
  animation: works-scroll var(--_speed) linear infinite;
}

@keyframes works-scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
.m-works__item {
  flex-shrink: 0;
  width: calc(360 * 1rem / var(--font-size__base));
}

.m-works__footer {
  display: flex;
  justify-content: flex-end;
  padding-top: calc(43 * 1rem / var(--font-size__base));
}

.m-working-environment {
  position: relative;
  padding-top: calc(283 * 1rem / var(--font-size__base));
  padding-bottom: calc(100 * 1rem / var(--font-size__base));
  border-radius: calc(70 * 1rem / var(--font-size__base));
}

.m-working-environment__bg {
  position: absolute;
  top: 0;
  left: calc(-113 * 1rem / var(--font-size__base));
  width: min(1743 / 1920 * 100vw, 1743 * 1rem / var(--font-size__base));
  height: auto;
  z-index: 0;
  border-radius: calc(70 * 1rem / var(--font-size__base));
  overflow: hidden;
}

.m-working-environment__bg-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: left top;
     object-position: left top;
}

.m-working-environment__inner {
  position: relative;
  z-index: 1;
}

.m-working-environment__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: min(150 / 1920 * 100vw, 150 * 1rem / var(--font-size__base));
       column-gap: min(150 / 1920 * 100vw, 150 * 1rem / var(--font-size__base));
  row-gap: 0;
  padding-top: calc(65 * 1rem / var(--font-size__base));
}

.m-working-environment__card {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-row: span 4;
  grid-template-rows: subgrid;
  padding-top: calc(55 * 1rem / var(--font-size__base));
  padding-bottom: calc(44 * 1rem / var(--font-size__base));
  padding-inline: calc(40 * 1rem / var(--font-size__base));
  background-color: rgba(219, 251, 253, 0.8);
  border-radius: calc(40 * 1rem / var(--font-size__base));
}
.m-working-environment__card::before {
  --_mask-position: 0%;
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-color: rgb(219, 251, 253);
  -webkit-mask-image: url("../images/common/mask.png");
  mask-image: url("../images/common/mask.png");
  -webkit-mask-size: 100% 600%;
  mask-size: 100% 600%;
  -webkit-mask-position: 0 var(--_mask-position);
  mask-position: 0 var(--_mask-position);
  transition: -webkit-mask-position 1.1s;
  transition: mask-position 1.1s;
  transition: mask-position 1.1s, -webkit-mask-position 1.1s;
}

.m-working-environment__card-label {
  z-index: 1;
  font-family: var(--font-family__jost);
  font-size: calc(25 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0;
  color: var(--color__brand-orange-light);
}

.m-working-environment__card-title {
  z-index: 1;
  font-size: calc(38 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.0526315789;
  letter-spacing: 0.4em;
  color: #030303;
  padding-top: calc(92 * 1rem / var(--font-size__base));
}

.m-working-environment__card-icon {
  z-index: 1;
  margin-top: calc(73 * 1rem / var(--font-size__base));
  width: calc(129 * 1rem / var(--font-size__base));
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
}
.m-working-environment__card-icon img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.m-working-environment__card-icon--02 {
  width: calc(150 * 1rem / var(--font-size__base));
}

.m-working-environment__card-icon--03 {
  width: calc(142 * 1rem / var(--font-size__base));
}

.m-working-environment__card-footer {
  z-index: 1;
  display: flex;
  justify-content: flex-end;
  padding-top: calc(104 * 1rem / var(--font-size__base));
}

.m-working-environment__card-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(44 * 1rem / var(--font-size__base));
  height: calc(44 * 1rem / var(--font-size__base));
  background-color: #605e5e;
  border-radius: 50%;
  border: none;
  cursor: pointer;
  transition: background-color var(--duration__base);
}
.m-working-environment__card-button:focus-visible {
  background-color: var(--color__black);
}

.m-working-environment__card-button-icon {
  position: relative;
  display: block;
  width: calc(20 * 1rem / var(--font-size__base));
  height: calc(20 * 1rem / var(--font-size__base));
}

.m-working-environment__card-button-icon::before,
.m-working-environment__card-button-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(20 * 1rem / var(--font-size__base));
  height: calc(2 * 1rem / var(--font-size__base));
  background-color: #fff;
  transform: translate(-50%, -50%);
}

.m-working-environment__card-button-icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.m-working-environment__card .m-card-trigger {
  --_border-radius: rem(40);
}

.m-working-environment-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: url("../images/recruit/working-env-modal-bg.jpg");
  background-size: cover;
  background-position: center;
  transform: scale(0);
  pointer-events: none;
}

.m-working-environment-modal.is-active {
  pointer-events: auto;
  animation: m-working-env-unfold-in 1s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
}

.m-working-environment-modal.is-closing {
  pointer-events: none;
  animation: m-working-env-unfold-out 1s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
}

.m-working-environment-modal__overlay {
  position: absolute;
  inset: 0;
  cursor: pointer;
}
.m-working-environment-modal__window {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: calc(1458px + 50 * 1rem / var(--font-size__base));
  height: 100%;
  overflow: hidden;
  transform: scale(0);
  cursor: auto;
}

.m-working-environment-modal.is-active .m-working-environment-modal__window {
  animation: m-working-env-zoom-in 0.5s 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
}

.m-working-environment-modal.is-closing .m-working-environment-modal__window {
  animation: m-working-env-zoom-out 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
}

.m-working-environment-modal__inner {
  height: 100%;
}

.m-working-env-panel__close-anchor {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  height: 0;
  z-index: 1;
}

.m-working-environment-modal__close {
  --_icon-size: calc(50 * 1rem / var(--font-size__base));
  position: absolute;
  top: calc(-5 * 1rem / var(--font-size__base));
  right: calc(-40 * 1rem / var(--font-size__base));
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--_icon-size);
  height: var(--_icon-size);
  background-color: transparent;
  border: none;
  cursor: pointer;
}

.m-working-environment-modal__close-icon {
  position: relative;
  display: block;
  width: var(--_icon-size);
  height: 2px;
  background-color: var(--color__black);
  transform: rotate(45deg);
}

.m-working-environment-modal__close-icon::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(90deg);
  width: var(--_icon-size);
  height: 2px;
  background-color: var(--color__black);
}

.m-working-environment-modal__header {
  position: absolute;
  top: calc(116 * 1rem / var(--font-size__base));
  left: calc(var(--space-inline__base) * 1rem / var(--font-size__base));
}

.m-working-environment-modal__scroll {
  position: relative;
  overflow-y: auto;
  margin-top: calc(62 * 1rem / var(--font-size__base));
}

.m-working-env-panel__heading {
  font-family: var(--font-family__jost);
  font-size: calc(76 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.1973684211;
  letter-spacing: 0;
  color: var(--color__black);
  text-transform: uppercase;
  text-shadow: 0 0 calc(10 * 1rem / var(--font-size__base)) rgba(0, 0, 0, 0.05);
}

.m-working-env-panel__subtitle {
  padding-top: calc(18 * 1rem / var(--font-size__base));
  font-size: calc(26 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.3461538462;
  letter-spacing: 0.5em;
  color: var(--color__black);
}

.m-working-env-panel__line {
  width: calc(224 * 1rem / var(--font-size__base));
  height: calc(2 * 1rem / var(--font-size__base));
  margin-top: calc(20 * 1rem / var(--font-size__base));
  background-color: var(--color__black);
}

.m-working-env-panel__card {
  position: relative;
  z-index: 1;
  background-color: rgba(219, 251, 253, 0.76);
  border-radius: calc(84 * 1rem / var(--font-size__base));
}

.m-working-env-panel__card-scroll {
  position: relative;
  max-height: calc(100vh - 100 * 1rem / var(--font-size__base));
  padding-top: calc(129 * 1rem / var(--font-size__base));
  padding-bottom: calc(111 * 1rem / var(--font-size__base));
  padding-inline: calc(136 * 1rem / var(--font-size__base));
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: none;
}
.m-working-env-panel__card-scroll::-webkit-scrollbar {
  display: none;
}

.m-working-env-panel__card-head {
  display: flex;
  align-items: center;
  gap: calc(49 * 1rem / var(--font-size__base));
}

.m-working-env-panel__icon {
  width: calc(129 * 1rem / var(--font-size__base));
  height: calc(129 * 1rem / var(--font-size__base));
  -o-object-fit: contain;
     object-fit: contain;
  flex-shrink: 0;
}

.m-working-env-panel__title-block {
  display: flex;
  align-items: baseline;
  gap: calc(27 * 1rem / var(--font-size__base));
}

.m-working-env-panel__title {
  font-size: calc(30 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.0526315789;
  letter-spacing: 0.4em;
  color: var(--color__black);
}

.m-working-env-panel__title-en {
  font-size: calc(25 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.6;
  color: #f84103;
  text-shadow: 0 0 calc(20 * 1rem / var(--font-size__base)) rgba(0, 0, 0, 0.05);
}

.m-working-env-panel__vdivider {
  --vdivider-offset: calc(103 * 1rem / var(--font-size__base));
  position: absolute;
  right: calc(60 * 1rem / var(--font-size__base));
  top: var(--vdivider-offset);
  width: calc(8 * 1rem / var(--font-size__base));
  height: calc(100% - var(--vdivider-offset) - var(--vdivider-offset));
  background-color: #c4c2c2;
  border-radius: calc(50 * 1rem / var(--font-size__base));
  overflow: hidden;
}

.m-working-env-panel__vdivider-thumb {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(60 * 1rem / var(--font-size__base));
  background-color: #f84103;
  border-radius: inherit;
  transition: top 0.1s linear;
}

.m-working-env-panel__body {
  display: flex;
  flex-direction: column;
  gap: calc(4 * 1rem / var(--font-size__base));
  padding-top: calc(102 * 1rem / var(--font-size__base));
  font-size: calc(21 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 2.5333333333;
  letter-spacing: 0.05em;
  color: var(--color__black);
}

.m-working-env-panel__section {
  font-size: calc(30 * 1rem / var(--font-size__base));
  line-height: 2.1111111111;
  padding-top: calc(40 * 1rem / var(--font-size__base));
}
.m-working-env-panel__section:first-child {
  padding-top: 0;
}

.m-working-env-panel__supplement {
  padding-top: calc(30 * 1rem / var(--font-size__base));
  color: var(--color__black);
}

.m-working-env-panel__text {
  line-height: 1.5;
}

body.has-working-env-modal-open .m-header--recruit {
  z-index: 1100;
}

body.has-working-env-modal-open .m-header--recruit .m-header__logo {
  z-index: 1100;
}

body.has-working-env-modal-open .m-fixed-entry {
  z-index: 1100;
}

body.has-working-env-modal-open .m-header--logo-white-pc .m-header__logo {
  color: var(--color__black);
}

@keyframes m-working-env-unfold-in {
  0% {
    transform: scaleY(0.005) scaleX(0);
  }
  50% {
    transform: scaleY(0.005) scaleX(1);
  }
  100% {
    transform: scaleY(1) scaleX(1);
  }
}
@keyframes m-working-env-unfold-out {
  0% {
    transform: scaleY(1) scaleX(1);
  }
  50% {
    transform: scaleY(0.005) scaleX(1);
  }
  100% {
    transform: scaleY(0.005) scaleX(0);
  }
}
@keyframes m-working-env-zoom-in {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes m-working-env-zoom-out {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}
.m-title {
  display: flex;
  align-items: baseline;
  gap: calc(24 * 1rem / var(--font-size__base));
}

.m-title__en {
  font-family: var(--font-family__montserrat);
  font-size: calc(64 * 1rem / var(--font-size__base));
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.21875;
}

.m-title__ja {
  font-size: calc(24 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1.6666666667;
}

.m-title--large .m-title__en {
  font-size: calc(80 * 1rem / var(--font-size__base));
  line-height: 1.375;
}

.m-title--large .m-title__ja {
  letter-spacing: 0.08em;
}

.m-solution {
  position: relative;
  padding-top: calc(2 * 1rem / var(--font-size__base));
  padding-bottom: calc(92 * 1rem / var(--font-size__base));
  overflow-x: clip;
}

.m-solution__ittan-momen {
  position: absolute;
  top: calc(-204 / 430 * 100vw);
  left: calc(-1 / 430 * 100vw);
  width: calc(441 / 430 * 100vw);
  pointer-events: none;
  z-index: 10;
  color: var(--color__brand-cyan-light);
}
.m-solution__ittan-momen svg {
  display: block;
  width: 100%;
  height: auto;
  rotate: 166.4deg;
}

.m-solution__inner {
  position: relative;
  z-index: 1;
}

.m-solution__title {
  color: var(--color__brand-cyan);
}

.m-solution__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: min(48 / 1920 * 100vw, 48 * 1rem / var(--font-size__base));
  padding-top: calc(30 * 1rem / var(--font-size__base));
}

.m-solution__desc {
  padding-top: calc(44 * 1rem / var(--font-size__base));
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5555555556;
  letter-spacing: 0.056em;
}

.m-solution__list-title {
  padding-top: calc(64 * 1rem / var(--font-size__base));
  font-size: calc(22 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: var(--color__brand-cyan);
  text-align: center;
}

.m-solution__item {
  display: grid;
  grid-row: span 2;
  grid-template-rows: subgrid;
}

.m-solution__card {
  display: grid;
  grid-row: span 2;
  grid-template-rows: subgrid;
  gap: 0;
  text-decoration: none;
  color: inherit;
  transition: transform 0.4s;
  cursor: pointer;
}
.m-solution__card:focus-visible {
  transform: scale(1.1);
}

button.m-solution__card {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  background: none;
  padding: 0;
  width: 100%;
  text-align: inherit;
  font-family: var(--font-family__base);
}

.m-solution__card-image {
  display: block;
  overflow: hidden;
  border-radius: calc(16 * 1rem / var(--font-size__base)) calc(16 * 1rem / var(--font-size__base)) 0 0;
}
.m-solution__card-image img {
  width: 100%;
  height: auto;
  display: block;
}

.m-solution__card-body {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(16 * 1rem / var(--font-size__base));
  padding-block: calc(16 * 1rem / var(--font-size__base));
  padding-inline: calc(10 * 1rem / var(--font-size__base));
  background-color: #fff;
  border-radius: 0 0 calc(16 * 1rem / var(--font-size__base)) calc(16 * 1rem / var(--font-size__base));
  box-shadow: 0 calc(3 * 1rem / var(--font-size__base)) calc(20 * 1rem / var(--font-size__base)) rgba(0, 0, 0, 0.1);
  text-align: center;
}

.m-solution__card-title {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.5;
}

.m-solution-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}

.m-solution-modal.is-active {
  pointer-events: auto;
}

.m-solution-modal__backdrop {
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.3s;
}

.m-solution-modal.is-active .m-solution-modal__backdrop {
  opacity: 1;
}

.m-solution-modal__window {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  width: calc(100% - 40 * 1rem / var(--font-size__base));
  max-width: calc(1258 * 1rem / var(--font-size__base));
  max-height: 90vh;
  background-color: #fff;
  border-radius: calc(24 * 1rem / var(--font-size__base));
  box-shadow: 0 calc(3 * 1rem / var(--font-size__base)) calc(20 * 1rem / var(--font-size__base)) rgba(0, 0, 0, 0.16);
  opacity: 0;
  transform: translateY(calc(30 * 1rem / var(--font-size__base)));
  transition: opacity 0.3s, transform 0.3s;
}

.m-solution-modal__scroll {
  overflow-y: auto;
  scrollbar-width: none;
  padding-top: calc(100 * 1rem / var(--font-size__base));
  padding-bottom: calc(100 * 1rem / var(--font-size__base));
  -webkit-padding-start: calc(100 * 1rem / var(--font-size__base));
          padding-inline-start: calc(100 * 1rem / var(--font-size__base));
  -webkit-padding-end: calc(100 * 1rem / var(--font-size__base));
          padding-inline-end: calc(100 * 1rem / var(--font-size__base));
}

.m-solution-modal__scroll::-webkit-scrollbar {
  display: none;
}

.m-solution-modal.is-active .m-solution-modal__window {
  opacity: 1;
  transform: translateY(0);
}

.m-solution-modal__vbar {
  position: absolute;
  top: calc(102 * 1rem / var(--font-size__base));
  bottom: calc(40 * 1rem / var(--font-size__base));
  right: calc(40 * 1rem / var(--font-size__base));
  width: calc(4 * 1rem / var(--font-size__base));
  background-color: #c4c2c2;
  border-radius: calc(50 * 1rem / var(--font-size__base));
  overflow: hidden;
}

.m-solution-modal__vbar-thumb {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(60 * 1rem / var(--font-size__base));
  background-color: var(--color__brand-cyan);
  border-radius: inherit;
  transition: top 0.1s linear;
}

.m-solution-modal__close {
  position: absolute;
  top: calc(20 * 1rem / var(--font-size__base));
  right: calc(20 * 1rem / var(--font-size__base));
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(44 * 1rem / var(--font-size__base));
  height: calc(44 * 1rem / var(--font-size__base));
  background-color: transparent;
  border: none;
  cursor: pointer;
  transition: opacity 0.2s;
}
.m-solution-modal__close:focus-visible {
  opacity: 0.5;
}

.m-solution-modal__close-icon {
  position: relative;
  display: block;
  width: calc(22 * 1rem / var(--font-size__base));
  height: 2px;
  background-color: var(--color__black);
  transform: rotate(45deg);
}

.m-solution-modal__close-icon::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(90deg);
  width: calc(22 * 1rem / var(--font-size__base));
  height: 2px;
  background-color: var(--color__black);
}

.m-solution-modal__header {
  display: flex;
  flex-direction: column;
}

.m-solution-modal__header-line {
  height: 1px;
  background-color: var(--color__brand-cyan);
}

.m-solution-modal__title {
  padding-top: calc(19 * 1rem / var(--font-size__base));
  padding-bottom: calc(19 * 1rem / var(--font-size__base));
  font-size: calc(28 * 1rem / var(--font-size__base));
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.1em;
  line-height: 1;
}

.m-solution-modal__body {
  padding-top: calc(56 * 1rem / var(--font-size__base));
  display: flex;
  flex-direction: column;
  row-gap: calc(56 * 1rem / var(--font-size__base));
}

.m-solution-modal__lead {
  font-size: calc(24 * 1rem / var(--font-size__base));
  font-weight: 600;
  text-align: center;
  line-height: 1.6666666667;
  letter-spacing: 0.04em;
  color: var(--color__brand-cyan);
  text-shadow: 0 0 calc(20 * 1rem / var(--font-size__base)) rgba(0, 0, 0, 0.1);
}

.m-solution-modal__text {
  font-size: calc(18 * 1rem / var(--font-size__base));
  line-height: 1.5555555556;
  letter-spacing: 0.056em;
}

.m-solution-modal__features {
  display: flex;
  flex-direction: column;
  row-gap: calc(10 * 1rem / var(--font-size__base));
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}

.m-solution-modal__feature {
  display: flex;
  align-items: baseline;
  -moz-column-gap: min(32 / 1920 * 100vw, 32 * 1rem / var(--font-size__base));
       column-gap: min(32 / 1920 * 100vw, 32 * 1rem / var(--font-size__base));
}

.m-solution-modal__feature-title {
  flex-shrink: 0;
  font-size: calc(24 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.6666666667;
  letter-spacing: 0.04em;
  color: var(--color__brand-cyan);
  text-shadow: 0 0 calc(20 * 1rem / var(--font-size__base)) rgba(0, 0, 0, 0.1);
}

.m-solution-modal__feature-desc {
  font-size: calc(18 * 1rem / var(--font-size__base));
  line-height: 1.5555555556;
  letter-spacing: 0.056em;
}

.m-solution-modal__ppa {
  display: flex;
  flex-direction: column;
  row-gap: calc(24 * 1rem / var(--font-size__base));
}

.m-solution-modal__ppa-title {
  font-size: calc(24 * 1rem / var(--font-size__base));
  font-weight: 600;
  text-align: center;
  line-height: 1.6666666667;
  letter-spacing: 0.04em;
  color: var(--color__brand-cyan);
  text-shadow: 0 0 calc(20 * 1rem / var(--font-size__base)) rgba(0, 0, 0, 0.1);
}

.m-solution-modal__ppa-text {
  font-size: calc(18 * 1rem / var(--font-size__base));
  line-height: 1.5555555556;
  letter-spacing: 0.056em;
}

.m-solution-modal__footer {
  display: flex;
  justify-content: center;
}

.m-solution-modal__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding-top: calc(13 * 1rem / var(--font-size__base));
  padding-bottom: calc(13 * 1rem / var(--font-size__base));
  padding-inline: calc(34 * 1rem / var(--font-size__base));
  background-color: var(--color__brand-cyan);
  color: #fff;
  font-size: calc(15 * 1rem / var(--font-size__base));
  font-weight: 700;
  letter-spacing: 0.056em;
  line-height: 1.4;
  border-radius: calc(999 * 1rem / var(--font-size__base));
  transition: opacity 0.2s;
}
.m-solution-modal__button:focus-visible {
  opacity: 0.8;
}

button.m-energy-area__label {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  font-family: var(--font-family__base);
}

.m-solar-carport-voice {
  -webkit-padding-before: calc(60 * 1rem / var(--font-size__base));
          padding-block-start: calc(60 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(66 * 1rem / var(--font-size__base));
          padding-block-end: calc(66 * 1rem / var(--font-size__base));
  background-color: rgb(from var(--color__brand-cyan) r g b/0.1);
}

.m-solar-carport-voice__heading {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  -moz-column-gap: calc(10 * 1rem / var(--font-size__base));
       column-gap: calc(10 * 1rem / var(--font-size__base));
}

.m-solar-carport-voice__line {
  position: relative;
  flex-shrink: 0;
  width: calc(23 * 1rem / var(--font-size__base));
  height: calc(24 * 1rem / var(--font-size__base));
  -webkit-margin-after: calc(2 * 1rem / var(--font-size__base));
          margin-block-end: calc(2 * 1rem / var(--font-size__base));
}

.m-solar-carport-voice__line::before {
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;
  width: calc(2 * 1rem / var(--font-size__base));
  height: calc(33 * 1rem / var(--font-size__base));
  background-color: #333;
}

.m-solar-carport-voice__heading > .m-solar-carport-voice__line:first-child::before {
  transform: rotate(-43.78deg);
}

.m-solar-carport-voice__heading > .m-solar-carport-voice__line:last-child::before {
  transform: rotate(43.78deg);
}

.m-solar-carport-voice__text {
  flex-shrink: 0;
  font-size: calc(24 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #333;
  text-align: center;
}

.m-solar-carport-voice__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: calc(60 * 1rem / var(--font-size__base));
       column-gap: calc(60 * 1rem / var(--font-size__base));
  -webkit-padding-before: calc(54 * 1rem / var(--font-size__base));
          padding-block-start: calc(54 * 1rem / var(--font-size__base));
  list-style: none;
  max-width: calc(870 * 1rem / var(--font-size__base));
  margin-inline: auto;
}

.m-solar-carport-voice__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: calc(28 * 1rem / var(--font-size__base));
}

.m-solar-carport-voice__avatar {
  width: calc(250 * 1rem / var(--font-size__base));
  height: calc(250 * 1rem / var(--font-size__base));
  overflow: hidden;
  border-radius: 50%;
}

.m-solar-carport-voice__avatar-image {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-solar-carport-voice__balloon {
  position: relative;
  width: 100%;
  max-width: calc(250 * 1rem / var(--font-size__base));
  padding: calc(28 * 1rem / var(--font-size__base));
  background-color: #25aeb7;
  border-radius: calc(16 * 1rem / var(--font-size__base));
}

.m-solar-carport-voice__balloon::before {
  content: "";
  position: absolute;
  top: calc(-15 * 1rem / var(--font-size__base));
  left: 50%;
  transform: translateX(-50%);
  border-style: solid;
  border-width: 0 calc(18 * 1rem / var(--font-size__base)) calc(25 * 1rem / var(--font-size__base));
  border-color: transparent transparent #25aeb7;
}

.m-solar-carport-voice__balloon-text {
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #fff;
}

.m-solar-carport-reasons {
  -webkit-padding-before: calc(120 * 1rem / var(--font-size__base));
          padding-block-start: calc(120 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(120 * 1rem / var(--font-size__base));
          padding-block-end: calc(120 * 1rem / var(--font-size__base));
  background-color: #fff;
}

.m-solar-carport-reasons__catch {
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.5;
  -webkit-padding-before: calc(48 * 1rem / var(--font-size__base));
          padding-block-start: calc(48 * 1rem / var(--font-size__base));
}

.m-solar-carport-reasons__lead {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
  -webkit-padding-before: calc(28 * 1rem / var(--font-size__base));
          padding-block-start: calc(28 * 1rem / var(--font-size__base));
}

.m-solar-carport-reasons__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(48 * 1rem / var(--font-size__base));
  -webkit-padding-before: calc(48 * 1rem / var(--font-size__base));
          padding-block-start: calc(48 * 1rem / var(--font-size__base));
  list-style: none;
}

.m-solar-carport-reasons__item {
  flex: 0 0 calc((100% - 96 * 1rem / var(--font-size__base)) / 3);
}

.m-solar-carport-reasons__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  -webkit-padding-before: calc(28 * 1rem / var(--font-size__base));
          padding-block-start: calc(28 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(28 * 1rem / var(--font-size__base));
          padding-block-end: calc(28 * 1rem / var(--font-size__base));
  padding-inline: calc(28 * 1rem / var(--font-size__base));
  background-color: #fff;
  border: 1px solid var(--color__brand-cyan);
  border-radius: calc(12 * 1rem / var(--font-size__base));
  height: 100%;
}

.m-solar-carport-reasons__card-header {
  display: flex;
  align-items: center;
  -moz-column-gap: calc(18 * 1rem / var(--font-size__base));
       column-gap: calc(18 * 1rem / var(--font-size__base));
  width: 100%;
  -webkit-padding-after: calc(28 * 1rem / var(--font-size__base));
          padding-block-end: calc(28 * 1rem / var(--font-size__base));
}

.m-solar-carport-reasons__card-number {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: calc(80 * 1rem / var(--font-size__base));
  height: calc(80 * 1rem / var(--font-size__base));
  font-size: calc(30 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
  background-color: var(--color__brand-orange);
  border-radius: calc(40 * 1rem / var(--font-size__base));
}

.m-solar-carport-reasons__card-title {
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.4;
  color: var(--color__brand-orange);
  -webkit-margin-end: calc(-2 * 1rem / var(--font-size__base));
          margin-inline-end: calc(-2 * 1rem / var(--font-size__base));
}

.m-solar-carport-reasons__card-icon {
  display: flex;
  justify-content: center;
  height: calc(100 * 1rem / var(--font-size__base));
}

.m-solar-carport-reasons__card-icon-image {
  display: block;
  width: auto;
  height: 100%;
  margin-inline: auto;
}

.m-solar-carport-reasons__card-description {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
  -webkit-padding-before: calc(28 * 1rem / var(--font-size__base));
          padding-block-start: calc(28 * 1rem / var(--font-size__base));
}

.m-solar-carport-ppa {
  -webkit-padding-before: calc(120 * 1rem / var(--font-size__base));
          padding-block-start: calc(120 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(120 * 1rem / var(--font-size__base));
          padding-block-end: calc(120 * 1rem / var(--font-size__base));
  background-color: #faf8f8;
}

.m-solar-carport-ppa__subtitle {
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.5;
  -webkit-padding-before: calc(48 * 1rem / var(--font-size__base));
          padding-block-start: calc(48 * 1rem / var(--font-size__base));
}

.m-solar-carport-ppa__description {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.5;
  -webkit-padding-before: calc(18 * 1rem / var(--font-size__base));
          padding-block-start: calc(18 * 1rem / var(--font-size__base));
}

.m-solar-carport-ppa__image {
  -webkit-padding-before: calc(48 * 1rem / var(--font-size__base));
          padding-block-start: calc(48 * 1rem / var(--font-size__base));
}

.m-solar-carport-ppa__link {
  color: var(--color__brand-cyan);
  text-decoration: underline;
  transition: opacity var(--duration__base);
}
.m-solar-carport-ppa__link:focus-visible {
  opacity: var(--opacity__hover);
}

.m-solar-carport-ppa__scheme-image {
  display: block;
  width: 100%;
  height: auto;
}

.m-solar-carport-potentials {
  -webkit-padding-before: calc(120 * 1rem / var(--font-size__base));
          padding-block-start: calc(120 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(120 * 1rem / var(--font-size__base));
          padding-block-end: calc(120 * 1rem / var(--font-size__base));
  background-image: linear-gradient(to bottom, #e8e9e9, #fafafa);
}

.m-solar-carport-potentials__lead {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
  -webkit-padding-before: calc(48 * 1rem / var(--font-size__base));
          padding-block-start: calc(48 * 1rem / var(--font-size__base));
}

.m-solar-carport-potentials__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: calc(48 * 1rem / var(--font-size__base));
       column-gap: calc(48 * 1rem / var(--font-size__base));
  -webkit-padding-before: calc(48 * 1rem / var(--font-size__base));
          padding-block-start: calc(48 * 1rem / var(--font-size__base));
  list-style: none;
}

.m-solar-carport-potentials__card {
  -webkit-padding-before: calc(48 * 1rem / var(--font-size__base));
          padding-block-start: calc(48 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(48 * 1rem / var(--font-size__base));
          padding-block-end: calc(48 * 1rem / var(--font-size__base));
  padding-inline: calc(48 * 1rem / var(--font-size__base));
  background-color: #fff;
  border-radius: calc(12 * 1rem / var(--font-size__base));
  height: 100%;
}

.m-solar-carport-potentials__card-title {
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.4;
  color: var(--color__brand-orange);
  text-align: center;
}

.m-solar-carport-potentials__card-description {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
  -webkit-padding-before: calc(24 * 1rem / var(--font-size__base));
          padding-block-start: calc(24 * 1rem / var(--font-size__base));
}

.m-solar-carport-page__body {
  -webkit-padding-after: calc(120 * 1rem / var(--font-size__base));
          padding-block-end: calc(120 * 1rem / var(--font-size__base));
}

@keyframes solar-carport-hero-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.m-solar-carport-hero {
  --_fade-duration: 0.8s;
  --_fade-delay-slider: 0s;
  --_fade-delay-title: 0.4s;
  --_fade-delay-text: 0.8s;
  position: relative;
  z-index: 1;
  overflow-x: clip;
  background-color: #fff;
  min-height: calc(826 * 1rem / var(--font-size__base));
}

.m-solar-carport-hero__ittan {
  position: absolute;
  left: calc(502 / 1920 * 100vw);
  bottom: calc(-90 * 1rem / var(--font-size__base));
  z-index: 2;
  width: min(926 / 1920 * 100vw, 926 * 1rem / var(--font-size__base));
  pointer-events: none;
  color: var(--color__brand-orange);
  transform: translateX(-50%) rotate(-45deg);
}

.m-solar-carport-hero__ittan svg {
  display: block;
  width: 100%;
  height: auto;
}

.m-solar-carport-hero__slider {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
  width: 50vw;
  opacity: 0;
  animation: solar-carport-hero-fade-in var(--_fade-duration) ease-out var(--_fade-delay-slider) forwards;
  touch-action: pan-y;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.m-solar-carport-hero__track {
  width: 100%;
  height: calc(720 * 1rem / var(--font-size__base));
  overflow: hidden;
}

.m-solar-carport-hero__slides {
  display: flex;
  width: 100%;
  height: 100%;
  transition: transform 0.6s ease;
}

.m-solar-carport-hero__slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
}

.m-solar-carport-hero__photo {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-solar-carport-hero__pagination {
  position: absolute;
  top: calc(100% + 28 * 1rem / var(--font-size__base));
  left: 50%;
  transform: translateX(-50%);
  z-index: 3;
  display: flex;
  -moz-column-gap: calc(32 * 1rem / var(--font-size__base));
       column-gap: calc(32 * 1rem / var(--font-size__base));
}

.m-solar-carport-hero__dot {
  width: calc(12 * 1rem / var(--font-size__base));
  height: calc(12 * 1rem / var(--font-size__base));
  border-radius: 50%;
  background-color: rgb(from var(--color__brand-orange) r g b/0.3);
  border: none;
  cursor: pointer;
  padding: 0;
  transition: background-color 0.3s ease;
}
.m-solar-carport-hero__dot.is-active {
  background-color: var(--color__brand-orange);
}
.m-solar-carport-hero__dot:hover {
  background-color: var(--color__brand-orange);
}

.m-solar-carport-hero__inner {
  position: relative;
  z-index: 2;
  -webkit-padding-after: calc(110 * 1rem / var(--font-size__base));
          padding-block-end: calc(110 * 1rem / var(--font-size__base));
}

.m-solar-carport-hero__body {
  display: flex;
  flex-direction: column;
  -webkit-padding-before: calc(62 * 1rem / var(--font-size__base));
          padding-block-start: calc(62 * 1rem / var(--font-size__base));
}

.m-solar-carport-hero__tag {
  display: inline-flex;
  align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding-block: calc(8 * 1rem / var(--font-size__base));
  padding-inline: calc(40 * 1rem / var(--font-size__base));
  background-color: var(--color__brand-orange);
  border-radius: calc(50 * 1rem / var(--font-size__base));
  opacity: 0;
  animation: solar-carport-hero-fade-in var(--_fade-duration) ease-out var(--_fade-delay-title) forwards;
}

.m-solar-carport-hero__tag-text {
  font-size: calc(24 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.6666666667;
  letter-spacing: 0.08em;
  color: #fff;
  white-space: nowrap;
}

.m-solar-carport-hero__title {
  font-family: var(--font-family__montserrat);
  font-size: calc(94 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.0638297872;
  color: var(--color__brand-orange);
  -webkit-margin-before: calc(24 * 1rem / var(--font-size__base));
          margin-block-start: calc(24 * 1rem / var(--font-size__base));
  opacity: 0;
  animation: solar-carport-hero-fade-in var(--_fade-duration) ease-out var(--_fade-delay-title) forwards;
}

.m-solar-carport-hero__subtitle {
  font-size: calc(24 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.6666666667;
  letter-spacing: 0.08em;
  color: #ff6533;
  -webkit-margin-before: calc(15 * 1rem / var(--font-size__base));
          margin-block-start: calc(15 * 1rem / var(--font-size__base));
  opacity: 0;
  animation: solar-carport-hero-fade-in var(--_fade-duration) ease-out var(--_fade-delay-title) forwards;
}

.m-solar-carport-hero__catch {
  font-size: calc(21 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.5714285714;
  color: #626262;
  -webkit-margin-before: calc(62 * 1rem / var(--font-size__base));
          margin-block-start: calc(62 * 1rem / var(--font-size__base));
  opacity: 0;
  animation: solar-carport-hero-fade-in var(--_fade-duration) ease-out var(--_fade-delay-text) forwards;
}

.m-solar-carport-hero__lead {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.6875;
  color: #626262;
  -webkit-margin-before: calc(13 * 1rem / var(--font-size__base));
          margin-block-start: calc(13 * 1rem / var(--font-size__base));
  opacity: 0;
  animation: solar-carport-hero-fade-in var(--_fade-duration) ease-out var(--_fade-delay-text) forwards;
}

.m-solar-carport-flow {
  -webkit-padding-before: calc(120 * 1rem / var(--font-size__base));
          padding-block-start: calc(120 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(120 * 1rem / var(--font-size__base));
          padding-block-end: calc(120 * 1rem / var(--font-size__base));
  background-color: #fafafa;
}

.m-solar-carport-flow__list {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  -moz-column-gap: calc(8 * 1rem / var(--font-size__base));
       column-gap: calc(8 * 1rem / var(--font-size__base));
  -webkit-padding-before: calc(40 * 1rem / var(--font-size__base));
          padding-block-start: calc(40 * 1rem / var(--font-size__base));
  list-style: none;
}

.m-solar-carport-flow__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: calc(40 * 1rem / var(--font-size__base));
  -webkit-padding-before: calc(28 * 1rem / var(--font-size__base));
          padding-block-start: calc(28 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(28 * 1rem / var(--font-size__base));
          padding-block-end: calc(28 * 1rem / var(--font-size__base));
  padding-inline: calc(18 * 1rem / var(--font-size__base));
  background-color: #fff;
  border-radius: calc(12 * 1rem / var(--font-size__base));
}

.m-solar-carport-flow__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: calc(100 * 1rem / var(--font-size__base));
}

.m-solar-carport-flow__icon-image {
  display: block;
  height: auto;
  max-height: calc(100 * 1rem / var(--font-size__base));
}

.m-solar-carport-flow__label {
  display: flex;
  flex-direction: row;
  align-items: center;
  -moz-column-gap: calc(14 * 1rem / var(--font-size__base));
       column-gap: calc(14 * 1rem / var(--font-size__base));
  width: 100%;
}

.m-solar-carport-flow__number {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: calc(40 * 1rem / var(--font-size__base));
  height: calc(40 * 1rem / var(--font-size__base));
  font-family: var(--font-family__montserrat);
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.05em;
  color: #fff;
  background-color: var(--color__brand-cyan);
  border-radius: calc(25 * 1rem / var(--font-size__base));
}

.m-solar-carport-flow__name {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.25;
  color: #333;
  text-align: left;
}

.m-section-title {
  font-size: calc(30 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.6666666667;
  padding-bottom: calc(10 * 1rem / var(--font-size__base));
  border-bottom: 1px solid var(--color__brand-cyan-light);
}

.m-section-heading__heading {
  font-family: var(--font-family__jost);
  font-size: calc(76 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.25;
  color: #030303;
}

.m-section-heading__label-group {
  display: table;
  margin-top: calc(24 * 1rem / var(--font-size__base));
}

.m-section-heading__label {
  font-size: calc(28 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.3214285714;
  letter-spacing: 0.4em;
}

.m-section-heading__line {
  width: calc(100% - 0.6em);
  height: 2px;
  margin-top: calc(16 * 1rem / var(--font-size__base));
  background-color: currentcolor;
}

.m-schedule {
  background-color: #fff;
  padding-top: calc(8 * 1rem / var(--font-size__base));
  padding-bottom: calc(22 * 1rem / var(--font-size__base));
  padding-inline: calc(19 * 1rem / var(--font-size__base));
}

.m-schedule__table {
  width: 100%;
  border-collapse: collapse;
  font-family: var(--font-family__mincho);
}

.m-schedule__table tr {
  border-bottom: 1px solid #dbd7cc;
}

.m-schedule__table th,
.m-schedule__table td {
  padding-block: calc(14 * 1rem / var(--font-size__base));
  padding-inline: calc(16 * 1rem / var(--font-size__base));
  text-align: center;
  border-bottom: 1px solid var(--color-border);
}

.m-schedule__table th {
  background-color: var(--color-bg-light);
  color: var(--color-text-sub);
  font-weight: 500;
}

.m-schedule__table tbody td {
  padding-block: calc(20 * 1rem / var(--font-size__base));
}

.m-schedule__time {
  font-weight: 500;
}

.m-schedule__open {
  font-family: var(--font-family__noto-sans);
  color: var(--color__main);
  font-weight: 700;
}

.m-schedule__closed {
  font-family: var(--font-family__noto-sans);
  color: #dbd7cc;
}

.m-schedule__note {
  font-size: calc(14 * 1rem / var(--font-size__base));
  padding-top: calc(20 * 1rem / var(--font-size__base));
}
.m-related-cases__title {
  font-size: calc(23 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.044em;
}

.m-related-cases__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(48 * 1rem / var(--font-size__base));
  padding-top: calc(40 * 1rem / var(--font-size__base));
}

.m-recruitment-single__mv {
  position: relative;
  z-index: 10;
  width: 100%;
  overflow-x: clip;
}

.m-recruitment-single__mv-inner {
  position: relative;
  z-index: 4;
  display: grid;
  grid-template-columns: calc(700 * 1rem / var(--font-size__base)) 1fr;
  gap: min(135 / 1920 * 100vw, 135 * 1rem / var(--font-size__base));
  padding-top: calc(222 * 1rem / var(--font-size__base));
  padding-bottom: min(120 / 1920 * 100vw, 120 * 1rem / var(--font-size__base));
}

.m-recruitment-single__mv .m-mv-recruit__overlay {
  display: block;
  position: absolute;
  inset: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
  mix-blend-mode: multiply;
}

.m-recruitment-single__mv-left {
  padding-top: calc(45 * 1rem / var(--font-size__base));
}

.m-recruitment-single__mv-lead {
  font-size: calc(23 * 1rem / var(--font-size__base));
  letter-spacing: 0.05em;
  line-height: 2;
}

.m-recruitment-single__mv-lead-short {
  padding-top: calc(110 * 1rem / var(--font-size__base));
}

.m-recruitment-single__mv-lead-short + .m-recruitment-single__mv-lead-main {
  padding-top: calc(46 * 1rem / var(--font-size__base));
}

.m-recruitment-single__mv-entry {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  padding-top: calc(32 * 1rem / var(--font-size__base));
}

.m-recruitment-single__mv-illustration {
  position: relative;
  max-width: calc(628 * 1rem / var(--font-size__base));
  width: 100%;
}
.m-recruitment-single__mv-illustration::before {
  content: "";
  position: absolute;
  left: 0;
  top: calc(50 * 1rem / var(--font-size__base));
  width: 100vw;
  height: calc(100% + 30 * 1rem / var(--font-size__base));
  background-color: #dbfbfd;
  border-radius: calc(70 * 1rem / var(--font-size__base)) 0 0 calc(70 * 1rem / var(--font-size__base));
}

.m-recruitment-single__mv-illustration-image {
  position: relative;
  z-index: 1;
  width: 100%;
  height: auto;
  display: block;
  margin-left: min(114 / 1920 * 100vw, 114 * 1rem / var(--font-size__base));
}

.m-recruitment-single__detail {
  background-color: #d8f1f3;
  margin-top: calc(53 * 1rem / var(--font-size__base));
  padding-top: calc(150 * 1rem / var(--font-size__base));
  padding-bottom: calc(125 * 1rem / var(--font-size__base));
}

.m-recruitment-single__detail-card {
  background-color: #fff;
  border-radius: calc(75 * 1rem / var(--font-size__base));
  padding-block: calc(170 * 1rem / var(--font-size__base));
}

.m-recruitment-single__detail-entry {
  display: flex;
  justify-content: center;
  padding-top: calc(80 * 1rem / var(--font-size__base));
}

.m-recruitment-single__detail-list {
  display: flex;
  flex-direction: column;
  gap: calc(40 * 1rem / var(--font-size__base));
}

.m-recruitment-single__detail-item {
  display: flex;
  flex-wrap: wrap;
  gap: calc(40 * 1rem / var(--font-size__base)) calc(80 * 1rem / var(--font-size__base));
}
.m-recruitment-single__detail-item::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #d9d9d9;
}

.m-recruitment-single__detail-label {
  flex-shrink: 0;
  width: calc(200 * 1rem / var(--font-size__base));
  font-size: calc(28 * 1rem / var(--font-size__base));
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.7857142857;
}

.m-recruitment-single__detail-content {
  flex: 1;
  min-width: 0;
  font-size: calc(28 * 1rem / var(--font-size__base));
  line-height: 1.7857142857;
}

.m-recruitment-single__conditions {
  background-color: #ebe9e8;
  margin-bottom: calc(108 * 1rem / var(--font-size__base));
  padding-top: calc(150 * 1rem / var(--font-size__base));
  padding-bottom: calc(125 * 1rem / var(--font-size__base));
}

.m-recruit__message {
  padding-top: calc(178 * 1rem / var(--font-size__base));
}

.m-recruit__environment {
  margin-top: calc(185 * 1rem / var(--font-size__base));
}

.m-recruit__job-opening {
  padding-bottom: calc(136 * 1rem / var(--font-size__base));
}

.m-recruit-subtitle {
  font-size: calc(26 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.4230769231;
  letter-spacing: 0.5em;
  color: #000;
  padding-top: calc(18 * 1rem / var(--font-size__base));
  padding-bottom: calc(20 * 1rem / var(--font-size__base));
  border-bottom: 2px solid #030303;
  display: inline-block;
}

.m-recruit-heading {
  font-family: var(--font-family__jost);
  font-size: calc(76 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.4473684211;
  letter-spacing: 0;
  text-transform: uppercase;
  color: #030303;
}

.m-recruit-footer {
  background-color: var(--color__text);
}

.m-recruit-footer__inner {
  display: grid;
  grid-template-columns: calc(316 * 1rem / var(--font-size__base)) calc(587 * 1rem / var(--font-size__base)) 1fr;
  padding-top: calc(111 * 1rem / var(--font-size__base));
  padding-bottom: calc(41 * 1rem / var(--font-size__base));
}

.m-recruit-footer__logo {
  display: block;
  width: calc(161 * 1rem / var(--font-size__base));
}

.m-recruit-footer__logo-image {
  width: 100%;
  height: auto;
}

.m-recruit-footer__links {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: calc(13 * 1rem / var(--font-size__base));
  padding-top: calc(98 * 1rem / var(--font-size__base));
}

.m-recruit-footer__links-link {
  font-family: var(--font-family__montserrat);
  display: block;
  font-size: calc(17 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 2.2222222222;
  letter-spacing: 0.05em;
  color: #fff;
  text-decoration: none;
}

.m-recruit-footer__col--address {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.m-recruit-footer__office-name {
  font-size: calc(17 * 1rem / var(--font-size__base));
  font-weight: 800;
  letter-spacing: 0.2em;
  color: #fff;
  padding-top: calc(6 * 1rem / var(--font-size__base));
}

.m-recruit-footer__office-address {
  font-size: calc(17 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.9411764706;
  letter-spacing: 0.2em;
  color: #fff;
  padding-top: calc(19 * 1rem / var(--font-size__base));
}

.m-recruit-footer__col--nav {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.m-recruit-footer__nav-group {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex: 1;
  padding-top: calc(44 * 1rem / var(--font-size__base));
}

.m-recruit-footer__nav {
  list-style: none;
  display: flex;
  flex-direction: column;
}

.m-recruit-footer__nav--interview .m-recruit-footer__nav-item:last-child {
  margin-top: calc(18 * 1rem / var(--font-size__base));
}

.m-recruit-footer__nav-link {
  display: inline-flex;
  align-items: center;
  font-family: var(--font-family__montserrat);
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 2.2222222222;
  letter-spacing: 0.064em;
  color: #fff;
  text-decoration: none;
}

.m-recruit-footer__nav-link-ja {
  font-family: var(--font-family__noto-sans);
  font-size: calc(13 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0.2em;
  line-height: 1.3076923077;
}

.m-recruit-footer__contact {
  padding-top: calc(38 * 1rem / var(--font-size__base));
}

.m-recruit-footer .m-footer__external-link,
.m-recruit-footer .m-footer__policy-link {
  color: #fff;
}

.m-privacy-page__body {
  padding-bottom: calc(160 * 1rem / var(--font-size__base));
}

.m-privacy-page__content-wrapper {
  background-color: #fff;
  border-radius: calc(16 * 1rem / var(--font-size__base));
}

.m-privacy-page__content {
  --_padding-inline: 40;
  display: flex;
  flex-direction: column;
  gap: calc(140 * 1rem / var(--font-size__base));
  padding-top: calc(170 * 1rem / var(--font-size__base));
  padding-bottom: calc(170 * 1rem / var(--font-size__base));
}

.m-privacy-page__lead {
  font-size: calc(23 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.7391304348;
}

.m-privacy-page__list {
  padding-top: calc(140 * 1rem / var(--font-size__base));
  padding-left: calc(35 * 1rem / var(--font-size__base));
  font-size: calc(23 * 1rem / var(--font-size__base));
  line-height: 1.7391304348;
  list-style-type: decimal;
}
.m-privacy-page__list li {
  padding-top: calc(30 * 1rem / var(--font-size__base));
}
.m-privacy-page__list li:first-child {
  padding-top: 0;
}

.m-privacy-page__heading {
  padding-bottom: calc(8 * 1rem / var(--font-size__base));
  font-size: calc(30 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.6666666667;
  border-bottom: 1px solid #444;
}

.m-privacy-page__text {
  padding-top: calc(40 * 1rem / var(--font-size__base));
  font-size: calc(23 * 1rem / var(--font-size__base));
  line-height: 2;
}
.m-privacy-page__text a {
  color: var(--color__brand-cyan);
  text-decoration: underline;
}
.m-privacy-page__text a:focus-visible {
  text-decoration: none;
}

.m-privacy-page__subheading + .m-privacy-page__text {
  padding-top: 0;
}

.m-privacy-page__subheading {
  padding-top: calc(40 * 1rem / var(--font-size__base));
  font-size: calc(23 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 2;
}

.m-privacy-page__items {
  display: flex;
  flex-direction: column;
  gap: calc(40 * 1rem / var(--font-size__base));
  padding-top: calc(40 * 1rem / var(--font-size__base));
}

.m-privacy-page__item > .m-privacy-page__subheading {
  padding-top: 0;
}

.m-privacy-page__item-title {
  font-size: calc(23 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 2;
}

.m-privacy-page__item-number {
  padding-right: calc(8 * 1rem / var(--font-size__base));
}

.m-privacy-page__item-text {
  padding-top: calc(24 * 1rem / var(--font-size__base));
  font-size: calc(23 * 1rem / var(--font-size__base));
  line-height: 2;
}
.m-privacy-page__item-text a {
  color: var(--color__brand-cyan);
  text-decoration: underline;
}
.m-privacy-page__item-text a:focus-visible {
  text-decoration: none;
}

.m-privacy-page__item-list {
  padding-top: calc(24 * 1rem / var(--font-size__base));
  padding-left: calc(35 * 1rem / var(--font-size__base));
  font-size: calc(23 * 1rem / var(--font-size__base));
  line-height: 2;
  list-style-type: disc;
}

.m-privacy-page__definition {
  display: flex;
  flex-direction: column;
  gap: calc(24 * 1rem / var(--font-size__base));
  padding-top: calc(40 * 1rem / var(--font-size__base));
  padding-left: calc(40 * 1rem / var(--font-size__base));
  font-size: calc(20 * 1rem / var(--font-size__base));
  line-height: 1.5;
}

.m-privacy-page__definition-term {
  font-weight: 500;
}

.m-privacy-page__definition-desc {
  padding-top: calc(4 * 1rem / var(--font-size__base));
}

.m-ppa-why {
  --_color__bg-from: #e8e9e9;
  --_color__bg-to: #fafafa;
  position: relative;
  -webkit-padding-before: calc(120 * 1rem / var(--font-size__base));
          padding-block-start: calc(120 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(184 * 1rem / var(--font-size__base));
          padding-block-end: calc(184 * 1rem / var(--font-size__base));
}

.m-ppa-why__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: linear-gradient(to bottom, var(--_color__bg-from), var(--_color__bg-to));
  overflow: hidden;
}

.m-ppa-why__ittan {
  position: absolute;
  right: calc(22 / 1920 * 100vw);
  bottom: calc(18 * 1rem / var(--font-size__base));
  z-index: 0;
  width: min(1983 / 1920 * 100vw, 1983 * 1rem / var(--font-size__base));
  pointer-events: none;
  color: #f0efee;
  mix-blend-mode: multiply;
  transform: rotate(-45deg);
}

.m-ppa-why__ittan svg {
  display: block;
  width: 100%;
  height: auto;
}

.m-ppa-why__inner {
  position: relative;
  z-index: 1;
}

.m-ppa-why__lead {
  display: grid;
  row-gap: calc(14 * 1rem / var(--font-size__base));
  -webkit-padding-before: calc(40 * 1rem / var(--font-size__base));
          padding-block-start: calc(40 * 1rem / var(--font-size__base));
}

.m-ppa-why__lead-heading {
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.5;
}

.m-ppa-why__lead-text {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
}

.m-ppa-why__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: calc(48 * 1rem / var(--font-size__base));
       column-gap: calc(48 * 1rem / var(--font-size__base));
  -webkit-padding-before: calc(48 * 1rem / var(--font-size__base));
          padding-block-start: calc(48 * 1rem / var(--font-size__base));
}

.m-ppa-why__card {
  display: grid;
  row-gap: calc(24 * 1rem / var(--font-size__base));
  padding-block: calc(48 * 1rem / var(--font-size__base));
  -webkit-padding-start: calc(48 * 1rem / var(--font-size__base));
          padding-inline-start: calc(48 * 1rem / var(--font-size__base));
  -webkit-padding-end: calc(65 * 1rem / var(--font-size__base));
          padding-inline-end: calc(65 * 1rem / var(--font-size__base));
  background-color: #fff;
  border-radius: calc(12 * 1rem / var(--font-size__base));
}

.m-ppa-why__card-title {
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.4;
  color: var(--color__brand-cyan);
  text-align: center;
}

.m-ppa-why__card-illustration {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: calc(200 * 1rem / var(--font-size__base));
}

.m-ppa-why__card-illustration img {
  width: auto;
  max-height: calc(200 * 1rem / var(--font-size__base));
}

.m-ppa-why__card-text {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
}

.m-ppa-why__message {
  display: grid;
  grid-template-columns: calc(616 * 1rem / var(--font-size__base)) 1fr;
  -moz-column-gap: calc(48 * 1rem / var(--font-size__base));
       column-gap: calc(48 * 1rem / var(--font-size__base));
  align-items: center;
  -webkit-padding-before: calc(120 * 1rem / var(--font-size__base));
          padding-block-start: calc(120 * 1rem / var(--font-size__base));
}

.m-ppa-why__message-body {
  display: grid;
  row-gap: calc(42 * 1rem / var(--font-size__base));
}

.m-ppa-why__message-heading {
  font-size: calc(28 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 2;
  letter-spacing: 0.1em;
}

.m-ppa-why__message-text {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.1em;
}

.m-ppa-why__message-logo {
  display: flex;
  justify-content: center;
  align-items: center;
}

.m-ppa-why__message-logo img {
  width: calc(313 * 1rem / var(--font-size__base));
  height: auto;
}

.m-ppa-types {
  -webkit-padding-before: calc(120 * 1rem / var(--font-size__base));
          padding-block-start: calc(120 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(120 * 1rem / var(--font-size__base));
          padding-block-end: calc(120 * 1rem / var(--font-size__base));
}

.m-ppa-types__lead {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
  -webkit-padding-before: calc(48 * 1rem / var(--font-size__base));
          padding-block-start: calc(48 * 1rem / var(--font-size__base));
}

.m-ppa-types__card {
  scroll-margin-top: var(--js-height__header, calc(72 * 1rem / var(--font-size__base)));
  background-color: #fff;
  border-radius: calc(16 * 1rem / var(--font-size__base));
  overflow: hidden;
  -webkit-margin-before: calc(48 * 1rem / var(--font-size__base));
          margin-block-start: calc(48 * 1rem / var(--font-size__base));
}

.m-ppa-types__card-header {
  padding-block: calc(20 * 1rem / var(--font-size__base));
  padding-inline: calc(48 * 1rem / var(--font-size__base));
  background-color: var(--color__brand-cyan);
}

.m-ppa-types__card:last-child .m-ppa-types__card-header {
  background-color: var(--color__brand-orange);
}

.m-ppa-types__card-title {
  font-size: calc(26 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.5;
  color: #fff;
}

.m-ppa-types__card-body {
  -webkit-padding-before: calc(28 * 1rem / var(--font-size__base));
          padding-block-start: calc(28 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(38 * 1rem / var(--font-size__base));
          padding-block-end: calc(38 * 1rem / var(--font-size__base));
  padding-inline: calc(48 * 1rem / var(--font-size__base));
  display: grid;
  row-gap: calc(32 * 1rem / var(--font-size__base));
}

.m-ppa-types__card-body:has(.m-ppa-types__offsite-list) {
  -webkit-padding-after: calc(56 * 1rem / var(--font-size__base));
          padding-block-end: calc(56 * 1rem / var(--font-size__base));
}

.m-ppa-types__card-description {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
}

.m-ppa-types__card-image img {
  width: 100%;
  height: auto;
  display: block;
}

.m-ppa-types__offsite-list {
  display: grid;
  row-gap: calc(42 * 1rem / var(--font-size__base));
}

.m-ppa-types__offsite-item {
  --_color__sub-header-bg: #f0eded;
  background-color: #fafafa;
  border-radius: calc(16 * 1rem / var(--font-size__base));
  overflow: hidden;
}

.m-ppa-types__offsite-item-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-block: calc(18 * 1rem / var(--font-size__base));
  padding-inline: calc(48 * 1rem / var(--font-size__base));
  background-color: var(--_color__sub-header-bg);
}

.m-ppa-types__offsite-item-body {
  -webkit-padding-before: calc(32 * 1rem / var(--font-size__base));
          padding-block-start: calc(32 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(40 * 1rem / var(--font-size__base));
          padding-block-end: calc(40 * 1rem / var(--font-size__base));
  padding-inline: calc(48 * 1rem / var(--font-size__base));
}

.m-ppa-types__offsite-item-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: calc(26 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.5;
  color: var(--color__brand-orange);
  text-align: center;
}

.m-ppa-types__offsite-item-subtitle {
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.5;
}

.m-ppa-types__offsite-item-description {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.5;
}

.m-ppa-types__offsite-item-image {
  -webkit-padding-before: calc(28 * 1rem / var(--font-size__base));
          padding-block-start: calc(28 * 1rem / var(--font-size__base));
}

.m-ppa-types__offsite-item-image img {
  width: 100%;
  height: auto;
  display: block;
}

.m-ppa-types__offsite-item-note {
  --_color__note: #717171;
  font-size: calc(14 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.5;
  color: var(--_color__note);
  text-align: center;
  -webkit-padding-before: calc(28 * 1rem / var(--font-size__base));
          padding-block-start: calc(28 * 1rem / var(--font-size__base));
}

.m-ppa-reasons {
  -webkit-padding-before: calc(120 * 1rem / var(--font-size__base));
          padding-block-start: calc(120 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(120 * 1rem / var(--font-size__base));
          padding-block-end: calc(120 * 1rem / var(--font-size__base));
}

.m-ppa-reasons__inner {
  display: grid;
  row-gap: calc(48 * 1rem / var(--font-size__base));
}

.m-ppa-reasons__lead {
  display: grid;
  row-gap: calc(14 * 1rem / var(--font-size__base));
}

.m-ppa-reasons__lead-heading {
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.5;
}

.m-ppa-reasons__lead-text {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
}

.m-ppa-reasons__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: calc(48 * 1rem / var(--font-size__base));
       column-gap: calc(48 * 1rem / var(--font-size__base));
  list-style: none;
}

.m-ppa-reasons__item {
  display: grid;
  row-gap: calc(28 * 1rem / var(--font-size__base));
  padding-block: calc(28 * 1rem / var(--font-size__base));
  padding-inline: calc(28 * 1rem / var(--font-size__base));
  background-color: #fff;
  border: 1px solid var(--color__brand-cyan);
  border-radius: calc(12 * 1rem / var(--font-size__base));
}

.m-ppa-reasons__item-header {
  display: flex;
  align-items: center;
  -moz-column-gap: calc(18 * 1rem / var(--font-size__base));
       column-gap: calc(18 * 1rem / var(--font-size__base));
}

.m-ppa-reasons__item-number {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: calc(80 * 1rem / var(--font-size__base));
  height: calc(80 * 1rem / var(--font-size__base));
  font-size: calc(30 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  color: #fff;
  background-color: var(--color__brand-orange);
  border-radius: 50%;
}

.m-ppa-reasons__item-title {
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.4;
  color: var(--color__brand-orange);
  -webkit-margin-end: calc(-2 * 1rem / var(--font-size__base));
          margin-inline-end: calc(-2 * 1rem / var(--font-size__base));
}

.m-ppa-reasons__item-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: calc(120 * 1rem / var(--font-size__base));
}

.m-ppa-reasons__item-icon img {
  width: auto;
  max-height: calc(120 * 1rem / var(--font-size__base));
}

.m-ppa-reasons__item-text {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
}

.m-ppa-page__body {
  -webkit-padding-after: calc(120 * 1rem / var(--font-size__base));
          padding-block-end: calc(120 * 1rem / var(--font-size__base));
}

@keyframes ppa-fv-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.m-ppa-fv {
  --_fade-duration: 0.8s;
  --_fade-delay-bg: 0s;
  --_fade-delay-content: 0.4s;
  --_fade-delay-copy: 0.8s;
  position: relative;
  z-index: 1;
  overflow-x: clip;
  display: flex;
  align-items: flex-start;
  min-height: calc(800 * 1rem / var(--font-size__base));
  max-height: calc(100svh - var(--js-height__header, calc(72 * 1rem / var(--font-size__base))));
  height: calc(100svh - var(--js-height__header, calc(72 * 1rem / var(--font-size__base))));
}

.m-ppa-fv__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: var(--_bg-pc);
  background-repeat: no-repeat;
  background-position: center right;
  background-size: cover;
  opacity: 0;
  animation: ppa-fv-fade-in var(--_fade-duration) ease-out var(--_fade-delay-bg) forwards;
}

.m-ppa-fv__bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0, 116, 166, 0) 50%, rgba(0, 45, 64, 0.25) 100%);
}

.m-ppa-fv__ittan {
  position: absolute;
  left: calc(1155 / 1920 * 100vw);
  top: max(-130 / 1920 * 100vw, -130 * 1rem / var(--font-size__base));
  z-index: 0;
  width: min(1402 / 1920 * 100vw, 1402 * 1rem / var(--font-size__base));
  pointer-events: none;
  color: var(--color__brand-orange);
  transform: translateX(-50%) rotate(-48deg);
}

.m-ppa-fv__ittan svg {
  display: block;
  width: 100%;
  height: auto;
}

.m-ppa-fv__inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  row-gap: calc(48 * 1rem / var(--font-size__base));
  -webkit-padding-before: calc(62 * 1rem / var(--font-size__base));
          padding-block-start: calc(62 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(120 * 1rem / var(--font-size__base));
          padding-block-end: calc(120 * 1rem / var(--font-size__base));
}

.m-ppa-fv__content {
  opacity: 0;
  animation: ppa-fv-fade-in var(--_fade-duration) ease-out var(--_fade-delay-content) forwards;
}

.m-ppa-fv__label {
  display: inline-flex;
  align-items: center;
  padding-block: calc(8 * 1rem / var(--font-size__base));
  padding-inline: calc(40 * 1rem / var(--font-size__base));
  font-size: calc(24 * 1rem / var(--font-size__base));
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.6666666667;
  color: #fff;
  background-color: var(--color__brand-orange);
  border-radius: calc(999 * 1rem / var(--font-size__base));
}

.m-ppa-fv__title {
  display: grid;
  -webkit-padding-before: calc(24 * 1rem / var(--font-size__base));
          padding-block-start: calc(24 * 1rem / var(--font-size__base));
}

.m-ppa-fv__title-en {
  font-family: var(--font-family__montserrat);
  font-size: calc(80 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.375;
  color: var(--color__brand-orange);
}

.m-ppa-fv__title-ja {
  font-size: calc(24 * 1rem / var(--font-size__base));
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.6666666667;
  color: #ff6533;
}

.m-ppa-fv__copy {
  display: grid;
  row-gap: calc(24 * 1rem / var(--font-size__base));
  opacity: 0;
  animation: ppa-fv-fade-in var(--_fade-duration) ease-out var(--_fade-delay-copy) forwards;
}

.m-ppa-fv__catch {
  font-size: calc(70 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.35;
  color: #fff;
  text-shadow: 0 0 calc(30 * 1rem / var(--font-size__base)) rgba(0, 0, 0, 0.75);
}

.m-ppa-fv__description {
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.5;
  color: #fff;
  text-shadow: 0 0 calc(30 * 1rem / var(--font-size__base)) rgba(0, 0, 0, 0.75);
}

.m-ppa-flow {
  -webkit-padding-before: calc(120 * 1rem / var(--font-size__base));
          padding-block-start: calc(120 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(120 * 1rem / var(--font-size__base));
          padding-block-end: calc(120 * 1rem / var(--font-size__base));
}

.m-ppa-flow__inner {
  display: grid;
  row-gap: calc(40 * 1rem / var(--font-size__base));
}

.m-ppa-flow__list {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  -moz-column-gap: calc(8 * 1rem / var(--font-size__base));
       column-gap: calc(8 * 1rem / var(--font-size__base));
  list-style: none;
}

.m-ppa-flow__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: calc(40 * 1rem / var(--font-size__base));
  -webkit-padding-before: calc(28 * 1rem / var(--font-size__base));
          padding-block-start: calc(28 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(18 * 1rem / var(--font-size__base));
          padding-block-end: calc(18 * 1rem / var(--font-size__base));
  padding-inline: calc(18 * 1rem / var(--font-size__base));
  background-color: #fff;
  border-radius: calc(12 * 1rem / var(--font-size__base));
}

.m-ppa-flow__item-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: calc(100 * 1rem / var(--font-size__base));
}

.m-ppa-flow__item-icon img {
  width: auto;
  max-height: calc(100 * 1rem / var(--font-size__base));
}

.m-ppa-flow__item-body {
  display: grid;
  width: 100%;
}

.m-ppa-flow__item-header {
  display: flex;
  align-items: center;
  -moz-column-gap: calc(14 * 1rem / var(--font-size__base));
       column-gap: calc(14 * 1rem / var(--font-size__base));
}

.m-ppa-flow__item-number {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: calc(40 * 1rem / var(--font-size__base));
  height: calc(40 * 1rem / var(--font-size__base));
  font-family: var(--font-family__montserrat);
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.05em;
  color: #fff;
  background-color: var(--color__brand-cyan);
  border-radius: 50%;
}

.m-ppa-flow__item-title {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.25;
}

.m-ppa-flow__item-text {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
  -webkit-padding-before: calc(14 * 1rem / var(--font-size__base));
          padding-block-start: calc(14 * 1rem / var(--font-size__base));
}

.m-ppa-flow__item-note {
  font-size: calc(14 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.4285714286;
  color: #666;
  -webkit-padding-before: calc(5 * 1rem / var(--font-size__base));
          padding-block-start: calc(5 * 1rem / var(--font-size__base));
}

.m-ppa-feature {
  --_color__row-header-bg: #d5e3e5;
  --_color__onsite-text: #25aeb7;
  -webkit-padding-before: calc(120 * 1rem / var(--font-size__base));
          padding-block-start: calc(120 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(120 * 1rem / var(--font-size__base));
          padding-block-end: calc(120 * 1rem / var(--font-size__base));
}

.m-ppa-feature__inner {
  display: grid;
  row-gap: calc(60 * 1rem / var(--font-size__base));
}

.m-ppa-feature__scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.m-ppa-feature__grid {
  min-width: calc(700 * 1rem / var(--font-size__base));
  background-color: #ecf3f4;
}

.m-ppa-feature__header-row {
  display: grid;
  grid-template-columns: calc(200 * 1rem / var(--font-size__base)) 1fr 1fr 1fr;
  -moz-column-gap: calc(2 * 1rem / var(--font-size__base));
       column-gap: calc(2 * 1rem / var(--font-size__base));
  -webkit-border-after: 2px solid #ecf3f4;
          border-block-end: 2px solid #ecf3f4;
}

.m-ppa-feature__th {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: calc(16 * 1rem / var(--font-size__base)) calc(16 * 1rem / var(--font-size__base)) 0 0;
  color: #fff;
}

.m-ppa-feature__th--empty {
  background-color: transparent;
  border-radius: 0;
}

.m-ppa-feature__th--onsite {
  background-color: var(--color__brand-cyan);
}

.m-ppa-feature__th--virtual {
  background-color: var(--color__brand-orange);
}

.m-ppa-feature__th--physical {
  background-color: var(--color__brand-red);
}

.m-ppa-feature__type-name {
  display: flex;
  align-items: center;
  justify-content: center;
  height: calc(60 * 1rem / var(--font-size__base));
  order: -1;
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1;
  text-align: center;
  padding-inline: calc(10 * 1rem / var(--font-size__base));
  width: 100%;
}

.m-ppa-feature__type {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: calc(28 * 1rem / var(--font-size__base));
  -webkit-padding-before: calc(36 * 1rem / var(--font-size__base));
          padding-block-start: calc(36 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(26 * 1rem / var(--font-size__base));
          padding-block-end: calc(26 * 1rem / var(--font-size__base));
  padding-inline: calc(28 * 1rem / var(--font-size__base));
  background-color: #fff;
  flex: 1;
  width: 100%;
  justify-content: flex-start;
}

.m-ppa-feature__type-icon {
  display: flex;
  justify-content: center;
  align-items: center;
}

.m-ppa-feature__type-icon img {
  width: auto;
  max-height: calc(100 * 1rem / var(--font-size__base));
}

.m-ppa-feature__type-recommend {
  display: flex;
  align-items: flex-start;
  -moz-column-gap: calc(14 * 1rem / var(--font-size__base));
       column-gap: calc(14 * 1rem / var(--font-size__base));
}

.m-ppa-feature__type-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: calc(70 * 1rem / var(--font-size__base));
  height: calc(24 * 1rem / var(--font-size__base));
  font-size: calc(12 * 1rem / var(--font-size__base));
  font-weight: 700;
  color: #fff;
  border-radius: calc(999 * 1rem / var(--font-size__base));
  white-space: nowrap;
  flex-shrink: 0;
}

.m-ppa-feature__th--onsite .m-ppa-feature__type-badge {
  background-color: var(--color__brand-cyan);
}

.m-ppa-feature__th--virtual .m-ppa-feature__type-badge,
.m-ppa-feature__th--physical .m-ppa-feature__type-badge {
  background-color: var(--color__brand-orange);
}

.m-ppa-feature__type-target {
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.2;
}

.m-ppa-feature__th--onsite .m-ppa-feature__type-target {
  color: var(--_color__onsite-text);
}

.m-ppa-feature__th--virtual .m-ppa-feature__type-target,
.m-ppa-feature__th--physical .m-ppa-feature__type-target {
  color: var(--color__brand-orange);
}

.m-ppa-feature__row {
  display: grid;
  grid-template-columns: calc(200 * 1rem / var(--font-size__base)) 1fr 1fr 1fr;
  -moz-column-gap: calc(2 * 1rem / var(--font-size__base));
       column-gap: calc(2 * 1rem / var(--font-size__base));
}

.m-ppa-feature__row-label {
  display: flex;
  align-items: center;
  padding-block: calc(28 * 1rem / var(--font-size__base));
  padding-inline: calc(24 * 1rem / var(--font-size__base));
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.2;
  text-align: left;
  background-color: var(--_color__row-header-bg);
  -webkit-border-after: 2px solid #ecf3f4;
          border-block-end: 2px solid #ecf3f4;
}

.m-ppa-feature__td {
  display: flex;
  align-items: center;
  padding-block: calc(28 * 1rem / var(--font-size__base));
  padding-inline: calc(24 * 1rem / var(--font-size__base));
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
  -webkit-border-after: 2px solid #ecf3f4;
          border-block-end: 2px solid #ecf3f4;
}

.m-ppa-feature__td:has(> .m-ppa-feature__mark) {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  -moz-column-gap: calc(18 * 1rem / var(--font-size__base));
       column-gap: calc(18 * 1rem / var(--font-size__base));
}

.m-ppa-feature__td:has(> .m-ppa-feature__mark) .m-ppa-feature__mark {
  -webkit-margin-end: 0;
          margin-inline-end: 0;
}

.m-ppa-feature__td:has(> .m-ppa-feature__timing) {
  justify-content: center;
}

.m-ppa-feature__td--colspan2 {
  grid-column: span 2;
}

.m-ppa-feature__row:nth-child(even) .m-ppa-feature__td {
  background-color: #fafafa;
}

.m-ppa-feature__row:nth-child(odd) .m-ppa-feature__td {
  background-color: #fff;
}

.m-ppa-feature__mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: calc(28 * 1rem / var(--font-size__base));
  height: calc(28 * 1rem / var(--font-size__base));
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1;
  border-radius: 50%;
  vertical-align: middle;
  flex-shrink: 0;
}

.m-ppa-feature__mark--best {
  background-color: transparent;
}

.m-ppa-feature__mark--best img {
  width: 100%;
  height: auto;
}

.m-ppa-feature__mark--circle {
  background-color: transparent;
}

.m-ppa-feature__mark--circle img {
  width: 100%;
  height: auto;
}

.m-ppa-feature__mark--triangle {
  background-color: transparent;
}

.m-ppa-feature__mark--triangle img {
  width: calc(23 * 1rem / var(--font-size__base));
  height: auto;
}

.m-ppa-feature__timing {
  display: grid;
  grid-template-columns: auto auto;
  -moz-column-gap: calc(40 * 1rem / var(--font-size__base));
       column-gap: calc(40 * 1rem / var(--font-size__base));
  row-gap: calc(8 * 1rem / var(--font-size__base));
}

.m-ppa-feature__timing-group {
  display: grid;
  row-gap: calc(3 * 1rem / var(--font-size__base));
}

.m-ppa-feature__timing-type {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.5;
}

.m-ppa-feature__timing-item {
  display: flex;
  align-items: center;
  font-size: calc(16 * 1rem / var(--font-size__base));
  line-height: 1.5;
}

.m-ppa-feature__timing-item .m-ppa-feature__mark {
  width: calc(22 * 1rem / var(--font-size__base));
  height: calc(22 * 1rem / var(--font-size__base));
}

.m-ppa-feature__timing-text {
  -webkit-padding-start: calc(18 * 1rem / var(--font-size__base));
          padding-inline-start: calc(18 * 1rem / var(--font-size__base));
}

.m-ppa-faq {
  -webkit-padding-before: calc(120 * 1rem / var(--font-size__base));
          padding-block-start: calc(120 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(120 * 1rem / var(--font-size__base));
          padding-block-end: calc(120 * 1rem / var(--font-size__base));
}

.m-ppa-faq__inner {
  display: grid;
  row-gap: calc(40 * 1rem / var(--font-size__base));
}

.m-ppa-faq__heading {
  position: relative;
}

.m-ppa-faq__heading > .m-ppa-faq__more {
  position: absolute;
  top: 0;
  right: 0;
}

.m-ppa-faq__list {
  display: flex;
  flex-direction: column;
  row-gap: calc(16 * 1rem / var(--font-size__base));
}

.m-ppa-faq__footer {
  display: flex;
  justify-content: center;
  -webkit-padding-before: calc(16 * 1rem / var(--font-size__base));
          padding-block-start: calc(16 * 1rem / var(--font-size__base));
}

.m-ppa-about {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: calc(740 * 1rem / var(--font-size__base));
  background-image: var(--_bg-pc);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.m-ppa-about__heading {
  display: flex;
  flex-direction: column;
  row-gap: calc(18 * 1rem / var(--font-size__base));
}

.m-ppa-about__title {
  font-size: calc(30 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.6666666667;
  color: #fff;
}

.m-ppa-about__title-line {
  height: calc(1 * 1rem / var(--font-size__base));
  background-color: #fff;
}

.m-ppa-about__left {
  display: flex;
  justify-content: flex-end;
  background-color: rgba(0, 0, 0, 0.65);
  -webkit-padding-before: calc(120 * 1rem / var(--font-size__base));
          padding-block-start: calc(120 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(205 * 1rem / var(--font-size__base));
          padding-block-end: calc(205 * 1rem / var(--font-size__base));
  -webkit-padding-start: calc(var(--space-inline__base) * 1rem / var(--font-size__base));
          padding-inline-start: calc(var(--space-inline__base) * 1rem / var(--font-size__base));
  -webkit-padding-end: min(120 / 1920 * 100vw, 120 * 1rem / var(--font-size__base));
          padding-inline-end: min(120 / 1920 * 100vw, 120 * 1rem / var(--font-size__base));
}

.m-ppa-about__left-inner {
  max-width: calc(520 * 1rem / var(--font-size__base));
}

.m-ppa-about__body {
  display: grid;
  row-gap: calc(28 * 1rem / var(--font-size__base));
  -webkit-padding-before: calc(48 * 1rem / var(--font-size__base));
          padding-block-start: calc(48 * 1rem / var(--font-size__base));
}

.m-ppa-about__lead {
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.5;
  color: #fff;
}

.m-ppa-about__description {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
  color: #fff;
}

.m-ppa-about__right {
  position: relative;
  min-height: calc(400 * 1rem / var(--font-size__base));
}

.m-ppa-about__label {
  position: absolute;
  bottom: calc(47 * 1rem / var(--font-size__base));
  right: calc(117 * 1rem / var(--font-size__base));
  z-index: 1;
  font-family: var(--font-family__montserrat);
  font-size: calc(80 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1;
  color: #fff;
  white-space: nowrap;
}

.m-photo-slider {
  --_speed: 40s;
  --_gap: calc(85 * 1rem / var(--font-size__base));
  display: flex;
  flex-direction: column;
  gap: calc(68 * 1rem / var(--font-size__base));
  overflow: hidden;
  padding-top: calc(153 * 1rem / var(--font-size__base));
}

.m-photo-slider__row {
  overflow: hidden;
}

.m-photo-slider__track {
  display: flex;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

.m-photo-slider__list {
  display: flex;
  align-items: flex-start;
  gap: var(--_gap);
  padding-left: var(--_gap);
  animation: photo-slider-scroll var(--_speed) linear infinite;
}

.m-photo-slider__row--reverse {
  --_gap: calc(26 * 1rem / var(--font-size__base));
}

.m-photo-slider__row--reverse .m-photo-slider__list {
  animation-direction: reverse;
}

.m-photo-slider__row--reverse .m-photo-slider__item {
  height: calc(118 * 1rem / var(--font-size__base));
}

.m-photo-slider__row--reverse .m-photo-slider__item img {
  width: auto;
  height: 100%;
}

@keyframes photo-slider-scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
.m-photo-slider__item {
  flex-shrink: 0;
  width: auto;
  min-height: calc(410 * 1rem / var(--font-size__base));
  border-radius: calc(50 * 1rem / var(--font-size__base));
  overflow: hidden;
}
.m-photo-slider__item--large {
  width: calc(460 * 1rem / var(--font-size__base));
  height: calc(340 * 1rem / var(--font-size__base));
}
.m-photo-slider__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.4s ease;
}
.m-photo-slider__item:focus-visible img {
  transform: scale(1.05);
}

.m-photo-slider__item--01 {
  width: calc(1070 * 1rem / var(--font-size__base));
  aspect-ratio: 1070/604;
  border-radius: calc(70 * 1rem / var(--font-size__base));
}

.m-photo-slider__item--02 {
  width: calc(1122 * 1rem / var(--font-size__base));
  border-radius: calc(52 * 1rem / var(--font-size__base));
  aspect-ratio: 1144/699;
}

.m-philosophy {
  padding-bottom: calc(200 * 1rem / var(--font-size__base));
  background-color: var(--color__text);
}

.m-philosophy__inner {
  display: flex;
  flex-direction: column;
}

.m-philosophy__cols {
  display: grid;
  grid-template-columns: calc(720 * 1rem / var(--font-size__base)) 1fr;
  align-items: start;
}

.m-philosophy__text {
  margin-top: 0;
  font-size: calc(30 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 2.3333333333;
  letter-spacing: 0.1em;
  color: var(--color__brand-orange-light);
  padding-top: calc(88 * 1rem / var(--font-size__base));
}

.m-philosophy__right {
  position: relative;
  margin-left: calc(-101 * 1rem / var(--font-size__base));
  margin-right: calc(-32 * 1rem / var(--font-size__base));
}

.m-philosophy__triangle {
  display: block;
  width: 100%;
}

.m-partner-why__text {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
  -webkit-padding-before: calc(40 * 1rem / var(--font-size__base));
          padding-block-start: calc(40 * 1rem / var(--font-size__base));
}
.m-partner-why__text p + p {
  margin-top: calc(24 * 1rem / var(--font-size__base));
}

.m-partner-strengths__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: calc(48 * 1rem / var(--font-size__base));
       column-gap: calc(48 * 1rem / var(--font-size__base));
  row-gap: calc(20 * 1rem / var(--font-size__base));
  -webkit-padding-before: calc(40 * 1rem / var(--font-size__base));
          padding-block-start: calc(40 * 1rem / var(--font-size__base));
  max-width: calc(1176 * 1rem / var(--font-size__base));
  margin-inline: auto;
}

.m-partner-strengths__item {
  display: grid;
  grid-row: span 3;
  grid-template-rows: subgrid;
  row-gap: 0;
  -webkit-padding-before: calc(30 * 1rem / var(--font-size__base));
          padding-block-start: calc(30 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(30 * 1rem / var(--font-size__base));
          padding-block-end: calc(30 * 1rem / var(--font-size__base));
  padding-inline: calc(34 * 1rem / var(--font-size__base));
  background-color: #fff;
  border-radius: calc(12 * 1rem / var(--font-size__base));
}

.m-partner-strengths__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: calc(200 * 1rem / var(--font-size__base));
}
.m-partner-strengths__icon img {
  -o-object-fit: contain;
     object-fit: contain;
  max-height: 100%;
  width: auto;
}

.m-partner-strengths__item-title {
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.4;
  -webkit-padding-before: calc(30 * 1rem / var(--font-size__base));
          padding-block-start: calc(30 * 1rem / var(--font-size__base));
}

.m-partner-strengths__item-text {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
  -webkit-padding-before: calc(14 * 1rem / var(--font-size__base));
          padding-block-start: calc(14 * 1rem / var(--font-size__base));
}

.m-partner-recruit__list {
  display: flex;
  flex-direction: column;
  row-gap: calc(40 * 1rem / var(--font-size__base));
  -webkit-padding-before: calc(40 * 1rem / var(--font-size__base));
          padding-block-start: calc(40 * 1rem / var(--font-size__base));
}

.m-partner-recruit__item {
  background-color: #fff;
  border-radius: calc(75 * 1rem / var(--font-size__base));
  overflow: hidden;
}

.m-partner-recruit__button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  -moz-column-gap: calc(24 * 1rem / var(--font-size__base));
       column-gap: calc(24 * 1rem / var(--font-size__base));
  width: 100%;
  padding-block: calc(40 * 1rem / var(--font-size__base));
  padding-inline: calc(60 * 1rem / var(--font-size__base));
  text-align: left;
  background-color: transparent;
  border: none;
  cursor: pointer;
  transition: opacity var(--duration__base);
}
.m-partner-recruit__button:focus-visible {
  opacity: var(--opacity__hover);
}

.m-partner-recruit__button-left {
  display: flex;
  align-items: center;
  -moz-column-gap: calc(24 * 1rem / var(--font-size__base));
       column-gap: calc(24 * 1rem / var(--font-size__base));
  flex: 1;
  min-width: 0;
}

.m-partner-recruit__badge {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: calc(50 * 1rem / var(--font-size__base));
  height: calc(50 * 1rem / var(--font-size__base));
  background-color: var(--color__brand-cyan-light);
  border-radius: 50%;
  font-family: var(--font-family__montserrat);
  font-size: calc(24 * 1rem / var(--font-size__base));
  font-weight: 700;
  letter-spacing: 0.05em;
  color: #fff;
}

.m-partner-recruit__item-title {
  font-size: calc(30 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.6666666667;
}

.m-partner-recruit__arrow {
  flex-shrink: 0;
  width: calc(22 * 1rem / var(--font-size__base));
  height: calc(22 * 1rem / var(--font-size__base));
  background-image: url("../images/partner/icon-arrow.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transform: rotate(0deg);
  transition: transform var(--duration__base);
}

.m-partner-recruit__button[aria-expanded=true] .m-partner-recruit__arrow {
  transform: rotate(180deg);
}

.m-partner-recruit__panel {
  overflow: hidden;
}

.m-partner-recruit__panel-inner {
  display: flex;
  flex-direction: column;
  row-gap: calc(60 * 1rem / var(--font-size__base));
  -webkit-padding-before: calc(40 * 1rem / var(--font-size__base));
          padding-block-start: calc(40 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(60 * 1rem / var(--font-size__base));
          padding-block-end: calc(60 * 1rem / var(--font-size__base));
  -webkit-padding-start: calc(190 * 1rem / var(--font-size__base));
          padding-inline-start: calc(190 * 1rem / var(--font-size__base));
  -webkit-padding-end: calc(170 * 1rem / var(--font-size__base));
          padding-inline-end: calc(170 * 1rem / var(--font-size__base));
}

.m-partner-recruit__block {
  display: flex;
  flex-direction: column;
  row-gap: calc(20 * 1rem / var(--font-size__base));
}

.m-partner-recruit__block-label {
  font-size: calc(22 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.5;
}

.m-partner-recruit__block-text {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
}

.m-partner-page__body {
  -webkit-padding-after: calc(120 * 1rem / var(--font-size__base));
          padding-block-end: calc(120 * 1rem / var(--font-size__base));
}

.m-partner-page__recruit {
  -webkit-padding-before: calc(120 * 1rem / var(--font-size__base));
          padding-block-start: calc(120 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(160 * 1rem / var(--font-size__base));
          padding-block-end: calc(160 * 1rem / var(--font-size__base));
}

.m-partner-page__why {
  padding-block: calc(120 * 1rem / var(--font-size__base));
}

.m-partner-page__strengths {
  padding-block: calc(160 * 1rem / var(--font-size__base));
}

.m-partner-page__flow {
  padding-block: calc(120 * 1rem / var(--font-size__base));
}

@keyframes partner-fv-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.m-partner-fv {
  --_fade-duration: 0.8s;
  --_fade-delay-bg: 0s;
  --_fade-delay-title: 0.4s;
  --_fade-delay-heading: 0.6s;
  --_fade-delay-text: 0.8s;
  position: relative;
  z-index: 1;
  overflow-x: clip;
  min-height: min(900 / 1920 * 100vw, 900 * 1rem / var(--font-size__base));
  background: linear-gradient(180deg, #fff 25%, #ebf5f5 59.62%, #f7f7f7 100%);
}

.m-partner-fv__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
  max-width: calc(1920 * 1rem / var(--font-size__base));
  margin-inline: auto;
  opacity: 0;
  animation: partner-fv-fade-in var(--_fade-duration) ease-out var(--_fade-delay-bg) forwards;
}

.m-partner-fv__bg-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: right top;
     object-position: right top;
}

.m-partner-fv__ittan {
  position: absolute;
  left: calc(1108 / 1920 * 100vw);
  top: max(-212 / 1920 * 100vw, -212 * 1rem / var(--font-size__base));
  z-index: 0;
  width: min(1983 / 1920 * 100vw, 1983 * 1rem / var(--font-size__base));
  pointer-events: none;
  color: var(--color__brand-cyan);
  opacity: 0.8;
  transform: translateX(-50%) scaleX(-1) rotate(-39.9deg);
}

.m-partner-fv__ittan svg {
  display: block;
  width: 100%;
  height: auto;
}

.m-partner-fv__inner {
  position: relative;
  z-index: 1;
  -webkit-padding-before: calc(185 * 1rem / var(--font-size__base));
          padding-block-start: calc(185 * 1rem / var(--font-size__base));
  -webkit-padding-after: calc(78 * 1rem / var(--font-size__base));
          padding-block-end: calc(78 * 1rem / var(--font-size__base));
}

.m-partner-fv__title {
  display: grid;
  opacity: 0;
  animation: partner-fv-fade-in var(--_fade-duration) ease-out var(--_fade-delay-title) forwards;
}

.m-partner-fv__en {
  font-family: var(--font-family__montserrat);
  font-size: calc(80 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.375;
  color: var(--color__brand-cyan-light);
}

.m-partner-fv__ja {
  font-size: calc(24 * 1rem / var(--font-size__base));
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.6666666667;
  color: var(--color__brand-cyan-light);
}

.m-partner-fv__heading {
  font-size: min(90 / 1920 * 100vw, 90 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.5;
  color: var(--color__black);
  max-width: calc(1104 * 1rem / var(--font-size__base));
  -webkit-padding-before: calc(90 * 1rem / var(--font-size__base));
          padding-block-start: calc(90 * 1rem / var(--font-size__base));
  opacity: 0;
  animation: partner-fv-fade-in var(--_fade-duration) ease-out var(--_fade-delay-heading) forwards;
}

.m-partner-fv__text {
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.5;
  max-width: calc(1111 * 1rem / var(--font-size__base));
  -webkit-padding-before: calc(60 * 1rem / var(--font-size__base));
          padding-block-start: calc(60 * 1rem / var(--font-size__base));
  opacity: 0;
  animation: partner-fv-fade-in var(--_fade-duration) ease-out var(--_fade-delay-text) forwards;
}
.m-partner-fv__text p + p {
  margin-top: calc(27 * 1rem / var(--font-size__base));
}

.m-partner-flow__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  -moz-column-gap: calc(24 * 1rem / var(--font-size__base));
       column-gap: calc(24 * 1rem / var(--font-size__base));
  row-gap: calc(24 * 1rem / var(--font-size__base));
  -webkit-padding-before: calc(40 * 1rem / var(--font-size__base));
          padding-block-start: calc(40 * 1rem / var(--font-size__base));
}

.m-partner-flow__item {
  display: flex;
  flex-direction: column;
  row-gap: calc(40 * 1rem / var(--font-size__base));
  padding-block: calc(60 * 1rem / var(--font-size__base));
  padding-inline: calc(34 * 1rem / var(--font-size__base));
  background-color: var(--color__gray-100);
  border-radius: calc(12 * 1rem / var(--font-size__base));
}

.m-partner-flow__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: calc(140 * 1rem / var(--font-size__base));
}
.m-partner-flow__icon img {
  -o-object-fit: contain;
     object-fit: contain;
  max-height: 100%;
  width: auto;
}

.m-partner-flow__body {
  display: flex;
  flex-direction: column;
  row-gap: calc(14 * 1rem / var(--font-size__base));
}

.m-partner-flow__step {
  display: flex;
  align-items: center;
  -moz-column-gap: calc(14 * 1rem / var(--font-size__base));
       column-gap: calc(14 * 1rem / var(--font-size__base));
}

.m-partner-flow__badge {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: calc(50 * 1rem / var(--font-size__base));
  height: calc(50 * 1rem / var(--font-size__base));
  background-color: var(--color__brand-cyan-light);
  border-radius: 50%;
  font-family: var(--font-family__montserrat);
  font-size: calc(24 * 1rem / var(--font-size__base));
  font-weight: 700;
  letter-spacing: 0.05em;
  color: #fff;
}

.m-partner-flow__step-title {
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.4;
}

.m-partner-flow__text {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
}

.m-page-title-recruit {
  font-family: var(--font-family__jost);
  font-size: calc(76 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 0;
  text-transform: uppercase;
  color: #030303;
}

.m-page-title-recruit__sub {
  padding-top: calc(16 * 1rem / var(--font-size__base));
  font-size: calc(44 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.3181818182;
  color: var(--color__brand-orange-light);
}

.m-page-hero {
  position: relative;
  display: flex;
  align-items: center;
  height: calc(780 * 1rem / var(--font-size__base));
  max-height: 100svh;
  padding-block: calc(120 * 1rem / var(--font-size__base));
}

.m-page-hero--small {
  height: calc(528 * 1rem / var(--font-size__base));
  padding-top: calc(100 * 1rem / var(--font-size__base));
}

.m-page-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: var(--_bg-pc);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.m-page-hero__bg--blue-overlay::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(68, 136, 213, 0.8);
  mix-blend-mode: screen;
}

.m-page-hero__inner {
  position: relative;
  z-index: 1;
  width: 100%;
}

.m-page-hero-title {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: calc(24 * 1rem / var(--font-size__base));
}

.m-page-hero-title__en {
  font-family: var(--font-family__montserrat);
  font-size: calc(80 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.375;
}

.m-page-hero-title__ja {
  font-size: calc(24 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 1.6666666667;
  padding-bottom: calc(21 * 1rem / var(--font-size__base));
}

.m-offset-border {
  position: relative;
}

.m-offset-border::before,
.m-offset-border::after {
  content: "";
  position: absolute;
  width: calc(100% + 26 * 1rem / var(--font-size__base));
  height: calc(100% - 3 * 1rem / var(--font-size__base));
  border: 1px solid #707070;
  z-index: -1;
}

.m-offset-border::before {
  top: calc(-1 * 1rem / var(--font-size__base));
  left: calc(-16 * 1rem / var(--font-size__base));
}

.m-offset-border::after {
  top: calc(7 * 1rem / var(--font-size__base));
  left: calc(-28 * 1rem / var(--font-size__base));
}

.m-offset-border--shift-right::before, .m-offset-border--shift-right::after {
  width: calc(100% + 39 * 1rem / var(--font-size__base));
  height: calc(100% - 6 * 1rem / var(--font-size__base));
}
.m-offset-border--shift-right::before {
  left: calc(-13 * 1rem / var(--font-size__base));
}
.m-offset-border--shift-right::after {
  left: calc(-25 * 1rem / var(--font-size__base));
}

.m-not-found {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: calc(100svh - var(--js-height__header));
  padding-top: calc(342 * 1rem / var(--font-size__base));
  padding-bottom: calc(180 * 1rem / var(--font-size__base));
  background-color: var(--color__gray-100);
  background-image: url("../images/common/bg-pattern.png");
  background-repeat: repeat;
  background-position: center top;
  background-size: cover;
}

.m-not-found__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(80 * 1rem / var(--font-size__base));
  width: calc(1280 * 1rem / var(--font-size__base));
  padding-block: calc(80 * 1rem / var(--font-size__base));
  padding-inline: calc(40 * 1rem / var(--font-size__base));
  background-color: #fff;
  border-radius: calc(16 * 1rem / var(--font-size__base));
}

.m-not-found__heading {
  text-align: center;
}

.m-not-found__title {
  font-family: var(--font-family__montserrat);
  font-size: calc(80 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.375;
  color: var(--color__brand-orange);
}

.m-not-found__subtitle {
  padding-top: calc(24 * 1rem / var(--font-size__base));
  font-size: calc(24 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.6666666667;
  letter-spacing: 0.08em;
  color: var(--color__brand-orange);
}

.m-not-found__description {
  font-size: calc(24 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.6666666667;
  letter-spacing: 0.08em;
  text-align: center;
}

.m-not-found-recruit {
  position: relative;
  overflow: hidden;
  background-color: #ebe9e8;
  padding-bottom: calc(180 * 1rem / var(--font-size__base));
}

.m-not-found-recruit .m-entry__bg-logomark {
  z-index: 0;
}

.m-not-found-recruit__bg-logomark {
  position: absolute;
  top: calc(-184 * 1rem / var(--font-size__base));
  right: 0;
  width: calc(750 * 1rem / var(--font-size__base));
  pointer-events: none;
}
.m-not-found-recruit__bg-logomark img {
  width: 100%;
  height: auto;
}

.m-not-found-recruit__bg-text {
  position: relative;
  height: calc(206 / 1920 * 100vw);
  pointer-events: none;
  margin-top: calc(-50 / 1920 * 100vw);
}

.m-not-found-recruit__heading {
  position: relative;
  z-index: 1;
  padding-top: calc(180 * 1rem / var(--font-size__base));
}

.m-not-found-recruit__title {
  font-family: var(--font-family__montserrat);
  font-size: calc(76 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.1973684211;
  text-transform: uppercase;
  color: #000;
}

.m-not-found-recruit__subtitle {
  font-size: calc(44 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.0681818182;
  letter-spacing: 0.1em;
  color: #f84103;
}

.m-not-found-recruit__card-outer {
  position: relative;
  z-index: 1;
  margin-top: calc(-20 * 1rem / var(--font-size__base));
}

.m-not-found-recruit__card {
  display: flex;
  flex-direction: column;
  gap: calc(80 * 1rem / var(--font-size__base));
  padding-block: calc(170 * 1rem / var(--font-size__base));
  padding-inline: calc(180 * 1rem / var(--font-size__base));
  background-color: rgba(255, 255, 255, 0.5);
  -webkit-backdrop-filter: blur(calc(5 * 1rem / var(--font-size__base)));
          backdrop-filter: blur(calc(5 * 1rem / var(--font-size__base)));
  border-radius: calc(75 * 1rem / var(--font-size__base));
}

.m-not-found-recruit__description {
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

.m-not-found-recruit__button {
  max-width: calc(381 * 1rem / var(--font-size__base));
}

.m-news {
  padding-top: calc(108 * 1rem / var(--font-size__base));
  padding-bottom: calc(197 * 1rem / var(--font-size__base));
  background-color: #f7f7f7;
}

.m-news__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}

.m-news__title {
  color: var(--color__brand-cyan);
}

.m-news__list {
  padding-top: calc(30 * 1rem / var(--font-size__base));
}

.m-news-single {
  padding-top: calc(180 * 1rem / var(--font-size__base));
  padding-bottom: calc(180 * 1rem / var(--font-size__base));
}

.m-news-single__meta {
  display: flex;
  align-items: center;
  gap: calc(24 * 1rem / var(--font-size__base));
}

.m-news-single__date {
  font-size: calc(14 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.7142857143;
  color: #626262;
}

.m-news-single__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: calc(128 * 1rem / var(--font-size__base));
  padding-inline: calc(16 * 1rem / var(--font-size__base));
  padding-block: calc(4 * 1rem / var(--font-size__base));
  font-size: calc(13 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.5384615385;
  color: #fff;
  background-color: var(--color__brand-cyan);
  border-radius: calc(99 * 1rem / var(--font-size__base));
}

.m-news-single__title {
  padding-top: calc(28 * 1rem / var(--font-size__base));
  font-size: calc(30 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.6666666667;
  border-bottom: 1px solid var(--color__brand-cyan);
  padding-bottom: calc(24 * 1rem / var(--font-size__base));
}

.m-news-single__content {
  padding-top: calc(40 * 1rem / var(--font-size__base));
}

.m-news-single__pdf {
  padding-top: calc(40 * 1rem / var(--font-size__base));
}

.m-news-single__pdf-link {
  display: inline-flex;
  align-items: center;
  gap: calc(10 * 1rem / var(--font-size__base));
  text-decoration: none;
  color: inherit;
  transition: opacity var(--duration__base);
}
.m-news-single__pdf-link:focus-visible {
  opacity: var(--opacity__hover);
}

.m-news-single__pdf-icon {
  width: calc(20 * 1rem / var(--font-size__base));
  height: calc(25 * 1rem / var(--font-size__base));
  flex-shrink: 0;
  color: var(--color__brand-orange);
}

.m-news-single__pdf-name {
  font-size: calc(15 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.6;
  color: var(--color__brand-cyan);
  text-decoration: underline;
}

.m-news-single__pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(20 * 1rem / var(--font-size__base));
  padding-top: calc(120 * 1rem / var(--font-size__base));
}

.m-news-single__pagination-button {
  display: flex;
  align-items: center;
  gap: calc(38 * 1rem / var(--font-size__base));
  padding-top: calc(14 * 1rem / var(--font-size__base));
  padding-bottom: calc(14 * 1rem / var(--font-size__base));
  padding-inline: calc(24 * 1rem / var(--font-size__base));
  font-size: calc(14 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.4285714286;
  letter-spacing: 0.02em;
  color: #626262;
  text-decoration: none;
  background-color: var(--color__gray-100);
  border-radius: calc(99 * 1rem / var(--font-size__base));
  transition: opacity var(--duration__base);
}
.m-news-single__pagination-button:focus-visible {
  opacity: var(--opacity__hover);
}

.m-news-single__pagination-arrow {
  flex-shrink: 0;
  width: calc(22 * 1rem / var(--font-size__base));
  height: calc(22 * 1rem / var(--font-size__base));
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.m-news-single__pagination-arrow--next {
  background-image: url("../images/news/arrow-next.svg");
  transform: rotate(180deg);
}

.m-news-single__pagination-arrow--back {
  background-image: url("../images/news/arrow-back.svg");
}

.m-page-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-color: rgba(255, 255, 255, 0.1);
}

.m-news-page__body {
  padding-top: calc(65 * 1rem / var(--font-size__base));
  padding-bottom: calc(180 * 1rem / var(--font-size__base));
}

.m-news-page__filter {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: calc(24 * 1rem / var(--font-size__base));
}

.m-news-page__filter-label {
  font-size: calc(14 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.4285714286;
  letter-spacing: 0.02em;
}

.m-dropdown {
  position: relative;
}

.m-dropdown__trigger {
  display: flex;
  align-items: center;
  gap: calc(16 * 1rem / var(--font-size__base));
  min-width: calc(180 * 1rem / var(--font-size__base));
  padding-top: calc(15 * 1rem / var(--font-size__base));
  padding-bottom: calc(15 * 1rem / var(--font-size__base));
  padding-left: calc(24 * 1rem / var(--font-size__base));
  padding-right: calc(20 * 1rem / var(--font-size__base));
  font-size: calc(14 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.4285714286;
  letter-spacing: 0.02em;
  color: #626262;
  background-color: var(--color__gray-100);
  border: none;
  border-radius: calc(99 * 1rem / var(--font-size__base));
  cursor: pointer;
  transition: opacity var(--duration__base);
}
.m-dropdown__trigger:focus-visible {
  opacity: var(--opacity__hover);
}

.m-dropdown__value {
  flex: 1;
}

.m-dropdown__arrow {
  flex-shrink: 0;
  width: calc(22 * 1rem / var(--font-size__base));
  height: calc(22 * 1rem / var(--font-size__base));
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22'%3E%3Ccircle cx='11' cy='11' r='11' fill='%235FC0C6'/%3E%3Cpath d='M11 15L6.67 9H15.33L11 15Z' fill='white'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: transform var(--duration__base);
}
.m-dropdown.is-open .m-dropdown__arrow {
  transform: rotate(180deg);
}

.m-dropdown__list {
  position: absolute;
  top: calc(100% + 8 * 1rem / var(--font-size__base));
  left: 0;
  z-index: 100;
  min-width: 100%;
  padding-block: calc(8 * 1rem / var(--font-size__base));
  background-color: #fff;
  border-radius: calc(16 * 1rem / var(--font-size__base));
  box-shadow: 0 calc(4 * 1rem / var(--font-size__base)) calc(20 * 1rem / var(--font-size__base)) rgba(0, 0, 0, 0.1);
  opacity: 0;
  visibility: hidden;
  transform: translateY(calc(-8 * 1rem / var(--font-size__base)));
  transition: opacity var(--duration__base), visibility var(--duration__base), transform var(--duration__base);
}
.m-dropdown.is-open .m-dropdown__list {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.m-dropdown__item {
  padding-top: calc(12 * 1rem / var(--font-size__base));
  padding-bottom: calc(12 * 1rem / var(--font-size__base));
  padding-inline: calc(24 * 1rem / var(--font-size__base));
  font-size: calc(14 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.4285714286;
  color: #626262;
  cursor: pointer;
  transition: background-color var(--duration__base), color var(--duration__base);
}
.m-dropdown__item:focus-visible {
  background-color: var(--color__gray-100);
}
.m-dropdown__item.is-selected {
  color: var(--color__brand-cyan);
}

.m-news-page__list {
  padding-top: calc(80 * 1rem / var(--font-size__base));
}

.m-news-page__empty {
  padding-block: calc(60 * 1rem / var(--font-size__base));
  font-size: calc(16 * 1rem / var(--font-size__base));
  text-align: center;
  color: #626262;
}

.m-news-page__pagination {
  padding-top: calc(80 * 1rem / var(--font-size__base));
}

.m-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(8 * 1rem / var(--font-size__base));
  padding-block: calc(20 * 1rem / var(--font-size__base));
  padding-inline: calc(24 * 1rem / var(--font-size__base));
  background-color: var(--color__gray-100);
  border-radius: calc(99 * 1rem / var(--font-size__base));
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}

.m-pagination__number {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: calc(42 * 1rem / var(--font-size__base));
  height: calc(42 * 1rem / var(--font-size__base));
  padding-inline: calc(12 * 1rem / var(--font-size__base));
  font-size: calc(14 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  color: var(--color__brand-cyan);
  text-decoration: none;
  background-color: transparent;
  border-radius: 50%;
  transition: opacity var(--duration__base);
}
.m-pagination__number:focus-visible {
  opacity: var(--opacity__hover);
}
.m-pagination__number.is-current {
  background-color: var(--color__brand-cyan);
  color: #fff;
}

.m-pagination__link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(42 * 1rem / var(--font-size__base));
  height: calc(42 * 1rem / var(--font-size__base));
  text-decoration: none;
  transition: opacity var(--duration__base);
}
.m-pagination__link:focus-visible {
  opacity: var(--opacity__hover);
}

.m-pagination__link--first,
.m-pagination__link--last {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 10' fill='none'%3E%3Cpath d='M0 5L6 0.669872L6 9.33013L0 5Z' fill='%235FC0C6'/%3E%3Cpath d='M8 5L14 0.669872V9.33013L8 5Z' fill='%235FC0C6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: calc(16 * 1rem / var(--font-size__base)) auto;
}

.m-pagination__link--last {
  transform: rotate(180deg);
}

.m-pagination__link--prev,
.m-pagination__link--next {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 10' fill='none'%3E%3Cpath d='M0 5L6 0.669872L6 9.33013L0 5Z' fill='%235FC0C6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: calc(8 * 1rem / var(--font-size__base)) auto;
}

.m-pagination__link--next {
  transform: rotate(180deg);
}

.m-news-item {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #e5e5e5;
}
.m-news-item:first-child {
  border-top: 1px solid #e5e5e5;
}

.m-news-item__link {
  display: flex;
  flex: 1;
  min-width: 0;
  align-items: center;
  gap: calc(40 * 1rem / var(--font-size__base));
  padding-block: calc(26 * 1rem / var(--font-size__base));
  padding-inline: calc(20 * 1rem / var(--font-size__base));
  text-decoration: none;
  color: inherit;
  transition: opacity var(--duration__base);
}
.m-news-item__link:focus-visible {
  opacity: var(--opacity__hover);
}

.m-news-item__date {
  flex-shrink: 0;
  font-size: calc(14 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.7142857143;
  color: #626262;
}

.m-news-item__tag {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: calc(128 * 1rem / var(--font-size__base));
  padding-block: calc(4 * 1rem / var(--font-size__base));
  font-size: calc(13 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.8461538462;
  color: #fff;
  background-color: var(--color__brand-cyan);
  border-radius: calc(99 * 1rem / var(--font-size__base));
}

.m-news-item__text {
  flex: 1;
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.5;
}

.m-news-item__pdf {
  display: flex;
  align-items: center;
  gap: calc(8 * 1rem / var(--font-size__base));
  flex-shrink: 0;
}

.m-news-item__pdf-icon {
  width: calc(20 * 1rem / var(--font-size__base));
  height: calc(25 * 1rem / var(--font-size__base));
  color: var(--color__brand-orange);
}

.m-news-item__pdf-size {
  font-size: calc(14 * 1rem / var(--font-size__base));
  line-height: 1.7142857143;
}
.m-mv {
  --_line-color: #00c8c8;
  --_scroll-color: #fff;
  --_fade-duration: 0.8s;
  --_fade-delay-bg: 0s;
  --_fade-delay-title: 0.4s;
  --_fade-delay-ui: 0.8s;
  position: relative;
  width: 100%;
  min-height: calc(800 * 1rem / var(--font-size__base));
  max-height: calc(100svh - var(--js-height__header, calc(72 * 1rem / var(--font-size__base))));
  height: calc(100svh - var(--js-height__header, calc(72 * 1rem / var(--font-size__base))));
  overflow: hidden;
}
.m-mv__bg {
  position: absolute;
  inset: 0;
  z-index: 1;
  opacity: 0;
  animation: mv-fade-in var(--_fade-duration) ease-out var(--_fade-delay-bg) forwards;
}

.m-mv__bg-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-mv__inner {
  position: relative;
  z-index: 3;
  height: 100%;
}

.m-mv__content {
  position: absolute;
  top: 40%;
  transform: translateY(-50%);
  width: calc(100% - var(--_padding-inline__total) * 1rem / var(--font-size__base));
}

.m-mv__title {
  color: #fff;
  font-size: calc(48 * 1rem / var(--font-size__base));
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 2;
  text-shadow: calc(9 * 1rem / var(--font-size__base)) 0 calc(40 * 1rem / var(--font-size__base)) rgba(0, 0, 0, 0.4);
  opacity: 0;
  animation: mv-fade-in var(--_fade-duration) ease-out var(--_fade-delay-title) forwards;
}

.m-mv__button {
  display: flex;
  justify-content: flex-end;
  padding-top: calc(40 * 1rem / var(--font-size__base));
  opacity: 0;
  animation: mv-fade-in var(--_fade-duration) ease-out var(--_fade-delay-ui) forwards;
}

.m-mv__contact {
  position: fixed;
  right: calc(47 * 1rem / var(--font-size__base));
  bottom: calc(40 * 1rem / var(--font-size__base));
  z-index: 100;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s ease-out, visibility 0.3s ease-out, transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.m-mv__contact.is-header-hidden {
  transform: translateY(calc(100% + 60 * 1rem / var(--font-size__base)));
}

.m-fixed-entry {
  position: fixed;
  right: calc(47 * 1rem / var(--font-size__base));
  bottom: calc(40 * 1rem / var(--font-size__base));
  z-index: 100;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s ease-out, visibility 0.3s ease-out, transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.m-fixed-entry.is-header-hidden {
  transform: translateY(calc(100% + 60 * 1rem / var(--font-size__base)));
}

.m-mv__scroll {
  position: absolute;
  top: 34%;
  right: calc(92 * 1rem / var(--font-size__base));
  transform: translateY(-50%);
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(22 * 1rem / var(--font-size__base));
  opacity: 0;
  animation: mv-fade-in var(--_fade-duration) ease-out var(--_fade-delay-ui) forwards;
}

.m-mv__scroll-text {
  color: var(--_scroll-color);
  font-size: calc(15 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 2.6666666667;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}

.m-mv__scroll-line {
  display: block;
  width: 1px;
  height: calc(98 * 1rem / var(--font-size__base));
  background-color: var(--_scroll-color);
  transform-origin: top;
  animation: scroll-line 1.8s cubic-bezier(0.4, 0, 0.2, 1) infinite;
}

@keyframes scroll-line {
  0% {
    transform: scaleY(0);
  }
  100% {
    transform: scaleY(1);
  }
}
@keyframes mv-fade-in-up {
  from {
    opacity: 0;
    translate: 0 calc(20 * 1rem / var(--font-size__base));
  }
  to {
    opacity: 1;
    translate: 0 0;
  }
}
.m-mv-recruit {
  position: relative;
  z-index: 10;
  width: 100%;
  min-height: calc(800 * 1rem / var(--font-size__base));
  max-height: calc(100svh - var(--js-height__header, calc(72 * 1rem / var(--font-size__base))));
  height: calc(100svh - var(--js-height__header, calc(72 * 1rem / var(--font-size__base))));
  overflow-x: clip;
}

.m-mv-recruit__overlay {
  display: none;
}

.m-mv-recruit__bg {
  position: absolute;
  inset: 0;
  z-index: 1;
  opacity: 0;
  animation: mv-fade-in 0.8s ease-out 0s forwards;
}

.m-mv-recruit__bg-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-mv-recruit__inner {
  position: relative;
  z-index: 4;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  height: 100%;
}

.m-mv-recruit__content {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.m-mv-recruit__title {
  color: #fff;
  font-size: calc(75 * 1rem / var(--font-size__base));
  font-weight: 900;
  letter-spacing: 0.04em;
  line-height: 1.5;
}

.m-mv-recruit__title-line {
  display: block;
  opacity: 0;
  animation: mv-fade-in-up 0.7s ease-out forwards;
}

.m-mv-recruit__title-line:nth-child(1) {
  animation-delay: 0.4s;
}

.m-mv-recruit__title-line:nth-child(2) {
  animation-delay: 0.6s;
}

.m-mv-recruit__title-line:nth-child(3) {
  animation-delay: 0.8s;
}

.m-mv-recruit__title-line:nth-child(4) {
  animation-delay: 1s;
}

.m-mv-recruit__entry {
  margin-top: calc(20 * 1rem / var(--font-size__base));
  opacity: 0;
  animation: mv-fade-in 0.8s ease-out 1.2s forwards;
}

.m-mv-recruit__bg-text {
  position: absolute;
  bottom: calc(-103 / 1920 * 100vw);
  left: 0;
  right: 0;
  z-index: 3;
  pointer-events: none;
  height: calc(206 / 1920 * 100vw);
  transform: translateY(-50%);
}

.m-mv-recruit__bg-text-blur {
  --_mask-svg: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxOTIxJyBoZWlnaHQ9JzI3Micgdmlld0JveD0nMCAwIDE5MjEgMjcyJz48ZGVmcz48c3R5bGU+QGZvbnQtZmFjZXtmb250LWZhbWlseTonTW9udHNlcnJhdCc7Zm9udC13ZWlnaHQ6ODAwO2ZvbnQtc3R5bGU6aXRhbGljO3NyYzp1cmwoJ2RhdGE6Zm9udC93b2ZmMjtiYXNlNjQsZDA5R01nQUJBQUFBQUEzRUFCSUFBQUFBR3NBQUFBMWpBQWtBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUdoWWJnWGdjTUFaZ1AxTlVRVlJBQUhRSWdRNEpueFFSQ0FxRVBJTlZBVFlDSkFNb0N4WUFCQ0FGaEV3SElBeURMaHNNR1ZHVWtWWWN5QmNGZHNOeFJsaFJ4VERVaHFkZlBScXNYdUVZRVY0czFIRHVEZE5zZ1dOOWhDU3pQNzJiOWQ1a0VxZXdwa3hYVEZOMVFra2RxTGl5WXNLZDB6UDNMMVdRb0xYTTduK0JoU00yQm1VdFcyRFBRclcreHJTdXdseU5xQ1l3YXF4K1A3MTNJVlNFYjNaMXFLZ3lPVjBnSGwvNzZ5S3I1SmMxcW9va0hWenpYaUE2VitsSnNMWkltaGFQZUNwdlpacEpLa1hLSWNGaFVPT00zWHNySlhLVGxOYzZnSElBU082Rng4L3hmVmZqMzZmaFNQa1gvMXJyemI2ZTJjMTJFQldnakpDQVV1NTdQZjEzdW51V09qVHdnV2duaUFwUXBYeFVGQjRSQ1hsMTZ1cUVqSkR1ZElpNFU4citPdFdOaFpDNkV5ZmR6YXJSK2dRK0hoQ0F4a1lFaHBIQzN3dEFzY1l1ZERVNjBRRXpkOXZxSzJIbVlYMVJCY3c4Y3pkV3cwd1VBTXdlNFdsUlBWc3ZnZlJLbE94SkE0SW9JV3A1bnJqZFFSS0IzUmY4TzN6dzM4M0p4M2tCUC82ci9Kby84aDlWL2hoR3lRK0FxZVFMTldJdEc0a3QvMTZhSXNRV0V2Um9Eb0NJSjhBMVJ5bXBHeWkrNU90V1dJVnpKNXU1WmM3TlBjRytQYTJYSXgzZ0FiblYvZUJQRW1LUEE5RWxEOWFWS0RCN284OWxySVV4Nk1PWXJlZkNBN3FPVDFPdEpNUGtvU2FHeTMwQ01EbUVCYTNuSmFXTmhPS1BQZnR3UXM1ZDJ3RGdKTWRLYkFDWEFBQ2Y0U1RnL3hPeHhWU0JzbkhQS3NXRWlSQWxSckowRG1hQ3dKK3QvT2V4UEpwSDhuRHV6VjI1TTdkRGRnTDV3ZFdISHZGQ2tOc0lqZjJ4NEwvc0lvd0hSZHkzdDhhZ0pJYTVhdklCazA0TUJlelVtRXVydHpWVGhKaklwdm9Xak9qdk1MTTY4VWJkMStOUG5YeS9IdmZiOVhJK0hRL2RYWjBkN1cydExjMU5qUTMxZGJVMTFWV1ZGZVZscFNYRlJZVmVqN3NnUHk4MzU0SGNsODQrdnZ0aWZIdDlkWGx4ZmpZYUR2cTk0dE1Qc3FYRlRoclY5QW1mVEphNm5TUXFtZVV2anpFcEJJTUkvanBJTVFUOTJ1clJqYzFQbGRaT3NZWU9pdHp2REkxNFViN1RxMlNmaFNEa2xVYTNQTG91TGVWU1lKQzdhSnlXRk9WTnJJelhnTmpZSXRyNGlSQ0lPZWw4cVZpQ0dYRXZ5UVJZRjE5aGhBZzZiYnFLR0gxcjNuNDJrV0ljdzJOWXM1Mm9hNklrSzkyeFB6bG5hQytWVWcvRXFMVWxWUjZvSDNPTHBxYTBZUDZKNit2YlFBRnYzRzBMYy94dDZqTjVzSm9JQXJpNnNoSUtQR2NGV1hoaitlVXZsSVN5SnVmYTRIUGo5Qk94N25ZaWtlTTRQMzJaRnZYMFpVWnBXMXNDOXRKaGZ5RnU2c1FmdTdpZ20rZUJ1YnFqT0VYUzZheEpFdExSalpOc2RxclZ4VzZ2RXpVTzB1WnRVYUJ1RWg0NFNvWUVSVlhPSXV3eGtxR2xDVDJqR1NrVFpKY3d5YkdOZVFCMUNSNmV0UkhhNXUwT2wyWVBGdzRYRDFlbVZxZFVSS0Q2WmI3b1h5aUo3SkpmTmJlYU5xRFh2V2x1TVJoWEQ2Z1dCU2Y4WmdHOUlLajd6aUp5b2lqZlhWN1JMekRLY0xoUjJsODFXWFVxUkkwK3RnL3BkdkpJVmcxMzdId09RVUFEdG5xbkdBQ2NJbStGZm11cFc3elNMbFhjNlc3cVg5K0FMRThVdXpqNU5hbk5veTA3R1VuRWRXbWhxOGY0Nko3NzJCdnBkTlRWUXM2MlZ3MDRER291dktpRlFaSFVnQXpyTzVxUng1dWloYkpDQkRHckEvMFBnbElra1k4aVJqOUs5NVA5aURxM0FzVlBqcUg2WTl5U2crVEFFVUNzQjVicS9TL09PYWUzbm91WEt5TG9WL2FwZXVJQ1dBMmRBNmcvVnBIS3NkYnVyYlRib1R6Q3FqbnRka2JYVWI4MFYvZVdBMXhONG91azNwbVBReDJ1RTA2MVlpM0llK2VmbmpxZW1wd2tvSWZhYTNqdWhFREY5RnRHY2FBRytqVW9DTERGaFMxTHJtOHlMcTFvMTl6d3JZMzZvYmlwRG9wcXA4U3M2N3o1dE50SkV5UVh6TTVQOHF5blJuMkUrc2xqZk11U3luTUZ1anVZZjF6eXFWRlBkQ2N0bG9jS1JjekZIb25udk5HUTc0YzRnck1icTZseG5lWitZZDFPSE5uVzJFYmdJTDVSYkR2cExPTEVkUmNKbEp4enBicncxM2hRUEJKblN4SjluRWE1UXFVelJDOFgwT3NoWVJsdmN5RFlXUTk2aW9lcFhtOEFBWVRlaHhRYlRpZGJLZTFBNlNYcGMvbUpURUhYbmFnMlFsK0dDYmh0TlFnS1ZJdmVWUEtPdk9kaG82SVZZbnhNVDBMM29vbFhYNVVJd2NMU1VoUWtZN2VGZzFIVUFuSGJTc01KNjVxZytjdXJmOHJsVzFJTUFWc1dVQmZmZkFuZ3JLS1Fwd2c4SVhBUXdaV3FOUndtWUY2ano0eTRVUmhJL1pDOEhwV3pkaUpMVUp0VWRhMHRrU3I0cFdxWkh3aTUzb0RIaGt3VXRpV3VCempKRWxEV2Q5Nndwb3dLYXV4cVVQVXFZZG1nM2UxME82UmNocEFndk9PSUtoTno1eitDZVdaL2pTR2ZKWEV5QVRZdFVvbU11QUR2MTNFUktXKzJxZmhqY0xPMG9FMWx3UkZVQm40bjZGWXIvallDMlY2SzlLTUh6RVVGQTVvUnRMT09yc3V4cTBxMVJ2QmNEV1NRbXFzTjZFWkpvTVVDMVVrVnFRT3BoZ3U0b0s0SXRKQ3lJdUVjdnVpVE1jVUU2NjBRcVFodzJ3bzlzRDlNdGNGbTNXTHIyVmpuTW1Ba1ZjUWpoQnU1VXBIcGRYbXBNZ2hYOEJ6VkRBcHhFc0lvaXhGempWMVpxSXY0cWkvVVg5SUdtN29UVi9rZ1hBT0hGK05Tamp3b2d0S2c0U3ZPemVFUlViMFNxcSszTjJydXJkYXM1eFhOeVBoQXlERGlMVjN3b2w2RDRmeUErQmhLQzA0SzhPY1VsQktBNzZkQmM4S0FVUUh4WEpyaVg0aWtTZDY4UTJwMEpHNGVXSnFPWGlWYlhSRXZpOWMzcStxUlZ4YXdxSGFiVkIwZ00vbmxpV2JEZ0cwN3EyYmNyVjBnV2hvMVlJaVN1alAyY0h0SnJFc3RtWnpRVXhnUVFCQWgydVVYK0c2Q1QxSUhrbEU5TFJzeEg5MEFGOTdCZEJNbFE5QklNQ1hiSDVwREd0VldmSk5iSEhQWHhtaWtjYU16OGhVbzJJS1lLWitpZG5vN0RXQmR1WkZnNG03SHRpaEZ0ZUdxV0c2cFRHMys3dHhJTUJHRVFOSGhTdHBnY2k3b1pUWGdvQjh1U1NENTZhdkZSYm5RaGEvOG55Nk1ONVp3Z0ViZXFlWjlxUUJrV2s2QkxyTTRXdFVITEZPbUt4SDluY1oyUnMwNktLUU1ITFpydElYTEVKbUtiSlBNVFh6czhFQWF4YWV1QWVqYzl3Q2lKNXVYZDRVREFUME5kSmx1UjN4U0RuZkpCYmhadmNoMkxxL0dDQ3dIUks5aVVHMExSZ1dsbHJ2QWhFZmc4ZFAvczg1VktLckc0YThDRHQ3NEZxU1pENVNETllZN1N5ak9scDU2V1RpMlAxRmRSZitqSW9aeEI3V3ZWZVdSUHRITEQ5U1lUVjMxazlLaVh5QSt0eVI2SGtBdFpWdmdVeEVMcE1jbHBybElmRzVhaDRTM0krTy9GWFowczMzOEtyZWw1WXpTM1dSM2Q2aklleHJETElIQzB1a3RCenh2Zy8rTkdZdE9GajEveEZnWVpSdk5XbUd2QUM4d3REeXkxREIwZ0FrQzZSRGo3Mzd4VVZMK1V5dFRrbkFMeW4weWZ5blVVaFIyc2E3NzVISUNUUkxTUU4vQ1BYK3JhMk5FQzZmOG5XNk1ZREQ2MGdwZkF2QUdLKzg2OGJGYno5K2YybmRuUTRFR2hINnN0TnVhS1hCQTgySUdRZlpmU0FBdjJ1QkRnN1htM0FzOGkzaEpYdmxqeDNjTFFLbVBRdUh0VTVxNmJSSGdzNEtrMUQ1U2NpU0xOYmQxNnlkelJCRElKNkI4T2ZwMEpBMElFelRFemxMd3liZ0ZQMm5Pcnk2a3g2VU1DUmR5OE11RDFHWlVZbFN6VUZYU2xBbzFWOGxUUzUyWkZzUHRlK2NkN1BzZUw2THUrUXh6M1BhTzR2dTRtcUgzNVcwbS9ONXRGTjBsRm9mbXlHRkl2aFdkZ25wN2o3ellTMjlsWnFzdU5WOHRjbHBMamxKc1ZMNUZXb0ZlMVVzb1NxWkxkYXFHeDNsRzJQZk81THY1L0krek9wUWNOZHZJVTAxSGlWcWE2WXA4N01FbmIzanczNW1iWEpLcmphd2RjazQ1QlBzR25zNG5HYjdzN04ybkdtb3Y3dlM0ajBXazdLOXJTVnk2TVo3TTM5NjF1emFzTmthSml6YjZpNFh4amZYYm9rOXRnNW1QVWJPUFJLazlOZmFUYS9jOHFNejl1R0hmd09QNUpLZWNqOVpVZTNsbllkbkpzTy8zMVN4TEM5MmNMZWJ2N0xMWFZ6ZEhLWXUyZXJNNWwrTVBadTViUG5PNVFieDllUkhZN2g3OFVXOGE1cnorQkY1SXZqa2w4STlyanh6ZWxMa2MvV2ZHNVYrV09qYUcvTFQvLzVjUC9yLy9qOGp5NWZDWW5WdWQ3NFpIeTNMaDZ0bmNkOXRuRzVML0R2eFE4UHkySmVqK1ZmV1orNDUyV0h2ei9BVjEyc3FkY0tBTDVOL3h5SWZObW0vZDhadWtjdDhCZ0k5K2R3c0ErUHJoKzZyZ1EvbTV0Wkc4Z0JBUVB1OVFXSldiN3NNRkhQRGNpVFpTYW9MNUUvMUY2cjlWOWFMWVdnVHgxcUpxL1NvZjNRSGI2alBpeS93OERDZ1c0RHJReTltc2RocVFMdXVBRVhqV2ZUUzJaUUFJZ05RR3RFUmdBNkY1YndNbjFsY2JxRTFseFFiZXpPSlpMOWhRT2djUVFDdVM5c0lKUHhFdWdJbmxJWWxRbzFhYmVtVktsR3JFckxQR1dtc3hEbzRWcVNTZHF1NnFobHJWMzhaTnFWSnhWS09jTlY1SUZLWUpxZEtoNnJVeHMwUWltcXF0bzIxVzMwbUpNcHFSVFR4VzhicXE0bFU4b3lwN3F1Z2R1Um1WNytaUHIvVktsdVlsaXRLS0tLM0NGWDJWQ3NWSkk3bGp2YlphWlkxNzh1ME1pY0pzbDdRTEs4K045b3ZaelRqcGt3WmwvQmV3L0p6N1hEUm1LbXFyMDlIK1p4d0kvdnEwUG5qV092WkQ2WWxZSFdzUFg5MWxEMXNkdEhkV0Y5cDNlMml6bGx2Wm15NXJiRlozWi9adFRxVjBtRXBoWjU1YlBETjVhdkJFNTdIR0kzVllxTGI1UURGdWl0eVFsTzVjNDdqS002VWlOODR3bSswSW16MHY3dGpET2FHZDUvOWUxaVQvUkdPQzMyWk1ORzJteFovZDRmM1JIYzJrcHBYYTZXNmFUM3ZvbzlHZnRtajE1M2ZVWllvaExoTU05SXN4YUs0Sk9aaFh4UlJNSnVCbm5Ram1FTlE0NEZYNEZQaFgyTUFSMkMxZmp3djRIbjl5aC9QcmptUVMwMHJzWkRmSkp6M2swWWxLUHEyaURiaEZuY2Y3M0dzNFc1NFEySnllRUpEWHN3TTRDOVdNOEt0MjBySUN3aXdFWXlmYk5ZNXUvOEhRdmlmTVdVNElISnk2N3VDaytIRG1PTkdJTk5jNGpldy9DRytBNVpZdjJLc3Jib1RsRDNRQ2FmdkZlTXVGaUVPbThMdHd3V0NnV1ZodU5RRT0nKSBmb3JtYXQoJ3dvZmYyJyl9PC9zdHlsZT48L2RlZnM+PHRleHQgZmlsbD0nI2ZmZicgZm9udC1zaXplPScxOTgnIGZvbnQtZmFtaWx5PSdNb250c2VycmF0JyBmb250LXdlaWdodD0nODAwJyBmb250LXN0eWxlPSdpdGFsaWMnIGxldHRlci1zcGFjaW5nPScuMDRlbScgdHJhbnNmb3JtPSd0cmFuc2xhdGUoMTUgMjA3KSc+PHRzcGFuIHg9JzAnIHk9JzAnPkNSRUFURSBFTkVSR1k8L3RzcGFuPjwvdGV4dD48L3N2Zz4=");
  position: absolute;
  inset: 0;
  aspect-ratio: 1920/270;
  -webkit-backdrop-filter: blur(calc(50 * 1rem / var(--font-size__base))) brightness(2);
          backdrop-filter: blur(calc(50 * 1rem / var(--font-size__base))) brightness(2);
  -webkit-mask-image: var(--_mask-svg);
          mask-image: var(--_mask-svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}

.m-mv-recruit__bg-text-blur--create {
  --_mask-svg: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0NDQuMjE0JyBoZWlnaHQ9JzEyNy4yMTQnIHZpZXdCb3g9JzAgMCA0NDQuMjE0IDEyNy4yMTQnPjxkZWZzPjxzdHlsZT5AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidNb250c2VycmF0Jztmb250LXdlaWdodDo4MDA7Zm9udC1zdHlsZTppdGFsaWM7c3JjOnVybCgnZGF0YTpmb250L3dvZmYyO2Jhc2U2NCxkMDlHTWdBQkFBQUFBQTNFQUJJQUFBQUFHc0FBQUExakFBa0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBR2hZYmdYZ2NNQVpnUDFOVVFWUkFBSFFJZ1E0Sm54UVJDQXFFUElOVkFUWUNKQU1vQ3hZQUJDQUZoRXdISUF5RExoc01HVkdVa1ZZY3lCY0Zkc054UmxoUnhURFVocWRmUFJxc1h1RVlFVjRzMUhEdURkTnNnV045aENTelA3MmI5ZDVrRXFld3BreFhURk4xUWtrZHFMaXlZc0tkMHpQM0wxV1FvTFhNN24rQmhTTTJCbVV0VzJEUFFyVyt4clN1d2x5TnFDWXdhcXgrUDcxM0lWU0ViM1oxcUtneU9WMGdIbC83NnlLcjVKYzFxb29rSFZ6elhpQTZWK2xKc0xaSW1oYVBlQ3B2WlpwSktrWEtJY0ZoVU9PTTNYc3JKWEtUbE5jNmdISUFTTzZGeDgveGZWZmozNmZoU1BrWC8xcnJ6YjZlMmMxMkVCV2dqSkNBVXU1N1BmMTN1bnVXT2pUd2dXZ25pQXBRcFh4VUZCNFJDWGwxNnVxRWpKRHVkSWk0VThyK090V05oWkM2RXlmZHphclIrZ1ErSGhDQXhrWUVocEhDM3d0QXNjWXVkRFU2MFFFemQ5dnFLMkhtWVgxUkJjdzhjemRXdzB3VUFNd2U0V2xSUFZzdmdmUktsT3hKQTRJb0lXcDVucmpkUVJLQjNSZjhPM3p3MzgzSngza0JQLzZyL0pvLzhoOVYvaGhHeVErQXFlUUxOV0l0RzRrdC8xNmFJc1FXRXZSb0RvQ0lKOEExUnltcEd5aSs1T3RXV0lWeko1dTVaYzdOUGNHK1BhMlhJeDNnQWJuVi9lQlBFbUtQQTlFbEQ5YVZLREI3bzg5bHJJVXg2TU9ZcmVmQ0E3cU9UMU90Sk1Qa29TYUd5MzBDTURtRUJhM25KYVdOaE9LUFBmdHdRczVkMndEZ0pNZEtiQUNYQUFDZjRTVGcveE94eFZTQnNuSFBLc1dFaVJBbFJySjBEbWFDd0ordC9PZXhQSnBIOG5EdXpWMjVNN2REZGdMNXdkV0hIdkZDa05zSWpmMng0TC9zSW93SFJkeTN0OGFnSklhNWF2SUJrMDRNQmV6VW1FdXJ0elZUaEpqSXB2b1dqT2p2TUxNNjhVYmQxK05Qblh5L0h2ZmI5WEkrSFEvZFhaMGQ3VzJ0TGMxTmpRMzFkYlUxMVZXVkZlVmxwU1hGUllWZWo3c2dQeTgzNTRIY2w4NCt2dnRpZkh0OWRYbHhmallhRHZxOTR0TVBzcVhGVGhyVjlBbWZUSmE2blNRcW1lVXZqekVwQklNSS9qcElNUVQ5MnVyUmpjMVBsZFpPc1lZT2l0enZESTE0VWI3VHEyU2ZoU0RrbFVhM1BMb3VMZVZTWUpDN2FKeVdGT1ZOckl6WGdOallJdHI0aVJDSU9lbDhxVmlDR1hFdnlRUllGMTloaEFnNmJicUtHSDFyM240MmtXSWN3Mk5ZczUyb2E2SWtLOTJ4UHpsbmFDK1ZVZy9FcUxVbFZSNm9IM09McHFhMFlQNko2K3ZiUUFGdjNHMExjL3h0NmpONXNKb0lBcmk2c2hJS1BHY0ZXWGhqK2VVdmxJU3lKdWZhNEhQajlCT3g3bllpa2VNNFAzMlpGdlgwWlVacFcxc0M5dEpoZnlGdTZzUWZ1N2lnbStlQnVicWpPRVhTNmF4SkV0TFJqWk5zZHFyVnhXNnZFelVPMHVadFVhQnVFaDQ0U29ZRVJWWE9JdXd4a3FHbENUMmpHU2tUWkpjd3liR05lUUIxQ1I2ZXRSSGE1dTBPbDJZUEZ3NFhEMWVtVnFkVVJLRDZaYjdvWHlpSjdKSmZOYmVhTnFEWHZXbHVNUmhYRDZnV0JTZjhaZ0c5SUtqN3ppSnlvaWpmWFY3Ukx6REtjTGhSMmw4MVdYVXFSSTArdGcvcGR2SklWZzEzN0h3T1FVQUR0bnFuR0FDY0ltK0ZmbXVwVzd6U0xsWGM2VzdxWDkrQUxFOFV1emo1TmFuTm95MDdHVW5FZFdtaHE4ZjQ2Sjc3MkJ2cGROVFZRczYyVncwNERHb3V2S2lGUVpIVWdBenJPNXFSeDV1aWhiSkNCREdyQS8wUGdsSWtrWThpUmo5Szk1UDlpRHEzQXNWUGpxSDZZOXlTZytUQUVVQ3NCNWJxL1MvT09hZTNub3VYS3lMb1YvYXBldUlDV0EyZEE2Zy9WcEhLc2RidXJiVGJvVHpDcWpudGRrYlhVYjgwVi9lV0ExeE40b3VrM3BtUFF4MnVFMDYxWWkzSWUrZWZuanFlbXB3a29JZmFhM2p1aEVERjlGdEdjYUFHK2pVb0NMREZoUzFMcm04eUxxMW8xOXp3clkzNm9iaXBEb3BxcDhTczY3ejV0TnRKRXlRWHpNNVA4cXluUm4yRStzbGpmTXVTeW5NRnVqdVlmMXp5cVZGUGRDY3Rsb2NLUmN6Rkhvbm52TkdRNzRjNGdyTWJxNmx4bmVaK1lkMU9ITm5XMkViZ0lMNVJiRHZwTE9MRWRSY0psSnh6cGJydzEzaFFQQkpuU3hKOW5FYTVRcVV6UkM4WDBPc2hZUmx2Y3lEWVdROTZpb2VwWG04QUFZVGVoeFFiVGlkYktlMUE2U1hwYy9tSlRFSFhuYWcyUWwrR0NiaHROUWdLVkl2ZVZQS092T2RobzZJVllueE1UMEwzb29sWFg1VUl3Y0xTVWhRa1k3ZUZnMUhVQW5IYlNzTUo2NXFnK2N1cmY4cmxXMUlNQVZzV1VCZmZmQW5ncktLUXB3ZzhJWEFRd1pXcU5Sd21ZRjZqejR5NFVSaEkvWkM4SHBXemRpSkxVSnRVZGEwdGtTcjRwV3FaSHdpNTNvREhoa3dVdGlXdUJ6akpFbERXZDk2d3Bvd0thdXhxVVBVcVlkbWczZTEwTzZSY2hwQWd2T09JS2hOejV6K0NlV1ovalNHZkpYRXlBVFl0VW9tTXVBRHYxM0VSS1crMnFmaGpjTE8wb0UxbHdSRlVCbjRuNkZZci9qWUMyVjZLOUtNSHpFVUZBNW9SdExPT3JzdXhxMHExUnZCY0RXU1FtcXNONkVaSm9NVUMxVWtWcVFPcGhndTRvSzRJdEpDeUl1RWN2dWlUTWNVRTY2MFFxUWh3MndvOXNEOU10Y0ZtM1dMcjJWam5NbUFrVmNRamhCdTVVcEhwZFhtcE1naFg4QnpWREFweEVzSW9peEZ6alYxWnFJdjRxaS9VWDlJR203b1RWL2tnWEFPSEYrTlNqandvZ3RLZzRTdk96ZUVSVWIwU3FxKzNOMnJ1cmRhczV4WE55UGhBeUREaUxWM3dvbDZENGZ5QStCaEtDMDRLOE9jVWxCS0E3NmRCYzhLQVVRSHhYSnJpWDRpa1NkNjhRMnAwSkc0ZVdKcU9YaVZiWFJFdmk5YzNxK3FSVnhhd3FIYWJWQjBnTS9ubGlXYkRnRzA3cTJiY3JWMGdXaG8xWUlpU3VqUDJjSHRKckVzdG1aelFVeGdRUUJBaDJ1VVgrRzZDVDFJSGtsRTlMUnN4SDkwQUY5N0JkQk1sUTlCSU1DWGJINXBER3RWV2ZKTmJISFBYeG1pa2NhTXo4aFVvMklLWUtaK2lkbm83RFdCZHVaRmc0bTdIdGloRnRlR3FXRzZwVEczKzd0eElNQkdFUU5IaFN0cGdjaTdvWlRYZ29COHVTU0Q1NmF2RlJiblFoYS84bnk2TU41WndnRWJlcWVaOXFRQmtXazZCTHJNNFd0VUhMRk9tS3hIOW5jWjJSczA2S0tRTUhMWnJ0SVhMRUptS2JKUE1UWHpzOEVBYXhhZXVBZWpjOXdDaUo1dVhkNFVEQVQwTmRKbHVSM3hTRG5mSkJiaFp2Y2gyTHEvR0NDd0hSSzlpVUcwTFJnV2xscnZBaEVmZzhkUC9zODVWS0tyRzRhOENEdDc0RnFTWkQ1U0ROWVk3U3lqT2xwNTZXVGkyUDFGZFJmK2pJb1p4QjdXdlZlV1JQdEhMRDlTWVRWMzFrOUtpWHlBK3R5UjZIa0F0WlZ2Z1V4RUxwTWNscHJsSWZHNWFoNFMzSStPL0ZYWjBzMzM4S3JlbDVZelMzV1IzZDZqSWV4ckRMSUhDMHVrdEJ6eHZnLytOR1l0T0ZqMS94RmdZWlJ2TldtR3ZBQzh3dER5eTFEQjBnQWtDNlJEajczN3hVVkwrVXl0VGtuQUx5bjB5ZnluVVVoUjJzYTc3NUhJQ1RSTFNRTi9DUFgrcmEyTkVDNmY4blc2TVlERDYwZ3BmQXZBR0srODY4YkZiejkrZjJuZG5RNEVHaEg2c3ROdWFLWEJBODJJR1FmWmZTQUF2MnVCRGc3WG0zQXM4aTNoSlh2bGp4M2NMUUttUFF1SHRVNXE2YlJIZ3M0S2sxRDVTY2lTTE5iZDE2eWR6UkJESUo2QjhPZnAwSkEwSUV6VEV6bEx3eWJnRlAybk9yeTZreDZVTUNSZHk4TXVEMUdaVVlsU3pVRlhTbEFvMVY4bFRTNTJaRnNQdGUrY2Q3UHNlTDZMdStReHozUGFPNHZ1NG1xSDM1VzBtL041dEZOMGxGb2ZteUdGSXZoV2RnbnA3ajd6WVMyOWxacXN1TlY4dGNscExqbEpzVkw1RldvRmUxVXNvU3FaTGRhcUd4M2xHMlBmTzVMdjUvSSt6T3BRY05kdklVMDFIaVZxYTZZcDg3TUVuYjNqdzM1bWJYSktyamF3ZGNrNDVCUHNHbnM0bkdiN3M3TjJuR21vdjd2UzRqMFdrN0s5clNWeTZNWjdNMzk2MXV6YXNOa2FKaXpiNmk0WHhqZlhib2s5dGc1bVBVYk9QUktrOU5mYVRhL2M4cU16OXVHSGZ3T1A1SktlY2o5WlVlM2xuWWRuSnNPLzMxU3hMQzkyY0xlYnY3TExYVnpkSEtZdTJlck01bCtNUFp1NWJQbk81UWJ4OWVSSFk3aDc4VVc4YTVyeitCRjVJdmprbDhJOXJqeHplbExrYy9XZkc1VitXT2phRy9MVC8vNWNQL3IvL2o4ank1ZkNZblZ1ZDc0Wkh5M0xoNnRuY2Q5dG5HNUwvRHZ4UThQeTJKZWorVmZXWis0NTJXSHZ6L0FWMTJzcWRjS0FMNU4veHlJZk5tbS9kOFp1a2N0OEJnSTkrZHdzQStQcmgrNnJnUS9tNXRaRzhnQkFRUHU5UVdKV2I3c01GSFBEY2lUWlNhb0w1RS8xRjZyOVY5YUxZV2dUeDFxSnEvU29mM1FIYjZqUGl5L3c4RENnVzREclF5OW1zZGhxUUx1dUFFWGpXZlRTMlpRQUlnTlFHdEVSZ0E2RjVid01uMWxjYnFFMWx4UWJlek9KWkw5aFFPZ2NRUUN1UzlzSUpQeEV1Z0lubElZbFFvMWFiZW1WS2xHckVyTFBHV21zeERvNFZxU1NkcXU2cWhsclYzOFpOcVZKeFZLT2NOVjVJRktZSnFkS2g2clV4czBRaW1xcXRvMjFXMzBtSk1wcVJUVHhXOGJxcTRsVThveXA3cXVnZHVSbVY3K1pQci9WS2x1WWxpdEtLS0szQ0ZYMlZDc1ZKSTdsanZiWmFaWTE3OHUwTWljSnNsN1FMSzgrTjlvdlp6VGpwa3dabC9CZXcvSno3WERSbUttcXIwOUgrWnh3SS92cTBQbmpXT3ZaRDZZbFlIV3NQWDkxbEQxc2R0SGRXRjlwM2UyaXpsbHZabXk1cmJGWjNaL1p0VHFWMG1FcGhaNTViUERONWF2QkU1N0hHSTNWWXFMYjVRREZ1aXR5UWxPNWM0N2pLTTZVaU44NHdtKzBJbXowdjd0akRPYUdkNS85ZTFpVC9SR09DMzJaTU5HMm14Wi9kNGYzUkhjMmtwcFhhNlc2YVQzdm9vOUdmdG1qMTUzZlVaWW9oTGhNTTlJc3hhSzRKT1poWHhSUk1KdUJublFqbUVOUTQ0Rlg0RlBoWDJNQVIyQzFmand2NEhuOXloL1Byam1RUzAwcnNaRGZKSnozazBZbEtQcTJpRGJoRm5jZjczR3M0VzU0UTJKeWVFSkRYc3dNNEM5V004S3QyMHJJQ3dpd0VZeWZiTlk1dS84SFF2aWZNV1U0SUhKeTY3dUNrK0hEbU9OR0lOTmM0amV3L0NHK0E1Wll2MktzcmJvVGxEM1FDYWZ2RmVNdUZpRU9tOEx0d3dXQ2dXVmh1TlFFPScpIGZvcm1hdCgnd29mZjInKX08L3N0eWxlPjwvZGVmcz48dGV4dCBmaWxsPScjZmZmJyBmb250LXNpemU9JzkzJyBmb250LWZhbWlseT0nTW9udHNlcnJhdCcgZm9udC13ZWlnaHQ9JzgwMCcgZm9udC1zdHlsZT0naXRhbGljJyBsZXR0ZXItc3BhY2luZz0nLjAyZW0nIHRyYW5zZm9ybT0ndHJhbnNsYXRlKDcuMTEgOTcuMTEpJz48dHNwYW4geD0nMCcgeT0nMCc+Q1JFQVRFIDwvdHNwYW4+PC90ZXh0Pjwvc3ZnPg==");
  --_easing: cubic-bezier(0.19, 1, 0.22, 1);
  position: relative;
  inset: auto;
  aspect-ratio: 444/68;
  -webkit-mask-size: 100% auto;
          mask-size: 100% auto;
  -webkit-mask-position: left center;
          mask-position: left center;
}

.m-mv-recruit__bg-text-blur--energy {
  --_mask-svg: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0NTInIGhlaWdodD0nMTI3LjIxNCcgdmlld0JveD0nMCAwIDQ1MiAxMjcuMjE0Jz48ZGVmcz48c3R5bGU+QGZvbnQtZmFjZXtmb250LWZhbWlseTonTW9udHNlcnJhdCc7Zm9udC13ZWlnaHQ6ODAwO2ZvbnQtc3R5bGU6aXRhbGljO3NyYzp1cmwoJ2RhdGE6Zm9udC93b2ZmMjtiYXNlNjQsZDA5R01nQUJBQUFBQUEzRUFCSUFBQUFBR3NBQUFBMWpBQWtBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUdoWWJnWGdjTUFaZ1AxTlVRVlJBQUhRSWdRNEpueFFSQ0FxRVBJTlZBVFlDSkFNb0N4WUFCQ0FGaEV3SElBeURMaHNNR1ZHVWtWWWN5QmNGZHNOeFJsaFJ4VERVaHFkZlBScXNYdUVZRVY0czFIRHVEZE5zZ1dOOWhDU3pQNzJiOWQ1a0VxZXdwa3hYVEZOMVFra2RxTGl5WXNLZDB6UDNMMVdRb0xYTTduK0JoU00yQm1VdFcyRFBRclcreHJTdXdseU5xQ1l3YXF4K1A3MTNJVlNFYjNaMXFLZ3lPVjBnSGwvNzZ5S3I1SmMxcW9va0hWenpYaUE2VitsSnNMWkltaGFQZUNwdlpacEpLa1hLSWNGaFVPT00zWHNySlhLVGxOYzZnSElBU082Rng4L3hmVmZqMzZmaFNQa1gvMXJyemI2ZTJjMTJFQldnakpDQVV1NTdQZjEzdW51V09qVHdnV2duaUFwUXBYeFVGQjRSQ1hsMTZ1cUVqSkR1ZElpNFU4citPdFdOaFpDNkV5ZmR6YXJSK2dRK0hoQ0F4a1lFaHBIQzN3dEFzY1l1ZERVNjBRRXpkOXZxSzJIbVlYMVJCY3c4Y3pkV3cwd1VBTXdlNFdsUlBWc3ZnZlJLbE94SkE0SW9JV3A1bnJqZFFSS0IzUmY4TzN6dzM4M0p4M2tCUC82ci9Kby84aDlWL2hoR3lRK0FxZVFMTldJdEc0a3QvMTZhSXNRV0V2Um9Eb0NJSjhBMVJ5bXBHeWkrNU90V1dJVnpKNXU1WmM3TlBjRytQYTJYSXgzZ0FiblYvZUJQRW1LUEE5RWxEOWFWS0RCN284OWxySVV4Nk1PWXJlZkNBN3FPVDFPdEpNUGtvU2FHeTMwQ01EbUVCYTNuSmFXTmhPS1BQZnR3UXM1ZDJ3RGdKTWRLYkFDWEFBQ2Y0U1RnL3hPeHhWU0JzbkhQS3NXRWlSQWxSckowRG1hQ3dKK3QvT2V4UEpwSDhuRHV6VjI1TTdkRGRnTDV3ZFdISHZGQ2tOc0lqZjJ4NEwvc0lvd0hSZHkzdDhhZ0pJYTVhdklCazA0TUJlelVtRXVydHpWVGhKaklwdm9Xak9qdk1MTTY4VWJkMStOUG5YeS9IdmZiOVhJK0hRL2RYWjBkN1cydExjMU5qUTMxZGJVMTFWV1ZGZVZscFNYRlJZVmVqN3NnUHk4MzU0SGNsODQrdnZ0aWZIdDlkWGx4ZmpZYUR2cTk0dE1Qc3FYRlRoclY5QW1mVEphNm5TUXFtZVV2anpFcEJJTUkvanBJTVFUOTJ1clJqYzFQbGRaT3NZWU9pdHp2REkxNFViN1RxMlNmaFNEa2xVYTNQTG91TGVWU1lKQzdhSnlXRk9WTnJJelhnTmpZSXRyNGlSQ0lPZWw4cVZpQ0dYRXZ5UVJZRjE5aGhBZzZiYnFLR0gxcjNuNDJrV0ljdzJOWXM1Mm9hNklrSzkyeFB6bG5hQytWVWcvRXFMVWxWUjZvSDNPTHBxYTBZUDZKNit2YlFBRnYzRzBMYy94dDZqTjVzSm9JQXJpNnNoSUtQR2NGV1hoaitlVXZsSVN5SnVmYTRIUGo5Qk94N25ZaWtlTTRQMzJaRnZYMFpVWnBXMXNDOXRKaGZ5RnU2c1FmdTdpZ20rZUJ1YnFqT0VYUzZheEpFdExSalpOc2RxclZ4VzZ2RXpVTzB1WnRVYUJ1RWg0NFNvWUVSVlhPSXV3eGtxR2xDVDJqR1NrVFpKY3d5YkdOZVFCMUNSNmV0UkhhNXUwT2wyWVBGdzRYRDFlbVZxZFVSS0Q2WmI3b1h5aUo3SkpmTmJlYU5xRFh2V2x1TVJoWEQ2Z1dCU2Y4WmdHOUlLajd6aUp5b2lqZlhWN1JMekRLY0xoUjJsODFXWFVxUkkwK3RnL3BkdkpJVmcxMzdId09RVUFEdG5xbkdBQ2NJbStGZm11cFc3elNMbFhjNlc3cVg5K0FMRThVdXpqNU5hbk5veTA3R1VuRWRXbWhxOGY0Nko3NzJCdnBkTlRWUXM2MlZ3MDRER291dktpRlFaSFVnQXpyTzVxUng1dWloYkpDQkRHckEvMFBnbElra1k4aVJqOUs5NVA5aURxM0FzVlBqcUg2WTl5U2crVEFFVUNzQjVicS9TL09PYWUzbm91WEt5TG9WL2FwZXVJQ1dBMmRBNmcvVnBIS3NkYnVyYlRib1R6Q3FqbnRka2JYVWI4MFYvZVdBMXhONG91azNwbVBReDJ1RTA2MVlpM0llK2VmbmpxZW1wd2tvSWZhYTNqdWhFREY5RnRHY2FBRytqVW9DTERGaFMxTHJtOHlMcTFvMTl6d3JZMzZvYmlwRG9wcXA4U3M2N3o1dE50SkV5UVh6TTVQOHF5blJuMkUrc2xqZk11U3luTUZ1anVZZjF6eXFWRlBkQ2N0bG9jS1JjekZIb25udk5HUTc0YzRnck1icTZseG5lWitZZDFPSE5uVzJFYmdJTDVSYkR2cExPTEVkUmNKbEp4enBicncxM2hRUEJKblN4SjluRWE1UXFVelJDOFgwT3NoWVJsdmN5RFlXUTk2aW9lcFhtOEFBWVRlaHhRYlRpZGJLZTFBNlNYcGMvbUpURUhYbmFnMlFsK0dDYmh0TlFnS1ZJdmVWUEtPdk9kaG82SVZZbnhNVDBMM29vbFhYNVVJd2NMU1VoUWtZN2VGZzFIVUFuSGJTc01KNjVxZytjdXJmOHJsVzFJTUFWc1dVQmZmZkFuZ3JLS1Fwd2c4SVhBUXdaV3FOUndtWUY2ano0eTRVUmhJL1pDOEhwV3pkaUpMVUp0VWRhMHRrU3I0cFdxWkh3aTUzb0RIaGt3VXRpV3VCempKRWxEV2Q5Nndwb3dLYXV4cVVQVXFZZG1nM2UxME82UmNocEFndk9PSUtoTno1eitDZVdaL2pTR2ZKWEV5QVRZdFVvbU11QUR2MTNFUktXKzJxZmhqY0xPMG9FMWx3UkZVQm40bjZGWXIvallDMlY2SzlLTUh6RVVGQTVvUnRMT09yc3V4cTBxMVJ2QmNEV1NRbXFzTjZFWkpvTVVDMVVrVnFRT3BoZ3U0b0s0SXRKQ3lJdUVjdnVpVE1jVUU2NjBRcVFodzJ3bzlzRDlNdGNGbTNXTHIyVmpuTW1Ba1ZjUWpoQnU1VXBIcGRYbXBNZ2hYOEJ6VkRBcHhFc0lvaXhGempWMVpxSXY0cWkvVVg5SUdtN29UVi9rZ1hBT0hGK05Tamp3b2d0S2c0U3ZPemVFUlViMFNxcSszTjJydXJkYXM1eFhOeVBoQXlERGlMVjN3b2w2RDRmeUErQmhLQzA0SzhPY1VsQktBNzZkQmM4S0FVUUh4WEpyaVg0aWtTZDY4UTJwMEpHNGVXSnFPWGlWYlhSRXZpOWMzcStxUlZ4YXdxSGFiVkIwZ00vbmxpV2JEZ0cwN3EyYmNyVjBnV2hvMVlJaVN1alAyY0h0SnJFc3RtWnpRVXhnUVFCQWgydVVYK0c2Q1QxSUhrbEU5TFJzeEg5MEFGOTdCZEJNbFE5QklNQ1hiSDVwREd0VldmSk5iSEhQWHhtaWtjYU16OGhVbzJJS1lLWitpZG5vN0RXQmR1WkZnNG03SHRpaEZ0ZUdxV0c2cFRHMys3dHhJTUJHRVFOSGhTdHBnY2k3b1pUWGdvQjh1U1NENTZhdkZSYm5RaGEvOG55Nk1ONVp3Z0ViZXFlWjlxUUJrV2s2QkxyTTRXdFVITEZPbUt4SDluY1oyUnMwNktLUU1ITFpydElYTEVKbUtiSlBNVFh6czhFQWF4YWV1QWVqYzl3Q2lKNXVYZDRVREFUME5kSmx1UjN4U0RuZkpCYmhadmNoMkxxL0dDQ3dIUks5aVVHMExSZ1dsbHJ2QWhFZmc4ZFAvczg1VktLckc0YThDRHQ3NEZxU1pENVNETllZN1N5ak9scDU2V1RpMlAxRmRSZitqSW9aeEI3V3ZWZVdSUHRITEQ5U1lUVjMxazlLaVh5QSt0eVI2SGtBdFpWdmdVeEVMcE1jbHBybElmRzVhaDRTM0krTy9GWFowczMzOEtyZWw1WXpTM1dSM2Q2aklleHJETElIQzB1a3RCenh2Zy8rTkdZdE9GajEveEZnWVpSdk5XbUd2QUM4d3REeXkxREIwZ0FrQzZSRGo3Mzd4VVZMK1V5dFRrbkFMeW4weWZ5blVVaFIyc2E3NzVISUNUUkxTUU4vQ1BYK3JhMk5FQzZmOG5XNk1ZREQ2MGdwZkF2QUdLKzg2OGJGYno5K2YybmRuUTRFR2hINnN0TnVhS1hCQTgySUdRZlpmU0FBdjJ1QkRnN1htM0FzOGkzaEpYdmxqeDNjTFFLbVBRdUh0VTVxNmJSSGdzNEtrMUQ1U2NpU0xOYmQxNnlkelJCRElKNkI4T2ZwMEpBMElFelRFemxMd3liZ0ZQMm5Pcnk2a3g2VU1DUmR5OE11RDFHWlVZbFN6VUZYU2xBbzFWOGxUUzUyWkZzUHRlK2NkN1BzZUw2THUrUXh6M1BhTzR2dTRtcUgzNVcwbS9ONXRGTjBsRm9mbXlHRkl2aFdkZ25wN2o3ellTMjlsWnFzdU5WOHRjbHBMamxKc1ZMNUZXb0ZlMVVzb1NxWkxkYXFHeDNsRzJQZk81THY1L0krek9wUWNOZHZJVTAxSGlWcWE2WXA4N01FbmIzanczNW1iWEpLcmphd2RjazQ1QlBzR25zNG5HYjdzN04ybkdtb3Y3dlM0ajBXazdLOXJTVnk2TVo3TTM5NjF1emFzTmthSml6YjZpNFh4amZYYm9rOXRnNW1QVWJPUFJLazlOZmFUYS9jOHFNejl1R0hmd09QNUpLZWNqOVpVZTNsbllkbkpzTy8zMVN4TEM5MmNMZWJ2N0xMWFZ6ZEhLWXUyZXJNNWwrTVBadTViUG5PNVFieDllUkhZN2g3OFVXOGE1cnorQkY1SXZqa2w4STlyanh6ZWxMa2MvV2ZHNVYrV09qYUcvTFQvLzVjUC9yLy9qOGp5NWZDWW5WdWQ3NFpIeTNMaDZ0bmNkOXRuRzVML0R2eFE4UHkySmVqK1ZmV1orNDUyV0h2ei9BVjEyc3FkY0tBTDVOL3h5SWZObW0vZDhadWtjdDhCZ0k5K2R3c0ErUHJoKzZyZ1EvbTV0Wkc4Z0JBUVB1OVFXSldiN3NNRkhQRGNpVFpTYW9MNUUvMUY2cjlWOWFMWVdnVHgxcUpxL1NvZjNRSGI2alBpeS93OERDZ1c0RHJReTltc2RocVFMdXVBRVhqV2ZUUzJaUUFJZ05RR3RFUmdBNkY1YndNbjFsY2JxRTFseFFiZXpPSlpMOWhRT2djUVFDdVM5c0lKUHhFdWdJbmxJWWxRbzFhYmVtVktsR3JFckxQR1dtc3hEbzRWcVNTZHF1NnFobHJWMzhaTnFWSnhWS09jTlY1SUZLWUpxZEtoNnJVeHMwUWltcXF0bzIxVzMwbUpNcHFSVFR4VzhicXE0bFU4b3lwN3F1Z2R1Um1WNytaUHIvVktsdVlsaXRLS0tLM0NGWDJWQ3NWSkk3bGp2YlphWlkxNzh1ME1pY0pzbDdRTEs4K045b3ZaelRqcGt3WmwvQmV3L0p6N1hEUm1LbXFyMDlIK1p4d0kvdnEwUG5qV092WkQ2WWxZSFdzUFg5MWxEMXNkdEhkV0Y5cDNlMml6bGx2Wm15NXJiRlozWi9adFRxVjBtRXBoWjU1YlBETjVhdkJFNTdIR0kzVllxTGI1UURGdWl0eVFsTzVjNDdqS002VWlOODR3bSswSW16MHY3dGpET2FHZDUvOWUxaVQvUkdPQzMyWk1ORzJteFovZDRmM1JIYzJrcHBYYTZXNmFUM3ZvbzlHZnRtajE1M2ZVWllvaExoTU05SXN4YUs0Sk9aaFh4UlJNSnVCbm5Ram1FTlE0NEZYNEZQaFgyTUFSMkMxZmp3djRIbjl5aC9QcmptUVMwMHJzWkRmSkp6M2swWWxLUHEyaURiaEZuY2Y3M0dzNFc1NFEySnllRUpEWHN3TTRDOVdNOEt0MjBySUN3aXdFWXlmYk5ZNXUvOEhRdmlmTVdVNElISnk2N3VDaytIRG1PTkdJTk5jNGpldy9DRytBNVpZdjJLc3Jib1RsRDNRQ2FmdkZlTXVGaUVPbThMdHd3V0NnV1ZodU5RRT0nKSBmb3JtYXQoJ3dvZmYyJyl9PC9zdHlsZT48L2RlZnM+PHRleHQgZmlsbD0nI2ZmZicgZm9udC1zaXplPSc5MycgZm9udC1mYW1pbHk9J01vbnRzZXJyYXQnIGZvbnQtd2VpZ2h0PSc4MDAnIGZvbnQtc3R5bGU9J2l0YWxpYycgbGV0dGVyLXNwYWNpbmc9Jy4wMmVtJyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSg3LjExIDk3LjExKSc+PHRzcGFuIHg9JzAnIHk9JzAnPkVORVJHWTwvdHNwYW4+PC90ZXh0Pjwvc3ZnPg==");
  --_easing: cubic-bezier(0.19, 1, 0.22, 1);
  position: relative;
  inset: auto;
  aspect-ratio: 437/68;
  -webkit-mask-size: 100% auto;
          mask-size: 100% auto;
  -webkit-mask-position: left center;
          mask-position: left center;
  margin-top: calc(2 * 1rem / var(--font-size__base));
}

.m-mv-recruit__bg-text-svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  opacity: 0;
}

.m-mv-recruit__ittan-momen {
  position: absolute;
  z-index: 2;
  bottom: calc(-312 * 1rem / var(--font-size__base));
  left: calc(-20 * 1rem / var(--font-size__base));
  width: min(1962 / 1920 * 100vw, 1962 * 1rem / var(--font-size__base));
  color: var(--color__brand-orange);
  pointer-events: none;
}
.m-mv-recruit__ittan-momen svg {
  width: 100%;
  height: auto;
}

@keyframes mv-about-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.m-mv-about {
  position: relative;
  z-index: 10;
  width: 100%;
  min-height: calc(800 * 1rem / var(--font-size__base));
  max-height: calc(100svh - var(--js-height__header, calc(72 * 1rem / var(--font-size__base))));
  height: calc(100svh - var(--js-height__header, calc(72 * 1rem / var(--font-size__base))));
  overflow-x: clip;
}

.m-mv-about__bg {
  position: absolute;
  inset: 0;
  z-index: 1;
  opacity: 0;
  animation: mv-about-fade-in 0.8s ease-out 0s forwards;
}

.m-mv-about__bg-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-mv-about__title {
  position: absolute;
  bottom: calc(63 * 1rem / var(--font-size__base));
  left: calc(40 * 1rem / var(--font-size__base));
  z-index: 4;
  color: #fff;
  font-family: var(--font-family__montserrat);
  font-size: min(198 / 1920 * 100vw, 198 * 1rem / var(--font-size__base));
  font-weight: 800;
  font-style: italic;
  line-height: 0.8333333333;
  letter-spacing: 0.04em;
  text-shadow: 0 0 calc(10 * 1rem / var(--font-size__base)) rgba(0, 0, 0, 0.1);
  opacity: 0;
  animation: mv-about-fade-in 0.8s ease-out 0.4s forwards;
}

.m-mv-about__bg-text {
  position: absolute;
  top: calc(240 * 1rem / var(--font-size__base));
  left: 0;
  z-index: 4;
  max-width: calc(938 * 1rem / var(--font-size__base));
  width: 100%;
}

.m-mv-about__ittan-momen {
  position: absolute;
  z-index: -1;
  bottom: calc(-1237 / 1920 * 100vw);
  left: calc(calc(81 * 1rem / var(--font-size__base)) / 1920 * 100vw);
  width: min(2127 / 1920 * 100vw, 2127 * 1rem / var(--font-size__base));
  color: var(--color__brand-orange);
  pointer-events: none;
  rotate: 132.5deg;
}
.m-mv-about__ittan-momen svg {
  width: 100%;
  height: auto;
}

.m-mv-about__entry {
  position: absolute;
  bottom: calc(125 * 1rem / var(--font-size__base));
  left: 0;
  right: 0;
  z-index: 4;
  display: flex;
  justify-content: flex-end;
  opacity: 0;
  animation: mv-about-fade-in 0.8s ease-out 0.8s forwards;
}

.m-more-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: calc(38 * 1rem / var(--font-size__base));
  padding-block: calc(14 * 1rem / var(--font-size__base));
  padding-inline: calc(24 * 1rem / var(--font-size__base));
  color: #626262;
  background-color: #f7f7f7;
  border: none;
  border-radius: 9999px;
  cursor: pointer;
  overflow: hidden;
  transition: color var(--duration__base);
}
.m-more-button:focus-visible {
  color: #fff;
}
.m-more-button:focus-visible::before {
  width: 100%;
}

.m-more-button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  z-index: 0;
  width: 0;
  background-color: var(--color__brand-cyan);
  border-radius: 9999px;
  transition: width 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.m-more-button.is-loading {
  opacity: 0.5;
  pointer-events: none;
}

.m-more-button__text {
  position: relative;
  z-index: 1;
  font-size: calc(14 * 1rem / var(--font-size__base));
  font-weight: 500;
  letter-spacing: 0.02em;
  transition: color var(--duration__base);
}

.m-more-button__icon {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(23 * 1rem / var(--font-size__base));
  height: calc(23 * 1rem / var(--font-size__base));
  color: var(--color__brand-cyan-light);
}
.m-more-button__icon svg {
  width: 100%;
  height: 100%;
}

.m-modal {
  --_duration: 0.3s;
  position: fixed;
  z-index: 1000;
  inset: 0;
  transition: visibility var(--_duration);
  visibility: hidden;
}

.m-modal__backdrop {
  position: fixed;
  z-index: 1;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.3);
  transition: opacity var(--_duration), visibility var(--_duration);
  opacity: 0;
  visibility: hidden;
}

.m-modal__inner {
  position: fixed;
  z-index: 2;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  transition: opacity var(--_duration), visibility var(--_duration);
  opacity: 0;
  visibility: hidden;
}

.m-modal__content {
  overflow-y: auto;
  scrollbar-gutter: stable;
  max-height: 80vh;
  background-color: #fff;
  padding-block: calc(50 * 1rem / var(--font-size__base));
  padding-inline: calc(30 * 1rem / var(--font-size__base));
}

/* 開いた時 */
.m-modal.is-visible .m-modal__backdrop {
  opacity: 1;
  visibility: visible;
}

.m-modal.is-visible .m-modal__inner {
  opacity: 1;
  visibility: visible;
}

.m-modal.m-modal--fade-up .m-modal__inner {
  transition: transform var(--_duration), opacity var(--_duration), visibility var(--_duration);
  transform: translate(-50%, calc(-50% + 30px));
}

.m-modal.m-modal--fade-up.is-visible .m-modal__inner {
  transform: translate(-50%, -50%);
}

.m-modal.m-modal--fade-down .m-modal__inner {
  transition: transform var(--_duration), opacity var(--_duration), visibility var(--_duration);
  transform: translate(-50%, calc(-50% - 30px));
}

.m-modal.m-modal--fade-down.is-visible .m-modal__inner {
  transform: translate(-50%, -50%);
}

.m-modal.m-modal--fade-left .m-modal__inner {
  transition: transform var(--_duration), opacity var(--_duration), visibility var(--_duration);
  transform: translate(calc(-50% + 30px), -50%);
}

.m-modal.m-modal--fade-left.is-visible .m-modal__inner {
  transform: translate(-50%, -50%);
}

.m-modal.m-modal--fade-right .m-modal__inner {
  transition: transform var(--_duration), opacity var(--_duration), visibility var(--_duration);
  transform: translate(calc(-50% - 30px), -50%);
}

.m-modal.m-modal--fade-right.is-visible .m-modal__inner {
  transform: translate(-50%, -50%);
}

.m-message {
  position: relative;
  padding-top: calc(163 * 1rem / var(--font-size__base));
  padding-bottom: calc(176 * 1rem / var(--font-size__base));
  overflow: hidden;
  background-color: #ebe9e8;
}

.m-message__marquee {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}

.m-message__marquee-track {
  --_marquee-track-height: 1055;
  position: absolute;
  left: 0;
  display: flex;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  white-space: nowrap;
}

.m-message__marquee-track:nth-child(1) {
  top: calc(262 / var(--_marquee-track-height) * 100%);
  --_speed: 55s;
}

.m-message__marquee-track:nth-child(2) {
  top: calc(421 / var(--_marquee-track-height) * 100%);
  --_speed: 20s;
}

.m-message__marquee-track:nth-child(3) {
  top: calc(827 / var(--_marquee-track-height) * 100%);
  --_speed: 55s;
}

.m-message__marquee-track:nth-child(4) {
  top: calc(900 / var(--_marquee-track-height) * 100%);
  --_speed: 15s;
}

.m-message__marquee-group {
  display: flex;
  animation: marquee-scroll var(--_speed) linear infinite;
}

.m-message__marquee-track--reverse .m-message__marquee-group {
  animation-direction: reverse;
}

.m-message__marquee-text {
  font-size: calc(83 * 1rem / var(--font-size__base));
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.3373493976;
  padding-right: calc(60 * 1rem / var(--font-size__base));
}

.m-message__marquee-track--fast .m-message__marquee-text {
  font-size: calc(41 * 1rem / var(--font-size__base));
  line-height: 1.3170731707;
}

.m-message__marquee-text--gray {
  color: #fff;
}

.m-message__marquee-text--orange {
  color: rgba(232, 65, 11, 0.15);
}

@keyframes marquee-scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
.m-message__inner {
  position: relative;
  z-index: 2;
}

.m-message__title {
  font-family: var(--font-family__jost);
  font-size: calc(40 * 1rem / var(--font-size__base));
  font-weight: 600;
  color: var(--color__brand-orange-light);
  text-align: center;
  letter-spacing: 0;
  line-height: 1.25;
}

.m-message__body {
  text-align: center;
  padding-top: calc(126 * 1rem / var(--font-size__base));
}

.m-message__text {
  font-size: calc(23 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 2.6086956522;
  letter-spacing: 0.05em;
}

.m-message__text + .m-message__text--highlight {
  padding-top: 0;
}

.m-message__text--highlight + .m-message__text {
  padding-top: calc(60 * 1rem / var(--font-size__base));
}

.m-message__text--highlight {
  display: inline-block;
  font-size: calc(30 * 1rem / var(--font-size__base));
  font-weight: 900;
  line-height: 2;
}

.m-job-opening {
  position: relative;
  overflow-x: clip;
  padding-top: calc(104 * 1rem / var(--font-size__base));
  padding-bottom: calc(100 * 1rem / var(--font-size__base));
}

.m-job-opening__bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  background-color: var(--color__gray-100);
  -webkit-clip-path: polygon(0 calc(157 * 1rem / var(--font-size__base)), 100% calc(157 * 1rem / var(--font-size__base)), 100% 100%, 0 100%);
          clip-path: polygon(0 calc(157 * 1rem / var(--font-size__base)), 100% calc(157 * 1rem / var(--font-size__base)), 100% 100%, 0 100%);
}

.m-job-opening__ittan-momen {
  position: absolute;
  top: calc(450 * 1rem / var(--font-size__base));
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(1980 / 1920 * 100vw, 1980 * 1rem / var(--font-size__base));
  overflow: visible;
  pointer-events: none;
  z-index: 0;
}

.m-job-opening__header {
  position: relative;
  z-index: 1;
}

.m-job-opening__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -moz-column-gap: calc(35 * 1rem / var(--font-size__base));
       column-gap: calc(35 * 1rem / var(--font-size__base));
  row-gap: calc(45 * 1rem / var(--font-size__base));
  padding-top: calc(80 * 1rem / var(--font-size__base));
}

.m-job-opening__item-text {
  font-size: calc(26 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.4230769231;
  letter-spacing: 0.4em;
  color: var(--color__black);
}

.m-job-opening__item-arrow {
  width: calc(15 * 1rem / var(--font-size__base));
  height: calc(25 * 1rem / var(--font-size__base));
  color: var(--color__black);
}

.m-job-link {
  --_color__bg: #fff;
  --_color__border: #605e5e;
  --_color__hover-bg: #605e5e;
  --_duration: 1.1s;
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-block: calc(25 * 1rem / var(--font-size__base));
  padding-right: calc(66 * 1rem / var(--font-size__base));
  padding-left: calc(42 * 1rem / var(--font-size__base));
  min-height: calc(116 * 1rem / var(--font-size__base));
  background-color: var(--_color__bg);
  border: 1px solid var(--_color__border);
  border-radius: calc(100 * 1rem / var(--font-size__base));
  overflow: hidden;
  transition: border-color var(--_duration);
}
.m-job-link:focus-visible {
  border-color: var(--_color__hover-bg);
}
.m-job-link:focus-visible::before {
  --_mask-position: 100%;
}
.m-job-link:focus-visible .m-job-link__text,
.m-job-link:focus-visible .m-job-link__arrow {
  color: #fff;
}
.m-job-link::before {
  --_mask-position: 0%;
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  background-color: var(--_color__hover-bg);
  -webkit-mask-image: url("../images/common/mask.png");
  mask-image: url("../images/common/mask.png");
  -webkit-mask-size: 100% 600%;
  mask-size: 100% 600%;
  -webkit-mask-position: 0 var(--_mask-position);
  mask-position: 0 var(--_mask-position);
  transition: -webkit-mask-position var(--_duration);
  transition: mask-position var(--_duration);
  transition: mask-position var(--_duration), -webkit-mask-position var(--_duration);
}

.m-job-link__text {
  position: relative;
  z-index: 1;
}

.m-job-link__arrow {
  position: relative;
  z-index: 1;
  flex-shrink: 0;
}

.m-interview {
  position: relative;
}

.m-interview__bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  background-color: var(--color__brand-orange-light);
  width: 100%;
  height: 100%;
  -webkit-clip-path: polygon(0 calc(45 * 1rem / var(--font-size__base)), 100% calc(45 * 1rem / var(--font-size__base)), 100% 100%, 0 100%);
          clip-path: polygon(0 calc(45 * 1rem / var(--font-size__base)), 100% calc(45 * 1rem / var(--font-size__base)), 100% 100%, 0 100%);
}

.m-interview__content {
  position: relative;
  padding-top: calc(118 * 1rem / var(--font-size__base));
}

.m-interview__cards {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

.m-interview__card {
  position: relative;
}

.m-interview__card-info {
  position: relative;
  z-index: 2;
  flex-shrink: 0;
}

.m-interview__card-catch {
  font-size: min(35 / 1508 * 100vw, 35 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.4285714286;
  letter-spacing: 0;
  color: #fff;
}

.m-interview__card-profile {
  padding-top: calc(62 * 1rem / var(--font-size__base));
}

.m-interview__card-position {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0.18em;
  color: #fff;
}

.m-interview__card-name {
  font-size: calc(34 * 1rem / var(--font-size__base));
  font-weight: 900;
  letter-spacing: 0;
  color: var(--color__black);
  padding-top: calc(20 * 1rem / var(--font-size__base));
}

.m-interview__card-name-en {
  font-family: var(--font-family__jost);
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--color__black);
  text-shadow: 0 0 calc(10 * 1rem / var(--font-size__base)) rgba(0, 0, 0, 0.05);
  padding-top: calc(6 * 1rem / var(--font-size__base));
}

.m-interview__card-join {
  padding-top: calc(8 * 1rem / var(--font-size__base));
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 500;
  letter-spacing: 0.12em;
  color: #fff;
}

.m-interview__card-video {
  position: relative;
  z-index: 2;
  max-width: calc(500 * 1rem / var(--font-size__base));
  margin-inline: auto;
  -webkit-padding-before: calc(200 * 1rem / var(--font-size__base));
          padding-block-start: calc(200 * 1rem / var(--font-size__base));
}

.m-interview__card-video-inner {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  background-color: var(--color__black);
}

.m-interview__card-video-inner iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.m-interview__card-image {
  position: absolute;
  top: -8.064516129%;
  right: -4.6639231824%;
  z-index: 2;
  width: 76.817558299%;
  height: calc(592 * 1rem / var(--font-size__base));
  overflow-y: hidden;
}

.m-interview__card-image-photo {
  display: block;
  width: 100%;
  height: auto;
}

.m-interview__card-number {
  position: relative;
  z-index: 1;
  font-family: var(--font-family__montserrat);
  font-size: calc(324 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 0.68;
  letter-spacing: 0;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.5);
  text-shadow: 0 0 calc(10 * 1rem / var(--font-size__base)) rgba(0, 0, 0, 0.05);
  pointer-events: none;
  margin-left: -7.5445816187%;
  margin-top: calc(-20 * 1rem / var(--font-size__base));
}

.m-interview__card--reverse .m-interview__card-info {
  text-align: right;
}
.m-interview__card--reverse .m-interview__card-image {
  left: -2.4691358025%;
  bottom: -4.5698924731%;
  width: 66.2551440329%;
}
.m-interview__card--reverse .m-interview__card-number {
  margin-left: 0;
  margin-right: -3.5665294925%;
}

.m-icon {
  display: grid;
  place-items: center;
}

.m-icon-link {
  display: grid;
  place-items: center;
  transition: color var(--duration__base);
}
.m-icon-link--line:focus-visible {
  color: var(--color__line);
}
.m-icon-link--x:focus-visible {
  color: var(--color__x);
}
.m-icon-link--instagram:focus-visible {
  color: var(--color__instagram);
}
.m-icon-link--facebook:focus-visible {
  color: var(--color__facebook);
}
.m-icon-link--youtube:focus-visible {
  color: var(--color__youtube);
}

.m-icon-button {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: calc(16 * 1rem / var(--font-size__base));
  min-width: calc(218 * 1rem / var(--font-size__base));
  padding-block: calc(15 * 1rem / var(--font-size__base));
  padding-left: calc(24 * 1rem / var(--font-size__base));
  padding-right: calc(30 * 1rem / var(--font-size__base));
  font-size: calc(15 * 1rem / var(--font-size__base));
  font-weight: 700;
  letter-spacing: 0.056em;
  line-height: 1.4;
  background-color: #fff;
  border: none;
  border-radius: calc(30 * 1rem / var(--font-size__base));
  overflow: hidden;
  transition: color var(--duration__base);
}
.m-icon-button:focus-visible {
  color: #fff;
}
.m-icon-button:focus-visible::before {
  width: 100%;
}

.m-icon-button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  z-index: 0;
  width: 0;
  background-color: var(--color__brand-cyan);
  border-radius: calc(30 * 1rem / var(--font-size__base));
  transition: width 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.m-icon-button--on-gray {
  background-color: #f7f7f7;
}

.m-icon-button__text {
  position: relative;
  z-index: 1;
}

.m-icon-button__icon {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(22 * 1rem / var(--font-size__base));
  height: calc(22 * 1rem / var(--font-size__base));
  color: var(--color__brand-cyan);
}
.m-icon-button__icon svg {
  width: 100%;
  height: 100%;
}

.m-home__works {
  --_overlap: calc(329 * 1rem / var(--font-size__base));
  margin-top: calc(var(--_overlap) * -1);
}

.m-home__solution {
  scroll-margin-top: var(--js-height__header, calc(72 * 1rem / var(--font-size__base)));
}

@keyframes mv-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.m-header {
  --_z-index--header-items: 100;
  --_z-index--header-drawer: 101;
  --_z-index--header-above-drawer: 102;
  position: fixed;
  z-index: var(--_z-index--header-items);
  top: var(--wp-admin--admin-bar--height, 0);
  width: 100%;
  background-color: transparent;
  transition: background-color var(--duration__base);
}

.m-header.is-scrolled {
  background-color: #fff;
}

.m-header.is-scrolled .m-header__logo {
  color: var(--color__black);
}

.l-page--has-fv .m-header__logo {
  opacity: 0;
  animation: mv-fade-in 0.8s ease-out 0.8s forwards;
}

.m-header__hamburger {
  display: block;
  position: absolute;
  top: calc(55 * 1rem / var(--font-size__base));
  right: calc(47 * 1rem / var(--font-size__base));
  z-index: var(--_z-index--header-items);
}

.l-page--has-fv .m-header__hamburger,
.l-page--has-fv .m-header__nav,
.l-page--has-fv .m-header__nav-buttons {
  opacity: 0;
  animation: mv-fade-in 0.8s ease-out 0.8s forwards;
}

.m-header__inner {
  display: flex;
  align-items: stretch;
  height: calc(72 * 1rem / var(--font-size__base));
  -webkit-padding-start: calc(56 * 1rem / var(--font-size__base));
          padding-inline-start: calc(56 * 1rem / var(--font-size__base));
}

.m-header__logo {
  position: relative;
  z-index: var(--_z-index--header-items);
  display: flex;
  align-items: center;
}

.m-header--logo-white-pc .m-header__logo {
  color: #fff;
}
.m-header.is-logo-dark .m-header__logo {
  color: var(--color__black);
}

.m-header.is-logo-white .m-header__logo {
  color: #fff;
}

.m-header__logo-image {
  width: calc(188.23 * 1rem / var(--font-size__base));
  height: calc(42.43 * 1rem / var(--font-size__base));
}

.m-header--recruit .m-header__logo-recruit {
  display: flex;
  align-items: center;
  gap: min(46 / 1920 * 100vw, 46 * 1rem / var(--font-size__base));
}

.m-header__logo-divider {
  width: 1px;
  height: calc(46 * 1rem / var(--font-size__base));
  background-color: currentcolor;
}

.m-header__logo-label {
  font-family: var(--font-family__jost);
  font-size: calc(27 * 1rem / var(--font-size__base));
  font-weight: 500;
  color: var(--color__brand-orange);
  text-decoration: none;
  letter-spacing: 0;
  line-height: 1;
}

.m-header__menu {
  display: flex;
  justify-content: flex-end;
  -moz-column-gap: calc(30 * 1rem / var(--font-size__base));
       column-gap: calc(30 * 1rem / var(--font-size__base));
}

.m-header__links {
  display: flex;
  align-items: center;
}

.m-header__links li {
  height: 100%;
}

.m-header__link {
  display: grid;
  align-items: center;
  transition: color var(--duration__base);
  padding-inline: calc(10 * 1rem / var(--font-size__base));
  padding-block: calc(25 * 1rem / var(--font-size__base));
}

.m-header__buttons {
  display: flex;
  align-items: center;
}

.m-header__buttons li {
  min-width: calc(200 * 1rem / var(--font-size__base));
}

.m-header--recruit {
  background-color: transparent;
}

.m-header--recruit .m-header__menu {
  display: none;
}

.m-header__nav {
  --_color__nav-text: var(--color__text);
  display: flex;
  align-items: stretch;
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  -webkit-padding-end: calc(47 * 1rem / var(--font-size__base));
          padding-inline-end: calc(47 * 1rem / var(--font-size__base));
}

.m-header--logo-white-pc .m-header__nav {
  --_color__nav-text: #fff;
}

.m-header.is-scrolled .m-header__nav {
  --_color__nav-text: var(--color__text);
}

.m-header__nav-list {
  display: flex;
  align-items: stretch;
}

.m-header__nav-item {
  position: relative;
  display: flex;
  align-items: stretch;
}

.m-header__nav-en {
  font-family: var(--font-family__jost);
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1;
}

.m-header__nav-ja {
  font-size: calc(12 * 1rem / var(--font-size__base));
  font-weight: 700;
  letter-spacing: 0.18em;
  line-height: 1;
}

.m-header__nav-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-inline: min(14 / 1920 * 100vw, 14 * 1rem / var(--font-size__base));
  row-gap: calc(6 * 1rem / var(--font-size__base));
  color: var(--_color__nav-text);
  text-decoration: none;
  transition: background-color var(--duration__base), color var(--duration__base);
}
.m-header__nav-link:focus-visible {
  background-color: var(--color__gray-500);
  color: #fff;
}

.m-header__nav-trigger {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-inline: calc(8 * 1rem / var(--font-size__base));
  row-gap: calc(6 * 1rem / var(--font-size__base));
  color: var(--_color__nav-text);
  text-decoration: none;
  background-color: transparent;
  border: none;
  transition: background-color var(--duration__base), color var(--duration__base);
}

.m-header__nav-dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: var(--_z-index--header-items);
  width: calc(213 * 1rem / var(--font-size__base));
  background-color: var(--color__gray-500);
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--duration__base), visibility var(--duration__base);
}

.m-header__nav-dropdown-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: calc(108 * 1rem / var(--font-size__base));
  row-gap: calc(6 * 1rem / var(--font-size__base));
  text-decoration: none;
  color: #fff;
  transition: opacity var(--duration__base);
}
.m-header__nav-dropdown-link:focus-visible {
  opacity: var(--opacity__hover);
}
.m-header__nav-item--has-dropdown.is-open .m-header__nav-trigger {
  background-color: var(--color__gray-500);
  color: #fff;
}

.m-header__nav-item--has-dropdown.is-open .m-header__nav-dropdown {
  opacity: 1;
  visibility: visible;
}

.m-header__nav-buttons {
  display: flex;
  align-items: center;
  -webkit-padding-start: min(30 / 1920 * 100vw, 30 * 1rem / var(--font-size__base));
          padding-inline-start: min(30 / 1920 * 100vw, 30 * 1rem / var(--font-size__base));
  -moz-column-gap: calc(24 * 1rem / var(--font-size__base));
       column-gap: calc(24 * 1rem / var(--font-size__base));
}

.m-header__nav-button {
  --_color__hover-bg: var(--color__gray-500);
  --_duration: 1.1s;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: calc(44 * 1rem / var(--font-size__base));
  padding-inline: calc(32 * 1rem / var(--font-size__base));
  background-color: var(--color__text);
  color: #fff;
  border-radius: calc(46 * 1rem / var(--font-size__base));
  font-size: calc(14 * 1rem / var(--font-size__base));
  font-weight: 700;
  letter-spacing: 0.18em;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
}
.m-header__nav-button:focus-visible::before {
  --_mask-position: 100%;
}

.m-header__nav-button::before {
  --_mask-position: 0%;
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  background-color: var(--_color__hover-bg);
  -webkit-mask-image: url("../images/common/mask.png");
  mask-image: url("../images/common/mask.png");
  -webkit-mask-size: 100% 600%;
  mask-size: 100% 600%;
  -webkit-mask-position: 0 var(--_mask-position);
  mask-position: 0 var(--_mask-position);
  transition: -webkit-mask-position var(--_duration);
  transition: mask-position var(--_duration);
  transition: mask-position var(--_duration), -webkit-mask-position var(--_duration);
}

.m-header__nav-button-text {
  position: relative;
  z-index: 1;
}

.m-hamburger {
  --_width--hamburger: 102;
  --_height--hamburger: 54;
  --_color--hamburger-line: #fff;
  --_color--hamburger-bg: var(--color__text);
  --_spacing--hamburger-line: 6;
  --_width--hamburger-line: 28;
  --_width--hamburger-line-hover: 40;
  --_height--hamburger-line: 2;
  --_duration: var(--duration__base);
  position: relative;
  width: calc(var(--_width--hamburger) * 1rem / var(--font-size__base));
  max-width: calc(60 * 1rem / var(--font-size__base));
  height: calc(var(--_height--hamburger) * 1rem / var(--font-size__base));
  max-height: calc(32 * 1rem / var(--font-size__base));
  background-color: var(--_color--hamburger-bg);
  border-radius: calc(46 * 1rem / var(--font-size__base));
  transition: background-color var(--_duration), opacity var(--_duration);
}
.m-hamburger:focus-visible .m-hamburger__line {
  width: calc(var(--_width--hamburger-line-hover) * 1rem / var(--font-size__base));
}

.m-hamburger__line {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  display: block;
  transition: top var(--_duration), rotate var(--_duration), opacity var(--_duration), width var(--_duration);
  width: calc(var(--_width--hamburger-line) * 1rem / var(--font-size__base));
  height: calc(var(--_height--hamburger-line) * 1rem / var(--font-size__base));
  background-color: var(--_color--hamburger-line, currentColor);
  border-radius: 0;
}

.m-hamburger__line:nth-of-type(1) {
  top: calc(50% - var(--_spacing--hamburger-line) * 1rem / var(--font-size__base));
}

.m-hamburger__line:nth-of-type(3) {
  top: calc(50% + var(--_spacing--hamburger-line) * 1rem / var(--font-size__base));
}

.m-hamburger[aria-expanded=true] .m-hamburger__line:nth-of-type(1) {
  top: 50%;
  rotate: 45deg;
}

.m-hamburger[aria-expanded=true] .m-hamburger__line:nth-of-type(2) {
  opacity: 0;
}

.m-hamburger[aria-expanded=true] .m-hamburger__line:nth-of-type(3) {
  top: 50%;
  rotate: -45deg;
}

.m-footer {
  background-color: #f7f7f7;
}

.m-footer__inner {
  padding-top: calc(74 * 1rem / var(--font-size__base));
  padding-bottom: calc(56 * 1rem / var(--font-size__base));
}

.m-footer__header {
  display: flex;
  align-items: flex-end;
  gap: calc(24 * 1rem / var(--font-size__base));
  margin-left: calc(-10 * 1rem / var(--font-size__base));
}

.m-footer__logo {
  display: block;
  width: calc(320 * 1rem / var(--font-size__base));
}

.m-footer__logo-image {
  width: 100%;
  height: auto;
}

.m-footer__company-name {
  padding-bottom: calc(11 * 1rem / var(--font-size__base));
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1.45;
}

.m-footer__main {
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: calc(75 * 1rem / var(--font-size__base));
  padding-top: calc(43 * 1rem / var(--font-size__base));
}

.m-footer__office {
  display: flex;
  flex-direction: column;
  row-gap: calc(16 * 1rem / var(--font-size__base));
}

.m-footer__office + .m-footer__office {
  padding-top: calc(32 * 1rem / var(--font-size__base));
}

.m-footer__office-name {
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.45;
}

.m-footer__office-address {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 700;
  letter-spacing: 0.056em;
  line-height: 1.5;
}

.m-footer__contact {
  padding-top: calc(40 * 1rem / var(--font-size__base));
}

.m-footer__nav-wrapper {
  display: contents;
}

.m-footer__nav {
  display: flex;
  flex-direction: column;
  gap: calc(30 * 1rem / var(--font-size__base));
}

.m-footer__links {
  display: flex;
  flex-direction: column;
  gap: calc(24 * 1rem / var(--font-size__base));
}

.m-footer__links-item {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0.025em;
  line-height: 1.5;
}

.m-footer__links-link {
  text-decoration: none;
  transition: opacity var(--duration__base);
}

.m-footer__bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-block: calc(24 * 1rem / var(--font-size__base));
  border-top: 1px solid #d0d0d0;
  margin-top: calc(48 * 1rem / var(--font-size__base));
}

.m-footer__external {
  display: flex;
  gap: calc(40 * 1rem / var(--font-size__base));
}

.m-footer__external-link {
  display: inline-flex;
  align-items: center;
  gap: calc(8 * 1rem / var(--font-size__base));
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0.064em;
  line-height: 1.4444444444;
  text-decoration: none;
  transition: opacity var(--duration__base);
}

.m-footer__external-icon {
  width: calc(16 * 1rem / var(--font-size__base));
  height: calc(16 * 1rem / var(--font-size__base));
}

.m-footer__policy {
  display: flex;
  gap: calc(40 * 1rem / var(--font-size__base));
}

.m-footer__policy-link {
  font-size: calc(14 * 1rem / var(--font-size__base));
  font-weight: 500;
  letter-spacing: 0.056em;
  line-height: 1.4285714286;
  text-decoration: none;
  transition: opacity var(--duration__base);
}

.m-footer__copyright {
  padding-block: calc(29 * 1rem / var(--font-size__base));
  background-color: #4a4a4a;
}

.m-footer__copyright-text {
  font-family: var(--font-family__montserrat);
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0.064em;
  line-height: 1.2222222222;
  color: #fff;
  text-align: center;
}

.m-footer-menu__title {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.5;
}

.m-footer-menu__list {
  padding-top: calc(12 * 1rem / var(--font-size__base));
}

.m-footer-menu__item {
  position: relative;
  padding-left: calc(19 * 1rem / var(--font-size__base));
  font-size: calc(14 * 1rem / var(--font-size__base));
  font-weight: 700;
  letter-spacing: 0.056em;
  line-height: 2;
}
.m-footer-menu__item::before {
  content: "−";
  position: absolute;
  left: calc(2 * 1rem / var(--font-size__base));
  top: 0;
}

.m-footer-menu__sublist {
  padding-top: calc(4 * 1rem / var(--font-size__base));
  list-style: none;
}

.m-footer-menu__subitem {
  position: relative;
  padding-left: 1em;
}
.m-footer-menu__subitem::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}

.m-footer-menu__link {
  text-decoration: none;
  transition: opacity var(--duration__base);
}

.m-faq-page__body {
  padding-top: calc(160 * 1rem / var(--font-size__base));
  padding-bottom: calc(180 * 1rem / var(--font-size__base));
}

.m-faq-page__categories {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: min(24 / 1920 * 100vw, 24 * 1rem / var(--font-size__base));
       column-gap: min(24 / 1920 * 100vw, 24 * 1rem / var(--font-size__base));
  row-gap: min(40 / 1920 * 100vw, 40 * 1rem / var(--font-size__base));
}

.m-faq-category {
  --_duration: 1.1s;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: calc(17 * 1rem / var(--font-size__base));
  padding-bottom: calc(17 * 1rem / var(--font-size__base));
  padding-left: calc(40 * 1rem / var(--font-size__base));
  padding-right: calc(40 * 1rem / var(--font-size__base));
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 3.5;
  letter-spacing: 0.18em;
  border: 1px solid #444;
  border-radius: calc(999 * 1rem / var(--font-size__base));
  overflow: hidden;
  isolation: isolate;
  cursor: pointer;
  transition: color var(--duration__base), border-color var(--duration__base);
}
.m-faq-category:focus-visible {
  color: #fff;
  border-color: #050505;
}
.m-faq-category:focus-visible::before {
  --_mask-position: 100%;
}
.m-faq-category::before {
  --_mask-position: 0%;
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background-color: #050505;
  -webkit-mask-image: url("../images/common/mask.png");
  mask-image: url("../images/common/mask.png");
  -webkit-mask-size: 100% 600%;
  mask-size: 100% 600%;
  -webkit-mask-position: 0 var(--_mask-position);
  mask-position: 0 var(--_mask-position);
  transition: -webkit-mask-position var(--_duration);
  transition: mask-position var(--_duration);
  transition: mask-position var(--_duration), -webkit-mask-position var(--_duration);
}

.m-faq-category.is-active {
  color: #fff;
  border-color: #050505;
  background-color: #050505;
}
.m-faq-category.is-active::before {
  --_mask-position: 100%;
}

.m-faq-category::after {
  content: "";
  position: relative;
  z-index: 1;
  flex-shrink: 0;
  width: calc(22 * 1rem / var(--font-size__base));
  height: calc(22 * 1rem / var(--font-size__base));
  background-image: url("../images/faq/arrow-circle.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transform: rotate(-90deg);
}

.m-faq-category.is-active::after {
  display: none;
}

.m-faq-page__list {
  padding-top: calc(80 * 1rem / var(--font-size__base));
}

.m-faq-section__title {
  padding-bottom: calc(8 * 1rem / var(--font-size__base));
  font-size: calc(30 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.6666666667;
  border-bottom: 1px solid var(--color__brand-cyan);
}

.m-faq-section__items {
  display: flex;
  flex-direction: column;
  gap: calc(40 * 1rem / var(--font-size__base));
  padding-top: calc(40 * 1rem / var(--font-size__base));
}

.m-faq-item {
  background-color: var(--color__gray-100);
  border-radius: calc(16 * 1rem / var(--font-size__base));
  overflow: hidden;
}

.m-faq-item__question {
  display: flex;
  align-items: center;
  gap: calc(40 * 1rem / var(--font-size__base));
  width: 100%;
  padding-top: calc(40 * 1rem / var(--font-size__base));
  padding-bottom: calc(40 * 1rem / var(--font-size__base));
  padding-left: calc(40 * 1rem / var(--font-size__base));
  padding-right: calc(40 * 1rem / var(--font-size__base));
  text-align: left;
  background-color: transparent;
  border: none;
  cursor: pointer;
  transition: opacity var(--duration__base);
}
.m-faq-item__question:focus-visible {
  opacity: var(--opacity__hover);
}

.m-faq-item__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: calc(50 * 1rem / var(--font-size__base));
  height: calc(50 * 1rem / var(--font-size__base));
  font-family: var(--font-family__montserrat);
  font-size: calc(26 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1;
  border-radius: 50%;
}

.m-faq-item__icon--q {
  background-color: var(--color__brand-cyan);
  color: #fff;
}

.m-faq-item__icon--a {
  background-color: #fff;
  color: var(--color__brand-cyan);
  border: 1px solid var(--color__brand-cyan);
}

.m-faq-item__question-text {
  flex: 1;
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.5;
}

.m-faq-item__arrow {
  flex-shrink: 0;
  width: calc(22 * 1rem / var(--font-size__base));
  height: calc(22 * 1rem / var(--font-size__base));
  background-image: url("../images/faq/arrow-circle.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transform: rotate(-90deg);
  transition: transform var(--duration__base);
}

.m-faq-item__question[aria-expanded=true] .m-faq-item__arrow {
  transform: rotate(90deg);
}

.m-faq-item__answer {
  overflow: hidden;
}

.m-faq-item__answer-inner {
  display: flex;
  align-items: center;
  gap: calc(40 * 1rem / var(--font-size__base));
  padding-top: calc(14 * 1rem / var(--font-size__base));
  padding-bottom: calc(40 * 1rem / var(--font-size__base));
  padding-left: calc(40 * 1rem / var(--font-size__base));
  padding-right: calc(40 * 1rem / var(--font-size__base));
}

.m-faq-item__answer-text.m-article-content {
  flex: 1;
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.6875;
}

.m-entry {
  position: relative;
  overflow: hidden;
}

.m-entry__bg {
  position: absolute;
  inset: 0;
  z-index: -2;
  background-color: var(--color__form-divider);
  pointer-events: none;
}

.m-entry__main {
  position: relative;
  z-index: 1;
  padding-bottom: calc(180 * 1rem / var(--font-size__base));
}

.m-entry__bg-logomark {
  position: absolute;
  z-index: -1;
  top: calc(-125 * 1rem / var(--font-size__base));
  right: calc(61 * 1rem / var(--font-size__base));
  height: auto;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  width: calc(750 * 1rem / var(--font-size__base));
  aspect-ratio: 750/779;
}

.m-entry__watermark-text-wrap {
  position: relative;
  left: 50%;
  z-index: 0;
  width: min(96.7708333333vw, 1900 * 1rem / var(--font-size__base));
  transform: translateX(-50%);
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  margin-top: calc(14 * 1rem / var(--font-size__base));
  margin-left: min(16 / 1920 * 100vw, 16 * 1rem / var(--font-size__base));
}

.m-entry__watermark-sp {
  display: flex;
  flex-direction: column;
  gap: calc(10 * 1rem / var(--font-size__base));
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  margin-top: calc(14 * 1rem / var(--font-size__base));
}

.m-entry__watermark-sp-row {
  position: relative;
}

.m-entry__watermark-sp-glass {
  position: absolute;
  inset: 0;
  -webkit-backdrop-filter: blur(6px);
          backdrop-filter: blur(6px);
  -webkit-mask-size: 100% 100%;
          mask-size: 100% 100%;
}

.m-entry__watermark-sp-row--create .m-entry__watermark-sp-glass {
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczOTYnIGhlaWdodD0nNjYnIHZpZXdCb3g9JzAgMCAzOTYgNjYnPjxwYXRoIGQ9J00zMS42OCA2NS41MkMyNS4yNiA2NS41MiAxOS42NSA2NC4zNSAxNC44NSA2Mi4wMUMxMC4xMSA1OS42NyA2LjQ1MDAzIDU2LjQzIDMuODcwMDMgNTIuMjlDMS4yOTAwMyA0OC4wOSAzLjE0NzEzZS0wNSA0My4yNiAzLjE0NzEzZS0wNSAzNy44QzMuMTQ3MTNlLTA1IDMyLjM0IDAuOTYwMDMxIDI3LjMgMi44ODAwMyAyMi42OEM0LjgwMDAzIDE4LjA2IDcuNTAwMDMgMTQuMDcgMTAuOTggMTAuNzFDMTQuNDYgNy4yOTAwMSAxOC42IDQuNjUwMDEgMjMuNCAyLjc5MDAxQzI4LjI2IDAuOTMwMDA2IDMzLjYzIDUuNjAyODRlLTA2IDM5LjUxIDUuNjAyODRlLTA2QzQ1LjMzIDUuNjAyODRlLTA2IDUwLjQ5IDEuMDIwMDEgNTQuOTkgMy4wNjAwMUM1OS40OSA1LjEwMDAxIDYyLjg1IDguMDQwMDEgNjUuMDcgMTEuODhMNTIuMiAyMi4xNEM1MC43NiAxOS43NCA0OC44NyAxNy45MSA0Ni41MyAxNi42NUM0NC4yNSAxNS4zOSA0MS41MiAxNC43NiAzOC4zNCAxNC43NkMzNS4yOCAxNC43NiAzMi40OSAxNS4zIDI5Ljk3IDE2LjM4QzI3LjUxIDE3LjQ2IDI1LjM4IDE4Ljk5IDIzLjU4IDIwLjk3QzIxLjc4IDIyLjk1IDIwLjQgMjUuMjkgMTkuNDQgMjcuOTlDMTguNDggMzAuNjMgMTggMzMuNTEgMTggMzYuNjNDMTggMzkuNDUgMTguNiA0MS45NCAxOS44IDQ0LjFDMjEuMDYgNDYuMiAyMi44MyA0Ny44NSAyNS4xMSA0OS4wNUMyNy40NSA1MC4xOSAzMC4yMSA1MC43NiAzMy4zOSA1MC43NkMzNi4yMSA1MC43NiAzOC45MSA1MC4xOSA0MS40OSA0OS4wNUM0NC4xMyA0Ny45MSA0Ni41NiA0Ni4wNSA0OC43OCA0My40N0w1OS4zMSA1My44MkM1NS43NyA1OC4wOCA1MS42OSA2MS4xMSA0Ny4wNyA2Mi45MUM0Mi40NSA2NC42NSAzNy4zMiA2NS41MiAzMS42OCA2NS41MlpNNjcuMzQ1MyA2NC4yNkw3OS45NDUzIDEuMjYwMDFIMTA2Ljg1NUMxMTQuOTU1IDEuMjYwMDEgMTIxLjE5NSAzLjAzMDAxIDEyNS41NzUgNi41NzAwMUMxMzAuMDE1IDEwLjExIDEzMi4yMzUgMTUuMDMgMTMyLjIzNSAyMS4zM0MxMzIuMjM1IDI2LjYxIDEzMC45NDUgMzEuMjMgMTI4LjM2NSAzNS4xOUMxMjUuODQ1IDM5LjA5IDEyMi4yNDUgNDIuMTIgMTE3LjU2NSA0NC4yOEMxMTIuODg1IDQ2LjQ0IDEwNy4zNjUgNDcuNTIgMTAxLjAwNSA0Ny41Mkg4MC41NzUzTDkwLjAyNTMgMzkuODdMODUuMTY1MyA2NC4yNkg2Ny4zNDUzWk0xMDYuODU1IDY0LjI2TDkzLjk4NTMgNDEuMzFIMTEyLjQzNUwxMjUuNDg1IDY0LjI2SDEwNi44NTVaTTg5LjU3NTMgNDEuOTRMODMuMzY1MyAzMy43NUgxMDEuODE1QzEwNS43NzUgMzMuNzUgMTA4LjgzNSAzMi44MiAxMTAuOTk1IDMwLjk2QzExMy4xNTUgMjkuMSAxMTQuMjM1IDI2LjQ2IDExNC4yMzUgMjMuMDRDMTE0LjIzNSAyMC40IDExMy4zNjUgMTguNDUgMTExLjYyNSAxNy4xOUMxMDkuODg1IDE1LjkzIDEwNy40NTUgMTUuMyAxMDQuMzM1IDE1LjNIODcuMTQ1M0w5Ni42ODUzIDYuODQwMDFMODkuNTc1MyA0MS45NFpNMTYxLjU5NiAyNS42NUgxOTAuODQ2TDE4OC4yMzYgMzguOTdIMTU4Ljk4NkwxNjEuNTk2IDI1LjY1Wk0xNTcuOTA2IDUwLjQ5SDE5MC45MzZMMTg4LjA1NiA2NC4yNkgxMzcuNTY2TDE1MC4xNjYgMS4yNjAwMUgxOTkuNDg2TDE5Ni42OTYgMTUuMDNIMTY0LjkyNkwxNTcuOTA2IDUwLjQ5Wk0xOTQuMDc1IDY0LjI2TDIzNC40ODUgMS4yNjAwMUgyNTIuMDM1TDI2Ny4yNDUgNjQuMjZIMjQ5LjUxNUwyMzguMjY1IDkuNzIwMDFIMjQ1LjI4NUwyMTIuODg1IDY0LjI2SDE5NC4wNzVaTTIxMS43MTUgNTIuMDJMMjE4LjkxNSAzOC44OEgyNDkuNjk1TDI1MS42NzUgNTIuMDJIMjExLjcxNVpNMjg2LjE0MyA2NC4yNkwyOTUuOTUzIDE1LjM5SDI3Ni42MDNMMjc5LjQ4MyAxLjI2MDAxSDMzNS45MTNMMzMzLjAzMyAxNS4zOUgzMTMuNzczTDMwMy45NjMgNjQuMjZIMjg2LjE0M1pNMzU3LjU4MiAyNS42NUgzODYuODMyTDM4NC4yMjIgMzguOTdIMzU0Ljk3MkwzNTcuNTgyIDI1LjY1Wk0zNTMuODkyIDUwLjQ5SDM4Ni45MjJMMzg0LjA0MiA2NC4yNkgzMzMuNTUyTDM0Ni4xNTIgMS4yNjAwMUgzOTUuNDcyTDM5Mi42ODIgMTUuMDNIMzYwLjkxMkwzNTMuODkyIDUwLjQ5WicgZmlsbD0nd2hpdGUnLz48L3N2Zz4=");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczOTYnIGhlaWdodD0nNjYnIHZpZXdCb3g9JzAgMCAzOTYgNjYnPjxwYXRoIGQ9J00zMS42OCA2NS41MkMyNS4yNiA2NS41MiAxOS42NSA2NC4zNSAxNC44NSA2Mi4wMUMxMC4xMSA1OS42NyA2LjQ1MDAzIDU2LjQzIDMuODcwMDMgNTIuMjlDMS4yOTAwMyA0OC4wOSAzLjE0NzEzZS0wNSA0My4yNiAzLjE0NzEzZS0wNSAzNy44QzMuMTQ3MTNlLTA1IDMyLjM0IDAuOTYwMDMxIDI3LjMgMi44ODAwMyAyMi42OEM0LjgwMDAzIDE4LjA2IDcuNTAwMDMgMTQuMDcgMTAuOTggMTAuNzFDMTQuNDYgNy4yOTAwMSAxOC42IDQuNjUwMDEgMjMuNCAyLjc5MDAxQzI4LjI2IDAuOTMwMDA2IDMzLjYzIDUuNjAyODRlLTA2IDM5LjUxIDUuNjAyODRlLTA2QzQ1LjMzIDUuNjAyODRlLTA2IDUwLjQ5IDEuMDIwMDEgNTQuOTkgMy4wNjAwMUM1OS40OSA1LjEwMDAxIDYyLjg1IDguMDQwMDEgNjUuMDcgMTEuODhMNTIuMiAyMi4xNEM1MC43NiAxOS43NCA0OC44NyAxNy45MSA0Ni41MyAxNi42NUM0NC4yNSAxNS4zOSA0MS41MiAxNC43NiAzOC4zNCAxNC43NkMzNS4yOCAxNC43NiAzMi40OSAxNS4zIDI5Ljk3IDE2LjM4QzI3LjUxIDE3LjQ2IDI1LjM4IDE4Ljk5IDIzLjU4IDIwLjk3QzIxLjc4IDIyLjk1IDIwLjQgMjUuMjkgMTkuNDQgMjcuOTlDMTguNDggMzAuNjMgMTggMzMuNTEgMTggMzYuNjNDMTggMzkuNDUgMTguNiA0MS45NCAxOS44IDQ0LjFDMjEuMDYgNDYuMiAyMi44MyA0Ny44NSAyNS4xMSA0OS4wNUMyNy40NSA1MC4xOSAzMC4yMSA1MC43NiAzMy4zOSA1MC43NkMzNi4yMSA1MC43NiAzOC45MSA1MC4xOSA0MS40OSA0OS4wNUM0NC4xMyA0Ny45MSA0Ni41NiA0Ni4wNSA0OC43OCA0My40N0w1OS4zMSA1My44MkM1NS43NyA1OC4wOCA1MS42OSA2MS4xMSA0Ny4wNyA2Mi45MUM0Mi40NSA2NC42NSAzNy4zMiA2NS41MiAzMS42OCA2NS41MlpNNjcuMzQ1MyA2NC4yNkw3OS45NDUzIDEuMjYwMDFIMTA2Ljg1NUMxMTQuOTU1IDEuMjYwMDEgMTIxLjE5NSAzLjAzMDAxIDEyNS41NzUgNi41NzAwMUMxMzAuMDE1IDEwLjExIDEzMi4yMzUgMTUuMDMgMTMyLjIzNSAyMS4zM0MxMzIuMjM1IDI2LjYxIDEzMC45NDUgMzEuMjMgMTI4LjM2NSAzNS4xOUMxMjUuODQ1IDM5LjA5IDEyMi4yNDUgNDIuMTIgMTE3LjU2NSA0NC4yOEMxMTIuODg1IDQ2LjQ0IDEwNy4zNjUgNDcuNTIgMTAxLjAwNSA0Ny41Mkg4MC41NzUzTDkwLjAyNTMgMzkuODdMODUuMTY1MyA2NC4yNkg2Ny4zNDUzWk0xMDYuODU1IDY0LjI2TDkzLjk4NTMgNDEuMzFIMTEyLjQzNUwxMjUuNDg1IDY0LjI2SDEwNi44NTVaTTg5LjU3NTMgNDEuOTRMODMuMzY1MyAzMy43NUgxMDEuODE1QzEwNS43NzUgMzMuNzUgMTA4LjgzNSAzMi44MiAxMTAuOTk1IDMwLjk2QzExMy4xNTUgMjkuMSAxMTQuMjM1IDI2LjQ2IDExNC4yMzUgMjMuMDRDMTE0LjIzNSAyMC40IDExMy4zNjUgMTguNDUgMTExLjYyNSAxNy4xOUMxMDkuODg1IDE1LjkzIDEwNy40NTUgMTUuMyAxMDQuMzM1IDE1LjNIODcuMTQ1M0w5Ni42ODUzIDYuODQwMDFMODkuNTc1MyA0MS45NFpNMTYxLjU5NiAyNS42NUgxOTAuODQ2TDE4OC4yMzYgMzguOTdIMTU4Ljk4NkwxNjEuNTk2IDI1LjY1Wk0xNTcuOTA2IDUwLjQ5SDE5MC45MzZMMTg4LjA1NiA2NC4yNkgxMzcuNTY2TDE1MC4xNjYgMS4yNjAwMUgxOTkuNDg2TDE5Ni42OTYgMTUuMDNIMTY0LjkyNkwxNTcuOTA2IDUwLjQ5Wk0xOTQuMDc1IDY0LjI2TDIzNC40ODUgMS4yNjAwMUgyNTIuMDM1TDI2Ny4yNDUgNjQuMjZIMjQ5LjUxNUwyMzguMjY1IDkuNzIwMDFIMjQ1LjI4NUwyMTIuODg1IDY0LjI2SDE5NC4wNzVaTTIxMS43MTUgNTIuMDJMMjE4LjkxNSAzOC44OEgyNDkuNjk1TDI1MS42NzUgNTIuMDJIMjExLjcxNVpNMjg2LjE0MyA2NC4yNkwyOTUuOTUzIDE1LjM5SDI3Ni42MDNMMjc5LjQ4MyAxLjI2MDAxSDMzNS45MTNMMzMzLjAzMyAxNS4zOUgzMTMuNzczTDMwMy45NjMgNjQuMjZIMjg2LjE0M1pNMzU3LjU4MiAyNS42NUgzODYuODMyTDM4NC4yMjIgMzguOTdIMzU0Ljk3MkwzNTcuNTgyIDI1LjY1Wk0zNTMuODkyIDUwLjQ5SDM4Ni45MjJMMzg0LjA0MiA2NC4yNkgzMzMuNTUyTDM0Ni4xNTIgMS4yNjAwMUgzOTUuNDcyTDM5Mi42ODIgMTUuMDNIMzYwLjkxMkwzNTMuODkyIDUwLjQ5WicgZmlsbD0nd2hpdGUnLz48L3N2Zz4=");
}

.m-entry__watermark-sp-row--energy .m-entry__watermark-sp-glass {
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0MTgnIGhlaWdodD0nNjYnIHZpZXdCb3g9JzAgMCA0MTggNjYnPjxwYXRoIGQ9J00yNC4wMzAxIDI1LjY1SDUzLjI4MDFMNTAuNjcwMSAzOC45N0gyMS40MjAxTDI0LjAzMDEgMjUuNjVaTTIwLjM0MDEgNTAuNDlINTMuMzcwMUw1MC40OTAxIDY0LjI2SDUuODY2MjFlLTA1TDEyLjYwMDEgMS4yNjAwMUg2MS45MjAxTDU5LjEzMDEgMTUuMDNIMjcuMzYwMUwyMC4zNDAxIDUwLjQ5Wk02NC4wNjg4IDY0LjI2TDc2LjY2ODggMS4yNjAwMUg5MS4zMzg4TDExNi44MDkgNDMuMzhMMTEwLjY4OSA0My4yTDExOS4wNTkgMS4yNjAwMUgxMzYuNTE5TDEyMy45MTkgNjQuMjZIMTA5LjI0OUw4My44Njg4IDIyLjE0TDg5Ljg5ODggMjIuMzJMODEuNTI4OCA2NC4yNkg2NC4wNjg4Wk0xNjQuMjA5IDI1LjY1SDE5My40NTlMMTkwLjg0OSAzOC45N0gxNjEuNTk5TDE2NC4yMDkgMjUuNjVaTTE2MC41MTkgNTAuNDlIMTkzLjU0OUwxOTAuNjY5IDY0LjI2SDE0MC4xNzlMMTUyLjc3OSAxLjI2MDAxSDIwMi4wOTlMMTk5LjMwOSAxNS4wM0gxNjcuNTM5TDE2MC41MTkgNTAuNDlaTTIwNC4yNDcgNjQuMjZMMjE2Ljg0NyAxLjI2MDAxSDI0My43NTdDMjUxLjg1NyAxLjI2MDAxIDI1OC4wOTcgMy4wMzAwMSAyNjIuNDc3IDYuNTcwMDFDMjY2LjkxNyAxMC4xMSAyNjkuMTM3IDE1LjAzIDI2OS4xMzcgMjEuMzNDMjY5LjEzNyAyNi42MSAyNjcuODQ3IDMxLjIzIDI2NS4yNjcgMzUuMTlDMjYyLjc0NyAzOS4wOSAyNTkuMTQ3IDQyLjEyIDI1NC40NjcgNDQuMjhDMjQ5Ljc4NyA0Ni40NCAyNDQuMjY3IDQ3LjUyIDIzNy45MDcgNDcuNTJIMjE3LjQ3N0wyMjYuOTI3IDM5Ljg3TDIyMi4wNjcgNjQuMjZIMjA0LjI0N1pNMjQzLjc1NyA2NC4yNkwyMzAuODg3IDQxLjMxSDI0OS4zMzdMMjYyLjM4NyA2NC4yNkgyNDMuNzU3Wk0yMjYuNDc3IDQxLjk0TDIyMC4yNjcgMzMuNzVIMjM4LjcxN0MyNDIuNjc3IDMzLjc1IDI0NS43MzcgMzIuODIgMjQ3Ljg5NyAzMC45NkMyNTAuMDU3IDI5LjEgMjUxLjEzNyAyNi40NiAyNTEuMTM3IDIzLjA0QzI1MS4xMzcgMjAuNCAyNTAuMjY3IDE4LjQ1IDI0OC41MjcgMTcuMTlDMjQ2Ljc4NyAxNS45MyAyNDQuMzU3IDE1LjMgMjQxLjIzNyAxNS4zSDIyNC4wNDdMMjMzLjU4NyA2Ljg0MDAxTDIyNi40NzcgNDEuOTRaTTMwOC44NDggNjUuNTJDMzAyLjQ4OCA2NS41MiAyOTYuOTA4IDY0LjM1IDI5Mi4xMDggNjIuMDFDMjg3LjM2OCA1OS42NyAyODMuNjc4IDU2LjQzIDI4MS4wMzggNTIuMjlDMjc4LjQ1OCA0OC4wOSAyNzcuMTY4IDQzLjI2IDI3Ny4xNjggMzcuOEMyNzcuMTY4IDMyLjM0IDI3OC4xMjggMjcuMyAyODAuMDQ4IDIyLjY4QzI4MS45NjggMTguMDYgMjg0LjY5OCAxNC4wNyAyODguMjM4IDEwLjcxQzI5MS43NzggNy4yOTAwMSAyOTUuOTc4IDQuNjUwMDEgMzAwLjgzOCAyLjc5MDAxQzMwNS43NTggMC45MzAwMDYgMzExLjIxOCA1LjYwMjg0ZS0wNiAzMTcuMjE4IDUuNjAyODRlLTA2QzMyMy41MTggNS42MDI4NGUtMDYgMzI4Ljk0OCAwLjk5MDAwNSAzMzMuNTA4IDIuOTdDMzM4LjEyOCA0Ljk1MDAxIDM0MS44NDggNy44MzAwMSAzNDQuNjY4IDExLjYxTDMzMS44ODggMjEuNjlDMzI5Ljc4OCAxOS4xMSAzMjcuNTA4IDE3LjMxIDMyNS4wNDggMTYuMjlDMzIyLjU4OCAxNS4yNyAzMTkuNzA4IDE0Ljc2IDMxNi40MDggMTQuNzZDMzEzLjE2OCAxNC43NiAzMTAuMjI4IDE1LjMgMzA3LjU4OCAxNi4zOEMzMDUuMDA4IDE3LjQ2IDMwMi43ODggMTguOTkgMzAwLjkyOCAyMC45N0MyOTkuMDY4IDIyLjk1IDI5Ny42MjggMjUuMjkgMjk2LjYwOCAyNy45OUMyOTUuNjQ4IDMwLjYzIDI5NS4xNjggMzMuNTEgMjk1LjE2OCAzNi42M0MyOTUuMTY4IDM5LjQ1IDI5NS43OTggNDEuOTQgMjk3LjA1OCA0NC4xQzI5OC4zMTggNDYuMiAzMDAuMTQ4IDQ3Ljg1IDMwMi41NDggNDkuMDVDMzA0Ljk0OCA1MC4xOSAzMDcuODU4IDUwLjc2IDMxMS4yNzggNTAuNzZDMzE0LjAzOCA1MC43NiAzMTYuNjc4IDUwLjMxIDMxOS4xOTggNDkuNDFDMzIxLjc3OCA0OC41MSAzMjQuMzU4IDQ3LjAxIDMyNi45MzggNDQuOTFMMzMzLjY4OCA1Ny45NkMzMzAuNDQ4IDYwLjM2IDMyNi42OTggNjIuMjIgMzIyLjQzOCA2My41NEMzMTguMTc4IDY0Ljg2IDMxMy42NDggNjUuNTIgMzA4Ljg0OCA2NS41MlpNMzE4LjQ3OCA1NS4xN0wzMjMuMjQ4IDMxLjQxSDMzOC45OThMMzMzLjY4OCA1Ny45NkwzMTguNDc4IDU1LjE3Wk0zNjMuMjU2IDY0LjI2TDM2OC41NjYgMzcuNTNMMzcwLjU0NiA0OC40MkwzNTEuNzM2IDEuMjYwMDFIMzY5LjY0NkwzODMuMTQ2IDM1LjQ2TDM3Mi4xNjYgMzUuNTVMMzk5LjcwNiAxLjI2MDAxSDQxNy43OTZMMzgwLjM1NiA0OC40MkwzODYuMzg2IDM3LjUzTDM4MS4wNzYgNjQuMjZIMzYzLjI1NlonIGZpbGw9J3doaXRlJy8+PC9zdmc+");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0MTgnIGhlaWdodD0nNjYnIHZpZXdCb3g9JzAgMCA0MTggNjYnPjxwYXRoIGQ9J00yNC4wMzAxIDI1LjY1SDUzLjI4MDFMNTAuNjcwMSAzOC45N0gyMS40MjAxTDI0LjAzMDEgMjUuNjVaTTIwLjM0MDEgNTAuNDlINTMuMzcwMUw1MC40OTAxIDY0LjI2SDUuODY2MjFlLTA1TDEyLjYwMDEgMS4yNjAwMUg2MS45MjAxTDU5LjEzMDEgMTUuMDNIMjcuMzYwMUwyMC4zNDAxIDUwLjQ5Wk02NC4wNjg4IDY0LjI2TDc2LjY2ODggMS4yNjAwMUg5MS4zMzg4TDExNi44MDkgNDMuMzhMMTEwLjY4OSA0My4yTDExOS4wNTkgMS4yNjAwMUgxMzYuNTE5TDEyMy45MTkgNjQuMjZIMTA5LjI0OUw4My44Njg4IDIyLjE0TDg5Ljg5ODggMjIuMzJMODEuNTI4OCA2NC4yNkg2NC4wNjg4Wk0xNjQuMjA5IDI1LjY1SDE5My40NTlMMTkwLjg0OSAzOC45N0gxNjEuNTk5TDE2NC4yMDkgMjUuNjVaTTE2MC41MTkgNTAuNDlIMTkzLjU0OUwxOTAuNjY5IDY0LjI2SDE0MC4xNzlMMTUyLjc3OSAxLjI2MDAxSDIwMi4wOTlMMTk5LjMwOSAxNS4wM0gxNjcuNTM5TDE2MC41MTkgNTAuNDlaTTIwNC4yNDcgNjQuMjZMMjE2Ljg0NyAxLjI2MDAxSDI0My43NTdDMjUxLjg1NyAxLjI2MDAxIDI1OC4wOTcgMy4wMzAwMSAyNjIuNDc3IDYuNTcwMDFDMjY2LjkxNyAxMC4xMSAyNjkuMTM3IDE1LjAzIDI2OS4xMzcgMjEuMzNDMjY5LjEzNyAyNi42MSAyNjcuODQ3IDMxLjIzIDI2NS4yNjcgMzUuMTlDMjYyLjc0NyAzOS4wOSAyNTkuMTQ3IDQyLjEyIDI1NC40NjcgNDQuMjhDMjQ5Ljc4NyA0Ni40NCAyNDQuMjY3IDQ3LjUyIDIzNy45MDcgNDcuNTJIMjE3LjQ3N0wyMjYuOTI3IDM5Ljg3TDIyMi4wNjcgNjQuMjZIMjA0LjI0N1pNMjQzLjc1NyA2NC4yNkwyMzAuODg3IDQxLjMxSDI0OS4zMzdMMjYyLjM4NyA2NC4yNkgyNDMuNzU3Wk0yMjYuNDc3IDQxLjk0TDIyMC4yNjcgMzMuNzVIMjM4LjcxN0MyNDIuNjc3IDMzLjc1IDI0NS43MzcgMzIuODIgMjQ3Ljg5NyAzMC45NkMyNTAuMDU3IDI5LjEgMjUxLjEzNyAyNi40NiAyNTEuMTM3IDIzLjA0QzI1MS4xMzcgMjAuNCAyNTAuMjY3IDE4LjQ1IDI0OC41MjcgMTcuMTlDMjQ2Ljc4NyAxNS45MyAyNDQuMzU3IDE1LjMgMjQxLjIzNyAxNS4zSDIyNC4wNDdMMjMzLjU4NyA2Ljg0MDAxTDIyNi40NzcgNDEuOTRaTTMwOC44NDggNjUuNTJDMzAyLjQ4OCA2NS41MiAyOTYuOTA4IDY0LjM1IDI5Mi4xMDggNjIuMDFDMjg3LjM2OCA1OS42NyAyODMuNjc4IDU2LjQzIDI4MS4wMzggNTIuMjlDMjc4LjQ1OCA0OC4wOSAyNzcuMTY4IDQzLjI2IDI3Ny4xNjggMzcuOEMyNzcuMTY4IDMyLjM0IDI3OC4xMjggMjcuMyAyODAuMDQ4IDIyLjY4QzI4MS45NjggMTguMDYgMjg0LjY5OCAxNC4wNyAyODguMjM4IDEwLjcxQzI5MS43NzggNy4yOTAwMSAyOTUuOTc4IDQuNjUwMDEgMzAwLjgzOCAyLjc5MDAxQzMwNS43NTggMC45MzAwMDYgMzExLjIxOCA1LjYwMjg0ZS0wNiAzMTcuMjE4IDUuNjAyODRlLTA2QzMyMy41MTggNS42MDI4NGUtMDYgMzI4Ljk0OCAwLjk5MDAwNSAzMzMuNTA4IDIuOTdDMzM4LjEyOCA0Ljk1MDAxIDM0MS44NDggNy44MzAwMSAzNDQuNjY4IDExLjYxTDMzMS44ODggMjEuNjlDMzI5Ljc4OCAxOS4xMSAzMjcuNTA4IDE3LjMxIDMyNS4wNDggMTYuMjlDMzIyLjU4OCAxNS4yNyAzMTkuNzA4IDE0Ljc2IDMxNi40MDggMTQuNzZDMzEzLjE2OCAxNC43NiAzMTAuMjI4IDE1LjMgMzA3LjU4OCAxNi4zOEMzMDUuMDA4IDE3LjQ2IDMwMi43ODggMTguOTkgMzAwLjkyOCAyMC45N0MyOTkuMDY4IDIyLjk1IDI5Ny42MjggMjUuMjkgMjk2LjYwOCAyNy45OUMyOTUuNjQ4IDMwLjYzIDI5NS4xNjggMzMuNTEgMjk1LjE2OCAzNi42M0MyOTUuMTY4IDM5LjQ1IDI5NS43OTggNDEuOTQgMjk3LjA1OCA0NC4xQzI5OC4zMTggNDYuMiAzMDAuMTQ4IDQ3Ljg1IDMwMi41NDggNDkuMDVDMzA0Ljk0OCA1MC4xOSAzMDcuODU4IDUwLjc2IDMxMS4yNzggNTAuNzZDMzE0LjAzOCA1MC43NiAzMTYuNjc4IDUwLjMxIDMxOS4xOTggNDkuNDFDMzIxLjc3OCA0OC41MSAzMjQuMzU4IDQ3LjAxIDMyNi45MzggNDQuOTFMMzMzLjY4OCA1Ny45NkMzMzAuNDQ4IDYwLjM2IDMyNi42OTggNjIuMjIgMzIyLjQzOCA2My41NEMzMTguMTc4IDY0Ljg2IDMxMy42NDggNjUuNTIgMzA4Ljg0OCA2NS41MlpNMzE4LjQ3OCA1NS4xN0wzMjMuMjQ4IDMxLjQxSDMzOC45OThMMzMzLjY4OCA1Ny45NkwzMTguNDc4IDU1LjE3Wk0zNjMuMjU2IDY0LjI2TDM2OC41NjYgMzcuNTNMMzcwLjU0NiA0OC40MkwzNTEuNzM2IDEuMjYwMDFIMzY5LjY0NkwzODMuMTQ2IDM1LjQ2TDM3Mi4xNjYgMzUuNTVMMzk5LjcwNiAxLjI2MDAxSDQxNy43OTZMMzgwLjM1NiA0OC40MkwzODYuMzg2IDM3LjUzTDM4MS4wNzYgNjQuMjZIMzYzLjI1NlonIGZpbGw9J3doaXRlJy8+PC9zdmc+");
}

.m-entry__watermark-sp-img {
  display: block;
  width: 100%;
  position: relative;
  z-index: 1;
}

.m-entry__watermark-text {
  --_mask-svg: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxODYwJyBoZWlnaHQ9JzE0NScgdmlld0JveD0nMCAwIDE4NjAgMTQ1Jz48cGF0aCBkPSdNNjkuNjk2MSAxNDQuMTQ0QzI3LjEyNjEgMTQ0LjE0NCA5LjA1OTkxZS0wNSAxMTkuMzk0IDkuMDU5OTFlLTA1IDgzLjE2QzkuMDU5OTFlLTA1IDM1LjA0NiAzNS40NDIxIDEuMTkyMDllLTA3IDg2LjkyMjEgMS4xOTIwOWUtMDdDMTEyLjQ2NCAxLjE5MjA5ZS0wNyAxMzMuMjU0IDkuMzA2IDE0My4xNTQgMjYuMTM2TDExNC44NCA0OC43MDhDMTA4LjMwNiAzOC4yMTQgOTguMjA4MSAzMi40NzIgODQuMzQ4MSAzMi40NzJDNTcuNDIwMSAzMi40NzIgMzkuNjAwMSA1My4yNjIgMzkuNjAwMSA4MC41ODZDMzkuNjAwMSA5OS4xOTggNTIuMjcyMSAxMTEuNjcyIDczLjQ1ODEgMTExLjY3MkM4NS45MzIxIDExMS42NzIgOTcuNDE2MSAxMDYuOTIgMTA3LjMxNiA5NS42MzRMMTMwLjQ4MiAxMTguNDA0QzExNC44NCAxMzcuMjE0IDk0LjQ0NjEgMTQ0LjE0NCA2OS42OTYxIDE0NC4xNDRaTTI5MC45MTggNDYuOTI2QzI5MC45MTggNzIuNDY4IDI3Ni42NjIgOTEuNDc2IDI1Mi41MDYgOTkuNzkyTDI3Ni4wNjggMTQxLjM3MkgyMzUuMDgyTDIxNC40OSAxMDQuNTQ0SDE5NC42OUwxODcuMzY0IDE0MS4zNzJIMTQ4LjE2TDE3NS44OCAyLjc3MkgyMzUuMDgyQzI3MC41MjQgMi43NzIgMjkwLjkxOCAxOS4yMDYgMjkwLjkxOCA0Ni45MjZaTTI1MS4zMTggNTAuNjg4QzI1MS4zMTggMzkuMDA2IDI0My4wMDIgMzMuNjYgMjI5LjUzOCAzMy42NkgyMDguOTQ2TDIwMC42MyA3NC4yNUgyMjMuOTk0QzI0MS4yMiA3NC4yNSAyNTEuMzE4IDY1LjkzNCAyNTEuMzE4IDUwLjY4OFpNNDMyLjczMiAzMy4wNjZIMzYyLjgzOEwzNTguMjg0IDU2LjQzSDQxOS44NjJMNDE0LjEyIDg1LjczNEgzNTIuMzQ0TDM0Ny4zOTQgMTExLjA3OEg0MjAuMDZMNDEzLjcyNCAxNDEuMzcySDMwMi42NDZMMzMwLjM2NiAyLjc3Mkg0MzguODdMNDMyLjczMiAzMy4wNjZaTTU0OC45MzMgMTQxLjM3Mkw1NDMuMzg5IDExNC40NDRINDg0LjM4NUw0NjguMzQ3IDE0MS4zNzJINDI2Ljk2NUw1MTUuODY3IDIuNzcySDU1NC40NzdMNTg3LjkzOSAxNDEuMzcySDU0OC45MzNaTTUwMS42MTEgODUuNTM2SDUzNy40NDlMNTI4LjE0MyA0MC41OUw1MDEuNjExIDg1LjUzNlpNNjI5LjUxNSAxNDEuMzcyTDY1MS4wOTcgMzMuODU4SDYwOC41MjdMNjE0Ljg2MyAyLjc3Mkg3MzkuMDA5TDczMi42NzMgMzMuODU4SDY5MC4zMDFMNjY4LjcxOSAxNDEuMzcySDYyOS41MTVaTTg2My45IDMzLjA2Nkg3OTQuMDA2TDc4OS40NTIgNTYuNDNIODUxLjAzTDg0NS4yODggODUuNzM0SDc4My41MTJMNzc4LjU2MiAxMTEuMDc4SDg1MS4yMjhMODQ0Ljg5MiAxNDEuMzcySDczMy44MTRMNzYxLjUzNCAyLjc3Mkg4NzAuMDM4TDg2My45IDMzLjA2NlpNMTA3MC4zOSAzMy4wNjZIMTAwMC41TDk5NS45NDUgNTYuNDNIMTA1Ny41MkwxMDUxLjc4IDg1LjczNEg5OTAuMDA1TDk4NS4wNTUgMTExLjA3OEgxMDU3LjcyTDEwNTEuMzggMTQxLjM3Mkg5NDAuMzA3TDk2OC4wMjcgMi43NzJIMTA3Ni41M0wxMDcwLjM5IDMzLjA2NlpNMTIwMi4yNCAyLjc3MkgxMjQwLjY1TDEyMTIuOTMgMTQxLjM3MkgxMTgwLjY1TDExMzQuOTIgNjUuMzRMMTExOS42NyAxNDEuMzcySDEwODEuMjZMMTEwOC45OCAyLjc3MkgxMTQxLjI1TDExODcuMTkgNzguNjA2TDEyMDIuMjQgMi43NzJaTTEzNzguNzkgMzMuMDY2SDEzMDguODlMMTMwNC4zNCA1Ni40M0gxMzY1LjkyTDEzNjAuMTcgODUuNzM0SDEyOTguNEwxMjkzLjQ1IDExMS4wNzhIMTM2Ni4xMUwxMzU5Ljc4IDE0MS4zNzJIMTI0OC43TDEyNzYuNDIgMi43NzJIMTM4NC45MkwxMzc4Ljc5IDMzLjA2NlpNMTUzMi40MSA0Ni45MjZDMTUzMi40MSA3Mi40NjggMTUxOC4xNSA5MS40NzYgMTQ5NCA5OS43OTJMMTUxNy41NiAxNDEuMzcySDE0NzYuNTdMMTQ1NS45OCAxMDQuNTQ0SDE0MzYuMThMMTQyOC44NSAxNDEuMzcySDEzODkuNjVMMTQxNy4zNyAyLjc3MkgxNDc2LjU3QzE1MTIuMDEgMi43NzIgMTUzMi40MSAxOS4yMDYgMTUzMi40MSA0Ni45MjZaTTE0OTIuODEgNTAuNjg4QzE0OTIuODEgMzkuMDA2IDE0ODQuNDkgMzMuNjYgMTQ3MS4wMyAzMy42NkgxNDUwLjQ0TDE0NDIuMTIgNzQuMjVIMTQ2NS40OEMxNDgyLjcxIDc0LjI1IDE0OTIuODEgNjUuOTM0IDE0OTIuODEgNTAuNjg4Wk0xNjQzLjUzIDEwOC4zMDZMMTY1MS40NSA2OS4xMDJIMTY4Ni4xTDE2NzQuNDIgMTI3LjUxMkMxNjYwLjE3IDEzOC4yMDQgMTY0MC43NiAxNDQuMTQ0IDE2MTkuNzcgMTQ0LjE0NEMxNTc3LjQgMTQ0LjE0NCAxNTUwLjA4IDExOS4zOTQgMTU1MC4wOCA4My4xNkMxNTUwLjA4IDM1LjA0NiAxNTg1LjUyIDEuMTkyMDllLTA3IDE2MzguMTkgMS4xOTIwOWUtMDdDMTY2NS45MSAxLjE5MjA5ZS0wNyAxNjg2LjEgOC45MSAxNjk4LjU4IDI1LjU0MkwxNjcwLjQ2IDQ3LjcxOEMxNjYxLjM1IDM2LjQzMiAxNjUwLjY2IDMyLjQ3MiAxNjM2LjQxIDMyLjQ3MkMxNjA3Ljg5IDMyLjQ3MiAxNTg5LjY4IDUyLjg2NiAxNTg5LjY4IDgwLjU4NkMxNTg5LjY4IDk5LjE5OCAxNjAyLjM1IDExMS42NzIgMTYyNS4xMiAxMTEuNjcyQzE2MzEuNDYgMTExLjY3MiAxNjM3LjU5IDExMC42ODIgMTY0My41MyAxMDguMzA2Wk0xODU5LjQ2IDIuNzcyTDE3ODguMzggOTIuMjY4TDE3NzguNjcgMTQxLjM3MkgxNzM5LjQ3TDE3NDkuMzcgOTEuMjc4TDE3MTQuMTMgMi43NzJIMTc1My41M0wxNzc1LjMxIDU4LjAxNEwxODE5LjY2IDIuNzcySDE4NTkuNDZaJyBmaWxsPSd3aGl0ZScvPjwvc3ZnPg==");
  position: absolute;
  inset: 0;
  -webkit-backdrop-filter: blur(6px);
          backdrop-filter: blur(6px);
  -webkit-mask-image: var(--_mask-svg);
          mask-image: var(--_mask-svg);
  -webkit-mask-size: 100% 100%;
          mask-size: 100% 100%;
}

.m-entry__watermark-text-img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
}

.m-entry__hero {
  position: relative;
  padding-top: calc(180 * 1rem / var(--font-size__base));
}

.m-entry__title-wrap {
  position: relative;
  z-index: 1;
}

.m-entry__steps {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  -moz-column-gap: calc(28 * 1rem / var(--font-size__base));
       column-gap: calc(28 * 1rem / var(--font-size__base));
  margin-top: calc(-20 * 1rem / var(--font-size__base));
}

.m-entry__steps--contact {
  margin-top: calc(-144 * 1rem / var(--font-size__base));
}

.m-entry__step {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: calc(90 * 1rem / var(--font-size__base));
  padding-inline: calc(50 * 1rem / var(--font-size__base));
  border-radius: calc(infinity * 1px);
  background-color: rgba(68, 68, 68, 0.5);
  color: #fff;
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 500;
  letter-spacing: 0.18em;
}

.m-entry__step--active {
  background-color: var(--color__black);
}

.m-entry__step-arrow {
  display: block;
  flex-shrink: 0;
  width: calc(69 * 1rem / var(--font-size__base));
  height: calc(24 * 1rem / var(--font-size__base));
  filter: invert(1);
}

.m-entry__form-card {
  background: rgba(255, 255, 255, 0.5);
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
  border-radius: calc(75 * 1rem / var(--font-size__base));
  margin-top: calc(80 * 1rem / var(--font-size__base));
  padding-top: calc(170 * 1rem / var(--font-size__base));
  padding-bottom: calc(146 * 1rem / var(--font-size__base));
}

.m-entry__form-card-inner {
  --_padding-inline: 40;
}

.m-entry-form {
  --_accent: var(--color__brand-orange-light);
  --_accent-bg: rgb(248 65 3 / 0.1);
  --_select-arrow: url("data:image/svg+xml,%3Csvg viewBox='0 0 26.15 15.56' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 2.09L2.15 0L13.06 11.26L24 0L26.15 2.09L13.05 15.56L0 2.09Z' fill='%23f84103'/%3E%3C/svg%3E");
}

.m-entry-form__intro {
  padding-bottom: calc(50 * 1rem / var(--font-size__base));
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: var(--color__black);
}

.m-entry-form__row {
  display: flex;
  flex-direction: column;
  gap: calc(24 * 1rem / var(--font-size__base));
  border-bottom: 1px solid var(--color__form-divider);
  padding-bottom: calc(40 * 1rem / var(--font-size__base));
}

.m-entry-form__row + .m-entry-form__row {
  padding-top: calc(40 * 1rem / var(--font-size__base));
}

.m-entry-form__label {
  display: flex;
  align-items: center;
  gap: calc(24 * 1rem / var(--font-size__base));
  font-size: calc(28 * 1rem / var(--font-size__base));
  font-weight: 500;
  color: var(--color__form-label);
  line-height: 1.7857142857;
  letter-spacing: 0.04em;
}

.m-entry-form__label p {
  display: contents;
}

.m-entry-form__label-note {
  align-self: flex-end;
  padding-bottom: 0.28em;
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 400;
  color: var(--color__text);
  letter-spacing: 0.04em;
}

.m-entry-form__badge {
  display: none;
  align-items: center;
  justify-content: center;
  min-width: calc(60 * 1rem / var(--font-size__base));
  height: calc(30 * 1rem / var(--font-size__base));
  padding: 0 calc(10 * 1rem / var(--font-size__base));
  border-radius: calc(infinity * 1px);
  background-color: var(--_accent);
  color: #fff;
  font-size: calc(15 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.06em;
  flex-shrink: 0;
}

.m-entry-form__row:has([aria-required=true]) .m-entry-form__badge {
  display: inline-flex;
}

.m-entry-form__row:has(.m-entry-form__radios) .m-entry-form__badge {
  display: inline-flex;
}

.m-entry-form__field {
  display: flex;
  flex-direction: column;
  gap: calc(16 * 1rem / var(--font-size__base));
}

.m-entry-form__cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: calc(40 * 1rem / var(--font-size__base));
}

.m-entry-form__cols--fixed {
  grid-template-columns: calc(260 * 1rem / var(--font-size__base)) calc(260 * 1rem / var(--font-size__base));
}

.m-entry-form__cols--asym {
  grid-template-columns: calc(500 * 1rem / var(--font-size__base)) 1fr;
}

.m-entry-form__col {
  display: flex;
  flex-direction: column;
  gap: calc(6 * 1rem / var(--font-size__base));
}

.m-entry-form__radios p {
  margin: 0;
}

.m-entry-form__radios .wpcf7-radio {
  display: flex;
  flex-wrap: wrap;
  gap: calc(40 * 1rem / var(--font-size__base));
}

.m-entry-form__radios .wpcf7-list-item {
  display: flex;
  align-items: center;
  -moz-column-gap: calc(6 * 1rem / var(--font-size__base));
       column-gap: calc(6 * 1rem / var(--font-size__base));
  padding-block: calc(12 * 1rem / var(--font-size__base));
  padding-inline: calc(24 * 1rem / var(--font-size__base));
  background-color: var(--_accent-bg);
  border-radius: calc(6 * 1rem / var(--font-size__base));
  margin: 0;
  cursor: pointer;
}

.m-entry-form__radios .wpcf7-list-item label {
  display: flex;
  align-items: center;
  gap: calc(16 * 1rem / var(--font-size__base));
  cursor: pointer;
}

.m-entry-form__radios .wpcf7-list-item-label {
  font-size: calc(22 * 1rem / var(--font-size__base));
  color: #444;
  line-height: 1.5;
  cursor: pointer;
  padding-bottom: calc(1 * 1rem / var(--font-size__base));
}

.m-entry-form__radios input[type=radio] {
  width: calc(22 * 1rem / var(--font-size__base));
  height: calc(22 * 1rem / var(--font-size__base));
  border: 1px solid var(--_accent);
  border-radius: 50%;
  background-color: #fff;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  flex-shrink: 0;
  position: relative;
  cursor: pointer;
  transition: background-color var(--duration__base);
}

.m-entry-form__radios input[type=radio]:checked {
  background-color: var(--_accent);
}

.m-entry-form__radios input[type=radio]:checked::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(8 * 1rem / var(--font-size__base));
  height: calc(8 * 1rem / var(--font-size__base));
  border-radius: 50%;
  background-color: #fff;
}

.m-entry-form__date {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: calc(40 * 1rem / var(--font-size__base));
}

.m-entry-form__date-group {
  --_select-arrow: url("data:image/svg+xml,%3Csvg viewBox='0 0 27 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 2.09L2.15 0L13.06 11.26L24 0L26.15 2.09L13.05 15.56L0 2.09Z' fill='%23030303'/%3E%3C/svg%3E");
  display: flex;
  align-items: center;
  gap: calc(24 * 1rem / var(--font-size__base));
}
.m-entry-form__date-group > p {
  display: contents;
}

.m-entry-form__date-group select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: var(--_accent-bg);
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 27 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 2.09L2.15 0L13.06 11.26L24 0L26.15 2.09L13.05 15.56L0 2.09Z' fill='%23030303'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right calc(24 * 1rem / var(--font-size__base)) center;
  background-size: calc(26.15 * 1rem / var(--font-size__base)) calc(15.56 * 1rem / var(--font-size__base));
  border: none;
  border-radius: calc(6 * 1rem / var(--font-size__base));
  padding: calc(12 * 1rem / var(--font-size__base)) calc(60 * 1rem / var(--font-size__base)) calc(12 * 1rem / var(--font-size__base)) calc(24 * 1rem / var(--font-size__base));
  font-size: calc(22 * 1rem / var(--font-size__base));
  color: #444;
  cursor: pointer;
  width: calc(150 * 1rem / var(--font-size__base));
}

.m-entry-form__date-unit {
  font-size: calc(22 * 1rem / var(--font-size__base));
  color: #444;
}

.m-entry-form__employment-period {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: calc(40 * 1rem / var(--font-size__base));
  padding-top: calc(22 * 1rem / var(--font-size__base));
}

.m-entry-form__period-range {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: calc(40 * 1rem / var(--font-size__base));
}

.m-entry-form__period-sep {
  font-size: calc(22 * 1rem / var(--font-size__base));
  color: #444;
}

.m-entry-form__current-check br {
  display: none;
}

.m-entry-form__current-check .wpcf7-list-item {
  display: flex;
  align-items: center;
  gap: calc(24 * 1rem / var(--font-size__base));
  margin: 0;
}

.m-entry-form__current-check .wpcf7-list-item-label {
  font-size: calc(22 * 1rem / var(--font-size__base));
  color: #444;
  cursor: pointer;
}

.m-entry-form__current-check input[type=checkbox] {
  width: calc(50 * 1rem / var(--font-size__base));
  height: calc(50 * 1rem / var(--font-size__base));
  border: 1px solid var(--_accent);
  border-radius: calc(6 * 1rem / var(--font-size__base));
  background-color: #fff;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  flex-shrink: 0;
  position: relative;
  cursor: pointer;
  transition: background-color var(--duration__base), border-color var(--duration__base);
}

.m-entry-form__current-check input[type=checkbox]:checked {
  background-color: var(--_accent);
}

.m-entry-form__current-check input[type=checkbox]:checked::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -65%) rotate(-45deg);
  width: calc(22 * 1rem / var(--font-size__base));
  height: calc(11 * 1rem / var(--font-size__base));
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
}

.m-entry-form__file-drop {
  position: relative;
  padding: calc(60 * 1rem / var(--font-size__base)) calc(24 * 1rem / var(--font-size__base));
  border: 1px dashed var(--_accent);
  border-radius: calc(5 * 1rem / var(--font-size__base));
  background-color: rgba(248, 65, 3, 0.05);
  text-align: center;
  cursor: pointer;
  transition: border-color 0.2s, background-color 0.2s;
}
.m-entry-form__file-drop.is-selected {
  border-style: solid;
  background-color: rgba(248, 65, 3, 0.1);
}

.m-entry-form__file-text {
  font-size: calc(22 * 1rem / var(--font-size__base));
  line-height: 1.5;
  color: #444;
  font-weight: 400;
}

.m-entry-form__file-item {
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: calc(8 * 1rem / var(--font-size__base));
       column-gap: calc(8 * 1rem / var(--font-size__base));
}

.m-entry-form__file-item + .m-entry-form__file-item {
  -webkit-padding-before: calc(4 * 1rem / var(--font-size__base));
          padding-block-start: calc(4 * 1rem / var(--font-size__base));
}

.m-entry-form__file-remove {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: calc(20 * 1rem / var(--font-size__base));
  height: calc(20 * 1rem / var(--font-size__base));
  border-radius: calc(infinity * 1px);
  background-color: var(--_accent);
  color: #fff;
  font-size: calc(12 * 1rem / var(--font-size__base));
  line-height: 1;
  transition: opacity 0.2s;
}
.m-entry-form__file-remove:focus-visible {
  opacity: var(--opacity__hover);
}

.m-entry-form__file-note {
  font-size: calc(16 * 1rem / var(--font-size__base));
  line-height: 2.0625;
  color: #444;
}

.m-entry-form__file-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: calc(190 * 1rem / var(--font-size__base));
  height: calc(44 * 1rem / var(--font-size__base));
  border: 1px solid var(--_accent);
  border-radius: calc(infinity * 1px);
  font-size: calc(16 * 1rem / var(--font-size__base));
  line-height: 2.0625;
  color: var(--_accent);
  pointer-events: none;
  margin-top: calc(18 * 1rem / var(--font-size__base));
}

.m-entry-form__file-drop input[type=file],
.m-entry-form__file-drop .wpcf7-form-control-wrap {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
  overflow: hidden;
  pointer-events: none;
}

.m-entry-form__file-drop.is-dragover {
  border-style: solid;
  background-color: rgba(248, 65, 3, 0.15);
}

.m-entry-form__file-drop > p {
  display: contents;
}

.m-entry-form__file-drop + .wpcf7-not-valid-tip {
  display: block;
  font-size: calc(16 * 1rem / var(--font-size__base));
  color: var(--color__error);
  -webkit-padding-before: calc(4 * 1rem / var(--font-size__base));
          padding-block-start: calc(4 * 1rem / var(--font-size__base));
}

.m-entry-form .wpcf7-text,
.m-entry-form .wpcf7-tel,
.m-entry-form .wpcf7-email {
  border: 1px solid var(--color__form-border);
  border-radius: calc(5 * 1rem / var(--font-size__base));
  background-color: #fff;
  font-size: calc(22 * 1rem / var(--font-size__base));
  line-height: 1.5;
  letter-spacing: 0.04em;
  padding: calc(18 * 1rem / var(--font-size__base)) calc(24 * 1rem / var(--font-size__base));
  width: 100%;
  transition: border-color var(--duration__base);
}
.m-entry-form .wpcf7-text:focus,
.m-entry-form .wpcf7-tel:focus,
.m-entry-form .wpcf7-email:focus {
  outline: none;
  border-color: var(--_accent);
}
.m-entry-form .wpcf7-text::-moz-placeholder, .m-entry-form .wpcf7-tel::-moz-placeholder, .m-entry-form .wpcf7-email::-moz-placeholder {
  color: var(--color__form-placeholder);
}
.m-entry-form .wpcf7-text::placeholder,
.m-entry-form .wpcf7-tel::placeholder,
.m-entry-form .wpcf7-email::placeholder {
  color: var(--color__form-placeholder);
}

.m-entry-form .wpcf7-tel {
  max-width: calc(700 * 1rem / var(--font-size__base));
}

.m-entry-form .wpcf7-textarea {
  border: 1px solid var(--color__form-border);
  border-radius: calc(5 * 1rem / var(--font-size__base));
  background-color: #fff;
  font-size: calc(22 * 1rem / var(--font-size__base));
  line-height: 1.7;
  letter-spacing: 0.04em;
  padding: calc(18 * 1rem / var(--font-size__base)) calc(24 * 1rem / var(--font-size__base));
  width: 100%;
  height: calc(200 * 1rem / var(--font-size__base));
  resize: vertical;
  transition: border-color var(--duration__base);
}
.m-entry-form .wpcf7-textarea:focus {
  outline: none;
  border-color: var(--_accent);
}
.m-entry-form .wpcf7-textarea::-moz-placeholder {
  color: var(--color__form-placeholder);
}
.m-entry-form .wpcf7-textarea::placeholder {
  color: var(--color__form-placeholder);
}

.m-entry-form #your-address {
  height: calc(74 * 1rem / var(--font-size__base));
  overflow: hidden;
  resize: none;
}

.m-entry-form .wpcf7-select {
  border: none;
  border-radius: calc(6 * 1rem / var(--font-size__base));
  background-color: var(--_accent-bg);
  font-size: calc(22 * 1rem / var(--font-size__base));
  color: #444;
  line-height: 1.5;
  letter-spacing: 0.04em;
  padding-block: calc(12 * 1rem / var(--font-size__base));
  padding-right: calc(36 * 1rem / var(--font-size__base));
  padding-left: calc(24 * 1rem / var(--font-size__base));
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: var(--_select-arrow);
  background-position: right calc(24 * 1rem / var(--font-size__base)) center;
  background-repeat: no-repeat;
  background-size: calc(26.15 * 1rem / var(--font-size__base)) calc(15.56 * 1rem / var(--font-size__base));
  cursor: pointer;
  transition: opacity var(--duration__base);
  width: calc(250 * 1rem / var(--font-size__base));
}
.m-entry-form .wpcf7-select:focus {
  outline: none;
  opacity: 0.8;
}

.m-entry-form .wpcf7-form-control-wrap > .wpcf7-not-valid-tip {
  display: none;
  font-size: calc(16 * 1rem / var(--font-size__base));
  color: var(--color__error);
  margin-top: calc(4 * 1rem / var(--font-size__base));
}

.m-entry-form .wpcf7-form-control-wrap.is-submitted > .wpcf7-not-valid-tip {
  display: block;
}

.m-entry-form .wpcf7-response-output {
  font-size: calc(14 * 1rem / var(--font-size__base));
  padding: calc(12 * 1rem / var(--font-size__base)) calc(16 * 1rem / var(--font-size__base));
  border-radius: calc(5 * 1rem / var(--font-size__base));
  margin-top: calc(16 * 1rem / var(--font-size__base));
}

.m-entry-form__footer {
  --_accent: var(--color__brand-orange-light);
  --_accent-bg: rgb(248 65 3 / 0.1);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(50 * 1rem / var(--font-size__base));
  padding-top: calc(48 * 1rem / var(--font-size__base));
}
.m-entry-form__footer[hidden] {
  display: none;
}

.m-entry-form__privacy {
  padding: calc(12 * 1rem / var(--font-size__base)) calc(36 * 1rem / var(--font-size__base)) calc(12 * 1rem / var(--font-size__base)) calc(24 * 1rem / var(--font-size__base));
  background-color: var(--_accent-bg);
  border-radius: calc(6 * 1rem / var(--font-size__base));
}

.m-entry-form__privacy > p {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: calc(24 * 1rem / var(--font-size__base));
  width: 100%;
}

.m-entry-form__privacy > .wpcf7-not-valid-tip {
  font-size: calc(16 * 1rem / var(--font-size__base));
}

.m-entry-form__privacy br {
  display: none;
}

.m-entry-form__privacy .wpcf7-list-item {
  margin: 0;
}

.m-entry-form__privacy .wpcf7-list-item-label {
  display: none;
}

.m-entry-form__privacy input[type=checkbox] {
  width: calc(22 * 1rem / var(--font-size__base));
  height: calc(22 * 1rem / var(--font-size__base));
  border: 1px solid var(--_accent);
  border-radius: calc(5 * 1rem / var(--font-size__base));
  background-color: #fff;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  flex-shrink: 0;
  position: relative;
  cursor: pointer;
  transition: border-color var(--duration__base), background-color var(--duration__base);
}

.m-entry-form__privacy input[type=checkbox]:checked {
  border-color: var(--_accent);
  background-color: #fff;
}

.m-entry-form__privacy input[type=checkbox]:checked::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--_accent);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50' fill='none'%3E%3Cpath d='M9 28.8264L19.147 40.396C19.2767 40.5437 19.5122 40.5325 19.6268 40.3724L41 10.5' stroke='black' stroke-width='4' stroke-miterlimit='10' stroke-linecap='round'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50' fill='none'%3E%3Cpath d='M9 28.8264L19.147 40.396C19.2767 40.5437 19.5122 40.5325 19.6268 40.3724L41 10.5' stroke='black' stroke-width='4' stroke-miterlimit='10' stroke-linecap='round'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
}

.m-entry-form__privacy-text {
  font-size: calc(18 * 1rem / var(--font-size__base));
  line-height: 1.5;
  color: #444;
}

.m-entry-form__privacy-text a {
  color: var(--_accent);
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.m-entry-form__privacy-text a:focus-visible {
  text-decoration: none;
}

.m-entry-form__submit {
  min-width: calc(275 * 1rem / var(--font-size__base));
}

.m-entry-form__submit > p {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(24 * 1rem / var(--font-size__base));
  padding: calc(28 * 1rem / var(--font-size__base)) calc(50 * 1rem / var(--font-size__base));
  border-radius: calc(infinity * 1px);
  background-color: var(--color__black);
  cursor: pointer;
}
.m-entry-form__submit > p::after {
  content: "";
  display: block;
  width: calc(69 * 1rem / var(--font-size__base));
  height: calc(24 * 1rem / var(--font-size__base));
  background-image: url("../images/common/icon-entry-arrow.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  flex-shrink: 0;
  pointer-events: none;
}
.m-entry-form__submit > p:focus-visible::after {
  animation: arrow-slide 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.m-entry-form__submit > p:has(.m-entry-form__btn-confirm) {
  display: contents;
}

.m-entry-form__submit > p:has(input[disabled]) {
  opacity: 0.4;
  cursor: not-allowed;
}

.m-entry-form__submit .wpcf7-submit {
  padding: 0;
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 500;
  letter-spacing: 0.18em;
  color: #fff;
  cursor: pointer;
  background: none;
  border: none;
}

.wpcf7-spinner {
  display: none;
}

.m-entry-form__checkboxes .wpcf7-checkbox {
  display: flex;
  flex-direction: column;
  gap: calc(16 * 1rem / var(--font-size__base));
}

.m-entry-form__checkboxes .wpcf7-list-item {
  display: flex;
  align-items: center;
  margin: 0;
}

.m-entry-form__checkboxes .wpcf7-list-item label {
  display: flex;
  align-items: center;
  gap: calc(24 * 1rem / var(--font-size__base));
  cursor: pointer;
}

.m-entry-form__checkboxes .wpcf7-list-item-label {
  font-size: calc(22 * 1rem / var(--font-size__base));
  color: #444;
  line-height: 1.5;
}

.m-entry-form__checkboxes input[type=checkbox] {
  width: calc(50 * 1rem / var(--font-size__base));
  height: calc(50 * 1rem / var(--font-size__base));
  border: 1px solid var(--_accent);
  border-radius: calc(6 * 1rem / var(--font-size__base));
  background-color: #fff;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  flex-shrink: 0;
  position: relative;
  cursor: pointer;
  transition: background-color var(--duration__base), border-color var(--duration__base);
}

.m-entry-form__checkboxes input[type=checkbox]:checked {
  background-color: #fff;
  border-color: var(--_accent);
}

.m-entry-form__checkboxes input[type=checkbox]:checked::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--_accent);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50' fill='none'%3E%3Cpath d='M9 28.8264L19.147 40.396C19.2767 40.5437 19.5122 40.5325 19.6268 40.3724L41 10.5' stroke='black' stroke-width='4' stroke-miterlimit='10' stroke-linecap='round'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50' fill='none'%3E%3Cpath d='M9 28.8264L19.147 40.396C19.2767 40.5437 19.5122 40.5325 19.6268 40.3724L41 10.5' stroke='black' stroke-width='4' stroke-miterlimit='10' stroke-linecap='round'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
}

.m-entry-form__row:has(.m-entry-form__checkboxes) .m-entry-form__badge {
  display: inline-flex;
}

.m-entry-form__note {
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 500;
  color: var(--color__text);
  letter-spacing: 0.05em;
  line-height: 1.5;
}

.m-entry-form__zip-row {
  display: flex;
  align-items: center;
  gap: calc(16 * 1rem / var(--font-size__base));
  flex-wrap: wrap;
}
.m-entry-form__zip-row > p {
  display: contents;
}
.m-entry-form__zip-row br {
  display: none;
}

.m-entry-form__zip-row .wpcf7-text {
  width: calc(260 * 1rem / var(--font-size__base));
}

.m-entry-form__zip-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: calc(69 * 1rem / var(--font-size__base));
  padding: calc(12 * 1rem / var(--font-size__base)) calc(28 * 1rem / var(--font-size__base));
  border-radius: calc(infinity * 1px);
  background-color: var(--color__black);
  color: #fff;
  font-size: calc(15 * 1rem / var(--font-size__base));
  font-weight: 500;
  letter-spacing: 0.12em;
  cursor: pointer;
  border: none;
  white-space: nowrap;
  flex-shrink: 0;
  transition: opacity var(--duration__base);
}
.m-entry-form__zip-btn:focus-visible {
  opacity: var(--opacity__hover);
}

.m-entry-form__btn-confirm {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(24 * 1rem / var(--font-size__base));
  padding: calc(28 * 1rem / var(--font-size__base)) calc(50 * 1rem / var(--font-size__base));
  border-radius: calc(infinity * 1px);
  background-color: var(--color__black);
  color: #fff;
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.18em;
  cursor: pointer;
  border: none;
  min-height: calc(90 * 1rem / var(--font-size__base));
}
.m-entry-form__btn-confirm::after {
  content: "";
  display: block;
  width: calc(69 * 1rem / var(--font-size__base));
  height: calc(24 * 1rem / var(--font-size__base));
  background-image: url("../images/common/icon-entry-arrow.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  flex-shrink: 0;
  pointer-events: none;
}
.m-entry-form__btn-confirm:focus-visible::after {
  animation: arrow-slide 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.m-entry-confirm__rows {
  display: flex;
  flex-direction: column;
  gap: calc(40 * 1rem / var(--font-size__base));
  width: 100%;
}

.m-entry-confirm__row {
  display: flex;
  flex-direction: column;
  gap: calc(16 * 1rem / var(--font-size__base));
  padding-bottom: calc(40 * 1rem / var(--font-size__base));
  border-bottom: 1px solid var(--color__form-divider);
}
.m-entry-confirm__row[hidden] {
  display: none;
}

.m-entry-confirm__label {
  font-size: calc(22 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.7857142857;
  color: var(--color__form-label);
}

.m-entry-confirm__birth {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: calc(40 * 1rem / var(--font-size__base));
}

.m-entry-confirm__value {
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5;
  color: #444;
  white-space: pre-wrap;
  word-break: break-all;
}

.m-entry-confirm__footer {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(40 * 1rem / var(--font-size__base));
  padding-top: calc(60 * 1rem / var(--font-size__base));
}

.m-entry-form__group > .m-entry-form__row:first-child,
.m-entry-form__sub-group > .m-entry-form__row:first-child {
  padding-top: calc(40 * 1rem / var(--font-size__base));
}

.m-entry-form__row--after-groups {
  padding-top: calc(40 * 1rem / var(--font-size__base));
}

.m-entry-form--contact {
  --_accent: var(--color__brand-cyan-light);
  --_accent-bg: #f7f7f7;
  --_select-arrow: url("data:image/svg+xml,%3Csvg viewBox='0 0 26.15 15.56' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 2.09L2.15 0L13.06 11.26L24 0L26.15 2.09L13.05 15.56L0 2.09Z' fill='%23444'/%3E%3C/svg%3E");
}
.m-entry-form--contact .m-entry-form__file-drop {
  background-color: #f7f7f7;
}

.m-contact-page .m-entry__bg {
  background-color: #f7f7f7;
}

.m-contact-page .m-page-hero {
  background-color: #f7f7f7;
}

.m-contact-page .m-entry__form-card {
  background: #fff;
  -webkit-backdrop-filter: none;
          backdrop-filter: none;
}

.m-contact-page .m-entry-form__footer {
  --_accent: var(--color__brand-cyan-light);
  --_accent-bg: #f7f7f7;
}

.m-entry-thanks {
  display: flex;
  flex-direction: column;
  gap: calc(50 * 1rem / var(--font-size__base));
}

.m-entry-thanks__heading {
  font-size: calc(28 * 1rem / var(--font-size__base));
  font-weight: 500;
  color: var(--color__brand-orange-light);
  line-height: 1.7857142857;
}

.m-entry-thanks__body {
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 400;
  color: var(--color__black);
  letter-spacing: 0.05em;
  line-height: 1.5;
}
.m-entry-thanks__body p + p {
  margin-top: calc(27 * 1rem / var(--font-size__base));
}

.m-entry-thanks__notice {
  background-color: #d8f1f3;
  border-radius: calc(40 * 1rem / var(--font-size__base));
  padding: calc(80 * 1rem / var(--font-size__base));
  display: flex;
  flex-direction: column;
}

.m-entry-thanks__notice-title {
  font-size: calc(28 * 1rem / var(--font-size__base));
  font-weight: 500;
  color: var(--color__black);
  line-height: 1.7857142857;
}

.m-entry-thanks__notice-body {
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 400;
  color: var(--color__black);
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin-top: calc(28 * 1rem / var(--font-size__base));
}

.m-entry-thanks__notice-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: calc(300 * 1rem / var(--font-size__base));
  height: calc(50 * 1rem / var(--font-size__base));
  padding-inline: calc(24 * 1rem / var(--font-size__base));
  border-radius: calc(infinity * 1px);
  background-color: var(--color__brand-cyan-light);
  color: #fff;
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 500;
  letter-spacing: 0.05em;
  text-decoration: none;
  align-self: flex-start;
  margin-top: calc(40 * 1rem / var(--font-size__base));
  transition: opacity 0.2s;
}
.m-entry-thanks__notice-btn:focus-visible {
  opacity: var(--opacity__hover);
}

.m-entry-thanks__button {
  padding-top: calc(30 * 1rem / var(--font-size__base));
}

.m-energy-area {
  position: relative;
  padding-top: calc(115 * 1rem / var(--font-size__base));
  padding-bottom: calc(100 * 1rem / var(--font-size__base));
  overflow: hidden;
}

.m-energy-area__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: var(--_bg-pc);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100% 100%;
  max-width: calc(1920 * 1rem / var(--font-size__base));
  margin-inline: auto;
}

.m-energy-area__inner {
  position: relative;
  z-index: 2;
}

.m-energy-area__content {
  display: flex;
  flex-direction: column;
  gap: calc(40 * 1rem / var(--font-size__base));
}

.m-energy-area__text {
  display: flex;
  flex-direction: column;
}

.m-energy-area__title {
  display: grid;
}

.m-energy-area__title-prefix {
  font-size: calc(32 * 1rem / var(--font-size__base));
  font-weight: 600;
  color: #fff;
  letter-spacing: 0.08em;
  line-height: 1.25;
}

.m-energy-area__title-main {
  display: block;
  font-size: calc(64 * 1rem / var(--font-size__base));
  font-weight: 800;
  letter-spacing: 0.04em;
  line-height: 1.4375;
  color: #fff;
}

.m-energy-area__badges {
  display: flex;
  align-items: center;
  gap: calc(24 * 1rem / var(--font-size__base));
  flex-wrap: wrap;
  padding-top: calc(28 * 1rem / var(--font-size__base));
}

.m-energy-area__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding-top: 0;
  padding-bottom: calc(4 * 1rem / var(--font-size__base));
  padding-inline: calc(24 * 1rem / var(--font-size__base));
  font-size: calc(44 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.4545454545;
  border-radius: calc(12 * 1rem / var(--font-size__base));
  background-color: var(--color__brand-cyan);
  color: #fff;
  box-shadow: 0 0 calc(20 * 1rem / var(--font-size__base)) #5fbfc6;
}

.m-energy-area__badge-alpha {
  margin-left: calc(-3 * 1rem / var(--font-size__base));
}

.m-energy-area__badge-separator {
  font-size: calc(48 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.1666666667;
}

.m-energy-area__description {
  padding-top: calc(30 * 1rem / var(--font-size__base));
  font-size: calc(24 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 2.3333333333;
}

.m-energy-area__illustration {
  display: flex;
  justify-content: flex-end;
  padding-top: calc(14 * 1rem / var(--font-size__base));
  max-width: calc(1920 * 1rem / var(--font-size__base));
  margin-inline: auto;
}

.m-energy-area__illustration-image {
  width: 100%;
  height: auto;
}

.m-energy-area__town {
  display: block;
}
.m-energy-area__town picture,
.m-energy-area__town img {
  display: block;
  width: 100%;
  height: auto;
}

.m-energy-area__town--base {
  --_width__base: 1371;
  position: relative;
  width: calc(var(--_width__base) * 1rem / var(--font-size__base));
  margin-right: calc(88 / 1920 * 100vw);
  margin-left: calc(200 / 1920 * 100vw);
}

.m-energy-area__town--01,
.m-energy-area__town--02,
.m-energy-area__town--03,
.m-energy-area__town--04 {
  position: absolute;
  cursor: pointer;
  transition: transform 0.3s ease;
}
.m-energy-area__town--01:focus-visible,
.m-energy-area__town--02:focus-visible,
.m-energy-area__town--03:focus-visible,
.m-energy-area__town--04:focus-visible {
  transform: translateY(calc(-10 * 1rem / var(--font-size__base)));
}

.m-energy-area__town--01 {
  top: calc(273 / var(--_width__base) * 100%);
  left: calc(269 / var(--_width__base) * 100%);
  width: calc(440 / var(--_width__base) * 100%);
  pointer-events: none;
  cursor: default;
}

.m-energy-area__town--02 {
  bottom: calc(-84 / var(--_width__base) * 100%);
  left: calc(329 / var(--_width__base) * 100%);
  width: calc(300 / var(--_width__base) * 100%);
}

.m-energy-area__town--03 {
  top: calc(590 / var(--_width__base) * 100%);
  right: calc(219 / var(--_width__base) * 100%);
  width: calc(387 / var(--_width__base) * 100%);
}

.m-energy-area__town--04 {
  bottom: calc(346 / var(--_width__base) * 100%);
  left: calc(-93 / var(--_width__base) * 100%);
  width: calc(207 / var(--_width__base) * 100%);
}

.m-energy-area__steps {
  max-width: calc(1000 * 1rem / var(--font-size__base));
  padding-top: calc(38 * 1rem / var(--font-size__base));
}

.m-energy-area__steps-heading {
  font-size: calc(40 * 1rem / var(--font-size__base));
  font-weight: 800;
  color: #fff;
  letter-spacing: 0.04em;
  line-height: 1;
  text-shadow: 0 0 calc(20 * 1rem / var(--font-size__base)) rgba(0, 0, 0, 0.1);
}

.m-energy-area__steps-list {
  display: flex;
  gap: calc(20 * 1rem / var(--font-size__base));
  padding-top: calc(53 * 1rem / var(--font-size__base));
  list-style: none;
}

.m-energy-area__step {
  flex: 1;
}

.m-energy-area__step-circle {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  background-color: #fff;
  border-radius: 50%;
  padding-inline: calc(10 * 1rem / var(--font-size__base));
  padding-top: calc(10 * 1rem / var(--font-size__base));
  padding-bottom: calc(10 * 1rem / var(--font-size__base));
}

.m-energy-area__step-number {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(50 * 1rem / var(--font-size__base));
  height: calc(50 * 1rem / var(--font-size__base));
  border-radius: 50%;
  background-color: var(--color__brand-cyan);
  font-family: var(--font-family__montserrat);
  font-size: calc(30 * 1rem / var(--font-size__base));
  font-weight: 800;
  color: #fff;
  line-height: 1;
}

.m-energy-area__step-main {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: calc(84 * 1rem / var(--font-size__base));
  font-size: calc(22 * 1rem / var(--font-size__base));
  font-weight: 600;
  color: #288288;
  text-align: center;
  line-height: 1.1818181818;
  letter-spacing: 0.048em;
}

.m-energy-area__step-main-note {
  font-size: calc(18 * 1rem / var(--font-size__base));
  color: #333;
  -webkit-padding-before: calc(4 * 1rem / var(--font-size__base));
          padding-block-start: calc(4 * 1rem / var(--font-size__base));
}

.m-energy-area__step-sub {
  display: flex;
  align-items: center;
  height: calc(56 * 1rem / var(--font-size__base));
  font-size: calc(14 * 1rem / var(--font-size__base));
  font-weight: 600;
  color: #333;
  text-align: center;
  line-height: 1.2857142857;
  letter-spacing: 0.016em;
}

.m-energy-area__label {
  position: absolute;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding-inline: calc(50 * 1rem / var(--font-size__base));
  padding-top: calc(10 * 1rem / var(--font-size__base));
  padding-bottom: calc(14 * 1rem / var(--font-size__base));
  background-color: var(--color__brand-orange);
  color: #fff;
  font-size: calc(22 * 1rem / var(--font-size__base));
  font-weight: 700;
  letter-spacing: 0.056em;
  line-height: 1.4545454545;
  border-radius: calc(999 * 1rem / var(--font-size__base));
  white-space: nowrap;
  text-align: center;
}

.m-energy-area__town--02 .m-energy-area__label {
  top: -37%;
  left: 36%;
  transform: translateX(-50%);
  padding-inline: calc(31 * 1rem / var(--font-size__base));
}

.m-energy-area__town--03 .m-energy-area__label {
  top: -31.4%;
  left: -23.6%;
}

.m-energy-area__town--04 .m-energy-area__label {
  top: -59%;
  left: -10%;
}

.m-drawer {
  --_duration: var(--duration__base);
  --_color-en: var(--color__brand-orange-light);
  --_color-ja: #666;
  position: fixed;
  z-index: var(--_z-index--header-drawer, 99);
  inset: 0;
  transition: visibility var(--_duration);
  visibility: hidden;
  pointer-events: none;
}

.m-drawer__backdrop {
  position: fixed;
  z-index: 1;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
  transition: opacity var(--_duration), visibility var(--_duration);
  opacity: 0;
  visibility: hidden;
}

.m-drawer__wrapper {
  position: fixed;
  z-index: 2;
  top: calc(55 * 1rem / var(--font-size__base));
  right: calc(47 * 1rem / var(--font-size__base));
  max-height: calc(100dvh - 75 * 1rem / var(--font-size__base));
  overflow-y: auto;
  width: min(100% - 40 * 1rem / var(--font-size__base), 400 * 1rem / var(--font-size__base));
  transform: translateX(calc(100% + 47 * 1rem / var(--font-size__base)));
  transition: transform var(--_duration) ease-out, opacity var(--_duration), visibility var(--_duration);
  opacity: 0;
  visibility: hidden;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
  border-radius: calc(57 * 1rem / var(--font-size__base));
}

.m-drawer__content {
  position: relative;
  display: flex;
  flex-direction: column;
  max-height: calc(510 * 1rem / var(--font-size__base));
  overflow-y: auto;
  background-color: #fff;
  border-radius: calc(57 * 1rem / var(--font-size__base));
  padding: calc(49 * 1rem / var(--font-size__base)) calc(110 * 1rem / var(--font-size__base)) calc(63 * 1rem / var(--font-size__base)) calc(60 * 1rem / var(--font-size__base));
}

.m-drawer__nav {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.m-drawer__links {
  display: flex;
  flex-direction: column;
  gap: calc(25 * 1rem / var(--font-size__base));
}

.m-drawer__link {
  display: flex;
  align-items: baseline;
  gap: calc(15 * 1rem / var(--font-size__base));
  transition: opacity var(--_duration);
}
.m-drawer__link:focus-visible {
  opacity: var(--opacity__hover);
}

.m-drawer__link-en {
  color: var(--_color-en);
  font-family: var(--font-family__jost);
  font-size: calc(15 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1;
}

.m-drawer__link-ja {
  color: var(--_color-ja);
  font-size: calc(12 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0.18em;
  line-height: 1;
}

.m-drawer__link-text {
  display: flex;
  flex-direction: column;
  gap: calc(4 * 1rem / var(--font-size__base));
}

.m-drawer__link--accordion {
  width: 100%;
  flex-direction: row;
  align-items: center;
  gap: calc(10 * 1rem / var(--font-size__base));
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
  padding: 0;
}

.m-drawer__accordion-icon {
  position: relative;
  flex-shrink: 0;
  width: calc(14 * 1rem / var(--font-size__base));
  height: calc(14 * 1rem / var(--font-size__base));
  margin-left: auto;
}
.m-drawer__accordion-icon::before, .m-drawer__accordion-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: var(--_color-ja);
  transition: transform var(--duration__base);
}
.m-drawer__accordion-icon::before {
  width: calc(14 * 1rem / var(--font-size__base));
  height: 1px;
  transform: translate(-50%, -50%);
}
.m-drawer__accordion-icon::after {
  width: 1px;
  height: calc(14 * 1rem / var(--font-size__base));
  transform: translate(-50%, -50%);
}

.js-accordion__button[aria-expanded=true] .m-drawer__accordion-icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.m-drawer__sub-links {
  display: flex;
  flex-direction: column;
  gap: calc(16 * 1rem / var(--font-size__base));
  padding-top: calc(16 * 1rem / var(--font-size__base));
  padding-left: calc(16 * 1rem / var(--font-size__base));
}

.m-drawer__sub-link {
  display: block;
  color: var(--_color-ja);
  font-size: calc(12 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0.18em;
  line-height: 1;
  text-decoration: none;
  transition: opacity var(--duration__base);
}
.m-drawer__sub-link:focus-visible {
  opacity: var(--opacity__hover);
}

.m-drawer__close {
  position: absolute;
  right: calc(62 * 1rem / var(--font-size__base));
  bottom: calc(26 * 1rem / var(--font-size__base));
  width: calc(40 * 1rem / var(--font-size__base));
  height: calc(40 * 1rem / var(--font-size__base));
  display: grid;
  place-items: center;
  transition: opacity var(--_duration);
}
.m-drawer__close:focus-visible {
  opacity: var(--opacity__hover);
}

.m-drawer__close-icon {
  position: relative;
  width: calc(34 * 1rem / var(--font-size__base));
  height: calc(34 * 1rem / var(--font-size__base));
}
.m-drawer__close-icon::before, .m-drawer__close-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 2px;
  background-color: #999;
}
.m-drawer__close-icon::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.m-drawer__close-icon::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.m-header--recruit .m-drawer__backdrop {
  background-color: transparent;
  background-image: url("../images/recruit/mv-overlay.svg");
  background-size: cover;
  background-position: center;
}

/* 開いた時 */
.m-drawer.is-visible {
  visibility: visible;
  pointer-events: auto;
}

.m-drawer.is-visible .m-drawer__backdrop {
  opacity: 1;
  visibility: visible;
}

.m-drawer.is-visible .m-drawer__wrapper {
  transform: translateX(0);
  opacity: 1;
  visibility: visible;
}

.m-cta-recruit {
  position: relative;
  overflow: hidden;
}

.m-cta-recruit__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.m-cta-recruit__bg-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-cta-recruit__inner {
  position: relative;
  z-index: 1;
  padding-top: calc(106 * 1rem / var(--font-size__base));
  padding-bottom: calc(85 * 1rem / var(--font-size__base));
}

.m-cta-recruit__cards {
  display: flex;
  gap: min(124 / 1920 * 100vw, 124 * 1rem / var(--font-size__base));
  align-items: stretch;
}

.m-cta-recruit__cards .m-cta-card:first-child {
  flex: 707;
}

.m-cta-recruit__cards .m-cta-card:last-child {
  flex: 622;
}

.m-cta-card {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  text-decoration: none;
  color: inherit;
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-backdrop-filter: blur(calc(30 * 1rem / var(--font-size__base))) brightness(0.5) opacity(0.51);
          backdrop-filter: blur(calc(30 * 1rem / var(--font-size__base))) brightness(0.5) opacity(0.51);
  border-radius: calc(40 * 1rem / var(--font-size__base));
  min-height: calc(519 * 1rem / var(--font-size__base));
  padding-top: calc(185 * 1rem / var(--font-size__base));
  padding-bottom: calc(44 * 1rem / var(--font-size__base));
  padding-left: calc(67 * 1rem / var(--font-size__base));
  padding-right: calc(50 * 1rem / var(--font-size__base));
  transition: -webkit-backdrop-filter var(--duration__base);
  transition: backdrop-filter var(--duration__base);
  transition: backdrop-filter var(--duration__base), -webkit-backdrop-filter var(--duration__base);
}
.m-cta-card:focus-visible {
  -webkit-backdrop-filter: blur(0) brightness(0.5) opacity(0.51);
          backdrop-filter: blur(0) brightness(0.5) opacity(0.51);
}
.m-cta-card:focus-visible::before {
  --_mask-position: 100%;
}
.m-cta-card::before {
  --_mask-position: 0%;
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-color: rgb(255, 255, 255);
  -webkit-mask-image: url("../images/common/mask.png");
  mask-image: url("../images/common/mask.png");
  -webkit-mask-size: 100% 600%;
  mask-size: 100% 600%;
  -webkit-mask-position: 0 var(--_mask-position);
  mask-position: 0 var(--_mask-position);
  transition: -webkit-mask-position 1.1s;
  transition: mask-position 1.1s;
  transition: mask-position 1.1s, -webkit-mask-position 1.1s;
}

.m-cta-card__title {
  z-index: 1;
}

.m-cta-card__subtitle {
  z-index: 1;
  display: block;
  align-self: flex-start;
  font-size: calc(28 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.0714285714;
  letter-spacing: 0.4em;
  color: #030303;
  padding-top: calc(26 * 1rem / var(--font-size__base));
}
.m-cta-card__subtitle::after {
  content: "";
  display: block;
  width: calc(100% - 0.4em);
  height: 2px;
  background-color: #030303;
  margin-top: calc(26 * 1rem / var(--font-size__base));
}

.m-cta-card__line {
  display: none;
}

.m-cta-card__footer {
  z-index: 1;
  display: flex;
  justify-content: flex-end;
  margin-top: auto;
  padding-top: calc(40 * 1rem / var(--font-size__base));
}

.m-cta-card__button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(44 * 1rem / var(--font-size__base));
  height: calc(44 * 1rem / var(--font-size__base));
  background-color: #605e5e;
  border-radius: 50%;
  padding-right: calc(3 * 1rem / var(--font-size__base));
}

.m-cta-card__button-icon {
  display: block;
  width: calc(9 * 1rem / var(--font-size__base));
  height: calc(9 * 1rem / var(--font-size__base));
  border-top: calc(2 * 1rem / var(--font-size__base)) solid #fff;
  border-right: calc(2 * 1rem / var(--font-size__base)) solid #fff;
  transform: rotate(45deg);
}

.m-cta-card__button-icon::before,
.m-cta-card__button-icon::after {
  content: none;
}

@keyframes cta-button-char {
  0% {
    opacity: 0.3;
    transform: translateY(0.4em);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.m-cta-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: calc(400 * 1rem / var(--font-size__base));
  height: calc(91 * 1rem / var(--font-size__base));
  background-color: #050505;
  border-radius: calc(46 * 1rem / var(--font-size__base));
  color: #fff;
  text-decoration: none;
  transition: background-color var(--duration__base), color var(--duration__base);
}
.m-cta-button:focus-visible {
  background-color: var(--color__brand-orange-light);
  color: #000;
}
.m-cta-button:focus-visible .m-cta-button__char {
  animation-name: cta-button-char;
  animation-delay: calc(var(--_i) * 0.015s);
}

.m-cta-button__text {
  display: inline-flex;
  gap: 0.18em;
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.5;
}

.m-cta-button__char {
  display: inline-block;
  animation-duration: 0.5s;
  animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  animation-fill-mode: both;
}

.m-cta-button__arrow {
  position: absolute;
  top: 50%;
  right: calc(32 * 1rem / var(--font-size__base));
  transform: translateY(-50%);
  width: calc(11 * 1rem / var(--font-size__base));
  aspect-ratio: 12.506/23.599;
}

.m-contact {
  position: relative;
  padding-block: calc(148 * 1rem / var(--font-size__base));
  overflow-x: clip;
}

.m-contact__ittan-momen {
  position: absolute;
  top: calc(-806 * 1rem / var(--font-size__base));
  right: calc(-790 * 1rem / var(--font-size__base));
  width: calc(1758 * 1rem / var(--font-size__base));
  pointer-events: none;
  z-index: -1;
  color: #f26522;
}

.m-contact__ittan-momen svg {
  display: block;
  width: 100%;
  height: auto;
  transform: rotate(143deg);
}

.m-contact__inner {
  position: relative;
}

.m-contact__title {
  position: relative;
  z-index: 3;
  color: var(--color__brand-orange);
}

.m-contact__content {
  --_width__left: 720;
  --_width__right: 360;
  --_column-gap: 40;
  position: relative;
  z-index: 2;
  align-items: center;
  margin-top: calc(-35 * 1rem / var(--font-size__base));
  padding-block: calc(79 * 1rem / var(--font-size__base));
  padding-inline: calc(80 * 1rem / var(--font-size__base));
}
.m-contact__content::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-color: #f7f7f7;
}

.m-contact__text {
  position: relative;
  z-index: 1;
  font-size: calc(24 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 2.3333333333;
}

.m-contact__button-wrapper {
  position: relative;
  z-index: 1;
}

.m-contact-page .m-page-title-recruit {
  color: var(--color__brand-cyan);
}

.m-contact-page .m-page-title-recruit__sub {
  color: var(--color__brand-cyan);
}

.m-contact-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: calc(16 * 1rem / var(--font-size__base));
  width: 100%;
  padding-inline: calc(25 * 1rem / var(--font-size__base));
  padding-block: calc(25 * 1rem / var(--font-size__base));
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 700;
  letter-spacing: 0.056em;
  line-height: 1.45;
  color: #fff;
  background: linear-gradient(to right, #fff 50%, var(--color__brand-orange) 50%);
  background-size: 200% 100%;
  background-position: right;
  border-radius: calc(16 * 1rem / var(--font-size__base));
  text-decoration: none;
  transition: color 0.4s cubic-bezier(0.22, 1, 0.36, 1), background-position 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}
.m-contact-button:focus-visible {
  color: var(--color__brand-orange);
  background-position: left;
}

.m-contact-button__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(22 * 1rem / var(--font-size__base));
  height: calc(22 * 1rem / var(--font-size__base));
  color: var(--color__brand-cyan);
}
.m-contact-button__icon svg {
  width: 100%;
  height: 100%;
}

.m-company-page__body {
  padding-block: calc(180 * 1rem / var(--font-size__base));
}

.m-company-info__list {
  margin-top: calc(60 * 1rem / var(--font-size__base));
  padding-block: calc(100 * 1rem / var(--font-size__base));
  padding-inline: calc(150 * 1rem / var(--font-size__base));
  border-radius: calc(75 * 1rem / var(--font-size__base));
}

.m-company-info__item {
  display: flex;
  align-items: center;
  padding-block: calc(40 * 1rem / var(--font-size__base));
  border-bottom: 1px solid var(--color__gray-200);
}

.m-company-info__item:first-child {
  border-top: 1px solid var(--color__gray-200);
}

.m-company-info__label {
  min-width: calc(200 * 1rem / var(--font-size__base));
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.5;
}

.m-company-info__value {
  flex: 1;
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.5;
}

.m-case-single__header-section {
  padding-top: calc(180 * 1rem / var(--font-size__base));
}

.m-case-single__content-section {
  padding-top: calc(180 * 1rem / var(--font-size__base));
}

.m-case-single__related-section {
  padding-top: calc(180 * 1rem / var(--font-size__base));
}

.m-case-single__back-section {
  padding-top: calc(80 * 1rem / var(--font-size__base));
  padding-bottom: calc(180 * 1rem / var(--font-size__base));
}

.m-case-single__back {
  display: flex;
  justify-content: center;
}

.m-case-single-header__inner {
  display: grid;
  grid-template-columns: 1fr calc(600 * 1rem / var(--font-size__base));
  gap: calc(80 * 1rem / var(--font-size__base));
  align-items: start;
}

.m-case-single-header__content {
  display: flex;
  flex-direction: column;
  gap: calc(24 * 1rem / var(--font-size__base));
}

.m-case-single-header__tags {
  display: flex;
  flex-wrap: wrap;
  gap: calc(8 * 1rem / var(--font-size__base));
}

.m-case-single-header__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding-top: calc(4 * 1rem / var(--font-size__base));
  padding-bottom: calc(4 * 1rem / var(--font-size__base));
  padding-inline: calc(12 * 1rem / var(--font-size__base));
  font-size: calc(14 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.4285714286;
  color: #fff;
  background-color: var(--color__brand-orange);
  border-radius: calc(99 * 1rem / var(--font-size__base));
}

.m-case-single-header__title-area {
  padding-bottom: calc(24 * 1rem / var(--font-size__base));
  border-bottom: 1px solid var(--color__brand-cyan);
}

.m-case-single-header__title {
  display: flex;
  flex-direction: column;
  font-size: calc(30 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.6666666667;
}

.m-case-single-header__details {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.m-case-single-header__detail {
  display: flex;
  gap: calc(24 * 1rem / var(--font-size__base));
  font-size: calc(16 * 1rem / var(--font-size__base));
  line-height: 2;
}

.m-case-single-header__detail-label {
  font-weight: 500;
  flex-shrink: 0;
}

.m-case-single-header__detail-value {
  font-weight: 400;
}

.m-case-single-header__image img {
  aspect-ratio: 600/400;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-case-single-header__lead {
  padding-top: calc(40 * 1rem / var(--font-size__base));
}

.m-case-single-header__lead-text {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.625;
  padding-top: calc(40 * 1rem / var(--font-size__base));
}

.m-case-page__body {
  padding-block: calc(180 * 1rem / var(--font-size__base));
}

.m-case-page__list + .m-case-page__list {
  padding-top: calc(140 * 1rem / var(--font-size__base));
}

.m-case-list__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  -moz-column-gap: calc(24 * 1rem / var(--font-size__base));
       column-gap: calc(24 * 1rem / var(--font-size__base));
  row-gap: calc(40 * 1rem / var(--font-size__base));
  padding-top: calc(40 * 1rem / var(--font-size__base));
}

.m-case-list__more {
  display: flex;
  justify-content: flex-end;
  padding-top: calc(40 * 1rem / var(--font-size__base));
}

.m-case-list--5col .m-case-list__grid {
  grid-template-columns: repeat(5, 1fr);
}

.m-card {
  --_hover-offset: calc(24 * 1rem / var(--font-size__base));
  display: block;
  width: 100%;
  padding-inline: calc(10 * 1rem / var(--font-size__base));
  padding-top: calc(10 * 1rem / var(--font-size__base));
  padding-bottom: calc(32 * 1rem / var(--font-size__base));
  background-color: #fff;
  border-radius: calc(10 * 1rem / var(--font-size__base));
  box-shadow: 0 calc(3 * 1rem / var(--font-size__base)) calc(20 * 1rem / var(--font-size__base)) rgba(0, 0, 0, 0.1);
  overflow: hidden;
  transition: transform var(--duration__base);
}
.m-card:focus-visible {
  transform: translateY(calc(var(--_hover-offset) * -1));
}

.m-card__image {
  position: relative;
  aspect-ratio: 340/227;
  overflow: hidden;
  border-radius: calc(8 * 1rem / var(--font-size__base));
}
.m-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: calc(2 * 1rem / var(--font-size__base));
}

.m-card__body {
  padding-top: calc(24 * 1rem / var(--font-size__base));
  padding-inline: calc(20 * 1rem / var(--font-size__base));
}

.m-card__tags {
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  align-items: flex-start;
  gap: calc(8 * 1rem / var(--font-size__base));
}

.m-card__tag {
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: calc(6 * 1rem / var(--font-size__base)) calc(15 * 1rem / var(--font-size__base));
  font-size: calc(12 * 1rem / var(--font-size__base));
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.4;
  border-radius: 999px;
  background-color: var(--color__brand-orange);
  color: #fff;
}

.m-card__tag--outline {
  background-color: transparent;
  border: 1px solid var(--color__brand-orange);
  color: var(--color__brand-orange);
}

.m-card__title {
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.5;
  padding-top: calc(15 * 1rem / var(--font-size__base));
}

.m-card__details {
  display: flex;
  flex-direction: column;
  gap: calc(8 * 1rem / var(--font-size__base));
  padding-top: calc(20 * 1rem / var(--font-size__base));
}

.m-card__detail {
  display: flex;
  gap: calc(8 * 1rem / var(--font-size__base));
  font-size: calc(14 * 1rem / var(--font-size__base));
  letter-spacing: 0.05em;
  line-height: 1.5;
}

.m-card__detail-label {
  flex-shrink: 0;
  font-weight: 500;
}

.m-card-trigger {
  --_border-radius: 0;
  position: absolute;
  inset: 0;
  z-index: 3;
  width: 100%;
  height: 100%;
  background-color: transparent;
  border: none;
  border-radius: var(--_border-radius);
  cursor: pointer;
}

.m-button {
  --_color__bg: var(--color__black);
  --_color__text: #fff;
  --_color__hover-bg: #3a3a3a;
  --_duration: 1.1s;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  width: calc(292 * 1rem / var(--font-size__base));
  padding-block: calc(34 * 1rem / var(--font-size__base));
  padding-inline: calc(20 * 1rem / var(--font-size__base));
  color: var(--_color__text);
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 700;
  letter-spacing: 0.18em;
  line-height: 1;
  background-color: var(--_color__bg);
  border-radius: 9999px;
  overflow: hidden;
  touch-action: manipulation;
}
.m-button:focus-visible::before {
  --_mask-position: 100%;
}
.m-button::before {
  --_mask-position: 0%;
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  background-color: var(--_color__hover-bg);
  -webkit-mask-image: url("../images/common/mask.png");
  mask-image: url("../images/common/mask.png");
  -webkit-mask-size: 100% 600%;
  mask-size: 100% 600%;
  -webkit-mask-position: 0 var(--_mask-position);
  mask-position: 0 var(--_mask-position);
  transition: -webkit-mask-position var(--_duration);
  transition: mask-position var(--_duration);
  transition: mask-position var(--_duration), -webkit-mask-position var(--_duration);
}

.m-button__text {
  position: relative;
  z-index: 1;
}

.m-button--sm {
  width: calc(260 * 1rem / var(--font-size__base));
  padding-block: calc(19 * 1rem / var(--font-size__base));
}

.m-button--invert {
  --_color__bg: #fff;
  --_color__text: var(--color__button-text);
  --_color__hover-bg: var(--color__black);
}

.m-button-simple {
  display: inline-block;
  padding-inline: calc(24 * 1rem / var(--font-size__base));
  padding-block: calc(14 * 1rem / var(--font-size__base));
  font-size: calc(15 * 1rem / var(--font-size__base));
  font-weight: 700;
  letter-spacing: 0.056em;
  line-height: 1.6;
  color: #fff;
  background-color: var(--color__brand-cyan);
  border-radius: calc(999 * 1rem / var(--font-size__base));
  text-decoration: none;
  transition: opacity var(--duration__base);
}
.m-button-simple:focus-visible {
  opacity: var(--opacity__hover);
}

.m-business-intro {
  position: relative;
  padding-top: calc(117 * 1rem / var(--font-size__base));
  padding-bottom: calc(82 * 1rem / var(--font-size__base));
}

.m-business-intro__bg {
  position: absolute;
  top: calc(161 * 1rem / var(--font-size__base));
  left: 0;
  right: 0;
  z-index: -1;
  height: calc(506 * 1rem / var(--font-size__base));
}

.m-business-intro__bg-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-business-intro__visual {
  position: relative;
  z-index: 1;
}

.m-business-intro__visual-inner {
  position: relative;
}

.m-business-intro__catch {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: calc(80 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.04em;
  color: #fff;
  text-shadow: 0 0 calc(20 * 1rem / var(--font-size__base)) var(--color__brand-navy);
}

.m-business-intro__catch-line {
  display: flex;
  align-items: center;
}

.m-business-intro__catch-subline {
  display: flex;
  align-items: center;
}

.m-business-intro__char {
  display: inline-block;
  letter-spacing: 0.04em;
}

.m-business-intro__char--tight {
  letter-spacing: -0.05em;
}

.m-business-intro__button-wrapper {
  display: grid;
  justify-content: center;
  padding-top: calc(112 * 1rem / var(--font-size__base));
}

.m-back-pill-button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(16 * 1rem / var(--font-size__base));
  height: calc(80 * 1rem / var(--font-size__base));
  padding-inline: calc(50 * 1rem / var(--font-size__base));
  border-radius: calc(infinity * 1px);
  border: none;
  background-color: #999;
  color: #fff;
  font-size: calc(15 * 1rem / var(--font-size__base));
  font-weight: 500;
  letter-spacing: 0.18em;
  cursor: pointer;
  white-space: nowrap;
}
.m-back-pill-button::before {
  content: "";
  display: block;
  width: calc(56 * 1rem / var(--font-size__base));
  height: calc(20 * 1rem / var(--font-size__base));
  background-image: url("../images/common/icon-entry-arrow.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  flex-shrink: 0;
  transform: scaleX(-1);
  pointer-events: none;
}
.m-back-pill-button:focus-visible::before {
  animation: back-pill-button-slide-left 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
}

@keyframes back-pill-button-slide-left {
  0% {
    transform: scaleX(-1) translateX(0);
    opacity: 1;
  }
  40% {
    transform: scaleX(-1) translateX(100%);
    opacity: 0;
  }
  41% {
    transform: scaleX(-1) translateX(-100%);
    opacity: 0;
  }
  100% {
    transform: scaleX(-1) translateX(0);
    opacity: 1;
  }
}
.m-back-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: calc(38 * 1rem / var(--font-size__base));
  padding-top: calc(14 * 1rem / var(--font-size__base));
  padding-bottom: calc(14 * 1rem / var(--font-size__base));
  padding-inline: calc(24 * 1rem / var(--font-size__base));
  font-size: calc(14 * 1rem / var(--font-size__base));
  font-weight: 500;
  line-height: 1.4285714286;
  letter-spacing: 0.02em;
  color: #626262;
  text-decoration: none;
  background-color: var(--color__gray-100);
  border-radius: calc(99 * 1rem / var(--font-size__base));
  overflow: hidden;
  transition: color var(--duration__base);
}
.m-back-button:focus-visible {
  color: #fff;
}
.m-back-button:focus-visible::before {
  width: 100%;
}

.m-back-button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  z-index: 0;
  width: 0;
  background-color: var(--color__brand-cyan);
  border-radius: calc(99 * 1rem / var(--font-size__base));
  transition: width 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.m-back-button__icon {
  position: relative;
  z-index: 1;
  flex-shrink: 0;
  width: calc(22 * 1rem / var(--font-size__base));
  height: calc(22 * 1rem / var(--font-size__base));
  background-image: url("../images/common/arrow-circle-back.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.m-back-button__text {
  position: relative;
  z-index: 1;
}

.m-article-content {
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 1.5555555556;
  letter-spacing: 0.056em;
}

.m-article-content > *:first-child {
  margin-top: 0;
}

.m-article-content p {
  margin-top: calc(28 * 1rem / var(--font-size__base));
}

.m-article-content strong,
.m-article-content b {
  font-weight: 700;
}

.m-article-content em,
.m-article-content i {
  font-style: italic;
}

.m-article-content code {
  padding-inline: calc(6 * 1rem / var(--font-size__base));
  padding-block: calc(2 * 1rem / var(--font-size__base));
  font-family: var(--font-family__monospace, monospace);
  font-size: 0.9em;
  background-color: var(--color__gray-100);
  border-radius: calc(4 * 1rem / var(--font-size__base));
}

.m-article-content mark {
  padding-inline: calc(4 * 1rem / var(--font-size__base));
  background-color: #fff3cd;
}

.m-article-content s,
.m-article-content del {
  text-decoration: line-through;
}

.m-article-content sub {
  font-size: 0.75em;
  vertical-align: sub;
}

.m-article-content sup {
  font-size: 0.75em;
  vertical-align: super;
}

.m-article-content h2 {
  margin-top: calc(80 * 1rem / var(--font-size__base));
  padding-bottom: calc(8 * 1rem / var(--font-size__base));
  font-size: calc(30 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.6666666667;
  border-bottom: 1px solid var(--color__brand-cyan);
}

.m-article-content h2 + p,
.m-article-content h2 + h3,
.m-article-content h2 + ul,
.m-article-content h2 + ol {
  margin-top: calc(40 * 1rem / var(--font-size__base));
}

.m-article-content h3 {
  margin-top: calc(40 * 1rem / var(--font-size__base));
  font-size: calc(23 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.044em;
}

.m-article-content h3 + p,
.m-article-content h3 + ul,
.m-article-content h3 + ol {
  margin-top: calc(16 * 1rem / var(--font-size__base));
}

.m-article-content h4 {
  margin-top: calc(32 * 1rem / var(--font-size__base));
  padding-left: calc(12 * 1rem / var(--font-size__base));
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.8;
  border-left: calc(3 * 1rem / var(--font-size__base)) solid #ccc;
}

.m-article-content h4 + p,
.m-article-content h4 + ul,
.m-article-content h4 + ol {
  margin-top: calc(12 * 1rem / var(--font-size__base));
}

.m-article-content h5 {
  margin-top: calc(24 * 1rem / var(--font-size__base));
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.7777777778;
}

.m-article-content h5 + p {
  margin-top: calc(8 * 1rem / var(--font-size__base));
}

.m-article-content h6 {
  margin-top: calc(24 * 1rem / var(--font-size__base));
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.75;
}

.m-article-content h6 + p {
  margin-top: calc(8 * 1rem / var(--font-size__base));
}

.m-article-content ul,
.m-article-content ol {
  margin-top: calc(24 * 1rem / var(--font-size__base));
  padding-left: calc(24 * 1rem / var(--font-size__base));
}

.m-article-content ul {
  list-style-type: disc;
}

.m-article-content ol {
  list-style-type: decimal;
}

.m-article-content li {
  margin-top: calc(8 * 1rem / var(--font-size__base));
}

.m-article-content li:first-child {
  margin-top: 0;
}

.m-article-content li ul,
.m-article-content li ol {
  margin-top: calc(8 * 1rem / var(--font-size__base));
}

.m-article-content ul ul {
  list-style-type: circle;
}

.m-article-content ul ul ul {
  list-style-type: square;
}

.m-article-content blockquote {
  margin-top: calc(24 * 1rem / var(--font-size__base));
  padding-top: calc(24 * 1rem / var(--font-size__base));
  padding-bottom: calc(24 * 1rem / var(--font-size__base));
  padding-inline: calc(24 * 1rem / var(--font-size__base));
  background-color: var(--color__gray-100);
  border-left: 4px solid var(--color__brand-cyan);
}

.m-article-content blockquote > *:first-child {
  margin-top: 0;
}

.m-article-content blockquote cite {
  display: block;
  margin-top: calc(12 * 1rem / var(--font-size__base));
  font-size: calc(14 * 1rem / var(--font-size__base));
  font-style: normal;
  color: #626262;
}

.m-article-content img {
  display: block;
  max-width: 100%;
  height: auto;
}

.m-article-content .wp-block-image {
  max-width: calc(960 * 1rem / var(--font-size__base));
  margin-top: calc(40 * 1rem / var(--font-size__base));
  margin-inline: auto;
}

.m-article-content figcaption {
  margin-top: calc(12 * 1rem / var(--font-size__base));
  font-size: calc(14 * 1rem / var(--font-size__base));
  color: #626262;
  text-align: center;
}

.m-article-content table,
.m-article-content .wp-block-table {
  width: 100%;
  margin-top: calc(32 * 1rem / var(--font-size__base));
  border-collapse: collapse;
}

.m-article-content th,
.m-article-content td {
  padding-top: calc(12 * 1rem / var(--font-size__base));
  padding-bottom: calc(12 * 1rem / var(--font-size__base));
  padding-inline: calc(16 * 1rem / var(--font-size__base));
  text-align: left;
  border: 1px solid #ddd;
}

.m-article-content th {
  font-weight: 700;
  background-color: var(--color__gray-100);
}

.m-article-content thead th {
  background-color: var(--color__brand-cyan);
  color: #fff;
}

.m-article-content pre {
  margin-top: calc(32 * 1rem / var(--font-size__base));
  padding-top: calc(24 * 1rem / var(--font-size__base));
  padding-bottom: calc(24 * 1rem / var(--font-size__base));
  padding-inline: calc(24 * 1rem / var(--font-size__base));
  font-family: var(--font-family__monospace, monospace);
  font-size: calc(14 * 1rem / var(--font-size__base));
  line-height: 1.6;
  background-color: #282a36;
  border-radius: calc(8 * 1rem / var(--font-size__base));
  overflow-x: auto;
}

.m-article-content pre code {
  padding: 0;
  font-size: inherit;
  color: #fff;
  background-color: transparent;
  border-radius: 0;
}

.m-article-content .wp-block-preformatted,
.m-article-content .wp-block-verse {
  background-color: var(--color__gray-100);
  white-space: pre-wrap;
}

.m-article-content hr {
  margin-top: calc(40 * 1rem / var(--font-size__base));
  height: 1px;
  border: none;
  background-color: #ddd;
}

.m-article-content hr.is-style-wide {
  height: 2px;
}

.m-article-content hr.is-style-dots {
  height: auto;
  background-color: transparent;
  text-align: center;
}

.m-article-content hr.is-style-dots::before {
  content: "···";
  font-size: calc(24 * 1rem / var(--font-size__base));
  letter-spacing: calc(16 * 1rem / var(--font-size__base));
  color: #626262;
}

.m-article-content .wp-block-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: calc(16 * 1rem / var(--font-size__base));
  margin-top: calc(32 * 1rem / var(--font-size__base));
}

.m-article-content .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding-top: calc(14 * 1rem / var(--font-size__base));
  padding-bottom: calc(14 * 1rem / var(--font-size__base));
  padding-inline: calc(32 * 1rem / var(--font-size__base));
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 500;
  color: #fff;
  text-decoration: none;
  background-color: var(--color__brand-cyan);
  border-radius: calc(99 * 1rem / var(--font-size__base));
  transition: opacity var(--duration__base);
}
.m-article-content .wp-block-button__link:focus-visible {
  opacity: var(--opacity__hover);
}

.m-article-content .is-style-outline .wp-block-button__link {
  color: var(--color__brand-cyan);
  background-color: transparent;
  border: 2px solid var(--color__brand-cyan);
}

.m-article-content .wp-block-columns {
  display: flex;
  flex-wrap: wrap;
  gap: calc(32 * 1rem / var(--font-size__base));
  margin-top: calc(32 * 1rem / var(--font-size__base));
}

.m-article-content .wp-block-column {
  flex: 1;
  min-width: 0;
}

.m-article-content .wp-block-column > *:first-child {
  margin-top: 0;
}

.m-article-content .wp-block-group {
  margin-top: calc(32 * 1rem / var(--font-size__base));
  border-radius: calc(8 * 1rem / var(--font-size__base));
}

.m-article-content .wp-block-group > *:first-child {
  margin-top: 0;
}

.m-article-content details {
  margin-top: calc(24 * 1rem / var(--font-size__base));
  padding-top: calc(16 * 1rem / var(--font-size__base));
  padding-bottom: calc(16 * 1rem / var(--font-size__base));
  padding-inline: calc(20 * 1rem / var(--font-size__base));
  background-color: var(--color__gray-100);
  border-radius: calc(8 * 1rem / var(--font-size__base));
}

.m-article-content details summary {
  font-weight: 500;
  cursor: pointer;
  transition: opacity var(--duration__base);
}
.m-article-content details summary:focus-visible {
  opacity: var(--opacity__hover);
}

.m-article-content details[open] summary {
  padding-bottom: calc(12 * 1rem / var(--font-size__base));
}

.m-article-content details > *:not(summary):first-of-type {
  margin-top: 0;
}

.m-article-content .wp-block-file {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: calc(16 * 1rem / var(--font-size__base));
  margin-top: calc(24 * 1rem / var(--font-size__base));
}

.m-article-content .wp-block-file > a:first-child {
  color: var(--color__brand-cyan);
  text-decoration: underline;
}

.m-article-content .wp-block-file__button {
  display: inline-flex;
  align-items: center;
  padding-top: calc(8 * 1rem / var(--font-size__base));
  padding-bottom: calc(8 * 1rem / var(--font-size__base));
  padding-inline: calc(16 * 1rem / var(--font-size__base));
  font-size: calc(14 * 1rem / var(--font-size__base));
  color: #fff;
  text-decoration: none;
  background-color: var(--color__brand-cyan);
  border-radius: calc(4 * 1rem / var(--font-size__base));
  transition: opacity var(--duration__base);
}
.m-article-content .wp-block-file__button:focus-visible {
  opacity: var(--opacity__hover);
}

.m-article-content a {
  color: var(--color__brand-cyan);
  text-decoration: underline;
  transition: opacity var(--duration__base);
}
.m-article-content a:focus-visible {
  opacity: var(--opacity__hover);
}

.m-article-content .wp-block-footnotes {
  margin-top: calc(40 * 1rem / var(--font-size__base));
  padding-top: calc(24 * 1rem / var(--font-size__base));
  padding-left: calc(24 * 1rem / var(--font-size__base));
  font-size: calc(14 * 1rem / var(--font-size__base));
  color: #626262;
  border-top: 1px solid #ddd;
}

.m-arrow-button {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: calc(32 * 1rem / var(--font-size__base));
  padding-bottom: calc(35 * 1rem / var(--font-size__base));
  padding-left: calc(26 * 1rem / var(--font-size__base));
  padding-right: calc(20 * 1rem / var(--font-size__base));
  background-color: var(--color__black);
  border-radius: calc(100 * 1rem / var(--font-size__base));
  color: #fff;
  overflow: hidden;
  transition: opacity var(--duration__base);
}
.m-arrow-button:focus-visible .m-arrow-button__arrow {
  animation: arrow-slide 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.m-arrow-button__text {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 600;
  letter-spacing: 0.18em;
  line-height: 1;
}

.m-arrow-button__label {
  font-family: var(--font-family__jost);
  font-size: calc(22 * 1rem / var(--font-size__base));
  font-weight: 600;
  color: var(--color__brand-orange-light);
  letter-spacing: 0;
  line-height: 1;
  padding-left: calc(20 * 1rem / var(--font-size__base));
}

.m-arrow-button__arrow {
  width: calc(68 * 1rem / var(--font-size__base));
  height: calc(24 * 1rem / var(--font-size__base));
  color: #fff;
  flex-shrink: 0;
  margin-left: calc(17 * 1rem / var(--font-size__base));
}

.m-arrow-button--w485 {
  width: calc(485 * 1rem / var(--font-size__base));
}

.m-arrow-button--sm {
  width: calc(440 * 1rem / var(--font-size__base));
  padding-block: calc(15 * 1rem / var(--font-size__base));
}

@keyframes arrow-slide {
  0% {
    transform: translateX(0);
    opacity: 1;
  }
  40% {
    transform: translateX(100%);
    opacity: 0;
  }
  41% {
    transform: translateX(-100%);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
.m-accordion {
  --_duration: var(--duration__base);
  border-top: 1px solid var(--color__text);
}

.m-accordion:last-of-type {
  border-bottom: 1px solid var(--color__text);
}

.m-accordion__button {
  display: grid;
  grid-template-columns: calc(30 * 1rem / var(--font-size__base)) 1fr calc(30 * 1rem / var(--font-size__base));
  -moz-column-gap: calc(10 * 1rem / var(--font-size__base));
       column-gap: calc(10 * 1rem / var(--font-size__base));
  align-items: center;
  width: 100%;
  padding-block: calc(20 * 1rem / var(--font-size__base));
  padding-inline: calc(20 * 1rem / var(--font-size__base));
}

.m-accordion__button-title {
  color: var(--color__main);
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1;
}

.m-accordion__button-icon {
  position: relative;
  width: calc(27 * 1rem / var(--font-size__base));
  height: calc(27 * 1rem / var(--font-size__base));
  background-color: #a1ace6;
  border-radius: 50%;
  transition: background-color var(--_duration);
}

.m-accordion__button-icon::before,
.m-accordion__button-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(12 * 1rem / var(--font-size__base));
  height: calc(2 * 1rem / var(--font-size__base));
  background-color: #fff;
  border-radius: 99px;
  translate: -50% -50%;
}

.m-accordion__button-icon::after {
  transition: rotate var(--_duration);
  rotate: -90deg;
}

.m-accordion__panel-content {
  display: grid;
  grid-template-columns: calc(30 * 1rem / var(--font-size__base)) 1fr calc(30 * 1rem / var(--font-size__base));
  -moz-column-gap: calc(10 * 1rem / var(--font-size__base));
       column-gap: calc(10 * 1rem / var(--font-size__base));
  border-top: 1px solid #aaa;
  padding-block: calc(18 * 1rem / var(--font-size__base));
  padding-inline: calc(22 * 1rem / var(--font-size__base));
}

.m-accordion__panel-title {
  color: var(--color__sub);
  font-size: calc(20 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1;
}

.m-accordion__button:has(+ .js-accordion__panel:not([hidden])) .m-accordion__button-icon {
  background-color: #bfbfbf;
}

.m-accordion__button:has(+ .js-accordion__panel:not([hidden])) .m-accordion__button-icon::after {
  rotate: 0deg;
}

.m-about-us {
  position: relative;
  padding-top: calc(135 * 1rem / var(--font-size__base));
  padding-bottom: calc(84 * 1rem / var(--font-size__base));
  overflow-x: clip;
}

.m-about-us__ittan-momen {
  position: absolute;
  top: calc(-209 * 1rem / var(--font-size__base));
  left: max(-31 / 1920 * 100vw, -31px);
  width: min(1200px + 558 / 1920 * 100vw, 1758px);
  pointer-events: none;
  z-index: 10;
  color: #d70c18;
}
.m-about-us__ittan-momen svg {
  display: block;
  width: 100%;
  height: auto;
}

.m-about-us__inner {
  --_padding-right: calc(var(--_padding-left) + 80);
  position: relative;
}

.m-about-us__text {
  display: flex;
  flex-direction: column;
  gap: calc(46 * 1rem / var(--font-size__base));
  padding-top: calc(55 * 1rem / var(--font-size__base));
}

.m-about-us__subtitle {
  font-size: calc(28 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 2;
  letter-spacing: 0.1em;
}

.m-about-us__description {
  display: flex;
  flex-direction: column;
  gap: calc(28 * 1rem / var(--font-size__base));
  font-size: calc(18 * 1rem / var(--font-size__base));
  line-height: 1.5555555556;
  letter-spacing: 0.056em;
}

.m-about-us__diagram {
  display: flex;
  justify-content: center;
  align-items: center;
}

.m-about-us__diagram-image {
  width: 100%;
  height: auto;
  padding-top: calc(62 * 1rem / var(--font-size__base));
}

.m-about-us__logos-title {
  font-size: calc(28 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 2;
  letter-spacing: 0.1em;
}

.m-about-us__logos {
  display: flex;
  flex-direction: column;
  gap: calc(48 * 1rem / var(--font-size__base));
  padding-top: calc(88 * 1rem / var(--font-size__base));
  overflow: hidden;
}

.m-about-us__logo-row {
  overflow: hidden;
}
.m-about-us__logo-row--reverse .m-about-us__logo-list {
  animation-direction: reverse;
}

.m-about-us__logo-track {
  display: flex;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

.m-about-us__logo-list {
  --_speed: 40s;
  --_gap: calc(60 * 1rem / var(--font-size__base));
  display: flex;
  gap: var(--_gap);
  padding-inline: calc(var(--_gap) / 2);
  animation: logo-scroll var(--_speed) linear infinite;
}

@keyframes logo-scroll {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}
.m-about-us__logo-item {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.m-about-us__logo-item img {
  height: calc(75 * 1rem / var(--font-size__base));
  width: auto;
}

.m-about-us__logo-item--sm img {
  height: calc(50 * 1rem / var(--font-size__base));
}

.m-about-us__logo-item--lg img {
  height: calc(100 * 1rem / var(--font-size__base));
}

.m-about-us-recruit {
  padding-top: calc(105 * 1rem / var(--font-size__base));
  padding-bottom: calc(92 * 1rem / var(--font-size__base));
}

.m-about-us-recruit__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(24 * 1rem / var(--font-size__base));
}

.m-about-us-recruit__title {
  font-family: var(--font-family__jost);
  font-size: calc(40 * 1rem / var(--font-size__base));
  font-weight: 600;
  color: var(--color__brand-orange-light);
  line-height: 1.2;
}

.m-about-us-recruit__button {
  --_color__hover-bg: #3a3a3a;
  --_duration: 1.1s;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: calc(400 * 1rem / var(--font-size__base));
  height: calc(91 * 1rem / var(--font-size__base));
  background-color: var(--color__black);
  border-radius: calc(46 * 1rem / var(--font-size__base));
  color: #fff;
  overflow: hidden;
}
.m-about-us-recruit__button:focus-visible::before {
  --_mask-position: 100%;
}
.m-about-us-recruit__button::before {
  --_mask-position: 0%;
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  background-color: var(--_color__hover-bg);
  -webkit-mask-image: url("../images/common/mask.png");
  mask-image: url("../images/common/mask.png");
  -webkit-mask-size: 100% 600%;
  mask-size: 100% 600%;
  -webkit-mask-position: 0 var(--_mask-position);
  mask-position: 0 var(--_mask-position);
  transition: -webkit-mask-position var(--_duration);
  transition: mask-position var(--_duration);
  transition: mask-position var(--_duration), -webkit-mask-position var(--_duration);
}

.m-about-us-recruit__button-text {
  position: relative;
  z-index: 1;
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 700;
  letter-spacing: 0.18em;
}

.m-about-us-recruit__button-arrow {
  position: absolute;
  z-index: 1;
  right: calc(30 * 1rem / var(--font-size__base));
  width: calc(8 * 1rem / var(--font-size__base));
  height: calc(14 * 1rem / var(--font-size__base));
  color: #fff;
}

.m-about-page__about {
  --_bg-bottom: calc(196 * 1rem / var(--font-size__base));
  position: relative;
  z-index: 11;
  background: linear-gradient(to bottom, transparent calc(100% - var(--_bg-bottom)), var(--color__text) calc(100% - var(--_bg-bottom)));
}

.m-about-recruit {
  padding-top: calc(172 * 1rem / var(--font-size__base));
}

.m-about-recruit__cols {
  display: grid;
  grid-template-columns: calc(600 * 1rem / var(--font-size__base)) 1fr;
  gap: calc(47 * 1rem / var(--font-size__base));
  align-items: start;
}

.m-about-recruit__body {
  padding-top: calc(75 * 1rem / var(--font-size__base));
  color: #030303;
}

.m-about-recruit__statement {
  font-size: calc(40 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

.m-about-recruit__statement-quote {
  color: var(--color__brand-orange-light);
}

.m-about-recruit__statement + .m-about-recruit__catch,
.m-about-recruit__lead + .m-about-recruit__catch {
  padding-top: calc(40 * 1rem / var(--font-size__base));
}

.m-about-recruit__catch {
  font-size: calc(30 * 1rem / var(--font-size__base));
  font-weight: 700;
  line-height: 1.5333333333;
  letter-spacing: 0.05em;
  padding-left: 1em;
  text-indent: -1em;
}

.m-about-recruit__body > .m-about-recruit__lead {
  padding-top: calc(46 * 1rem / var(--font-size__base));
}

.m-about-recruit__lead {
  font-size: calc(23 * 1rem / var(--font-size__base));
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.05em;
}

.m-about-recruit__photo {
  position: relative;
  margin-right: calc(-122 * 1rem / var(--font-size__base));
}
.m-about-recruit__photo img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: calc(70 * 1rem / var(--font-size__base));
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 916/1150;
}

.m-about-recruit__caption {
  position: absolute;
  top: 35.1610095735%;
  left: 7.9781420765%;
}

.m-about-recruit__caption-role {
  font-size: calc(16 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.75;
  letter-spacing: 0.18em;
  color: #fff;
}

.m-about-recruit__caption-name {
  padding-top: calc(11 * 1rem / var(--font-size__base));
  font-size: calc(34 * 1rem / var(--font-size__base));
  font-weight: 900;
  line-height: 1.4411764706;
  letter-spacing: 0;
  color: #fff;
}

.m-about-recruit__caption-name-en {
  padding-top: calc(7 * 1rem / var(--font-size__base));
  font-family: var(--font-family__jost);
  font-size: calc(18 * 1rem / var(--font-size__base));
  font-weight: 600;
  line-height: 1.4444444444;
  letter-spacing: 0.1em;
  color: var(--color__brand-orange-light);
}

.m-about-recruit__values {
  display: flex;
  flex-direction: column;
  gap: calc(24 * 1rem / var(--font-size__base));
  padding-top: calc(80 * 1rem / var(--font-size__base));
  padding-bottom: calc(300 * 1rem / var(--font-size__base));
  color: #030303;
}

/*
 * ユーティリティについて
 * 再利用可能なユーティリティクラスを定義します。
 * ユーティリティクラスは、コンポーネントやページのスタイルを簡潔に記述するために使用されます。
 * クラス名は、u-brのように命名します。
 */
.u-wbr {
  word-break: keep-all;
}

.u-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  -webkit-clip-path: inset(50%) !important;
          clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.u-recaptcha-policy {
  -webkit-margin-before: calc(40 * 1rem / var(--font-size__base));
          margin-block-start: calc(40 * 1rem / var(--font-size__base));
  font-size: calc(11 * 1rem / var(--font-size__base));
  line-height: 1.5;
  color: var(--color__gray-500);
  text-align: center;
}

.u-recaptcha-policy a {
  color: inherit;
  text-decoration: underline;
}

/* PCでのみ表示 */
/* スマホでのみ表示 */
.u-hover--opacity {
  transition: opacity var(--duration__base);
}
.u-hover--opacity:focus-visible {
  opacity: var(--opacity__hover);
}

.u-hover--drop-shadow {
  transition: filter var(--duration__base);
}
.u-hover--drop-shadow:focus-visible {
  filter: drop-shadow(0 3px 6px rgba(0, 0, 0, 0.2));
  transform: translateZ(0);
}

.u-hover--color-main {
  transition: color var(--duration__base);
}
.u-hover--color-main:focus-visible {
  color: var(--color__main);
}

.u-hover--underline-1px {
  position: relative;
}
.u-hover--underline-1px:focus-visible::after {
  transform: scaleX(1);
  transform-origin: left;
}

.u-hover--underline-1px::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
  background-color: currentcolor;
  width: 100%;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform var(--duration__base);
}

.u-hover--underline-2px {
  position: relative;
}
.u-hover--underline-2px:focus-visible::after {
  transform: scaleX(1);
  transform-origin: left;
}

.u-hover--underline-2px::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 2px;
  background-color: currentcolor;
  width: 100%;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform var(--duration__base);
}

.u-hanging-indent {
  padding-left: 1em;
  text-indent: -1em;
}

.u-font-weight--100 {
  font-weight: 100;
}

.u-font-weight--200 {
  font-weight: 200;
}

.u-font-weight--300 {
  font-weight: 300;
}

.u-font-weight--400 {
  font-weight: 400;
}

.u-font-weight--500 {
  font-weight: 500;
}

.u-font-weight--600 {
  font-weight: 600;
}

.u-font-weight--700 {
  font-weight: 700;
}

.u-font-weight--800 {
  font-weight: 800;
}

.u-font-weight--900 {
  font-weight: 900;
}

.u-color--white {
  color: #fff;
}

.u-color--gray {
  color: #918d8d;
}

.u-color--red {
  color: var(--color__brand-red);
}

.u-color--orange {
  color: var(--color__brand-orange);
}

.u-color--cyan {
  color: var(--color__brand-cyan);
}

.u-color--cyan-deep {
  color: #25aeb7;
}

.u-br {
  display: inline-block;
}

.u-bg--main {
  background-color: var(--color__main);
}

.u-bg--main-light {
  background-color: var(--color__main-light);
}

.u-bg--white {
  background-color: #fff;
}

.u-bg--gray-light {
  background-color: #f7f7f7;
}

.u-bg--gray-pale {
  background-color: #fafafa;
}

.u-bg--warm-gray {
  background-color: #ebe9e8;
}

.u-bg--gray-medium {
  background-color: #909595;
}

.u-bg--cyan-pale {
  background-color: #ecf3f4;
}

@media (min-width: 768px){
  .l-inner--920 {
    --_max-width: 920;
  }
  .l-inner--1120 {
    --_max-width: 1120;
  }
  .l-inner--1176 {
    --_max-width: 1176;
  }
  .l-inner--1200 {
    --_max-width: 1200;
  }
  .l-inner--1280 {
    --_max-width: 1280;
  }
  .l-inner--1310 {
    --_max-width: 1310;
  }
  .l-inner--1440 {
    --_max-width: 1440;
  }
  .l-inner--1458 {
    --_max-width: 1458;
  }
  .l-inner--1512 {
    --_max-width: 1512;
  }
  .l-inner--1600 {
    --_max-width: 1600;
  }
  .l-inner--1640 {
    --_max-width: 1640;
  }
  .l-inner--1920 {
    --_max-width: 1920;
  }
  .l-3-columns {
    --_width__left: 400;
    --_width__center: 400;
    --_width__right: 840;
    --_column-gap: 40;
    --_width__columns: calc(
      var(--_width__left) + var(--_width__center) + var(--_width__right)
    );
    --_width__gaps: calc(var(--_column-gap) * 2);
    --_width__total: calc(var(--_width__columns) + var(--_width__gaps));
    display: grid;
    grid-template-columns: calc(var(--_width__left) / var(--_width__total) * 100%) calc(var(--_width__center) / var(--_width__total) * 100%) calc(var(--_width__right) / var(--_width__total) * 100%);
    -moz-column-gap: calc(var(--_column-gap) / var(--_width__total) * 100%);
         column-gap: calc(var(--_column-gap) / var(--_width__total) * 100%);
  }
  .l-2-columns-pc {
    display: grid;
    grid-template-columns: calc(var(--_width__left) / var(--_width__total) * 100%) calc(var(--_width__right) / var(--_width__total) * 100%);
    -moz-column-gap: calc(var(--_column-gap) / var(--_width__total) * 100%);
         column-gap: calc(var(--_column-gap) / var(--_width__total) * 100%);
  }
  .l-2-columns-pc--release-left {
    margin-left: max(50% - var(--js-width__viewport) / 2, 50% - var(--max-width__base) * 1px / 2);
  }
  .l-2-columns-pc--release-right {
    margin-right: max(50% - var(--js-width__viewport) / 2, 50% - var(--max-width__base) * 1px / 2);
  }
  .l-2-columns-pc--reverse {
    grid-template-columns: calc(var(--_width__right) / var(--_width__total) * 100%) calc(var(--_width__left) / var(--_width__total) * 100%);
  }
  .l-2-columns-pc--reverse > *:last-child {
    order: -1;
  }
  .l-2-columns-pc--release-left.l-2-columns-pc--reverse {
    margin-right: max(50% - var(--js-width__viewport) / 2, 50% - var(--max-width__base) * 1px / 2);
    margin-left: auto;
  }
  .l-2-columns-pc--release-right.l-2-columns-pc--reverse {
    margin-right: auto;
    margin-left: max(50% - var(--js-width__viewport) / 2, 50% - var(--max-width__base) * 1px / 2);
  }
  .m-recruitment-single__mv-inner {
    --_padding-right: 100;
  }
  .m-recruitment-single__detail-list {
    --_padding-inline: 40;
  }
  .m-philosophy__inner {
    --_padding-right: 40;
  }
  .m-mv__inner {
    --_padding-inline: 160;
  }
  .m-hamburger[aria-expanded=true] {
    opacity: 0 !important;
    pointer-events: none;
  }
  .u-only--sp {
    display: none;
  }
}

@media (min-width: 1440px){
  .m-header__hamburger {
    display: none;
  }
}

@media (width <= 1850px){
  .m-about-recruit__photo {
    margin-right: 0;
  }
}

@media (max-width: 1439px){
  .m-header__nav {
    display: none;
  }
}

@media (max-width: 1330px){
  html {
    font-size: calc(var(--_font-size) / var(--_width) * 100vw);
  }
  .m-recruitment-single__mv-inner {
    gap: calc(30 * 1rem / var(--font-size__base));
  }
  .m-ppa-fv__ittan {
    top: calc(150 * 1rem / var(--font-size__base));
  }
  .m-partner-fv__ittan {
    top: calc(10 * 1rem / var(--font-size__base));
  }
  .m-about-us__ittan-momen {
    width: calc(1500 * 1rem / var(--font-size__base));
  }
  .m-about-recruit__cols {
    grid-template-columns: 1fr calc(480 * 1rem / var(--font-size__base));
    gap: calc(40 * 1rem / var(--font-size__base));
  }
}

@media (max-width: 767px){
  :root {
    --width__breakpoint: 430;
    --space-inline__base: 25;
    --max-width__base: 600;
    --space__section--base: 30;
    --radius__base: 13;
  }
  html {
    font-size: calc(var(--_font-size) * 1px);
  }
  .l-page__fixed-button {
    right: calc(25 * 1rem / var(--font-size__base));
    bottom: calc(25 * 1rem / var(--font-size__base));
  }
  .l-inner {
    --_max-width: var(--max-width__base, 600);
  }
  .l-container--sidebar {
    grid-template-columns: unset;
    row-gap: calc(32 * 1rem / var(--font-size__base));
  }
  .m-works {
    padding-bottom: calc(162 * 1rem / var(--font-size__base));
  }
  .m-works__header {
    flex-direction: column;
    gap: calc(20 * 1rem / var(--font-size__base));
  }
  .m-works__header .m-title {
    gap: 0;
  }
  .m-works__carousel {
    margin-top: 0;
    padding-top: calc(28 * 1rem / var(--font-size__base));
  }
  .m-works__list {
    --_gap: calc(15 * 1rem / var(--font-size__base));
  }
  .m-works__item {
    width: calc(190 * 1rem / var(--font-size__base));
  }
  .m-works__footer {
    justify-content: center;
    padding-top: calc(40 * 1rem / var(--font-size__base));
  }
  .m-working-environment .m-section-heading__heading {
    font-size: calc(37 * 1rem / var(--font-size__base));
    line-height: 1.0810810811;
  }
  .m-working-environment {
    padding-top: 0;
    padding-bottom: calc(80 * 1rem / var(--font-size__base));
    border-radius: calc(40 * 1rem / var(--font-size__base));
  }
  .m-working-environment__bg {
    top: calc(24 * 1rem / var(--font-size__base));
    left: auto;
    right: calc(83 / 430 * 100vw);
    width: calc(800 * 1rem / var(--font-size__base));
    border-radius: calc(40 * 1rem / var(--font-size__base));
  }
  .m-working-environment__inner {
    --_max-width: 450;
  }
  .m-working-environment__header .m-recruit-subtitle {
    padding-top: calc(23 * 1rem / var(--font-size__base));
  }
  .m-working-environment__cards {
    grid-template-columns: 1fr;
    -moz-column-gap: 0;
         column-gap: 0;
    row-gap: calc(17 * 1rem / var(--font-size__base));
    margin-left: calc(84 * 1rem / var(--font-size__base));
    margin-right: calc(27 * 1rem / var(--font-size__base));
    padding-top: calc(206 * 1rem / var(--font-size__base));
  }
  .m-working-environment__card {
    grid-row: auto;
    grid-template-rows: auto auto 1fr;
    grid-template-columns: calc(62 * 1rem / var(--font-size__base)) 1fr;
    grid-template-areas: "icon label" "icon title" "icon footer";
    -moz-column-gap: calc(27 * 1rem / var(--font-size__base));
         column-gap: calc(27 * 1rem / var(--font-size__base));
    row-gap: 0;
    padding-top: calc(30 * 1rem / var(--font-size__base));
    padding-bottom: calc(11 * 1rem / var(--font-size__base));
    padding-left: calc(30 * 1rem / var(--font-size__base));
    padding-right: calc(14 * 1rem / var(--font-size__base));
    min-height: calc(152 * 1rem / var(--font-size__base));
    border-radius: calc(20 * 1rem / var(--font-size__base));
  }
  .m-working-environment__card-label {
    grid-area: label;
    font-size: calc(15 * 1rem / var(--font-size__base));
    line-height: 1.2666666667;
    align-self: end;
  }
  .m-working-environment__card-title {
    grid-area: title;
    font-size: calc(21 * 1rem / var(--font-size__base));
    line-height: 1.4;
    letter-spacing: 0.32em;
    padding-top: calc(4 * 1rem / var(--font-size__base));
  }
  .m-working-environment__card-icon {
    grid-area: icon;
    align-self: center;
    margin-top: calc(-15 * 1rem / var(--font-size__base));
    width: calc(62 * 1rem / var(--font-size__base));
    height: calc(62 * 1rem / var(--font-size__base));
  }
  .m-working-environment__card-icon--02 {
    width: calc(73 * 1rem / var(--font-size__base));
  }
  .m-working-environment__card-icon--03 {
    width: calc(69 * 1rem / var(--font-size__base));
  }
  .m-working-environment__card-footer {
    grid-area: footer;
    align-self: end;
    padding-top: 0;
  }
  .m-working-environment__card-button {
    width: calc(27 * 1rem / var(--font-size__base));
    height: calc(27 * 1rem / var(--font-size__base));
  }
  .m-working-environment__card-button-icon {
    width: calc(14 * 1rem / var(--font-size__base));
    height: calc(14 * 1rem / var(--font-size__base));
  }
  .m-working-environment__card-button-icon::before,
  .m-working-environment__card-button-icon::after {
    width: calc(14 * 1rem / var(--font-size__base));
    height: calc(2 * 1rem / var(--font-size__base));
  }
  .m-working-environment__card .m-card-trigger {
    --_border-radius: rem(20);
  }
  .m-working-environment-modal__close {
    --_icon-size: calc(25 * 1rem / var(--font-size__base));
    top: calc(-23 * 1rem / var(--font-size__base));
    right: calc(-15 * 1rem / var(--font-size__base));
  }
  .m-working-environment-modal__header {
    top: calc(109 * 1rem / var(--font-size__base));
  }
  .m-working-environment-modal__scroll {
    margin-top: calc(50 * 1rem / var(--font-size__base));
  }
  .m-working-env-panel__heading {
    font-size: calc(37 * 1rem / var(--font-size__base));
    line-height: 1.0810810811;
  }
  .m-working-env-panel__subtitle {
    font-size: calc(13 * 1rem / var(--font-size__base));
  }
  .m-working-env-panel__card {
    border-radius: calc(30 * 1rem / var(--font-size__base));
  }
  .m-working-env-panel__card-scroll {
    padding-block: calc(47 * 1rem / var(--font-size__base));
    padding-inline: calc(35 * 1rem / var(--font-size__base));
  }
  .m-working-env-panel__card-head {
    gap: calc(19 * 1rem / var(--font-size__base));
  }
  .m-working-env-panel__icon {
    width: calc(60 * 1rem / var(--font-size__base));
    height: calc(60 * 1rem / var(--font-size__base));
  }
  .m-working-env-panel__title-block {
    flex-direction: column-reverse;
    align-items: flex-start;
    gap: 0;
  }
  .m-working-env-panel__title {
    font-size: calc(26 * 1rem / var(--font-size__base));
    font-weight: 600;
    letter-spacing: 0.32em;
    line-height: 1.2307692308;
  }
  .m-working-env-panel__title-en {
    font-size: calc(18 * 1rem / var(--font-size__base));
    line-height: 1.7777777778;
  }
  .m-working-env-panel__vdivider {
    --vdivider-offset: calc(30 * 1rem / var(--font-size__base));
    right: 0;
    width: calc(6 * 1rem / var(--font-size__base));
  }
  .m-working-env-panel__body {
    font-size: calc(16 * 1rem / var(--font-size__base));
    line-height: 2;
    letter-spacing: 0.03em;
    padding-top: calc(78 * 1rem / var(--font-size__base));
  }
  .m-working-env-panel__section {
    font-size: calc(20 * 1rem / var(--font-size__base));
    line-height: 1.6;
    letter-spacing: 0.03em;
  }
  .m-title {
    flex-direction: column;
    gap: 0;
  }
  .m-title__en {
    font-size: calc(54 * 1rem / var(--font-size__base));
    line-height: 1.2222222222;
  }
  .m-title__ja {
    font-size: calc(20 * 1rem / var(--font-size__base));
    font-weight: 600;
    letter-spacing: 0.04em;
    line-height: 1.45;
    margin-top: calc(-3 * 1rem / var(--font-size__base));
  }
  .m-title--large .m-title__en {
    font-size: calc(70 * 1rem / var(--font-size__base));
    line-height: 1.2285714286;
  }
  .m-title--large .m-title__ja {
    font-size: calc(22 * 1rem / var(--font-size__base));
    font-weight: 600;
    letter-spacing: 0.08em;
    line-height: 1.4545454545;
  }
  .m-solution {
    padding-top: calc(109 / 430 * 100vw);
    padding-bottom: calc(84 * 1rem / var(--font-size__base));
  }
  .m-solution__list {
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: calc(14 * 1rem / var(--font-size__base));
         column-gap: calc(14 * 1rem / var(--font-size__base));
    row-gap: calc(24 * 1rem / var(--font-size__base));
    padding-top: calc(20 * 1rem / var(--font-size__base));
  }
  .m-solution__desc {
    font-size: calc(16 * 1rem / var(--font-size__base));
    padding-top: calc(30 * 1rem / var(--font-size__base));
  }
  .m-solution__list-title {
    padding-top: calc(40 * 1rem / var(--font-size__base));
  }
  .m-solution__card-body {
    padding-block: calc(9 * 1rem / var(--font-size__base));
  }
  .m-solution__card-title {
    font-size: calc(15 * 1rem / var(--font-size__base));
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1.4;
  }
  .m-solution__card-title-sub {
    font-size: calc(12 * 1rem / var(--font-size__base));
  }
  .m-solution-modal__window {
    border-radius: calc(16 * 1rem / var(--font-size__base));
  }
  .m-solution-modal__scroll {
    padding-top: calc(50 * 1rem / var(--font-size__base));
    padding-bottom: calc(50 * 1rem / var(--font-size__base));
    -webkit-padding-start: calc(24 * 1rem / var(--font-size__base));
            padding-inline-start: calc(24 * 1rem / var(--font-size__base));
    -webkit-padding-end: calc(40 * 1rem / var(--font-size__base));
            padding-inline-end: calc(40 * 1rem / var(--font-size__base));
  }
  .m-solution-modal__vbar {
    top: calc(52 * 1rem / var(--font-size__base));
    bottom: calc(20 * 1rem / var(--font-size__base));
    right: calc(12 * 1rem / var(--font-size__base));
  }
  .m-solution-modal__close {
    top: calc(3 * 1rem / var(--font-size__base));
    right: 0;
  }
  .m-solution-modal__title {
    font-size: calc(24 * 1rem / var(--font-size__base));
    font-weight: 600;
    font-family: var(--font-family__base);
    letter-spacing: 0.1em;
    line-height: 1.75;
    padding-top: calc(13 * 1rem / var(--font-size__base));
    padding-bottom: calc(13 * 1rem / var(--font-size__base));
  }
  .m-solution-modal__body {
    padding-top: calc(28 * 1rem / var(--font-size__base));
    row-gap: calc(28 * 1rem / var(--font-size__base));
  }
  .m-solution-modal__lead {
    font-size: calc(20 * 1rem / var(--font-size__base));
    line-height: 2;
    text-align: center;
  }
  .m-solution-modal__text {
    font-size: calc(14 * 1rem / var(--font-size__base));
    line-height: 1.7142857143;
  }
  .m-solution-modal__features {
    row-gap: calc(24 * 1rem / var(--font-size__base));
    width: 100%;
  }
  .m-solution-modal__feature {
    flex-direction: column;
    align-items: center;
    row-gap: calc(12 * 1rem / var(--font-size__base));
  }
  .m-solution-modal__feature-title {
    font-size: calc(14 * 1rem / var(--font-size__base));
    line-height: 1.5714285714;
  }
  .m-solution-modal__feature-desc {
    font-size: calc(15 * 1rem / var(--font-size__base));
    line-height: 1.6666666667;
    text-align: center;
  }
  .m-solution-modal__ppa {
    row-gap: calc(14 * 1rem / var(--font-size__base));
  }
  .m-solution-modal__ppa-title {
    font-size: calc(18 * 1rem / var(--font-size__base));
    line-height: 1.7777777778;
  }
  .m-solution-modal__ppa-text {
    font-size: calc(14 * 1rem / var(--font-size__base));
    line-height: 1.7142857143;
  }
  .m-solar-carport-voice {
    -webkit-padding-after: calc(60 * 1rem / var(--font-size__base));
            padding-block-end: calc(60 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-voice__line {
    width: calc(15 * 1rem / var(--font-size__base));
    height: calc(48 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-voice__line::before {
    height: calc(50 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-voice__heading > .m-solar-carport-voice__line:first-child::before {
    transform: rotate(-17.74deg);
  }
  .m-solar-carport-voice__heading > .m-solar-carport-voice__line:last-child::before {
    transform: rotate(17.74deg);
  }
  .m-solar-carport-voice__text {
    font-size: calc(19 * 1rem / var(--font-size__base));
    line-height: 1.4736842105;
    letter-spacing: 0.05em;
    flex-shrink: 1;
  }
  .m-solar-carport-voice__list {
    grid-template-columns: repeat(3, 1fr);
    -moz-column-gap: calc(10 * 1rem / var(--font-size__base));
         column-gap: calc(10 * 1rem / var(--font-size__base));
    row-gap: 0;
    -webkit-padding-before: calc(36 * 1rem / var(--font-size__base));
            padding-block-start: calc(36 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-voice__item {
    row-gap: calc(14 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-voice__avatar {
    width: calc(127 * 1rem / var(--font-size__base));
    height: calc(127 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-voice__balloon {
    padding-block: calc(12 * 1rem / var(--font-size__base));
    padding-inline: calc(11 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-voice__balloon::before {
    top: calc(-8 * 1rem / var(--font-size__base));
    border-width: 0 calc(10 * 1rem / var(--font-size__base)) calc(13 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-voice__balloon-text {
    font-size: calc(14 * 1rem / var(--font-size__base));
    line-height: 1.4285714286;
    letter-spacing: 0;
  }
  .m-solar-carport-reasons {
    -webkit-padding-before: calc(60 * 1rem / var(--font-size__base));
            padding-block-start: calc(60 * 1rem / var(--font-size__base));
    -webkit-padding-after: calc(60 * 1rem / var(--font-size__base));
            padding-block-end: calc(60 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-reasons__lead {
    -webkit-padding-before: calc(18 * 1rem / var(--font-size__base));
            padding-block-start: calc(18 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-reasons__list {
    flex-direction: column;
    gap: calc(15 * 1rem / var(--font-size__base));
    -webkit-padding-before: calc(48 * 1rem / var(--font-size__base));
            padding-block-start: calc(48 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-reasons__item {
    flex: 1 1 auto;
  }
  .m-solar-carport-reasons__card {
    display: grid;
    grid-template-columns: calc(100 * 1rem / var(--font-size__base)) 1fr;
    -moz-column-gap: calc(28 * 1rem / var(--font-size__base));
         column-gap: calc(28 * 1rem / var(--font-size__base));
    row-gap: calc(8 * 1rem / var(--font-size__base));
    height: auto;
    padding: calc(18 * 1rem / var(--font-size__base));
    align-items: center;
  }
  .m-solar-carport-reasons__card-header {
    grid-column: 1/-1;
    -webkit-padding-after: 0;
            padding-block-end: 0;
  }
  .m-solar-carport-reasons__card-title {
    -webkit-margin-end: 0;
            margin-inline-end: 0;
  }
  .m-solar-carport-reasons__card-icon {
    grid-column: 1;
    grid-row: 2;
    align-self: center;
    margin-block: calc(16 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-reasons__card-description {
    grid-column: 2;
    grid-row: 2;
    -webkit-padding-before: 0;
            padding-block-start: 0;
    align-self: center;
  }
  .m-solar-carport-ppa {
    -webkit-padding-before: calc(60 * 1rem / var(--font-size__base));
            padding-block-start: calc(60 * 1rem / var(--font-size__base));
    -webkit-padding-after: calc(60 * 1rem / var(--font-size__base));
            padding-block-end: calc(60 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-ppa__image {
    -webkit-padding-before: calc(36 * 1rem / var(--font-size__base));
            padding-block-start: calc(36 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-ppa__scheme-image {
    border-radius: calc(8 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-potentials {
    -webkit-padding-before: calc(60 * 1rem / var(--font-size__base));
            padding-block-start: calc(60 * 1rem / var(--font-size__base));
    -webkit-padding-after: calc(60 * 1rem / var(--font-size__base));
            padding-block-end: calc(60 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-potentials__lead {
    -webkit-padding-before: calc(48 * 1rem / var(--font-size__base));
            padding-block-start: calc(48 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-potentials__list {
    grid-template-columns: 1fr;
    row-gap: calc(15 * 1rem / var(--font-size__base));
    -webkit-padding-before: calc(48 * 1rem / var(--font-size__base));
            padding-block-start: calc(48 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-potentials__card {
    -webkit-padding-before: calc(30 * 1rem / var(--font-size__base));
            padding-block-start: calc(30 * 1rem / var(--font-size__base));
    -webkit-padding-after: calc(30 * 1rem / var(--font-size__base));
            padding-block-end: calc(30 * 1rem / var(--font-size__base));
    padding-inline: calc(30 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-page .l-inner {
    --_padding-inline: 15;
  }
  .m-solar-carport-page__body {
    -webkit-padding-after: calc(60 * 1rem / var(--font-size__base));
            padding-block-end: calc(60 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-hero {
    min-height: auto;
  }
  .m-solar-carport-hero__ittan {
    bottom: calc(5 * 1rem / var(--font-size__base));
    left: calc(-111 * 1rem / var(--font-size__base));
    width: calc(664 * 1rem / var(--font-size__base));
    transform: rotate(-60deg);
  }
  .m-solar-carport-hero__slider {
    position: static;
    width: 100%;
    z-index: auto;
  }
  .m-solar-carport-hero__track {
    height: calc(350 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-hero__pagination {
    position: static;
    justify-content: center;
    -moz-column-gap: calc(16 * 1rem / var(--font-size__base));
         column-gap: calc(16 * 1rem / var(--font-size__base));
    transform: none;
    -webkit-margin-before: calc(16 * 1rem / var(--font-size__base));
            margin-block-start: calc(16 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-hero__dot {
    width: calc(6 * 1rem / var(--font-size__base));
    height: calc(6 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-hero__inner {
    -webkit-padding-after: calc(197 * 1rem / var(--font-size__base));
            padding-block-end: calc(197 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-hero__body {
    -webkit-padding-before: calc(40 * 1rem / var(--font-size__base));
            padding-block-start: calc(40 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-hero__tag {
    padding-block: calc(6 * 1rem / var(--font-size__base));
    padding-inline: calc(10 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-hero__tag-text {
    font-size: calc(14 * 1rem / var(--font-size__base));
    line-height: 1.2;
  }
  .m-solar-carport-hero__title {
    font-size: calc(42 * 1rem / var(--font-size__base));
    line-height: 1;
    -webkit-margin-before: calc(11 * 1rem / var(--font-size__base));
            margin-block-start: calc(11 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-hero__subtitle {
    color: var(--color__brand-orange);
    line-height: 1.5;
    -webkit-margin-before: 0;
            margin-block-start: 0;
  }
  .m-solar-carport-hero__catch {
    font-size: calc(24 * 1rem / var(--font-size__base));
    font-weight: 500;
    line-height: 1.25;
    color: var(--color__text);
    -webkit-margin-before: calc(38 * 1rem / var(--font-size__base));
            margin-block-start: calc(38 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-hero__lead {
    font-size: calc(18 * 1rem / var(--font-size__base));
    line-height: 1.5;
    color: var(--color__text);
    -webkit-margin-before: calc(18 * 1rem / var(--font-size__base));
            margin-block-start: calc(18 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-flow {
    -webkit-padding-before: calc(60 * 1rem / var(--font-size__base));
            padding-block-start: calc(60 * 1rem / var(--font-size__base));
    -webkit-padding-after: calc(60 * 1rem / var(--font-size__base));
            padding-block-end: calc(60 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-flow__list {
    grid-template-columns: 1fr;
    row-gap: calc(5 * 1rem / var(--font-size__base));
    -moz-column-gap: 0;
         column-gap: 0;
  }
  .m-solar-carport-flow__item {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    -webkit-padding-before: calc(18 * 1rem / var(--font-size__base));
            padding-block-start: calc(18 * 1rem / var(--font-size__base));
    -webkit-padding-after: calc(18 * 1rem / var(--font-size__base));
            padding-block-end: calc(18 * 1rem / var(--font-size__base));
    padding-inline: calc(18 * 1rem / var(--font-size__base));
    row-gap: 0;
    -moz-column-gap: calc(40 * 1rem / var(--font-size__base));
         column-gap: calc(40 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-flow__icon {
    order: 2;
    flex-shrink: 0;
    width: calc(100 * 1rem / var(--font-size__base));
    height: calc(80 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-flow__icon-image {
    max-height: calc(80 * 1rem / var(--font-size__base));
    width: auto;
  }
  .m-solar-carport-flow__icon-image--sp-h64 {
    max-height: calc(64 * 1rem / var(--font-size__base));
  }
  .m-solar-carport-flow__label {
    order: 1;
    flex: 1;
  }
  .m-section-heading__heading {
    font-size: calc(36 * 1rem / var(--font-size__base));
    line-height: 1.4722222222;
  }
  .m-section-heading__label-group {
    margin-top: calc(16 * 1rem / var(--font-size__base));
  }
  .m-section-heading__label {
    font-size: calc(15 * 1rem / var(--font-size__base));
    font-weight: 500;
    line-height: 1.4;
  }
  .m-section-heading__line {
    width: calc(100% - 0.4em);
    height: 1px;
  }
  .m-schedule {
    padding-inline: calc(14 * 1rem / var(--font-size__base));
  }
  .m-schedule__table th,
  .m-schedule__table td {
    padding-block: calc(12 * 1rem / var(--font-size__base));
    padding-inline: calc(7 * 1rem / var(--font-size__base));
  }
  .m-schedule__table th {
    font-size: calc(12 * 1rem / var(--font-size__base));
  }
  .m-schedule__table td {
    font-size: calc(12 * 1rem / var(--font-size__base));
  }
  .m-schedule__note {
    font-size: calc(12 * 1rem / var(--font-size__base));
  }
  .m-related-cases__title {
    font-size: calc(18 * 1rem / var(--font-size__base));
    line-height: 1.7777777778;
  }
  .m-related-cases__list {
    grid-template-columns: 1fr;
    gap: calc(24 * 1rem / var(--font-size__base));
    padding-top: calc(24 * 1rem / var(--font-size__base));
    max-width: calc(450 * 1rem / var(--font-size__base));
  }
  .m-recruitment-single__mv-inner {
    --_padding-inline: 15;
    grid-template-columns: 1fr;
    gap: calc(32 * 1rem / var(--font-size__base));
    padding-top: calc(120 * 1rem / var(--font-size__base));
    padding-bottom: calc(54 * 1rem / var(--font-size__base));
  }
  .m-recruitment-single__mv-left {
    padding-top: 0;
  }
  .m-recruitment-single__mv-lead {
    padding-inline: calc(15 * 1rem / var(--font-size__base));
    font-size: calc(20 * 1rem / var(--font-size__base));
    font-weight: 400;
    line-height: 1.9;
    letter-spacing: 0.05em;
    color: #000;
  }
  .m-recruitment-single__mv-lead-short {
    padding-top: calc(30 * 1rem / var(--font-size__base));
  }
  .m-recruitment-single__mv-lead-short + .m-recruitment-single__mv-lead-main {
    padding-top: calc(16 * 1rem / var(--font-size__base));
  }
  .m-recruitment-single__mv-entry {
    padding-top: calc(18 * 1rem / var(--font-size__base));
  }
  .m-recruitment-single__mv-illustration::before {
    top: auto;
    bottom: 0;
    left: calc(15 * 1rem / var(--font-size__base));
    height: calc(100% + 63 * 1rem / var(--font-size__base));
  }
  .m-recruitment-single__mv-illustration {
    display: flex;
    justify-content: flex-end;
    margin-top: calc(103 * 1rem / var(--font-size__base));
    border-radius: calc(20 * 1rem / var(--font-size__base));
  }
  .m-recruitment-single__mv-illustration-image {
    width: min(351 / 430 * 100vw, 450 * 1rem / var(--font-size__base));
    margin-left: 0;
    margin-right: calc(-23 * 1rem / var(--font-size__base));
  }
  .m-recruitment-single__detail {
    padding-top: calc(60 * 1rem / var(--font-size__base));
    padding-bottom: calc(60 * 1rem / var(--font-size__base));
  }
  .m-recruitment-single__detail-card {
    border-radius: calc(35 * 1rem / var(--font-size__base));
    padding-block: calc(50 * 1rem / var(--font-size__base));
  }
  .m-recruitment-single__detail-entry {
    padding-top: calc(60 * 1rem / var(--font-size__base));
  }
  .m-recruitment-single__detail-list {
    gap: calc(40 * 1rem / var(--font-size__base));
  }
  .m-recruitment-single__detail-item {
    gap: calc(20 * 1rem / var(--font-size__base)) 0;
  }
  .m-recruitment-single__detail-label {
    width: 100%;
    font-size: calc(22 * 1rem / var(--font-size__base));
    font-weight: 500;
    line-height: 1.5;
  }
  .m-recruitment-single__detail-content {
    flex: none;
    width: 100%;
    font-size: calc(18 * 1rem / var(--font-size__base));
    line-height: 1.5;
  }
  .m-recruitment-single__conditions {
    padding-top: calc(60 * 1rem / var(--font-size__base));
    padding-bottom: calc(60 * 1rem / var(--font-size__base));
  }
  .m-recruit__message {
    padding-top: calc(76 * 1rem / var(--font-size__base));
  }
  .m-recruit__environment {
    margin-top: calc(61 * 1rem / var(--font-size__base));
  }
  .m-recruit__job-opening {
    padding-bottom: calc(80 * 1rem / var(--font-size__base));
  }
  .m-recruit-subtitle {
    font-size: calc(15 * 1rem / var(--font-size__base));
    letter-spacing: 0.4em;
    padding-top: calc(10 * 1rem / var(--font-size__base));
    padding-bottom: calc(10 * 1rem / var(--font-size__base));
  }
  .m-recruit-heading {
    font-size: calc(37 * 1rem / var(--font-size__base));
    line-height: 1.0810810811;
  }
  .m-recruit-footer {
    margin-top: calc(96 * 1rem / var(--font-size__base));
  }
  .m-recruit-footer__inner {
    grid-template-columns: 1fr;
    padding-top: calc(37 * 1rem / var(--font-size__base));
    padding-bottom: calc(23 * 1rem / var(--font-size__base));
  }
  .m-recruit-footer__logo {
    color: #fff;
    width: calc(208 * 1rem / var(--font-size__base));
  }
  .m-recruit-footer__links {
    padding-top: calc(30 * 1rem / var(--font-size__base));
  }
  .m-recruit-footer__links-link {
    font-size: calc(14 * 1rem / var(--font-size__base));
  }
  .m-recruit-footer__col--address {
    gap: calc(17 * 1rem / var(--font-size__base));
  }
  .m-recruit-footer__office:nth-child(1) {
    padding-top: calc(52 * 1rem / var(--font-size__base));
  }
  .m-recruit-footer__office-name {
    font-size: calc(16 * 1rem / var(--font-size__base));
    font-weight: 600;
    letter-spacing: 0.09em;
    line-height: 1.5;
    padding-top: 0;
  }
  .m-recruit-footer__office-address {
    font-size: calc(14 * 1rem / var(--font-size__base));
    font-weight: 700;
    letter-spacing: 0.0504em;
    line-height: 1.8;
    padding-top: calc(10 * 1rem / var(--font-size__base));
  }
  .m-recruit-footer__nav-group {
    padding-top: 0;
  }
  .m-recruit-footer__nav {
    display: grid;
    row-gap: calc(18 * 1rem / var(--font-size__base));
    -moz-column-gap: calc(60 * 1rem / var(--font-size__base));
         column-gap: calc(60 * 1rem / var(--font-size__base));
  }
  .m-recruit-footer__nav--primary {
    display: flex;
    flex-direction: column;
    gap: calc(18 * 1rem / var(--font-size__base));
    padding-top: calc(48 * 1rem / var(--font-size__base));
  }
  .m-recruit-footer__nav--interview {
    padding-top: calc(30 * 1rem / var(--font-size__base));
  }
  .m-recruit-footer__nav--interview .m-recruit-footer__nav-item:last-child {
    margin-top: 0;
  }
  .m-recruit-footer__nav-link {
    font-size: calc(16 * 1rem / var(--font-size__base));
    font-weight: 600;
    letter-spacing: 0.09em;
    line-height: 1.25;
  }
  .m-recruit-footer__nav-link-ja {
    font-family: inherit;
    font-size: calc(12 * 1rem / var(--font-size__base));
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
  }
  .m-privacy-page__body {
    padding-bottom: calc(80 * 1rem / var(--font-size__base));
  }
  .m-privacy-page__content-wrapper {
    border-radius: calc(8 * 1rem / var(--font-size__base));
  }
  .m-privacy-page__content {
    --_padding-inline: 20;
    gap: calc(60 * 1rem / var(--font-size__base));
    padding-top: calc(40 * 1rem / var(--font-size__base));
    padding-bottom: calc(40 * 1rem / var(--font-size__base));
  }
  .m-privacy-page__lead {
    font-size: calc(15 * 1rem / var(--font-size__base));
    line-height: 1.8;
  }
  .m-privacy-page__list {
    padding-top: calc(40 * 1rem / var(--font-size__base));
    padding-left: calc(24 * 1rem / var(--font-size__base));
    font-size: calc(14 * 1rem / var(--font-size__base));
    line-height: 1.8;
  }
  .m-privacy-page__list li {
    padding-top: calc(16 * 1rem / var(--font-size__base));
  }
  .m-privacy-page__heading {
    padding-bottom: calc(8 * 1rem / var(--font-size__base));
    font-size: calc(20 * 1rem / var(--font-size__base));
    line-height: 1.6;
  }
  .m-privacy-page__text {
    padding-top: calc(24 * 1rem / var(--font-size__base));
    font-size: calc(14 * 1rem / var(--font-size__base));
    line-height: 1.8;
  }
  .m-privacy-page__subheading {
    padding-top: calc(24 * 1rem / var(--font-size__base));
    font-size: calc(15 * 1rem / var(--font-size__base));
    line-height: 1.8;
  }
  .m-privacy-page__items {
    gap: calc(32 * 1rem / var(--font-size__base));
  }
  .m-privacy-page__item-title {
    font-size: calc(15 * 1rem / var(--font-size__base));
    line-height: 1.8;
  }
  .m-privacy-page__item-text {
    padding-top: calc(16 * 1rem / var(--font-size__base));
    font-size: calc(14 * 1rem / var(--font-size__base));
    line-height: 1.8;
  }
  .m-privacy-page__item-list {
    padding-top: calc(16 * 1rem / var(--font-size__base));
    padding-left: calc(24 * 1rem / var(--font-size__base));
    font-size: calc(14 * 1rem / var(--font-size__base));
    line-height: 1.8;
  }
  .m-privacy-page__definition {
    gap: calc(16 * 1rem / var(--font-size__base));
    padding-top: calc(24 * 1rem / var(--font-size__base));
    padding-left: calc(16 * 1rem / var(--font-size__base));
    font-size: calc(13 * 1rem / var(--font-size__base));
    line-height: 1.8;
  }
  .m-ppa-why {
    -webkit-padding-before: calc(40 * 1rem / var(--font-size__base));
            padding-block-start: calc(40 * 1rem / var(--font-size__base));
    -webkit-padding-after: calc(282 * 1rem / var(--font-size__base));
            padding-block-end: calc(282 * 1rem / var(--font-size__base));
  }
  .m-ppa-why__ittan {
    bottom: calc(454 * 1rem / var(--font-size__base));
    right: calc(-105 * 1rem / var(--font-size__base));
    width: calc(740 * 1rem / var(--font-size__base));
    transform: rotate(-79deg);
  }
  .m-ppa-why__lead {
    row-gap: calc(18 * 1rem / var(--font-size__base));
    -webkit-padding-before: calc(36 * 1rem / var(--font-size__base));
            padding-block-start: calc(36 * 1rem / var(--font-size__base));
  }
  .m-ppa-why__cards {
    grid-template-columns: 1fr;
    row-gap: calc(30 * 1rem / var(--font-size__base));
  }
  .m-ppa-why__card {
    padding-block: calc(48 * 1rem / var(--font-size__base));
    padding-inline: calc(30 * 1rem / var(--font-size__base));
  }
  .m-ppa-why__card:first-child .m-ppa-why__card-title {
    text-align: center;
  }
  .m-ppa-why__message {
    grid-template-columns: 1fr;
    row-gap: calc(60 * 1rem / var(--font-size__base));
    -webkit-padding-before: calc(60 * 1rem / var(--font-size__base));
            padding-block-start: calc(60 * 1rem / var(--font-size__base));
  }
  .m-ppa-why__message-body {
    row-gap: calc(18 * 1rem / var(--font-size__base));
  }
  .m-ppa-why__message-heading {
    font-size: calc(20 * 1rem / var(--font-size__base));
    line-height: 2;
    letter-spacing: 0.1em;
  }
  .m-ppa-why__message-logo img {
    width: calc(188 * 1rem / var(--font-size__base));
  }
  .m-ppa-types {
    -webkit-padding-before: calc(60 * 1rem / var(--font-size__base));
            padding-block-start: calc(60 * 1rem / var(--font-size__base));
    -webkit-padding-after: calc(60 * 1rem / var(--font-size__base));
            padding-block-end: calc(60 * 1rem / var(--font-size__base));
  }
  .m-ppa-types__lead {
    -webkit-padding-before: calc(34 * 1rem / var(--font-size__base));
            padding-block-start: calc(34 * 1rem / var(--font-size__base));
  }
  .m-ppa-types__card {
    -webkit-margin-before: calc(34 * 1rem / var(--font-size__base));
            margin-block-start: calc(34 * 1rem / var(--font-size__base));
  }
  .m-ppa-types__card-header {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: calc(80 * 1rem / var(--font-size__base));
    padding-inline: calc(15 * 1rem / var(--font-size__base));
  }
  .m-ppa-types__card-title {
    font-size: calc(24 * 1rem / var(--font-size__base));
    line-height: 1.4166666667;
  }
  .m-ppa-types__card-body {
    -webkit-padding-before: calc(28 * 1rem / var(--font-size__base));
            padding-block-start: calc(28 * 1rem / var(--font-size__base));
    -webkit-padding-after: calc(32 * 1rem / var(--font-size__base));
            padding-block-end: calc(32 * 1rem / var(--font-size__base));
    padding-inline: calc(15 * 1rem / var(--font-size__base));
    row-gap: calc(48 * 1rem / var(--font-size__base));
  }
  .m-ppa-types__card-body:has(.m-ppa-types__offsite-list) {
    -webkit-padding-after: calc(40 * 1rem / var(--font-size__base));
            padding-block-end: calc(40 * 1rem / var(--font-size__base));
  }
  .m-ppa-types__offsite-list {
    row-gap: calc(18 * 1rem / var(--font-size__base));
  }
  .m-ppa-types__offsite-item-header {
    padding-inline: calc(15 * 1rem / var(--font-size__base));
  }
  .m-ppa-types__offsite-item-body {
    padding-inline: calc(15 * 1rem / var(--font-size__base));
  }
  .m-ppa-types__offsite-item-title {
    font-size: calc(24 * 1rem / var(--font-size__base));
    line-height: 1.4166666667;
  }
  .m-ppa-types__offsite-item-image-scroll {
    height: calc(233 * 1rem / var(--font-size__base));
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .m-ppa-types__offsite-item-image img {
    width: auto;
    height: 100%;
    max-width: none;
  }
  .m-ppa-types__offsite-item-note {
    text-align: left;
  }
  .m-ppa-reasons {
    -webkit-padding-before: calc(60 * 1rem / var(--font-size__base));
            padding-block-start: calc(60 * 1rem / var(--font-size__base));
    -webkit-padding-after: calc(60 * 1rem / var(--font-size__base));
            padding-block-end: calc(60 * 1rem / var(--font-size__base));
  }
  .m-ppa-reasons__inner {
    row-gap: calc(36 * 1rem / var(--font-size__base));
  }
  .m-ppa-reasons__lead {
    row-gap: calc(18 * 1rem / var(--font-size__base));
  }
  .m-ppa-reasons__list {
    grid-template-columns: 1fr;
    row-gap: calc(30 * 1rem / var(--font-size__base));
  }
  .m-ppa-reasons__item-title {
    -webkit-margin-end: 0;
            margin-inline-end: 0;
  }
  .m-ppa-page .l-inner {
    --_padding-inline: 15;
  }
  .m-ppa-page__body {
    -webkit-padding-after: calc(60 * 1rem / var(--font-size__base));
            padding-block-end: calc(60 * 1rem / var(--font-size__base));
  }
  .m-ppa-fv {
    min-height: calc(800 * 1rem / var(--font-size__base));
  }
  .m-ppa-fv__bg {
    background-image: var(--_bg-sp);
    background-position: 17% 27%;
    background-size: auto 136%;
  }
  .m-ppa-fv__bg::after {
    background: linear-gradient(to bottom, rgba(232, 233, 233, 0) 85%, #e8e9e9 100%);
  }
  .m-ppa-fv__ittan {
    top: auto;
    bottom: calc(93 * 1rem / var(--font-size__base));
    left: auto;
    right: calc(-86 * 1rem / var(--font-size__base));
    width: calc(663 * 1rem / var(--font-size__base));
    transform: rotate(-75deg);
  }
  .m-ppa-fv__inner {
    row-gap: calc(38 * 1rem / var(--font-size__base));
    -webkit-padding-before: calc(120 * 1rem / var(--font-size__base));
            padding-block-start: calc(120 * 1rem / var(--font-size__base));
    -webkit-padding-after: calc(60 * 1rem / var(--font-size__base));
            padding-block-end: calc(60 * 1rem / var(--font-size__base));
  }
  .m-ppa-fv__label {
    font-size: calc(14 * 1rem / var(--font-size__base));
    font-weight: 500;
    padding-block: calc(6 * 1rem / var(--font-size__base));
    padding-inline: calc(10 * 1rem / var(--font-size__base));
    line-height: 1.2;
  }
  .m-ppa-fv__title {
    -webkit-padding-before: calc(16 * 1rem / var(--font-size__base));
            padding-block-start: calc(16 * 1rem / var(--font-size__base));
  }
  .m-ppa-fv__title-en {
    font-size: calc(42 * 1rem / var(--font-size__base));
    line-height: 1;
  }
  .m-ppa-fv__title-ja {
    line-height: 1.5;
  }
  .m-ppa-fv__copy {
    row-gap: calc(18 * 1rem / var(--font-size__base));
  }
  .m-ppa-fv__catch {
    font-size: calc(24 * 1rem / var(--font-size__base));
    line-height: 1.25;
  }
  .m-ppa-flow {
    -webkit-padding-before: calc(60 * 1rem / var(--font-size__base));
            padding-block-start: calc(60 * 1rem / var(--font-size__base));
    -webkit-padding-after: calc(60 * 1rem / var(--font-size__base));
            padding-block-end: calc(60 * 1rem / var(--font-size__base));
  }
  .m-ppa-flow__list {
    grid-template-columns: 1fr;
    row-gap: calc(10 * 1rem / var(--font-size__base));
  }
  .m-ppa-flow__item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
    -moz-column-gap: calc(20 * 1rem / var(--font-size__base));
         column-gap: calc(20 * 1rem / var(--font-size__base));
    row-gap: 0;
    align-items: center;
    padding-block: calc(20 * 1rem / var(--font-size__base));
    padding-inline: calc(15 * 1rem / var(--font-size__base));
  }
  .m-ppa-flow__item-icon {
    min-height: 0;
  }
  .m-ppa-flow__item-icon img {
    max-width: 100%;
  }
  .m-ppa-flow__item-note {
    -webkit-padding-before: calc(28 * 1rem / var(--font-size__base));
            padding-block-start: calc(28 * 1rem / var(--font-size__base));
  }
  .m-ppa-feature {
    -webkit-padding-before: calc(60 * 1rem / var(--font-size__base));
            padding-block-start: calc(60 * 1rem / var(--font-size__base));
    -webkit-padding-after: calc(60 * 1rem / var(--font-size__base));
            padding-block-end: calc(60 * 1rem / var(--font-size__base));
  }
  .m-ppa-feature__inner {
    row-gap: calc(48 * 1rem / var(--font-size__base));
  }
  .m-ppa-feature__scroll {
    overflow-x: visible;
  }
  .m-ppa-feature__grid {
    min-width: 0;
  }
  .m-ppa-feature__header-row {
    display: flex;
    -moz-column-gap: calc(2 * 1rem / var(--font-size__base));
         column-gap: calc(2 * 1rem / var(--font-size__base));
    -webkit-border-after: 0;
            border-block-end: 0;
  }
  .m-ppa-feature__th {
    flex: 1;
  }
  .m-ppa-feature__th--empty {
    display: none;
  }
  .m-ppa-feature__type-name {
    height: calc(74 * 1rem / var(--font-size__base));
    font-size: calc(16 * 1rem / var(--font-size__base));
    line-height: 1.375;
  }
  .m-ppa-feature__type {
    padding-block: calc(30 * 1rem / var(--font-size__base));
    padding-inline: calc(15 * 1rem / var(--font-size__base));
  }
  .m-ppa-feature__type-icon {
    padding: calc(5 * 1rem / var(--font-size__base));
  }
  .m-ppa-feature__type-icon img {
    max-height: calc(92 * 1rem / var(--font-size__base));
  }
  .m-ppa-feature__type-recommend {
    flex-direction: column;
    row-gap: calc(14 * 1rem / var(--font-size__base));
    -moz-column-gap: 0;
         column-gap: 0;
    align-items: flex-start;
    width: 100%;
  }
  .m-ppa-feature__type-target {
    font-size: calc(16 * 1rem / var(--font-size__base));
    line-height: 1.25;
    text-align: left;
  }
  .m-ppa-feature__row {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .m-ppa-feature__row-label {
    grid-column: 1/-1;
    padding-block: calc(15 * 1rem / var(--font-size__base));
    padding-inline: calc(20 * 1rem / var(--font-size__base));
    -webkit-border-before: 2px solid #ecf3f4;
            border-block-start: 2px solid #ecf3f4;
    -webkit-border-after: 2px solid #ecf3f4;
            border-block-end: 2px solid #ecf3f4;
  }
  .m-ppa-feature__td {
    flex-direction: column;
    justify-content: center;
    row-gap: calc(18 * 1rem / var(--font-size__base));
    padding-block: calc(15 * 1rem / var(--font-size__base));
    padding-inline: calc(15 * 1rem / var(--font-size__base));
    -webkit-border-after: 0;
            border-block-end: 0;
  }
  .m-ppa-feature__td:has(> .m-ppa-feature__timing) {
    align-items: flex-start;
  }
  .m-ppa-feature__td--colspan2 {
    grid-column: 2/-1;
  }
  .m-ppa-feature__mark {
    font-size: calc(14 * 1rem / var(--font-size__base));
  }
  .m-ppa-feature__timing {
    grid-template-columns: 1fr;
    row-gap: calc(12 * 1rem / var(--font-size__base));
  }
  .m-ppa-feature__timing-group {
    row-gap: calc(5 * 1rem / var(--font-size__base));
  }
  .m-ppa-feature__timing-item .m-ppa-feature__mark {
    width: calc(24 * 1rem / var(--font-size__base));
    height: calc(24 * 1rem / var(--font-size__base));
  }
  .m-ppa-feature__timing-text {
    -webkit-padding-start: calc(8 * 1rem / var(--font-size__base));
            padding-inline-start: calc(8 * 1rem / var(--font-size__base));
  }
  .m-ppa-faq {
    -webkit-padding-before: calc(60 * 1rem / var(--font-size__base));
            padding-block-start: calc(60 * 1rem / var(--font-size__base));
    -webkit-padding-after: calc(60 * 1rem / var(--font-size__base));
            padding-block-end: calc(60 * 1rem / var(--font-size__base));
  }
  .m-ppa-faq__inner {
    row-gap: calc(24 * 1rem / var(--font-size__base));
  }
  .m-ppa-faq__list {
    row-gap: calc(24 * 1rem / var(--font-size__base));
  }
  .m-ppa-about {
    grid-template-columns: 1fr;
    min-height: 0;
    background-image: var(--_bg-sp);
    background-position: 68% center;
  }
  .m-ppa-about__left {
    background-color: transparent;
    justify-content: flex-start;
    align-items: flex-start;
    -webkit-padding-before: calc(15 * 1rem / var(--font-size__base));
            padding-block-start: calc(15 * 1rem / var(--font-size__base));
    -webkit-padding-after: calc(60 * 1rem / var(--font-size__base));
            padding-block-end: calc(60 * 1rem / var(--font-size__base));
    padding-inline: calc(15 * 1rem / var(--font-size__base));
  }
  .m-ppa-about__left-inner {
    max-width: calc(630 * 1rem / var(--font-size__base));
    background-color: rgba(0, 0, 0, 0.65);
    margin-inline: auto;
    padding-block: calc(30 * 1rem / var(--font-size__base));
    padding-inline: calc(20 * 1rem / var(--font-size__base));
  }
  .m-ppa-about__body {
    row-gap: 0;
    -webkit-padding-before: calc(10 * 1rem / var(--font-size__base));
            padding-block-start: calc(10 * 1rem / var(--font-size__base));
  }
  .m-ppa-about__right {
    max-width: calc(630 * 1rem / var(--font-size__base));
    width: 100%;
    min-height: calc(140 * 1rem / var(--font-size__base));
    margin-inline: auto;
  }
  .m-ppa-about__label {
    font-size: calc(50 * 1rem / var(--font-size__base));
    bottom: calc(34 * 1rem / var(--font-size__base));
    right: auto;
    left: calc(13 * 1rem / var(--font-size__base));
  }
  .m-photo-slider {
    --_gap: 0;
    gap: calc(24 * 1rem / var(--font-size__base));
    padding-top: calc(28 * 1rem / var(--font-size__base));
  }
  .m-photo-slider__row--reverse {
    --_gap: calc(7 * 1rem / var(--font-size__base));
  }
  .m-photo-slider__item {
    min-height: calc(118 * 1rem / var(--font-size__base));
    border-radius: calc(20 * 1rem / var(--font-size__base));
  }
  .m-photo-slider__item--large {
    width: calc(260 * 1rem / var(--font-size__base));
    height: calc(190 * 1rem / var(--font-size__base));
  }
  .m-photo-slider__item--01 {
    width: calc(344 * 1rem / var(--font-size__base));
    border-radius: calc(20 * 1rem / var(--font-size__base));
    margin-left: calc(-62 * 1rem / var(--font-size__base));
  }
  .m-photo-slider__item--02 {
    width: calc(322 * 1rem / var(--font-size__base));
    border-radius: calc(20 * 1rem / var(--font-size__base));
    margin-top: calc(122 * 1rem / var(--font-size__base));
    margin-left: calc(-62 * 1rem / var(--font-size__base));
  }
  .m-philosophy {
    padding-top: calc(80 * 1rem / var(--font-size__base));
    padding-bottom: calc(80 * 1rem / var(--font-size__base));
  }
  .m-philosophy__cols {
    grid-template-columns: 1fr;
  }
  .m-philosophy__text {
    padding-top: calc(40 * 1rem / var(--font-size__base));
    font-size: calc(15 * 1rem / var(--font-size__base));
    line-height: 1.875;
  }
  .m-philosophy__right {
    margin-top: calc(40 * 1rem / var(--font-size__base));
    margin-inline: 0;
  }
  .m-partner-strengths__list {
    display: flex;
    flex-direction: column;
    row-gap: calc(15 * 1rem / var(--font-size__base));
  }
  .m-partner-strengths__item {
    display: flex;
    flex-direction: column;
    row-gap: calc(18 * 1rem / var(--font-size__base));
    padding-block: calc(28 * 1rem / var(--font-size__base));
    padding-inline: calc(54 * 1rem / var(--font-size__base));
    align-items: center;
  }
  .m-partner-strengths__icon {
    height: calc(150 * 1rem / var(--font-size__base));
  }
  .m-partner-strengths__item:nth-child(2) .m-partner-strengths__icon {
    height: calc(121 * 1rem / var(--font-size__base));
  }
  .m-partner-strengths__item:nth-child(3) .m-partner-strengths__icon {
    height: calc(160 * 1rem / var(--font-size__base));
  }
  .m-partner-strengths__item-title {
    width: 100%;
    -webkit-padding-before: 0;
            padding-block-start: 0;
  }
  .m-partner-strengths__item-text {
    -webkit-padding-before: 0;
            padding-block-start: 0;
  }
  .m-partner-recruit__list {
    row-gap: calc(15 * 1rem / var(--font-size__base));
  }
  .m-partner-recruit__item {
    border-radius: calc(16 * 1rem / var(--font-size__base));
  }
  .m-partner-recruit__button {
    padding-block: calc(20 * 1rem / var(--font-size__base));
    padding-inline: calc(15 * 1rem / var(--font-size__base));
    -moz-column-gap: calc(16 * 1rem / var(--font-size__base));
         column-gap: calc(16 * 1rem / var(--font-size__base));
  }
  .m-partner-recruit__button-left {
    -moz-column-gap: calc(26 * 1rem / var(--font-size__base));
         column-gap: calc(26 * 1rem / var(--font-size__base));
  }
  .m-partner-recruit__item-title {
    font-size: calc(24 * 1rem / var(--font-size__base));
    line-height: 1.5;
  }
  .m-partner-recruit__panel-inner {
    -webkit-padding-before: calc(16 * 1rem / var(--font-size__base));
            padding-block-start: calc(16 * 1rem / var(--font-size__base));
    -webkit-padding-after: calc(30 * 1rem / var(--font-size__base));
            padding-block-end: calc(30 * 1rem / var(--font-size__base));
    padding-inline: calc(15 * 1rem / var(--font-size__base));
    row-gap: calc(36 * 1rem / var(--font-size__base));
  }
  .m-partner-page .l-inner {
    --_padding-inline: 15;
  }
  .m-partner-page__body {
    -webkit-padding-after: calc(60 * 1rem / var(--font-size__base));
            padding-block-end: calc(60 * 1rem / var(--font-size__base));
  }
  .m-partner-page__recruit {
    -webkit-padding-before: calc(60 * 1rem / var(--font-size__base));
            padding-block-start: calc(60 * 1rem / var(--font-size__base));
    -webkit-padding-after: calc(60 * 1rem / var(--font-size__base));
            padding-block-end: calc(60 * 1rem / var(--font-size__base));
  }
  .m-partner-page__why {
    padding-block: calc(60 * 1rem / var(--font-size__base));
  }
  .m-partner-page__strengths {
    padding-block: calc(60 * 1rem / var(--font-size__base));
  }
  .m-partner-page__flow {
    padding-block: calc(60 * 1rem / var(--font-size__base));
  }
  .m-partner-fv {
    min-height: 0;
  }
  .m-partner-fv__bg-image {
    position: absolute;
    top: calc(-68 * 1rem / var(--font-size__base));
    left: calc(-645 * 1rem / var(--font-size__base));
    width: calc(1700 * 1rem / var(--font-size__base));
    height: auto;
    max-width: none;
    -o-object-fit: unset;
       object-fit: unset;
    -o-object-position: unset;
       object-position: unset;
  }
  .m-partner-fv__ittan {
    top: auto;
    bottom: calc(59 * 1rem / var(--font-size__base));
    left: calc(277 * 1rem / var(--font-size__base));
    width: calc(663 * 1rem / var(--font-size__base));
    transform: translateX(-50%) scaleX(-1) rotate(-70deg);
  }
  .m-partner-fv__inner {
    -webkit-padding-before: calc(50 * 1rem / var(--font-size__base));
            padding-block-start: calc(50 * 1rem / var(--font-size__base));
    -webkit-padding-after: calc(82 * 1rem / var(--font-size__base));
            padding-block-end: calc(82 * 1rem / var(--font-size__base));
  }
  .m-partner-fv__en {
    font-size: calc(42 * 1rem / var(--font-size__base));
    line-height: 1;
  }
  .m-partner-fv__ja {
    font-size: calc(24 * 1rem / var(--font-size__base));
    -webkit-padding-before: calc(8 * 1rem / var(--font-size__base));
            padding-block-start: calc(8 * 1rem / var(--font-size__base));
  }
  .m-partner-fv__heading {
    font-size: calc(24 * 1rem / var(--font-size__base));
    line-height: 1.25;
    -webkit-padding-before: calc(108 * 1rem / var(--font-size__base));
            padding-block-start: calc(108 * 1rem / var(--font-size__base));
  }
  .m-partner-fv__text {
    font-size: calc(18 * 1rem / var(--font-size__base));
    line-height: 1.5;
    -webkit-padding-before: calc(28 * 1rem / var(--font-size__base));
            padding-block-start: calc(28 * 1rem / var(--font-size__base));
  }
  .m-partner-fv__text p + p {
    margin-top: calc(27 * 1rem / var(--font-size__base));
  }
  .m-partner-flow__list {
    grid-template-columns: 1fr;
    -moz-column-gap: calc(10 * 1rem / var(--font-size__base));
         column-gap: calc(10 * 1rem / var(--font-size__base));
    row-gap: calc(10 * 1rem / var(--font-size__base));
    -webkit-padding-before: calc(10 * 1rem / var(--font-size__base));
            padding-block-start: calc(10 * 1rem / var(--font-size__base));
  }
  .m-partner-flow__item {
    display: grid;
    grid-template-columns: calc(100 * 1rem / var(--font-size__base)) 1fr;
    align-items: center;
    padding-block: calc(20 * 1rem / var(--font-size__base));
    padding-inline: calc(15 * 1rem / var(--font-size__base));
    -moz-column-gap: calc(20 * 1rem / var(--font-size__base));
         column-gap: calc(20 * 1rem / var(--font-size__base));
    row-gap: 0;
  }
  .m-partner-flow__icon {
    height: calc(80 * 1rem / var(--font-size__base));
  }
  .m-page-title-recruit {
    font-size: calc(40 * 1rem / var(--font-size__base));
    line-height: 1.25;
  }
  .m-page-title-recruit__sub {
    font-size: calc(24 * 1rem / var(--font-size__base));
    padding-top: calc(4 * 1rem / var(--font-size__base));
  }
  .m-page-hero {
    height: calc(300 * 1rem / var(--font-size__base));
    padding-block: calc(80 * 1rem / var(--font-size__base));
  }
  .m-page-hero--small {
    align-items: flex-start;
    height: calc(268 * 1rem / var(--font-size__base));
    padding-top: calc(120 * 1rem / var(--font-size__base));
    padding-bottom: 0;
  }
  .m-page-hero__bg {
    background-image: var(--_bg-sp);
  }
  .m-page-hero-title {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
  }
  .m-page-hero-title__en {
    font-size: calc(42 * 1rem / var(--font-size__base));
    line-height: 1;
  }
  .m-page-hero-title__ja {
    font-size: calc(22 * 1rem / var(--font-size__base));
    font-weight: 600;
    letter-spacing: 0.08em;
    line-height: 1.4545454545;
  }
  .m-offset-border::before,
  .m-offset-border::after {
    width: calc(100% + 7 * 1rem / var(--font-size__base));
    height: calc(100% - 16 * 1rem / var(--font-size__base));
  }
  .m-offset-border::before {
    top: calc(19 * 1rem / var(--font-size__base));
    left: 0;
  }
  .m-offset-border::after {
    top: calc(26 * 1rem / var(--font-size__base));
    left: calc(-7 * 1rem / var(--font-size__base));
  }
  .m-not-found {
    padding-top: calc(144 * 1rem / var(--font-size__base));
    padding-bottom: calc(98 * 1rem / var(--font-size__base));
    padding-inline: calc(20 * 1rem / var(--font-size__base));
  }
  .m-not-found__card {
    gap: calc(40 * 1rem / var(--font-size__base));
    width: 100%;
    padding-block: calc(50 * 1rem / var(--font-size__base));
    padding-inline: calc(20 * 1rem / var(--font-size__base));
    border-radius: calc(12 * 1rem / var(--font-size__base));
  }
  .m-not-found__title {
    font-size: calc(40 * 1rem / var(--font-size__base));
    line-height: 1.4;
  }
  .m-not-found__subtitle {
    padding-top: calc(16 * 1rem / var(--font-size__base));
    font-size: calc(16 * 1rem / var(--font-size__base));
    line-height: 1.75;
  }
  .m-not-found__description {
    font-size: calc(14 * 1rem / var(--font-size__base));
    line-height: 2;
  }
  .m-not-found-recruit {
    padding-bottom: calc(60 * 1rem / var(--font-size__base));
  }
  .m-not-found-recruit__bg-logomark {
    top: calc(-40 * 1rem / var(--font-size__base));
    width: calc(280 / 430 * 100vw);
  }
  .m-not-found-recruit__bg-text {
    height: auto;
    display: flex;
    flex-direction: column;
    padding-inline: calc(24 * 1rem / var(--font-size__base));
    gap: calc(4 * 1rem / var(--font-size__base));
  }
  .m-not-found-recruit__heading {
    padding-top: calc(120 * 1rem / var(--font-size__base));
  }
  .m-not-found-recruit__title {
    font-size: calc(36 * 1rem / var(--font-size__base));
    line-height: 1.2222222222;
  }
  .m-not-found-recruit__subtitle {
    font-size: calc(22 * 1rem / var(--font-size__base));
    line-height: 1.3636363636;
  }
  .m-not-found-recruit__card {
    gap: calc(40 * 1rem / var(--font-size__base));
    padding-block: calc(50 * 1rem / var(--font-size__base));
    padding-inline: calc(24 * 1rem / var(--font-size__base));
    border-radius: calc(24 * 1rem / var(--font-size__base));
  }
  .m-not-found-recruit__description {
    font-size: calc(14 * 1rem / var(--font-size__base));
    line-height: 1.7142857143;
  }
  .m-news {
    padding-top: calc(73 * 1rem / var(--font-size__base));
    padding-bottom: calc(121 / 430 * 100vw);
  }
  .m-news__header {
    flex-direction: column;
    align-items: flex-start;
    gap: calc(20 * 1rem / var(--font-size__base));
  }
  .m-news__list {
    padding-top: calc(50 * 1rem / var(--font-size__base));
  }
  .m-news__footer {
    display: flex;
    justify-content: center;
    padding-top: calc(50 * 1rem / var(--font-size__base));
  }
  .m-news-single {
    padding-top: calc(100 * 1rem / var(--font-size__base));
    padding-bottom: calc(80 * 1rem / var(--font-size__base));
  }
  .m-news-single__meta {
    gap: calc(16 * 1rem / var(--font-size__base));
  }
  .m-news-single__date {
    font-size: calc(13 * 1rem / var(--font-size__base));
  }
  .m-news-single__tag {
    min-width: calc(100 * 1rem / var(--font-size__base));
    font-size: calc(12 * 1rem / var(--font-size__base));
  }
  .m-news-single__title {
    font-size: calc(22 * 1rem / var(--font-size__base));
    line-height: 1.6363636364;
    padding-top: calc(16 * 1rem / var(--font-size__base));
    padding-bottom: calc(15 * 1rem / var(--font-size__base));
  }
  .m-news-single__content {
    padding-top: calc(32 * 1rem / var(--font-size__base));
  }
  .m-news-single__pdf {
    padding-top: calc(32 * 1rem / var(--font-size__base));
  }
  .m-news-single__pdf-icon {
    width: calc(16 * 1rem / var(--font-size__base));
    height: calc(20 * 1rem / var(--font-size__base));
  }
  .m-news-single__pdf-name {
    font-size: calc(13 * 1rem / var(--font-size__base));
  }
  .m-news-single__pagination {
    gap: calc(16 * 1rem / var(--font-size__base));
    padding-top: calc(60 * 1rem / var(--font-size__base));
  }
  .m-news-single__pagination-button {
    justify-content: center;
    gap: calc(24 * 1rem / var(--font-size__base));
    padding-top: calc(12 * 1rem / var(--font-size__base));
    padding-bottom: calc(12 * 1rem / var(--font-size__base));
    font-size: calc(13 * 1rem / var(--font-size__base));
  }
  .m-news-single__pagination-arrow {
    width: calc(18 * 1rem / var(--font-size__base));
    height: calc(18 * 1rem / var(--font-size__base));
  }
  .m-news-page__body {
    padding-top: calc(24 * 1rem / var(--font-size__base));
    padding-bottom: calc(110 * 1rem / var(--font-size__base));
  }
  .m-news-page__filter-label {
    font-size: calc(13 * 1rem / var(--font-size__base));
  }
  .m-dropdown__trigger {
    min-width: calc(140 * 1rem / var(--font-size__base));
    gap: calc(12 * 1rem / var(--font-size__base));
    padding-top: calc(12 * 1rem / var(--font-size__base));
    padding-bottom: calc(12 * 1rem / var(--font-size__base));
    padding-left: calc(20 * 1rem / var(--font-size__base));
    padding-right: calc(16 * 1rem / var(--font-size__base));
    font-size: calc(13 * 1rem / var(--font-size__base));
  }
  .m-dropdown__arrow {
    width: calc(18 * 1rem / var(--font-size__base));
    height: calc(18 * 1rem / var(--font-size__base));
  }
  .m-dropdown__item {
    padding-top: calc(10 * 1rem / var(--font-size__base));
    padding-bottom: calc(10 * 1rem / var(--font-size__base));
    padding-inline: calc(20 * 1rem / var(--font-size__base));
    font-size: calc(13 * 1rem / var(--font-size__base));
  }
  .m-news-page__list {
    padding-top: calc(24 * 1rem / var(--font-size__base));
  }
  .m-news-page__pagination {
    padding-top: calc(40 * 1rem / var(--font-size__base));
  }
  .m-pagination {
    gap: calc(4 * 1rem / var(--font-size__base));
    padding-block: calc(16 * 1rem / var(--font-size__base));
    padding-inline: calc(16 * 1rem / var(--font-size__base));
  }
  .m-pagination__number {
    min-width: calc(36 * 1rem / var(--font-size__base));
    height: calc(36 * 1rem / var(--font-size__base));
    font-size: calc(13 * 1rem / var(--font-size__base));
  }
  .m-pagination__link {
    width: calc(36 * 1rem / var(--font-size__base));
    height: calc(36 * 1rem / var(--font-size__base));
  }
  .m-news-item__link {
    flex-wrap: wrap;
    align-items: center;
    -moz-column-gap: calc(15 * 1rem / var(--font-size__base));
         column-gap: calc(15 * 1rem / var(--font-size__base));
    row-gap: calc(10 * 1rem / var(--font-size__base));
    padding-block: calc(25 * 1rem / var(--font-size__base));
    padding-inline: calc(15 * 1rem / var(--font-size__base));
  }
  .m-news-item__date {
    font-size: calc(13 * 1rem / var(--font-size__base));
    line-height: 1.4615384615;
  }
  .m-news-item__tag {
    width: calc(100 * 1rem / var(--font-size__base));
    padding-block: calc(2 * 1rem / var(--font-size__base));
    font-size: calc(11 * 1rem / var(--font-size__base));
  }
  .m-news-item__text {
    flex: none;
    width: 100%;
    font-size: calc(15 * 1rem / var(--font-size__base));
    line-height: 1.6;
  }
  .m-news-item__pdf {
    gap: calc(15 * 1rem / var(--font-size__base));
  }
  .m-news-item__pdf-icon {
    width: calc(16 * 1rem / var(--font-size__base));
    height: calc(20 * 1rem / var(--font-size__base));
  }
  .m-news-item__pdf-size {
    font-size: calc(12 * 1rem / var(--font-size__base));
  }
  .m-mv__title {
    font-size: calc(36 * 1rem / var(--font-size__base));
    font-weight: 900;
    letter-spacing: 0.14em;
    line-height: 1.7826086957;
    text-shadow: none;
  }
  .m-mv__button {
    justify-content: center;
  }
  .m-mv__contact {
    left: 50%;
    right: auto;
    bottom: calc(10 * 1rem / var(--font-size__base));
    transform: translateX(-50%);
  }
  .m-mv__contact.is-header-hidden {
    transform: translateX(-50%) translateY(calc(100% + 30 * 1rem / var(--font-size__base)));
  }
  .m-fixed-entry {
    left: 50%;
    right: auto;
    bottom: calc(10 * 1rem / var(--font-size__base));
    transform: translateX(-50%);
  }
  .m-fixed-entry.is-header-hidden {
    transform: translateX(-50%) translateY(calc(100% + 30 * 1rem / var(--font-size__base)));
  }
  .m-mv__scroll {
    right: calc(15 * 1rem / var(--font-size__base));
  }
  .m-mv__scroll-line {
    height: calc(60 * 1rem / var(--font-size__base));
  }
  .m-mv-recruit {
    z-index: auto;
  }
  .m-mv-recruit__overlay {
    display: block;
    position: absolute;
    inset: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    pointer-events: none;
    mix-blend-mode: multiply;
  }
  .m-mv-recruit__bg-image {
    -o-object-position: left;
       object-position: left;
  }
  .m-mv-recruit__inner {
    align-items: center;
    padding-top: calc(214 * 1rem / var(--font-size__base));
  }
  .m-mv-recruit__content {
    width: calc(100% - var(--_padding-inline) * 1rem / var(--font-size__base) * 2);
  }
  .m-mv-recruit__title {
    position: relative;
    z-index: 5;
    font-size: calc(46 * 1rem / var(--font-size__base));
    line-height: 1.7826086957;
    letter-spacing: 0.14em;
    text-shadow: 0 0 calc(40 * 1rem / var(--font-size__base)) rgba(0, 0, 0, 0.4);
  }
  .m-mv-recruit__entry {
    display: flex;
    justify-content: flex-end;
  }
  .m-mv-recruit__bg-text {
    bottom: calc(-16 * 1rem / var(--font-size__base));
    transform: translateY(0);
    height: auto;
  }
  .m-mv-recruit__bg-text-blur {
    -webkit-backdrop-filter: blur(calc(8 * 1rem / var(--font-size__base))) brightness(1.2);
            backdrop-filter: blur(calc(8 * 1rem / var(--font-size__base))) brightness(1.2);
  }
  .m-mv-recruit__ittan-momen {
    bottom: calc(17 * 1rem / var(--font-size__base));
    left: calc(-31 * 1rem / var(--font-size__base));
    width: calc(540 / 430 * 100vw);
    rotate: 20deg;
  }
  .m-mv-about {
    z-index: auto;
    min-height: calc(500 * 1rem / var(--font-size__base));
  }
  .m-mv-about__bg-text {
    top: 50%;
    transform: translateY(-50%);
  }
  .m-mv-about__ittan-momen {
    left: calc(13 * 1rem / var(--font-size__base));
    bottom: calc(-316 / 430 * 100vw);
  }
  .m-mv-about__entry {
    bottom: calc(50 * 1rem / var(--font-size__base));
    justify-content: center;
    max-width: none;
    padding-right: calc(25 * 1rem / var(--font-size__base));
    padding-left: calc(25 * 1rem / var(--font-size__base));
  }
  .m-more-button {
    gap: calc(24 * 1rem / var(--font-size__base));
    padding-block: calc(12 * 1rem / var(--font-size__base));
  }
  .m-more-button__icon {
    width: calc(20 * 1rem / var(--font-size__base));
    height: calc(20 * 1rem / var(--font-size__base));
  }
  .m-message {
    padding-top: calc(89 * 1rem / var(--font-size__base));
    padding-bottom: calc(116 * 1rem / var(--font-size__base));
  }
  .m-message__marquee-track {
    --_marquee-track-height: 949;
  }
  .m-message__marquee-track:nth-child(1) {
    top: calc(308 / var(--_marquee-track-height) * 100%);
  }
  .m-message__marquee-track:nth-child(2) {
    top: calc(436 / var(--_marquee-track-height) * 100%);
  }
  .m-message__marquee-track:nth-child(3) {
    top: calc(654 / var(--_marquee-track-height) * 100%);
  }
  .m-message__marquee-track:nth-child(4) {
    top: calc(739 / var(--_marquee-track-height) * 100%);
  }
  .m-message__marquee-text {
    font-size: calc(24 * 1rem / var(--font-size__base));
    padding-right: calc(30 * 1rem / var(--font-size__base));
  }
  .m-message__marquee-track--fast .m-message__marquee-text {
    font-size: calc(32.8 * 1rem / var(--font-size__base));
    line-height: 1.3109756098;
  }
  .m-message__marquee-text--gray {
    font-size: calc(66.4 * 1rem / var(--font-size__base));
    line-height: 1.3403614458;
  }
  .m-message__title {
    font-size: calc(32 * 1rem / var(--font-size__base));
  }
  .m-message__body {
    margin-inline: calc(-3 * 1rem / var(--font-size__base));
    padding-top: calc(77 * 1rem / var(--font-size__base));
  }
  .m-message__text {
    font-size: calc(16 * 1rem / var(--font-size__base));
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.875;
  }
  .m-message__text + .m-message__text--highlight {
    padding-top: calc(32 * 1rem / var(--font-size__base));
  }
  .m-message__text--highlight + .m-message__text {
    padding-top: calc(38 * 1rem / var(--font-size__base));
  }
  .m-message__text--highlight {
    font-size: calc(18 * 1rem / var(--font-size__base));
    letter-spacing: 0.036em;
  }
  .m-job-opening {
    padding-top: calc(156 * 1rem / var(--font-size__base));
    padding-bottom: calc(64 * 1rem / var(--font-size__base));
  }
  .m-job-opening__bg {
    -webkit-clip-path: polygon(0 calc(181 * 1rem / var(--font-size__base)), 100% calc(181 * 1rem / var(--font-size__base)), 100% 100%, 0 100%);
            clip-path: polygon(0 calc(181 * 1rem / var(--font-size__base)), 100% calc(181 * 1rem / var(--font-size__base)), 100% 100%, 0 100%);
  }
  .m-job-opening__ittan-momen {
    top: calc(188 * 1rem / var(--font-size__base));
    left: 39%;
    rotate: 10deg;
    width: calc(468 / 430 * 100vw);
  }
  .m-job-opening__inner {
    --_max-width: 450;
  }
  .m-job-opening__list {
    grid-template-columns: 1fr;
    gap: calc(31 * 1rem / var(--font-size__base));
    padding-top: calc(90 * 1rem / var(--font-size__base));
  }
  .m-job-opening__item-text {
    font-size: calc(18 * 1rem / var(--font-size__base));
    letter-spacing: 0.32em;
  }
  .m-job-link {
    padding-block: calc(18 * 1rem / var(--font-size__base));
    padding-right: calc(29 * 1rem / var(--font-size__base));
    padding-left: calc(38 * 1rem / var(--font-size__base));
    min-height: auto;
  }
  .m-job-link__arrow {
    width: calc(10 * 1rem / var(--font-size__base));
  }
  .m-interview {
    overflow-x: clip;
  }
  .m-interview__bg {
    -webkit-clip-path: polygon(0 calc(21 * 1rem / var(--font-size__base)), 100% calc(21 * 1rem / var(--font-size__base)), 100% 100%, 0 100%);
            clip-path: polygon(0 calc(21 * 1rem / var(--font-size__base)), 100% calc(21 * 1rem / var(--font-size__base)), 100% 100%, 0 100%);
  }
  .m-interview__inner {
    --_max-width: 450;
  }
  .m-interview__content {
    padding-top: calc(59 * 1rem / var(--font-size__base));
    padding-bottom: calc(80 * 1rem / var(--font-size__base));
  }
  .m-interview__cards {
    grid-template-columns: 1fr;
  }
  .m-interview__card + .m-interview__card {
    margin-top: calc(60 * 1rem / var(--font-size__base));
  }
  .m-interview__card-info {
    text-align: right;
    min-height: calc(378 * 1rem / var(--font-size__base));
  }
  .m-interview__card-catch {
    font-size: calc(24 * 1rem / var(--font-size__base));
    line-height: 1.6666666667;
    margin-right: calc(-27 * 1rem / var(--font-size__base));
  }
  .m-interview__card-profile {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    text-align: left;
    margin-left: auto;
    padding-top: calc(9 * 1rem / var(--font-size__base));
  }
  .m-interview__card-position {
    font-size: calc(10 * 1rem / var(--font-size__base));
    letter-spacing: 0.144em;
    line-height: 3.5;
  }
  .m-interview__card-name {
    font-size: calc(22 * 1rem / var(--font-size__base));
    padding-top: calc(0 * 1rem / var(--font-size__base));
  }
  .m-interview__card-name-en {
    font-size: calc(11 * 1rem / var(--font-size__base));
    font-weight: 600;
    letter-spacing: 0.08em;
    padding-top: calc(4 * 1rem / var(--font-size__base));
  }
  .m-interview__card-join {
    font-size: calc(12 * 1rem / var(--font-size__base));
    letter-spacing: 0.096em;
    padding-top: calc(1 * 1rem / var(--font-size__base));
  }
  .m-interview__card-video {
    max-width: 100%;
    -webkit-padding-before: calc(45 * 1rem / var(--font-size__base));
            padding-block-start: calc(45 * 1rem / var(--font-size__base));
  }
  .m-interview__card-image {
    left: calc(-10 * 1rem / var(--font-size__base));
    right: auto;
    top: calc(-27 * 1rem / var(--font-size__base));
    bottom: auto;
    width: calc(259 * 1rem / var(--font-size__base));
    height: calc(274 * 1rem / var(--font-size__base));
  }
  .m-interview__card-number {
    position: absolute;
    top: calc(-25 * 1rem / var(--font-size__base));
    left: calc(-21 * 1rem / var(--font-size__base));
    font-size: calc(130 * 1rem / var(--font-size__base));
    line-height: 1.2230769231;
    padding-top: 0;
  }
  .m-interview__card--reverse .m-interview__card-info {
    min-height: calc(369 * 1rem / var(--font-size__base));
    text-align: left;
  }
  .m-interview__card--reverse .m-interview__card-image {
    top: calc(-43 * 1rem / var(--font-size__base));
    bottom: auto;
    left: auto;
    right: calc(28 * 1rem / var(--font-size__base));
    width: calc(218 * 1rem / var(--font-size__base));
  }
  .m-interview__card--reverse .m-interview__card-number {
    top: calc(-46 * 1rem / var(--font-size__base));
    left: auto;
    right: calc(-38 * 1rem / var(--font-size__base));
    margin-right: 0;
  }
  .m-interview__card--reverse .m-interview__card-profile {
    margin-left: 0;
  }
  .m-interview__card--reverse .m-interview__card-catch {
    line-height: 1.5;
  }
  .m-interview__card--reverse .m-interview__card-video {
    -webkit-padding-before: calc(20 * 1rem / var(--font-size__base));
            padding-block-start: calc(20 * 1rem / var(--font-size__base));
  }
  .m-icon-button__text {
    font-size: calc(15 * 1rem / var(--font-size__base));
    font-weight: 700;
    letter-spacing: 0.056em;
    line-height: 1.4;
  }
  .m-home__works {
    --_overlap: calc(240 * 1rem / var(--font-size__base));
  }
  .m-home__contact {
    position: relative;
    z-index: 1;
  }
  .m-header__hamburger {
    z-index: var(--_z-index--header-above-drawer);
    justify-self: end;
    top: calc(22 * 1rem / var(--font-size__base));
    right: calc(20 * 1rem / var(--font-size__base));
  }
  .m-header__inner {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    -moz-column-gap: calc(10 * 1rem / var(--font-size__base));
         column-gap: calc(10 * 1rem / var(--font-size__base));
    height: calc(72 * 1rem / var(--font-size__base));
    -webkit-padding-start: calc(25 * 1rem / var(--font-size__base));
            padding-inline-start: calc(25 * 1rem / var(--font-size__base));
  }
  .m-header__logo {
    z-index: var(--_z-index--header-above-drawer);
  }
  .m-header__logo-image {
    width: calc(124.23 * 1rem / var(--font-size__base));
    height: calc(28 * 1rem / var(--font-size__base));
  }
  .m-header--recruit .m-header__logo-recruit {
    gap: calc(16 * 1rem / var(--font-size__base));
  }
  .m-header__logo-divider {
    height: calc(28 * 1rem / var(--font-size__base));
  }
  .m-header__logo-label {
    font-size: calc(18 * 1rem / var(--font-size__base));
  }
  .m-hamburger {
    --_width--hamburger: 64;
    --_height--hamburger: 34;
    --_width--hamburger-line: 25;
    --_spacing--hamburger-line: 6;
  }
  .m-footer__inner {
    --_max-width: 450;
    padding-top: calc(36 * 1rem / var(--font-size__base));
    padding-bottom: calc(23 * 1rem / var(--font-size__base));
  }
  .m-footer__header {
    display: block;
    margin-left: 0;
  }
  .m-footer__logo {
    width: calc(208 * 1rem / var(--font-size__base));
  }
  .m-footer__company-name {
    font-size: calc(16 * 1rem / var(--font-size__base));
    letter-spacing: 0.036em;
    line-height: 1.5;
    padding-top: calc(8 * 1rem / var(--font-size__base));
    padding-bottom: 0;
  }
  .m-footer__main {
    display: block;
    padding-top: calc(20 * 1rem / var(--font-size__base));
  }
  .m-footer__office {
    row-gap: calc(8 * 1rem / var(--font-size__base));
  }
  .m-footer__office + .m-footer__office {
    padding-top: calc(16 * 1rem / var(--font-size__base));
  }
  .m-footer__office-name {
    font-size: calc(16 * 1rem / var(--font-size__base));
    font-weight: 600;
    letter-spacing: 0.09em;
    line-height: 1.5;
  }
  .m-footer__office-address {
    font-size: calc(14 * 1rem / var(--font-size__base));
    font-weight: 700;
    letter-spacing: 0.0504em;
    line-height: 1.8;
  }
  .m-footer__contact {
    padding-top: calc(18 * 1rem / var(--font-size__base));
  }
  .m-footer__nav-wrapper {
    display: flex;
    justify-content: space-between;
    gap: calc(20 * 1rem / var(--font-size__base));
    padding-top: calc(35 * 1rem / var(--font-size__base));
  }
  .m-footer__nav {
    gap: calc(20 * 1rem / var(--font-size__base));
  }
  .m-footer__links {
    gap: calc(26 * 1rem / var(--font-size__base));
  }
  .m-footer__links-item {
    font-size: calc(14 * 1rem / var(--font-size__base));
    font-weight: 600;
    letter-spacing: 0.0225em;
    line-height: 1.4285714286;
  }
  .m-footer__bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: calc(17 * 1rem / var(--font-size__base));
    padding-top: calc(19 * 1rem / var(--font-size__base));
    margin-top: calc(30 * 1rem / var(--font-size__base));
    padding-bottom: 0;
  }
  .m-footer__external {
    width: 100%;
    justify-content: space-between;
    gap: calc(16 * 1rem / var(--font-size__base));
  }
  .m-footer__external-link {
    gap: calc(12 * 1rem / var(--font-size__base));
    font-size: calc(14 * 1rem / var(--font-size__base));
    font-weight: 600;
    letter-spacing: 0.0576em;
    line-height: 1.4285714286;
  }
  .m-footer__policy {
    gap: calc(33 * 1rem / var(--font-size__base));
  }
  .m-footer__policy-link {
    font-size: calc(13 * 1rem / var(--font-size__base));
    font-weight: 500;
    letter-spacing: 0.0504em;
    line-height: 1.4615384615;
  }
  .m-footer__copyright {
    padding-block: calc(17 * 1rem / var(--font-size__base));
  }
  .m-footer__copyright-text {
    font-size: calc(13 * 1rem / var(--font-size__base));
    font-weight: 600;
    letter-spacing: 0.064em;
    line-height: 1.2307692308;
  }
  .m-footer-menu__title {
    font-size: calc(14 * 1rem / var(--font-size__base));
    font-weight: 600;
    letter-spacing: 0.09em;
    line-height: 1.4285714286;
  }
  .m-footer-menu__list {
    padding-top: calc(8 * 1rem / var(--font-size__base));
  }
  .m-footer-menu__item {
    font-size: calc(13 * 1rem / var(--font-size__base));
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.6923076923;
  }
  .m-faq-page__body {
    padding-top: calc(60 * 1rem / var(--font-size__base));
    padding-bottom: calc(80 * 1rem / var(--font-size__base));
  }
  .m-faq-page__categories {
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: calc(20 * 1rem / var(--font-size__base));
         column-gap: calc(20 * 1rem / var(--font-size__base));
    row-gap: calc(15 * 1rem / var(--font-size__base));
  }
  .m-faq-category {
    width: 100%;
    padding-block: calc(10 * 1rem / var(--font-size__base));
    padding-left: calc(20 * 1rem / var(--font-size__base));
    padding-right: calc(15 * 1rem / var(--font-size__base));
    font-size: calc(16 * 1rem / var(--font-size__base));
    line-height: 1.5;
  }
  .m-faq-category::after {
    width: calc(22 * 1rem / var(--font-size__base));
    height: calc(22 * 1rem / var(--font-size__base));
  }
  .m-faq-page__list {
    padding-top: calc(40 * 1rem / var(--font-size__base));
  }
  .m-faq-section__title {
    font-size: calc(22 * 1rem / var(--font-size__base));
    padding-bottom: calc(8 * 1rem / var(--font-size__base));
  }
  .m-faq-section__items {
    gap: calc(24 * 1rem / var(--font-size__base));
    padding-top: calc(24 * 1rem / var(--font-size__base));
  }
  .m-faq-item__question {
    gap: calc(15 * 1rem / var(--font-size__base));
    padding-top: calc(24 * 1rem / var(--font-size__base));
    padding-bottom: calc(24 * 1rem / var(--font-size__base));
    padding-left: calc(15 * 1rem / var(--font-size__base));
    padding-right: calc(15 * 1rem / var(--font-size__base));
  }
  .m-faq-item__icon {
    width: calc(50 * 1rem / var(--font-size__base));
    height: calc(50 * 1rem / var(--font-size__base));
    font-size: calc(26 * 1rem / var(--font-size__base));
  }
  .m-faq-item__question-text {
    font-size: calc(18 * 1rem / var(--font-size__base));
  }
  .m-faq-item__arrow {
    width: calc(22 * 1rem / var(--font-size__base));
    height: calc(22 * 1rem / var(--font-size__base));
  }
  .m-faq-item__answer-inner {
    gap: calc(15 * 1rem / var(--font-size__base));
    padding-top: calc(8 * 1rem / var(--font-size__base));
    padding-bottom: calc(24 * 1rem / var(--font-size__base));
    padding-left: calc(15 * 1rem / var(--font-size__base));
    padding-right: calc(15 * 1rem / var(--font-size__base));
  }
  .m-faq-item__answer-text.m-article-content {
    font-size: calc(16 * 1rem / var(--font-size__base));
  }
  .m-entry__main {
    padding-bottom: calc(80 * 1rem / var(--font-size__base));
  }
  .m-entry__inner {
    --_padding-inline: 15;
  }
  .m-entry__bg-logomark {
    left: auto;
    right: 0;
    width: calc(200 * 1rem / var(--font-size__base));
  }
  .m-entry__watermark-sp-row--energy {
    margin-top: calc(12 * 1rem / var(--font-size__base));
  }
  .m-entry__hero {
    padding-top: calc(120 * 1rem / var(--font-size__base));
  }
  .m-entry__steps {
    -moz-column-gap: calc(14 * 1rem / var(--font-size__base));
         column-gap: calc(14 * 1rem / var(--font-size__base));
    margin-top: calc(-82 * 1rem / var(--font-size__base));
  }
  .m-entry__steps--contact {
    margin-top: 0;
  }
  .m-entry__step {
    min-height: calc(52 * 1rem / var(--font-size__base));
    padding-inline: calc(20 * 1rem / var(--font-size__base));
    font-size: calc(14 * 1rem / var(--font-size__base));
  }
  .m-entry__step-arrow {
    width: calc(40 * 1rem / var(--font-size__base));
    height: calc(14 * 1rem / var(--font-size__base));
  }
  .m-entry__form-card {
    border-radius: calc(35 * 1rem / var(--font-size__base));
    margin-top: calc(28 * 1rem / var(--font-size__base));
    padding-top: calc(50 * 1rem / var(--font-size__base));
    padding-bottom: calc(50 * 1rem / var(--font-size__base));
  }
  .m-entry__form-card-inner {
    --_padding-inline: 15;
  }
  .m-entry-form__intro {
    font-size: calc(15 * 1rem / var(--font-size__base));
    padding-block: calc(16 * 1rem / var(--font-size__base));
  }
  .m-entry-form__row {
    gap: calc(24 * 1rem / var(--font-size__base));
    padding-bottom: calc(24 * 1rem / var(--font-size__base));
  }
  .m-entry-form__row + .m-entry-form__row {
    padding-top: calc(30 * 1rem / var(--font-size__base));
  }
  .m-entry-form__label {
    gap: calc(15 * 1rem / var(--font-size__base));
    font-size: calc(22 * 1rem / var(--font-size__base));
    line-height: 1.5;
  }
  .m-entry-form__label-note {
    font-size: calc(14 * 1rem / var(--font-size__base));
  }
  .m-entry-form__cols {
    grid-template-columns: 1fr;
    gap: calc(12 * 1rem / var(--font-size__base));
  }
  .m-entry-form__cols--fixed {
    grid-template-columns: calc(175 * 1rem / var(--font-size__base)) calc(175 * 1rem / var(--font-size__base));
    gap: calc(15 * 1rem / var(--font-size__base));
  }
  .m-entry-form__cols--asym {
    grid-template-columns: 1fr;
  }
  .m-entry-form__radios .wpcf7-radio {
    gap: calc(15 * 1rem / var(--font-size__base));
  }
  .m-entry-form__radios .wpcf7-list-item {
    padding-inline: calc(16 * 1rem / var(--font-size__base));
  }
  .m-entry-form__radios .wpcf7-list-item-label {
    font-size: calc(18 * 1rem / var(--font-size__base));
  }
  .m-entry-form__date {
    gap: calc(24 * 1rem / var(--font-size__base));
  }
  .m-entry-form__date-group {
    gap: calc(15 * 1rem / var(--font-size__base));
  }
  .m-entry-form__date-group select {
    font-size: calc(18 * 1rem / var(--font-size__base));
    width: calc(111 * 1rem / var(--font-size__base));
    padding: calc(12 * 1rem / var(--font-size__base)) calc(50 * 1rem / var(--font-size__base)) calc(12 * 1rem / var(--font-size__base)) calc(15 * 1rem / var(--font-size__base));
    background-position: right calc(15 * 1rem / var(--font-size__base)) center;
  }
  .m-entry-form__date-unit {
    font-size: calc(18 * 1rem / var(--font-size__base));
  }
  .m-entry-form__employment-period {
    gap: calc(24 * 1rem / var(--font-size__base));
  }
  .m-entry-form__period-range {
    gap: calc(24 * 1rem / var(--font-size__base));
  }
  .m-entry-form__period-sep {
    font-size: calc(18 * 1rem / var(--font-size__base));
  }
  .m-entry-form__current-check .wpcf7-list-item {
    gap: calc(15 * 1rem / var(--font-size__base));
  }
  .m-entry-form__current-check .wpcf7-list-item-label {
    font-size: calc(18 * 1rem / var(--font-size__base));
  }
  .m-entry-form__current-check input[type=checkbox] {
    width: calc(46 * 1rem / var(--font-size__base));
    height: calc(46 * 1rem / var(--font-size__base));
  }
  .m-entry-form__file-drop {
    padding: calc(50 * 1rem / var(--font-size__base)) calc(24 * 1rem / var(--font-size__base));
  }
  .m-entry-form .wpcf7-text,
  .m-entry-form .wpcf7-tel,
  .m-entry-form .wpcf7-email {
    font-size: calc(18 * 1rem / var(--font-size__base));
    padding: calc(18 * 1rem / var(--font-size__base)) calc(15 * 1rem / var(--font-size__base));
  }
  .m-entry-form .wpcf7-textarea {
    font-size: calc(18 * 1rem / var(--font-size__base));
    padding: calc(18 * 1rem / var(--font-size__base)) calc(15 * 1rem / var(--font-size__base));
  }
  .m-entry-form #your-address {
    height: auto;
  }
  .m-entry-form .wpcf7-select {
    font-size: calc(18 * 1rem / var(--font-size__base));
    padding-left: calc(15 * 1rem / var(--font-size__base));
    background-position: right calc(15 * 1rem / var(--font-size__base)) center;
    width: calc(197 * 1rem / var(--font-size__base));
  }
  .m-entry-form__footer {
    padding-top: calc(50 * 1rem / var(--font-size__base));
    gap: calc(50 * 1rem / var(--font-size__base));
  }
  .m-entry-form__privacy {
    padding: calc(12 * 1rem / var(--font-size__base)) calc(12 * 1rem / var(--font-size__base)) calc(12 * 1rem / var(--font-size__base)) calc(15 * 1rem / var(--font-size__base));
  }
  .m-entry-form__privacy > p {
    gap: calc(15 * 1rem / var(--font-size__base));
  }
  .m-entry-form__checkboxes input[type=checkbox] {
    width: calc(46 * 1rem / var(--font-size__base));
    height: calc(46 * 1rem / var(--font-size__base));
  }
  .m-entry-form__zip-row {
    gap: calc(15 * 1rem / var(--font-size__base));
  }
  .m-entry-form__zip-row .wpcf7-text {
    width: calc(175 * 1rem / var(--font-size__base));
  }
  .m-entry-form__zip-btn {
    width: calc(175 * 1rem / var(--font-size__base));
    min-height: 0;
    padding: calc(18 * 1rem / var(--font-size__base)) calc(15 * 1rem / var(--font-size__base));
    font-size: calc(18 * 1rem / var(--font-size__base));
    letter-spacing: 0.18em;
  }
  .m-entry-confirm__label {
    font-size: calc(16 * 1rem / var(--font-size__base));
  }
  .m-entry-confirm__value {
    font-size: calc(15 * 1rem / var(--font-size__base));
  }
  .m-entry-confirm__footer {
    flex-direction: column;
    gap: calc(16 * 1rem / var(--font-size__base));
    padding-top: calc(40 * 1rem / var(--font-size__base));
  }
  .m-entry-form__group > .m-entry-form__row:first-child,
  .m-entry-form__sub-group > .m-entry-form__row:first-child {
    padding-top: calc(30 * 1rem / var(--font-size__base));
  }
  .m-entry-form__row--after-groups {
    padding-top: calc(30 * 1rem / var(--font-size__base));
  }
  .m-entry-thanks__heading {
    font-size: calc(20 * 1rem / var(--font-size__base));
  }
  .m-entry-thanks__body {
    font-size: calc(15 * 1rem / var(--font-size__base));
  }
  .m-entry-thanks__notice {
    padding: calc(40 * 1rem / var(--font-size__base)) calc(30 * 1rem / var(--font-size__base));
    border-radius: calc(20 * 1rem / var(--font-size__base));
  }
  .m-entry-thanks__notice-title {
    font-size: calc(18 * 1rem / var(--font-size__base));
  }
  .m-entry-thanks__notice-body {
    font-size: calc(14 * 1rem / var(--font-size__base));
    margin-top: calc(16 * 1rem / var(--font-size__base));
  }
  .m-entry-thanks__notice-btn {
    font-size: calc(14 * 1rem / var(--font-size__base));
    height: calc(44 * 1rem / var(--font-size__base));
    min-width: 0;
    padding-inline: calc(20 * 1rem / var(--font-size__base));
    margin-top: calc(24 * 1rem / var(--font-size__base));
  }
  .m-entry-thanks__button {
    padding-top: calc(20 * 1rem / var(--font-size__base));
  }
  .m-energy-area {
    padding-top: calc(60 * 1rem / var(--font-size__base));
    padding-bottom: calc(66 * 1rem / var(--font-size__base));
  }
  .m-energy-area__bg {
    background-image: var(--_bg-sp);
    background-size: 100% 100%;
    aspect-ratio: unset;
    height: calc(1362 * 1rem / var(--font-size__base));
  }
  .m-energy-area__content {
    gap: calc(30 * 1rem / var(--font-size__base));
  }
  .m-energy-area__title-prefix {
    font-size: calc(28 * 1rem / var(--font-size__base));
    font-weight: 600;
    letter-spacing: 0.08em;
    line-height: 1.4285714286;
    text-align: center;
  }
  .m-energy-area__title-main {
    font-size: calc(36 * 1rem / var(--font-size__base));
    letter-spacing: 0;
    line-height: 1.3333333333;
    text-align: center;
    padding-top: calc(11 * 1rem / var(--font-size__base));
  }
  .m-energy-area__badges {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0;
    padding-top: calc(37 * 1rem / var(--font-size__base));
  }
  .m-energy-area__badge {
    font-size: calc(22 * 1rem / var(--font-size__base));
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.4545454545;
    padding-bottom: calc(4 * 1rem / var(--font-size__base));
  }
  .m-energy-area__badge-separator {
    font-size: calc(28 * 1rem / var(--font-size__base));
    letter-spacing: 0.1em;
    line-height: 1.4285714286;
  }
  .m-energy-area__description {
    font-size: calc(18 * 1rem / var(--font-size__base));
    font-weight: 600;
    letter-spacing: 0;
    line-height: 2.3333333333;
    padding-top: calc(34 * 1rem / var(--font-size__base));
  }
  .m-energy-area__illustration {
    display: block;
    padding-top: calc(64 * 1rem / var(--font-size__base));
  }
  .m-energy-area__town--base {
    margin-right: 0;
    margin-left: calc(37 / 430 * 100vw);
    width: calc(452 / 430 * 100vw);
  }
  .m-energy-area__steps {
    max-width: 100%;
    padding-top: calc(40 * 1rem / var(--font-size__base));
  }
  .m-energy-area__steps-heading {
    font-size: calc(28 * 1rem / var(--font-size__base));
    text-align: center;
  }
  .m-energy-area__steps-list {
    flex-direction: column;
    gap: calc(11 * 1rem / var(--font-size__base));
    padding-top: calc(22 * 1rem / var(--font-size__base));
  }
  .m-energy-area__step {
    flex: none;
  }
  .m-energy-area__step-circle {
    display: grid;
    grid-template-columns: calc(45 * 1rem / var(--font-size__base)) 1fr;
    grid-template-rows: auto auto;
    -moz-column-gap: calc(19 * 1rem / var(--font-size__base));
         column-gap: calc(19 * 1rem / var(--font-size__base));
    align-items: center;
    justify-content: unset;
    aspect-ratio: unset;
    border-radius: calc(12 * 1rem / var(--font-size__base));
    padding-top: calc(14 * 1rem / var(--font-size__base));
    padding-bottom: calc(14 * 1rem / var(--font-size__base));
    padding-inline: calc(13 * 1rem / var(--font-size__base));
  }
  .m-energy-area__step-number {
    position: static;
    transform: none;
    width: calc(45 * 1rem / var(--font-size__base));
    height: calc(47 * 1rem / var(--font-size__base));
    font-size: calc(27 * 1rem / var(--font-size__base));
    grid-row: 1/3;
    align-self: center;
  }
  .m-energy-area__step-main {
    align-items: flex-start;
    font-size: calc(21 * 1rem / var(--font-size__base));
    font-weight: 700;
    text-align: left;
    min-height: unset;
    align-self: end;
    line-height: 1.1;
    letter-spacing: 0;
  }
  .m-energy-area__step-sub {
    display: block;
    font-size: calc(14 * 1rem / var(--font-size__base));
    text-align: left;
    height: auto;
    padding-top: calc(4 * 1rem / var(--font-size__base));
    align-self: start;
  }
  .m-energy-area__label {
    font-size: calc(15 * 1rem / var(--font-size__base));
    font-weight: 700;
    letter-spacing: 0.056em;
    line-height: 1.4;
    min-height: calc(46 * 1rem / var(--font-size__base));
    padding-block: 0;
    padding-inline: calc(14.5 * 1rem / var(--font-size__base));
  }
  .m-energy-area__town--02 .m-energy-area__label {
    top: -39.3023255814%;
    left: 56.7441860465%;
    transform: translate(-50%, -50%);
    padding-inline: calc(10 * 1rem / var(--font-size__base));
  }
  .m-energy-area__town--03 .m-energy-area__label {
    top: -43.9534883721%;
    left: 27.2093023256%;
    transform: translate(-50%, -50%);
    padding-inline: calc(12 * 1rem / var(--font-size__base));
  }
  .m-energy-area__town--04 .m-energy-area__label {
    top: -57.2093023256%;
    left: 95.3488372093%;
    transform: translate(-50%, -50%);
  }
  .m-drawer__backdrop {
    background-color: #c4c2c2;
  }
  .m-drawer__wrapper {
    top: calc(61 * 1rem / var(--font-size__base));
    right: 0;
    max-height: calc(100dvh - 60 * 1rem / var(--font-size__base));
    padding-top: calc(40 * 1rem / var(--font-size__base));
    -webkit-clip-path: inset(-40px 0 0 -40px);
            clip-path: inset(-40px 0 0 -40px);
    padding-left: calc(40 * 1rem / var(--font-size__base));
    width: calc(356 * 1rem / var(--font-size__base));
    transform: translateX(calc(100% + 15 * 1rem / var(--font-size__base)));
    box-shadow: none;
    border-radius: 0;
  }
  .m-drawer__content {
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
    padding-block: calc(55 * 1rem / var(--font-size__base));
    padding-left: calc(46 * 1rem / var(--font-size__base));
    padding-right: calc(var(--space-inline__base) * 1rem / var(--font-size__base));
    border-radius: calc(40 * 1rem / var(--font-size__base)) 0 0 calc(40 * 1rem / var(--font-size__base));
  }
  .m-drawer__links {
    gap: calc(32 * 1rem / var(--font-size__base));
  }
  .m-drawer__link {
    flex-direction: column;
    gap: calc(4 * 1rem / var(--font-size__base));
  }
  .m-drawer__link-en {
    font-size: calc(20 * 1rem / var(--font-size__base));
  }
  .m-drawer__link-ja {
    font-size: calc(16 * 1rem / var(--font-size__base));
  }
  .m-drawer__link--accordion {
    flex-direction: row;
    gap: calc(10 * 1rem / var(--font-size__base));
  }
  .m-drawer__sub-link {
    font-size: calc(14 * 1rem / var(--font-size__base));
  }
  .m-drawer__button {
    max-width: calc(291 * 1rem / var(--font-size__base));
    padding-top: calc(30 * 1rem / var(--font-size__base));
  }
  .m-cta-recruit__inner {
    padding-top: calc(259 * 1rem / var(--font-size__base));
    padding-bottom: calc(121 * 1rem / var(--font-size__base));
  }
  .m-cta-recruit__cards {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: calc(23 * 1rem / var(--font-size__base));
    margin-inline: calc(50% - 50vw);
  }
  .m-cta-recruit__cards .m-cta-card:first-child {
    flex: 1;
  }
  .m-cta-recruit__cards .m-cta-card:last-child {
    flex: 1;
  }
  .m-cta-card {
    min-height: auto;
    border-radius: 0 calc(20 * 1rem / var(--font-size__base)) calc(20 * 1rem / var(--font-size__base)) 0;
    padding-top: calc(11 * 1rem / var(--font-size__base));
    padding-bottom: calc(19 * 1rem / var(--font-size__base));
    padding-right: calc(15 * 1rem / var(--font-size__base));
    padding-left: calc(38 * 1rem / var(--font-size__base));
  }
  .m-cta-card:nth-child(2) {
    border-radius: calc(20 * 1rem / var(--font-size__base)) 0 0 calc(20 * 1rem / var(--font-size__base));
    padding-right: calc(26 * 1rem / var(--font-size__base));
    padding-left: calc(26 * 1rem / var(--font-size__base));
  }
  .m-cta-card__title {
    font-size: calc(25 * 1rem / var(--font-size__base));
  }
  .m-cta-card__subtitle {
    font-size: calc(10 * 1rem / var(--font-size__base));
    font-weight: 500;
    padding-top: calc(11 * 1rem / var(--font-size__base));
  }
  .m-cta-card__subtitle::after {
    height: 1px;
    margin-top: calc(8 * 1rem / var(--font-size__base));
  }
  .m-cta-card__button {
    width: calc(25 * 1rem / var(--font-size__base));
    height: calc(25 * 1rem / var(--font-size__base));
    padding-right: calc(2 * 1rem / var(--font-size__base));
  }
  .m-cta-card__button-icon {
    width: calc(6 * 1rem / var(--font-size__base));
    height: calc(6 * 1rem / var(--font-size__base));
  }
  .m-cta-button {
    width: calc(280 * 1rem / var(--font-size__base));
    height: calc(64 * 1rem / var(--font-size__base));
    border-radius: calc(32 * 1rem / var(--font-size__base));
  }
  .m-cta-button__text {
    font-size: calc(14 * 1rem / var(--font-size__base));
  }
  .m-cta-button__arrow {
    right: calc(24 * 1rem / var(--font-size__base));
    width: calc(8 * 1rem / var(--font-size__base));
  }
  .m-contact {
    padding-top: calc(107 / 430 * 100vw);
    padding-bottom: calc(83 * 1rem / var(--font-size__base));
  }
  .m-contact__ittan-momen {
    top: calc(-257 / 430 * 100vw);
    right: calc(-47 / 430 * 100vw);
    width: calc(441 / 430 * 100vw);
  }
  .m-contact__content {
    margin-top: calc(32 * 1rem / var(--font-size__base));
    padding-top: calc(46 * 1rem / var(--font-size__base));
    padding-bottom: calc(68 * 1rem / var(--font-size__base));
    padding-inline: calc(25 * 1rem / var(--font-size__base));
  }
  .m-contact__text {
    font-size: calc(20 * 1rem / var(--font-size__base));
    font-weight: 600;
    letter-spacing: 0.1em;
    line-height: 1.8;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
  }
  .m-contact__button-wrapper {
    padding-top: calc(38 * 1rem / var(--font-size__base));
  }
  .m-contact-button {
    padding: calc(22 * 1rem / var(--font-size__base)) calc(20 * 1rem / var(--font-size__base));
    letter-spacing: 0.0504em;
  }
  .m-contact-button__icon {
    width: calc(24 * 1rem / var(--font-size__base));
    height: calc(24 * 1rem / var(--font-size__base));
  }
  .m-company-page__body {
    padding-block: calc(50 * 1rem / var(--font-size__base));
  }
  .m-company-info__list {
    margin-top: calc(40 * 1rem / var(--font-size__base));
    padding-block: calc(30 * 1rem / var(--font-size__base));
    padding-inline: calc(30 * 1rem / var(--font-size__base));
    border-radius: calc(16 * 1rem / var(--font-size__base));
  }
  .m-company-info__item {
    align-items: flex-start;
    flex-direction: column;
    padding-block: calc(28 * 1rem / var(--font-size__base));
  }
  .m-company-info__label {
    min-width: auto;
    padding-bottom: calc(8 * 1rem / var(--font-size__base));
  }
  .m-case-single__header-section {
    padding-top: calc(50 * 1rem / var(--font-size__base));
  }
  .m-case-single__content-section {
    padding-top: calc(60 * 1rem / var(--font-size__base));
  }
  .m-case-single__related-section {
    padding-top: calc(80 * 1rem / var(--font-size__base));
  }
  .m-case-single__back-section {
    padding-top: calc(40 * 1rem / var(--font-size__base));
    padding-bottom: calc(80 * 1rem / var(--font-size__base));
  }
  .m-case-single-header__inner {
    display: flex;
    flex-direction: column;
    gap: calc(24 * 1rem / var(--font-size__base));
  }
  .m-case-single-header__tag {
    font-size: calc(12 * 1rem / var(--font-size__base));
    padding-inline: calc(10 * 1rem / var(--font-size__base));
  }
  .m-case-single-header__title-area {
    padding-bottom: calc(10 * 1rem / var(--font-size__base));
  }
  .m-case-single-header__title {
    font-size: calc(22 * 1rem / var(--font-size__base));
    line-height: 1.5;
  }
  .m-case-single-header__detail {
    font-size: calc(14 * 1rem / var(--font-size__base));
    line-height: 1.5;
  }
  .m-case-single-header__lead {
    padding-top: calc(24 * 1rem / var(--font-size__base));
  }
  .m-case-single-header__lead-text {
    font-size: calc(14 * 1rem / var(--font-size__base));
    line-height: 1.7142857143;
    padding-top: calc(24 * 1rem / var(--font-size__base));
  }
  .m-case-page__body {
    padding-block: calc(50 * 1rem / var(--font-size__base));
  }
  .m-case-page__list + .m-case-page__list {
    padding-top: calc(80 * 1rem / var(--font-size__base));
  }
  .m-case-list__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: calc(10 * 1rem / var(--font-size__base));
    padding-top: calc(24 * 1rem / var(--font-size__base));
  }
  .m-case-list__more {
    justify-content: center;
  }
  .m-case-list--5col .m-case-list__grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .m-case-list--5col .m-case-list__item:nth-child(n+5) {
    display: none;
  }
  .m-case-list--5col.is-expanded .m-case-list__item:nth-child(n+5) {
    display: block;
  }
  .m-card {
    padding-inline: calc(10 * 1rem / var(--font-size__base));
    padding-top: calc(9 * 1rem / var(--font-size__base));
    padding-bottom: calc(14 * 1rem / var(--font-size__base));
  }
  .m-card__body {
    padding-inline: 0;
    padding-top: calc(14 * 1rem / var(--font-size__base));
  }
  .m-card__tag {
    font-size: calc(14 * 1rem / var(--font-size__base));
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.4285714286;
    padding-block: calc(4 * 1rem / var(--font-size__base));
    padding-inline: calc(12 * 1rem / var(--font-size__base));
  }
  .m-card__title {
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.5;
    padding-top: calc(10 * 1rem / var(--font-size__base));
  }
  .m-card__details {
    gap: calc(4 * 1rem / var(--font-size__base));
    padding-top: calc(16 * 1rem / var(--font-size__base));
  }
  .m-card__detail-label {
    font-size: calc(13 * 1rem / var(--font-size__base));
    font-weight: 500;
    letter-spacing: 0.056em;
  }
  .m-button {
    width: calc(261 * 1rem / var(--font-size__base));
    padding-block: calc(21 * 1rem / var(--font-size__base));
  }
  .m-button-simple {
    width: 100%;
    text-align: center;
    font-size: calc(13.5 * 1rem / var(--font-size__base));
    letter-spacing: 0.0504em;
    line-height: 1.4814814815;
    padding-inline: calc(20 * 1rem / var(--font-size__base));
    padding-block: calc(12 * 1rem / var(--font-size__base));
  }
  .m-business-intro {
    padding-top: calc(80 * 1rem / var(--font-size__base));
    padding-bottom: calc(80 * 1rem / var(--font-size__base));
  }
  .m-business-intro__bg {
    top: calc(105 * 1rem / var(--font-size__base));
    height: calc(370 * 1rem / var(--font-size__base));
  }
  .m-business-intro__visual {
    padding-top: calc(40 * 1rem / var(--font-size__base));
  }
  .m-business-intro__catch {
    font-size: calc(26 * 1rem / var(--font-size__base));
  }
  .m-business-intro__catch-line--wrap-sp {
    flex-direction: column;
  }
  .m-business-intro__button-wrapper {
    padding-top: calc(40 * 1rem / var(--font-size__base));
  }
  .m-back-button {
    gap: calc(24 * 1rem / var(--font-size__base));
    padding-top: calc(12 * 1rem / var(--font-size__base));
    padding-bottom: calc(12 * 1rem / var(--font-size__base));
    padding-inline: calc(20 * 1rem / var(--font-size__base));
    font-size: calc(13 * 1rem / var(--font-size__base));
  }
  .m-back-button__icon {
    width: calc(18 * 1rem / var(--font-size__base));
    height: calc(18 * 1rem / var(--font-size__base));
  }
  .m-article-content {
    font-size: calc(15 * 1rem / var(--font-size__base));
    line-height: 1.7333333333;
  }
  .m-article-content p {
    margin-top: calc(20 * 1rem / var(--font-size__base));
  }
  .m-article-content h2 {
    margin-top: calc(48 * 1rem / var(--font-size__base));
    padding-bottom: calc(6 * 1rem / var(--font-size__base));
    font-size: calc(22 * 1rem / var(--font-size__base));
    line-height: 1.6363636364;
  }
  .m-article-content h2 + p,
  .m-article-content h2 + h3,
  .m-article-content h2 + ul,
  .m-article-content h2 + ol {
    margin-top: calc(24 * 1rem / var(--font-size__base));
  }
  .m-article-content h3 {
    margin-top: calc(32 * 1rem / var(--font-size__base));
    font-size: calc(18 * 1rem / var(--font-size__base));
    line-height: 1.7777777778;
  }
  .m-article-content h3 + p,
  .m-article-content h3 + ul,
  .m-article-content h3 + ol {
    margin-top: calc(12 * 1rem / var(--font-size__base));
  }
  .m-article-content h4 {
    margin-top: calc(24 * 1rem / var(--font-size__base));
    padding-left: calc(10 * 1rem / var(--font-size__base));
    font-size: calc(16 * 1rem / var(--font-size__base));
    line-height: 1.75;
  }
  .m-article-content h4 + p,
  .m-article-content h4 + ul,
  .m-article-content h4 + ol {
    margin-top: calc(10 * 1rem / var(--font-size__base));
  }
  .m-article-content h5 {
    margin-top: calc(20 * 1rem / var(--font-size__base));
    font-size: calc(15 * 1rem / var(--font-size__base));
  }
  .m-article-content h6 {
    margin-top: calc(16 * 1rem / var(--font-size__base));
    font-size: calc(14 * 1rem / var(--font-size__base));
  }
  .m-article-content ul,
  .m-article-content ol {
    margin-top: calc(16 * 1rem / var(--font-size__base));
    padding-left: calc(20 * 1rem / var(--font-size__base));
  }
  .m-article-content blockquote {
    margin-top: calc(16 * 1rem / var(--font-size__base));
    padding-top: calc(16 * 1rem / var(--font-size__base));
    padding-bottom: calc(16 * 1rem / var(--font-size__base));
    padding-inline: calc(16 * 1rem / var(--font-size__base));
  }
  .m-article-content blockquote cite {
    font-size: calc(13 * 1rem / var(--font-size__base));
  }
  .m-article-content .wp-block-image {
    margin-top: calc(24 * 1rem / var(--font-size__base));
  }
  .m-article-content figcaption {
    margin-top: calc(8 * 1rem / var(--font-size__base));
    font-size: calc(13 * 1rem / var(--font-size__base));
  }
  .m-article-content table,
  .m-article-content .wp-block-table {
    margin-top: calc(24 * 1rem / var(--font-size__base));
  }
  .m-article-content th,
  .m-article-content td {
    padding-top: calc(10 * 1rem / var(--font-size__base));
    padding-bottom: calc(10 * 1rem / var(--font-size__base));
    padding-inline: calc(12 * 1rem / var(--font-size__base));
    font-size: calc(14 * 1rem / var(--font-size__base));
  }
  .m-article-content pre {
    margin-top: calc(24 * 1rem / var(--font-size__base));
    padding-top: calc(16 * 1rem / var(--font-size__base));
    padding-bottom: calc(16 * 1rem / var(--font-size__base));
    padding-inline: calc(16 * 1rem / var(--font-size__base));
    font-size: calc(13 * 1rem / var(--font-size__base));
  }
  .m-article-content hr {
    margin-top: calc(24 * 1rem / var(--font-size__base));
  }
  .m-article-content .wp-block-buttons {
    margin-top: calc(24 * 1rem / var(--font-size__base));
  }
  .m-article-content .wp-block-button__link {
    padding-top: calc(12 * 1rem / var(--font-size__base));
    padding-bottom: calc(12 * 1rem / var(--font-size__base));
    padding-inline: calc(24 * 1rem / var(--font-size__base));
    font-size: calc(14 * 1rem / var(--font-size__base));
  }
  .m-article-content .wp-block-columns {
    flex-direction: column;
    gap: calc(24 * 1rem / var(--font-size__base));
    margin-top: calc(24 * 1rem / var(--font-size__base));
  }
  .m-article-content .wp-block-group {
    margin-top: calc(24 * 1rem / var(--font-size__base));
  }
  .m-article-content details {
    margin-top: calc(16 * 1rem / var(--font-size__base));
    padding-top: calc(12 * 1rem / var(--font-size__base));
    padding-bottom: calc(12 * 1rem / var(--font-size__base));
    padding-inline: calc(16 * 1rem / var(--font-size__base));
  }
  .m-article-content .wp-block-file {
    margin-top: calc(16 * 1rem / var(--font-size__base));
  }
  .m-article-content .wp-block-footnotes {
    margin-top: calc(24 * 1rem / var(--font-size__base));
    padding-top: calc(16 * 1rem / var(--font-size__base));
    font-size: calc(13 * 1rem / var(--font-size__base));
  }
  .m-arrow-button {
    padding-top: calc(16 * 1rem / var(--font-size__base));
    padding-bottom: calc(17 * 1rem / var(--font-size__base));
    padding-left: calc(18 * 1rem / var(--font-size__base));
    padding-right: calc(12 * 1rem / var(--font-size__base));
  }
  .m-arrow-button__text {
    font-size: calc(12 * 1rem / var(--font-size__base));
    font-weight: 700;
    line-height: 1.4166666667;
  }
  .m-arrow-button__label {
    font-size: calc(15 * 1rem / var(--font-size__base));
    padding-left: calc(12 * 1rem / var(--font-size__base));
    padding-top: calc(2 * 1rem / var(--font-size__base));
  }
  .m-arrow-button__arrow {
    width: calc(33 * 1rem / var(--font-size__base));
    height: calc(18 * 1rem / var(--font-size__base));
    margin-left: calc(7 * 1rem / var(--font-size__base));
  }
  .m-arrow-button--w485 {
    width: calc(291 * 1rem / var(--font-size__base));
  }
  .m-arrow-button--sm {
    width: calc(340 * 1rem / var(--font-size__base));
  }
  .m-arrow-button--sp-2line {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto;
    align-items: center;
    padding-block: calc(26 * 1rem / var(--font-size__base));
    padding-inline: calc(35 * 1rem / var(--font-size__base));
    width: calc(400 * 1rem / var(--font-size__base));
  }
  .m-arrow-button--sp-2line .m-arrow-button__text {
    font-size: calc(18 * 1rem / var(--font-size__base));
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.18em;
  }
  .m-arrow-button--sp-2line .m-arrow-button__label {
    grid-column: 1;
    grid-row: 2;
    padding-left: 0;
    padding-top: 0;
    color: var(--color__brand-orange);
    font-size: calc(18 * 1rem / var(--font-size__base));
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.18em;
  }
  .m-arrow-button--sp-2line .m-arrow-button__arrow {
    grid-column: 2;
    grid-row: 1/-1;
    width: calc(69 * 1rem / var(--font-size__base));
    height: calc(24 * 1rem / var(--font-size__base));
    margin-left: 0;
  }
  .m-accordion__button {
    -moz-column-gap: calc(3 * 1rem / var(--font-size__base));
         column-gap: calc(3 * 1rem / var(--font-size__base));
    grid-template-columns: calc(22 * 1rem / var(--font-size__base)) 1fr calc(22 * 1rem / var(--font-size__base));
  }
  .m-accordion__button-title {
    font-size: calc(18 * 1rem / var(--font-size__base));
  }
  .m-accordion__button-icon {
    width: calc(22 * 1rem / var(--font-size__base));
    height: calc(22 * 1rem / var(--font-size__base));
  }
  .m-accordion__button-icon::before,
  .m-accordion__button-icon::after {
    width: calc(11 * 1rem / var(--font-size__base));
  }
  .m-accordion__panel-content {
    -moz-column-gap: calc(3 * 1rem / var(--font-size__base));
         column-gap: calc(3 * 1rem / var(--font-size__base));
  }
  .m-accordion__panel-title {
    font-size: calc(18 * 1rem / var(--font-size__base));
  }
  .m-about-us {
    padding-top: calc(78 * 1rem / var(--font-size__base));
    padding-bottom: calc(108 * 1rem / var(--font-size__base));
  }
  .m-about-us__ittan-momen {
    top: calc(-142 * 1rem / var(--font-size__base));
    left: calc(-8 * 1rem / var(--font-size__base));
    width: calc(441 / 430 * 100vw);
  }
  .m-about-us__inner {
    --_padding-right: var(--space-inline__base, 25);
  }
  .m-about-us__title {
    white-space: nowrap;
  }
  .m-about-us__text {
    gap: calc(22 * 1rem / var(--font-size__base));
    padding-top: calc(23 * 1rem / var(--font-size__base));
  }
  .m-about-us__subtitle {
    font-size: calc(24 * 1rem / var(--font-size__base));
    font-weight: 600;
    letter-spacing: 0.1em;
    line-height: 1.75;
  }
  .m-about-us__description {
    font-size: calc(18 * 1rem / var(--font-size__base));
    font-weight: 400;
    letter-spacing: 0.056em;
    line-height: 1.5555555556;
    gap: calc(15 * 1rem / var(--font-size__base));
  }
  .m-about-us__diagram {
    margin-inline: calc(-10 * 1rem / var(--font-size__base));
  }
  .m-about-us__diagram-image {
    padding-top: calc(2 * 1rem / var(--font-size__base));
  }
  .m-about-us__logos-title {
    font-size: calc(24 * 1rem / var(--font-size__base));
    font-weight: 600;
    letter-spacing: 0.1em;
    line-height: 1.75;
  }
  .m-about-us__logos {
    gap: calc(30 * 1rem / var(--font-size__base));
    padding-top: calc(37 * 1rem / var(--font-size__base));
  }
  .m-about-us__logo-list {
    --_gap: calc(18 * 1rem / var(--font-size__base));
    --_speed: 30s;
  }
  .m-about-us__logo-item img {
    height: calc(40 * 1rem / var(--font-size__base));
  }
  .m-about-us__logo-item--sm img {
    height: calc(27 * 1rem / var(--font-size__base));
  }
  .m-about-us__logo-item--lg img {
    height: calc(53 * 1rem / var(--font-size__base));
  }
  .m-about-us-recruit {
    padding-top: calc(102 * 1rem / var(--font-size__base));
    padding-bottom: calc(70 * 1rem / var(--font-size__base));
  }
  .m-about-us-recruit__inner {
    gap: calc(18 * 1rem / var(--font-size__base));
  }
  .m-about-us-recruit__title {
    font-size: calc(32 * 1rem / var(--font-size__base));
  }
  .m-about-us-recruit__button {
    width: calc(320 * 1rem / var(--font-size__base));
    height: calc(64 * 1rem / var(--font-size__base));
    border-radius: calc(32 * 1rem / var(--font-size__base));
  }
  .m-about-us-recruit__button-text {
    font-size: calc(16 * 1rem / var(--font-size__base));
    letter-spacing: 0.144em;
  }
  .m-about-us-recruit__button-arrow {
    right: calc(20 * 1rem / var(--font-size__base));
    width: calc(6 * 1rem / var(--font-size__base));
    height: calc(10 * 1rem / var(--font-size__base));
  }
  .m-about-page__about {
    --_bg-bottom: calc(100 * 1rem / var(--font-size__base));
  }
  .m-about-recruit {
    padding-top: calc(60 * 1rem / var(--font-size__base));
  }
  .m-about-recruit__cols {
    grid-template-columns: 1fr;
    gap: calc(50 * 1rem / var(--font-size__base));
  }
  .m-about-recruit__body {
    padding-top: calc(30 * 1rem / var(--font-size__base));
  }
  .m-about-recruit__statement {
    font-size: calc(20 * 1rem / var(--font-size__base));
    line-height: 1.6;
  }
  .m-about-recruit__statement + .m-about-recruit__catch,
  .m-about-recruit__lead + .m-about-recruit__catch {
    padding-top: calc(30 * 1rem / var(--font-size__base));
  }
  .m-about-recruit__catch {
    font-size: calc(15 * 1rem / var(--font-size__base));
    line-height: 1.7333333333;
  }
  .m-about-recruit__body > .m-about-recruit__lead {
    padding-top: calc(18 * 1rem / var(--font-size__base));
  }
  .m-about-recruit__lead {
    font-size: calc(13 * 1rem / var(--font-size__base));
    line-height: 1.8461538462;
  }
  .m-about-recruit__caption {
    left: 2.6315789474%;
  }
  .m-about-recruit__caption-role {
    font-size: calc(12 * 1rem / var(--font-size__base));
  }
  .m-about-recruit__caption-name {
    font-size: calc(24 * 1rem / var(--font-size__base));
  }
  .m-about-recruit__caption-name-en {
    font-size: calc(14 * 1rem / var(--font-size__base));
  }
  .m-about-recruit__values {
    gap: calc(16 * 1rem / var(--font-size__base));
    padding-top: calc(50 * 1rem / var(--font-size__base));
    padding-bottom: 0;
  }
  .u-recaptcha-policy {
    -webkit-margin-before: calc(30 * 1rem / var(--font-size__base));
            margin-block-start: calc(30 * 1rem / var(--font-size__base));
  }
  .u-only--pc {
    display: none;
  }
}

@media (max-width: 430px){
  html {
    font-size: calc(var(--_font-size) / var(--_width) * 100vw);
  }
}

@media (any-hover: hover){
  .m-working-environment__card-button:hover {
    background-color: var(--color__black);
  }
  .m-solution__card:hover {
    transform: scale(1.1);
  }
  .m-solution-modal__close:hover {
    opacity: 0.5;
  }
  .m-solution-modal__button:hover {
    opacity: 0.8;
  }
  .m-solar-carport-ppa__link:hover {
    opacity: var(--opacity__hover);
  }
  .m-privacy-page__text a:hover {
    text-decoration: none;
  }
  .m-privacy-page__item-text a:hover {
    text-decoration: none;
  }
  .m-photo-slider__item:hover img {
    transform: scale(1.05);
  }
  .m-partner-recruit__button:hover {
    opacity: var(--opacity__hover);
  }
  .m-news-single__pdf-link:hover {
    opacity: var(--opacity__hover);
  }
  .m-news-single__pagination-button:hover {
    opacity: var(--opacity__hover);
  }
  .m-dropdown__trigger:hover {
    opacity: var(--opacity__hover);
  }
  .m-dropdown__item:hover {
    background-color: var(--color__gray-100);
  }
  .m-pagination__number:hover {
    opacity: var(--opacity__hover);
  }
  .m-pagination__link:hover {
    opacity: var(--opacity__hover);
  }
  .m-news-item__link:hover {
    opacity: var(--opacity__hover);
  }
  .m-more-button:hover {
    color: #fff;
  }
  .m-more-button:hover::before {
    width: 100%;
  }
  .m-job-link:hover {
    border-color: var(--_color__hover-bg);
  }
  .m-job-link:hover::before {
    --_mask-position: 100%;
  }
  .m-job-link:hover .m-job-link__text,
  .m-job-link:hover .m-job-link__arrow {
    color: #fff;
  }
  .m-icon-link--line:hover {
    color: var(--color__line);
  }
  .m-icon-link--x:hover {
    color: var(--color__x);
  }
  .m-icon-link--instagram:hover {
    color: var(--color__instagram);
  }
  .m-icon-link--facebook:hover {
    color: var(--color__facebook);
  }
  .m-icon-link--youtube:hover {
    color: var(--color__youtube);
  }
  .m-icon-button:hover {
    color: #fff;
  }
  .m-icon-button:hover::before {
    width: 100%;
  }
  .m-header__nav-link:hover {
    background-color: var(--color__gray-500);
    color: #fff;
  }
  .m-header__nav-dropdown-link:hover {
    opacity: var(--opacity__hover);
  }
  .m-header__nav-button:hover::before {
    --_mask-position: 100%;
  }
  .m-hamburger:hover .m-hamburger__line {
    width: calc(var(--_width--hamburger-line-hover) * 1rem / var(--font-size__base));
  }
  .m-faq-category:hover {
    color: #fff;
    border-color: #050505;
  }
  .m-faq-category:hover::before {
    --_mask-position: 100%;
  }
  .m-faq-item__question:hover {
    opacity: var(--opacity__hover);
  }
  .m-entry-form__file-remove:hover {
    opacity: var(--opacity__hover);
  }
  .m-entry-form__privacy-text a:hover {
    text-decoration: none;
  }
  .m-entry-form__submit > p:hover::after {
    animation: arrow-slide 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
  }
  .m-entry-form__zip-btn:hover {
    opacity: var(--opacity__hover);
  }
  .m-entry-form__btn-confirm:hover::after {
    animation: arrow-slide 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
  }
  .m-entry-thanks__notice-btn:hover {
    opacity: var(--opacity__hover);
  }
  .m-energy-area__town--01:hover,
  .m-energy-area__town--02:hover,
  .m-energy-area__town--03:hover,
  .m-energy-area__town--04:hover {
    transform: translateY(calc(-10 * 1rem / var(--font-size__base)));
  }
  .m-drawer__link:hover {
    opacity: var(--opacity__hover);
  }
  .m-drawer__sub-link:hover {
    opacity: var(--opacity__hover);
  }
  .m-drawer__close:hover {
    opacity: var(--opacity__hover);
  }
  .m-cta-card:hover {
    -webkit-backdrop-filter: blur(0) brightness(0.5) opacity(0.51);
            backdrop-filter: blur(0) brightness(0.5) opacity(0.51);
  }
  .m-cta-card:hover::before {
    --_mask-position: 100%;
  }
  .m-cta-button:hover {
    background-color: var(--color__brand-orange-light);
    color: #000;
  }
  .m-cta-button:hover .m-cta-button__char {
    animation-name: cta-button-char;
    animation-delay: calc(var(--_i) * 0.015s);
  }
  .m-contact-button:hover {
    color: var(--color__brand-orange);
    background-position: left;
  }
  .m-card:hover {
    transform: translateY(calc(var(--_hover-offset) * -1));
  }
  .m-button:hover::before {
    --_mask-position: 100%;
  }
  .m-button-simple:hover {
    opacity: var(--opacity__hover);
  }
  .m-back-pill-button:hover::before {
    animation: back-pill-button-slide-left 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
  }
  .m-back-button:hover {
    color: #fff;
  }
  .m-back-button:hover::before {
    width: 100%;
  }
  .m-article-content .wp-block-button__link:hover {
    opacity: var(--opacity__hover);
  }
  .m-article-content details summary:hover {
    opacity: var(--opacity__hover);
  }
  .m-article-content .wp-block-file__button:hover {
    opacity: var(--opacity__hover);
  }
  .m-article-content a:hover {
    opacity: var(--opacity__hover);
  }
  .m-arrow-button:hover .m-arrow-button__arrow {
    animation: arrow-slide 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
  }
  .m-about-us-recruit__button:hover::before {
    --_mask-position: 100%;
  }
  .u-hover--opacity:hover {
    opacity: var(--opacity__hover);
  }
  .u-hover--drop-shadow:hover {
    filter: drop-shadow(0 3px 6px rgba(0, 0, 0, 0.2));
    transform: translateZ(0);
  }
  .u-hover--color-main:hover {
    color: var(--color__main);
  }
  .u-hover--underline-1px:hover::after {
    transform: scaleX(1);
    transform-origin: left;
  }
  .u-hover--underline-2px:hover::after {
    transform: scaleX(1);
    transform-origin: left;
  }
}

@media (hover: hover){
  .m-working-environment__card:has(.m-card-trigger:hover)::before {
    --_mask-position: 100%;
  }
}

@media (hover: hover) and (pointer: fine){
  .m-header__nav-item--has-dropdown:hover .m-header__nav-trigger {
    background-color: var(--color__gray-500);
    color: #fff;
  }
  .m-header__nav-item--has-dropdown:hover .m-header__nav-dropdown {
    opacity: 1;
    visibility: visible;
  }
}

@media (prefers-reduced-motion: reduce){
  .js-scroll-reveal,
  [data-scroll-animation] {
    transition: none;
    opacity: 1;
    transform: none;
    -webkit-clip-path: none;
            clip-path: none;
  }
}