@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: inherit;
}

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: 16;
  --font-family__zen-kaku-gothic-new:
    "Zen Kaku Gothic New", sans-serif;
  --font-family__noto-sans-jp: "Noto Sans JP", sans-serif;
  --font-family__outfit: "Outfit", sans-serif;
  --font-family__outfit-zen-kaku:
    "Outfit", "Zen Kaku Gothic New", sans-serif;
  --font-family__outfit-jp:
    "Outfit", "Noto Sans JP", sans-serif;
  --max-width: 1920;
  --width__contents: 1116;
  --space-inline: 162;
  --width__breakpoint: calc(
    var(--width__contents) + (var(--space-inline) * 2)
  );
  --js-height__header: 196px;
  --color__white: #fff;
  --color__black: #000;
  --color__red: #e60013;
  --color__red-dark: #cd0010;
  --color__red-deep: #c10010;
  --color__brown-dark: #200;
  --color__beige-pale: #fef8f4;
  --color__beige: #fbece2;
  --color__pink-pale: #fef5f6;
  --color__pink-light: #fff3f3;
  --color__gray-deep: #111827;
  --color__brown-gray: #433;
  --color__charcoal: #333;
  --color__gray: #5d5d5d;
  --color__gray-dark: #4d4c4c;
  --color__gray-slate: #585e62;
  --color__gray-pale: #e5e7eb;
  --color__gray-light: #d9d9d9;
  --color__gray-mid: #999;
  --color__gray-silver: #ccc;
  --color__blue: #36c;
  --color__indigo: #1f00e6;
  --color__green-vivid: #0cad00;
  --color__red-mist: #fffcfc;
  --color__indigo-mist: #f0f2ff;
  --color__green-mist: #f0fff7;
  --color__red-strong: #df0012;
  --color__rose-mist: #fffafa;
  --color__slate: #484e56;
  --color__gray-line: #e3e3e3;
  --color__gray-grid: #f8f8f8;
  --color__yellow: #ebca27;
  --color__green: #06c755;
  --color__black-alpha25: rgb(0 0 0 / 0.25);
  --color__black-alpha16: rgb(0 0 0 / 0.16);
  --color__black-alpha8: rgb(0 0 0 / 0.08);
  --color__brown-alpha25: rgb(45 0 0 / 0.25);
  --color__red-alpha30: rgb(230 0 19 / 0.3);
  --color__brown-deep-alpha25: rgb(
    21 0 0 / 0.25
  );
  --color__brown-gray-alpha7: rgb(
    40 23 24 / 0.07
  );
  --color__white-alpha20: rgb(255 255 255 / 0.2);
  --color__white-alpha30: rgb(255 255 255 / 0.3);
  --color__white-alpha69: rgb(
    255 255 255 / 0.69
  );
  --color__black-alpha60: rgb(0 0 0 / 0.6);
  --color__indigo-deep: #110656;
  --color__green-deep: #076900;
  --color__rose: #e89494;
  --color__graphite: #3c3c3c;
  --color__graphite-dark: #393939;
  --color__brown-dark-alpha67: rgb(
    34 0 0 / 0.67
  );
  --color__crimson: #d20011;
  --color__red-muted: #d32835;
  --color__red-muted-dark: #bb2934;
  --color__red-maroon: #af000e;
  --color__red-maroon-dark: #91141e;
  --color__red-deep-dark: #a0000d;
  --color__jet: #111;
  --color__jet-light: #131313;
  --color__onyx: #1a1a1a;
  --color__onyx-violet: #1c1b1f;
  --color__onyx-green: #1f2321;
  --color__gray-darker: #444;
  --color__gray-steel: #555;
  --color__gray-dim: #777;
  --color__gray-stone: #7c7c7c;
  --color__gray-ash: #a6a6a6;
  --color__gray-soft: #ddd;
  --color__gray-fog: #eaeaea;
  --color__gray-snow: #f4f4f4;
  --color__gray-mist: #f9f9f9;
  --color__blue-pale: #e9f3ff;
  --color__blue-grid: #f1f7fc;
  --color__blue-grid-pale: #f9fbfc;
  --color__blue-steel: #2a749f;
  --color__red-dark-alpha20: rgb(
    205 0 16 / 0.2
  );
  --color__red-alpha15: rgb(230 0 19 / 0.15);
  --color__red-alpha5: rgb(230 0 19 / 0.05);
  --color__black-alpha20: rgb(0 0 0 / 0.2);
  --color__black-alpha15: rgb(
    0 0 0 / 0.15
  );
  --color__black-alpha5: rgb(0 0 0 / 0.05);
  --color__sand: #e3d9bd;
  --color__gray-haze: #e9e9e9;
  --color__gray-pewter: #9a9a9a;
  --color__gray-graphite: #6e6e6e;
  --color__beige-light: #feeee4;
  --color__indigo-pale: #e6e2ff;
  --color__green-pale: #e0ffe6;
  --color__gray-blue: #86929c;
  --color__blue-bright: #0866ff;
  --color__red-pure: #f00;
  --z-index__header: 100;
  --z-index__drawer: 200;
  --z-index__overlay: 300;
  --z-index__modal: 400;
  --z-index__toast: 500;
  --opacity__hover: 0.7;
  --duration: 0.3s;
}

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

body {
  font-family: var(--font-family__zen-kaku-gothic-new);
  color: var(--color__brown-dark);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 400;
}

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

img,
video {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  -webkit-user-drag: none;
}

a {
  display: inline-block;
}

[hidden]:not(.js-accordion__panel) {
  display: none !important;
}

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

#wpadminbar {
  position: fixed !important;
}

/*
 * スクリプトについて
 * JavaScriptと連携するスタイルを定義します。
 * JSで追加されるクラスやアニメーション関連のスタイルが含まれています。
 * クラス名は、js-accordionのように命名します。
 */
[data-scroll-animation] {
  display: block;
}
@keyframes scroll-animation-fade-in {
  from {
    opacity: 0;
  }
}
@keyframes scroll-animation-slide-in-right {
  from {
    translate: calc(40 * 1rem / var(--font-size)) 0;
  }
}
html {
  scrollbar-gutter: stable;
}

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

.js-accordion {
  --_duration: var(--duration);
}
.js-accordion__panel {
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows var(--_duration), visibility var(--_duration);
}

.js-accordion__panel[hidden] {
  visibility: hidden;
  grid-template-rows: 0fr;
}

.js-accordion__panel-inner {
  overflow: hidden;
}

/*
 * レイアウトについて
 * ページの構造を形成するレイアウト要素を定義します。
 * インナー、その他汎用的なレイアウトなどが含まれています。
 * クラス名は、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);
}

.l-page--overlay-header .l-page__content {
  padding-top: 0;
}

.l-page__main {
  position: relative;
}

.l-page__body {
  position: relative;
}

.l-page__article {
  position: relative;
}

.l-page--news-category .l-page__footer {
  padding-top: calc(10 * 1rem / var(--font-size));
}

.l-page--contact .l-page__footer {
  padding-top: calc(10 * 1rem / var(--font-size));
}

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

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

.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));
  -moz-column-gap: calc(32 * 1rem / var(--font-size));
       column-gap: calc(32 * 1rem / var(--font-size));
}

.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-inline-start: max(50% - var(--js-width__viewport) / 2, 50% - var(--max-width) * 1px / 2);
}

.l-2-columns--release-right {
  margin-inline-end: max(50% - var(--js-width__viewport) / 2, 50% - var(--max-width) * 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-inline-end: max(50% - var(--js-width__viewport) / 2, 50% - var(--max-width) * 1px / 2);
  margin-inline-start: auto;
}

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

.l-2-columns-pc {
  --_width__left: 700;
  --_width__right: 450;
  --_column-gap: 50;
  --_width__total: calc(
    var(--_width__left) + var(--_column-gap) + var(--_width__right)
  );
}

/*
 * モジュールについて
 * 再利用可能なUIモジュールを定義します。
 * ボタン、フォーム、モーダルなどのモジュールが含まれています。
 * クラス名は、m-buttonのように命名します。
 */
.m-works {
  position: relative;
  padding-block: calc(150 * 1rem / var(--font-size));
  z-index: 1;
}
.m-works::before {
  content: "";
  position: absolute;
  top: calc(-1 * 1rem / var(--font-size));
  left: 0;
  width: 100%;
  height: calc(750 * 1rem / var(--font-size));
  background-image: url("../images/front-page/works-bg.webp");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  z-index: -1;
}

.m-works__list {
  display: flex;
  justify-content: space-between;
  padding-top: calc(73 * 1rem / var(--font-size));
}

.m-works__list > li {
  width: 100%;
  max-width: calc(342 * 1rem / var(--font-size));
}

.m-works__more {
  display: flex;
  justify-content: center;
  padding-top: calc(73 * 1rem / var(--font-size));
}

.m-works__more > .m-more-link {
  --_min-width__text: 195;
  --_min-height__text: 36;
}

.m-works-spec {
  font-family: var(--font-family__noto-sans-jp);
  padding-block: calc(50 * 1rem / var(--font-size));
}

.m-works-spec > .l-inner {
  --_max-width: 1160;
  --_padding-inline: 140;
}

.m-works-spec__notes {
  display: grid;
  gap: calc(35 * 1rem / var(--font-size));
  max-width: calc(1000 * 1rem / var(--font-size));
  width: 100%;
  margin-top: calc(59 * 1rem / var(--font-size));
  margin-inline: auto;
}

.m-works-list {
  padding-block: calc(100 * 1rem / var(--font-size));
}

.m-works-list > .l-inner {
  --_max-width: 1116;
}

.m-works-list__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, calc(355 * 1rem / var(--font-size))));
  justify-content: space-between;
  row-gap: calc(26 * 1rem / var(--font-size));
}

.m-works-list__empty {
  display: grid;
  justify-items: center;
  gap: calc(40 * 1rem / var(--font-size));
}

.m-works-list__empty-text {
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 2;
  letter-spacing: 0.05em;
  text-align: center;
}

.m-works-list__empty-link > .m-more-link {
  --_color__icon: var(--color__red);
}

.m-works-gallery {
  font-family: var(--font-family__noto-sans-jp);
  padding-block: calc(30 * 1rem / var(--font-size));
}

.m-works-gallery__title {
  max-width: calc(840 * 1rem / var(--font-size));
  width: 100%;
  font-size: calc(26 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  margin-inline: auto;
}

.m-works-gallery__body {
  display: grid;
  justify-items: center;
  gap: calc(56 * 1rem / var(--font-size));
  margin-top: calc(56 * 1rem / var(--font-size));
}

.m-works-gallery__panels {
  width: 100%;
}

.m-works-gallery__photo {
  aspect-ratio: 1116/591;
  background-color: var(--color__gray-light);
}

.m-works-gallery__photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-works-gallery__slider {
  --swiper-theme-color: var(--color__red);
  --swiper-pagination-bullet-inactive-color: var(--color__white);
  --swiper-pagination-bullet-inactive-opacity: 0.8;
  height: 100%;
}

.m-works-gallery__tab-list {
  display: grid;
  grid-auto-columns: minmax(0, calc(237 * 1rem / var(--font-size)));
  grid-auto-flow: column;
  align-items: start;
  gap: calc(49 * 1rem / var(--font-size));
  padding-block: calc(8 * 1rem / var(--font-size));
  padding-inline: calc(15 * 1rem / var(--font-size));
  border: 4px solid var(--color__red);
  border-radius: calc(40 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-works-gallery__tab {
  display: grid;
  place-items: center;
  width: 100%;
  color: var(--color__red);
  font-size: calc(26 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  padding-block: calc(10 * 1rem / var(--font-size));
  padding-inline: calc(8 * 1rem / var(--font-size));
  border: 1px solid var(--color__red);
  border-radius: 9999px;
  background-color: var(--color__white);
}

.m-works-gallery__tab[aria-selected=true] {
  color: var(--color__white);
  background-color: var(--color__red);
}

.m-works-card {
  display: flex;
  flex-direction: column;
  gap: calc(17 * 1rem / var(--font-size));
  height: 100%;
  padding: calc(19 * 1rem / var(--font-size));
  border: 1px solid var(--color__gray-light);
  border-radius: calc(20 * 1rem / var(--font-size));
  background-color: var(--color__white);
  box-shadow: 0 calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) var(--color__black-alpha25);
}

.m-works-card__thumb {
  position: relative;
  display: block;
  aspect-ratio: 1/1;
  border-radius: calc(8 * 1rem / var(--font-size)) calc(8 * 1rem / var(--font-size)) 0 0;
  background-color: var(--color__gray-light);
}

.m-works-card__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: inherit;
}

.m-works-card__badge {
  position: absolute;
  top: calc(9 * 1rem / var(--font-size));
  left: calc(5 * 1rem / var(--font-size));
  color: var(--color__white);
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.5714285714;
  padding-inline: calc(24 * 1rem / var(--font-size));
  border-radius: 9999px;
  background-color: var(--color__red);
}

.m-works-card__title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: clip;
  color: var(--color__red);
  font-size: calc(15 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
}

.m-works-card__text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 6;
  overflow: clip;
  font-size: calc(15 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
}

.m-works-card__link {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: calc(13 * 1rem / var(--font-size));
  color: var(--color__red);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.625;
  padding-right: calc(7 * 1rem / var(--font-size));
  margin-top: auto;
}

.m-works-card__icon {
  width: calc(22 * 1rem / var(--font-size));
  height: calc(13 * 1rem / var(--font-size));
  rotate: 180deg;
}

.m-work-card {
  display: grid;
  border-radius: calc(20 * 1rem / var(--font-size));
  background-color: var(--color__white);
  box-shadow: calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) var(--color__black-alpha25);
  overflow: clip;
}

.m-work-card__thumb {
  aspect-ratio: 1/1;
  background-color: var(--color__gray-light);
}

.m-work-card__thumb picture,
.m-work-card__thumb img {
  display: block;
  width: 100%;
  height: 100%;
}

.m-work-card__thumb img {
  -o-object-fit: cover;
     object-fit: cover;
}

.m-work-card__body {
  display: grid;
  align-content: start;
  padding: calc(22 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size));
}

.m-work-card__tag {
  justify-self: start;
  font-size: calc(12 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5833333333;
  color: var(--color__white);
  padding: calc(2 * 1rem / var(--font-size)) calc(19 * 1rem / var(--font-size)) calc(3 * 1rem / var(--font-size));
  border-radius: 9999px;
  background-color: var(--color__red);
}

.m-work-card__place {
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
  margin-top: calc(7 * 1rem / var(--font-size));
}

.m-work-card__title {
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.07em;
  padding-bottom: calc(20 * 1rem / var(--font-size));
  border-bottom: 1px solid var(--color__gray-dark);
  margin-top: calc(-2 * 1rem / var(--font-size));
}

.m-work-card__text {
  display: -webkit-box;
  height: calc(66 * 1rem / var(--font-size));
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.6;
  overflow: clip;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  margin-top: calc(19 * 1rem / var(--font-size));
}

.m-work-card__more {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  max-width: calc(294 * 1rem / var(--font-size));
  color: var(--color__red);
  margin-top: calc(4 * 1rem / var(--font-size));
}

.m-work-card__more-icon {
  width: calc(20 * 1rem / var(--font-size));
  height: calc(20 * 1rem / var(--font-size));
}

.m-warranty {
  padding-block: calc(100 * 1rem / var(--font-size));
}

.m-warranty__body {
  max-width: calc(934 * 1rem / var(--font-size));
}

.m-warranty__lead {
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.5357142857;
  letter-spacing: 0.13em;
  padding-top: calc(19 * 1rem / var(--font-size));
}

.m-warranty__content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: calc(39 * 1rem / var(--font-size));
}

.m-warranty-table {
  width: calc(353 * 1rem / var(--font-size));
}

.m-warranty-table__caption {
  font-size: calc(15 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}

.m-warranty-table__table {
  width: 100%;
  font-size: calc(12 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6666666667;
  border-collapse: collapse;
  margin-top: calc(20 * 1rem / var(--font-size));
}

.m-warranty-table__table th,
.m-warranty-table__table td {
  height: calc(35 * 1rem / var(--font-size));
  text-align: left;
  vertical-align: top;
  padding: calc(8 * 1rem / var(--font-size)) calc(11 * 1rem / var(--font-size)) 0;
  border: 1px solid var(--color__brown-dark);
}

.m-warranty-table__table thead th {
  height: calc(28 * 1rem / var(--font-size));
  color: var(--color__white);
  font-weight: 700;
  vertical-align: middle;
  padding-top: 0;
  border-color: var(--color__red);
  background-color: var(--color__red);
}

.m-warranty-table__table tbody th {
  width: calc(105 * 1rem / var(--font-size));
  font-weight: 500;
  background-color: var(--color__beige-pale);
}

.m-warranty-table__table td {
  background-color: var(--color__white);
}

.m-wall-works {
  padding-block: calc(100 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-wall-works__lead {
  max-width: calc(686 * 1rem / var(--font-size));
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.8125;
  letter-spacing: 0.02em;
  padding-top: calc(18 * 1rem / var(--font-size));
}

.m-wall-works__list {
  display: grid;
  grid-template-columns: repeat(3, calc(302 * 1rem / var(--font-size)));
  gap: calc(11 * 1rem / var(--font-size));
  padding-top: calc(36 * 1rem / var(--font-size));
}

.m-wall-works__more {
  display: flex;
  justify-content: flex-end;
  max-width: calc(929 * 1rem / var(--font-size));
  padding-top: calc(50 * 1rem / var(--font-size));
}

.m-wall-works__more > .m-more-link {
  --_min-width__text: 195;
  --_min-height__text: 35;
}

.m-wall-point {
  position: relative;
  overflow-x: clip;
  padding-block: calc(100 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
  isolation: isolate;
}

.m-wall-point__deco {
  position: absolute;
  top: calc(-24 * 1rem / var(--font-size));
  left: calc(50% + 90 * 1rem / var(--font-size));
  width: calc(978 * 1rem / var(--font-size));
  height: calc(482 * 1rem / var(--font-size));
  pointer-events: none;
}

.m-wall-point__deco img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.m-wall-point__list {
  position: relative;
  max-width: calc(929 * 1rem / var(--font-size));
}

.m-wall-point-item {
  position: relative;
  display: flex;
  align-items: flex-end;
  gap: calc(15 * 1rem / var(--font-size));
  padding-top: calc(107 * 1rem / var(--font-size));
  padding-left: calc(9 * 1rem / var(--font-size));
}

.m-wall-point-item + .m-wall-point-item {
  margin-top: calc(-53 * 1rem / var(--font-size));
}

.m-wall-point-item + .m-wall-point-item--lower {
  margin-top: calc(-38 * 1rem / var(--font-size));
}

.m-wall-point-item--reverse {
  flex-direction: row-reverse;
  justify-content: flex-end;
  padding-top: calc(99 * 1rem / var(--font-size));
  padding-left: 0;
}

.m-wall-point-item--lower {
  padding-top: calc(86 * 1rem / var(--font-size));
}

.m-wall-point-item__num {
  position: absolute;
  top: 0;
  left: 0;
  color: var(--color__red);
  font-family: var(--font-family__outfit);
  font-size: calc(240 * 1rem / var(--font-size));
  font-weight: 800;
  line-height: 1.3541666667;
  opacity: 0.15;
  z-index: -1;
}

.m-wall-point-item--reverse .m-wall-point-item__num {
  left: auto;
  right: 0;
}

.m-wall-point-item__body {
  display: grid;
  gap: calc(30 * 1rem / var(--font-size));
  width: calc(554 * 1rem / var(--font-size));
}

.m-wall-point-item__title {
  font-size: calc(30 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.3666666667;
  letter-spacing: 0.02em;
}

.m-wall-point-item__text {
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.5714285714;
  padding-left: calc(39 * 1rem / var(--font-size));
}

.m-wall-point-item__figure {
  flex-shrink: 0;
  width: calc(351 * 1rem / var(--font-size));
}

.m-wall-point-item--wide-figure .m-wall-point-item__figure {
  width: calc(356 * 1rem / var(--font-size));
}

.m-wall-point-item__figure img {
  width: 100%;
  height: calc(285 * 1rem / var(--font-size));
  -o-object-fit: cover;
     object-fit: cover;
}

.m-wall-intro {
  padding-block: calc(50 * 1rem / var(--font-size)) calc(114 * 1rem / var(--font-size));
}

.m-wall-intro__body {
  display: grid;
  gap: calc(45 * 1rem / var(--font-size));
  max-width: calc(929 * 1rem / var(--font-size));
}

.m-wall-intro__head {
  position: relative;
  min-height: calc(363 * 1rem / var(--font-size));
}

.m-wall-intro__head > .m-heading {
  max-width: calc(516 * 1rem / var(--font-size));
}

.m-wall-intro__figure {
  position: absolute;
  top: calc(-5 * 1rem / var(--font-size));
  left: calc(427 * 1rem / var(--font-size));
  width: calc(502 * 1rem / var(--font-size));
}

.m-wall-intro__figure img {
  width: 100%;
  height: calc(315 * 1rem / var(--font-size));
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-mask-image: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.28) 10.58%, rgb(255, 255, 255) 100%);
          mask-image: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.28) 10.58%, rgb(255, 255, 255) 100%);
}

.m-wall-intro__list {
  display: grid;
  gap: calc(31 * 1rem / var(--font-size));
}

.m-wall-intro__item {
  display: grid;
  gap: calc(10 * 1rem / var(--font-size));
}

.m-wall-intro__item-title {
  display: flex;
  align-items: flex-end;
  gap: calc(24 * 1rem / var(--font-size));
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6111111111;
}

.m-wall-intro__item-title::before {
  content: "";
  flex-shrink: 0;
  width: calc(25 * 1rem / var(--font-size));
  height: calc(25 * 1rem / var(--font-size));
  border-radius: 50%;
  background-color: var(--color__red);
}

.m-wall-intro__item-text {
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.6;
  text-spacing-trim: space-all;
}

.m-wall-inspection {
  padding-block: calc(100 * 1rem / var(--font-size));
}

.m-wall-inspection__body {
  display: grid;
  gap: calc(60 * 1rem / var(--font-size));
  max-width: calc(929 * 1rem / var(--font-size));
  padding-top: calc(39 * 1rem / var(--font-size));
}

.m-wall-inspection__cards {
  display: grid;
  grid-template-columns: repeat(2, calc(450 * 1rem / var(--font-size)));
  gap: calc(27 * 1rem / var(--font-size));
}

.m-wall-inspection__group {
  padding-block: calc(10 * 1rem / var(--font-size));
}

.m-wall-inspection__group-title {
  color: var(--color__red);
  font-size: calc(40 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.05em;
  padding-bottom: calc(17 * 1rem / var(--font-size));
  border-bottom: 1px solid var(--color__red);
}

.m-wall-inspection__list {
  display: grid;
  gap: calc(27 * 1rem / var(--font-size));
  padding-top: calc(18 * 1rem / var(--font-size));
}

.m-voice {
  padding-block: calc(120 * 1rem / var(--font-size)) calc(149 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-voice__list {
  display: grid;
  row-gap: calc(45 * 1rem / var(--font-size));
  padding-top: calc(69 * 1rem / var(--font-size));
}

.m-voice__more {
  display: flex;
  justify-content: center;
  padding-top: calc(69 * 1rem / var(--font-size));
}

.m-voice-item {
  display: grid;
  grid-template-areas: "person bubble";
  grid-template-columns: 27.9214064116% 64.5294725957%;
  align-items: center;
}

.m-voice-item--reverse {
  grid-template-areas: "bubble person";
  grid-template-columns: 64.5294725957% 27.9214064116%;
  justify-content: end;
}

.m-voice-item__bubble {
  position: relative;
  grid-area: bubble;
  min-height: calc(337 * 1rem / var(--font-size));
  color: var(--color__beige-pale);
  padding: calc(37 * 1rem / var(--font-size)) calc(33 * 1rem / var(--font-size)) calc(35 * 1rem / var(--font-size)) calc(62 * 1rem / var(--font-size));
  isolation: isolate;
}
.m-voice-item__bubble::before {
  content: "";
  position: absolute;
  inset: calc(10 * 1rem / var(--font-size)) calc(10 * 1rem / var(--font-size)) calc(6 * 1rem / var(--font-size)) calc(35 * 1rem / var(--font-size));
  border-radius: calc(24 * 1rem / var(--font-size));
  background-color: var(--color__red-dark);
  z-index: -1;
}
.m-voice-item__bubble::after {
  content: "";
  position: absolute;
  top: calc(177 * 1rem / var(--font-size));
  left: calc(10 * 1rem / var(--font-size));
  width: calc(26 * 1rem / var(--font-size));
  height: calc(43 * 1rem / var(--font-size));
  background-color: var(--color__red-dark);
  -webkit-mask: url("../images/front-page/voice-tail.svg") no-repeat center/100% 100%;
          mask: url("../images/front-page/voice-tail.svg") no-repeat center/100% 100%;
  z-index: -1;
}

.m-voice-item--reverse .m-voice-item__bubble {
  padding: calc(37 * 1rem / var(--font-size)) calc(61 * 1rem / var(--font-size)) calc(35 * 1rem / var(--font-size)) calc(34 * 1rem / var(--font-size));
}
.m-voice-item--reverse .m-voice-item__bubble::before {
  inset: calc(10 * 1rem / var(--font-size)) calc(35 * 1rem / var(--font-size)) calc(6 * 1rem / var(--font-size)) calc(10 * 1rem / var(--font-size));
}
.m-voice-item--reverse .m-voice-item__bubble::after {
  right: calc(10 * 1rem / var(--font-size));
  left: auto;
  scale: -1 1;
}

.m-voice-item__rating {
  display: flex;
  align-items: flex-end;
  -moz-column-gap: calc(5 * 1rem / var(--font-size));
       column-gap: calc(5 * 1rem / var(--font-size));
}

.m-voice-item__stars {
  display: flex;
  -moz-column-gap: calc(5 * 1rem / var(--font-size));
       column-gap: calc(5 * 1rem / var(--font-size));
  color: var(--color__yellow);
}

.m-voice-item__stars svg {
  width: calc(33 * 1rem / var(--font-size));
  height: calc(33 * 1rem / var(--font-size));
}

.m-voice-item__star--empty {
  color: var(--color__gray-light);
}

.m-voice-item__rating-label {
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(13 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6153846154;
}

.m-voice-item__title {
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6111111111;
  letter-spacing: 0.08em;
  margin-top: calc(29 * 1rem / var(--font-size));
}

.m-voice-item__text {
  max-width: calc(518 * 1rem / var(--font-size));
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.625;
  margin-top: calc(12 * 1rem / var(--font-size));
}

.m-voice-item__person {
  display: grid;
  grid-area: person;
  grid-template-areas: "photo" "attribution";
  justify-items: center;
  row-gap: calc(30 * 1rem / var(--font-size));
  text-align: center;
}

.m-voice-item__photo {
  grid-area: photo;
  width: 100%;
  max-width: calc(243 * 1rem / var(--font-size));
  aspect-ratio: 1;
}

.m-voice-item--reverse .m-voice-item__photo {
  max-width: calc(255 * 1rem / var(--font-size));
}

.m-voice-item__photo picture,
.m-voice-item__photo img {
  display: block;
  width: 100%;
  height: 100%;
}

.m-voice-item__photo img {
  -o-object-fit: cover;
     object-fit: cover;
}

.m-voice-item__attribution {
  grid-area: attribution;
}

.m-voice-item__name {
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.625;
}

.m-voice-item__place {
  font-size: calc(13 * 1rem / var(--font-size));
  line-height: 1.6153846154;
}

.m-trust {
  position: relative;
  padding-block: calc(120 * 1rem / var(--font-size));
  background-color: var(--color__white);
  isolation: isolate;
}
.m-trust::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("../images/front-page/trust-bg.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  opacity: 0.2;
  z-index: -1;
}

.m-trust__panel {
  padding-block: calc(30 * 1rem / var(--font-size)) calc(29 * 1rem / var(--font-size));
  border-radius: calc(24 * 1rem / var(--font-size));
  background-color: var(--color__white-alpha69);
}

.m-trust__lead {
  font-size: calc(18 * 1rem / var(--font-size));
  line-height: 2;
  text-align: center;
  line-break: strict;
  padding-top: calc(63 * 1rem / var(--font-size));
}

.m-trust__stats {
  max-width: calc(666 * 1rem / var(--font-size));
  margin-inline: auto;
  padding-top: calc(66 * 1rem / var(--font-size));
}

.m-trust__cards {
  display: flex;
  justify-content: center;
  -moz-column-gap: calc(18 * 1rem / var(--font-size));
       column-gap: calc(18 * 1rem / var(--font-size));
}

.m-trust__cards > li {
  width: 100%;
  max-width: calc(210 * 1rem / var(--font-size));
}

.m-trust__notes {
  display: grid;
  font-size: calc(12 * 1rem / var(--font-size));
  line-height: 1.5833333333;
  padding-top: calc(24 * 1rem / var(--font-size));
}

.m-trust__more {
  display: flex;
  justify-content: center;
  padding-top: calc(66 * 1rem / var(--font-size));
}

.m-trust__more > .m-more-link {
  --_color__icon: var(--color__red);
}

.m-titled-text__title {
  display: grid;
  align-items: center;
  min-height: calc(74 * 1rem / var(--font-size));
  font-size: calc(26 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.2;
  padding-bottom: calc(14 * 1rem / var(--font-size));
  border-bottom: 1px solid var(--color__brown-dark);
}

.m-titled-text__text {
  min-height: calc(59 * 1rem / var(--font-size));
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 400;
  line-height: 1.2;
  margin-top: calc(15 * 1rem / var(--font-size));
}

.m-titled-card {
  padding-bottom: calc(15 * 1rem / var(--font-size));
  border: 1px solid var(--color__red);
  border-radius: calc(8 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-titled-card__title {
  min-height: calc(50 * 1rem / var(--font-size));
  color: var(--color__white);
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  padding-top: calc(9 * 1rem / var(--font-size));
  border-radius: calc(7 * 1rem / var(--font-size)) calc(7 * 1rem / var(--font-size)) 0 0;
  background-color: var(--color__red);
}

.m-titled-card__text {
  min-height: calc(67 * 1rem / var(--font-size));
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6111111111;
  text-align: center;
  padding-inline: calc(20 * 1rem / var(--font-size));
  margin-top: calc(13 * 1rem / var(--font-size));
}

.m-timeline {
  display: grid;
  row-gap: calc(29 * 1rem / var(--font-size));
  width: 100%;
  max-width: calc(905 * 1rem / var(--font-size));
  margin-inline: auto;
}

.m-timeline__item {
  display: grid;
  grid-template-columns: calc(88 * 1rem / var(--font-size)) 1fr;
  grid-template-areas: "time title" "time text";
  -moz-column-gap: calc(39 * 1rem / var(--font-size));
       column-gap: calc(39 * 1rem / var(--font-size));
  row-gap: calc(5 * 1rem / var(--font-size));
}
.m-timeline__item:not(:last-child)::after {
  content: "";
  grid-row: 3;
  grid-column: 2;
  justify-self: end;
  width: calc(765 * 1rem / var(--font-size));
  max-width: 100%;
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--color__red) 0 2px, transparent 2px 11px);
  margin-top: calc(25 * 1rem / var(--font-size));
}

.m-timeline__time {
  display: grid;
  grid-area: time;
  place-items: center;
  align-self: start;
  min-height: calc(40 * 1rem / var(--font-size));
  font-family: var(--font-family__outfit);
  font-size: calc(22 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5909090909;
  color: var(--color__red);
  translate: 0 calc(3 * 1rem / var(--font-size));
}

.m-timeline__title {
  grid-area: title;
  font-size: calc(22 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.5909090909;
}

.m-timeline__text {
  grid-area: text;
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 400;
  line-height: 1.5833333333;
  line-break: strict;
}

.m-timeline__text--single {
  height: calc(28 * 1rem / var(--font-size));
}

.m-timeline__latin {
  font-family: var(--font-family__outfit);
  line-height: 1;
}

.m-thanks {
  padding-block: calc(75 * 1rem / var(--font-size)) calc(125 * 1rem / var(--font-size));
  margin-top: calc(10 * 1rem / var(--font-size));
}

.m-thanks__card {
  display: grid;
  grid-template-columns: 100%;
  justify-items: center;
  text-align: center;
  padding: calc(50 * 1rem / var(--font-size)) calc(100 * 1rem / var(--font-size)) calc(54 * 1rem / var(--font-size));
  border-radius: calc(30 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-thanks__lead {
  color: var(--color__black);
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5;
}

.m-thanks__text {
  color: var(--color__black);
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.75;
  margin-top: calc(24 * 1rem / var(--font-size));
}

.m-thanks__tel {
  display: grid;
  justify-items: center;
  row-gap: calc(4 * 1rem / var(--font-size));
  margin-top: calc(32 * 1rem / var(--font-size));
}

.m-thanks__tel-link {
  color: var(--color__red);
  font-family: var(--font-family__outfit);
  font-size: calc(32 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.2;
}

.m-thanks__tel-note {
  color: var(--color__black);
  font-size: calc(13 * 1rem / var(--font-size));
  line-height: 1.5384615385;
}

.m-thanks__button {
  margin-top: calc(40 * 1rem / var(--font-size));
}

.m-target {
  position: relative;
  margin-top: calc(-70 * 1rem / var(--font-size));
}

.m-target__slider {
  max-width: calc(1116 * 1rem / var(--font-size));
  overflow: visible;
  margin-inline: auto;
}

.m-target__list {
  display: flex;
  justify-content: center;
  gap: calc(12 * 1rem / var(--font-size));
}

.m-target__item {
  width: calc(364 * 1rem / var(--font-size));
  height: auto;
}

.m-target-card {
  --_shadow: calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) var(--color__brown-alpha25);
  --_circle-scale: 1;
  --_more-shift: 0 0;
  position: relative;
  display: grid;
  align-content: start;
  width: 100%;
  max-width: calc(364 * 1rem / var(--font-size));
  min-height: calc(266 * 1rem / var(--font-size));
  padding: calc(39 * 1rem / var(--font-size)) calc(24 * 1rem / var(--font-size)) calc(29 * 1rem / var(--font-size));
  border: 1px solid var(--color__red);
  border-radius: calc(8 * 1rem / var(--font-size));
  background-color: var(--color__white);
  box-shadow: var(--_shadow);
  transition: box-shadow var(--duration);
}
.m-target-card:focus-visible {
  --_shadow: none;
  --_circle-scale: calc(37 / 55);
  --_more-shift: calc(-6 * 1rem / var(--font-size)) calc(9 * 1rem / var(--font-size));
}
.m-target-card::before {
  content: "";
  position: absolute;
  top: calc(25 * 1rem / var(--font-size));
  left: -1px;
  width: calc(10 * 1rem / var(--font-size));
  height: calc(32 * 1rem / var(--font-size));
  background-color: var(--color__red);
}

.m-target-card__num {
  font-family: var(--font-family__outfit);
  font-size: calc(15 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.2666666667;
  color: var(--color__red);
}

.m-target-card__head {
  display: flex;
  align-items: flex-end;
  gap: calc(19 * 1rem / var(--font-size));
  min-height: calc(43 * 1rem / var(--font-size));
  padding-bottom: calc(8 * 1rem / var(--font-size));
  border-bottom: 1px solid var(--color__red);
}

.m-target-card__icon {
  flex-shrink: 0;
  width: calc(43 * 1rem / var(--font-size));
  height: calc(29 * 1rem / var(--font-size));
  color: var(--color__red);
}

.m-target-card__icon--building {
  translate: calc(6 * 1rem / var(--font-size)) 0;
}

.m-target-card__icon--house {
  width: calc(40 * 1rem / var(--font-size));
  height: calc(36 * 1rem / var(--font-size));
  translate: calc(12 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size));
}

.m-target-card__icon--factory {
  width: calc(42 * 1rem / var(--font-size));
  height: calc(29 * 1rem / var(--font-size));
  translate: calc(11 * 1rem / var(--font-size)) calc(-1 * 1rem / var(--font-size));
}

.m-target-card__title {
  display: flex;
  align-items: flex-end;
  gap: calc(4 * 1rem / var(--font-size));
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.45;
}

.m-target-card__title--noto-sans-jp {
  font-family: var(--font-family__noto-sans-jp);
  line-height: 1.2;
}

.m-target-card__title--gap-none {
  gap: 0;
}

.m-target-card__honorific {
  font-family: var(--font-family__zen-kaku-gothic-new);
  font-weight: 700;
}

.m-target-card__text {
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.4478571429;
  letter-spacing: 0.08em;
  line-break: strict;
  padding: calc(7 * 1rem / var(--font-size)) calc(11 * 1rem / var(--font-size)) 0 calc(13 * 1rem / var(--font-size));
}

.m-target-card__more {
  position: absolute;
  right: calc(29 * 1rem / var(--font-size));
  bottom: calc(29 * 1rem / var(--font-size));
  display: flex;
  align-items: center;
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.4285714286;
  color: var(--color__red);
}

.m-target-card__more > span:first-child {
  position: relative;
  translate: var(--_more-shift);
  transition: translate var(--duration);
  z-index: 1;
}

.m-target-card__more-circle {
  display: grid;
  place-items: center;
  width: calc(55 * 1rem / var(--font-size));
  height: calc(55 * 1rem / var(--font-size));
  border-radius: 50%;
  background-color: var(--color__pink-pale);
  scale: var(--_circle-scale);
  transform-origin: 16.6666666667% bottom;
  transition: scale var(--duration);
  margin-left: calc(-16 * 1rem / var(--font-size));
}

.m-target-card__more-icon {
  width: calc(8 * 1rem / var(--font-size));
  height: calc(7 * 1rem / var(--font-size));
}

.m-tag-chip {
  display: inline-flex;
  align-items: center;
  color: var(--color__brown-dark);
  font-family: var(--font-family__outfit-jp);
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5714285714;
  padding: calc(3 * 1rem / var(--font-size)) calc(10 * 1rem / var(--font-size));
  border-radius: 9999px;
  background-color: var(--color__white);
}

.m-tag-chip__mark {
  flex-shrink: 0;
  width: calc(13 * 1rem / var(--font-size));
}

.m-sustainability {
  padding-block: calc(100 * 1rem / var(--font-size));
}

.m-sustainability__inner {
  display: grid;
  gap: calc(56 * 1rem / var(--font-size));
}

.m-sustainability__heading {
  padding-block: calc(10 * 1rem / var(--font-size));
}

.m-sustainability__heading .m-heading__lead {
  max-width: calc(932 * 1rem / var(--font-size));
  line-break: strict;
}

.m-sustainability__body {
  display: grid;
  gap: calc(10 * 1rem / var(--font-size));
}

.m-sustainability__tabs {
  display: grid;
  grid-template-columns: repeat(3, calc(203 * 1rem / var(--font-size)));
  -moz-column-gap: calc(10 * 1rem / var(--font-size));
       column-gap: calc(10 * 1rem / var(--font-size));
}

.m-sustainability__tab {
  --_color: var(--color__red);
  --_bg: var(--color__beige-pale);
  --_selected: var(--color__red);
  display: grid;
  place-items: center;
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6111111111;
  letter-spacing: 0.02em;
  color: var(--color__brown-dark);
  text-align: center;
  padding: calc(14 * 1rem / var(--font-size));
  border: 1px solid var(--_color);
  border-radius: calc(16 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) 0 0;
  background-color: var(--_bg);
}

.m-sustainability__tab--social {
  --_color: var(--color__indigo);
  --_bg: var(--color__indigo-mist);
  --_selected: var(--color__indigo);
}

.m-sustainability__tab--governance {
  --_color: var(--color__green-vivid);
  --_bg: var(--color__green-mist);
  --_selected: var(--color__green-deep);
}

.m-sustainability__tab[aria-selected=true] {
  color: var(--color__white);
  border-color: var(--_selected);
  background-color: var(--_selected);
}

.m-sustainability__panel {
  --_color: var(--color__red);
  --_bg: var(--color__beige-pale);
  --_accent: var(--color__red);
  --_watermark: var(--color__beige-light);
  position: relative;
  display: grid;
  row-gap: calc(30 * 1rem / var(--font-size));
  max-width: calc(929 * 1rem / var(--font-size));
  width: 100%;
  padding-block: calc(40 * 1rem / var(--font-size));
  border: 1px solid var(--_color);
  border-radius: 0 calc(16 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  background-color: var(--_bg);
}

.m-sustainability__panel--social {
  --_color: var(--color__indigo);
  --_bg: var(--color__indigo-mist);
  --_accent: var(--color__indigo-deep);
  --_watermark: var(--color__indigo-pale);
}

.m-sustainability__panel--governance {
  --_color: var(--color__green-deep);
  --_bg: var(--color__green-mist);
  --_accent: var(--color__green-deep);
  --_watermark: var(--color__green-pale);
}

.m-sustainability__watermark {
  position: absolute;
  top: calc(62 * 1rem / var(--font-size));
  right: calc(0.5393743258% - 0.09em);
  font-family: var(--font-family__outfit);
  font-size: calc(47 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 0.6808510638;
  letter-spacing: 0.09em;
  color: var(--_watermark);
  text-align: right;
  white-space: nowrap;
  pointer-events: none;
}

.m-sustainability__panel-title {
  position: relative;
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.9;
  letter-spacing: 0.13em;
  color: var(--_color);
  white-space: nowrap;
  padding-left: calc(34 * 1rem / var(--font-size));
}

.m-sustainability__cards {
  display: grid;
  grid-template-columns: repeat(3, calc(294 * 1rem / var(--font-size)));
  justify-content: center;
  -moz-column-gap: calc(10 * 1rem / var(--font-size));
       column-gap: calc(10 * 1rem / var(--font-size));
}

.m-sustainability__card {
  position: relative;
}
.m-sustainability__card:not(:first-child)::before {
  content: "";
  position: absolute;
  top: calc(58 * 1rem / var(--font-size));
  left: calc(-5 * 1rem / var(--font-size));
  width: 1px;
  height: calc(133 * 1rem / var(--font-size));
  background-image: repeating-linear-gradient(to bottom, var(--_color) 0 2px, transparent 2px 9px);
}

.m-sustainability__panel .m-esg-card {
  --_color: inherit;
  --_accent: inherit;
}

.m-survey-row {
  display: grid;
  grid-template-columns: calc(368 * 1rem / var(--font-size)) calc(526 * 1rem / var(--font-size));
  -moz-column-gap: calc(35 * 1rem / var(--font-size));
       column-gap: calc(35 * 1rem / var(--font-size));
  min-height: calc(146 * 1rem / var(--font-size));
}

.m-survey-row:last-child {
  -moz-column-gap: calc(25 * 1rem / var(--font-size));
       column-gap: calc(25 * 1rem / var(--font-size));
}

.m-survey-row__figure img {
  width: 100%;
  height: calc(140 * 1rem / var(--font-size));
  -o-object-fit: cover;
     object-fit: cover;
  margin-top: calc(3 * 1rem / var(--font-size));
}

.m-survey-row:last-child .m-survey-row__figure img {
  height: calc(146 * 1rem / var(--font-size));
  margin-top: 0;
}

.m-survey-row__title {
  color: var(--color__red);
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
}

.m-survey-row__text {
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.6;
  padding-top: calc(10 * 1rem / var(--font-size));
}

.m-survey-card {
  display: grid;
  align-content: start;
  min-height: calc(419 * 1rem / var(--font-size));
}

.m-survey-card__figure img {
  width: 100%;
  height: calc(257 * 1rem / var(--font-size));
  -o-object-fit: cover;
     object-fit: cover;
}

.m-survey-card__title {
  color: var(--color__red);
  font-size: calc(30 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.3666666667;
  letter-spacing: 0.05em;
  padding-top: calc(21 * 1rem / var(--font-size));
  padding-bottom: calc(7 * 1rem / var(--font-size));
  border-bottom: 1px solid var(--color__red);
}

.m-survey-card__text {
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.6;
  padding-top: calc(10 * 1rem / var(--font-size));
  line-break: strict;
}

.m-strength {
  padding-block: calc(100 * 1rem / var(--font-size));
}

.m-strength__body {
  display: grid;
  gap: calc(60 * 1rem / var(--font-size));
  max-width: calc(854 * 1rem / var(--font-size));
}

.m-strength__body > .m-heading {
  --_title-line-height: calc(87 / 68);
}

.m-strength-tabs {
  display: grid;
  grid-template-columns: 100%;
  max-width: calc(854 * 1rem / var(--font-size));
}

.m-strength-tabs > * {
  grid-area: 1/1;
}

.m-strength-tabs__shape {
  min-height: calc(760 * 1rem / var(--font-size));
  background-position: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

.m-strength-tabs__shape--research {
  background-image: url("../images/renovation/strength-tab-research.svg");
  z-index: 3;
}

.m-strength-tabs__shape--quality {
  background-image: url("../images/renovation/strength-tab-quality.svg");
  z-index: 2;
}

.m-strength-tabs__shape--cost {
  background-image: url("../images/renovation/strength-tab-cost.svg");
  z-index: 1;
}

.m-strength-tabs:has(.m-strength-tabs__panel--research:not([hidden])) .m-strength-tabs__shape--research,
.m-strength-tabs:has(.m-strength-tabs__panel--quality:not([hidden])) .m-strength-tabs__shape--quality,
.m-strength-tabs:has(.m-strength-tabs__panel--cost:not([hidden])) .m-strength-tabs__shape--cost {
  z-index: 4;
}

.m-strength-tabs__list {
  position: relative;
  justify-self: end;
  width: calc(46 * 1rem / var(--font-size));
  z-index: 6;
}

.m-strength-tabs__tab {
  position: absolute;
  left: 0;
  display: grid;
  justify-items: start;
  align-content: start;
  width: 100%;
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 700;
  padding-left: calc(7 * 1rem / var(--font-size));
}

.m-strength-tabs__tab-label {
  width: calc(24 * 1rem / var(--font-size));
  line-height: 1.2;
  letter-spacing: 0.2em;
  writing-mode: vertical-rl;
  padding-top: calc(2 * 1rem / var(--font-size));
}

.m-strength-tabs__tab--research {
  --_color: var(--color__red);
  --_bg: var(--color__red-mist);
  top: 0;
  height: calc(210 * 1rem / var(--font-size));
  padding-top: calc(27 * 1rem / var(--font-size));
}

.m-strength-tabs__tab--quality {
  --_color: var(--color__indigo);
  --_bg: var(--color__indigo-mist);
  top: calc(197 * 1rem / var(--font-size));
  height: calc(203 * 1rem / var(--font-size));
  padding-top: calc(38 * 1rem / var(--font-size));
}

.m-strength-tabs__tab--cost {
  --_color: var(--color__green-vivid);
  --_bg: var(--color__green-mist);
  top: calc(392 * 1rem / var(--font-size));
  height: calc(235 * 1rem / var(--font-size));
  padding-top: calc(31 * 1rem / var(--font-size));
}

.m-strength-tabs__panel {
  width: calc(808 * 1rem / var(--font-size));
  padding: calc(30 * 1rem / var(--font-size)) calc(48 * 1rem / var(--font-size));
  z-index: 5;
}

.m-strength-tabs__panel--research {
  --_color: var(--color__red);
  --_bg: var(--color__red-mist);
}

.m-strength-tabs__panel--quality {
  --_color: var(--color__indigo);
  --_bg: var(--color__indigo-mist);
}

.m-strength-tabs__panel--cost {
  --_color: var(--color__green-vivid);
  --_bg: var(--color__green-mist);
}

.m-strength-tabs__title {
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.4583333333;
}

.m-strength-tabs__cards {
  display: grid;
  grid-template-columns: repeat(2, calc(348 * 1rem / var(--font-size)));
  gap: calc(10 * 1rem / var(--font-size));
  margin-top: calc(49 * 1rem / var(--font-size));
}

.m-strength-tabs__panel--research .m-strength-tabs__cards {
  grid-auto-rows: calc(285 * 1rem / var(--font-size));
}

.m-strength-tabs__panel--quality .m-strength-tabs__cards,
.m-strength-tabs__panel--cost .m-strength-tabs__cards {
  grid-template-rows: calc(338 * 1rem / var(--font-size)) calc(264 * 1rem / var(--font-size));
}

.m-strength-card {
  display: grid;
  justify-items: center;
  align-content: start;
  gap: calc(20 * 1rem / var(--font-size));
  padding: calc(19 * 1rem / var(--font-size));
  border: 1px solid var(--_color, var(--color__red));
  border-radius: calc(8 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-strength-card--wide {
  grid-column: 1/-1;
}

.m-strength-card__head {
  display: flex;
  align-items: center;
  gap: calc(31 * 1rem / var(--font-size));
}

.m-strength-card--wide .m-strength-card__head {
  max-width: calc(552 * 1rem / var(--font-size));
  width: 100%;
}

.m-strength-card__icon {
  flex-shrink: 0;
  width: calc(113 * 1rem / var(--font-size));
  height: calc(113 * 1rem / var(--font-size));
}

.m-strength-card__icon img {
  display: block;
  width: 100%;
  height: 100%;
}

.m-strength-card__heading {
  display: grid;
  justify-items: start;
}

.m-strength-card__num {
  font-family: var(--font-family__outfit);
  font-size: calc(46 * 1rem / var(--font-size));
  font-weight: 800;
  line-height: 1.2608695652;
  color: var(--_color, var(--color__red));
}

.m-strength-card__title {
  width: calc(164 * 1rem / var(--font-size));
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.15em;
  margin-top: calc(-5 * 1rem / var(--font-size));
}

.m-strength-card--wide .m-strength-card__title {
  width: calc(324 * 1rem / var(--font-size));
}

.m-strength-card__text {
  max-width: calc(299 * 1rem / var(--font-size));
  width: 100%;
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 2;
  line-break: strict;
}

.m-strength-card--wide .m-strength-card__text {
  max-width: calc(552 * 1rem / var(--font-size));
}

.m-step-card {
  display: grid;
  align-content: start;
  gap: calc(10 * 1rem / var(--font-size));
  height: calc(216 * 1rem / var(--font-size));
  padding: calc(24 * 1rem / var(--font-size)) calc(32 * 1rem / var(--font-size)) calc(23 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size));
  border: 1px solid var(--color__red);
  border-radius: calc(20 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-step-card__head {
  display: flex;
  align-items: center;
  gap: calc(10 * 1rem / var(--font-size));
}

.m-step-card__num {
  flex-shrink: 0;
  color: var(--color__red);
  font-family: var(--font-family__outfit);
  font-size: calc(30 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
}

.m-step-card__line {
  flex-shrink: 0;
  height: calc(33 * 1rem / var(--font-size));
  border-left: 2px solid var(--color__brown-dark);
  margin-right: calc(-1 * 1rem / var(--font-size));
}

.m-step-card__title {
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
}

.m-step-card__text {
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 400;
  line-height: 1.6;
}

.m-stat-card {
  position: relative;
  display: grid;
  align-content: center;
  min-height: calc(156 * 1rem / var(--font-size));
  text-align: center;
  padding: calc(40 * 1rem / var(--font-size)) calc(15 * 1rem / var(--font-size)) calc(10 * 1rem / var(--font-size));
  border: 1px solid var(--color__red);
  border-radius: calc(16 * 1rem / var(--font-size));
  background-color: var(--color__white);
  box-shadow: calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) var(--color__black-alpha25);
}

.m-stat-card__label {
  position: absolute;
  top: -1px;
  left: calc(20 * 1rem / var(--font-size));
  width: calc(168 * 1rem / var(--font-size));
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.625;
  letter-spacing: 0.05em;
  color: var(--color__white);
  padding-block: calc(4 * 1rem / var(--font-size));
  border-radius: 0 0 calc(16 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  background-color: var(--color__red);
}

.m-stat-card__value {
  display: flex;
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  justify-content: center;
  align-items: baseline;
  -moz-column-gap: calc(5 * 1rem / var(--font-size));
       column-gap: calc(5 * 1rem / var(--font-size));
}

.m-stat-card__num {
  font-family: var(--font-family__outfit);
  font-size: calc(34 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5882352941;
  color: var(--color__red);
}

.m-stat-card__unit {
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 700;
  color: var(--color__brown-dark);
}

.m-stat-card--percent .m-stat-card__unit {
  font-family: var(--font-family__outfit);
}

.m-stat-card__text {
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.5714285714;
  margin-top: calc(-1 * 1rem / var(--font-size));
}

.m-spec-table {
  display: grid;
  padding-block: calc(30 * 1rem / var(--font-size));
  padding-inline: calc(80 * 1rem / var(--font-size));
  border-radius: calc(16 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-spec-table__row {
  position: relative;
  display: grid;
  grid-template-columns: calc(202 * 1rem / var(--font-size)) minmax(0, calc(701 * 1rem / var(--font-size)));
  align-items: center;
  min-height: calc(59 * 1rem / var(--font-size));
}

.m-spec-table__row:not(:first-child) {
  min-height: calc(111 * 1rem / var(--font-size));
  padding-top: calc(52 * 1rem / var(--font-size));
}

.m-spec-table__row:not(:first-child)::before {
  content: "";
  position: absolute;
  top: calc(26 * 1rem / var(--font-size));
  left: 0;
  width: 100%;
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--color__brown-dark) 0 2px, transparent 2px 8px);
}

.m-spec-table__term {
  font-size: calc(26 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.2;
}

.m-spec-table__desc {
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.2;
}

.m-solution__head {
  padding-block: calc(10 * 1rem / var(--font-size));
}

.m-solution__list {
  padding-block: calc(50 * 1rem / var(--font-size)) calc(100 * 1rem / var(--font-size));
}

.m-solution__list > .l-inner {
  display: grid;
  row-gap: calc(10 * 1rem / var(--font-size));
}

.m-solution-card {
  min-height: calc(118 * 1rem / var(--font-size));
  padding: calc(8 * 1rem / var(--font-size)) calc(21 * 1rem / var(--font-size)) calc(11 * 1rem / var(--font-size));
  border: 2px solid var(--color__red);
  background-color: var(--color__white);
  box-shadow: 0 calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) var(--color__black-alpha25);
}

.m-solution-card__title {
  color: var(--color__red);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.625;
}

.m-solution-card__text {
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.5714285714;
  margin-top: calc(3 * 1rem / var(--font-size));
}

.m-solution-card + .m-solution-card {
  min-height: calc(119 * 1rem / var(--font-size));
  padding-top: calc(7 * 1rem / var(--font-size));
  padding-bottom: calc(16 * 1rem / var(--font-size));
}

.m-solution-card + .m-solution-card .m-solution-card__text {
  margin-top: 0;
}

.m-solution-block {
  --_bleed: max(
    calc(50% - var(--js-width__viewport) / 2),
    calc(50% - (var(--max-width) * 1px / 2))
  );
  display: grid;
  grid-template-columns: calc(458 * 1rem / var(--font-size)) calc(336 * 1rem / var(--font-size));
  -moz-column-gap: calc(73 * 1rem / var(--font-size));
       column-gap: calc(73 * 1rem / var(--font-size));
  align-items: center;
  width: calc(934 * 1rem / var(--font-size) - var(--_bleed));
  padding-block: calc(37 * 1rem / var(--font-size));
  padding-left: calc(-2 * 1rem / var(--font-size) - var(--_bleed));
  background-color: var(--color__beige-pale);
  margin-left: var(--_bleed);
}

.m-solution-block--deep {
  background-color: var(--color__beige);
}

.m-solution-block__main {
  display: grid;
  justify-items: start;
}

.m-solution-block__badge {
  display: flex;
  align-items: center;
  color: var(--color__white);
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.5714285714;
  white-space: nowrap;
  padding: calc(5 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size));
  background-color: var(--color__red);
}

.m-solution-block__type {
  font-weight: 700;
  letter-spacing: 0.06em;
}

.m-solution-block__target {
  display: flex;
  align-items: center;
  gap: calc(9 * 1rem / var(--font-size));
  font-weight: 500;
  margin-left: calc(10 * 1rem / var(--font-size));
}

.m-solution-block__target::before {
  content: "";
  width: 1px;
  height: calc(16 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-solution-block__title {
  font-size: calc(30 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.7666666667;
  letter-spacing: 0.12em;
  margin-top: calc(11 * 1rem / var(--font-size));
}

.m-solution-block__accent {
  color: var(--color__red);
}

.m-solution-block__text {
  min-height: calc(130 * 1rem / var(--font-size));
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 2;
  line-break: strict;
  margin-top: calc(44 * 1rem / var(--font-size));
}

.m-solution-block--narrow-text .m-solution-block__text {
  max-width: calc(444 * 1rem / var(--font-size));
}

.m-solution-block--deep .m-solution-block__text {
  margin-top: calc(25 * 1rem / var(--font-size));
}

.m-solution-block__note {
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.625;
  line-break: strict;
  padding-left: calc(13 * 1rem / var(--font-size));
  border-left: 4px solid var(--color__red);
  margin-top: calc(18 * 1rem / var(--font-size));
}

.m-solution-block--deep .m-solution-block__note {
  margin-top: calc(8 * 1rem / var(--font-size));
}

.m-solution-block__side {
  display: grid;
  justify-items: center;
  row-gap: calc(9 * 1rem / var(--font-size));
}

.m-solution-block__photo {
  max-width: calc(314 * 1rem / var(--font-size));
  width: 100%;
}

.m-solution-block__photo img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 628/399;
}

.m-solution-block__cards {
  display: grid;
  row-gap: calc(9 * 1rem / var(--font-size));
  max-width: calc(314 * 1rem / var(--font-size));
  width: 100%;
}

.m-sns {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(14 * 1rem / var(--font-size));
}

.m-sns__link {
  display: grid;
  place-items: center;
  width: calc(var(--_size__link, 44) * 1rem / var(--font-size));
  min-width: var(--_min-size__link);
  height: calc(var(--_size__link, 44) * 1rem / var(--font-size));
  min-height: var(--_min-size__link);
}

.m-sns__link--x,
.m-sns__link--note {
  color: var(--color__black);
}

.m-sns__link--facebook {
  color: var(--color__blue-bright);
}

.m-sns__link--youtube {
  color: var(--color__red-pure);
}

.m-sns__icon {
  width: calc(26 * 1rem / var(--font-size));
  height: calc(26 * 1rem / var(--font-size));
}

.m-slogan {
  padding-block: calc(100 * 1rem / var(--font-size));
}

.m-slogan > .l-inner {
  display: grid;
  gap: calc(60 * 1rem / var(--font-size));
}

.m-slogan__diagram {
  position: relative;
  width: calc(781 * 1rem / var(--font-size));
  aspect-ratio: 781/684;
}

.m-slogan__triangle {
  position: absolute;
  top: 23.8304093567%;
  left: 24.5838668374%;
  width: 52.2407170294%;
  height: 51.6081871345%;
  color: var(--color__brown-dark);
}

.m-slogan__item {
  position: absolute;
  display: grid;
  align-content: start;
  justify-items: center;
  gap: calc(16 * 1rem / var(--font-size));
  width: 42.7656850192%;
  aspect-ratio: 1;
  text-align: center;
  padding-top: calc(44 * 1rem / var(--font-size));
  border: 1px solid var(--color__red);
  border-radius: 50%;
  background-color: var(--color__white);
}

.m-slogan__item--protect {
  top: 0;
  left: 28.8092189501%;
}

.m-slogan__item--polish {
  top: 51.1695906433%;
  left: 0;
}

.m-slogan__item--shine {
  top: 51.1695906433%;
  left: 57.2343149808%;
}

.m-slogan__item-title {
  font-size: calc(27 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5925925926;
}
.m-slogan__item-title::after {
  content: "";
  display: block;
  width: calc(110 * 1rem / var(--font-size));
  height: 1px;
  background-color: var(--color__red);
  margin-top: calc(15 * 1rem / var(--font-size));
  margin-inline: auto;
}

.m-slogan__item-subtitle {
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6111111111;
  color: var(--color__red);
}

.m-slogan__item-text {
  width: 100%;
  max-width: calc(250 * 1rem / var(--font-size));
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.5714285714;
  line-break: strict;
}

.m-slogan__dx {
  position: absolute;
  top: 57.7485380117%;
  left: 49.8079385403%;
  font-family: var(--font-family__outfit);
  font-size: calc(40 * 1rem / var(--font-size));
  font-weight: 900;
  line-height: 1;
  color: var(--color__red);
  transform: skewX(-11deg);
  translate: -50% -50%;
}

.m-site-agent {
  padding-block: calc(100 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-site-agent .m-heading {
  --_en-font-weight: 600;
}

.m-site-agent__body {
  display: grid;
  gap: calc(50 * 1rem / var(--font-size));
  max-width: calc(935 * 1rem / var(--font-size));
}

.m-site-agent__bar {
  min-height: calc(70 * 1rem / var(--font-size));
  color: var(--color__white);
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5833333333;
  padding: calc(16 * 1rem / var(--font-size)) calc(28 * 1rem / var(--font-size));
  border-radius: calc(16 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) 0 0;
  background-color: var(--color__red);
}

.m-site-agent__content {
  display: flex;
  margin-top: calc(25 * 1rem / var(--font-size));
}

.m-site-agent__board {
  flex-shrink: 0;
  width: calc(685 * 1rem / var(--font-size));
  min-height: calc(491 * 1rem / var(--font-size));
  padding: calc(29 * 1rem / var(--font-size)) 0 0 calc(34 * 1rem / var(--font-size));
  background: url("../images/renovation/agent-bubble.svg") left top/calc(664 * 1rem / var(--font-size)) calc(491 * 1rem / var(--font-size)) no-repeat;
}

.m-site-agent__row {
  display: flex;
  gap: calc(12 * 1rem / var(--font-size));
}

.m-site-agent__row + .m-site-agent__row {
  margin-top: calc(8 * 1rem / var(--font-size));
}

.m-site-agent__chart {
  display: grid;
  align-content: space-between;
  justify-items: center;
  width: calc(233 * 1rem / var(--font-size));
  min-height: calc(491 * 1rem / var(--font-size));
}

.m-site-agent__person {
  display: grid;
  align-content: start;
  justify-items: center;
  width: 100%;
}

.m-site-agent__photo img {
  display: block;
  width: 100%;
  height: auto;
}

.m-site-agent__label {
  position: relative;
  align-self: start;
  width: 100%;
  color: var(--color__red);
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5833333333;
  text-align: center;
  border: 1px solid var(--color__red);
  border-radius: calc(4 * 1rem / var(--font-size));
  background-color: var(--color__white);
  margin-top: calc(-42 * 1rem / var(--font-size));
}

.m-site-agent__person--customers .m-site-agent__label {
  margin-top: calc(-26 * 1rem / var(--font-size));
}

.m-site-agent__lower {
  display: grid;
  justify-items: center;
  gap: calc(6 * 1rem / var(--font-size));
  width: 100%;
}

.m-site-agent__arrows {
  width: calc(23 * 1rem / var(--font-size));
  height: calc(57 * 1rem / var(--font-size));
  background: url("../images/renovation/agent-arrows.svg") center/contain no-repeat;
}

.m-service {
  padding-block: calc(10 * 1rem / var(--font-size));
}

.m-service__heading {
  padding-block: calc(10 * 1rem / var(--font-size));
}

.m-service__list {
  margin-top: calc(10 * 1rem / var(--font-size));
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  -moz-column-gap: calc(24 * 1rem / var(--font-size));
       column-gap: calc(24 * 1rem / var(--font-size));
  row-gap: calc(8 * 1rem / var(--font-size));
  max-width: calc(931 * 1rem / var(--font-size));
  width: 100%;
  padding-block: calc(50 * 1rem / var(--font-size)) calc(100 * 1rem / var(--font-size));
}

.m-service__item {
  display: grid;
}

.m-service-card {
  position: relative;
  display: grid;
  gap: calc(17 * 1rem / var(--font-size));
  height: 100%;
  padding: calc(19 * 1rem / var(--font-size));
  border: 1px solid var(--color__gray-light);
  border-radius: calc(20 * 1rem / var(--font-size));
  background-color: var(--color__white);
  box-shadow: 0 calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) var(--color__black-alpha25);
}

.m-service-card__badge {
  position: absolute;
  top: calc(28 * 1rem / var(--font-size));
  left: calc(24 * 1rem / var(--font-size));
  color: var(--color__white);
  font-size: calc(15 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.4666666667;
  padding: calc(2 * 1rem / var(--font-size)) calc(24 * 1rem / var(--font-size)) 0;
  border-radius: calc(22 * 1rem / var(--font-size));
  background-color: var(--color__red);
  z-index: 1;
}

.m-service-card__thumb {
  display: block;
  aspect-ratio: 254/150;
  width: 100%;
}

.m-service-card__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-service-card__title {
  color: var(--color__red);
  font-size: calc(15 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
}

.m-service-card__text {
  font-size: calc(15 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
  line-break: strict;
  min-height: calc(153 * 1rem / var(--font-size));
}

.m-service-card__link {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: calc(5 * 1rem / var(--font-size));
  color: var(--color__red);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
  min-height: calc(26 * 1rem / var(--font-size));
}

.m-service-card__link-label {
  width: calc(182 * 1rem / var(--font-size));
}

.m-service-card__icon {
  width: calc(18 * 1rem / var(--font-size));
  height: calc(18 * 1rem / var(--font-size));
}

.m-section-title {
  display: grid;
  justify-items: center;
  text-align: center;
}

.m-section-title__mark {
  width: calc(100 * 1rem / var(--font-size));
  height: calc(77 * 1rem / var(--font-size));
}

.m-section-title__mark img {
  display: block;
  height: 100%;
}

.m-section-title__lead {
  font-size: calc(30 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.1em;
  padding-top: calc(20 * 1rem / var(--font-size));
}

.m-section-title__title {
  font-size: calc(40 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.1em;
  margin-top: calc(-2 * 1rem / var(--font-size));
}

:where(.m-section-title--single) .m-section-title__title {
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(38 * 1rem / var(--font-size));
  line-height: 1.5;
  letter-spacing: 0.09em;
  margin-top: calc(20 * 1rem / var(--font-size));
}

.m-section-title--statement .m-section-title__lead {
  font-weight: 700;
}

.m-section-title--statement .m-section-title__title {
  font-size: calc(38 * 1rem / var(--font-size));
  letter-spacing: 0;
}

.m-safety {
  padding-block: calc(100 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-safety__body {
  max-width: calc(935 * 1rem / var(--font-size));
}

.m-safety__lead {
  max-width: calc(855 * 1rem / var(--font-size));
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.5714285714;
  letter-spacing: 0.13em;
  padding-top: calc(19 * 1rem / var(--font-size));
}

.m-safety__list {
  display: grid;
  grid-template-columns: repeat(3, calc(305 * 1rem / var(--font-size)));
  gap: calc(10 * 1rem / var(--font-size));
  margin-top: calc(72 * 1rem / var(--font-size));
}

.m-safety-card {
  min-height: calc(198 * 1rem / var(--font-size));
  padding: calc(16 * 1rem / var(--font-size));
  border-radius: calc(8 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-safety-card__title {
  display: grid;
  grid-template-columns: calc(50 * 1rem / var(--font-size)) 1fr;
  align-items: center;
  -moz-column-gap: calc(12 * 1rem / var(--font-size));
       column-gap: calc(12 * 1rem / var(--font-size));
  min-height: calc(50 * 1rem / var(--font-size));
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.4444444444;
  letter-spacing: 0.11em;
}

.m-safety-card__icon {
  align-self: stretch;
  color: var(--color__red);
  padding: calc(6 * 1rem / var(--font-size)) 0 0 calc(11 * 1rem / var(--font-size));
}

.m-safety-card__icon svg {
  display: block;
  width: calc(39 * 1rem / var(--font-size));
  height: calc(39 * 1rem / var(--font-size));
}

.m-safety-card__text {
  color: var(--color__charcoal);
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.7142857143;
  margin-top: calc(14 * 1rem / var(--font-size));
}

.m-role-card {
  --_width: 267;
  width: calc(var(--_width) * 1rem / var(--font-size));
  min-height: calc(139 * 1rem / var(--font-size));
  padding: calc(14 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size)) calc(14 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size));
  border-radius: calc(8 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-role-card--wide-padding {
  padding-left: calc(20 * 1rem / var(--font-size));
}

.m-role-card__title {
  display: flex;
  align-items: center;
  gap: calc(6 * 1rem / var(--font-size));
  color: var(--color__red);
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
}

.m-role-card__icon {
  flex-shrink: 0;
  width: calc(61 * 1rem / var(--font-size));
  height: calc(49 * 1rem / var(--font-size));
}

.m-role-card__icon img {
  display: block;
  width: 100%;
  height: 100%;
}

.m-role-card__body {
  display: grid;
  gap: calc(4 * 1rem / var(--font-size));
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.625;
  padding-left: calc(17 * 1rem / var(--font-size));
  border-left: 1px solid var(--color__red);
  margin-top: calc(6 * 1rem / var(--font-size));
  margin-left: calc(6 * 1rem / var(--font-size));
}

.m-role-card__line {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: calc(4 * 1rem / var(--font-size));
       column-gap: calc(4 * 1rem / var(--font-size));
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.625;
}

.m-role-card__item--fixed {
  width: calc(var(--_width__item) * 1rem / var(--font-size));
}

.m-role-card__line--spaced {
  -moz-column-gap: calc(7 * 1rem / var(--font-size));
       column-gap: calc(7 * 1rem / var(--font-size));
}

.m-reviews {
  padding-block: calc(100 * 1rem / var(--font-size));
  background: url("../images/renovation/voice-bg.jpg") center/cover no-repeat;
}

.m-reviews .m-heading {
  --_en-font-weight: 600;
}

.m-reviews__list {
  display: grid;
  grid-template-columns: repeat(2, calc(457 * 1rem / var(--font-size)));
  row-gap: calc(20 * 1rem / var(--font-size));
  -moz-column-gap: calc(20 * 1rem / var(--font-size));
       column-gap: calc(20 * 1rem / var(--font-size));
  margin-top: calc(46 * 1rem / var(--font-size));
}

.m-review-card {
  display: grid;
  align-content: start;
  gap: calc(16 * 1rem / var(--font-size));
  padding: calc(19 * 1rem / var(--font-size));
  border: 1px solid var(--color__red);
  border-radius: calc(8 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-review-card__head {
  display: flex;
  gap: calc(12 * 1rem / var(--font-size));
  padding-inline: calc(10 * 1rem / var(--font-size));
}

.m-review-card__summary {
  display: grid;
  flex-shrink: 0;
  align-content: start;
  gap: calc(12 * 1rem / var(--font-size));
  width: calc(252 * 1rem / var(--font-size));
}

.m-review-card__stars {
  display: flex;
  gap: calc(6 * 1rem / var(--font-size));
  color: var(--color__yellow);
}

.m-review-card__stars svg {
  width: calc(18 * 1rem / var(--font-size));
  height: calc(18 * 1rem / var(--font-size));
}

.m-review-card__star--empty {
  color: var(--color__gray-light);
}

.m-review-card__quote {
  font-size: calc(17 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5882352941;
}

.m-review-card__photo {
  flex-shrink: 0;
  width: calc(143 * 1rem / var(--font-size));
  height: calc(143 * 1rem / var(--font-size));
}

.m-review-card__photo img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-review-card__body {
  position: relative;
  display: grid;
  align-content: start;
  gap: calc(16 * 1rem / var(--font-size));
  min-height: calc(163 * 1rem / var(--font-size));
  padding: calc(9 * 1rem / var(--font-size)) calc(18 * 1rem / var(--font-size));
  background-color: var(--color__white);
  margin-top: calc(16 * 1rem / var(--font-size));
}

.m-review-card__body::before {
  content: "";
  position: absolute;
  top: calc(-16 * 1rem / var(--font-size));
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--color__red);
}

.m-review-card__text {
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.5714285714;
}

.m-review-card__place {
  font-size: calc(13 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.3846153846;
  color: var(--color__red);
}

.m-review-card__author {
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.4285714286;
  text-align: right;
}

.m-report-card {
  display: flex;
  flex-direction: column;
  row-gap: calc(17 * 1rem / var(--font-size));
  max-width: calc(302 * 1rem / var(--font-size));
  width: 100%;
  padding: calc(14 * 1rem / var(--font-size)) calc(21 * 1rem / var(--font-size));
  border: 1px solid var(--color__gray-light);
  border-radius: calc(20 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-report-card__thumb {
  position: relative;
  display: block;
  aspect-ratio: 1/1;
  border-radius: calc(8 * 1rem / var(--font-size)) calc(8 * 1rem / var(--font-size)) 0 0;
  background-color: var(--color__gray-light);
}

.m-report-card__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: inherit;
}

.m-report-card__category {
  position: absolute;
  top: calc(4 * 1rem / var(--font-size));
  left: calc(5 * 1rem / var(--font-size));
  color: var(--color__white);
  font-size: calc(15 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
  padding-inline: calc(24 * 1rem / var(--font-size));
  border-radius: 9999px;
  background-color: var(--color__red);
}

.m-report-card__title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: clip;
  color: var(--color__red);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
}

.m-report-card__text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: clip;
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
}

.m-report-card__link {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  -moz-column-gap: calc(14 * 1rem / var(--font-size));
       column-gap: calc(14 * 1rem / var(--font-size));
  max-width: calc(254 * 1rem / var(--font-size));
  width: 100%;
  color: var(--color__red);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.625;
  padding-top: calc(8 * 1rem / var(--font-size));
  padding-right: calc(7 * 1rem / var(--font-size));
  border-top: 1px solid var(--color__red);
  margin-top: auto;
}

.m-report-card__icon {
  width: calc(22 * 1rem / var(--font-size));
  height: calc(13 * 1rem / var(--font-size));
  rotate: 180deg;
}

.m-recruit {
  position: relative;
  padding-block: calc(100 * 1rem / var(--font-size)) calc(150 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
  isolation: isolate;
  margin-top: calc(-19 * 1rem / var(--font-size));
}
.m-recruit::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("../images/front-page/menu-bg.webp"), url("../images/front-page/menu-bg.webp");
  background-repeat: no-repeat;
  background-position: left top, left 252.38%;
  background-size: 100% 71.65%;
  filter: grayscale(1);
  opacity: 0.3;
  z-index: -1;
}

.m-recruit__body {
  display: grid;
  grid-template-areas: "head head" "points media";
  grid-template-columns: 51.9713261649% 1fr;
  row-gap: calc(57 * 1rem / var(--font-size));
  -moz-column-gap: 2.3297491039%;
       column-gap: 2.3297491039%;
}

.m-recruit__head {
  grid-area: head;
}

.m-recruit__en {
  position: relative;
  width: calc(465 * 1rem / var(--font-size));
  height: calc(165 * 1rem / var(--font-size));
  padding: calc(97 * 1rem / var(--font-size)) 0 0 calc(70 * 1rem / var(--font-size));
}

.m-recruit__join {
  position: absolute;
  top: calc(23 * 1rem / var(--font-size));
  left: calc(-10 * 1rem / var(--font-size));
  width: calc(228 * 1rem / var(--font-size));
  aspect-ratio: 455/331;
}

.m-recruit__join picture,
.m-recruit__join img {
  display: block;
  width: 100%;
  height: 100%;
}

.m-recruit__en-text {
  position: relative;
  display: block;
  width: calc(360 * 1rem / var(--font-size));
  font-family: var(--font-family__outfit);
  font-size: calc(54 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.2592592593;
  text-align: center;
}

.m-recruit__title {
  font-size: calc(40 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.1em;
  padding-top: calc(72 * 1rem / var(--font-size));
}

.m-recruit__lead {
  font-size: calc(18 * 1rem / var(--font-size));
  line-height: 2.0555555556;
  padding-top: calc(27 * 1rem / var(--font-size));
}

.m-recruit__points {
  display: grid;
  grid-area: points;
  row-gap: calc(23 * 1rem / var(--font-size));
}

.m-recruit__media {
  display: grid;
  grid-area: media;
  align-content: start;
  margin-top: calc(-71 * 1rem / var(--font-size));
}

.m-recruit__photo {
  width: 105.8823529412%;
  aspect-ratio: 540/405;
}

.m-recruit__photo picture,
.m-recruit__photo img {
  display: block;
  width: 100%;
  height: 100%;
}

.m-recruit-worry__pre {
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 2.0416666667;
  color: var(--color__indigo-deep);
  text-align: center;
}

.m-recruit-worry__title {
  font-size: calc(38 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6052631579;
  text-align: center;
  white-space: nowrap;
}

.m-recruit-worry__illust {
  position: relative;
  max-width: calc(448 * 1rem / var(--font-size));
  width: 100%;
  margin-top: calc(-11 * 1rem / var(--font-size));
  margin-inline: auto;
}

.m-recruit-worry__illust img {
  display: block;
}

.m-recruit-worry__box {
  position: relative;
  color: var(--color__white);
  text-align: center;
  padding: calc(37 * 1rem / var(--font-size)) 0 calc(21 * 1rem / var(--font-size));
  border-radius: calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) 0 0;
  background-color: var(--color__blue-steel);
  margin-top: calc(-68 * 1rem / var(--font-size));
}
.m-recruit-worry__box::after {
  content: "";
  position: absolute;
  top: calc(100% - 1px);
  left: 0;
  width: 100%;
  height: calc(62 * 1rem / var(--font-size));
  background-color: inherit;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}

.m-recruit-worry__box-title {
  font-size: calc(22 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5909090909;
  letter-spacing: 0.12em;
  white-space: nowrap;
  padding-left: 0.12em;
  translate: calc(-4 * 1rem / var(--font-size)) 0;
}

.m-recruit-worry__clouds {
  position: relative;
  height: calc(486 * 1rem / var(--font-size));
  margin-top: calc(39 * 1rem / var(--font-size));
}

.m-recruit-worry__cloud {
  position: absolute;
  display: grid;
  align-content: start;
  row-gap: calc(12 * 1rem / var(--font-size));
  text-align: left;
  isolation: isolate;
}
.m-recruit-worry__cloud::before {
  content: "";
  position: absolute;
  inset: 0 calc(-4 * 1rem / var(--font-size)) calc(-8 * 1rem / var(--font-size));
  background: center/100% 100% no-repeat;
  z-index: -1;
}

.m-recruit-worry__cloud--b {
  top: calc(13 * 1rem / var(--font-size));
  left: 48.835125448%;
  width: calc(572 * 1rem / var(--font-size));
  height: calc(286 * 1rem / var(--font-size));
  padding: calc(52 * 1rem / var(--font-size)) 0 0 calc(95 * 1rem / var(--font-size));
}
.m-recruit-worry__cloud--b::before {
  background-image: url("../images/recruit/worry-cloud-b.webp");
}

.m-recruit-worry__cloud--c {
  top: calc(193 * 1rem / var(--font-size));
  left: 2.688172043%;
  width: calc(572 * 1rem / var(--font-size));
  height: calc(286 * 1rem / var(--font-size));
  padding: calc(62 * 1rem / var(--font-size)) 0 0 calc(91 * 1rem / var(--font-size));
}
.m-recruit-worry__cloud--c::before {
  background-image: url("../images/recruit/worry-cloud-c.webp");
}

.m-recruit-worry__cloud--a {
  top: calc(-4 * 1rem / var(--font-size));
  left: -3.853046595%;
  width: calc(415 * 1rem / var(--font-size));
  height: calc(197 * 1rem / var(--font-size));
  padding: calc(41 * 1rem / var(--font-size)) 0 0 calc(70 * 1rem / var(--font-size));
}
.m-recruit-worry__cloud--a::before {
  background-image: url("../images/recruit/worry-cloud-a.webp");
}

.m-recruit-worry__cloud--d {
  top: calc(254 * 1rem / var(--font-size));
  left: 62.3655913978%;
  width: calc(472 * 1rem / var(--font-size));
  height: calc(225 * 1rem / var(--font-size));
  padding: calc(47 * 1rem / var(--font-size)) 0 0 calc(80 * 1rem / var(--font-size));
}
.m-recruit-worry__cloud--d::before {
  background-image: url("../images/recruit/worry-cloud-d.webp");
}

.m-recruit-worry__cloud-title {
  font-size: calc(21 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.619047619;
  white-space: nowrap;
  translate: 0 calc(1 * 1rem / var(--font-size));
}

.m-recruit-worry__cloud-text {
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.5714285714;
  white-space: nowrap;
  padding-left: calc(13 * 1rem / var(--font-size));
}

.m-recruit-worry__cloud--d .m-recruit-worry__cloud-text {
  max-width: calc(345 * 1rem / var(--font-size));
  white-space: normal;
  line-break: strict;
  padding-left: calc(20 * 1rem / var(--font-size));
}

.m-recruit-worry__box-text {
  font-size: calc(23 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.8695652174;
  white-space: nowrap;
  translate: 0 calc(1 * 1rem / var(--font-size));
  margin-top: calc(42 * 1rem / var(--font-size));
}

.m-recruit-worry__philosophy {
  max-width: calc(1072 * 1rem / var(--font-size));
  width: 100%;
  margin-top: calc(114 * 1rem / var(--font-size));
  margin-inline: auto;
}

.m-recruit-worry__philosophy-visual {
  position: relative;
  max-width: calc(448 * 1rem / var(--font-size));
  width: 100%;
  margin-inline: auto;
}

.m-recruit-worry__philosophy-visual img {
  display: block;
}

.m-recruit-worry__sparkle {
  position: absolute;
  background: center/contain no-repeat;
  pointer-events: none;
}

.m-recruit-worry__sparkle--1 {
  top: calc(35 * 1rem / var(--font-size));
  left: 91.7410714286%;
  width: calc(34 * 1rem / var(--font-size));
  height: calc(53 * 1rem / var(--font-size));
  background-image: url("../images/recruit/worry-sparkle-1.webp");
}

.m-recruit-worry__sparkle--2 {
  top: calc(118 * 1rem / var(--font-size));
  left: -6.9196428571%;
  width: calc(34 * 1rem / var(--font-size));
  height: calc(53 * 1rem / var(--font-size));
  background-image: url("../images/recruit/worry-sparkle-2.webp");
}

.m-recruit-worry__philosophy-box {
  position: relative;
  text-align: center;
  padding-block: calc(24 * 1rem / var(--font-size)) calc(26 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
  margin-top: calc(-6 * 1rem / var(--font-size));
}

.m-recruit-worry__philosophy-text {
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 0;
}

.m-recruit-worry__philosophy-quote {
  font-size: calc(32 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: calc(64 * 1rem / var(--font-size));
  color: var(--color__red);
}

.m-recruit-worry__philosophy-em {
  font-size: calc(29 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: calc(55 * 1rem / var(--font-size));
}

.m-recruit-voice {
  padding-block: calc(100 * 1rem / var(--font-size));
}

.m-recruit-voice__lead {
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
  padding-top: calc(10 * 1rem / var(--font-size));
  translate: 0 calc(1 * 1rem / var(--font-size));
}

.m-recruit-voice__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  -moz-column-gap: calc(71 * 1rem / var(--font-size));
       column-gap: calc(71 * 1rem / var(--font-size));
  max-width: calc(1109 * 1rem / var(--font-size));
  padding-top: calc(60 * 1rem / var(--font-size));
  margin-inline: auto;
}

.m-recruit-support {
  padding-block: calc(100 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-recruit-support > .l-inner {
  display: grid;
}

.m-recruit-support__intro {
  display: grid;
  row-gap: calc(15 * 1rem / var(--font-size));
  justify-self: center;
  width: 100%;
  max-width: calc(791 * 1rem / var(--font-size));
  color: var(--color__brown-dark);
  margin-top: calc(40 * 1rem / var(--font-size));
}

.m-recruit-support__intro-title {
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5833333333;
}

.m-recruit-support__intro-text {
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6111111111;
}

.m-recruit-support__latin {
  font-family: var(--font-family__outfit);
  line-height: 1;
}

.m-recruit-support__weeks {
  display: grid;
  grid-template-columns: repeat(3, calc(359 * 1rem / var(--font-size)));
  justify-content: center;
  -moz-column-gap: calc(18 * 1rem / var(--font-size));
       column-gap: calc(18 * 1rem / var(--font-size));
  margin-top: calc(40 * 1rem / var(--font-size));
}

.m-recruit-support__voice {
  display: flex;
  align-items: flex-start;
  justify-self: center;
  width: 100%;
  max-width: calc(990 * 1rem / var(--font-size));
  margin-top: calc(60 * 1rem / var(--font-size));
}

.m-recruit-support__illust {
  flex-shrink: 0;
  width: calc(137 * 1rem / var(--font-size));
}

.m-recruit-support__bubble {
  position: relative;
  display: grid;
  align-items: center;
  width: calc(478 * 1rem / var(--font-size));
  min-height: calc(76 * 1rem / var(--font-size));
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5833333333;
  letter-spacing: 0.06em;
  color: var(--color__red);
  white-space: nowrap;
  padding-left: calc(68 * 1rem / var(--font-size));
  border: 3px solid var(--color__red);
  border-radius: calc(16 * 1rem / var(--font-size));
  background-color: var(--color__white);
  margin-left: calc(-11 * 1rem / var(--font-size));
}
.m-recruit-support__bubble::before, .m-recruit-support__bubble::after {
  content: "";
  position: absolute;
  top: calc(34 * 1rem / var(--font-size));
  left: calc(-13 * 1rem / var(--font-size));
  width: calc(14 * 1rem / var(--font-size));
  height: calc(23 * 1rem / var(--font-size));
}
.m-recruit-support__bubble::before {
  background-color: var(--color__red);
  clip-path: polygon(78.6% 4.3%, 71.4% 4.3%, 8.2% 70.9%, 6.4% 77%, 19.3% 83.9%, 58.6% 86.1%, 67.1% 88.3%, 71.4% 94.8%, 78.6% 94.8%);
}
.m-recruit-support__bubble::after {
  background-color: var(--color__white);
  clip-path: polygon(96.4% 7.8%, 32.1% 70.9%, 60.7% 73.3%, 80% 74.8%, 90% 80%, 96.4% 88.3%);
}

.m-recruit-support__ojt {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -moz-column-gap: calc(30 * 1rem / var(--font-size));
       column-gap: calc(30 * 1rem / var(--font-size));
  justify-self: center;
  width: 100%;
  max-width: calc(990 * 1rem / var(--font-size));
  margin-top: calc(18 * 1rem / var(--font-size));
}

.m-recruit-support__band {
  justify-self: center;
  width: 100%;
  max-width: calc(990 * 1rem / var(--font-size));
  font-size: calc(32 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.84375;
  letter-spacing: 0.05em;
  color: var(--color__white);
  text-align: center;
  padding: calc(10 * 1rem / var(--font-size)) calc(63 * 1rem / var(--font-size));
  background-color: var(--color__red);
  margin-top: calc(33 * 1rem / var(--font-size));
}

.m-recruit-schedule {
  padding-block: calc(100 * 1rem / var(--font-size));
}

.m-recruit-schedule__head > .l-inner {
  display: grid;
  row-gap: calc(32 * 1rem / var(--font-size));
}

.m-recruit-schedule__lead {
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.18em;
  color: var(--color__brown-dark);
  text-align: center;
  padding-left: 0.18em;
}

.m-recruit-schedule__body {
  padding-top: calc(32 * 1rem / var(--font-size));
}

.m-recruit-requirements {
  padding-block: calc(100 * 1rem / var(--font-size));
}

.m-recruit-requirements__bar-title {
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 900;
  line-height: 1.4444444444;
  letter-spacing: 0.02em;
}

.m-recruit-requirements__entry {
  position: relative;
  color: var(--color__white);
  font-size: calc(12 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.4166666667;
  padding: calc(6 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size));
  border-radius: calc(4 * 1rem / var(--font-size));
  background-color: var(--color__red);
}
.m-recruit-requirements__entry::before {
  content: "";
  position: absolute;
  inset: calc(-8 * 1rem / var(--font-size)) 0;
}

.m-recruit-requirements__lead {
  font-size: calc(21 * 1rem / var(--font-size));
  line-height: 1.8095238095;
  letter-spacing: 0.02em;
  text-align: center;
  padding-top: calc(10 * 1rem / var(--font-size));
}

.m-recruit-requirements__jobs {
  position: relative;
  display: grid;
  grid-template-columns: 16.3314561545% 9.6540627514% 1fr 1fr;
  padding-top: calc(70 * 1rem / var(--font-size));
}

.m-recruit-reason {
  padding-block: calc(100 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-recruit-reason__tiles {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  row-gap: calc(13 * 1rem / var(--font-size));
  -moz-column-gap: calc(16 * 1rem / var(--font-size));
       column-gap: calc(16 * 1rem / var(--font-size));
  width: 100%;
  max-width: calc(1113 * 1rem / var(--font-size));
  margin-top: calc(68 * 1rem / var(--font-size));
  margin-inline: auto;
}

.m-recruit-reason__tile {
  --_color: var(--color__red);
  --_text-letter-spacing: 0.02em;
  display: grid;
  gap: calc(6 * 1rem / var(--font-size));
  padding-block: calc(15 * 1rem / var(--font-size));
  border-radius: calc(8 * 1rem / var(--font-size));
  background-color: var(--_color);
  box-shadow: calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) var(--color__brown-deep-alpha25);
}

.m-recruit-reason__tile--common {
  --_color: var(--color__red);
  --_text-letter-spacing: 0.18em;
}

.m-recruit-reason__tile--sales {
  --_color: var(--color__indigo-deep);
}

.m-recruit-reason__tile--construction {
  --_color: var(--color__green-deep);
}

.m-recruit-reason__label {
  display: flex;
  -moz-column-gap: calc(20 * 1rem / var(--font-size));
       column-gap: calc(20 * 1rem / var(--font-size));
  align-items: center;
  color: var(--color__white);
  font-size: calc(27 * 1rem / var(--font-size));
  font-weight: 900;
  line-height: 1.4074074074;
  letter-spacing: 0.01em;
}
.m-recruit-reason__label::before {
  content: "";
  flex-shrink: 0;
  width: calc(10 * 1rem / var(--font-size));
  height: calc(43 * 1rem / var(--font-size));
  border: 1px solid var(--_color);
  background-color: var(--color__white);
}

.m-recruit-reason__text {
  color: var(--color__white);
  font-size: calc(30 * 1rem / var(--font-size));
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: var(--_text-letter-spacing);
  white-space: nowrap;
  padding-left: calc(33 * 1rem / var(--font-size));
}

.m-recruit-reality {
  padding-block: calc(100 * 1rem / var(--font-size));
}

.m-recruit-reality__cards {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: repeat(2, 48.835125448%);
  grid-auto-flow: column;
  row-gap: calc(22 * 1rem / var(--font-size));
  justify-content: space-between;
  align-items: center;
  margin-top: calc(68 * 1rem / var(--font-size));
}

.m-recruit-reality__card {
  --_color: var(--color__red);
  --_line-height__text: calc(29 / 18);
  display: grid;
  row-gap: calc(30 * 1rem / var(--font-size));
  justify-items: center;
  color: var(--color__white);
  padding: calc(25 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size));
  border-radius: calc(8 * 1rem / var(--font-size));
  background-color: var(--_color);
}

.m-recruit-reality__card--indigo {
  --_color: var(--color__indigo-deep);
  --_line-height__text: calc(33 / 18);
}

.m-recruit-reality__card--red {
  --_color: var(--color__red);
}

.m-recruit-reality__card-title {
  font-size: calc(27 * 1rem / var(--font-size));
  font-weight: 900;
  line-height: 1.4074074074;
  letter-spacing: 0.01em;
  text-align: center;
  translate: 0 calc(1 * 1rem / var(--font-size));
}

.m-recruit-reality__card-body {
  display: grid;
  gap: calc(15 * 1rem / var(--font-size));
  justify-items: center;
  width: 100%;
}

.m-recruit-reality__box {
  display: grid;
  align-content: center;
  width: 100%;
  min-height: calc(211 * 1rem / var(--font-size));
  color: var(--color__brown-dark);
  padding-inline: calc(10 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-recruit-reality__box--trailing-blank {
  padding-bottom: calc(33 * 1rem / var(--font-size));
}

.m-recruit-reality__text {
  font-size: calc(18 * 1rem / var(--font-size));
  line-height: var(--_line-height__text);
  line-break: strict;
}

.m-recruit-reality__text--strong {
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.85;
  translate: 0 calc(1 * 1rem / var(--font-size));
}

.m-recruit-reality__text--lower {
  translate: 0 calc(1 * 1rem / var(--font-size));
}

.m-recruit-reality__num {
  font-family: var(--font-family__outfit);
  line-height: 1;
}

.m-recruit-reality__unit {
  line-height: 1;
}

.m-recruit-reality__bold {
  font-weight: 700;
}

.m-recruit-reality__triangle {
  display: block;
  width: calc(67 * 1rem / var(--font-size));
  height: calc(18 * 1rem / var(--font-size));
  background-color: var(--color__white);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  margin-top: calc(6 * 1rem / var(--font-size));
}

.m-recruit-reality__message {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  height: calc(59 * 1rem / var(--font-size));
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.8333333333;
  letter-spacing: 0.1em;
  text-align: center;
  line-break: strict;
  padding-left: 0.1em;
  translate: 0 calc(1 * 1rem / var(--font-size));
}

.m-recruit-photos {
  overflow-x: clip;
  padding-block: calc(100 * 1rem / var(--font-size));
}

.m-recruit-photos__slider {
  overflow: visible;
}

.m-recruit-photos__list {
  transition-timing-function: linear;
}

.m-recruit-photos__item {
  width: min(22.4777777778%, 324 * 1rem / var(--font-size));
  padding-right: calc(35 * 1rem / var(--font-size));
}

.m-recruit-photos__item img {
  display: block;
  width: 100%;
  aspect-ratio: 288.68/246;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-recruit-message__body {
  display: grid;
  row-gap: calc(54 * 1rem / var(--font-size));
}

.m-recruit-message__main {
  --_width__left: 564;
  --_width__right: 388;
  --_column-gap: 69;
  align-items: center;
  max-width: calc(1021 * 1rem / var(--font-size));
  width: 100%;
}

.m-recruit-message__photo {
  overflow: clip;
  border-radius: calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) calc(30 * 1rem / var(--font-size));
}

.m-recruit-message__photo img {
  display: block;
  aspect-ratio: 388/390;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-recruit-message__texts {
  min-height: calc(171 * 1rem / var(--font-size));
  font-size: calc(15 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
  line-break: strict;
  translate: 0 calc(1 * 1rem / var(--font-size));
}

.m-recruit-message__text + .m-recruit-message__text {
  padding-top: calc(24 * 1rem / var(--font-size));
}

.m-recruit-job {
  padding-block: calc(100 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-recruit-job > .l-inner {
  display: grid;
}

.m-recruit-job__lead {
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.18em;
  color: var(--color__brown-dark);
  text-align: center;
  padding-left: 0.18em;
  margin-top: calc(32 * 1rem / var(--font-size));
}

.m-recruit-job__list {
  display: grid;
  gap: calc(18 * 1rem / var(--font-size));
  margin-top: calc(20 * 1rem / var(--font-size));
}

.m-recruit-highlight {
  display: grid;
  align-content: center;
  min-height: calc(202 * 1rem / var(--font-size));
  color: var(--color__white);
  background-color: var(--color__crimson);
}

.m-recruit-highlight__body {
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: calc(52 * 1rem / var(--font-size));
       column-gap: calc(52 * 1rem / var(--font-size));
  padding-right: calc(48 * 1rem / var(--font-size));
}

.m-recruit-highlight__text {
  display: grid;
  row-gap: calc(14 * 1rem / var(--font-size));
  white-space: nowrap;
}

.m-recruit-highlight__title {
  font-size: calc(22 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5909090909;
}

.m-recruit-highlight__lead {
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 400;
  line-height: 1.6111111111;
}

.m-recruit-highlight__badges {
  display: flex;
  -moz-column-gap: calc(10 * 1rem / var(--font-size));
       column-gap: calc(10 * 1rem / var(--font-size));
}

.m-recruit-header {
  padding-top: calc(160 * 1rem / var(--font-size));
  padding-bottom: calc(9 * 1rem / var(--font-size));
}

.m-recruit-header__visual {
  height: calc(425 * 1rem / var(--font-size));
  background: url("../images/recruit/title-bg.webp") center/cover no-repeat;
}

.m-recruit-header__group {
  position: relative;
  display: grid;
  justify-items: start;
  padding-top: calc(185 * 1rem / var(--font-size));
}

.m-recruit-header__join {
  position: absolute;
  top: calc(106 * 1rem / var(--font-size));
  left: calc(50% - 239 * 1rem / var(--font-size));
  width: calc(227 * 1rem / var(--font-size));
}

.m-recruit-header__join img {
  display: block;
}

.m-recruit-header__en {
  position: relative;
  max-width: calc(360 * 1rem / var(--font-size));
  width: 100%;
  font-family: var(--font-family__outfit);
  font-size: calc(29 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 2.3448275862;
  text-align: center;
  white-space: nowrap;
  margin-left: calc(50% - 186 * 1rem / var(--font-size));
}

.m-recruit-header__title {
  position: relative;
  max-width: calc(276 * 1rem / var(--font-size));
  width: 100%;
  font-size: calc(40 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.22em;
  text-align: center;
  white-space: nowrap;
  padding-left: 0.22em;
  margin-top: calc(2 * 1rem / var(--font-size));
  margin-left: calc(50% - 138 * 1rem / var(--font-size));
}

.m-recruit-guarantee {
  padding-block: calc(100 * 1rem / var(--font-size));
}

.m-recruit-guarantee > .l-inner {
  display: grid;
  row-gap: calc(40 * 1rem / var(--font-size));
}

.m-recruit-guarantee__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: 1.6172506739%;
       column-gap: 1.6172506739%;
  max-width: calc(1113 * 1rem / var(--font-size));
  width: 100%;
  margin-inline: auto;
}

.m-recruit-guarantee__card {
  position: relative;
  display: grid;
  align-content: center;
  padding: calc(44 * 1rem / var(--font-size)) calc(14 * 1rem / var(--font-size)) calc(14 * 1rem / var(--font-size));
  border: 1px solid var(--color__red);
  border-radius: calc(16 * 1rem / var(--font-size));
  background-color: var(--color__white);
  box-shadow: calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) var(--color__black-alpha25);
}

.m-recruit-guarantee__label {
  position: absolute;
  top: -1px;
  left: 50%;
  translate: -50% 0;
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.625;
  letter-spacing: 0.05em;
  color: var(--color__white);
  white-space: nowrap;
  padding: calc(4 * 1rem / var(--font-size)) calc(17 * 1rem / var(--font-size));
  border-radius: 0 0 calc(16 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  background-color: var(--color__red);
}

.m-recruit-guarantee__text {
  max-width: calc(299 * 1rem / var(--font-size));
  width: 100%;
  font-size: calc(18 * 1rem / var(--font-size));
  line-height: 1.6111111111;
  text-align: center;
  line-break: strict;
  padding-block: calc(5 * 1rem / var(--font-size));
  margin-inline: auto;
}

.m-recruit-guarantee__text--wide {
  max-width: none;
}

.m-recruit-guarantee__em {
  font-weight: 700;
  color: var(--color__red);
}

.m-recruit-guarantee__num {
  font-family: var(--font-family__outfit);
  line-height: 1;
}

.m-recruit-gallery {
  padding-block: calc(100 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-recruit-gallery__list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: calc(30 * 1rem / var(--font-size));
  padding-top: calc(40 * 1rem / var(--font-size));
}

.m-recruit-gallery__item {
  aspect-ratio: 1/1;
  overflow: clip;
  border-radius: calc(10 * 1rem / var(--font-size));
  box-shadow: 0 calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) var(--color__black-alpha25);
}

.m-recruit-gallery__item img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-recruit-cta {
  justify-self: end;
  width: 100%;
  max-width: calc(493 * 1rem / var(--font-size));
  text-align: center;
  margin-top: calc(-97 * 1rem / var(--font-size));
}

.m-recruit-cta__catch {
  position: relative;
  max-width: calc(389 * 1rem / var(--font-size));
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.11em;
  min-height: calc(84 * 1rem / var(--font-size));
  padding-top: calc(12 * 1rem / var(--font-size));
  border-radius: calc(41 * 1rem / var(--font-size));
  background-color: var(--color__white);
  z-index: 1;
  margin-left: calc(52 * 1rem / var(--font-size));
}
.m-recruit-cta__catch::after {
  content: "";
  position: absolute;
  top: calc(63 * 1rem / var(--font-size));
  left: 50%;
  width: calc(40 * 1rem / var(--font-size));
  height: calc(34 * 1rem / var(--font-size));
  background-color: var(--color__white);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  translate: -50% 0;
  z-index: -1;
}

.m-recruit-cta__job {
  font-size: calc(29 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.3103448276;
  letter-spacing: 0.11em;
  color: var(--color__red);
}

.m-recruit-cta__rest {
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.11em;
}

.m-recruit-cta__half {
  display: inline-block;
  letter-spacing: -0.39em;
  translate: -0.25em 0;
}

.m-recruit-cta__note {
  font-size: calc(12 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.4166666667;
  color: var(--color__charcoal);
  padding-top: calc(12 * 1rem / var(--font-size));
}

.m-recruit-cta__button {
  position: relative;
  display: grid;
  justify-items: center;
  align-content: start;
  min-height: calc(182 * 1rem / var(--font-size));
  color: var(--color__white);
  padding-top: calc(37 * 1rem / var(--font-size));
  border-radius: calc(8 * 1rem / var(--font-size));
  background-color: var(--color__red);
  margin-top: calc(-7 * 1rem / var(--font-size));
}

.m-recruit-cta__button-note {
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
}

.m-recruit-cta__label {
  font-size: calc(28 * 1rem / var(--font-size));
  font-weight: 900;
  line-height: 1.3214285714;
  letter-spacing: 0.15em;
  margin-top: calc(9 * 1rem / var(--font-size));
}

.m-recruit-cta__icon {
  position: absolute;
  top: calc(96 * 1rem / var(--font-size));
  right: calc(67 * 1rem / var(--font-size));
  display: grid;
  place-items: center;
  width: calc(32 * 1rem / var(--font-size));
  height: calc(32 * 1rem / var(--font-size));
  color: var(--color__red);
  border-radius: 50%;
  background-color: var(--color__white);
}

.m-recruit-cta__icon svg {
  width: calc(20 * 1rem / var(--font-size));
  height: calc(20 * 1rem / var(--font-size));
}

.m-recruit-contact {
  padding-block: calc(150 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-recruit-contact__title {
  font-family: var(--font-family__zen-kaku-gothic-new);
  line-height: 1.6052631579;
  letter-spacing: 0;
}

.m-recruit-contact__lead {
  position: relative;
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
  padding-top: calc(72 * 1rem / var(--font-size));
  translate: 0 calc(1 * 1rem / var(--font-size));
}
.m-recruit-contact__lead::before {
  content: "";
  position: absolute;
  top: calc(25 * 1rem / var(--font-size));
  left: 50%;
  width: calc(200 * 1rem / var(--font-size));
  height: calc(5 * 1rem / var(--font-size));
  background-color: var(--color__red);
  translate: -50% 0;
}

.m-recruit-contact__guide {
  display: grid;
  justify-items: center;
  max-width: calc(885 * 1rem / var(--font-size));
  padding-top: calc(62 * 1rem / var(--font-size));
  margin-inline: auto;
}

.m-recruit-contact__catch {
  position: relative;
  width: 100%;
  max-width: calc(614 * 1rem / var(--font-size));
  min-height: calc(59 * 1rem / var(--font-size));
  font-size: calc(17 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.4117647059;
  letter-spacing: 0.11em;
  text-align: center;
  padding-top: calc(14 * 1rem / var(--font-size));
  border: 2px solid var(--color__red);
  border-radius: 9999px;
  background-color: var(--color__white);
  z-index: 1;
}
.m-recruit-contact__catch::before, .m-recruit-contact__catch::after {
  content: "";
  position: absolute;
  left: 50%;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  translate: -50% 0;
}
.m-recruit-contact__catch::before {
  top: 100%;
  width: calc(29 * 1rem / var(--font-size));
  height: calc(11 * 1rem / var(--font-size));
  background-color: var(--color__red);
}
.m-recruit-contact__catch::after {
  top: calc(100% - 1 * 1rem / var(--font-size));
  width: calc(27 * 1rem / var(--font-size));
  height: calc(10 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-recruit-contact__apply {
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5833333333;
  text-align: center;
  text-spacing-trim: space-all;
  padding-top: calc(9 * 1rem / var(--font-size));
}

.m-recruit-contact__text {
  justify-self: stretch;
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(18 * 1rem / var(--font-size));
  line-height: 1.6111111111;
  padding-top: calc(27 * 1rem / var(--font-size));
}

.m-recruit-contact__actions {
  display: grid;
  grid-template-columns: minmax(0, 549fr) minmax(0, 465fr);
  -moz-column-gap: calc(62 * 1rem / var(--font-size));
       column-gap: calc(62 * 1rem / var(--font-size));
  max-width: calc(1076 * 1rem / var(--font-size));
  padding-top: calc(62 * 1rem / var(--font-size));
  margin-inline: auto;
}

.m-recruit-contact__button {
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: calc(13 * 1rem / var(--font-size));
       column-gap: calc(13 * 1rem / var(--font-size));
  min-height: calc(79 * 1rem / var(--font-size));
  color: var(--color__white);
  border-radius: calc(8 * 1rem / var(--font-size));
}

.m-recruit-contact__button--tel {
  padding: calc(15 * 1rem / var(--font-size)) calc(17 * 1rem / var(--font-size)) calc(10 * 1rem / var(--font-size)) calc(23 * 1rem / var(--font-size));
  background-color: var(--color__red);
}

.m-recruit-contact__button--web {
  padding-block: calc(10 * 1rem / var(--font-size));
  background-color: var(--color__brown-dark);
}

.m-recruit-contact__icon {
  flex-shrink: 0;
  width: calc(24 * 1rem / var(--font-size));
  height: calc(24 * 1rem / var(--font-size));
}

.m-recruit-contact__button--web .m-recruit-contact__icon {
  width: calc(33 * 1rem / var(--font-size));
  height: calc(25 * 1rem / var(--font-size));
  translate: calc(1 * 1rem / var(--font-size)) 0;
}

.m-recruit-contact__label {
  font-family: var(--font-family__outfit);
  font-size: calc(34 * 1rem / var(--font-size));
  font-weight: 900;
  line-height: 1.5882352941;
  letter-spacing: 0.09em;
  white-space: nowrap;
  translate: 0 calc(1 * 1rem / var(--font-size));
}

.m-recruit-contact__label-note {
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(23 * 1rem / var(--font-size));
  line-height: 1;
  letter-spacing: 0.09em;
}

.m-recruit-contact__button--web .m-recruit-contact__label {
  font-family: inherit;
  font-size: calc(28 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6071428571;
  translate: calc(1 * 1rem / var(--font-size)) calc(1 * 1rem / var(--font-size));
}

.m-recruit-contact__half {
  display: inline-block;
  letter-spacing: -0.43em;
  translate: -0.25em 0;
}

.m-recruit-benefit {
  padding-block: calc(150 * 1rem / var(--font-size));
}

.m-recruit-benefit__body {
  --_width__left: 362;
  --_column-gap: 83;
  --_width__right: 671;
  align-items: end;
}

.m-recruit-benefit__text {
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.9444444444;
  line-break: strict;
  margin-top: calc(31 * 1rem / var(--font-size));
}

.m-recruit-benefit__en {
  font-family: var(--font-family__outfit);
  line-height: 1;
}

.m-recruit-benefit__visual {
  display: grid;
  max-width: 99.2548435171%;
}

.m-recruit-benefit__illust {
  width: 100%;
  max-width: calc(365 * 1rem / var(--font-size));
  aspect-ratio: 365/190;
  margin-inline: auto;
}
.m-recruit-benefit__illust img {
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.m-recruit-benefit__list {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: calc(19 * 1rem / var(--font-size));
  -moz-column-gap: calc(2 * 1rem / var(--font-size));
       column-gap: calc(2 * 1rem / var(--font-size));
  padding: calc(30 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size));
  border-radius: calc(16 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
  margin-top: calc(-45 * 1rem / var(--font-size));
}

.m-recruit-benefit__item {
  --_bar-color: var(--color__red);
  display: flex;
  -moz-column-gap: calc(20 * 1rem / var(--font-size));
       column-gap: calc(20 * 1rem / var(--font-size));
  align-items: center;
  color: var(--color__red);
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.01em;
}
.m-recruit-benefit__item::before {
  content: "";
  flex-shrink: 0;
  width: calc(10 * 1rem / var(--font-size));
  height: calc(31 * 1rem / var(--font-size));
  background-color: var(--_bar-color);
}

.m-recruit-benefit__item-text {
  translate: 0 calc(1 * 1rem / var(--font-size));
}

.m-recruit-benefit__item--crimson {
  --_bar-color: var(--color__crimson);
  color: var(--color__crimson);
}

.m-recruit-benefit__item--spaced {
  letter-spacing: 0.03em;
}

.m-recruit-benefit__tight {
  letter-spacing: -0.08em;
}

.m-recruit-balance {
  padding-block: calc(100 * 1rem / var(--font-size)) calc(110 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-recruit-balance__intro {
  --_width__left: 549;
  --_column-gap: 28;
  --_width__right: 539;
  align-items: center;
  margin-top: calc(10 * 1rem / var(--font-size));
}

.m-recruit-balance__lead {
  display: grid;
  justify-items: start;
  gap: calc(11 * 1rem / var(--font-size));
}

.m-recruit-balance__tag {
  color: var(--color__white);
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5714285714;
  letter-spacing: 0.06em;
  padding: calc(5 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size));
  background-color: var(--color__red);
}

.m-recruit-balance__title {
  font-size: calc(30 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.7666666667;
  letter-spacing: 0.117em;
  text-indent: calc(11 * 1rem / var(--font-size));
  white-space: nowrap;
  translate: 0 calc(1 * 1rem / var(--font-size));
}

.m-recruit-balance__half {
  display: inline-block;
}

.m-recruit-balance__half--open {
  margin-left: calc(-10 * 1rem / var(--font-size));
}

.m-recruit-balance__half--close {
  margin-left: calc(-11 * 1rem / var(--font-size));
}

.m-recruit-balance__photo {
  width: 108.719851577%;
  aspect-ratio: 586/257;
  margin-left: -7.0500927644%;
}
.m-recruit-balance__photo img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-recruit-balance__detail {
  --_width__left: 365;
  --_column-gap: 44;
  --_width__right: 707;
  align-items: start;
  margin-top: calc(41 * 1rem / var(--font-size));
}

.m-recruit-balance__body {
  display: grid;
  gap: calc(28 * 1rem / var(--font-size));
}

.m-recruit-balance__paragraph {
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 2;
  line-break: strict;
}

.m-recruit-balance__accent {
  color: var(--color__red);
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5555555556;
  translate: 0 calc(-2 * 1rem / var(--font-size));
}

.m-recruit-balance__points {
  display: grid;
  gap: calc(18 * 1rem / var(--font-size));
}

.m-recruit-balance__point {
  display: grid;
  grid-template-columns: calc(4 * 1rem / var(--font-size)) 1fr;
  -moz-column-gap: calc(13 * 1rem / var(--font-size));
       column-gap: calc(13 * 1rem / var(--font-size));
}
.m-recruit-balance__point::before {
  content: "";
  grid-row: 1/span 2;
  height: calc(72 * 1rem / var(--font-size));
  background-color: var(--color__red);
}

.m-recruit-balance__point-title {
  grid-column: 2;
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.625;
}

.m-recruit-balance__point-text {
  grid-column: 2;
  max-width: calc(690 * 1rem / var(--font-size));
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 400;
  line-height: 1.625;
  line-break: strict;
}

.m-recommend-card {
  display: grid;
}

.m-recommend-card__date {
  color: var(--color__gray-slate);
  font-family: var(--font-family__outfit);
  font-size: calc(12 * 1rem / var(--font-size));
  font-weight: 400;
  line-height: 1.5833333333;
}

.m-recommend-card__thumb {
  aspect-ratio: 193/70;
  border-radius: calc(5 * 1rem / var(--font-size));
  overflow: clip;
}

.m-recommend-card__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-recommend-card__title {
  color: var(--color__black);
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(13 * 1rem / var(--font-size));
  font-weight: 400;
  line-height: 1.6153846154;
  padding-top: calc(7 * 1rem / var(--font-size));
}

.m-reason {
  position: relative;
  padding-block: calc(150 * 1rem / var(--font-size));
}
.m-reason::before {
  content: "";
  position: absolute;
  top: calc(-722 * 1rem / var(--font-size));
  right: 0;
  width: 51.8055555556%;
  aspect-ratio: 746/1317;
  background: url("../images/front-page/reason-deco.webp") no-repeat left top/100% auto;
  z-index: -1;
}

.m-reason__title {
  display: flex;
  justify-content: center;
  align-items: baseline;
  height: calc(90 * 1rem / var(--font-size));
  font-size: calc(30 * 1rem / var(--font-size));
  line-height: 1;
  letter-spacing: 0.1em;
  padding-top: calc(6 * 1rem / var(--font-size));
}

.m-reason__title-num {
  font-family: var(--font-family__outfit);
  font-size: calc(65 * 1rem / var(--font-size));
  font-weight: 600;
  letter-spacing: 0.05em;
  color: var(--color__red);
}

.m-reason__title-no {
  letter-spacing: 0.18em;
}

.m-reason__title-large {
  font-size: calc(40 * 1rem / var(--font-size));
  letter-spacing: 0.075em;
  margin-right: -0.075em;
}

.m-reason__list {
  display: grid;
  gap: calc(40 * 1rem / var(--font-size));
  padding-top: calc(70 * 1rem / var(--font-size));
}

.m-reason__item + .m-reason__item {
  padding-top: calc(40 * 1rem / var(--font-size));
  border-top: 1px solid var(--color__red);
}

.m-reason-item {
  display: grid;
  grid-template-columns: calc(614 * 1rem / var(--font-size)) calc(349 * 1rem / var(--font-size));
  justify-content: space-between;
  align-items: center;
}

.m-reason-item__body {
  display: grid;
  gap: calc(36 * 1rem / var(--font-size));
}

.m-reason-item__head {
  display: flex;
  align-items: center;
  gap: calc(27 * 1rem / var(--font-size));
}

.m-reason-item__num {
  display: grid;
  flex-shrink: 0;
  place-items: center;
  width: calc(82 * 1rem / var(--font-size));
  height: calc(82 * 1rem / var(--font-size));
  font-family: var(--font-family__outfit);
  font-size: calc(43 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1;
  color: var(--color__white);
  border-radius: 50%;
  background-color: var(--color__red);
}

.m-reason-item__title {
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.1em;
  white-space: nowrap;
}

.m-reason-item__text {
  max-width: calc(563 * 1rem / var(--font-size));
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.92;
  padding-left: calc(26 * 1rem / var(--font-size));
}

.m-reason-item__photo {
  overflow: clip;
  border-radius: calc(8 * 1rem / var(--font-size));
  aspect-ratio: 349/276;
}

.m-reason-item__photo picture,
.m-reason-item__photo img {
  display: block;
  width: 100%;
  height: 100%;
}

.m-reason-item__photo img {
  -o-object-fit: cover;
     object-fit: cover;
}

.m-proposal-step {
  display: grid;
  grid-template-columns: calc(250 * 1rem / var(--font-size)) calc(600 * 1rem / var(--font-size));
  align-items: center;
  -moz-column-gap: calc(78 * 1rem / var(--font-size));
       column-gap: calc(78 * 1rem / var(--font-size));
  height: calc(267 * 1rem / var(--font-size));
}

.m-proposal-step::after {
  content: "";
  grid-column: 1/-1;
  align-self: end;
  width: calc(620 * 1rem / var(--font-size));
  border-bottom: 1px solid var(--color__red);
  margin-left: auto;
}

.m-proposal-step__figure {
  position: relative;
  width: calc(250 * 1rem / var(--font-size));
  height: calc(267 * 1rem / var(--font-size));
}

.m-proposal-step__figure img {
  position: absolute;
  right: 0;
  bottom: 0;
  width: calc(214 * 1rem / var(--font-size));
  height: calc(214 * 1rem / var(--font-size));
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
}

.m-proposal-step__num {
  position: absolute;
  top: 0;
  left: 0;
  color: var(--color__red-strong);
  font-family: var(--font-family__outfit);
  font-size: calc(124 * 1rem / var(--font-size));
  font-weight: 800;
  line-height: 1.35;
  opacity: 0.25;
  mix-blend-mode: multiply;
  z-index: 1;
}

.m-proposal-step__body {
  display: grid;
  gap: calc(17 * 1rem / var(--font-size));
  width: calc(600 * 1rem / var(--font-size));
}

.m-proposal-step__title {
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.3333333333;
}

.m-proposal-step__text {
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.6;
}

.m-proposal-flow {
  padding-block: calc(100 * 1rem / var(--font-size));
  background-color: var(--color__white);
  background-image: repeating-linear-gradient(to right, var(--color__gray-grid) 0 1px, transparent 1px 45.24px), repeating-linear-gradient(to bottom, var(--color__gray-grid) 0 1px, transparent 1px 36.68px);
}

.m-proposal-flow__list {
  display: grid;
  max-width: calc(931 * 1rem / var(--font-size));
  padding-block: calc(20 * 1rem / var(--font-size)) calc(10 * 1rem / var(--font-size));
}

.m-privacy-box {
  max-width: calc(912 * 1rem / var(--font-size));
  width: 100%;
  padding: calc(19 * 1rem / var(--font-size)) calc(33 * 1rem / var(--font-size)) calc(23 * 1rem / var(--font-size)) calc(29 * 1rem / var(--font-size));
  border: 1px solid var(--color__gray-light);
  border-radius: calc(30 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-privacy-box__title {
  display: grid;
  align-items: center;
  min-height: calc(40 * 1rem / var(--font-size));
  color: var(--color__black);
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.35;
  padding-bottom: calc(8 * 1rem / var(--font-size));
  border-bottom: 1px solid var(--color__gray-light);
}

.m-privacy-box__body {
  max-height: calc(208 * 1rem / var(--font-size));
  overflow-y: scroll;
  scrollbar-gutter: stable;
  color: var(--color__black);
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.3571428571;
  padding-right: calc(3 * 1rem / var(--font-size));
  padding-left: calc(2 * 1rem / var(--font-size));
  margin-top: calc(25 * 1rem / var(--font-size));
}

.m-privacy-box__body > p:not(:first-child) {
  margin-top: calc(19 * 1rem / var(--font-size));
}

.m-privacy-box__body::-webkit-scrollbar {
  width: calc(22 * 1rem / var(--font-size));
}

.m-privacy-box__body::-webkit-scrollbar-track {
  background-color: var(--color__gray-grid);
}

.m-privacy-box__body::-webkit-scrollbar-thumb {
  border-inline: 3px solid var(--color__gray-grid);
  border-radius: 9999px;
  background-color: var(--color__gray-graphite);
  background-clip: padding-box;
}

.m-privacy-box__body::-webkit-scrollbar-button:single-button {
  height: calc(18 * 1rem / var(--font-size));
  background-position: center;
  background-size: calc(15 * 1rem / var(--font-size)) calc(10 * 1rem / var(--font-size));
  background-repeat: no-repeat;
  background-color: var(--color__gray-grid);
}

.m-privacy-box__body::-webkit-scrollbar-button:single-button:vertical:decrement {
  background-image: url("../images/common/icon-scrollbar-arrow.svg");
}

.m-privacy-box__body::-webkit-scrollbar-button:single-button:vertical:increment {
  background-image: url("../images/common/icon-scrollbar-arrow-down.svg");
}

.m-privacy-box__agree {
  padding-top: calc(18 * 1rem / var(--font-size));
  padding-left: calc(2 * 1rem / var(--font-size));
  border-top: 1px solid var(--color__gray-light);
  margin-top: calc(20 * 1rem / var(--font-size));
}

.m-privacy-box__agree > p {
  display: contents;
}

.m-privacy-box__agree .wpcf7-form-control-wrap,
.m-privacy-box__agree .wpcf7-acceptance,
.m-privacy-box__agree .wpcf7-list-item {
  display: block;
}

.m-privacy-box__agree .wpcf7-list-item {
  margin: 0;
}

.m-privacy-box__agree label {
  display: flex;
  align-items: center;
  -moz-column-gap: calc(20 * 1rem / var(--font-size));
       column-gap: calc(20 * 1rem / var(--font-size));
  cursor: pointer;
}

.m-privacy-box__agree input[type=checkbox] {
  flex-shrink: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: calc(30 * 1rem / var(--font-size));
  height: calc(30 * 1rem / var(--font-size));
  border: 2px solid var(--color__gray-pewter);
  background-color: var(--color__white);
  cursor: pointer;
}

.m-privacy-box__agree input[type=checkbox]:checked {
  background-image: url("../images/common/icon-check.svg");
  background-position: center;
  background-size: calc(20 * 1rem / var(--font-size)) calc(15 * 1rem / var(--font-size));
  background-repeat: no-repeat;
}

.m-privacy-box__agree input[type=checkbox]:focus-visible {
  outline: 2px solid var(--color__red);
  outline-offset: 2px;
}

.m-privacy-box__agree .wpcf7-list-item-label {
  color: var(--color__black);
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.375;
}

.m-privacy-box__agree .wpcf7-not-valid-tip {
  display: block;
  color: var(--color__red);
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.5714285714;
  margin-top: calc(8 * 1rem / var(--font-size));
}

.m-price-box {
  --_color: var(--color__red);
  display: grid;
  gap: calc(10 * 1rem / var(--font-size));
  padding: calc(15 * 1rem / var(--font-size)) calc(50 * 1rem / var(--font-size)) calc(15 * 1rem / var(--font-size)) calc(40 * 1rem / var(--font-size));
  border-block: 1px solid var(--_color);
  background-color: var(--color__white);
}

.m-price-box__item {
  display: grid;
  gap: calc(1 * 1rem / var(--font-size));
}

.m-price-box__name {
  font-family: var(--font-family__outfit-zen-kaku);
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6111111111;
  white-space: nowrap;
}

.m-price-box__price {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: calc(10 * 1rem / var(--font-size));
       column-gap: calc(10 * 1rem / var(--font-size));
  padding-left: calc(15 * 1rem / var(--font-size));
}

.m-price-box__icon {
  flex-shrink: 0;
  width: calc(24 * 1rem / var(--font-size));
  height: calc(24 * 1rem / var(--font-size));
  color: var(--_color);
}

.m-price-box__value {
  font-family: var(--font-family__outfit-zen-kaku);
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6111111111;
  color: var(--_color);
  white-space: nowrap;
}

.m-price-box__supplement {
  align-self: flex-end;
  font-family: var(--font-family__outfit-zen-kaku);
  font-size: calc(12 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.5833333333;
  color: var(--_color);
}

.m-policy {
  padding-block: 0;
}

.m-policy__heading {
  padding-block: calc(10 * 1rem / var(--font-size));
}

.m-policy__bands {
  display: grid;
  gap: calc(27 * 1rem / var(--font-size));
  max-width: calc(50% + 371 * 1rem / var(--font-size));
  width: 100%;
  padding-block: calc(50 * 1rem / var(--font-size)) calc(100 * 1rem / var(--font-size));
}

.m-policy__band {
  padding-block: calc(37 * 1rem / var(--font-size));
}

.m-policy__band--mansion {
  background-color: var(--color__beige-pale);
}

.m-policy__band--corporate {
  background-color: var(--color__beige);
}

.m-policy__pill {
  display: inline-flex;
  align-items: center;
  color: var(--color__white);
  font-size: calc(23 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  height: calc(47 * 1rem / var(--font-size));
  padding: calc(6 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size));
  background-color: var(--color__red);
}

.m-policy__band--corporate .m-policy__pill {
  height: calc(45 * 1rem / var(--font-size));
  font-size: calc(22 * 1rem / var(--font-size));
}

.m-policy__line {
  display: block;
  max-width: calc(431 * 1rem / var(--font-size));
  width: 100%;
  border-top: 1px solid var(--color__red);
  margin-top: calc(20 * 1rem / var(--font-size));
}

.m-policy__list {
  display: grid;
  gap: calc(20 * 1rem / var(--font-size));
  padding-top: calc(19 * 1rem / var(--font-size));
}

.m-policy-item {
  display: grid;
  gap: calc(10 * 1rem / var(--font-size));
  max-width: calc(794 * 1rem / var(--font-size));
  width: 100%;
}

.m-policy-item__title {
  position: relative;
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
  padding-left: calc(39 * 1rem / var(--font-size));
}

.m-policy-item__icon {
  position: absolute;
  top: 0.8em;
  left: calc(-1 * 1rem / var(--font-size));
  width: calc(25 * 1rem / var(--font-size));
  height: calc(25 * 1rem / var(--font-size));
  color: var(--color__brown-dark);
  translate: 0 -50%;
}

.m-policy-item__text {
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 400;
  line-height: 1.6;
  min-height: calc(52 * 1rem / var(--font-size));
  padding-left: calc(19 * 1rem / var(--font-size));
}

.m-point-card {
  position: relative;
  display: grid;
  row-gap: calc(15 * 1rem / var(--font-size));
  padding: calc(15 * 1rem / var(--font-size)) 0 calc(20 * 1rem / var(--font-size));
  border-radius: calc(8 * 1rem / var(--font-size));
  background-color: var(--color__white);
}
.m-point-card::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 4px solid var(--color__red);
  border-radius: inherit;
  pointer-events: none;
}

.m-point-card__head {
  display: flex;
  align-items: center;
  -moz-column-gap: calc(20 * 1rem / var(--font-size));
       column-gap: calc(20 * 1rem / var(--font-size));
}
.m-point-card__head::before {
  content: "";
  flex-shrink: 0;
  width: calc(10 * 1rem / var(--font-size));
  height: calc(43 * 1rem / var(--font-size));
  background-color: var(--color__red);
}

.m-point-card__title {
  display: flex;
  align-items: center;
  -moz-column-gap: calc(9 * 1rem / var(--font-size));
       column-gap: calc(9 * 1rem / var(--font-size));
}

.m-point-card__num {
  font-family: var(--font-family__outfit);
  font-size: calc(40 * 1rem / var(--font-size));
  font-weight: 900;
  line-height: 1.4;
  letter-spacing: 0.01em;
  color: var(--color__red);
}

.m-point-card__name {
  font-size: calc(27 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5925925926;
  letter-spacing: 0.18em;
}

.m-point-card__text {
  height: calc(44 * 1rem / var(--font-size));
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.13em;
  padding-left: calc(33 * 1rem / var(--font-size));
}

.m-philosophy {
  padding-block: calc(100 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-philosophy > .l-inner {
  display: grid;
  gap: calc(40 * 1rem / var(--font-size));
}

.m-philosophy__heading {
  padding-block: calc(10 * 1rem / var(--font-size));
}

.m-philosophy__card {
  display: grid;
  gap: calc(10 * 1rem / var(--font-size));
  width: 100%;
  max-width: calc(930 * 1rem / var(--font-size));
  color: var(--color__white);
  padding: calc(24 * 1rem / var(--font-size)) calc(21 * 1rem / var(--font-size)) calc(30 * 1rem / var(--font-size)) calc(30 * 1rem / var(--font-size));
  border: 1px solid var(--color__red);
  border-radius: 0 calc(16 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  background-color: var(--color__red);
}

.m-philosophy__label {
  position: relative;
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6111111111;
  padding-left: calc(10 * 1rem / var(--font-size));
}
.m-philosophy__label::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -2px;
  width: 4px;
  height: calc(26 * 1rem / var(--font-size));
  background-color: var(--color__white);
  translate: 0 -50%;
}

.m-philosophy__statements {
  display: grid;
  gap: calc(6 * 1rem / var(--font-size));
}

.m-philosophy__statement {
  position: relative;
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5416666667;
  letter-spacing: 0.1em;
}
.m-philosophy__statement::before {
  content: "・";
  position: absolute;
  top: 0;
  left: calc(-24 * 1rem / var(--font-size));
}

.m-philosophy__guidelines {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: calc(13 * 1rem / var(--font-size));
  width: 100%;
  max-width: calc(929 * 1rem / var(--font-size));
}

.m-philosophy__guideline--wide {
  grid-column: span 2;
}

/* stylelint-disable selector-class-pattern -- WordPress の paginate_links() が出力する page-numbers / prev / next / dots / current を指すため */
.m-pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: calc(20 * 1rem / var(--font-size));
  padding-top: calc(40 * 1rem / var(--font-size));
}

.m-pagination .page-numbers {
  position: relative;
  display: grid;
  place-items: center;
  width: calc(32 * 1rem / var(--font-size));
  height: calc(32 * 1rem / var(--font-size));
  color: var(--color__red);
  font-family: var(--font-family__outfit);
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1;
  border-radius: 50%;
  transition: opacity var(--duration);
}
.m-pagination .page-numbers:focus-visible {
  opacity: var(--opacity__hover);
}
.m-pagination .page-numbers::before {
  content: "";
  position: absolute;
  inset: calc(-6 * 1rem / var(--font-size));
}

.m-pagination .page-numbers.current {
  color: var(--color__white);
  background-color: var(--color__red);
}

.m-pagination .page-numbers.dots {
  width: calc(16 * 1rem / var(--font-size));
  height: calc(16 * 1rem / var(--font-size));
  pointer-events: none;
}
.m-pagination .page-numbers.dots::before {
  content: none;
}

.m-pagination .prev,
.m-pagination .next {
  width: calc(44 * 1rem / var(--font-size));
  height: calc(24 * 1rem / var(--font-size));
  border-radius: 0;
}

.m-pagination .prev {
  justify-items: start;
}
.m-pagination .prev::before {
  inset: calc(-10 * 1rem / var(--font-size)) calc(-2 * 1rem / var(--font-size)) calc(-10 * 1rem / var(--font-size)) calc(-10 * 1rem / var(--font-size));
}

.m-pagination .next {
  justify-items: end;
}
.m-pagination .next::before {
  inset: calc(-10 * 1rem / var(--font-size)) calc(-10 * 1rem / var(--font-size)) calc(-10 * 1rem / var(--font-size)) calc(-2 * 1rem / var(--font-size));
}

.m-pagination__icon {
  width: calc(24 * 1rem / var(--font-size));
  height: calc(24 * 1rem / var(--font-size));
}

.m-pagination .prev .m-pagination__icon {
  rotate: -90deg;
}

.m-pagination .next .m-pagination__icon {
  rotate: 90deg;
}

.m-pagination__dots {
  width: calc(16 * 1rem / var(--font-size));
  height: calc(16 * 1rem / var(--font-size));
}

.m-pagination--box {
  gap: calc(8 * 1rem / var(--font-size));
  padding-top: calc(80 * 1rem / var(--font-size));
}

.m-pagination--box .page-numbers {
  width: auto;
  min-width: calc(44 * 1rem / var(--font-size));
  height: calc(44 * 1rem / var(--font-size));
  font-size: calc(20 * 1rem / var(--font-size));
  padding-inline: calc(8 * 1rem / var(--font-size));
  white-space: nowrap;
  border: 1px solid var(--color__red);
  border-radius: 0;
}
.m-pagination--box .page-numbers::before {
  content: none;
}

.m-pagination--box .page-numbers.dots {
  min-width: calc(16 * 1rem / var(--font-size));
  padding-inline: 0;
  border: none;
}

.m-pagination--box .prev,
.m-pagination--box .next,
.m-pagination--box .first,
.m-pagination--box .last {
  display: flex;
  gap: calc(8 * 1rem / var(--font-size));
  align-items: center;
  justify-content: center;
  min-width: calc(140 * 1rem / var(--font-size));
  font-family: var(--font-family__zen-kaku-gothic-new);
  font-size: calc(18 * 1rem / var(--font-size));
  padding-inline: calc(16 * 1rem / var(--font-size));
}

.m-page-title {
  padding-top: calc(160 * 1rem / var(--font-size));
}

.m-page-title__bg {
  height: calc(296 * 1rem / var(--font-size));
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.m-page-title__card {
  display: grid;
  justify-items: center;
  max-width: calc(1116 * 1rem / var(--font-size));
  width: 100%;
  text-align: center;
  padding-bottom: calc(11 * 1rem / var(--font-size));
  border-radius: calc(16 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) 0 0;
  background-color: var(--color__white);
  margin-top: calc(-6 * 1rem / var(--font-size));
  margin-inline: auto;
}

.m-page-title__badge {
  max-width: calc(487 * 1rem / var(--font-size));
  width: 100%;
  color: var(--color__white);
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.4444444444;
  letter-spacing: 0.17em;
  padding: calc(3 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  border-radius: 9999px;
  background-color: var(--color__red);
  margin-top: calc(-20 * 1rem / var(--font-size));
}

.m-page-title__badge-note {
  display: block;
  font-size: calc(12 * 1rem / var(--font-size));
  line-height: 1.6666666667;
  letter-spacing: 0.17em;
}

.m-page-title__title {
  display: grid;
  font-weight: 700;
  padding-top: calc(46 * 1rem / var(--font-size));
}

.m-page-title__badge + .m-page-title__title {
  padding-top: calc(34 * 1rem / var(--font-size));
}

.m-page-title__lead {
  font-size: calc(30 * 1rem / var(--font-size));
  line-height: 1.4333333333;
}

.m-page-title__main {
  font-size: calc(40 * 1rem / var(--font-size));
  line-height: 1.45;
  letter-spacing: 0.07em;
}

.m-page-title__lead + .m-page-title__main {
  margin-top: calc(8 * 1rem / var(--font-size));
}

.m-page-title__sub {
  display: block;
  font-size: calc(25 * 1rem / var(--font-size));
  line-height: 1.44;
  letter-spacing: 0.07em;
}

.m-page-title__half {
  display: inline-block;
  translate: -0.25em 0;
  letter-spacing: -0.43em;
}

.m-page-title__line {
  width: calc(85 * 1rem / var(--font-size));
  border-top: 3px solid var(--color__red);
  margin-top: calc(23 * 1rem / var(--font-size));
}

.m-page-title__text {
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 400;
  line-height: 1.4444444444;
  letter-spacing: 0.07em;
  margin-top: calc(15 * 1rem / var(--font-size));
}

.m-page-title + .m-breadcrumb {
  padding-top: calc(23 * 1rem / var(--font-size));
}

.m-page-title--renovation .m-page-title__bg {
  background-position: center top;
  background-image: url("../images/renovation/page-title-bg.webp");
}

.m-page-title--manager .m-page-title__bg,
.m-page-title--consider .m-page-title__bg {
  background-image: url("../images/renovation/title-bg.webp");
}

.m-page-title--service .m-page-title__bg {
  background-position: center 12%;
  background-image: url("../images/service/list-title-bg.webp");
}

.m-page-title--wall-painting .m-page-title__bg {
  background-image: url("../images/service/page-title-bg.webp");
}

.m-page-title--works .m-page-title__bg {
  background-position: center top;
  background-image: url("../images/works/list-title-bg.webp");
}

.m-page-title--works-category .m-page-title__bg {
  background-image: url("../images/works/category-title-bg.webp");
}

.m-page-title--works-exterior-wall .m-page-title__bg {
  background-image: url("../images/works/category/exterior-wall.webp");
}

.m-page-title--works-roof-renovation .m-page-title__bg {
  background-image: url("../images/works/category/roof-renovation.webp");
}

.m-page-title--works-waterproofing .m-page-title__bg {
  background-image: url("../images/works/category/waterproofing.webp");
}

.m-page-title--works-roof-painting .m-page-title__bg {
  background-image: url("../images/works/category/roof-painting.webp");
}

.m-page-title--works-steel-painting .m-page-title__bg {
  background-image: url("../images/works/category/steel-painting.webp");
}

.m-page-title--works-floor-coating .m-page-title__bg {
  background-image: url("../images/works/category/floor-coating.webp");
}

.m-page-title--works-interior .m-page-title__bg {
  background-image: url("../images/works/category/interior.webp");
}

.m-page-title--works-paving .m-page-title__bg {
  background-image: url("../images/works/category/paving.webp");
}

.m-page-title--works-public-works .m-page-title__bg {
  background-image: url("../images/works/category/public-works.webp");
}

.m-page-title--works-other .m-page-title__bg {
  background-image: url("../images/works/category/other.webp");
}

.m-page-title--works-large-scale-renovation .m-page-title__bg {
  background-position: center top;
  background-image: url("../images/works/list-title-bg.webp");
}

.m-page-title--works-detail .m-page-title__bg {
  background-image: url("../images/works/detail-title-bg.webp");
}

.m-page-title--works-detail-exterior-wall .m-page-title__bg {
  background-image: url("../images/works/category/exterior-wall.webp");
}

.m-page-title--works-detail-waterproofing .m-page-title__bg {
  background-image: url("../images/works/category/waterproofing.webp");
}

.m-page-title--works-detail-steel-painting .m-page-title__bg {
  background-image: url("../images/works/category/steel-painting.webp");
}

.m-page-title--works-detail-floor-coating .m-page-title__bg {
  background-image: url("../images/works/category/floor-coating.webp");
}

.m-page-title--works-detail-paving .m-page-title__bg {
  background-image: url("../images/works/category/paving.webp");
}

.m-page-title--works-detail-public-works .m-page-title__bg {
  background-image: url("../images/works/category/public-works.webp");
}

.m-page-title--works-detail-roof-renovation .m-page-title__bg {
  background-image: url("../images/works/category/roof-renovation.webp");
}

.m-page-title--works-detail-roof-painting .m-page-title__bg {
  background-image: url("../images/works/category/roof-painting.webp");
}

.m-page-title--works-detail-interior .m-page-title__bg {
  background-image: url("../images/works/category/interior.webp");
}

.m-page-title--works-detail-other .m-page-title__bg {
  background-image: url("../images/works/category/other.webp");
}

.m-page-title--works-detail-large-scale-renovation .m-page-title__bg {
  background-position: center top;
  background-image: url("../images/works/list-title-bg.webp");
}

.m-page-title--news .m-page-title__bg,
.m-page-title--news-category .m-page-title__bg {
  background-image: url("../images/news/page-title-bg.webp");
}

.m-page-title--company .m-page-title__bg {
  background-image: url("../images/company/page-title-bg.webp");
}

.m-page-title--contact .m-page-title__bg {
  background-image: url("../images/contact/page-title-bg.webp");
}

.m-page-nav {
  position: absolute;
  top: calc(616 * 1rem / var(--font-size));
  right: max(0px, 50% - calc(720 * 1rem / var(--font-size)));
  bottom: 0;
  width: calc(307 * 1rem / var(--font-size));
  z-index: 1;
}

.m-page-nav__body {
  --_admin-bar: var(--wp-admin--admin-bar--height, 0px);
  position: sticky;
  top: calc(var(--_admin-bar) + var(--js-height__header, 0px) + calc(40 * 1rem / var(--font-size)));
}

.m-page-nav__title {
  display: flex;
  align-items: center;
  gap: calc(12 * 1rem / var(--font-size));
  width: calc(278 * 1rem / var(--font-size));
  color: var(--color__red);
  font-size: calc(19 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5789473684;
  letter-spacing: 0.16em;
  padding: calc(10 * 1rem / var(--font-size)) calc(7 * 1rem / var(--font-size));
}

.m-page-nav__title::before {
  content: "";
  flex-shrink: 0;
  width: calc(7 * 1rem / var(--font-size));
  height: calc(7 * 1rem / var(--font-size));
  border-radius: 50%;
  background-color: var(--color__red);
}

.m-page-nav__list {
  border-top: 1px solid var(--color__red);
  margin-top: calc(7 * 1rem / var(--font-size));
}

.m-page-nav__item {
  padding-top: calc(6 * 1rem / var(--font-size));
}

.m-page-nav__item + .m-page-nav__item {
  position: relative;
  padding-top: calc(7 * 1rem / var(--font-size));
  margin-top: calc(7 * 1rem / var(--font-size));
}

.m-page-nav__item + .m-page-nav__item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--color__gray-silver) 0 4px, transparent 4px 8px);
}

.m-page-nav__link {
  display: flex;
  align-items: center;
  gap: calc(10 * 1rem / var(--font-size));
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.625;
  letter-spacing: 0.16em;
  padding-block: calc(10 * 1rem / var(--font-size));
}

.m-page-nav__icon {
  flex-shrink: 0;
  width: calc(20 * 1rem / var(--font-size));
  height: calc(20 * 1rem / var(--font-size));
  color: var(--color__red);
}

.m-page-nav--manager {
  top: calc(662 * 1rem / var(--font-size));
}

.m-page-nav--manager .m-page-nav__item:last-child::after,
.m-page-nav--consider .m-page-nav__item:last-child::after,
.m-page-nav--service .m-page-nav__item:last-child::after {
  content: "";
  display: block;
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--color__gray-silver) 0 4px, transparent 4px 8px);
  margin-top: calc(7 * 1rem / var(--font-size));
}

.m-page-nav--consider {
  top: calc(655 * 1rem / var(--font-size));
}

.m-page-nav--consider .m-page-nav__list::before {
  content: "";
  display: block;
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--color__gray-silver) 0 4px, transparent 4px 8px);
  margin-top: calc(6 * 1rem / var(--font-size));
}

.m-page-nav--consider .m-page-nav__list::before,
.m-page-nav--consider .m-page-nav__item + .m-page-nav__item::before,
.m-page-nav--consider .m-page-nav__item:last-child::after {
  background-position: -2px 0;
}

.m-page-nav--service {
  top: calc(655 * 1rem / var(--font-size));
}

.m-page-nav--wall-painting {
  top: 0;
}

.m-page-nav--wall-painting .m-page-nav__list::before {
  content: "";
  display: block;
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--color__gray-silver) 0 4px, transparent 4px 8px);
  margin-top: calc(7 * 1rem / var(--font-size));
}

.m-page-nav--company {
  top: calc(655 * 1rem / var(--font-size));
}

.m-page-intro {
  padding-bottom: calc(50 * 1rem / var(--font-size));
}

.m-page-intro__title {
  font-size: calc(34 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5882352941;
}

.m-page-intro__title::after {
  content: "";
  display: block;
  width: calc(85 * 1rem / var(--font-size));
  height: 3px;
  background-color: var(--color__red);
  margin-top: calc(16 * 1rem / var(--font-size));
}

.m-page-intro__text {
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.9285714286;
  letter-spacing: 0.13em;
  padding-top: calc(17 * 1rem / var(--font-size));
}

.m-page-content {
  padding-block: calc(75 * 1rem / var(--font-size)) calc(125 * 1rem / var(--font-size));
}

.m-onestop {
  position: relative;
  padding-block: calc(10 * 1rem / var(--font-size)) calc(109 * 1rem / var(--font-size));
}

.m-onestop::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("../images/service/onestop-bg.png");
  background-size: cover;
  background-position: center;
  opacity: 0.3;
  filter: grayscale(1);
  z-index: -1;
}

.m-onestop__steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: calc(13 * 1rem / var(--font-size));
  max-width: calc(929 * 1rem / var(--font-size));
  width: 100%;
  margin-top: calc(38 * 1rem / var(--font-size));
}

.m-onestop__photo {
  aspect-ratio: 301/216;
  border-radius: calc(20 * 1rem / var(--font-size));
}

.m-onestop__photo img {
  width: 100%;
  height: 100%;
  border-radius: inherit;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-onestop__heading {
  padding-block: calc(10 * 1rem / var(--font-size));
}

.m-numbered-heading {
  --_subtitle-width: 0;
  --_note-align: end;
  --_note-font-size: 16;
  --_note-line-height: 26;
  --_note-letter-spacing: 0;
  display: grid;
  row-gap: calc(10 * 1rem / var(--font-size));
}

.m-numbered-heading__head {
  display: flex;
  align-items: center;
  -moz-column-gap: calc(10 * 1rem / var(--font-size));
       column-gap: calc(10 * 1rem / var(--font-size));
}

.m-numbered-heading__num {
  display: grid;
  flex-shrink: 0;
  place-items: center;
  width: calc(46 * 1rem / var(--font-size));
  height: calc(46 * 1rem / var(--font-size));
  font-family: var(--font-family__outfit);
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.4444444444;
  letter-spacing: 0.05em;
  color: var(--color__white);
  border-radius: 50%;
  background-color: var(--color__red);
}

.m-numbered-heading__title {
  font-size: calc(36 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6111111111;
  letter-spacing: 0.05em;
  color: var(--color__red);
}

.m-numbered-heading__sub {
  display: flex;
  align-items: var(--_note-align);
  -moz-column-gap: calc(18 * 1rem / var(--font-size));
       column-gap: calc(18 * 1rem / var(--font-size));
}

.m-numbered-heading__subtitle {
  min-width: calc(var(--_subtitle-width) * 1rem / var(--font-size));
  font-size: calc(30 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.02em;
}

.m-numbered-heading__note {
  font-size: calc(var(--_note-font-size) * 1rem / var(--font-size));
  line-height: calc(var(--_note-line-height) / var(--_note-font-size));
  letter-spacing: var(--_note-letter-spacing);
}

.m-numbered-heading__latin {
  font-family: var(--font-family__outfit);
  line-height: 1;
}

.m-not-found {
  padding-block: calc(75 * 1rem / var(--font-size)) calc(125 * 1rem / var(--font-size));
  margin-top: calc(10 * 1rem / var(--font-size));
}

.m-not-found__card {
  display: grid;
  grid-template-columns: 100%;
  justify-items: center;
  text-align: center;
  padding: calc(50 * 1rem / var(--font-size)) calc(100 * 1rem / var(--font-size)) calc(54 * 1rem / var(--font-size));
  border-radius: calc(30 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-not-found__lead {
  color: var(--color__black);
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5;
}

.m-not-found__text {
  color: var(--color__black);
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.75;
  margin-top: calc(24 * 1rem / var(--font-size));
}

.m-not-found__button {
  margin-top: calc(40 * 1rem / var(--font-size));
}

.m-news {
  padding-block: calc(150 * 1rem / var(--font-size)) calc(149 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-news__body {
  display: grid;
  grid-template-columns: calc(184 * 1rem / var(--font-size)) minmax(0, calc(829 * 1rem / var(--font-size)));
  -moz-column-gap: calc(103 * 1rem / var(--font-size));
       column-gap: calc(103 * 1rem / var(--font-size));
  justify-content: end;
  padding-top: calc(72 * 1rem / var(--font-size));
}

.m-news__filter {
  display: grid;
  justify-items: start;
  align-content: start;
  row-gap: calc(19 * 1rem / var(--font-size));
}

.m-news__list {
  display: grid;
  row-gap: calc(30 * 1rem / var(--font-size));
}

.m-news__more {
  display: flex;
  justify-content: center;
  padding-top: calc(72 * 1rem / var(--font-size));
}

.m-news__more > .m-more-link {
  --_color__icon: var(--color__red);
}

.m-news-card {
  display: grid;
  grid-template-columns: calc(161 * 1rem / var(--font-size)) 1fr;
  align-items: center;
  -moz-column-gap: calc(43 * 1rem / var(--font-size));
       column-gap: calc(43 * 1rem / var(--font-size));
}

.m-news-card__thumb {
  aspect-ratio: 161/141;
  border-radius: calc(8 * 1rem / var(--font-size));
  box-shadow: 0 calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) var(--color__black-alpha25);
  overflow: clip;
}

.m-news-card__thumb picture,
.m-news-card__thumb img {
  display: block;
  width: 100%;
  height: 100%;
}

.m-news-card__thumb img {
  -o-object-fit: contain;
     object-fit: contain;
}

.m-news-card__content {
  display: grid;
  row-gap: calc(9 * 1rem / var(--font-size));
}

.m-news-card__meta {
  display: flex;
  align-items: center;
  -moz-column-gap: calc(25 * 1rem / var(--font-size));
       column-gap: calc(25 * 1rem / var(--font-size));
}

.m-news-card__date {
  width: calc(92 * 1rem / var(--font-size));
  font-family: var(--font-family__outfit);
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5714285714;
  text-align: center;
}

.m-news-card__tag {
  display: grid;
  place-items: center;
  min-width: calc(142 * 1rem / var(--font-size));
  height: calc(32 * 1rem / var(--font-size));
  font-size: calc(12 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  color: var(--color__red);
  padding-inline: calc(8 * 1rem / var(--font-size));
  border: 1px solid var(--color__red);
  border-radius: calc(27 * 1rem / var(--font-size));
}

.m-news-card__main {
  display: flex;
  align-items: center;
  -moz-column-gap: calc(30 * 1rem / var(--font-size));
       column-gap: calc(30 * 1rem / var(--font-size));
}

.m-news-card__body {
  position: relative;
  width: 100%;
  max-width: calc(559 * 1rem / var(--font-size));
  height: calc(107 * 1rem / var(--font-size));
}
.m-news-card__body::before {
  content: "";
  position: absolute;
  top: calc(59 * 1rem / var(--font-size) - 1px);
  left: 0;
  width: calc(100% - 5 * 1rem / var(--font-size));
  height: 1px;
  background-color: var(--color__brown-dark);
}

.m-news-card__title {
  display: -webkit-box;
  height: calc(52 * 1rem / var(--font-size));
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  line-break: strict;
  overflow: clip;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.m-news-card__excerpt {
  display: -webkit-box;
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.6;
  line-break: strict;
  overflow: clip;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  margin-top: calc(12 * 1rem / var(--font-size));
}

.m-news-card__arrow {
  display: grid;
  flex-shrink: 0;
  place-items: center;
  width: calc(36 * 1rem / var(--font-size));
  height: calc(36 * 1rem / var(--font-size));
  color: var(--color__red);
  border: 1px solid var(--color__red);
  border-radius: 50%;
}

.m-news-card__arrow svg {
  width: calc(20 * 1rem / var(--font-size));
  height: calc(20 * 1rem / var(--font-size));
  rotate: -22.1deg;
}

.m-news-card--archive {
  align-items: end;
  padding-bottom: calc(40 * 1rem / var(--font-size));
}

.m-news-card--archive .m-news-card__thumb {
  aspect-ratio: 161/164;
}

.m-news-card--archive .m-news-card__content {
  height: calc(148 * 1rem / var(--font-size));
}

.m-news-card__text {
  display: grid;
  row-gap: calc(12 * 1rem / var(--font-size));
}

.m-news-card__keywords {
  display: flex;
  flex-wrap: wrap;
}

.m-news-card__keyword {
  min-width: calc(119 * 1rem / var(--font-size));
  color: var(--color__black);
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 2.5714285714;
}

.m-news-article {
  display: grid;
  grid-template-columns: 100%;
  row-gap: calc(50 * 1rem / var(--font-size));
}

.m-news-article__head {
  display: grid;
  row-gap: calc(2 * 1rem / var(--font-size));
}

.m-news-article__meta {
  display: flex;
  align-items: flex-end;
  -moz-column-gap: calc(7 * 1rem / var(--font-size));
       column-gap: calc(7 * 1rem / var(--font-size));
}

.m-news-article__vol {
  color: var(--color__white);
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.625;
  padding: calc(2 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size));
  border-radius: calc(8 * 1rem / var(--font-size)) calc(8 * 1rem / var(--font-size)) 0 0;
  background-color: var(--color__red);
}

.m-news-article__date {
  color: var(--color__gray-dark);
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5714285714;
}

.m-news-article__title {
  color: var(--color__black);
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(26 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6153846154;
}

.m-news-article__body {
  display: grid;
  grid-template-columns: 100%;
  row-gap: calc(10 * 1rem / var(--font-size));
}

.m-news-article__thumb img {
  width: 100%;
  aspect-ratio: 797/316;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-news-article__pager {
  display: grid;
  grid-template-columns: calc(175 * 1rem / var(--font-size)) calc(188 * 1rem / var(--font-size)) calc(181 * 1rem / var(--font-size));
  -moz-column-gap: calc(67 * 1rem / var(--font-size));
       column-gap: calc(67 * 1rem / var(--font-size));
  justify-content: center;
  align-items: center;
  padding-top: calc(50 * 1rem / var(--font-size));
  border-top: 2px solid var(--color__gray-blue);
  margin-top: calc(-2 * 1rem / var(--font-size));
}

.m-news-article__pager-prev,
.m-news-article__pager-next {
  display: inline-flex;
  align-items: center;
  -moz-column-gap: calc(8 * 1rem / var(--font-size));
       column-gap: calc(8 * 1rem / var(--font-size));
  min-height: calc(35 * 1rem / var(--font-size));
  color: var(--color__gray-blue);
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
}

.m-news-article__pager-prev {
  grid-column: 1;
  justify-self: start;
}

.m-news-article__pager-next {
  grid-column: 3;
  justify-self: end;
}

.m-news-article__pager-list {
  display: grid;
  grid-column: 2;
  align-content: center;
  min-height: calc(35 * 1rem / var(--font-size));
  color: var(--color__black);
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}

.m-news-article__pager-icon {
  flex-shrink: 0;
  width: calc(24 * 1rem / var(--font-size));
  height: calc(24 * 1rem / var(--font-size));
  color: var(--color__red);
}

.m-news-article__pager-prev .m-news-article__pager-icon {
  rotate: -90deg;
}

.m-news-article__pager-next .m-news-article__pager-icon {
  rotate: 90deg;
}

.m-news-archive {
  padding-block: calc(100 * 1rem / var(--font-size));
}

.m-news-archive__body {
  display: grid;
  grid-template-columns: calc(225 * 1rem / var(--font-size)) minmax(0, calc(829 * 1rem / var(--font-size)));
  justify-content: space-between;
  align-items: start;
  -moz-column-gap: calc(47 * 1rem / var(--font-size));
       column-gap: calc(47 * 1rem / var(--font-size));
}

.m-news-archive__filter {
  padding: calc(20 * 1rem / var(--font-size));
  border-radius: calc(16 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-news-archive__filter-list {
  display: grid;
  justify-items: start;
  row-gap: calc(19 * 1rem / var(--font-size));
}

.m-news-archive__list {
  display: grid;
  align-content: start;
  row-gap: calc(30 * 1rem / var(--font-size));
  padding-bottom: calc(170 * 1rem / var(--font-size));
}

.m-news-archive__empty {
  display: grid;
  justify-items: center;
  gap: calc(40 * 1rem / var(--font-size));
  padding-bottom: calc(170 * 1rem / var(--font-size));
}

.m-news-archive__empty-text {
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 2;
  letter-spacing: 0.05em;
  text-align: center;
}

.m-news-archive__empty-link > .m-more-link {
  --_color__icon: var(--color__red);
}

.m-news-archive__side {
  display: grid;
  align-content: start;
  row-gap: calc(33 * 1rem / var(--font-size));
}

.m-news-archive__tags {
  padding: calc(20 * 1rem / var(--font-size)) calc(10 * 1rem / var(--font-size));
  border-radius: calc(16 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-news-archive__tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: calc(5 * 1rem / var(--font-size));
}

.m-news-archive__recommend {
  display: grid;
  row-gap: calc(17 * 1rem / var(--font-size));
  padding: calc(20 * 1rem / var(--font-size)) calc(10 * 1rem / var(--font-size));
  border-radius: calc(16 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-news-archive__recommend-title {
  max-width: calc(168 * 1rem / var(--font-size));
  color: var(--color__black);
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.625;
  padding-bottom: calc(11 * 1rem / var(--font-size));
  border-bottom: 1px solid var(--color__black);
}

.m-news-archive__recommend-list {
  display: grid;
  row-gap: calc(20 * 1rem / var(--font-size));
}

.m-news-archive--category {
  margin-top: calc(10 * 1rem / var(--font-size));
}

.m-news-archive--category .m-news-archive__list {
  min-height: 0;
}

.m-news-archive--category + .m-contact {
  margin-top: calc(10 * 1rem / var(--font-size));
}

.m-news-archive--single .m-news-archive__body {
  grid-template-columns: calc(225 * 1rem / var(--font-size)) minmax(0, calc(797 * 1rem / var(--font-size)));
}

.m-mv {
  padding-top: calc(60 * 1rem / var(--font-size));
  overflow-x: clip;
}

.m-mv__photo {
  position: relative;
  aspect-ratio: 1440/754;
}

.m-mv__photo video {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-mv__body {
  position: absolute;
  bottom: 17.9045092838%;
  left: 8.6805555556%;
  display: grid;
  justify-items: start;
  gap: calc(14 * 1rem / var(--font-size));
}

.m-mv__badge {
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.1111111111;
  color: var(--color__white);
  white-space: nowrap;
  padding: calc(7 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  border-radius: 9999px;
  background-color: var(--color__white-alpha20);
}

.m-mv__catch {
  font-size: calc(51 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.4480392157;
  color: var(--color__white);
  white-space: nowrap;
  translate: calc(6 * 1rem / var(--font-size)) 0;
}

.m-mv-cta {
  display: grid;
  justify-items: center;
  gap: calc(12 * 1rem / var(--font-size));
  padding: calc(12 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-mv-cta__reception {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: calc(4 * 1rem / var(--font-size));
}

.m-mv-cta__lead {
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.4285714286;
}

.m-mv-cta__free {
  font-size: calc(18 * 1rem / var(--font-size));
  line-height: 1.4444444444;
  color: var(--color__red);
}

.m-mv-cta__hours {
  font-size: calc(11 * 1rem / var(--font-size));
  line-height: 1.4545454545;
}

.m-mv-cta__buttons {
  display: grid;
  grid-template-columns: minmax(0, calc(198 * 1rem / var(--font-size))) minmax(0, calc(140 * 1rem / var(--font-size)));
  justify-content: center;
  gap: calc(12 * 1rem / var(--font-size));
  width: 100%;
}

.m-mv-cta__tel,
.m-mv-cta__line {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(8 * 1rem / var(--font-size));
  width: 100%;
  height: calc(52 * 1rem / var(--font-size));
  font-weight: 700;
  color: var(--color__white);
  border-radius: 9999px;
}

.m-mv-cta__tel {
  font-family: var(--font-family__outfit);
  font-size: calc(18 * 1rem / var(--font-size));
  line-height: 1.26;
  background-color: var(--color__red);
}

.m-mv-cta__tel-icon {
  flex-shrink: 0;
  width: calc(20 * 1rem / var(--font-size));
  height: calc(20 * 1rem / var(--font-size));
}

.m-mv-cta__line {
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.45;
  background-color: var(--color__green);
}

.m-mv-cta__line-icon {
  flex-shrink: 0;
  width: calc(24 * 1rem / var(--font-size));
  height: calc(24 * 1rem / var(--font-size));
}

.m-more-link {
  --_column-gap: 12;
  --_min-width__text: 0;
  --_min-height__text: 0;
  --_padding-bottom: 0;
  --_padding-left: 0;
  --_padding-right: 0;
  --_color__icon: var(--color__red-dark);
  --_height__icon: 24;
  --_font-size__text: 20;
  --_font-weight__text: 500;
  --_line-height__text: 1.6;
  --_letter-spacing__text: 0.07em;
  position: relative;
  display: inline-flex;
  align-items: center;
  -moz-column-gap: calc(var(--_column-gap) * 1rem / var(--font-size));
       column-gap: calc(var(--_column-gap) * 1rem / var(--font-size));
  padding-bottom: calc(var(--_padding-bottom) * 1rem / var(--font-size));
  padding-right: calc(var(--_padding-right) * 1rem / var(--font-size));
  padding-left: calc(var(--_padding-left) * 1rem / var(--font-size));
  border-bottom: 1px solid var(--color__brown-dark);
}
.m-more-link::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: calc(44 * 1rem / var(--font-size));
  translate: 0 -50%;
}

.m-more-link__text {
  min-width: calc(var(--_min-width__text) * 1rem / var(--font-size));
  min-height: calc(var(--_min-height__text) * 1rem / var(--font-size));
  font-size: calc(var(--_font-size__text) * 1rem / var(--font-size));
  font-weight: var(--_font-weight__text);
  line-height: var(--_line-height__text);
  letter-spacing: var(--_letter-spacing__text);
}

.m-more-link__icon {
  display: grid;
  place-items: center;
  width: calc(24 * 1rem / var(--font-size));
  height: calc(var(--_height__icon) * 1rem / var(--font-size));
  color: var(--color__white);
  border-radius: calc(12 * 1rem / var(--font-size));
  background-color: var(--_color__icon);
}

.m-more-link__icon svg {
  width: calc(20 * 1rem / var(--font-size));
  height: calc(20 * 1rem / var(--font-size));
}

.m-menu {
  position: relative;
  overflow: clip;
  padding-block: calc(133 * 1rem / var(--font-size));
  background-color: var(--color__white);
  box-shadow: calc(-7 * 1rem / var(--font-size)) calc(-5 * 1rem / var(--font-size)) calc(19 * 1rem / var(--font-size)) var(--color__brown-gray-alpha7);
  z-index: 1;
}
.m-menu::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("../images/front-page/menu-bg.webp"), url("../images/front-page/menu-bg.webp");
  background-repeat: no-repeat;
  background-position: left top, left 249.58%;
  background-size: 100% 71.66%;
  filter: grayscale(1);
  opacity: 0.3;
  z-index: -1;
}

.m-menu > .l-inner {
  --_padding-inline: 161;
}

.m-menu__note {
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
  padding-top: calc(29 * 1rem / var(--font-size));
}

.m-menu__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  row-gap: calc(16 * 1rem / var(--font-size));
  -moz-column-gap: calc(13 * 1rem / var(--font-size));
       column-gap: calc(13 * 1rem / var(--font-size));
  padding-top: calc(106 * 1rem / var(--font-size));
}

.m-menu-card {
  --_color__bg: var(--color__red);
  --_color__bg-hover: var(--color__red-dark);
  --_color__bar: var(--color__red-muted);
  --_color__bar-hover: var(--color__red-muted-dark);
  --_shadow: calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) var(--color__brown-deep-alpha25);
  display: grid;
  align-content: start;
  gap: calc(15 * 1rem / var(--font-size));
  width: 100%;
  height: 100%;
  min-height: calc(272 * 1rem / var(--font-size));
  color: var(--color__white);
  padding-block: calc(15 * 1rem / var(--font-size));
  border-radius: calc(8 * 1rem / var(--font-size));
  background-color: var(--_color__bg);
  box-shadow: var(--_shadow);
  transition: background-color var(--duration), box-shadow var(--duration);
}
.m-menu-card:focus-visible {
  --_color__bg: var(--_color__bg-hover);
  --_color__bar: var(--_color__bar-hover);
  --_shadow: none;
}

.m-menu-card--dark {
  --_color__bg: var(--color__red-deep);
  --_color__bg-hover: var(--color__red-deep-dark);
  --_color__bar: var(--color__red-maroon);
  --_color__bar-hover: var(--color__red-maroon-dark);
}

.m-menu-card__head {
  display: flex;
  align-items: center;
  min-height: calc(63 * 1rem / var(--font-size));
}
.m-menu-card__head::before {
  content: "";
  flex-shrink: 0;
  width: calc(10 * 1rem / var(--font-size));
  height: calc(43 * 1rem / var(--font-size));
  border: 1px solid var(--_color__bar);
  background-color: var(--color__white);
}

.m-menu-card__num {
  font-family: var(--font-family__outfit);
  font-size: calc(45 * 1rem / var(--font-size));
  font-weight: 900;
  line-height: 1.4;
  letter-spacing: 0.01em;
  padding-left: calc(20 * 1rem / var(--font-size));
}

.m-menu-card__name {
  font-size: calc(30 * 1rem / var(--font-size));
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 0.18em;
  padding-left: calc(9 * 1rem / var(--font-size));
}

.m-menu-card__body {
  display: grid;
  gap: calc(15 * 1rem / var(--font-size));
  padding-left: calc(33 * 1rem / var(--font-size));
}

.m-menu-card__sub {
  max-width: calc(290 * 1rem / var(--font-size));
  height: calc(44 * 1rem / var(--font-size));
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.13em;
}

.m-menu-card__text {
  max-width: calc(291 * 1rem / var(--font-size));
  height: calc(74 * 1rem / var(--font-size));
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.4;
  letter-spacing: 0.09em;
}

.m-mega-menu {
  position: absolute;
  top: 100%;
  right: 0;
  width: calc(927 * 1rem / var(--font-size));
  padding: calc(25 * 1rem / var(--font-size)) 0 calc(40 * 1rem / var(--font-size));
  border-bottom-left-radius: calc(8 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-mega-menu__inner {
  display: grid;
  max-width: calc(837 * 1rem / var(--font-size));
  margin-inline: auto;
}

.m-mega-menu__head {
  --_circle-bg: transparent;
  --_arrow-color: var(--color__red-dark);
  display: flex;
  align-items: center;
  gap: calc(11 * 1rem / var(--font-size));
  justify-self: start;
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.14em;
  transition: color var(--duration);
}
.m-mega-menu__head:focus-visible {
  --_circle-bg: var(--color__red-dark);
  --_arrow-color: var(--color__white);
  color: var(--color__red-dark);
}

.m-mega-menu__circle {
  display: grid;
  flex-shrink: 0;
  place-items: center;
  width: calc(34 * 1rem / var(--font-size));
  height: calc(34 * 1rem / var(--font-size));
  color: var(--_arrow-color);
  border-radius: 50%;
  background-color: var(--_circle-bg);
  transition: color var(--duration), background-color var(--duration);
}

.m-mega-menu__circle--small {
  width: calc(22 * 1rem / var(--font-size));
  height: calc(22 * 1rem / var(--font-size));
}

.m-mega-menu__icon {
  width: calc(13 * 1rem / var(--font-size));
  height: calc(13 * 1rem / var(--font-size));
}

.m-mega-menu__circle--small .m-mega-menu__icon {
  width: calc(10 * 1rem / var(--font-size));
  height: calc(10 * 1rem / var(--font-size));
}

.m-mega-menu__rows {
  display: grid;
  gap: calc(2 * 1rem / var(--font-size));
  width: calc(825 * 1rem / var(--font-size));
  padding-top: calc(9 * 1rem / var(--font-size));
  margin-top: calc(9 * 1rem / var(--font-size));
  border-top: 1px solid var(--color__red-dark);
}

.m-mega-menu__row {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  -moz-column-gap: calc(32 * 1rem / var(--font-size));
       column-gap: calc(32 * 1rem / var(--font-size));
  width: 100%;
  max-width: calc(808 * 1rem / var(--font-size));
  padding: calc(4 * 1rem / var(--font-size)) 0 calc(11 * 1rem / var(--font-size)) calc(19 * 1rem / var(--font-size));
  background-image: repeating-linear-gradient(90deg, var(--color__brown-dark) 0 calc(2 * 1rem / var(--font-size)), transparent calc(2 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)));
  background-position: left bottom;
  background-repeat: no-repeat;
  background-size: calc(824 * 1rem / var(--font-size)) 1px;
}

.m-mega-menu__link {
  --_circle-bg: transparent;
  --_arrow-color: var(--color__red-dark);
  display: flex;
  align-items: center;
  gap: calc(17 * 1rem / var(--font-size));
  min-height: calc(26 * 1rem / var(--font-size));
  font-size: calc(15 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.11em;
  white-space: nowrap;
  transition: color var(--duration);
}
.m-mega-menu__link:focus-visible {
  --_circle-bg: var(--color__red-dark);
  --_arrow-color: var(--color__white);
  color: var(--color__red-dark);
}

.m-mega-menu__row--fit {
  grid-template-columns: repeat(5, max-content);
}

.m-manufacturers {
  padding-block: calc(100 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-manufacturers__inner {
  display: grid;
  gap: calc(56 * 1rem / var(--font-size));
}

.m-manufacturers__heading {
  padding-block: calc(10 * 1rem / var(--font-size));
}

.m-manufacturers__heading .m-heading__lead {
  max-width: calc(931 * 1rem / var(--font-size));
  line-break: strict;
}

.m-manufacturers__logos {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  row-gap: calc(16 * 1rem / var(--font-size));
  -moz-column-gap: calc(24 * 1rem / var(--font-size));
       column-gap: calc(24 * 1rem / var(--font-size));
  max-width: calc(929 * 1rem / var(--font-size));
  width: 100%;
  padding: calc(24 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-manufacturers__logo {
  position: relative;
  aspect-ratio: 128/60;
}
.m-manufacturers__logo img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.m-management {
  padding-block: calc(100 * 1rem / var(--font-size));
}

.m-management__list {
  display: grid;
  gap: calc(20 * 1rem / var(--font-size));
}

.m-lined-heading {
  --_title-width: 487;
  --_title-height: 85;
  display: grid;
  grid-template-columns: calc(var(--_title-width) * 1rem / var(--font-size));
}

.m-lined-heading--bottom {
  --_title-width: 496;
  --_title-height: 42;
}

.m-lined-heading__title {
  font-family: var(--font-family__outfit-zen-kaku);
  font-size: calc(26 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6153846154;
  letter-spacing: 0.05em;
  white-space: nowrap;
  padding-left: calc(37 * 1rem / var(--font-size));
  border-left: 3px solid var(--color__red);
}

.m-license {
  padding-block: calc(100 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-license .m-heading {
  --_en-font-weight: 600;
}

.m-license__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: calc(14 * 1rem / var(--font-size));
  -moz-column-gap: calc(16 * 1rem / var(--font-size));
       column-gap: calc(16 * 1rem / var(--font-size));
  max-width: calc(929 * 1rem / var(--font-size));
  margin-top: calc(40 * 1rem / var(--font-size));
}

.m-label-card {
  position: relative;
  display: grid;
  justify-items: center;
  padding: calc(44 * 1rem / var(--font-size)) calc(14 * 1rem / var(--font-size)) calc(14 * 1rem / var(--font-size));
  border: 1px solid var(--color__red);
  border-radius: calc(16 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-label-card--text {
  padding: calc(63 * 1rem / var(--font-size)) calc(35 * 1rem / var(--font-size)) calc(24 * 1rem / var(--font-size));
}

.m-label-card__label {
  position: absolute;
  top: -1px;
  left: 50%;
  translate: -50% 0;
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: calc(10 * 1rem / var(--font-size));
       column-gap: calc(10 * 1rem / var(--font-size));
  width: calc(248 * 1rem / var(--font-size));
  min-height: calc(34 * 1rem / var(--font-size));
  font-family: var(--font-family__outfit-zen-kaku);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.625;
  letter-spacing: 0.05em;
  color: var(--color__white);
  white-space: nowrap;
  padding: calc(5 * 1rem / var(--font-size)) 0 calc(3 * 1rem / var(--font-size));
  border-radius: 0 0 calc(8 * 1rem / var(--font-size)) calc(8 * 1rem / var(--font-size));
  background-color: var(--color__red);
}

.m-label-card--text .m-label-card__label {
  min-height: calc(37 * 1rem / var(--font-size));
  font-size: calc(18 * 1rem / var(--font-size));
  line-height: 1.6111111111;
  letter-spacing: 0;
  padding: calc(4 * 1rem / var(--font-size)) calc(17 * 1rem / var(--font-size));
}

.m-label-card__label-sub {
  display: flex;
  align-items: center;
  -moz-column-gap: calc(10 * 1rem / var(--font-size));
       column-gap: calc(10 * 1rem / var(--font-size));
}
.m-label-card__label-sub::before {
  content: "";
  flex-shrink: 0;
  width: 1px;
  height: calc(18 * 1rem / var(--font-size));
  background-color: var(--color__white);
  margin-right: -1px;
}

.m-label-card__list {
  display: grid;
  align-content: center;
  width: 100%;
  max-width: calc(299 * 1rem / var(--font-size));
  min-height: calc(126 * 1rem / var(--font-size));
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.625;
  color: var(--color__brown-dark);
}

.m-label-card__item {
  position: relative;
  padding-left: calc(24 * 1rem / var(--font-size));
}
.m-label-card__item::before {
  content: "・";
  position: absolute;
  top: 0;
  left: calc(5 * 1rem / var(--font-size));
}

.m-label-card__text {
  width: 100%;
  min-height: calc(162 * 1rem / var(--font-size));
  font-size: calc(15 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.8;
  color: var(--color__brown-dark);
  line-break: strict;
}

.m-label-card__latin {
  font-family: var(--font-family__outfit);
  line-height: 1;
}

.m-job-detail {
  --_color__main: var(--color__red);
  --_color__bg: var(--color__beige-pale);
  --_column: 3;
}

.m-job-detail--construction {
  --_color__main: var(--color__indigo-deep);
  --_color__bg: var(--color__blue-pale);
  --_column: 4;
}

.m-job-detail__title {
  font-weight: 700;
}

.m-job-detail__gap {
  display: block;
  height: calc(20 * 1rem / var(--font-size));
}

.m-job-card {
  --_bg: var(--color__red);
  display: grid;
  row-gap: calc(15 * 1rem / var(--font-size));
  color: var(--color__white);
  padding-block: calc(20 * 1rem / var(--font-size));
  border-radius: calc(8 * 1rem / var(--font-size));
  background-color: var(--_bg);
}

.m-job-card--crimson {
  --_bg: var(--color__crimson);
}

.m-job-card__head {
  display: flex;
  align-items: center;
  -moz-column-gap: calc(20 * 1rem / var(--font-size));
       column-gap: calc(20 * 1rem / var(--font-size));
}
.m-job-card__head::before {
  content: "";
  flex-shrink: 0;
  width: calc(10 * 1rem / var(--font-size));
  height: calc(48 * 1rem / var(--font-size));
  background-color: var(--color__white);
  box-shadow: inset 0 0 0 1px var(--color__red-muted);
}

.m-job-card__title {
  display: flex;
  align-items: center;
  -moz-column-gap: calc(9 * 1rem / var(--font-size));
       column-gap: calc(9 * 1rem / var(--font-size));
}

.m-job-card__num {
  flex-shrink: 0;
  width: calc(64 * 1rem / var(--font-size));
  font-family: var(--font-family__outfit);
  font-size: calc(40 * 1rem / var(--font-size));
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.01em;
  text-align: center;
  translate: 0 calc(4 * 1rem / var(--font-size));
}

.m-job-card__name {
  font-size: calc(30 * 1rem / var(--font-size));
  font-weight: 900;
  line-height: 1.3666666667;
  letter-spacing: 0.18em;
  translate: 0 calc(1 * 1rem / var(--font-size));
}

.m-job-card__half {
  display: inline-block;
}

.m-job-card__text {
  min-height: calc(58 * 1rem / var(--font-size));
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.07em;
  padding-left: calc(33 * 1rem / var(--font-size));
}

.m-job-card__latin {
  font-family: var(--font-family__outfit);
  line-height: 1;
}

.m-integrity {
  padding-bottom: calc(99 * 1rem / var(--font-size));
}

.m-integrity__label {
  color: var(--color__red);
  font-size: calc(17 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5882352941;
  letter-spacing: 0.12em;
}

.m-integrity__en {
  font-family: var(--font-family__outfit);
  line-height: 1;
}

.m-integrity__title {
  font-size: calc(34 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.7647058824;
  letter-spacing: 0.12em;
  padding-top: calc(12 * 1rem / var(--font-size));
}

.m-integrity__row {
  display: grid;
  grid-template-columns: calc(379 * 1rem / var(--font-size)) calc(545 * 1rem / var(--font-size));
  -moz-column-gap: calc(5 * 1rem / var(--font-size));
       column-gap: calc(5 * 1rem / var(--font-size));
  align-items: start;
  padding-top: calc(44 * 1rem / var(--font-size));
}

.m-integrity__row > .m-integrity__body {
  padding-top: calc(17 * 1rem / var(--font-size));
}

.m-integrity__text {
  max-width: calc(331 * 1rem / var(--font-size));
  width: 100%;
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 2;
  line-break: strict;
}

.m-integrity__caption {
  display: flex;
  -moz-column-gap: calc(2 * 1rem / var(--font-size));
       column-gap: calc(2 * 1rem / var(--font-size));
  align-items: center;
  font-size: calc(13 * 1rem / var(--font-size));
  line-height: 1.4615384615;
}

.m-integrity__caption--end {
  justify-content: flex-end;
  padding-top: calc(42 * 1rem / var(--font-size));
}

.m-integrity__caret {
  flex-shrink: 0;
  width: calc(10 * 1rem / var(--font-size));
  height: calc(10 * 1rem / var(--font-size));
}

.m-integrity__caret--left {
  scale: -1 1;
}

.m-integrity__photo {
  max-width: calc(545 * 1rem / var(--font-size));
  width: 100%;
}

.m-integrity__photo img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 545/272;
  -o-object-fit: cover;
     object-fit: cover;
  scale: -1 1;
}

.m-integrity__row--reverse {
  grid-template-columns: calc(489 * 1rem / var(--font-size)) calc(406 * 1rem / var(--font-size));
  -moz-column-gap: calc(43 * 1rem / var(--font-size));
       column-gap: calc(43 * 1rem / var(--font-size));
  align-items: center;
  min-height: calc(346 * 1rem / var(--font-size));
  padding-top: calc(100 * 1rem / var(--font-size));
}

.m-integrity__row--reverse .m-integrity__photo {
  align-self: start;
  max-width: calc(489 * 1rem / var(--font-size));
}

.m-integrity__row--reverse .m-integrity__photo img {
  aspect-ratio: 489/244;
}

.m-integrity__row--reverse .m-integrity__body {
  padding-top: calc(46 * 1rem / var(--font-size));
}

.m-integrity__subtitle {
  font-size: calc(28 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.12em;
}

.m-integrity__row--reverse .m-integrity__caption {
  white-space: nowrap;
  padding-top: calc(42 * 1rem / var(--font-size));
}

.m-integrity__text--wide {
  max-width: calc(929 * 1rem / var(--font-size));
  padding-top: calc(35 * 1rem / var(--font-size));
}

.m-insurance {
  padding-block: calc(100 * 1rem / var(--font-size)) calc(138 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-insurance__body {
  max-width: calc(934 * 1rem / var(--font-size));
}

.m-insurance__top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: calc(275 * 1rem / var(--font-size));
}

.m-insurance__text {
  width: calc(497 * 1rem / var(--font-size));
}

.m-insurance__lead {
  min-height: calc(127 * 1rem / var(--font-size));
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.5714285714;
  letter-spacing: 0.13em;
  padding-top: calc(19 * 1rem / var(--font-size));
}

.m-insurance__photo {
  max-width: calc(396 * 1rem / var(--font-size));
  width: 100%;
  aspect-ratio: 396/275;
}

.m-insurance__photo img {
  display: block;
  width: 100%;
  height: 100%;
}

.m-insurance__list {
  display: grid;
  grid-template-columns: repeat(2, calc(456 * 1rem / var(--font-size)));
  -moz-column-gap: calc(21 * 1rem / var(--font-size));
       column-gap: calc(21 * 1rem / var(--font-size));
}

.m-icon-button {
  --_color__main-default: var(--color__red);
  --_color__sub-default: var(--color__white);
  --_color__main: var(--_color__main-default);
  --_color__sub: var(--_color__sub-default);
  --_width__icon: 20;
  --_duration: var(--duration);
  display: grid;
  grid-template-columns: calc(var(--_width__icon) * 1rem / var(--font-size)) auto;
  -moz-column-gap: calc(10 * 1rem / var(--font-size));
       column-gap: calc(10 * 1rem / var(--font-size));
  align-items: center;
  justify-content: center;
  max-width: calc(250 * 1rem / var(--font-size));
  width: 100%;
  color: var(--_color__sub);
  font-size: calc(16 * 1rem / var(--font-size));
  background-color: var(--_color__main);
  border-width: 1px;
  border-style: solid;
  border-color: var(--_color__main);
  border-radius: 9999px;
  filter: drop-shadow(0 3px 6px var(--color__black-alpha20));
  transform: translateZ(0);
  transition: color var(--_duration), background-color var(--_duration), border-color var(--_duration), filter var(--_duration);
  touch-action: manipulation;
  padding-block: calc(10 * 1rem / var(--font-size));
  padding-inline: calc(10 * 1rem / var(--font-size));
}
.m-icon-button:focus-visible {
  color: var(--_color__main);
  background-color: var(--_color__sub);
  filter: unset;
}

.m-icon-button--reverse {
  grid-template-columns: auto calc(var(--_width__icon) * 1rem / var(--font-size));
}

.m-icon-button--invert {
  --_color__main: var(--_color__sub-default);
  --_color__sub: var(--_color__main-default);
  border-color: var(--_color__sub);
}

.m-heading {
  --_gap: 14;
  --_title-font-size: 34;
  --_title-line-height: calc(38 / 34);
  --_title-letter-spacing: 0.12em;
  --_en-font-weight: 700;
  --_en-font-size: 23;
  display: grid;
  justify-items: start;
}

.m-heading__en {
  font-family: var(--font-family__outfit);
  font-size: calc(var(--_en-font-size) * 1rem / var(--font-size));
  font-weight: var(--_en-font-weight);
  line-height: 1.6086956522;
  letter-spacing: 0.18em;
  color: var(--color__red);
}

.m-heading__title {
  font-size: calc(var(--_title-font-size) * 1rem / var(--font-size));
  font-weight: 700;
  line-height: var(--_title-line-height);
  letter-spacing: var(--_title-letter-spacing);
  margin-top: calc(var(--_gap) * 1rem / var(--font-size));
}

.m-heading__num {
  font-family: var(--font-family__outfit);
  font-size: calc(40 * 1rem / var(--font-size));
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.12em;
  color: var(--color__red);
}

.m-heading--tall {
  --_en-font-size: 21;
  --_gap: 16;
  --_title-line-height: calc(62 / 34);
  --_title-letter-spacing: 0.02em;
}

.m-heading--lined {
  --_gap: 13;
  --_title-line-height: calc(54 / 34);
  --_title-letter-spacing: 0.02em;
}

.m-heading--lined .m-heading__title::after {
  content: "";
  display: block;
  width: calc(85 * 1rem / var(--font-size));
  height: 3px;
  background-color: var(--color__red);
  margin-top: calc(16 * 1rem / var(--font-size));
}

.m-heading__lead {
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.9285714286;
  letter-spacing: 0.13em;
  padding-top: calc(17 * 1rem / var(--font-size));
}

.m-heading--large {
  --_title-line-height: calc(73 / 40);
}

.m-heading--large .m-heading__title {
  font-size: calc(40 * 1rem / var(--font-size));
}

.m-heading--large .m-heading__title::after {
  margin-top: calc(14 * 1rem / var(--font-size));
}

.m-heading--large .m-heading__lead {
  padding-top: calc(18 * 1rem / var(--font-size));
}

.m-heading--service {
  --_gap: 18;
  --_title-font-size: 30;
  --_title-line-height: 1.6;
  --_title-letter-spacing: 0.02em;
}

.m-heading--service-line .m-heading__title::after {
  content: "";
  display: block;
  width: calc(85 * 1rem / var(--font-size));
  height: 3px;
  border-radius: 9999px;
  background-color: var(--color__red);
  margin-top: calc(15 * 1rem / var(--font-size));
}

.m-heading--service .m-heading__en {
  line-height: 1.3913043478;
}

.m-heading--service-line .m-heading__lead {
  padding-top: calc(18 * 1rem / var(--font-size));
}

.m-heading__catch,
.m-heading__lead--strong {
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.875;
  letter-spacing: 0.13em;
}

.m-heading__catch {
  color: var(--color__red);
  padding-top: calc(18 * 1rem / var(--font-size));
}

.m-heading--service-line .m-heading__catch {
  padding-top: calc(18 * 1rem / var(--font-size));
}

.m-heading__catch + .m-heading__lead {
  padding-top: calc(18 * 1rem / var(--font-size));
}

.m-header {
  position: fixed;
  top: var(--wp-admin--admin-bar--height, 0);
  left: 0;
  width: 100%;
  font-family: var(--font-family__zen-kaku-gothic-new);
  color: var(--color__brown-dark);
  z-index: var(--z-index__header);
}

.m-header::before {
  content: "";
  position: absolute;
  top: 0;
  inset-inline: calc(50% - var(--js-width__viewport) / 2);
  height: calc(160 * 1rem / var(--font-size));
  background-color: var(--color__white);
  opacity: 0;
  z-index: -1;
  transition: opacity var(--duration);
}

.m-header.is-scrolled::before,
.m-header--lower::before {
  opacity: 1;
}

.m-header__band {
  display: flex;
  align-items: flex-start;
  gap: calc(20 * 1rem / var(--font-size));
  height: calc(60 * 1rem / var(--font-size));
  color: var(--color__white);
  padding: calc(11 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size)) 0;
  background-color: var(--color__red);
}

.m-header__badge {
  display: grid;
  justify-items: center;
  align-content: start;
  width: calc(105 * 1rem / var(--font-size));
  height: calc(39 * 1rem / var(--font-size));
  font-size: calc(22 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.45;
  color: var(--color__red);
  padding-top: calc(4 * 1rem / var(--font-size));
  border-radius: calc(10 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-header__cm {
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.45;
  white-space: nowrap;
  padding-top: calc(6 * 1rem / var(--font-size));
}

.m-header__license {
  display: flex;
  gap: calc(29 * 1rem / var(--font-size));
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.45;
  white-space: nowrap;
  padding-top: calc(8 * 1rem / var(--font-size));
  margin-left: auto;
}

.m-header__compliance {
  min-width: calc(165 * 1rem / var(--font-size));
}

.m-header__body {
  display: grid;
  grid-template-columns: calc(270 * 1rem / var(--font-size)) calc(1104 * 1rem / var(--font-size));
  justify-content: space-between;
  align-items: start;
  padding-left: calc(30 * 1rem / var(--font-size));
}

.m-header__logo {
  padding-top: calc(27 * 1rem / var(--font-size));
}

.m-header__logo img {
  width: 100%;
  height: auto;
}

.m-header__panel {
  position: relative;
  display: grid;
  justify-items: center;
  gap: calc(14 * 1rem / var(--font-size));
  padding: calc(14 * 1rem / var(--font-size)) calc(10 * 1rem / var(--font-size)) 0;
  border-bottom-left-radius: calc(8 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-header__contact {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: calc(10 * 1rem / var(--font-size));
  width: 100%;
  max-width: calc(1084 * 1rem / var(--font-size));
}

.m-header__reception {
  display: grid;
  gap: calc(7 * 1rem / var(--font-size));
  flex-shrink: 0;
}

.m-header__reception-lead {
  font-size: calc(17 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 0.93;
  letter-spacing: 0.04em;
}

.m-header__free {
  font-size: calc(24 * 1rem / var(--font-size));
  line-height: 0.93;
  color: var(--color__red);
}

.m-header__hours {
  font-size: calc(13 * 1rem / var(--font-size));
  line-height: 1.4615384615;
  letter-spacing: 0.07em;
}

.m-header__tel {
  display: flex;
  align-items: center;
  gap: calc(6 * 1rem / var(--font-size));
  width: 100%;
  max-width: calc(286 * 1rem / var(--font-size));
  height: calc(52 * 1rem / var(--font-size));
  font-family: var(--font-family__outfit);
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.12em;
  color: var(--color__white);
  padding-left: calc(34 * 1rem / var(--font-size));
  border-radius: 9999px;
  background-color: var(--color__red-dark);
  transition: color var(--duration), background-color var(--duration), box-shadow var(--duration);
}
.m-header__tel:focus-visible {
  color: var(--color__red-dark);
  background-color: var(--color__white);
  box-shadow: inset 0 0 0 3px var(--color__red-dark);
}

.m-header__tel-icon {
  flex-shrink: 0;
  width: calc(21 * 1rem / var(--font-size));
  height: calc(23 * 1rem / var(--font-size));
}

.m-header__sns {
  --_size__link: 30;
  flex-shrink: 0;
  padding-inline: calc(8 * 1rem / var(--font-size));
}

.m-header__line {
  display: flex;
  align-items: center;
  gap: calc(4 * 1rem / var(--font-size));
  width: 100%;
  max-width: calc(201 * 1rem / var(--font-size));
  height: calc(52 * 1rem / var(--font-size));
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.25;
  color: var(--color__white);
  padding-left: calc(27 * 1rem / var(--font-size));
  border-radius: 9999px;
  background-color: var(--color__green);
  transition: color var(--duration), background-color var(--duration), box-shadow var(--duration);
}
.m-header__line:focus-visible {
  --icon-line-letter: var(--color__white);
  color: var(--color__green);
  background-color: var(--color__white);
  box-shadow: inset 0 0 0 3px var(--color__green);
}

.m-header__line-icon {
  flex-shrink: 0;
  width: calc(32 * 1rem / var(--font-size));
  height: calc(30 * 1rem / var(--font-size));
}

.m-header__line-en {
  font-family: var(--font-family__noto-sans-jp);
}

.m-header__nav {
  width: 100%;
  max-width: calc(1084 * 1rem / var(--font-size));
  padding-top: calc(14 * 1rem / var(--font-size));
  background-image: repeating-linear-gradient(90deg, var(--color__red-dark) 0 calc(4 * 1rem / var(--font-size)), transparent calc(4 * 1rem / var(--font-size)) calc(8 * 1rem / var(--font-size)));
  background-repeat: no-repeat;
  background-size: 100% 1px;
}

.m-header__links {
  display: flex;
  align-items: flex-start;
  gap: calc(16 * 1rem / var(--font-size));
}

.m-header__links-item {
  display: flex;
  align-items: flex-start;
  gap: calc(16 * 1rem / var(--font-size));
}

.m-header__links-item > a {
  width: calc(var(--_width) * 1rem / var(--font-size));
}

.m-header__links-item + .m-header__links-item::before {
  content: "";
  width: 1px;
  height: calc(26 * 1rem / var(--font-size));
  background-color: var(--color__red-dark);
  margin-top: calc(1 * 1rem / var(--font-size));
}

.m-header__link {
  position: relative;
  display: block;
  font-size: calc(17 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.14em;
  white-space: nowrap;
  padding-bottom: calc(14 * 1rem / var(--font-size));
  transition: color var(--duration);
}
.m-header__link::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: calc(var(--_bar-left, 0) * 1rem / var(--font-size));
  width: calc(var(--_bar-width, 75) * 1rem / var(--font-size));
  height: calc(6 * 1rem / var(--font-size));
  border-radius: calc(8 * 1rem / var(--font-size)) calc(8 * 1rem / var(--font-size)) 0 0;
  background-color: var(--color__red-dark);
  opacity: 0;
  transition: opacity var(--duration);
}
.m-header__link:focus-visible {
  color: var(--color__red-dark);
}
.m-header__link:focus-visible::after {
  opacity: 1;
}

.m-header__link[aria-expanded=true] {
  color: var(--color__red-dark);
}
.m-header__link[aria-expanded=true]::after {
  opacity: 1;
}

.m-header__link--narrow {
  letter-spacing: 0.11em;
}

.m-header__hamburger {
  justify-self: end;
}

.m-hamburger {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-end;
  gap: calc(5 * 1rem / var(--font-size));
  width: calc(44 * 1rem / var(--font-size));
  height: calc(44 * 1rem / var(--font-size));
  padding: calc(10 * 1rem / var(--font-size)) calc(6 * 1rem / var(--font-size));
}

.m-hamburger__line {
  display: block;
  width: calc(32 * 1rem / var(--font-size));
  height: calc(3 * 1rem / var(--font-size));
  border-radius: calc(2 * 1rem / var(--font-size));
  background-color: var(--color__brown-dark);
}

.m-hamburger__line:nth-of-type(2) {
  width: calc(24 * 1rem / var(--font-size));
}

.m-guideline-card {
  display: grid;
  align-content: start;
  gap: calc(10 * 1rem / var(--font-size));
  height: calc(216 * 1rem / var(--font-size));
  padding: calc(23 * 1rem / var(--font-size)) calc(26.5 * 1rem / var(--font-size)) calc(23 * 1rem / var(--font-size)) calc(25.5 * 1rem / var(--font-size));
  border: 1px solid var(--color__red);
  border-radius: 0 calc(16 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-guideline-card__head {
  display: flex;
  align-items: center;
  -moz-column-gap: calc(10 * 1rem / var(--font-size));
       column-gap: calc(10 * 1rem / var(--font-size));
  height: calc(44 * 1rem / var(--font-size));
}

.m-guideline-card__num {
  font-family: var(--font-family__outfit);
  font-size: calc(30 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  color: var(--color__red);
}

.m-guideline-card__title {
  position: relative;
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6111111111;
  padding-left: calc(12 * 1rem / var(--font-size));
}
.m-guideline-card__title::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 2px;
  height: calc(27 * 1rem / var(--font-size));
  background-color: var(--color__brown-dark);
  translate: 0 -50%;
}

.m-guideline-card__text {
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 400;
  line-height: 1.5714285714;
  line-break: strict;
  padding-inline: calc(5 * 1rem / var(--font-size));
}

.m-grid-paper {
  --_line-color: var(--color__gray-grid);
  --_line-width: 2px;
  --_pitch-x: 32.4;
  --_pitch-y: 32.4;
  --_offset-x: 0;
  --_offset-y: 0;
  background-color: var(--color__white);
  background-image: repeating-linear-gradient(to right, transparent 0 calc(var(--_offset-x) * 1rem / var(--font-size)), var(--_line-color) calc(var(--_offset-x) * 1rem / var(--font-size)) calc(calc(var(--_offset-x) * 1rem / var(--font-size)) + var(--_line-width)), transparent calc(calc(var(--_offset-x) * 1rem / var(--font-size)) + var(--_line-width)) calc(var(--_pitch-x) * 1rem / var(--font-size))), repeating-linear-gradient(to bottom, transparent 0 calc(var(--_offset-y) * 1rem / var(--font-size)), var(--_line-color) calc(var(--_offset-y) * 1rem / var(--font-size)) calc(calc(var(--_offset-y) * 1rem / var(--font-size)) + var(--_line-width)), transparent calc(calc(var(--_offset-y) * 1rem / var(--font-size)) + var(--_line-width)) calc(var(--_pitch-y) * 1rem / var(--font-size)));
}

.m-grid-paper--reality {
  --_line-color: var(--color__gray-grid);
  --_line-width: 3px;
  --_pitch-x: 32.4;
  --_pitch-y: 32.42;
  --_offset-x: 14;
  --_offset-y: 24;
}

.m-grid-paper--guarantee {
  --_line-color: var(--color__gray-grid);
  --_line-width: 2px;
  --_pitch-x: 32.4;
  --_pitch-y: 32.4;
  --_offset-x: 15;
  --_offset-y: 23;
}

.m-grid-paper--history {
  --_pitch-x: 40;
  --_pitch-y: 40;
  --_offset-x: 33;
  --_offset-y: 0;
}

.m-grid-paper--schedule {
  --_line-color: var(--color__gray-snow);
  --_line-width: 2px;
  --_pitch-x: 32.42;
  --_pitch-y: 32.41;
  --_offset-x: 15;
  --_offset-y: 31;
}

.m-greeting {
  padding-block: calc(10 * 1rem / var(--font-size)) calc(100 * 1rem / var(--font-size));
}

.m-greeting__body {
  --_width__left: 375;
  --_width__right: 510;
  --_column-gap: 44;
  align-items: start;
  max-width: calc(929 * 1rem / var(--font-size));
  width: 100%;
  padding-top: calc(50 * 1rem / var(--font-size));
}

.m-greeting__photo {
  max-width: calc(375 * 1rem / var(--font-size));
  width: 100%;
  overflow: clip;
  border-radius: calc(20 * 1rem / var(--font-size));
  box-shadow: calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) var(--color__black-alpha25);
}

.m-greeting__photo img {
  display: block;
  width: 100%;
  aspect-ratio: 375/457;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-greeting__texts {
  min-height: calc(401 * 1rem / var(--font-size));
  padding-right: calc(32 * 1rem / var(--font-size));
}

.m-greeting__text {
  font-size: calc(15 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
  line-break: strict;
}

.m-greeting__text + .m-greeting__text {
  padding-top: calc(24 * 1rem / var(--font-size));
}

.m-greeting__signature {
  display: grid;
  justify-items: end;
  font-family: var(--font-family__noto-sans-jp);
  font-weight: 500;
}

.m-greeting__position {
  min-width: calc(151 * 1rem / var(--font-size));
  font-size: calc(18 * 1rem / var(--font-size));
  line-height: 1.5555555556;
}

.m-greeting__name {
  translate: 0.2em 0;
  font-size: calc(27 * 1rem / var(--font-size));
  line-height: 1.6296296296;
  letter-spacing: 0.2em;
}

.m-footer {
  color: var(--color__white);
  padding-block: calc(56 * 1rem / var(--font-size));
  background-color: var(--color__brown-dark);
}

.m-footer > .l-inner {
  --_max-width: 1240;
  --_padding-inline: 100;
}

.m-footer__main {
  max-width: calc(1209 * 1rem / var(--font-size));
  margin-inline: auto;
}

.m-footer__upper {
  display: grid;
  grid-template-columns: calc(289 * 1rem / var(--font-size)) auto;
  align-items: start;
  -moz-column-gap: calc(46 * 1rem / var(--font-size));
       column-gap: calc(46 * 1rem / var(--font-size));
}

.m-footer__logo {
  display: block;
  width: 100%;
  max-width: calc(289 * 1rem / var(--font-size));
}

.m-footer__logo picture,
.m-footer__logo img {
  display: block;
  width: 100%;
  height: auto;
}

.m-footer__info {
  display: grid;
  row-gap: calc(12 * 1rem / var(--font-size));
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(16 * 1rem / var(--font-size));
  font-style: normal;
  line-height: 1.625;
  letter-spacing: 0.1em;
  padding-top: calc(35 * 1rem / var(--font-size));
}

.m-footer__tel {
  font-family: var(--font-family__outfit);
}

.m-footer__en {
  font-family: var(--font-family__outfit);
  line-height: 1;
}

.m-footer__lower {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: calc(99 * 1rem / var(--font-size));
}

.m-footer__intro {
  align-self: flex-start;
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.6;
  padding-top: calc(5 * 1rem / var(--font-size));
}

.m-footer__links {
  display: grid;
  grid-template-rows: repeat(2, auto);
  grid-template-columns: calc(92 * 1rem / var(--font-size)) auto;
  grid-auto-flow: column;
  justify-content: start;
  row-gap: calc(10 * 1rem / var(--font-size));
  -moz-column-gap: calc(28 * 1rem / var(--font-size));
       column-gap: calc(28 * 1rem / var(--font-size));
  width: 100%;
  max-width: calc(380 * 1rem / var(--font-size));
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6666666667;
}

.m-footer__noto {
  font-family: var(--font-family__noto-sans-jp);
}

.m-footer__bottom {
  display: flex;
  justify-content: center;
  -moz-column-gap: calc(69 * 1rem / var(--font-size));
       column-gap: calc(69 * 1rem / var(--font-size));
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6111111111;
  padding-top: calc(52 * 1rem / var(--font-size));
  border-top: 1px solid var(--color__white);
  margin-top: calc(53 * 1rem / var(--font-size));
}

.m-footer__copyright {
  font-family: var(--font-family__outfit-jp);
}

.m-footer-menu {
  display: grid;
  grid-template-columns: calc(213 * 1rem / var(--font-size)) calc(210 * 1rem / var(--font-size)) calc(210 * 1rem / var(--font-size)) auto;
  align-items: start;
  -moz-column-gap: calc(26 * 1rem / var(--font-size));
       column-gap: calc(26 * 1rem / var(--font-size));
}

.m-footer-menu__title {
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  padding-left: calc(10 * 1rem / var(--font-size));
  border-left: 2px solid var(--color__white);
}

.m-footer-menu__list {
  display: grid;
  row-gap: calc(10 * 1rem / var(--font-size));
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6666666667;
  padding-top: calc(20 * 1rem / var(--font-size));
}

.m-footer-menu__title--sp + .m-footer-menu__list {
  padding-top: 0;
}

.m-footer-menu__list--services {
  grid-template-columns: repeat(2, calc(105 * 1rem / var(--font-size)));
}

.m-footer-menu__list--works {
  grid-template-columns: calc(113 * 1rem / var(--font-size)) calc(97 * 1rem / var(--font-size));
}

.m-footer-menu__group:last-child .m-footer-menu__title {
  padding-left: calc(5 * 1rem / var(--font-size));
}

.m-footer-menu__group--noto .m-footer-menu__list {
  font-family: var(--font-family__noto-sans-jp);
}

.m-follow-steps {
  display: grid;
  justify-items: start;
  width: calc(462 * 1rem / var(--font-size));
}

.m-follow-steps__badge {
  position: relative;
  min-width: calc(238 * 1rem / var(--font-size));
  color: var(--color__white);
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6111111111;
  padding: calc(13 * 1rem / var(--font-size)) calc(29 * 1rem / var(--font-size)) calc(14 * 1rem / var(--font-size));
  border-radius: calc(8 * 1rem / var(--font-size));
  background-color: var(--color__red);
}

.m-follow-steps__badge::after {
  content: "";
  position: absolute;
  top: 100%;
  left: calc(113 * 1rem / var(--font-size));
  width: calc(11 * 1rem / var(--font-size));
  height: calc(9 * 1rem / var(--font-size));
  background-color: var(--color__red);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}

.m-follow-steps__list {
  position: relative;
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin-top: calc(23 * 1rem / var(--font-size));
}

.m-follow-steps__list::before {
  content: "";
  position: absolute;
  top: calc(35 * 1rem / var(--font-size));
  left: calc(56 * 1rem / var(--font-size));
  width: calc(100% - 77 * 1rem / var(--font-size));
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--color__brown-dark) 0 2px, transparent 2px 11px);
}

.m-follow-steps__item {
  position: relative;
  display: grid;
  justify-items: center;
  gap: calc(10 * 1rem / var(--font-size));
  width: calc(72 * 1rem / var(--font-size));
}

.m-follow-steps__circle {
  display: grid;
  place-items: center;
  width: calc(72 * 1rem / var(--font-size));
  height: calc(70 * 1rem / var(--font-size));
  color: var(--color__red);
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5833333333;
  border: 3px solid var(--color__red);
  border-radius: calc(35 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-follow-steps__item--done .m-follow-steps__circle {
  color: var(--color__white);
  background-color: var(--color__red);
}

.m-follow-steps__label {
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(18 * 1rem / var(--font-size));
  line-height: 1.6111111111;
  white-space: nowrap;
}

.m-folder-tabs {
  display: grid;
  row-gap: calc(13 * 1rem / var(--font-size));
}

.m-folder-tabs__list {
  display: grid;
  grid-template-columns: repeat(2, calc(203 * 1rem / var(--font-size)));
  justify-content: center;
  -moz-column-gap: calc(32 * 1rem / var(--font-size));
       column-gap: calc(32 * 1rem / var(--font-size));
}

.m-folder-tabs__tab {
  --_color: var(--color__indigo-deep);
  --_bg: var(--color__blue-pale);
  display: grid;
  place-items: center;
  min-height: calc(68 * 1rem / var(--font-size));
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5833333333;
  letter-spacing: 0.02em;
  color: var(--color__brown-dark);
  text-align: center;
  padding: calc(14 * 1rem / var(--font-size));
  border: 1px solid var(--_color);
  border-radius: calc(16 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) 0 0;
  background-color: var(--_bg);
}

.m-folder-tabs__tab[aria-selected=true] {
  --_color: var(--color__red);
  --_bg: var(--color__beige-pale);
}

.m-folder-tabs__panel {
  padding: calc(49 * 1rem / var(--font-size));
  border: 1px solid var(--color__red);
  border-radius: 0 0 calc(20 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-flow {
  padding-block: calc(100 * 1rem / var(--font-size));
  background: url("../images/renovation/flow-bg.jpg") center/cover no-repeat;
}

.m-flow__lead {
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.5714285714;
  letter-spacing: 0.13em;
  padding-top: calc(19 * 1rem / var(--font-size));
}

.m-flow__list {
  display: grid;
  gap: calc(24 * 1rem / var(--font-size));
  max-width: calc(929 * 1rem / var(--font-size));
  margin-top: calc(70 * 1rem / var(--font-size));
}

.m-flow-step {
  position: relative;
  display: grid;
  grid-template-columns: calc(146 * 1rem / var(--font-size)) calc(749 * 1rem / var(--font-size));
  align-items: start;
  -moz-column-gap: calc(34 * 1rem / var(--font-size));
       column-gap: calc(34 * 1rem / var(--font-size));
  min-height: calc(156 * 1rem / var(--font-size));
  padding-top: calc(10 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-flow-step--tinted {
  background-color: var(--color__rose-mist);
}

.m-flow-step__num {
  position: absolute;
  top: calc(-11 * 1rem / var(--font-size));
  left: calc(-8 * 1rem / var(--font-size));
  width: calc(63 * 1rem / var(--font-size));
  color: var(--color__red-strong);
  font-family: var(--font-family__outfit);
  font-size: calc(40 * 1rem / var(--font-size));
  font-weight: 800;
  line-height: 1.35;
  text-align: center;
  -webkit-text-stroke: 4px var(--color__white);
  paint-order: stroke fill;
  z-index: 1;
}

.m-flow-step__image img {
  display: block;
  width: 100%;
  height: auto;
}

.m-flow-step__body {
  font-family: var(--font-family__noto-sans-jp);
}

.m-flow-step__title {
  font-size: calc(22 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.3636363636;
  color: var(--color__red);
}

.m-flow-step__note {
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.5714285714;
  letter-spacing: 0.035em;
  margin-top: calc(18 * 1rem / var(--font-size));
}

.m-flow-step__text {
  font-size: calc(15 * 1rem / var(--font-size));
  line-height: 1.6666666667;
  letter-spacing: 0.035em;
  margin-top: calc(18 * 1rem / var(--font-size));
}

.m-flow-step__note + .m-flow-step__text {
  margin-top: calc(17 * 1rem / var(--font-size));
}

.m-filter-chip {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: calc(8 * 1rem / var(--font-size));
       column-gap: calc(8 * 1rem / var(--font-size));
  font-family: var(--font-family__outfit-jp);
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5714285714;
  padding: calc(5 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size));
  border-radius: 9999px;
}
.m-filter-chip::before {
  content: "";
  flex-shrink: 0;
  width: calc(10 * 1rem / var(--font-size));
  height: calc(10 * 1rem / var(--font-size));
  border-radius: 50%;
  background-color: currentcolor;
}

.m-filter-chip--current {
  color: var(--color__white);
  background-color: var(--color__red);
}

.m-feature-block {
  --_bleed: max(
    calc(50% - var(--js-width__viewport) / 2),
    calc(50% - (var(--max-width) * 1px / 2))
  );
  display: grid;
  grid-template-columns: calc(444 * 1rem / var(--font-size)) calc(336 * 1rem / var(--font-size));
  -moz-column-gap: calc(90 * 1rem / var(--font-size));
       column-gap: calc(90 * 1rem / var(--font-size));
  align-content: start;
  align-items: center;
  width: calc(934 * 1rem / var(--font-size) - var(--_bleed));
  min-height: calc(529 * 1rem / var(--font-size));
  padding-top: calc(38 * 1rem / var(--font-size));
  padding-left: calc(1 * 1rem / var(--font-size) - var(--_bleed));
  background-color: var(--color__beige-pale);
  margin-left: var(--_bleed);
}

.m-feature-block__main {
  display: grid;
  justify-items: start;
}

.m-feature-block__badge {
  color: var(--color__white);
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5714285714;
  letter-spacing: 0.06em;
  padding: calc(5 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size));
  background-color: var(--color__red);
}

.m-feature-block__title {
  font-size: calc(30 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.7666666667;
  letter-spacing: 0.12em;
}

.m-feature-block__accent {
  color: var(--color__red);
}

.m-feature-block__text {
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 2;
  margin-top: calc(44 * 1rem / var(--font-size));
}

.m-feature-block__side {
  display: grid;
}

.m-feature-block__callout {
  position: relative;
  max-width: calc(304 * 1rem / var(--font-size));
  width: 100%;
  font-size: calc(17 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6323529412;
  letter-spacing: 0.06em;
  text-align: center;
}

.m-feature-block__callout::before {
  content: "";
  position: absolute;
  top: calc(65 * 1rem / var(--font-size));
  left: calc(12 * 1rem / var(--font-size));
  width: calc(290 * 1rem / var(--font-size));
  height: calc(43 * 1rem / var(--font-size));
  background: url("../images/renovation/management-callout-lines.svg") center/contain no-repeat;
}

.m-feature-block__free {
  font-size: calc(18 * 1rem / var(--font-size));
  line-height: 1;
  color: var(--color__red);
}

.m-feature-block__figure img {
  display: block;
  width: 100%;
  height: auto;
}

.m-feature-block__figure--framed {
  padding-block: calc(10 * 1rem / var(--font-size));
  background-color: var(--color__white);
  margin-top: calc(24 * 1rem / var(--font-size));
}

.m-feature-block__figure--framed img {
  border-radius: calc(8 * 1rem / var(--font-size));
}

.m-feature-block__points {
  margin-top: calc(25 * 1rem / var(--font-size));
}

.m-feature-block__figure:not(.m-feature-block__figure--framed) + .m-feature-block__points {
  margin-top: calc(55 * 1rem / var(--font-size));
}

.m-feature-block__point {
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.5714285714;
}

.m-feature-block__point + .m-feature-block__point {
  margin-top: calc(6 * 1rem / var(--font-size));
}

.m-feature-block__point::after {
  content: "";
  display: block;
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--color__red) 0 4px, transparent 4px 8px);
  margin-top: calc(7 * 1rem / var(--font-size));
}

.m-feature-badge {
  display: grid;
  place-items: center;
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
  color: var(--color__brown-dark);
  text-align: center;
  white-space: nowrap;
  padding: calc(24 * 1rem / var(--font-size)) calc(30 * 1rem / var(--font-size)) calc(22 * 1rem / var(--font-size));
  border: 1px solid var(--color__gray-mid);
  border-radius: calc(6 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-faq {
  padding-block: calc(100 * 1rem / var(--font-size));
}

.m-faq__lead {
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.8571428571;
  letter-spacing: 0.13em;
  padding-top: calc(18 * 1rem / var(--font-size));
}

.m-faq__list {
  display: grid;
  align-content: start;
  gap: calc(19 * 1rem / var(--font-size));
  max-width: calc(930 * 1rem / var(--font-size));
  min-height: calc(426 * 1rem / var(--font-size));
  margin-top: calc(68 * 1rem / var(--font-size));
}

.m-faq--beige {
  background-color: var(--color__beige-pale);
}

.m-faq-item {
  font-family: var(--font-family__noto-sans-jp);
  border-bottom: 1px solid var(--color__gray-line);
}

.m-faq-item__question {
  display: grid;
  grid-template-columns: calc(36 * 1rem / var(--font-size)) 1fr calc(24 * 1rem / var(--font-size));
  align-items: center;
  -moz-column-gap: calc(20 * 1rem / var(--font-size));
       column-gap: calc(20 * 1rem / var(--font-size));
  width: 100%;
  color: var(--color__white);
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.8125;
  text-align: left;
  padding: calc(25 * 1rem / var(--font-size));
  border-radius: calc(8 * 1rem / var(--font-size)) calc(8 * 1rem / var(--font-size)) 0 0;
  background-color: var(--color__red);
}

.m-faq-item__mark {
  display: grid;
  place-items: center;
  width: calc(36 * 1rem / var(--font-size));
  height: calc(36 * 1rem / var(--font-size));
  color: var(--color__red);
  font-family: var(--font-family__outfit);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1;
  border-radius: 50%;
  background-color: var(--color__white);
}

.m-faq-item__mark--answer {
  color: var(--color__black);
  border: 1px solid var(--color__black);
}

.m-faq-item__icon {
  width: calc(24 * 1rem / var(--font-size));
  height: calc(24 * 1rem / var(--font-size));
}

.m-faq-item__question[aria-expanded=true] .m-faq-item__icon--plus,
.m-faq-item__question[aria-expanded=false] .m-faq-item__icon--minus {
  display: none;
}

.m-faq-item__answer {
  display: grid;
  grid-template-columns: calc(36 * 1rem / var(--font-size)) 1fr;
  align-items: center;
  -moz-column-gap: calc(20 * 1rem / var(--font-size));
       column-gap: calc(20 * 1rem / var(--font-size));
  padding: calc(25 * 1rem / var(--font-size));
}

.m-faq-item__answer-text {
  color: var(--color__black);
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.8125;
}

.m-fact {
  padding-block: calc(10 * 1rem / var(--font-size)) calc(100 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-fact__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: calc(3 * 1rem / var(--font-size));
  -moz-column-gap: calc(40 * 1rem / var(--font-size));
       column-gap: calc(40 * 1rem / var(--font-size));
  max-width: calc(935 * 1rem / var(--font-size));
  width: 100%;
  margin-top: calc(27 * 1rem / var(--font-size));
}

.m-fact-card {
  position: relative;
  padding-top: calc(32 * 1rem / var(--font-size));
}

.m-fact-card__num {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  font-family: var(--font-family__outfit);
  font-size: calc(40 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  color: var(--color__red);
  text-align: center;
  -webkit-text-stroke: 10px var(--color__white);
  paint-order: stroke fill;
  z-index: 1;
}

.m-fact-card__body {
  display: grid;
  align-content: center;
  justify-items: center;
  min-height: calc(213 * 1rem / var(--font-size));
  padding-block: calc(26 * 1rem / var(--font-size)) calc(23 * 1rem / var(--font-size));
  border: 1px solid var(--color__red);
  border-radius: calc(4 * 1rem / var(--font-size));
  background-color: var(--color__white);
  box-shadow: 0 calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) var(--color__black-alpha25);
}

.m-fact-card__title {
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6111111111;
  text-align: center;
}

.m-fact-card__text {
  max-width: calc(331 * 1rem / var(--font-size));
  width: 100%;
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.5714285714;
  margin-top: calc(15 * 1rem / var(--font-size));
}

.m-estimation__head {
  padding-block: calc(51 * 1rem / var(--font-size)) calc(99 * 1rem / var(--font-size));
}

.m-estimation__head .m-heading__title,
.m-estimation__head .m-heading__lead {
  white-space: nowrap;
}

.m-estimation__body {
  padding-block: calc(100 * 1rem / var(--font-size));
  background: url("../images/consider/cost-bg.jpg") center top/cover no-repeat;
}

.m-estimation__intro {
  display: grid;
  gap: calc(40 * 1rem / var(--font-size));
  max-width: calc(929 * 1rem / var(--font-size));
  width: 100%;
}

.m-estimation__text {
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.5714285714;
  line-break: strict;
}

.m-estimation__text p + p {
  padding-top: calc(22 * 1rem / var(--font-size));
}

.m-estimation__band {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: calc(66 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-estimation__band-icon {
  flex-shrink: 0;
  width: calc(30 * 1rem / var(--font-size));
  height: calc(35 * 1rem / var(--font-size));
}

.m-estimation__band-icon img {
  width: 100%;
  height: 100%;
}

.m-estimation__band-text {
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 2.7;
  padding-top: calc(12 * 1rem / var(--font-size));
}

.m-estimation__band-num {
  font-family: var(--font-family__outfit);
  font-size: calc(41 * 1rem / var(--font-size));
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  color: var(--color__red);
}

.m-estimation__band-accent {
  color: var(--color__red);
}

.m-estimation__note {
  font-size: calc(13 * 1rem / var(--font-size));
  line-height: 1.6153846154;
  line-break: strict;
}

.m-estimation__body .m-compare {
  margin-top: calc(50 * 1rem / var(--font-size));
}

.m-estimation__guide {
  margin-top: calc(51 * 1rem / var(--font-size));
}

.m-estimation__guide .m-heading__lead {
  max-width: calc(931 * 1rem / var(--font-size));
  line-break: strict;
}

.m-estimation__guide .m-cost-guide {
  margin-top: calc(99 * 1rem / var(--font-size));
}

.m-estimation__closing {
  display: grid;
  gap: calc(40 * 1rem / var(--font-size));
  margin-top: calc(100 * 1rem / var(--font-size));
}

.m-estimation__closing-text {
  max-width: calc(854 * 1rem / var(--font-size));
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.5714285714;
  line-break: strict;
}

.m-esg-card {
  --_color: var(--color__red);
  --_accent: var(--color__red);
  display: grid;
  justify-items: start;
  max-width: calc(294 * 1rem / var(--font-size));
  width: 100%;
}

.m-esg-card__head {
  display: grid;
  grid-template-columns: calc(46 * 1rem / var(--font-size)) auto;
  align-items: center;
  -moz-column-gap: calc(11 * 1rem / var(--font-size));
       column-gap: calc(11 * 1rem / var(--font-size));
  min-height: calc(52 * 1rem / var(--font-size));
}

.m-esg-card__num {
  display: grid;
  place-items: center;
  width: calc(46 * 1rem / var(--font-size));
  height: calc(46 * 1rem / var(--font-size));
  font-family: var(--font-family__outfit);
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.4444444444;
  letter-spacing: 0.05em;
  color: var(--_color);
  border: 1px solid var(--_color);
  border-radius: 50%;
  background-color: var(--color__white);
}

.m-esg-card__title {
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.05em;
  color: var(--color__brown-dark);
}

.m-esg-card__title-line {
  display: block;
}

.m-esg-card__accent {
  font-weight: 700;
  color: var(--_accent);
}

.m-esg-card__text {
  max-width: calc(285 * 1rem / var(--font-size));
  min-height: calc(154 * 1rem / var(--font-size));
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.5714285714;
  letter-spacing: 0.05em;
  line-break: strict;
  padding-top: calc(16 * 1rem / var(--font-size));
  padding-left: calc(26 * 1rem / var(--font-size));
}

.m-esg-card__tags {
  display: flex;
  justify-self: center;
  -moz-column-gap: calc(14 * 1rem / var(--font-size));
       column-gap: calc(14 * 1rem / var(--font-size));
  padding-top: calc(17 * 1rem / var(--font-size));
  padding-left: calc(15 * 1rem / var(--font-size));
}

.m-esg-card__tag {
  display: grid;
  place-items: center;
  min-width: calc(120 * 1rem / var(--font-size));
  min-height: calc(26 * 1rem / var(--font-size));
  font-family: var(--font-family__outfit-zen-kaku);
  font-size: calc(13 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6153846154;
  letter-spacing: 0;
  color: var(--color__brown-dark);
  padding: 0 calc(8 * 1rem / var(--font-size)) 0 calc(9 * 1rem / var(--font-size));
  border: 1px solid var(--_color);
  border-radius: calc(8 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-employee-voice {
  display: grid;
  grid-template-rows: auto 1fr;
}

.m-employee-voice__head {
  display: grid;
  grid-template-columns: calc(362 * 1rem / var(--font-size)) calc(143 * 1rem / var(--font-size));
  align-items: end;
}

.m-employee-voice__profile {
  min-height: calc(48 * 1rem / var(--font-size));
  color: var(--color__white);
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6111111111;
  text-align: center;
  padding: calc(10 * 1rem / var(--font-size)) calc(10 * 1rem / var(--font-size)) calc(9 * 1rem / var(--font-size)) calc(7 * 1rem / var(--font-size));
  border-radius: calc(8 * 1rem / var(--font-size)) calc(8 * 1rem / var(--font-size)) 0 0;
  background-color: var(--color__red);
}

.m-employee-voice__num {
  font-family: var(--font-family__outfit);
  line-height: 1;
}

.m-employee-voice__illust {
  width: calc(143 * 1rem / var(--font-size));
  aspect-ratio: 143/119;
}

.m-employee-voice__illust img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-employee-voice__body {
  display: grid;
  align-content: start;
  padding: calc(20 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-employee-voice__catch {
  font-size: calc(22 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5909090909;
  letter-spacing: 0.08em;
}

.m-employee-voice__text {
  min-height: calc(190 * 1rem / var(--font-size));
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.9375;
  line-break: strict;
  padding-top: calc(20 * 1rem / var(--font-size));
}

.m-employee-voice__note {
  color: var(--color__red);
  font-size: calc(18 * 1rem / var(--font-size));
  line-height: 1.5555555556;
  letter-spacing: 0.07em;
  padding-top: calc(19 * 1rem / var(--font-size));
  border-top: 1px solid var(--color__red);
  margin-top: calc(20 * 1rem / var(--font-size));
}

.m-drawer {
  --_duration: var(--duration);
  --_top: calc(
    var(--wp-admin--admin-bar--height, 0px) + calc(103 * 1rem / var(--font-size))
  );
  position: fixed;
  inset: 0;
  visibility: hidden;
  transition: visibility var(--_duration);
  z-index: var(--z-index__drawer);
}
.m-drawer.is-visible {
  visibility: visible;
}

.m-drawer__backdrop {
  position: fixed;
  inset: 0;
}

.m-drawer__panel {
  position: absolute;
  top: var(--_top);
  right: 0;
  width: 100%;
  max-width: calc(344 * 1rem / var(--font-size));
  max-height: calc(100dvh - var(--_top));
  overflow-y: auto;
  overscroll-behavior: contain;
  font-family: var(--font-family__zen-kaku-gothic-new);
  color: var(--color__brown-dark);
  padding-bottom: calc(30 * 1rem / var(--font-size));
  border: 1px solid var(--color__gray-pale);
  border-radius: calc(16 * 1rem / var(--font-size)) 0 0 calc(16 * 1rem / var(--font-size));
  background-color: var(--color__white);
  box-shadow: 0 calc(10 * 1rem / var(--font-size)) calc(24 * 1rem / var(--font-size)) calc(-8 * 1rem / var(--font-size)) var(--color__black-alpha8);
  opacity: 0;
  translate: 100% 0;
  transition: opacity var(--_duration), translate var(--_duration);
}

.m-drawer.is-visible .m-drawer__panel {
  opacity: 1;
  translate: 0 0;
}

.m-drawer__head {
  display: flex;
  justify-content: flex-end;
  padding: calc(6 * 1rem / var(--font-size)) calc(11 * 1rem / var(--font-size));
}

.m-drawer__close {
  display: grid;
  place-items: center;
  width: calc(44 * 1rem / var(--font-size));
  height: calc(44 * 1rem / var(--font-size));
  color: var(--color__red);
}

.m-drawer__close-icon {
  width: calc(34 * 1rem / var(--font-size));
  height: calc(34 * 1rem / var(--font-size));
}

.m-drawer__links {
  padding-top: 1px;
}

.m-drawer__links > li:not(:last-child) {
  padding-bottom: 1px;
}

.m-drawer__links > li + li {
  padding-top: 1px;
  border-top: 1px solid var(--color__gray-pale);
}

.m-drawer__link {
  display: flex;
  align-items: center;
  min-height: calc(59 * 1rem / var(--font-size));
  font-size: calc(17 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.14em;
  padding: calc(16 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size));
}

.m-drawer__link--narrow {
  letter-spacing: 0.11em;
}

.m-drawer__group {
  padding-inline: calc(16 * 1rem / var(--font-size));
  transition: padding var(--_duration);
}

.m-drawer__group[data-expanded=true] {
  padding-block: calc(16 * 1rem / var(--font-size));
}

.m-drawer__toggle {
  display: flex;
  align-items: center;
  gap: calc(12 * 1rem / var(--font-size));
  width: 100%;
  height: calc(54 * 1rem / var(--font-size));
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.14em;
  text-align: left;
  padding-inline: calc(4 * 1rem / var(--font-size));
}

.m-drawer__toggle-icon {
  flex-shrink: 0;
  width: calc(24 * 1rem / var(--font-size));
  height: calc(24 * 1rem / var(--font-size));
  color: var(--color__black);
}

.m-drawer__toggle-icon--minus {
  display: none;
}

.m-drawer__group[data-expanded=true] .m-drawer__toggle-icon--plus {
  display: none;
}

.m-drawer__group[data-expanded=true] .m-drawer__toggle-icon--minus {
  display: block;
}

.m-drawer__sub {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows var(--_duration);
}

.m-drawer__group[data-expanded=true] .m-drawer__sub {
  grid-template-rows: 1fr;
}

.m-drawer__sub-inner {
  overflow: hidden;
}

.m-drawer__sub-links {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  padding-left: calc(12 * 1rem / var(--font-size));
  border-top: 1.5px solid var(--color__red-dark);
}

.m-drawer__sub-links--single {
  grid-template-columns: 1fr;
}

.m-drawer__sub-link {
  display: flex;
  align-items: center;
  gap: calc(12 * 1rem / var(--font-size));
  height: calc(48 * 1rem / var(--font-size));
  font-size: calc(15 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.11em;
  border-bottom: 0.5px solid var(--color__gray-pale);
}

.m-drawer__sub-item:last-child .m-drawer__sub-link,
.m-drawer__sub-item:nth-child(odd):nth-last-child(2) .m-drawer__sub-link {
  border-bottom: 0;
}

.m-drawer__sub-links--single .m-drawer__sub-item:nth-child(odd):nth-last-child(2) .m-drawer__sub-link {
  border-bottom: 0.5px solid var(--color__gray-pale);
}

.m-drawer__sub-icon {
  flex-shrink: 0;
  width: calc(22 * 1rem / var(--font-size));
  height: calc(22 * 1rem / var(--font-size));
  color: var(--color__red-dark);
}

.m-drawer__cta {
  display: grid;
  gap: calc(14 * 1rem / var(--font-size));
  padding: calc(43 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
}

.m-drawer__sns {
  --_min-size__link: 44px;
}

.m-drawer__tel,
.m-drawer__line {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(8 * 1rem / var(--font-size));
  height: calc(52 * 1rem / var(--font-size));
  font-weight: 700;
  color: var(--color__white);
  border-radius: 9999px;
}

.m-drawer__tel {
  font-family: var(--font-family__outfit);
  font-size: calc(18 * 1rem / var(--font-size));
  line-height: 1.26;
  background-color: var(--color__red);
}

.m-drawer__tel-icon {
  width: calc(20 * 1rem / var(--font-size));
  height: calc(20 * 1rem / var(--font-size));
}

.m-drawer__line {
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.45;
  background-color: var(--color__green);
}

.m-drawer__line-icon {
  width: calc(24 * 1rem / var(--font-size));
  height: calc(24 * 1rem / var(--font-size));
}

.m-data-table {
  display: grid;
  width: 100%;
  max-width: calc(929 * 1rem / var(--font-size));
}

.m-data-table__row {
  display: grid;
  grid-template-columns: calc(201 * 1rem / var(--font-size)) calc(634 * 1rem / var(--font-size));
  -moz-column-gap: calc(40 * 1rem / var(--font-size));
       column-gap: calc(40 * 1rem / var(--font-size));
  align-items: center;
  padding-top: calc(35 * 1rem / var(--font-size));
  padding-bottom: calc(34 * 1rem / var(--font-size));
  border-bottom: 1px solid var(--color__sand);
}

.m-data-table__row:first-child {
  padding-top: 0;
}

.m-data-table__term {
  color: var(--color__red);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.4375;
  letter-spacing: 0.05em;
}

.m-data-table__desc {
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.4285714286;
  letter-spacing: 0.05em;
}

.m-data-table--history {
  font-family: var(--font-family__noto-sans-jp);
  padding-block: calc(30 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-data-table--history .m-data-table__term {
  font-size: calc(15 * 1rem / var(--font-size));
  line-height: 1.6;
}

.m-data-table--history .m-data-table__desc {
  font-weight: 400;
  line-height: 1.6;
}

.m-dashed-list {
  display: grid;
  gap: calc(11 * 1rem / var(--font-size));
  padding-left: calc(10 * 1rem / var(--font-size));
}

.m-dashed-list__item {
  position: relative;
  font-size: calc(13 * 1rem / var(--font-size));
  line-height: 1.6153846154;
  padding-bottom: calc(4 * 1rem / var(--font-size));
}

.m-dashed-list__item::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--color__brown-dark) 0 2px, transparent 2px 4px);
  background-position: -1px 0;
}

.m-coverage {
  padding-block: calc(50 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-coverage__body {
  position: relative;
  display: grid;
  grid-template-areas: "head head" "areas map";
  grid-template-columns: calc(473 * 1rem / var(--font-size)) calc(412 * 1rem / var(--font-size));
  -moz-column-gap: calc(49 * 1rem / var(--font-size));
       column-gap: calc(49 * 1rem / var(--font-size));
  max-width: calc(934 * 1rem / var(--font-size));
}

.m-coverage__head {
  grid-area: head;
}

.m-coverage__title {
  font-size: calc(34 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.1176470588;
  letter-spacing: 0.12em;
}

.m-coverage__lead {
  max-width: calc(792 * 1rem / var(--font-size));
  min-height: calc(138 * 1rem / var(--font-size));
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.5714285714;
  letter-spacing: 0.13em;
  padding-top: calc(30 * 1rem / var(--font-size));
}

.m-coverage__areas {
  display: grid;
  grid-area: areas;
  align-content: start;
  gap: calc(20 * 1rem / var(--font-size));
  margin-top: calc(20 * 1rem / var(--font-size));
}

.m-coverage__area-title {
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
  color: var(--color__red);
}

.m-coverage__area-text {
  font-size: calc(18 * 1rem / var(--font-size));
  line-height: 1.6111111111;
  margin-top: calc(2 * 1rem / var(--font-size));
}

.m-coverage__map {
  overflow: clip;
  grid-area: map;
  align-self: end;
  height: calc(529 * 1rem / var(--font-size));
  border: 1px solid var(--color__gray-light);
  border-radius: calc(20 * 1rem / var(--font-size));
  background-color: var(--color__slate);
}

.m-coverage__map iframe {
  display: block;
  width: 100%;
  height: 100%;
}

.m-coverage__badge {
  position: absolute;
  top: calc(56 * 1rem / var(--font-size));
  left: calc(820 * 1rem / var(--font-size));
  display: grid;
  place-items: center;
  width: calc(154 * 1rem / var(--font-size));
  height: calc(154 * 1rem / var(--font-size));
  color: var(--color__white);
  font-size: calc(23 * 1rem / var(--font-size));
  font-weight: 900;
  line-height: 1.4782608696;
  letter-spacing: 0.18em;
  text-align: center;
  padding-bottom: calc(6 * 1rem / var(--font-size));
  background: url("../images/renovation/area-badge.svg") center/contain no-repeat;
  rotate: -5.28deg;
}

.m-cost-panel {
  --_color: var(--color__red);
  --_bg: var(--color__beige-pale);
  --_label-color: var(--color__white);
  --_list-width: 461;
  --_note-gap: 13;
  --_title-row-padding-right: 28;
  --_list-height: 0;
  display: grid;
  max-width: calc(929 * 1rem / var(--font-size));
  width: 100%;
  padding-block: calc(40 * 1rem / var(--font-size));
  border: 1px solid var(--_color);
  border-radius: 0 calc(16 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  background-color: var(--_bg);
}

.m-cost-panel--building {
  --_color: var(--color__indigo-deep);
  --_bg: var(--color__indigo-mist);
  --_label-color: var(--color__indigo-mist);
  --_list-width: 436;
  --_list-height: 174;
  --_note-gap: 10;
}

.m-cost-panel--factory {
  --_color: var(--color__green-deep);
  --_bg: var(--color__green-mist);
  --_label-color: var(--color__green-mist);
  --_list-width: 238;
  --_list-height: 228;
  --_note-gap: 10;
  --_title-row-padding-right: 42;
}

.m-cost-panel .m-price-box {
  --_color: inherit;
}

.m-cost-panel__head {
  display: grid;
  gap: calc(13 * 1rem / var(--font-size));
}

.m-cost-panel__label {
  justify-self: start;
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.625;
  color: var(--_label-color);
  padding: calc(10 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size));
  border-radius: 0 calc(8 * 1rem / var(--font-size)) 0 0;
  background-color: var(--_color);
}

.m-cost-panel__title-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  -moz-column-gap: calc(10 * 1rem / var(--font-size));
       column-gap: calc(10 * 1rem / var(--font-size));
  padding-right: calc(var(--_title-row-padding-right) * 1rem / var(--font-size));
  padding-left: calc(40 * 1rem / var(--font-size));
}

.m-cost-panel__title {
  font-family: var(--font-family__outfit-zen-kaku);
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.9;
  letter-spacing: 0.13em;
  color: var(--_color);
  white-space: nowrap;
}

.m-cost-panel__condition {
  font-family: var(--font-family__outfit-zen-kaku);
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.5714285714;
  white-space: nowrap;
}

.m-cost-panel__middle {
  display: flex;
  align-items: center;
  -moz-column-gap: calc(30 * 1rem / var(--font-size));
       column-gap: calc(30 * 1rem / var(--font-size));
  margin-top: calc(30 * 1rem / var(--font-size));
}

.m-cost-panel__price {
  flex-shrink: 0;
  padding-left: calc(35 * 1rem / var(--font-size));
}

.m-cost-panel__list-block {
  display: grid;
  flex: 0 1 calc(var(--_list-width) * 1rem / var(--font-size));
  gap: calc(11 * 1rem / var(--font-size));
}

.m-cost-panel__list-title {
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6111111111;
}

.m-cost-panel__list-text {
  font-size: calc(13 * 1rem / var(--font-size));
  line-height: 2;
  line-break: strict;
  padding-left: calc(10 * 1rem / var(--font-size));
}

.m-cost-panel__text {
  max-width: calc(854 * 1rem / var(--font-size));
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.5714285714;
  letter-spacing: 0.05em;
  line-break: strict;
  padding-left: calc(35 * 1rem / var(--font-size));
  margin-top: calc(30 * 1rem / var(--font-size));
}

.m-cost-panel__note {
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(12 * 1rem / var(--font-size));
  font-weight: 350;
  line-height: 1.5833333333;
  color: var(--color__brown-dark-alpha67);
  white-space: nowrap;
  padding-left: calc(35 * 1rem / var(--font-size));
  margin-top: calc(var(--_note-gap) * 1rem / var(--font-size));
}

.m-cost-guide {
  display: grid;
  gap: calc(9 * 1rem / var(--font-size));
}

.m-cost-guide__tabs {
  display: grid;
  grid-template-columns: repeat(3, calc(203 * 1rem / var(--font-size)));
  -moz-column-gap: calc(10 * 1rem / var(--font-size));
       column-gap: calc(10 * 1rem / var(--font-size));
}

.m-cost-guide__tab {
  --_color: var(--color__red);
  --_bg: var(--color__beige-pale);
  --_selected: var(--color__red);
  display: grid;
  place-items: center;
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6111111111;
  letter-spacing: 0.02em;
  color: var(--color__brown-dark);
  text-align: center;
  padding: calc(14 * 1rem / var(--font-size)) calc(14 * 1rem / var(--font-size)) calc(15 * 1rem / var(--font-size));
  border: 1px solid var(--_color);
  border-radius: calc(16 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) 0 0;
  background-color: var(--_bg);
}

.m-cost-guide__tab--building {
  --_color: var(--color__indigo);
  --_bg: var(--color__indigo-mist);
  --_selected: var(--color__indigo-deep);
}

.m-cost-guide__tab--factory {
  --_color: var(--color__green-vivid);
  --_bg: var(--color__green-mist);
  --_selected: var(--color__green-deep);
}

.m-cost-guide__tab[aria-selected=true] {
  color: var(--color__white);
  border-color: var(--_selected);
  background-color: var(--_selected);
}

.m-contact {
  padding-block: calc(150 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-contact__lead {
  position: relative;
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
  padding-top: calc(72 * 1rem / var(--font-size));
}
.m-contact__lead::before {
  content: "";
  position: absolute;
  top: calc(26 * 1rem / var(--font-size));
  left: 50%;
  width: calc(200 * 1rem / var(--font-size));
  height: calc(5 * 1rem / var(--font-size));
  background-color: var(--color__red);
  translate: -50% 0;
}

.m-contact__actions {
  display: grid;
  grid-template-columns: minmax(0, 465fr) minmax(0, 467fr);
  align-items: start;
  -moz-column-gap: calc(35 * 1rem / var(--font-size));
       column-gap: calc(35 * 1rem / var(--font-size));
  max-width: calc(967 * 1rem / var(--font-size));
  padding-top: calc(62 * 1rem / var(--font-size));
  margin-inline: auto;
}

.m-contact--narrow {
  padding-block: calc(100 * 1rem / var(--font-size)) calc(68 * 1rem / var(--font-size));
}

.m-contact--narrow .m-contact__actions {
  -moz-column-gap: calc(19 * 1rem / var(--font-size));
       column-gap: calc(19 * 1rem / var(--font-size));
  max-width: calc(951 * 1rem / var(--font-size));
  margin-inline: 0;
}

.m-contact--narrow .m-contact-card__note,
.m-contact--consider .m-contact-card__note {
  font-family: var(--font-family__zen-kaku-gothic-new);
}

.m-contact--beige,
.m-contact--consider {
  background-color: var(--color__beige-pale);
}

.m-contact-form {
  padding-block: calc(75 * 1rem / var(--font-size)) calc(125 * 1rem / var(--font-size));
  margin-top: calc(10 * 1rem / var(--font-size));
}

.m-contact-form__card {
  position: relative;
  display: grid;
  grid-template-columns: 100%;
  row-gap: calc(25 * 1rem / var(--font-size));
  padding: calc(50 * 1rem / var(--font-size)) calc(100 * 1rem / var(--font-size)) calc(54 * 1rem / var(--font-size));
  border-radius: calc(30 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-contact-form__rows {
  display: grid;
  grid-template-columns: 100%;
  row-gap: calc(31 * 1rem / var(--font-size));
}

.m-contact-form__row {
  display: grid;
  grid-template-columns: 100%;
}

.m-contact-form__label-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: calc(20 * 1rem / var(--font-size));
       column-gap: calc(20 * 1rem / var(--font-size));
  row-gap: calc(6 * 1rem / var(--font-size));
}

.m-contact-form__label-wrap > p {
  display: contents;
}

.m-contact-form__label-wrap br {
  display: none;
}

.m-contact-form__label {
  color: var(--color__black);
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.3333333333;
}

.m-contact-form__badge {
  display: inline-flex;
  align-items: center;
  color: var(--color__white);
  font-size: calc(12 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.3333333333;
  padding: calc(3 * 1rem / var(--font-size)) calc(10 * 1rem / var(--font-size));
  background-color: var(--color__red);
}

.m-contact-form__badge--optional {
  background-color: var(--color__gray-graphite);
}

.m-contact-form__note {
  color: var(--color__black);
  font-size: calc(10 * 1rem / var(--font-size));
  line-height: 1.4;
  margin-top: calc(9 * 1rem / var(--font-size));
}

.m-contact-form__field {
  margin-top: calc(10 * 1rem / var(--font-size));
}

.m-contact-form__field > p {
  display: contents;
}

.m-contact-form__field .wpcf7-form-control-wrap {
  display: block;
}

.m-contact-form__field input:not([type=file]),
.m-contact-form__field select,
.m-contact-form__field textarea {
  width: 100%;
  color: var(--color__black);
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.375;
  padding-inline: calc(24 * 1rem / var(--font-size));
  border: 1px solid var(--color__gray-silver);
  border-radius: calc(5 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-contact-form__field input:not([type=file]),
.m-contact-form__field select {
  height: calc(55 * 1rem / var(--font-size));
}

.m-contact-form__field select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding-right: calc(60 * 1rem / var(--font-size));
  background-image: url("../images/common/icon-chevron-down.svg");
  background-position: right calc(19 * 1rem / var(--font-size)) center;
  background-size: calc(21 * 1rem / var(--font-size)) calc(11 * 1rem / var(--font-size));
  background-repeat: no-repeat;
  cursor: pointer;
}

.m-contact-form__field textarea {
  height: calc(168 * 1rem / var(--font-size));
  padding-block: calc(17 * 1rem / var(--font-size));
  resize: vertical;
}

.m-contact-form__field ::-moz-placeholder {
  color: var(--color__gray-light);
}

.m-contact-form__field ::placeholder {
  color: var(--color__gray-light);
}

.m-contact-form__field :focus-visible {
  outline: 2px solid var(--color__red);
  outline-offset: 2px;
}

.m-contact-form__field .wpcf7-not-valid {
  border-color: var(--color__red);
}

.m-contact-form__field .wpcf7-not-valid-tip {
  display: block;
  color: var(--color__red);
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.5714285714;
  margin-top: calc(8 * 1rem / var(--font-size));
}

.m-contact-form__field:has(.m-contact-form__file) {
  margin-top: calc(21 * 1rem / var(--font-size));
}

.m-contact-form__file > p {
  display: contents;
}

.m-contact-form__file br {
  display: none;
}

.m-contact-form__file {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: calc(1 * 1rem / var(--font-size));
       column-gap: calc(1 * 1rem / var(--font-size));
  row-gap: calc(8 * 1rem / var(--font-size));
  padding-left: calc(4 * 1rem / var(--font-size));
}

.m-contact-form__file-button {
  display: grid;
  place-items: center;
  width: calc(171 * 1rem / var(--font-size));
  color: var(--color__black);
  font-size: calc(18 * 1rem / var(--font-size));
  line-height: 1.3333333333;
  height: calc(50 * 1rem / var(--font-size));
  border-radius: calc(10 * 1rem / var(--font-size));
  background-color: var(--color__gray-light);
  cursor: pointer;
  transition: opacity var(--duration);
}
.m-contact-form__file-button:focus-visible {
  opacity: var(--opacity__hover);
}

.m-contact-form__file-name {
  max-width: calc(151 * 1rem / var(--font-size));
  width: 100%;
  color: var(--color__black);
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.3571428571;
  text-align: center;
}

.m-contact-form__submit {
  display: grid;
  justify-items: center;
}

.m-contact-form__submit > p {
  position: relative;
  display: grid;
  justify-items: center;
  width: 100%;
}

.m-contact-form__submit .wpcf7-submit {
  max-width: calc(439 * 1rem / var(--font-size));
  width: 100%;
  height: calc(56 * 1rem / var(--font-size));
  color: var(--color__white);
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5714285714;
  text-align: center;
  padding-inline: calc(80 * 1rem / var(--font-size));
  border-radius: 9999px;
  background-color: var(--color__red);
  background-image: url("../images/common/icon-send.svg");
  background-position: left calc(52 * 1rem / var(--font-size)) center;
  background-size: calc(19 * 1rem / var(--font-size)) calc(19 * 1rem / var(--font-size));
  background-repeat: no-repeat;
  cursor: pointer;
  transition: opacity var(--duration);
}
.m-contact-form__submit .wpcf7-submit:focus-visible {
  opacity: var(--opacity__hover);
}

.m-contact-form__submit .wpcf7-spinner {
  display: none;
}

.m-contact-form .wpcf7-form[data-status=submitting] .wpcf7-submit {
  pointer-events: none;
}

.m-contact-form__ssl {
  color: var(--color__black);
  font-size: calc(10 * 1rem / var(--font-size));
  line-height: 1.4;
  text-align: center;
}

.m-contact-form .wpcf7-response-output {
  color: var(--color__red);
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.5714285714;
  text-align: center;
  padding: calc(16 * 1rem / var(--font-size));
  border: 1px solid var(--color__red);
  border-radius: calc(5 * 1rem / var(--font-size));
  margin-top: calc(24 * 1rem / var(--font-size));
}

.m-contact-form .wpcf7-form[data-status=sent] .wpcf7-response-output {
  display: none;
}

.m-contact-card {
  --_color__main: var(--color__red);
  display: grid;
  grid-template-areas: "catch" "button" "note";
  justify-items: center;
}

.m-contact-card--web {
  --_color__main: var(--color__brown-dark);
}

.m-contact-card__catch {
  position: relative;
  grid-area: catch;
  width: 100%;
  max-width: calc(404 * 1rem / var(--font-size));
  min-height: calc(59 * 1rem / var(--font-size));
  font-size: calc(17 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.4117647059;
  letter-spacing: 0.11em;
  text-align: center;
  padding-top: calc(14 * 1rem / var(--font-size));
  border: 2px solid var(--_color__main);
  border-radius: 9999px;
  background-color: var(--color__white);
  z-index: 1;
}
.m-contact-card__catch::before, .m-contact-card__catch::after {
  content: "";
  position: absolute;
  left: 50%;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  translate: -50% 0;
}
.m-contact-card__catch::before {
  top: calc(55 * 1rem / var(--font-size));
  width: calc(19 * 1rem / var(--font-size));
  height: calc(11 * 1rem / var(--font-size));
  background-color: var(--_color__main);
}
.m-contact-card__catch::after {
  top: calc(54 * 1rem / var(--font-size));
  width: calc(16 * 1rem / var(--font-size));
  height: calc(9 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-contact-card__accent {
  color: var(--color__red);
}

.m-contact-card__en {
  font-family: var(--font-family__outfit);
  line-height: 1;
}

.m-contact-card__button {
  display: flex;
  grid-area: button;
  justify-content: center;
  align-items: center;
  -moz-column-gap: calc(13 * 1rem / var(--font-size));
       column-gap: calc(13 * 1rem / var(--font-size));
  width: 100%;
  min-height: calc(79 * 1rem / var(--font-size));
  color: var(--color__white);
  padding: calc(15 * 1rem / var(--font-size)) 0 calc(10 * 1rem / var(--font-size));
  border-radius: calc(8 * 1rem / var(--font-size));
  background-color: var(--_color__main);
  margin-top: calc(-12 * 1rem / var(--font-size));
}

.m-contact-card--web .m-contact-card__button {
  max-width: calc(465 * 1rem / var(--font-size));
  padding-top: calc(10 * 1rem / var(--font-size));
}

.m-contact-card__icon {
  flex-shrink: 0;
  width: calc(24 * 1rem / var(--font-size));
  height: calc(24 * 1rem / var(--font-size));
}

.m-contact-card--web .m-contact-card__icon {
  width: calc(33 * 1rem / var(--font-size));
  height: calc(25 * 1rem / var(--font-size));
}

.m-contact-card__label {
  font-family: var(--font-family__outfit);
  font-size: calc(34 * 1rem / var(--font-size));
  font-weight: 900;
  line-height: 1.5882352941;
  letter-spacing: 0.09em;
}

.m-contact-card--web .m-contact-card__label {
  flex-shrink: 0;
  width: calc(350 * 1rem / var(--font-size));
  font-family: inherit;
  font-size: calc(28 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6071428571;
  white-space: nowrap;
  translate: 0 calc(0.7 * 1rem / var(--font-size));
}

.m-contact-card__half {
  display: inline-block;
  letter-spacing: -0.41em;
  translate: -0.25em 0;
}

.m-contact-card__note {
  grid-area: note;
  justify-self: stretch;
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.5714285714;
  margin-top: calc(26 * 1rem / var(--font-size));
}

.m-contact-card--web .m-contact-card__note {
  margin-top: calc(15 * 1rem / var(--font-size));
}

.m-construction {
  padding-block: calc(100 * 1rem / var(--font-size));
}

.m-construction__body {
  display: grid;
  gap: calc(60 * 1rem / var(--font-size));
  max-width: calc(934 * 1rem / var(--font-size));
}

.m-construction__lead {
  max-width: calc(855 * 1rem / var(--font-size));
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.5714285714;
  letter-spacing: 0.13em;
  padding-top: calc(30 * 1rem / var(--font-size));
}

.m-construction__tab-list {
  display: flex;
  justify-content: center;
  gap: calc(25 * 1rem / var(--font-size));
}

.m-construction__tab {
  display: grid;
  place-items: center;
  max-width: calc(404 * 1rem / var(--font-size));
  width: 100%;
  height: calc(90 * 1rem / var(--font-size));
  color: var(--color__red);
  font-size: calc(22 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5909090909;
  letter-spacing: 0.1em;
  text-align: center;
  padding-left: calc(10 * 1rem / var(--font-size));
  border-radius: calc(10 * 1rem / var(--font-size)) calc(10 * 1rem / var(--font-size)) 0 0;
  background-color: var(--color__beige-pale);
}

.m-construction__tab[aria-selected=true] {
  color: var(--color__white);
  background-color: var(--color__red);
}

.m-construction__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  align-items: start;
  row-gap: calc(15 * 1rem / var(--font-size));
  -moz-column-gap: calc(21 * 1rem / var(--font-size));
       column-gap: calc(21 * 1rem / var(--font-size));
  margin-top: calc(25 * 1rem / var(--font-size));
}

.m-construction-card {
  display: grid;
  max-width: calc(294 * 1rem / var(--font-size));
  align-content: start;
  gap: calc(17 * 1rem / var(--font-size));
  padding: calc(19 * 1rem / var(--font-size));
  border: 1px solid var(--color__gray-light);
  border-radius: calc(20 * 1rem / var(--font-size));
  background-color: var(--color__white);
  box-shadow: 0 calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) var(--color__black-alpha25);
}

.m-construction-card:has(.m-construction-card__toggle[aria-expanded=true]) {
  min-height: calc(844 * 1rem / var(--font-size));
  padding-bottom: calc(15 * 1rem / var(--font-size));
}

.m-construction-card__photo {
  position: relative;
  max-width: calc(254 * 1rem / var(--font-size));
  width: 100%;
  aspect-ratio: 254/150;
}

.m-construction-card__photo img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-construction-card__badge {
  position: absolute;
  top: calc(12 * 1rem / var(--font-size));
  left: calc(9 * 1rem / var(--font-size));
  display: flex;
  align-items: center;
  gap: calc(4 * 1rem / var(--font-size));
  width: calc(147 * 1rem / var(--font-size));
  height: calc(24 * 1rem / var(--font-size));
  color: var(--color__white);
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.5714285714;
  white-space: nowrap;
  padding-inline: calc(15 * 1rem / var(--font-size));
  border-radius: 9999px;
  background-color: var(--color__red);
}

.m-construction-card__badge-num {
  font-family: var(--font-family__outfit);
}

.m-construction-card__title {
  display: grid;
  font-weight: 700;
}

.m-construction-card__name {
  font-size: calc(18 * 1rem / var(--font-size));
  line-height: 1.6111111111;
}

.m-construction-card__sub {
  min-height: calc(26 * 1rem / var(--font-size));
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.625;
}

.m-construction-card__lead {
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.625;
}

.m-construction-card__toggle {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: calc(5 * 1rem / var(--font-size));
  width: 100%;
  color: var(--color__red);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.625;
  padding-top: calc(17 * 1rem / var(--font-size));
  padding-right: calc(7 * 1rem / var(--font-size));
  border-top: 1px solid var(--color__red);
}

.m-construction-card__toggle-label {
  width: calc(151 * 1rem / var(--font-size));
}

.m-construction-card__toggle-icon {
  width: calc(22 * 1rem / var(--font-size));
  height: calc(13 * 1rem / var(--font-size));
  transition: rotate var(--duration);
}

.m-construction-card__toggle[aria-expanded=false] .m-construction-card__toggle-icon {
  rotate: 180deg;
}

.m-construction-card__detail {
  padding-top: calc(17 * 1rem / var(--font-size));
}

.m-construction-card__text {
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.5714285714;
}

.m-construction-card__checks {
  display: grid;
  gap: calc(10 * 1rem / var(--font-size));
  margin-top: calc(26 * 1rem / var(--font-size));
}

.m-construction-card__check {
  display: grid;
  grid-template-columns: calc(17 * 1rem / var(--font-size)) 1fr;
  align-items: start;
  -moz-column-gap: calc(10 * 1rem / var(--font-size));
       column-gap: calc(10 * 1rem / var(--font-size));
  min-height: calc(49 * 1rem / var(--font-size));
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.6;
}

.m-construction-card__check:nth-child(even) {
  min-height: calc(47 * 1rem / var(--font-size));
}

.m-construction-card__check-mark {
  align-self: center;
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 500;
  text-align: center;
}

.m-compare {
  display: grid;
  justify-items: start;
  max-width: calc(929 * 1rem / var(--font-size));
  width: 100%;
  padding-bottom: calc(50 * 1rem / var(--font-size));
  border-radius: calc(16 * 1rem / var(--font-size)) 0 0;
  background-color: var(--color__beige-pale);
}

.m-compare__label {
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.625;
  color: var(--color__white);
  padding: calc(10 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size));
  border-radius: calc(16 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) 0 0;
  background-color: var(--color__red);
}

.m-compare__note {
  font-family: var(--font-family__outfit-zen-kaku);
  font-size: calc(12 * 1rem / var(--font-size));
  line-height: 1.5833333333;
  line-break: strict;
  padding-top: calc(15 * 1rem / var(--font-size));
  padding-inline: calc(20 * 1rem / var(--font-size));
}

.m-compare__cols {
  display: grid;
  grid-template-columns: repeat(2, calc(400 * 1rem / var(--font-size)));
  align-items: center;
  -moz-column-gap: calc(55 * 1rem / var(--font-size));
       column-gap: calc(55 * 1rem / var(--font-size));
  padding-top: calc(20 * 1rem / var(--font-size));
  padding-inline: calc(20 * 1rem / var(--font-size));
}

.m-compare__col {
  display: grid;
  gap: calc(12 * 1rem / var(--font-size));
}

.m-compare__title {
  --_gap: 4;
  display: flex;
  align-items: center;
  -moz-column-gap: calc(var(--_gap) * 1rem / var(--font-size));
       column-gap: calc(var(--_gap) * 1rem / var(--font-size));
  font-size: calc(20 * 1rem / var(--font-size));
  line-height: 1.6;
}

.m-compare__icon {
  flex-shrink: 0;
  width: calc(20 * 1rem / var(--font-size));
  height: calc(20 * 1rem / var(--font-size));
  color: var(--color__red);
}

.m-compare__title-text {
  font-weight: 700;
  color: var(--color__graphite-dark);
}

.m-compare__bar {
  display: grid;
  grid-template-columns: calc(247 * 1rem / var(--font-size)) calc(153 * 1rem / var(--font-size));
  min-height: calc(60 * 1rem / var(--font-size));
  font-family: var(--font-family__outfit-zen-kaku);
  font-size: calc(12 * 1rem / var(--font-size));
  line-height: 1.5833333333;
  text-align: center;
}

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

.m-compare__bar-item--gray {
  border-radius: 9999px 0 0 9999px;
  background-color: var(--color__gray-light);
}

.m-compare__bar-item--pink {
  border-radius: 0 9999px 9999px 0;
  background-color: var(--color__rose);
}

.m-compare__bar-item--red {
  font-weight: 700;
  color: var(--color__white);
  border-radius: 9999px;
  background-color: var(--color__red);
}

.m-compare__bar-text {
  display: block;
}

.m-compare__bar-spacer {
  display: inline-block;
}

.m-compare__point {
  --_gap: 0;
  display: flex;
  align-items: center;
  -moz-column-gap: calc(var(--_gap) * 1rem / var(--font-size));
       column-gap: calc(var(--_gap) * 1rem / var(--font-size));
  font-size: calc(14 * 1rem / var(--font-size));
  line-height: 1.5714285714;
}

.m-compare__point::before {
  content: "";
  flex-shrink: 0;
  width: calc(15 * 1rem / var(--font-size));
  height: calc(15 * 1rem / var(--font-size));
  background-color: var(--color__graphite);
  clip-path: polygon(25% 6.67%, 100% 50%, 25% 93.33%);
}

.m-compare__col--own .m-compare__title {
  --_gap: 8;
}

.m-compare__col--own .m-compare__title-text {
  color: var(--color__brown-dark);
}

.m-compare__col--own .m-compare__bar {
  grid-template-columns: 100%;
}

.m-compare__col--own .m-compare__point {
  --_gap: 5;
}

.m-company-plan {
  padding-block: calc(61 * 1rem / var(--font-size)) calc(95 * 1rem / var(--font-size));
}

.m-company-plan__body {
  max-width: calc(930 * 1rem / var(--font-size));
  padding-top: calc(36 * 1rem / var(--font-size));
}

.m-company-plan__lead {
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.9;
  letter-spacing: 0.1em;
}

.m-company-plan__list {
  display: grid;
  gap: calc(27 * 1rem / var(--font-size));
  padding-top: calc(25 * 1rem / var(--font-size));
}

.m-company-plan__item {
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.9;
  letter-spacing: 0.13em;
  text-indent: -1.13em;
  padding-left: 1.13em;
}

.m-company-plan__item::before {
  content: "✔";
}

.m-company-plan__scroll {
  width: 100%;
  max-width: calc(930 * 1rem / var(--font-size));
  overflow-x: auto;
  padding-bottom: calc(17 * 1rem / var(--font-size));
  margin-top: calc(55 * 1rem / var(--font-size));
}
@supports not selector(::-webkit-scrollbar) {
  .m-company-plan__scroll {
    scrollbar-width: thin;
    scrollbar-color: var(--color__brown-gray) var(--color__red-dark-alpha20);
  }
}

.m-company-plan__scroll::-webkit-scrollbar {
  height: 3px;
}

.m-company-plan__scroll::-webkit-scrollbar-track {
  background-color: var(--color__red-dark-alpha20);
}

.m-company-plan__scroll::-webkit-scrollbar-thumb {
  background-color: var(--color__brown-gray);
}

.m-company-plan__table {
  table-layout: fixed;
  width: calc(calc(186 + 80 * var(--_columns, 14)) * 1rem / var(--font-size));
  border-collapse: separate;
  border-spacing: 0;
}

.m-company-plan__table :is(th, td) {
  height: calc(63 * 1rem / var(--font-size));
  font-family: var(--font-family__noto-sans-jp);
  line-height: normal;
  white-space: nowrap;
  vertical-align: middle;
  border-right: 1px solid var(--color__gray-light);
  border-bottom: 1px solid var(--color__gray-light);
}

.m-company-plan__table thead :is(th, td) {
  height: calc(64 * 1rem / var(--font-size));
  border-top: 1px solid var(--color__gray-light);
}

.m-company-plan__head {
  width: calc(186 * 1rem / var(--font-size));
  color: var(--color__white);
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 700;
  text-align: left;
  padding-left: calc(24 * 1rem / var(--font-size));
  border-left: 1px solid var(--color__gray-light);
  background-color: var(--color__red-strong);
}

.m-company-plan__period {
  width: calc(80 * 1rem / var(--font-size));
  color: var(--color__white);
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  text-align: center;
  background-color: var(--color__brown-gray);
}

.m-company-plan__cell {
  color: var(--color__brown-dark);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 400;
  text-align: center;
  background-color: var(--color__pink-light);
}

.m-company-plan__table thead th:first-child {
  border-top-left-radius: calc(8 * 1rem / var(--font-size));
}

.m-company-plan__table thead th:last-child {
  border-top-right-radius: calc(8 * 1rem / var(--font-size));
}

.m-company-plan__table tbody tr:last-child th:first-child {
  border-bottom-left-radius: calc(8 * 1rem / var(--font-size));
}

.m-company-plan__table tbody tr:last-child td:last-child {
  border-bottom-right-radius: calc(8 * 1rem / var(--font-size));
}

.m-company-overview {
  padding-block: calc(110 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-company-overview__body {
  width: 100%;
  max-width: calc(929 * 1rem / var(--font-size));
  margin-top: calc(60 * 1rem / var(--font-size));
}

.m-company-overview__clients {
  padding-top: calc(35 * 1rem / var(--font-size));
}

.m-company-overview__toggle {
  display: flex;
  -moz-column-gap: calc(13 * 1rem / var(--font-size));
       column-gap: calc(13 * 1rem / var(--font-size));
  align-items: center;
  min-height: calc(45 * 1rem / var(--font-size));
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  text-align: left;
}

.m-company-overview__toggle-icon {
  flex-shrink: 0;
  width: calc(24 * 1rem / var(--font-size));
  height: calc(24 * 1rem / var(--font-size));
  color: var(--color__red);
  transition: rotate var(--duration);
}

.m-company-overview__toggle[aria-expanded=false] .m-company-overview__toggle-icon {
  rotate: 180deg;
}

.m-company-overview__clients-body {
  display: grid;
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.5714285714;
  letter-spacing: 0.05em;
  line-break: strict;
  padding-right: calc(37 * 1rem / var(--font-size));
}

.m-company-overview__clients-group:first-child {
  padding-block: calc(10 * 1rem / var(--font-size));
}

.m-company-overview__clients-text {
  padding-top: calc(22 * 1rem / var(--font-size));
}

.m-company-history {
  padding-block: calc(110 * 1rem / var(--font-size)) calc(50 * 1rem / var(--font-size));
}

.m-company-history__table {
  margin-top: calc(60 * 1rem / var(--font-size));
}

.m-company-access {
  padding-block: calc(110 * 1rem / var(--font-size)) calc(100 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-company-access__body {
  display: grid;
  grid-template-columns: calc(403 * 1rem / var(--font-size)) calc(485 * 1rem / var(--font-size));
  -moz-column-gap: calc(38 * 1rem / var(--font-size));
       column-gap: calc(38 * 1rem / var(--font-size));
  align-items: center;
  margin-top: calc(50 * 1rem / var(--font-size));
}

.m-company-access__map {
  overflow: clip;
  width: 100%;
  max-width: calc(403 * 1rem / var(--font-size));
  aspect-ratio: 403/372;
  border: 1px solid var(--color__gray-pewter);
  border-radius: calc(20 * 1rem / var(--font-size));
  background-color: var(--color__gray-haze);
  box-shadow: 0 calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) var(--color__black-alpha25);
}

.m-company-access__map iframe {
  display: block;
  width: 100%;
  height: 100%;
}

.m-company-access__info {
  display: grid;
  row-gap: calc(28 * 1rem / var(--font-size));
  align-content: start;
  min-height: calc(348 * 1rem / var(--font-size));
}

.m-company-access__head {
  display: grid;
  row-gap: calc(10 * 1rem / var(--font-size));
}

.m-company-access__name {
  color: var(--color__red);
  font-size: calc(30 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
}

.m-company-access__note {
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 400;
  line-height: 1.5714285714;
  letter-spacing: 0.05em;
}

.m-company-access__routes {
  display: grid;
  row-gap: calc(16 * 1rem / var(--font-size));
  padding-top: calc(29 * 1rem / var(--font-size));
  border-top: 1px solid var(--color__brown-dark);
}

.m-company-access__route {
  display: grid;
  row-gap: calc(14 * 1rem / var(--font-size));
}

.m-company-access__route-title {
  display: flex;
  -moz-column-gap: calc(9 * 1rem / var(--font-size));
       column-gap: calc(9 * 1rem / var(--font-size));
  align-items: center;
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.375;
}

.m-company-access__route-icon {
  flex-shrink: 0;
}

.m-company-access__route-icon--bus {
  width: calc(22 * 1rem / var(--font-size));
  height: calc(22 * 1rem / var(--font-size));
}

.m-company-access__route-icon--car {
  width: calc(20 * 1rem / var(--font-size));
  height: calc(17 * 1rem / var(--font-size));
}

.m-company-access__route-text {
  width: 100%;
  max-width: calc(464 * 1rem / var(--font-size));
  font-family: var(--font-family__outfit-zen-kaku);
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 400;
  line-height: 1.5714285714;
  letter-spacing: 0.05em;
}

.m-commitment {
  background-color: var(--color__beige-pale);
}

.m-commitment__head {
  position: relative;
  padding-block: calc(100 * 1rem / var(--font-size));
}

.m-commitment__head::after {
  content: "";
  position: absolute;
  top: calc(-25 * 1rem / var(--font-size));
  right: 0;
  width: calc(680 * 1rem / var(--font-size));
  aspect-ratio: 680/482;
  background: url("../images/consider/commitment-sun.webp") no-repeat left top/100% auto;
  pointer-events: none;
}

.m-commitment__second {
  padding-block: calc(10 * 1rem / var(--font-size)) calc(100 * 1rem / var(--font-size));
}

.m-commitment .m-accent-box {
  --_radius-top-right: 4;
  margin-top: calc(24 * 1rem / var(--font-size));
}

.m-commitment__worries {
  display: grid;
  row-gap: calc(20 * 1rem / var(--font-size));
}

.m-commitment__worry {
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1;
}

.m-commitment__price {
  padding-bottom: calc(100 * 1rem / var(--font-size));
}

.m-commitment__price .l-2-columns-pc {
  --_width__left: 314;
  --_width__right: 802;
  --_column-gap: 0;
}

.m-commitment__price-title {
  font-size: calc(30 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.7;
}

.m-commitment__price-line {
  display: block;
}

.m-commitment__price-line--dotted {
  position: relative;
  margin-top: calc(23 * 1rem / var(--font-size));
}

.m-commitment__price-line--dotted::before {
  content: "・・・・"/"";
  position: absolute;
  top: calc(-33 * 1rem / var(--font-size));
  left: 0;
  letter-spacing: -0.03em;
  color: var(--color__red);
  white-space: nowrap;
}

.m-commitment__price-line--dotted + .m-commitment__price-line {
  margin-top: calc(9 * 1rem / var(--font-size));
}

.m-commitment__price-body {
  min-height: calc(328 * 1rem / var(--font-size));
}

.m-commitment__price-text {
  max-width: calc(613 * 1rem / var(--font-size));
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 2.375;
  line-break: strict;
}

.m-centered-heading {
  --_align: center;
  --_gap: 10;
  --_en-font-family: var(--font-family__outfit);
  --_en-font-size: 21;
  --_en-font-weight: 700;
  --_en-line-height: 32;
  --_en-letter-spacing: 0.18em;
  --_en-color: var(--color__red);
  --_en-indent: var(--_en-letter-spacing);
  --_title-font-size: 34;
  --_title-font-weight: 700;
  --_title-line-height: 62;
  --_title-letter-spacing: 0.02em;
  --_title-color: var(--color__brown-dark);
  --_title-indent: var(--_title-letter-spacing);
  --_en-shift: 1;
  --_title-shift: 1;
  display: grid;
  justify-items: var(--_align);
  row-gap: calc(var(--_gap) * 1rem / var(--font-size));
  text-align: var(--_align);
}

.m-centered-heading__en {
  font-family: var(--_en-font-family);
  font-size: calc(var(--_en-font-size) * 1rem / var(--font-size));
  font-weight: var(--_en-font-weight);
  line-height: calc(var(--_en-line-height) / var(--_en-font-size));
  letter-spacing: var(--_en-letter-spacing);
  color: var(--_en-color);
  padding-left: var(--_en-indent);
  translate: 0 calc(var(--_en-shift) * 1rem / var(--font-size));
}

.m-centered-heading__title {
  font-size: calc(var(--_title-font-size) * 1rem / var(--font-size));
  font-weight: var(--_title-font-weight);
  line-height: calc(var(--_title-line-height) / var(--_title-font-size));
  letter-spacing: var(--_title-letter-spacing);
  color: var(--_title-color);
  line-break: strict;
  padding-left: var(--_title-indent);
  translate: 0 calc(var(--_title-shift) * 1rem / var(--font-size));
}

.m-centered-heading--en-zen-kaku {
  --_en-font-family: var(--font-family__zen-kaku-gothic-new);
}

.m-centered-heading--message {
  --_gap: 18;
  --_en-font-size: 23;
  --_en-line-height: 32;
  --_title-font-size: 40;
  --_title-line-height: 64;
  --_en-shift: 3;
  --_title-shift: 0;
}

.m-centered-heading--reality {
  --_en-letter-spacing: 0.2em;
  --_en-shift: 2;
}

.m-centered-heading--voice {
  --_en-letter-spacing: 0.195em;
  --_en-shift: 2;
}

.m-category-filter {
  padding-top: calc(50 * 1rem / var(--font-size));
}

.m-category-filter__head {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(10 * 1rem / var(--font-size));
}

.m-category-filter__icon {
  width: calc(25 * 1rem / var(--font-size));
  height: calc(25 * 1rem / var(--font-size));
  color: var(--color__red);
}

.m-category-filter__title {
  min-width: calc(208 * 1rem / var(--font-size));
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.95;
}

.m-category-filter__list {
  display: grid;
  grid-template-columns: repeat(6, calc(134 * 1rem / var(--font-size)));
  justify-content: center;
  row-gap: calc(25 * 1rem / var(--font-size));
  -moz-column-gap: calc(20 * 1rem / var(--font-size));
       column-gap: calc(20 * 1rem / var(--font-size));
  max-width: calc(1004 * 1rem / var(--font-size));
  width: 100%;
  padding: calc(30 * 1rem / var(--font-size)) calc(50 * 1rem / var(--font-size)) calc(35 * 1rem / var(--font-size));
  border-radius: calc(16 * 1rem / var(--font-size));
  background-color: var(--color__pink-light);
  margin-top: calc(10 * 1rem / var(--font-size));
  margin-inline: auto;
}

.m-category-filter__link {
  display: grid;
  place-items: center;
  min-height: calc(41 * 1rem / var(--font-size));
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.1875;
  text-align: center;
  padding: calc(10 * 1rem / var(--font-size));
  border: 1px solid var(--color__red);
  border-radius: 9999px;
  background-color: var(--color__white);
}

.m-case-studies {
  padding-block: calc(100 * 1rem / var(--font-size)) calc(99 * 1rem / var(--font-size));
  background-color: var(--color__beige-pale);
}

.m-case-studies__body {
  max-width: calc(935 * 1rem / var(--font-size));
}

.m-case-studies__head > .m-heading {
  --_en-font-weight: 600;
}

.m-case-studies__lead {
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.5714285714;
  letter-spacing: 0.08em;
  padding-top: calc(19 * 1rem / var(--font-size));
}

.m-case-studies__list {
  display: grid;
  grid-template-columns: repeat(3, calc(300 * 1rem / var(--font-size)));
  -moz-column-gap: calc(17 * 1rem / var(--font-size));
       column-gap: calc(17 * 1rem / var(--font-size));
  margin-top: calc(72 * 1rem / var(--font-size));
}

.m-case-studies__more {
  display: flex;
  justify-content: flex-end;
  margin-top: calc(60 * 1rem / var(--font-size));
}

.m-case-studies__more > .m-more-link {
  --_color__icon: var(--color__red);
}

.m-case-card {
  display: grid;
  align-content: start;
  gap: calc(10 * 1rem / var(--font-size));
  padding: calc(21 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size)) calc(25 * 1rem / var(--font-size));
  border-radius: calc(4 * 1rem / var(--font-size));
  background-color: var(--color__white);
  box-shadow: calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) var(--color__black-alpha16);
}

.m-case-card__photo {
  aspect-ratio: 260/215;
  overflow: clip;
  border-radius: calc(6 * 1rem / var(--font-size)) calc(6 * 1rem / var(--font-size)) 0 0;
}

.m-case-card__photo img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.m-case-card__body {
  padding-inline: calc(6 * 1rem / var(--font-size));
}

.m-case-card__area {
  font-size: calc(13 * 1rem / var(--font-size));
  line-height: 1.4615384615;
}

.m-case-card__name {
  font-size: calc(22 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.4545454545;
}

.m-case-card__specs {
  display: grid;
  gap: calc(2 * 1rem / var(--font-size));
  margin-top: calc(6 * 1rem / var(--font-size));
}

.m-case-card__spec {
  display: grid;
  grid-template-columns: calc(64 * 1rem / var(--font-size)) auto;
  justify-content: start;
  align-items: center;
  -moz-column-gap: calc(12 * 1rem / var(--font-size));
       column-gap: calc(12 * 1rem / var(--font-size));
}

.m-case-card__label {
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.4375;
}

.m-case-card__value {
  display: flex;
  align-items: flex-end;
  padding-left: calc(12 * 1rem / var(--font-size));
  border-left: 1px solid var(--color__brown-dark);
}

.m-case-card__num {
  min-width: calc(33 * 1rem / var(--font-size));
  font-family: var(--font-family__outfit);
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.25;
}

.m-case-card__unit {
  font-size: calc(12 * 1rem / var(--font-size));
  line-height: 1.4166666667;
}

.m-button {
  --_color__main-default: var(--color__red);
  --_color__sub-default: var(--color__white);
  --_color__main: var(--_color__main-default);
  --_color__sub: var(--_color__sub-default);
  --_duration: var(--duration);
  display: grid;
  place-items: center;
  max-width: calc(250 * 1rem / var(--font-size));
  width: 100%;
  color: var(--_color__sub);
  font-size: calc(16 * 1rem / var(--font-size));
  background-color: var(--_color__main);
  border-width: 1px;
  border-style: solid;
  border-color: var(--_color__main);
  border-radius: 9999px;
  filter: drop-shadow(0 3px 6px var(--color__black-alpha20));
  transform: translateZ(0);
  transition: color var(--_duration), background-color var(--_duration), border-color var(--_duration), filter var(--_duration);
  touch-action: manipulation;
  padding-block: calc(10 * 1rem / var(--font-size));
  padding-inline: calc(10 * 1rem / var(--font-size));
}
.m-button:focus-visible {
  color: var(--_color__main);
  background-color: var(--_color__sub);
  filter: unset;
}

.m-button--invert {
  --_color__main: var(--_color__sub-default);
  --_color__sub: var(--_color__main-default);
  border-color: var(--_color__sub);
}

.m-breadcrumb {
  padding-block: calc(45 * 1rem / var(--font-size)) calc(40 * 1rem / var(--font-size));
}

.m-breadcrumb > .l-inner {
  --_max-width: 1240;
  --_padding-inline: 100;
}

.m-breadcrumb__list {
  display: flex;
  flex-wrap: wrap;
  gap: calc(8 * 1rem / var(--font-size));
  font-size: calc(18 * 1rem / var(--font-size));
  line-height: 1.4444444444;
}

.m-breadcrumb__separator {
  color: var(--color__gray-mid);
}

.m-breadcrumb__link {
  color: var(--color__blue);
  text-decoration: underline;
}

.m-assurance {
  padding-block: calc(110 * 1rem / var(--font-size)) calc(100 * 1rem / var(--font-size));
}

.m-assurance--safety {
  padding-bottom: calc(140 * 1rem / var(--font-size));
}

.m-assurance--security,
.m-assurance--gondola {
  background-color: var(--color__beige-pale);
}

.m-assurance .m-accent-box {
  margin-top: calc(40 * 1rem / var(--font-size));
}

.m-assurance--quality .m-accent-box,
.m-assurance--gondola .m-accent-box,
.m-assurance--safety .m-accent-box {
  --_body-width: 541;
}

.m-assurance--security .m-numbered-heading {
  --_subtitle-width: 378;
}

.m-assurance--gondola .m-numbered-heading {
  --_subtitle-width: 498;
  --_note-align: start;
  --_note-font-size: 17;
  --_note-line-height: 27;
  --_note-letter-spacing: 0.02em;
}

.m-assurance__latin {
  font-family: var(--font-family__outfit);
  line-height: 1;
}

.m-assurance__photos {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.m-assurance__photo {
  position: absolute;
  overflow: clip;
  max-width: calc(274 * 1rem / var(--font-size));
  width: 100%;
}

.m-assurance__photo img {
  display: block;
  width: 100%;
  height: auto;
}

.m-assurance--quality .m-assurance__photo--upper {
  top: calc(-28 * 1rem / var(--font-size));
  right: calc(81 * 1rem / var(--font-size));
  border-radius: calc(30 * 1rem / var(--font-size)) 0 0;
}

.m-assurance--quality .m-assurance__photo--lower {
  right: 0;
  bottom: calc(-36 * 1rem / var(--font-size));
  border-radius: 0 0 calc(30 * 1rem / var(--font-size));
}

.m-assurance--gondola .m-assurance__photo,
.m-assurance--safety .m-assurance__photo {
  top: calc(42 * 1rem / var(--font-size));
  right: calc(54 * 1rem / var(--font-size));
  border-radius: 0 0 0 calc(30 * 1rem / var(--font-size));
}

.m-assurance__contents {
  padding-top: calc(33 * 1rem / var(--font-size));
}

.m-assurance__contents-title {
  font-size: calc(18 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6111111111;
}

.m-assurance__list {
  padding-top: calc(16 * 1rem / var(--font-size));
}

.m-assurance__item {
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 1.625;
}

.m-article-content {
  display: grid;
  grid-template-columns: 100%;
  row-gap: calc(10 * 1rem / var(--font-size));
  color: var(--color__black);
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(14 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 1.5714285714;
}

.m-article-content a {
  color: var(--color__red);
  text-decoration: underline;
  transition: opacity var(--duration);
}
.m-article-content a:focus-visible {
  opacity: var(--opacity__hover);
}

.m-article-content h2 {
  position: relative;
  color: var(--color__black);
  font-size: calc(24 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.5833333333;
  padding: calc(21 * 1rem / var(--font-size)) 0 calc(21 * 1rem / var(--font-size)) calc(10 * 1rem / var(--font-size));
  border-block: 1px solid var(--color__brown-dark);
}
.m-article-content h2::after {
  content: "";
  position: absolute;
  top: 50%;
  left: calc(-2 * 1rem / var(--font-size));
  width: 3px;
  height: calc(68 * 1rem / var(--font-size));
  background-color: var(--color__red);
  translate: 0 -50%;
}

.m-article-content h2:not(:first-child) {
  margin-top: calc(60 * 1rem / var(--font-size));
}
.m-article-content h2:not(:first-child)::before {
  content: "";
  position: absolute;
  top: calc(-35 * 1rem / var(--font-size));
  right: 0;
  left: 0;
  border-top: 3px solid var(--color__black);
}

.m-article-content h3 {
  color: var(--color__black);
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.625;
}

.m-article-content p {
  width: calc(100% + 2 * 1rem / var(--font-size));
}

.m-article-content h4 {
  color: var(--color__black);
  font-size: calc(15 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6;
}

.m-article-content img {
  max-width: 100%;
  height: auto;
}

.m-article-content figure img {
  display: block;
  width: 100%;
}

.m-article-content .wp-element-caption {
  font-size: calc(12 * 1rem / var(--font-size));
  line-height: 1.6666666667;
  text-align: center;
  padding-top: calc(6 * 1rem / var(--font-size));
}

.m-article-content ul:is(.wp-block-list, :not([class])) {
  display: grid;
  row-gap: calc(6 * 1rem / var(--font-size));
}

.m-article-content ul:is(.wp-block-list, :not([class])) > li {
  position: relative;
  padding-left: calc(18 * 1rem / var(--font-size));
}
.m-article-content ul:is(.wp-block-list, :not([class])) > li::before {
  content: "";
  position: absolute;
  top: 0.6em;
  left: calc(4 * 1rem / var(--font-size));
  width: calc(6 * 1rem / var(--font-size));
  height: calc(6 * 1rem / var(--font-size));
  border-radius: 50%;
  background-color: var(--color__red);
}

.m-article-content ol {
  display: grid;
  row-gap: calc(6 * 1rem / var(--font-size));
  counter-reset: m-article-content-ol;
}

.m-article-content ol li {
  display: grid;
  grid-template-columns: auto 1fr;
  -moz-column-gap: calc(6 * 1rem / var(--font-size));
       column-gap: calc(6 * 1rem / var(--font-size));
  counter-increment: m-article-content-ol;
}
.m-article-content ol li::before {
  content: counter(m-article-content-ol) ".";
  color: var(--color__red);
  font-weight: 700;
}

.m-article-content .wp-block-table {
  overflow-x: auto;
}

.m-article-content table {
  width: 100%;
  border-collapse: collapse;
}

.m-article-content th,
.m-article-content td {
  text-align: left;
  padding: calc(10 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size));
  border: 1px solid var(--color__gray-light);
}

.m-article-content th {
  font-weight: 700;
  background-color: var(--color__beige-pale);
}

.m-article-content blockquote {
  padding: calc(16 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size));
  border-left: 3px solid var(--color__red);
  background-color: var(--color__beige-pale);
}

.m-article-content hr {
  border-top: 3px solid var(--color__black);
}

.m-area {
  padding-block: calc(150 * 1rem / var(--font-size));
  background-color: var(--color__white);
}

.m-area__lead {
  font-size: calc(18 * 1rem / var(--font-size));
  line-height: 2;
  text-align: center;
  padding-top: calc(63 * 1rem / var(--font-size));
}

.m-area__cards {
  display: grid;
  grid-template-rows: calc(163 * 1rem / var(--font-size)) calc(137 * 1rem / var(--font-size));
  grid-template-columns: repeat(2, minmax(0, calc(479 * 1rem / var(--font-size))));
  justify-content: center;
  row-gap: calc(18 * 1rem / var(--font-size));
  -moz-column-gap: calc(10 * 1rem / var(--font-size));
       column-gap: calc(10 * 1rem / var(--font-size));
  padding-top: calc(63 * 1rem / var(--font-size));
}
.m-area__cards--grid {
  grid-template-rows: none;
  grid-auto-rows: minmax(calc(137 * 1rem / var(--font-size)), auto);
}

.m-area__cards--grid > li:only-child {
  grid-column: 1/-1;
  justify-self: center;
  width: 100%;
  max-width: calc(479 * 1rem / var(--font-size));
}

.m-area__cards:not(.m-area__cards--grid) > li:first-child {
  grid-row: span 2;
}

.m-area-card {
  position: relative;
  display: grid;
  align-content: center;
  height: 100%;
  padding: calc(39 * 1rem / var(--font-size)) calc(14 * 1rem / var(--font-size)) calc(9 * 1rem / var(--font-size));
  border: 1px solid var(--color__red);
  border-radius: calc(16 * 1rem / var(--font-size));
  background-color: var(--color__white);
  box-shadow: calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) var(--color__black-alpha25);
}

.m-area-card__label {
  position: absolute;
  top: -1px;
  left: 50%;
  width: calc(312 * 1rem / var(--font-size));
  font-size: calc(16 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.625;
  letter-spacing: 0.05em;
  color: var(--color__white);
  text-align: center;
  padding-block: calc(4 * 1rem / var(--font-size));
  border-radius: 0 0 calc(16 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  background-color: var(--color__red);
  translate: -50% 0;
}

.m-area-card__text {
  width: 100%;
  max-width: calc(422 * 1rem / var(--font-size));
  font-family: var(--font-family__noto-sans-jp);
  font-size: calc(16 * 1rem / var(--font-size));
  line-height: 2.09;
  margin-inline: auto;
}

.m-accent-box {
  --_bleed: max(
    calc(50% - var(--js-width__viewport) / 2),
    calc(50% - (var(--max-width) * 1px / 2))
  );
  --_width: 929;
  --_body-width: 854;
  --_radius-top-right: 24;
  position: relative;
  width: calc(var(--_width) * 1rem / var(--font-size) - var(--_bleed));
  color: var(--color__white);
  padding-block: calc(30 * 1rem / var(--font-size)) calc(40 * 1rem / var(--font-size));
  padding-left: calc(var(--_bleed) * -1);
  border-radius: calc(4 * 1rem / var(--font-size)) calc(var(--_radius-top-right) * 1rem / var(--font-size)) calc(24 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size));
  background-color: var(--color__red);
  margin-left: var(--_bleed);
}

.m-accent-box__title {
  min-height: calc(47 * 1rem / var(--font-size));
  font-size: calc(26 * 1rem / var(--font-size));
  font-weight: 700;
  line-height: 1.6153846154;
}

.m-accent-box__title + .m-accent-box__body {
  padding-top: calc(24 * 1rem / var(--font-size));
}

.m-accent-box__body {
  display: grid;
  max-width: calc(var(--_body-width) * 1rem / var(--font-size));
}

.m-accent-box__text {
  font-size: calc(20 * 1rem / var(--font-size));
  font-weight: 500;
  line-height: 2;
  line-break: strict;
}

.m-accent-box__latin {
  font-family: var(--font-family__outfit);
  line-height: 1;
}

/*
 * ユーティリティについて
 * 再利用可能なユーティリティクラスを定義します。
 * ユーティリティクラスは、コンポーネントやページのスタイルを簡潔に記述するために使用されます。
 * クラス名は、u-brのように命名します。
 */
.u-wbr {
  word-break: keep-all;
}

.u-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin-block: -1px !important;
  margin-inline: -1px !important;
  overflow: hidden !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* PCでのみ表示 */
/* スマホでのみ表示 */
.u-hover--opacity {
  transition: opacity var(--duration);
}
.u-hover--opacity:focus-visible {
  opacity: var(--opacity__hover);
}

.u-hover--drop-shadow {
  transition: filter var(--duration);
}
.u-hover--drop-shadow:focus-visible {
  filter: drop-shadow(0 3px 6px var(--color__black-alpha20));
  transform: translateZ(0);
}

.u-hover--color-blue {
  transition: color var(--duration);
}
.u-hover--color-blue:focus-visible {
  color: var(--color__red);
}

.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);
}

.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);
}

.u-hanging-indent {
  padding-inline-start: 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--blue {
  color: var(--color__red);
}

.u-color--white {
  color: var(--color__white);
}

.u-br {
  display: inline-block;
}

.u-bg--white {
  background-color: var(--color__white);
}

@media (min-width: 391px) and (max-width: 767px){
  .m-voice-item__person {
    justify-content: center;
  }
  .m-news__list .m-news-card {
    grid-template-columns: calc(161 * 1rem / var(--font-size)) minmax(0, 1fr);
  }
  .m-contact__lead br {
    display: none;
  }
}

@media (min-width: 768px){
  .l-inner--800 {
    --_max-width: 800;
  }
  .l-inner--967 {
    --_max-width: 967;
  }
  .l-inner--1118 {
    --_max-width: 1118;
  }
  .l-3-columns-pc {
    --_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-inline-start: max(50% - var(--js-width__viewport) / 2, 50% - var(--max-width) * 1px / 2);
  }
  .l-2-columns-pc--release-right {
    margin-inline-end: max(50% - var(--js-width__viewport) / 2, 50% - var(--max-width) * 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-inline-end: max(50% - var(--js-width__viewport) / 2, 50% - var(--max-width) * 1px / 2);
    margin-inline-start: auto;
  }
  .l-2-columns-pc--release-right.l-2-columns-pc--reverse {
    margin-inline-end: auto;
    margin-inline-start: max(50% - var(--js-width__viewport) / 2, 50% - var(--max-width) * 1px / 2);
  }
  .m-wall-works__more .m-more-link__text {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-wall-works__more .m-more-link__icon {
    align-self: flex-start;
    margin-top: calc(6 * 1rem / var(--font-size));
  }
  .m-wall-point-item__title {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-sustainability__heading .m-heading__lead {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-sustainability__panel-title {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-survey-row__body {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-step-card__head {
    justify-content: space-between;
    max-width: calc(207 * 1rem / var(--font-size));
    height: calc(44 * 1rem / var(--font-size));
  }
  .m-step-card__title {
    flex-shrink: 0;
  }
  .m-step-card__text {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-slogan__heading .m-heading__lead {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-service > .l-inner {
    --_padding-left: 160;
    --_padding-right: 164;
  }
  .m-service-card__thumb {
    height: calc(150 * 1rem / var(--font-size));
  }
  .m-service-card__title {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-service-card__text {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-service-card__link-label {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-report-card__title {
    min-height: calc(77 * 1rem / var(--font-size));
  }
  .m-report-card__text {
    min-height: calc(103 * 1rem / var(--font-size));
  }
  .m-recruit-worry__pre {
    padding-top: calc(12 * 1rem / var(--font-size));
  }
  .m-recruit-requirements > .l-inner {
    --_max-width: 1243;
    --_padding-left: 99;
    --_padding-right: 98;
  }
  .m-recruit-gallery > .l-inner {
    --_max-width: 1242;
    --_padding-inline: 99;
  }
  .m-proposal-step__text {
    min-height: calc(86 * 1rem / var(--font-size));
  }
  .m-proposal-step:first-child .m-proposal-step__text {
    min-height: calc(69 * 1rem / var(--font-size));
  }
  .m-price-box__name {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-price-box__value {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-price-box__supplement {
    min-width: calc(103 * 1rem / var(--font-size));
    text-align: center;
  }
  .m-policy > .l-inner {
    --_padding-left: 161;
    --_padding-right: 163;
  }
  .m-policy__band > .l-inner {
    --_max-width: 888;
    --_padding-left: 161;
    --_padding-right: 42;
    margin-right: 0;
  }
  .m-policy-item__title {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-policy-item__icon {
    translate: 0 calc(-50% - calc(1 * 1rem / var(--font-size)));
  }
  .m-policy-item__text {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-philosophy > .l-inner {
    --_padding-left: 161;
    --_padding-right: 163;
  }
  .m-page-title--works-category + .m-breadcrumb {
    padding-bottom: 0;
  }
  .m-page-nav__body {
    --_padding-left: 0;
    --_padding-right: 65;
  }
  .m-page-nav--consider .m-page-nav__list {
    margin-top: calc(6 * 1rem / var(--font-size));
  }
  .m-page-nav--consider .m-page-nav__item:first-child {
    padding-top: calc(7 * 1rem / var(--font-size));
  }
  .m-page-nav--consider .m-page-nav__item + .m-page-nav__item::before {
    top: -1px;
  }
  .m-page-nav--consider .m-page-nav__item:last-child::after {
    margin-top: calc(6 * 1rem / var(--font-size));
  }
  .m-page-nav--company .m-page-nav__list {
    margin-top: calc(6 * 1rem / var(--font-size));
  }
  .m-page-nav--company .m-page-nav__item {
    padding-top: calc(7 * 1rem / var(--font-size));
  }
  .m-page-nav--company .m-page-nav__item + .m-page-nav__item {
    padding-top: calc(8 * 1rem / var(--font-size));
    margin-top: calc(6 * 1rem / var(--font-size));
  }
  .m-onestop > .l-inner {
    --_padding-left: 161;
    --_padding-right: 163;
  }
  .m-onestop__heading .m-heading__lead {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-news > .l-inner {
    --_padding-left: 35;
    --_padding-right: 25;
  }
  .m-lined-heading__title {
    height: calc(var(--_title-height) * 1rem / var(--font-size));
    padding-top: calc(2 * 1rem / var(--font-size));
  }
  .m-job-detail {
    display: contents;
  }
  .m-job-detail__title {
    grid-row: 1;
    grid-column: var(--_column);
    justify-self: start;
    width: 100%;
    max-width: calc(203 * 1rem / var(--font-size));
    font-size: calc(24 * 1rem / var(--font-size));
    line-height: 1.5833333333;
    letter-spacing: 0.02em;
    text-align: center;
    padding: calc(14 * 1rem / var(--font-size)) calc(15 * 1rem / var(--font-size)) calc(15 * 1rem / var(--font-size));
    border: 1px solid var(--_color__main);
    border-bottom: 0;
    border-radius: calc(16 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) 0 0;
    background-color: var(--_color__bg);
    translate: calc(1 * 1rem / var(--font-size)) 0;
  }
  .m-job-detail__list {
    display: contents;
  }
  .m-job-detail__row {
    display: contents;
  }
  .m-job-detail__term {
    display: contents;
  }
  .m-job-detail__category {
    grid-row: var(--_row)/span var(--_span, 1);
    grid-column: 1;
    font-size: calc(20 * 1rem / var(--font-size));
    font-weight: 500;
    line-height: 1.45;
    padding: calc(20 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) calc(19 * 1rem / var(--font-size));
    border: 1px solid var(--color__gray-silver);
    border-top: 0;
    background-color: var(--color__gray-mist);
  }
  .m-job-detail__category--wide {
    grid-column: 1/3;
  }
  .m-job-detail__sub {
    grid-row: var(--_row);
    grid-column: 2;
    font-size: calc(18 * 1rem / var(--font-size));
    font-weight: 500;
    line-height: 1.4444444444;
    padding: calc(12 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size)) calc(11 * 1rem / var(--font-size));
    border-right: 1px solid var(--color__gray-silver);
    border-bottom: 1px solid var(--color__gray-silver);
    background-color: var(--color__gray-mist);
  }
  .m-job-detail__desc {
    grid-row: var(--_row);
    grid-column: var(--_column);
    font-size: calc(16 * 1rem / var(--font-size));
    font-weight: 500;
    line-height: 1.4375;
    line-break: strict;
    padding: calc(12 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) calc(11 * 1rem / var(--font-size));
    border-right: 1px solid var(--_color__main);
    border-bottom: 1px solid var(--_color__main);
    background-color: var(--_color__bg);
  }
  .m-job-detail__row--loose .m-job-detail__desc {
    padding-bottom: calc(12 * 1rem / var(--font-size));
  }
  .m-job-detail__desc--common {
    grid-column: 3/5;
    border-color: var(--color__gray-silver);
    background-color: var(--color__white);
  }
  .m-job-detail__desc--full {
    grid-column: 2/5;
    border-color: var(--color__gray-silver);
    background-color: var(--color__white);
  }
  .m-job-detail--construction .m-job-detail__term,
  .m-job-detail--construction .m-job-detail__desc--common,
  .m-job-detail--construction .m-job-detail__desc--full {
    position: absolute;
    display: block;
    width: 1px;
    height: 1px;
    overflow: clip;
    white-space: nowrap;
    clip-path: inset(50%);
  }
  .m-job-detail__num {
    font-family: var(--font-family__outfit);
    line-height: 1;
  }
  .m-heading--lead-18 {
    --_gap: 18;
  }
  .m-heading--lead-18 .m-heading__en {
    height: calc(32 * 1rem / var(--font-size));
    line-height: 1.6;
  }
  .m-heading--lead-18 .m-heading__lead {
    padding-top: calc(18 * 1rem / var(--font-size));
  }
  .m-heading--large {
    --_gap: 14;
  }
  .m-heading--large .m-heading__lead {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-heading--service .m-heading__en {
    height: calc(32 * 1rem / var(--font-size));
    line-height: 1.652173913;
  }
  .m-heading--nudge {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-heading--outdent {
    margin-left: calc(-1 * 1rem / var(--font-size));
  }
  .m-guideline-card--wide {
    padding-right: calc(15.5 * 1rem / var(--font-size));
  }
  .m-greeting__texts {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-greeting__name {
    translate: 0.2em calc(-1 * 1rem / var(--font-size));
  }
  .m-faq--beige .m-faq__lead {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-estimation__band-text {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-cost-panel__title {
    translate: 0 calc(2 * 1rem / var(--font-size));
  }
  .m-cost-panel__condition {
    translate: calc(-1 * 1rem / var(--font-size)) calc(2 * 1rem / var(--font-size));
  }
  .m-cost-panel__list-block {
    align-content: start;
    min-height: calc(var(--_list-height) * 1rem / var(--font-size));
  }
  .m-cost-panel--house .m-dashed-list__item:nth-child(2) {
    padding-bottom: calc(3 * 1rem / var(--font-size));
  }
  .m-contact--narrow .m-section-title,
  .m-contact--narrow .m-contact__lead {
    max-width: calc(934 * 1rem / var(--font-size));
  }
  .m-contact--narrow .m-contact__actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .m-contact--narrow .m-contact-card--web .m-contact-card__button {
    max-width: none;
  }
  .m-contact--narrow .m-contact-card__note,
  .m-contact--consider .m-contact-card__note {
    margin-top: calc(15 * 1rem / var(--font-size));
  }
  .m-contact--narrow .m-contact-card--tel .m-contact-card__note,
  .m-contact--consider .m-contact-card--tel .m-contact-card__note {
    white-space: normal;
  }
  .m-contact-card__catch .m-contact-card__half {
    letter-spacing: -0.39em;
  }
  .m-contact-card--tel .m-contact-card__note {
    white-space: nowrap;
  }
  .m-compare__note {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-compare__title-text {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-compare__bar-item--gray {
    padding-top: calc(2 * 1rem / var(--font-size));
  }
  .m-compare__bar-item--pink {
    padding-top: calc(3 * 1rem / var(--font-size));
    padding-right: calc(2 * 1rem / var(--font-size));
  }
  .m-compare__bar-item--red {
    padding-top: calc(6 * 1rem / var(--font-size));
  }
  .m-compare__bar-spacer {
    width: calc(8 * 1rem / var(--font-size));
  }
  .m-compare__col:not(.m-compare__col--own) .m-compare__icon {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-company-plan__heading .m-heading__title::after {
    margin-top: calc(25 * 1rem / var(--font-size));
  }
  .m-company-access__route-text {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-commitment__worries {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-commitment__price-title {
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-centered-heading--start-pc {
    --_align: start;
    --_en-indent: 0;
    --_title-indent: 0;
  }
  .u-only--sp {
    display: none;
  }
}

@media (min-width: 1921px){
  .l-page {
    max-width: calc(var(--max-width) * 1px);
    margin-inline: auto;
  }
  .m-header {
    right: 0;
    max-width: calc(var(--max-width) * 1px);
    margin-inline: auto;
  }
}

@media (max-width: 1440px){
  html {
    font-size: calc(var(--_font-size) / var(--_width) * 100vw);
  }
}

@media (max-width: 767px){
  :root {
    --width__breakpoint: 390;
    --space-inline: 16;
    --max-width: 600;
    --js-height__header: 162px;
  }
  html {
    font-size: calc(var(--_font-size) * 1px);
  }
  .l-inner {
    --_max-width: var(--max-width, 600);
  }
  .l-container--sidebar {
    grid-template-columns: unset;
    row-gap: calc(32 * 1rem / var(--font-size));
  }
  .m-works {
    padding-block: calc(102 * 1rem / var(--font-size)) calc(101 * 1rem / var(--font-size));
  }
  .m-works::before {
    top: calc(-31 * 1rem / var(--font-size));
    height: auto;
    aspect-ratio: 390/842;
    background-image: url("../images/front-page/works-bg-sp.webp");
    background-size: 100% auto;
  }
  .m-works > .l-inner {
    --_padding-inline: 20;
    --_max-width: 727;
  }
  .m-works__list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, calc(340 * 1rem / var(--font-size))), 1fr));
    justify-items: center;
    row-gap: calc(16 * 1rem / var(--font-size));
    -moz-column-gap: calc(16 * 1rem / var(--font-size));
         column-gap: calc(16 * 1rem / var(--font-size));
    padding-top: calc(48 * 1rem / var(--font-size));
  }
  .m-works__list > li:last-child:nth-child(odd) {
    grid-column: 1/-1;
  }
  .m-works__list > li {
    max-width: calc(350 * 1rem / var(--font-size));
  }
  .m-works__more {
    justify-content: flex-end;
    padding-top: calc(48 * 1rem / var(--font-size));
  }
  .m-works__more > .m-more-link {
    --_column-gap: 8;
    --_padding-bottom: 0;
    --_padding-left: 4;
  }
  .m-works-spec {
    padding-block: calc(24 * 1rem / var(--font-size)) calc(56 * 1rem / var(--font-size));
  }
  .m-works-spec > .l-inner {
    --_max-width: var(--max-width, 600);
    --_padding-inline: var(--space-inline, 16);
  }
  .m-works-spec__notes {
    gap: calc(32 * 1rem / var(--font-size));
    margin-top: calc(40 * 1rem / var(--font-size));
  }
  .m-works-list {
    padding-block: calc(40 * 1rem / var(--font-size)) calc(56 * 1rem / var(--font-size));
  }
  .m-works-list > .l-inner {
    --_max-width: var(--max-width, 600);
  }
  .m-works-list__list {
    grid-template-columns: minmax(0, 1fr);
    gap: calc(16 * 1rem / var(--font-size));
  }
  .m-works-list__empty {
    gap: calc(32 * 1rem / var(--font-size));
  }
  .m-works-list__empty-text {
    font-size: calc(14 * 1rem / var(--font-size));
  }
  .m-works-gallery {
    padding-block: calc(32 * 1rem / var(--font-size)) calc(24 * 1rem / var(--font-size));
  }
  .m-works-gallery__title {
    font-size: calc(20 * 1rem / var(--font-size));
    line-height: 1.4;
  }
  .m-works-gallery__body {
    gap: calc(24 * 1rem / var(--font-size));
    margin-top: calc(24 * 1rem / var(--font-size));
  }
  .m-works-gallery__tab-list {
    grid-auto-columns: minmax(0, 1fr);
    width: 100%;
    gap: calc(8 * 1rem / var(--font-size));
    padding-block: calc(6 * 1rem / var(--font-size));
    padding-inline: calc(6 * 1rem / var(--font-size));
    border-width: 3px;
    border-radius: calc(32 * 1rem / var(--font-size));
  }
  .m-works-gallery__tab {
    font-size: calc(16 * 1rem / var(--font-size));
    padding-block: calc(12 * 1rem / var(--font-size));
    padding-inline: calc(4 * 1rem / var(--font-size));
  }
  .m-works-card {
    padding: calc(15 * 1rem / var(--font-size));
  }
  .m-warranty {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-warranty__lead {
    line-height: 1.8;
    letter-spacing: 0.05em;
    padding-top: calc(12 * 1rem / var(--font-size));
  }
  .m-warranty__content {
    display: grid;
    gap: calc(32 * 1rem / var(--font-size));
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-warranty-table {
    width: 100%;
  }
  .m-wall-works {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-wall-works__lead {
    max-width: none;
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.8;
  }
  .m-wall-works__list {
    grid-template-columns: 1fr;
    gap: calc(16 * 1rem / var(--font-size));
    padding-top: calc(24 * 1rem / var(--font-size));
  }
  .m-wall-works__more {
    justify-content: center;
    max-width: none;
    padding-top: calc(32 * 1rem / var(--font-size));
  }
  .m-wall-point {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-wall-point__deco {
    left: auto;
    right: calc(-40 * 1rem / var(--font-size));
    width: calc(320 * 1rem / var(--font-size));
    height: calc(158 * 1rem / var(--font-size));
  }
  .m-wall-point__list {
    max-width: none;
    padding-top: calc(32 * 1rem / var(--font-size));
  }
  .m-wall-point-item {
    flex-direction: column;
    align-items: stretch;
    gap: calc(16 * 1rem / var(--font-size));
    padding-top: calc(56 * 1rem / var(--font-size));
    padding-left: 0;
  }
  .m-wall-point-item + .m-wall-point-item {
    margin-top: 0;
  }
  .m-wall-point-item + .m-wall-point-item--lower {
    margin-top: 0;
  }
  .m-wall-point-item--reverse {
    flex-direction: column;
  }
  .m-wall-point-item--lower {
    padding-top: calc(56 * 1rem / var(--font-size));
  }
  .m-wall-point-item__num {
    font-size: calc(100 * 1rem / var(--font-size));
    line-height: 1.35;
  }
  .m-wall-point-item__body {
    width: 100%;
    gap: calc(16 * 1rem / var(--font-size));
  }
  .m-wall-point-item__title {
    font-size: calc(20 * 1rem / var(--font-size));
    line-height: 1.5;
  }
  .m-wall-point-item__text {
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.8;
    padding-left: 0;
  }
  .m-wall-point-item__figure {
    width: 100%;
  }
  .m-wall-point-item--wide-figure .m-wall-point-item__figure {
    width: 100%;
  }
  .m-wall-point-item__figure img {
    height: auto;
    aspect-ratio: 351/285;
  }
  .m-wall-intro {
    padding-block: calc(40 * 1rem / var(--font-size));
  }
  .m-wall-intro__body {
    gap: calc(32 * 1rem / var(--font-size));
    max-width: none;
  }
  .m-wall-intro__head {
    min-height: 0;
  }
  .m-wall-intro__figure {
    position: static;
    width: 100%;
    padding-top: calc(24 * 1rem / var(--font-size));
  }
  .m-wall-intro__figure img {
    height: auto;
    -webkit-mask-image: none;
            mask-image: none;
    aspect-ratio: 502/315;
  }
  .m-wall-intro__list {
    gap: calc(24 * 1rem / var(--font-size));
  }
  .m-wall-intro__item-title {
    align-items: flex-start;
    gap: calc(12 * 1rem / var(--font-size));
    font-size: calc(16 * 1rem / var(--font-size));
    line-height: 1.6;
    text-wrap: balance;
  }
  .m-wall-intro__item-title::before {
    width: calc(18 * 1rem / var(--font-size));
    height: calc(18 * 1rem / var(--font-size));
    margin-top: calc(4 * 1rem / var(--font-size));
  }
  .m-wall-intro__item-text {
    font-size: calc(14 * 1rem / var(--font-size));
  }
  .m-wall-inspection {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-wall-inspection__body {
    gap: calc(40 * 1rem / var(--font-size));
    max-width: none;
    padding-top: calc(24 * 1rem / var(--font-size));
  }
  .m-wall-inspection__cards {
    grid-template-columns: 1fr;
    gap: calc(24 * 1rem / var(--font-size));
  }
  .m-wall-inspection__group {
    padding-block: 0;
  }
  .m-wall-inspection__group-title {
    font-size: calc(24 * 1rem / var(--font-size));
    padding-bottom: calc(12 * 1rem / var(--font-size));
  }
  .m-wall-inspection__list {
    gap: calc(24 * 1rem / var(--font-size));
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-voice {
    padding-block: calc(56 * 1rem / var(--font-size)) calc(71 * 1rem / var(--font-size));
  }
  .m-voice__list {
    row-gap: calc(24 * 1rem / var(--font-size));
    padding-top: calc(48 * 1rem / var(--font-size));
  }
  .m-voice__more {
    justify-content: flex-end;
    padding-top: calc(48 * 1rem / var(--font-size));
    padding-right: calc(20 * 1rem / var(--font-size));
  }
  .m-voice-item {
    grid-template-areas: "bubble" "person";
    grid-template-columns: 100%;
    row-gap: calc(12 * 1rem / var(--font-size));
  }
  .m-voice-item--reverse {
    grid-template-areas: "bubble" "person";
    grid-template-columns: 100%;
  }
  .m-voice-item__bubble {
    min-height: 0;
    padding: calc(16 * 1rem / var(--font-size));
  }
  .m-voice-item__bubble::before {
    inset: 0;
    border-radius: calc(20 * 1rem / var(--font-size));
  }
  .m-voice-item__bubble::after {
    content: none;
  }
  .m-voice-item--reverse .m-voice-item__bubble {
    padding: calc(16 * 1rem / var(--font-size));
  }
  .m-voice-item--reverse .m-voice-item__bubble::before {
    inset: 0;
  }
  .m-voice-item__rating {
    -moz-column-gap: calc(6 * 1rem / var(--font-size));
         column-gap: calc(6 * 1rem / var(--font-size));
  }
  .m-voice-item__stars {
    -moz-column-gap: calc(6 * 1rem / var(--font-size));
         column-gap: calc(6 * 1rem / var(--font-size));
  }
  .m-voice-item__stars svg {
    width: calc(20 * 1rem / var(--font-size));
    height: calc(20 * 1rem / var(--font-size));
  }
  .m-voice-item__rating-label {
    font-size: calc(12 * 1rem / var(--font-size));
    line-height: 1.5833333333;
  }
  .m-voice-item__title {
    font-size: calc(16 * 1rem / var(--font-size));
    line-height: 1.625;
    margin-top: calc(12 * 1rem / var(--font-size));
  }
  .m-voice-item__text {
    max-width: none;
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.5714285714;
    margin-top: calc(8 * 1rem / var(--font-size));
  }
  .m-voice-item__person {
    grid-template-areas: "attribution photo";
    grid-template-columns: calc(253 * 1rem / var(--font-size)) calc(101 * 1rem / var(--font-size));
    align-items: center;
    justify-items: stretch;
    row-gap: 0;
  }
  .m-voice-item--reverse .m-voice-item__person {
    grid-template-columns: minmax(0, calc(226 * 1rem / var(--font-size))) calc(120 * 1rem / var(--font-size));
    -moz-column-gap: calc(12 * 1rem / var(--font-size));
         column-gap: calc(12 * 1rem / var(--font-size));
  }
  .m-voice-item__photo {
    aspect-ratio: 101/104;
    border-radius: calc(16 * 1rem / var(--font-size));
    overflow: clip;
  }
  .m-voice-item--reverse .m-voice-item__photo {
    aspect-ratio: 120/104;
  }
  .m-voice-item__name {
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.5714285714;
  }
  .m-voice-item__place {
    font-size: calc(12 * 1rem / var(--font-size));
    line-height: 1.5833333333;
    margin-top: calc(4 * 1rem / var(--font-size));
  }
  .m-trust {
    padding-block: calc(56 * 1rem / var(--font-size)) calc(55 * 1rem / var(--font-size));
  }
  .m-trust::before {
    opacity: 0.15;
  }
  .m-trust__panel {
    padding: 0;
    border-radius: 0;
    background-color: transparent;
  }
  .m-trust__lead {
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.6923076923;
    letter-spacing: 0.04em;
    color: var(--color__brown-gray);
    padding-top: calc(24 * 1rem / var(--font-size));
  }
  .m-trust__stats {
    max-width: none;
    padding-top: calc(40 * 1rem / var(--font-size));
  }
  .m-trust__cards {
    display: grid;
    grid-template-columns: 100%;
    justify-items: center;
    row-gap: calc(20 * 1rem / var(--font-size));
  }
  .m-trust__cards > li {
    max-width: calc(320 * 1rem / var(--font-size));
  }
  .m-trust__notes {
    row-gap: calc(12 * 1rem / var(--font-size));
    font-size: calc(11 * 1rem / var(--font-size));
    line-height: 1.6363636364;
    color: var(--color__brown-gray);
    padding-top: calc(40 * 1rem / var(--font-size));
    padding-inline: calc(8 * 1rem / var(--font-size));
  }
  .m-trust__more {
    padding-top: calc(56 * 1rem / var(--font-size));
  }
  .m-trust__more > .m-more-link {
    --_column-gap: 10;
    --_padding-bottom: 4;
    --_padding-left: 1;
    --_padding-right: 1;
    --_height__icon: 26;
    --_font-weight__text: 700;
    --_letter-spacing__text: 0.05em;
    --_line-height__text: calc(23 / 16);
  }
  .m-titled-text__title {
    min-height: 0;
    font-size: calc(18 * 1rem / var(--font-size));
    padding-bottom: calc(8 * 1rem / var(--font-size));
  }
  .m-titled-text__text {
    min-height: 0;
    font-size: calc(15 * 1rem / var(--font-size));
    line-height: 1.7;
    margin-top: calc(12 * 1rem / var(--font-size));
  }
  .m-titled-card__title {
    font-size: calc(18 * 1rem / var(--font-size));
  }
  .m-titled-card__text {
    min-height: 0;
    font-size: calc(16 * 1rem / var(--font-size));
    padding-inline: calc(16 * 1rem / var(--font-size));
  }
  .m-timeline {
    row-gap: calc(24 * 1rem / var(--font-size));
    max-width: none;
  }
  .m-timeline__item:not(:last-child)::after {
    grid-column: 1/-1;
    justify-self: stretch;
    width: auto;
    height: calc(16 * 1rem / var(--font-size));
    background-repeat: no-repeat;
    background-position: 0 calc(7 * 1rem / var(--font-size));
    background-size: 100% 1px;
    margin-top: 0;
  }
  .m-timeline__item {
    grid-template-columns: auto 1fr;
    grid-template-areas: "time title" "text text";
    -moz-column-gap: calc(12 * 1rem / var(--font-size));
         column-gap: calc(12 * 1rem / var(--font-size));
    row-gap: calc(12 * 1rem / var(--font-size));
  }
  .m-timeline__time {
    justify-self: start;
    align-self: center;
    min-height: 0;
    font-size: calc(15 * 1rem / var(--font-size));
    line-height: 1;
    color: var(--color__white);
    padding: calc(4 * 1rem / var(--font-size)) calc(8 * 1rem / var(--font-size));
    border-radius: calc(6 * 1rem / var(--font-size));
    background-color: var(--color__red);
    translate: none;
  }
  .m-timeline__title {
    align-self: center;
    font-size: calc(16 * 1rem / var(--font-size));
    font-weight: 700;
    line-height: 1.375;
    line-break: strict;
  }
  .m-timeline__text {
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.6153846154;
    padding-left: calc(12 * 1rem / var(--font-size));
  }
  .m-timeline__text--single {
    height: auto;
  }
  .m-timeline__latin {
    font-family: inherit;
  }
  .m-thanks {
    padding-block: calc(40 * 1rem / var(--font-size)) calc(56 * 1rem / var(--font-size));
  }
  .m-thanks__card {
    padding: calc(24 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) calc(32 * 1rem / var(--font-size));
    border-radius: calc(16 * 1rem / var(--font-size));
  }
  .m-thanks__lead {
    font-size: calc(18 * 1rem / var(--font-size));
    line-height: 1.5555555556;
  }
  .m-thanks__text {
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.8;
    margin-top: calc(16 * 1rem / var(--font-size));
  }
  .m-thanks__tel {
    margin-top: calc(24 * 1rem / var(--font-size));
  }
  .m-thanks__tel-link {
    font-size: calc(26 * 1rem / var(--font-size));
  }
  .m-thanks__tel-note {
    font-size: calc(11 * 1rem / var(--font-size));
  }
  .m-thanks__button {
    margin-top: calc(28 * 1rem / var(--font-size));
  }
  .m-target {
    padding-block: calc(50 * 1rem / var(--font-size));
    overflow-x: clip;
    margin-top: 0;
  }
  .m-target__slider {
    max-width: none;
  }
  .m-target__list {
    justify-content: flex-start;
    gap: 0;
  }
  .m-tag-chip {
    min-height: calc(46 * 1rem / var(--font-size));
    padding-inline: calc(14 * 1rem / var(--font-size));
  }
  .m-sustainability {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-sustainability__inner {
    gap: calc(32 * 1rem / var(--font-size));
  }
  .m-sustainability__heading {
    padding-block: 0;
  }
  .m-sustainability__heading .m-heading__lead {
    max-width: none;
  }
  .m-sustainability__body {
    gap: calc(8 * 1rem / var(--font-size));
  }
  .m-sustainability__tabs {
    grid-template-columns: repeat(3, 1fr);
    -moz-column-gap: calc(6 * 1rem / var(--font-size));
         column-gap: calc(6 * 1rem / var(--font-size));
  }
  .m-sustainability__tab {
    min-height: calc(46 * 1rem / var(--font-size));
    font-size: calc(12 * 1rem / var(--font-size));
    line-height: 1.4;
    letter-spacing: 0;
    padding: calc(6 * 1rem / var(--font-size)) calc(2 * 1rem / var(--font-size));
    border-radius: calc(10 * 1rem / var(--font-size)) calc(10 * 1rem / var(--font-size)) 0 0;
  }
  .m-sustainability__panel {
    row-gap: calc(20 * 1rem / var(--font-size));
    padding: calc(24 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
    border-radius: 0 calc(12 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size));
    overflow-x: clip;
  }
  .m-sustainability__watermark {
    top: calc(12 * 1rem / var(--font-size));
    right: calc(12 * 1rem / var(--font-size));
    font-size: calc(28 * 1rem / var(--font-size));
    line-height: 1;
  }
  .m-sustainability__panel-title {
    font-size: calc(17 * 1rem / var(--font-size));
    line-height: 1.6;
    letter-spacing: 0.05em;
    white-space: normal;
    padding-left: 0;
  }
  .m-sustainability__cards {
    grid-template-columns: 100%;
    row-gap: calc(32 * 1rem / var(--font-size));
  }
  .m-sustainability__card:not(:first-child)::before {
    top: calc(-16 * 1rem / var(--font-size));
    left: 0;
    width: 100%;
    height: 1px;
    background-image: repeating-linear-gradient(to right, var(--_color) 0 2px, transparent 2px 9px);
  }
  .m-survey-row {
    grid-template-columns: 1fr;
    row-gap: calc(12 * 1rem / var(--font-size));
    min-height: 0;
  }
  .m-survey-row__figure img {
    height: auto;
    aspect-ratio: 368/140;
    margin-top: 0;
  }
  .m-survey-row:last-child .m-survey-row__figure img {
    height: auto;
  }
  .m-survey-row__title {
    font-size: calc(16 * 1rem / var(--font-size));
  }
  .m-survey-row__text {
    font-size: calc(14 * 1rem / var(--font-size));
    padding-top: calc(8 * 1rem / var(--font-size));
  }
  .m-survey-card {
    min-height: 0;
  }
  .m-survey-card__figure img {
    height: auto;
    aspect-ratio: 450/257;
  }
  .m-survey-card__title {
    font-size: calc(22 * 1rem / var(--font-size));
    padding-top: calc(16 * 1rem / var(--font-size));
    padding-bottom: calc(9 * 1rem / var(--font-size));
  }
  .m-survey-card__text {
    font-size: calc(14 * 1rem / var(--font-size));
    padding-top: calc(25 * 1rem / var(--font-size));
  }
  .m-strength {
    padding-block: calc(40 * 1rem / var(--font-size)) calc(56 * 1rem / var(--font-size));
  }
  .m-strength__body {
    gap: calc(32 * 1rem / var(--font-size));
  }
  .m-strength-tabs {
    gap: calc(12 * 1rem / var(--font-size));
  }
  .m-strength-tabs > * {
    grid-area: auto;
  }
  .m-strength-tabs__shape {
    display: none;
  }
  .m-strength-tabs__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: calc(8 * 1rem / var(--font-size));
    justify-self: stretch;
    width: auto;
    order: -1;
  }
  .m-strength-tabs__tab {
    position: static;
    justify-items: center;
    align-content: center;
    min-height: calc(44 * 1rem / var(--font-size));
    font-size: calc(13 * 1rem / var(--font-size));
    padding: calc(6 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size));
    border: 1px solid var(--_color);
    border-radius: 9999px;
    background-color: var(--_bg);
  }
  .m-strength-tabs__tab-label {
    width: auto;
    letter-spacing: 0;
    white-space: nowrap;
    writing-mode: horizontal-tb;
    padding-top: 0;
  }
  .m-strength-tabs__tab--research {
    height: auto;
    padding-top: calc(6 * 1rem / var(--font-size));
  }
  .m-strength-tabs__tab--quality {
    height: auto;
    padding-top: calc(6 * 1rem / var(--font-size));
  }
  .m-strength-tabs__tab--cost {
    height: auto;
    padding-top: calc(6 * 1rem / var(--font-size));
  }
  .m-strength-tabs__tab[aria-selected=true] {
    color: var(--color__white);
    background-color: var(--_color);
  }
  .m-strength-tabs__panel {
    width: auto;
    padding: calc(20 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
    border: 1px solid var(--_color);
    border-radius: calc(16 * 1rem / var(--font-size));
    background-color: var(--_bg);
  }
  .m-strength-tabs__title {
    font-size: calc(18 * 1rem / var(--font-size));
  }
  .m-strength-tabs__cards {
    grid-template-columns: 100%;
    margin-top: calc(16 * 1rem / var(--font-size));
  }
  .m-strength-tabs__panel--research .m-strength-tabs__cards {
    grid-auto-rows: auto;
  }
  .m-strength-tabs__panel--quality .m-strength-tabs__cards,
  .m-strength-tabs__panel--cost .m-strength-tabs__cards {
    grid-template-rows: none;
  }
  .m-strength-card {
    gap: calc(12 * 1rem / var(--font-size));
    padding: calc(16 * 1rem / var(--font-size));
  }
  .m-strength-card__head {
    gap: calc(16 * 1rem / var(--font-size));
    justify-self: stretch;
  }
  .m-strength-card__icon {
    width: calc(80 * 1rem / var(--font-size));
    height: calc(80 * 1rem / var(--font-size));
  }
  .m-strength-card__num {
    font-size: calc(36 * 1rem / var(--font-size));
  }
  .m-strength-card__title {
    width: auto;
    font-size: calc(17 * 1rem / var(--font-size));
    letter-spacing: 0.08em;
  }
  .m-strength-card__title br {
    display: none;
  }
  .m-strength-card--wide .m-strength-card__title {
    width: auto;
  }
  .m-strength-card__text {
    max-width: none;
    line-height: 1.8;
  }
  .m-strength-card--wide .m-strength-card__text {
    max-width: none;
  }
  .m-step-card {
    height: auto;
    min-height: calc(180 * 1rem / var(--font-size));
    padding: calc(20 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  }
  .m-step-card__num {
    font-size: calc(26 * 1rem / var(--font-size));
  }
  .m-step-card__title {
    font-size: calc(16 * 1rem / var(--font-size));
  }
  .m-step-card__text {
    font-size: calc(15 * 1rem / var(--font-size));
  }
  .m-stat-card {
    min-height: calc(154 * 1rem / var(--font-size));
  }
  .m-stat-card__value {
    -moz-column-gap: calc(3 * 1rem / var(--font-size));
         column-gap: calc(3 * 1rem / var(--font-size));
    font-size: calc(34 * 1rem / var(--font-size));
    font-weight: 400;
    color: var(--color__black);
  }
  .m-stat-card__num {
    font-size: calc(36 * 1rem / var(--font-size));
    font-weight: 800;
    line-height: 1.6111111111;
  }
  .m-stat-card--percent .m-stat-card__value {
    -moz-column-gap: 0;
         column-gap: 0;
  }
  .m-stat-card--percent .m-stat-card__unit {
    font-family: var(--font-family__noto-sans-jp);
    font-size: calc(16 * 1rem / var(--font-size));
    color: var(--color__red);
  }
  .m-stat-card__text {
    font-size: calc(12 * 1rem / var(--font-size));
    line-height: 1.4166666667;
    color: var(--color__black);
  }
  .m-spec-table {
    padding-block: calc(8 * 1rem / var(--font-size));
    padding-inline: calc(16 * 1rem / var(--font-size));
    border-radius: calc(12 * 1rem / var(--font-size));
  }
  .m-spec-table__row {
    grid-template-columns: minmax(0, 1fr);
    gap: calc(4 * 1rem / var(--font-size));
    min-height: 0;
    padding-block: calc(14 * 1rem / var(--font-size));
  }
  .m-spec-table__row:not(:first-child) {
    min-height: 0;
    padding-top: calc(14 * 1rem / var(--font-size));
  }
  .m-spec-table__row:not(:first-child)::before {
    top: 0;
  }
  .m-spec-table__term {
    font-size: calc(15 * 1rem / var(--font-size));
  }
  .m-spec-table__desc {
    font-size: calc(15 * 1rem / var(--font-size));
    line-height: 1.6;
  }
  .m-solution__head {
    padding-block: calc(40 * 1rem / var(--font-size)) 0;
  }
  .m-solution__list {
    padding-block: calc(32 * 1rem / var(--font-size)) calc(60 * 1rem / var(--font-size));
  }
  .m-solution__list > .l-inner {
    row-gap: calc(24 * 1rem / var(--font-size));
  }
  .m-solution-block {
    grid-template-columns: 100%;
    row-gap: calc(24 * 1rem / var(--font-size));
    width: auto;
    padding: calc(32 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
    margin-inline: calc(-16 * 1rem / var(--font-size));
  }
  .m-solution-block__badge {
    flex-wrap: wrap;
    font-size: calc(12 * 1rem / var(--font-size));
    white-space: normal;
    padding: calc(4 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size));
  }
  .m-solution-block__title {
    font-size: calc(22 * 1rem / var(--font-size));
    line-height: 1.6;
    letter-spacing: 0.06em;
    margin-top: calc(12 * 1rem / var(--font-size));
  }
  .m-solution-block__text {
    min-height: 0;
    line-height: 1.9;
    margin-top: calc(20 * 1rem / var(--font-size));
  }
  .m-solution-block--narrow-text .m-solution-block__text {
    max-width: none;
  }
  .m-solution-block--deep .m-solution-block__text {
    margin-top: calc(20 * 1rem / var(--font-size));
  }
  .m-solution-block__note {
    font-size: calc(15 * 1rem / var(--font-size));
    margin-top: calc(20 * 1rem / var(--font-size));
  }
  .m-solution-block--deep .m-solution-block__note {
    margin-top: calc(20 * 1rem / var(--font-size));
  }
  .m-slogan {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-slogan > .l-inner {
    gap: calc(32 * 1rem / var(--font-size));
  }
  .m-slogan__diagram {
    display: grid;
    justify-items: center;
    row-gap: calc(24 * 1rem / var(--font-size));
    width: auto;
    aspect-ratio: auto;
  }
  .m-slogan__triangle {
    display: none;
  }
  .m-slogan__list {
    position: relative;
    display: grid;
    justify-items: center;
    row-gap: calc(24 * 1rem / var(--font-size));
    width: 100%;
  }
  .m-slogan__list::before {
    content: "";
    position: absolute;
    top: calc(167 * 1rem / var(--font-size));
    bottom: calc(167 * 1rem / var(--font-size));
    left: 50%;
    width: 1px;
    background-color: var(--color__brown-dark);
    translate: -50% 0;
  }
  .m-slogan__item {
    position: relative;
    width: calc(334 * 1rem / var(--font-size));
    max-width: 100%;
  }
  .m-slogan__item--protect {
    top: auto;
    left: auto;
  }
  .m-slogan__item--polish {
    top: auto;
  }
  .m-slogan__item--shine {
    top: auto;
    left: auto;
  }
  .m-slogan__item-title {
    font-size: calc(24 * 1rem / var(--font-size));
  }
  .m-slogan__item-subtitle {
    font-size: calc(16 * 1rem / var(--font-size));
  }
  .m-slogan__dx {
    position: static;
    order: -1;
    translate: none;
  }
  .m-site-agent {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-site-agent__body {
    gap: calc(32 * 1rem / var(--font-size));
  }
  .m-site-agent__bar {
    min-height: 0;
    font-size: calc(18 * 1rem / var(--font-size));
    padding: calc(12 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
    border-radius: calc(12 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size)) 0 0;
  }
  .m-site-agent__content {
    display: grid;
    gap: calc(32 * 1rem / var(--font-size));
    margin-top: calc(16 * 1rem / var(--font-size));
  }
  .m-site-agent__board {
    width: auto;
    min-height: 0;
    padding: calc(16 * 1rem / var(--font-size));
    border: 1px solid var(--color__red);
    border-radius: calc(4 * 1rem / var(--font-size));
    background: var(--color__white);
  }
  .m-site-agent__row {
    display: grid;
    gap: calc(8 * 1rem / var(--font-size));
  }
  .m-site-agent__chart {
    justify-self: center;
    align-content: start;
    gap: calc(12 * 1rem / var(--font-size));
    min-height: 0;
  }
  .m-service__list {
    grid-template-columns: 1fr;
    row-gap: calc(16 * 1rem / var(--font-size));
    max-width: none;
    padding-block: calc(32 * 1rem / var(--font-size)) calc(48 * 1rem / var(--font-size));
  }
  .m-service-card__text {
    min-height: 0;
  }
  .m-service-card__link-label {
    width: auto;
  }
  .m-section-title__mark {
    width: calc(64 * 1rem / var(--font-size));
    height: calc(49 * 1rem / var(--font-size));
  }
  .m-section-title__lead {
    font-size: calc(18 * 1rem / var(--font-size));
    padding-top: calc(12 * 1rem / var(--font-size));
  }
  .m-section-title__title {
    font-size: calc(24 * 1rem / var(--font-size));
  }
  .m-section-title--statement .m-section-title__lead {
    line-height: 1.6111111111;
    padding-top: calc(32 * 1rem / var(--font-size));
  }
  .m-section-title--statement .m-section-title__title {
    font-size: calc(24 * 1rem / var(--font-size));
    line-height: 1.5833333333;
    margin-top: calc(16 * 1rem / var(--font-size));
  }
  .m-section-title--sp-large .m-section-title__lead {
    font-size: calc(24 * 1rem / var(--font-size));
  }
  .m-section-title--sp-large .m-section-title__title {
    font-size: calc(32 * 1rem / var(--font-size));
    white-space: nowrap;
  }
  .m-section-title--sp-medium .m-section-title__lead {
    font-size: calc(22 * 1rem / var(--font-size));
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-section-title--sp-medium .m-section-title__title {
    font-size: calc(28 * 1rem / var(--font-size));
  }
  .m-section-title--sp-accent .m-section-title__lead {
    font-weight: 700;
    line-height: 1.3888888889;
    letter-spacing: 0.08em;
  }
  .m-section-title--sp-accent .m-section-title__title {
    font-size: calc(26 * 1rem / var(--font-size));
    font-weight: 900;
    line-height: 1.3076923077;
    color: var(--color__red);
    margin-top: calc(4 * 1rem / var(--font-size));
  }
  .m-section-title--sp-compact .m-section-title__lead {
    line-height: 1.4;
    letter-spacing: 0;
    padding-top: calc(8 * 1rem / var(--font-size));
  }
  .m-safety {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-safety__lead {
    line-height: 1.8;
    letter-spacing: 0.05em;
    padding-top: calc(12 * 1rem / var(--font-size));
  }
  .m-safety__list {
    grid-template-columns: 100%;
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-safety-card {
    min-height: 0;
  }
  .m-safety-card__title {
    font-size: calc(17 * 1rem / var(--font-size));
  }
  .m-role-card {
    width: 100%;
    min-height: 0;
    padding: calc(12 * 1rem / var(--font-size));
  }
  .m-role-card--wide-padding {
    padding-left: calc(12 * 1rem / var(--font-size));
  }
  .m-role-card__title {
    font-size: calc(18 * 1rem / var(--font-size));
  }
  .m-role-card__line {
    font-size: calc(14 * 1rem / var(--font-size));
  }
  .m-role-card__item--fixed {
    width: auto;
  }
  .m-reviews {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-reviews__list {
    grid-template-columns: 100%;
    row-gap: calc(16 * 1rem / var(--font-size));
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-review-card {
    padding: calc(15 * 1rem / var(--font-size));
  }
  .m-review-card__head {
    padding-inline: 0;
  }
  .m-review-card__summary {
    flex: 1;
    flex-shrink: 1;
    width: auto;
  }
  .m-review-card__quote {
    font-size: calc(16 * 1rem / var(--font-size));
  }
  .m-review-card__photo {
    width: calc(96 * 1rem / var(--font-size));
    height: calc(96 * 1rem / var(--font-size));
  }
  .m-review-card__body {
    min-height: 0;
    padding: calc(12 * 1rem / var(--font-size));
  }
  .m-report-card {
    max-width: none;
  }
  .m-report-card__link {
    max-width: 100%;
  }
  .m-recruit {
    padding-block: calc(80 * 1rem / var(--font-size));
    margin-top: 0;
  }
  .m-recruit::before {
    background-position: left top, left 250%;
    background-size: 100% 71.43%;
  }
  .m-recruit__body {
    grid-template-areas: "head" "points" "media";
    grid-template-columns: 100%;
    row-gap: calc(32 * 1rem / var(--font-size));
  }
  .m-recruit__head {
    text-align: center;
  }
  .m-recruit__en {
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    height: auto;
    padding: 0;
  }
  .m-recruit__join {
    position: static;
    width: calc(89 * 1rem / var(--font-size));
    aspect-ratio: 89/39;
  }
  .m-recruit__en-text {
    width: auto;
    font-size: calc(32 * 1rem / var(--font-size));
    line-height: 1.25;
  }
  .m-recruit__title {
    font-size: calc(28 * 1rem / var(--font-size));
    line-height: 1.3928571429;
    letter-spacing: 0.05em;
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-recruit__lead {
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.7857142857;
    padding-top: calc(32 * 1rem / var(--font-size));
  }
  .m-recruit__points {
    row-gap: calc(16 * 1rem / var(--font-size));
  }
  .m-recruit__media {
    margin-top: 0;
  }
  .m-recruit__photo {
    width: 100%;
    aspect-ratio: 358/220;
  }
  .m-recruit-worry {
    padding-top: calc(40 * 1rem / var(--font-size));
  }
  .m-recruit-worry > .l-inner {
    --_padding-inline: 0;
  }
  .m-recruit-worry__pre {
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.4285714286;
    color: var(--color__black);
    padding-inline: calc(20 * 1rem / var(--font-size));
  }
  .m-recruit-worry__title {
    font-size: calc(22 * 1rem / var(--font-size));
    font-weight: 900;
    line-height: 1.4090909091;
    color: var(--color__black);
    white-space: normal;
    padding: calc(8 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size)) 0;
  }
  .m-recruit-worry__illust {
    max-width: calc(335 * 1rem / var(--font-size));
    margin-top: calc(40 * 1rem / var(--font-size));
  }
  .m-recruit-worry__box {
    padding: calc(48 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
    border-radius: 0;
    margin-top: calc(-31 * 1rem / var(--font-size));
  }
  .m-recruit-worry__box::after {
    height: calc(31 * 1rem / var(--font-size));
  }
  .m-recruit-worry__box-title {
    font-size: calc(18 * 1rem / var(--font-size));
    line-height: 1.5;
    letter-spacing: 0;
    white-space: normal;
    padding-left: 0;
    translate: none;
  }
  .m-recruit-worry__clouds {
    display: grid;
    row-gap: calc(20 * 1rem / var(--font-size));
    height: auto;
    margin-top: calc(40 * 1rem / var(--font-size));
  }
  .m-recruit-worry__cloud {
    position: static;
    row-gap: calc(10 * 1rem / var(--font-size));
    width: auto;
    height: auto;
    padding: calc(20 * 1rem / var(--font-size));
    border-radius: calc(16 * 1rem / var(--font-size));
    box-shadow: 0 calc(4 * 1rem / var(--font-size)) calc(8 * 1rem / var(--font-size)) var(--color__black-alpha20);
  }
  .m-recruit-worry__cloud::before {
    content: none;
  }
  .m-recruit-worry__cloud--b {
    background-color: var(--color__gray-stone);
  }
  .m-recruit-worry__cloud--a {
    background-color: var(--color__gray-ash);
  }
  .m-recruit-worry__cloud--d {
    background-color: var(--color__gray-stone);
  }
  .m-recruit-worry__cloud-title {
    font-size: calc(16 * 1rem / var(--font-size));
    line-height: 1.375;
    white-space: normal;
    translate: none;
  }
  .m-recruit-worry__cloud-text {
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.5384615385;
    color: var(--color__gray-fog);
    white-space: normal;
    line-break: strict;
    padding-left: 0;
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-recruit-worry__cloud--a .m-recruit-worry__cloud-text {
    color: var(--color__gray-snow);
  }
  .m-recruit-worry__cloud--d .m-recruit-worry__cloud-text {
    max-width: none;
    padding-left: 0;
  }
  .m-recruit-worry__box-text {
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.5714285714;
    white-space: normal;
    translate: none;
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-recruit-worry__philosophy {
    max-width: none;
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-recruit-worry__philosophy-visual {
    max-width: none;
    height: calc(180 * 1rem / var(--font-size));
    overflow: clip;
    border-radius: calc(16 * 1rem / var(--font-size));
  }
  .m-recruit-worry__sparkle--1 {
    top: calc(82 * 1rem / var(--font-size));
    left: 85.3846153846%;
    width: calc(42 * 1rem / var(--font-size));
    height: calc(30 * 1rem / var(--font-size));
    background-image: url("../images/recruit/worry-sparkle-1-sp.webp");
  }
  .m-recruit-worry__sparkle--2 {
    top: calc(18 * 1rem / var(--font-size));
    left: calc(19 * 1rem / var(--font-size));
    width: calc(45 * 1rem / var(--font-size));
    height: calc(19 * 1rem / var(--font-size));
    background-image: url("../images/recruit/worry-sparkle-2-sp.webp");
  }
  .m-recruit-worry__philosophy-box {
    padding: calc(24 * 1rem / var(--font-size));
    border-radius: calc(20 * 1rem / var(--font-size));
    box-shadow: 0 calc(8 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) var(--color__red-alpha5);
    z-index: 1;
    margin-top: calc(-28 * 1rem / var(--font-size));
  }
  .m-recruit-worry__philosophy-text {
    display: grid;
    row-gap: calc(12 * 1rem / var(--font-size));
    font-size: calc(15 * 1rem / var(--font-size));
    line-height: 1.6;
  }
  .m-recruit-worry__philosophy-quote {
    display: block;
    font-size: calc(18 * 1rem / var(--font-size));
    line-height: 1.5;
  }
  .m-recruit-worry__philosophy-body {
    display: block;
  }
  .m-recruit-worry__philosophy-em {
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
  }
  .m-recruit-voice {
    padding-block: calc(60 * 1rem / var(--font-size));
  }
  .m-recruit-voice__lead {
    color: var(--color__gray-steel);
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.5714285714;
    line-break: strict;
    padding-top: calc(12 * 1rem / var(--font-size));
    translate: none;
  }
  .m-recruit-voice__list {
    grid-template-columns: 100%;
    -moz-column-gap: 0;
         column-gap: 0;
    max-width: none;
    padding-top: calc(40 * 1rem / var(--font-size));
  }
  .m-recruit-support {
    padding-block: calc(56 * 1rem / var(--font-size)) calc(64 * 1rem / var(--font-size));
    background-color: var(--color__white);
  }
  .m-recruit-support__intro {
    row-gap: calc(16 * 1rem / var(--font-size));
    max-width: none;
    color: var(--color__onyx-green);
    padding-inline: calc(4 * 1rem / var(--font-size));
    margin-top: calc(48 * 1rem / var(--font-size));
  }
  .m-recruit-support__intro-title {
    font-size: calc(16 * 1rem / var(--font-size));
    line-height: 1.625;
  }
  .m-recruit-support__intro-text {
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.5714285714;
    line-break: strict;
  }
  .m-recruit-support__latin {
    font-weight: 700;
  }
  .m-recruit-support__weeks {
    grid-template-columns: 100%;
    row-gap: calc(24 * 1rem / var(--font-size));
    margin-top: calc(48 * 1rem / var(--font-size));
  }
  .m-recruit-support__voice {
    align-items: center;
    max-width: none;
    margin-top: calc(48 * 1rem / var(--font-size));
  }
  .m-recruit-support__illust {
    width: calc(90 * 1rem / var(--font-size));
  }
  .m-recruit-support__bubble::before, .m-recruit-support__bubble::after {
    content: none;
  }
  .m-recruit-support__bubble {
    flex: 1;
    width: auto;
    min-height: 0;
    font-size: calc(16 * 1rem / var(--font-size));
    line-height: 1.375;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    padding: calc(10 * 1rem / var(--font-size)) calc(14 * 1rem / var(--font-size));
    border-width: 2px;
    border-radius: calc(8 * 1rem / var(--font-size));
    margin-left: calc(-10 * 1rem / var(--font-size));
  }
  .m-recruit-support__ojt {
    grid-template-columns: 100%;
    row-gap: calc(24 * 1rem / var(--font-size));
    max-width: none;
    margin-top: calc(48 * 1rem / var(--font-size));
  }
  .m-recruit-support__band {
    max-width: none;
    font-size: calc(18 * 1rem / var(--font-size));
    line-height: 1.5;
    padding: calc(12 * 1rem / var(--font-size)) calc(24 * 1rem / var(--font-size));
    border-radius: calc(8 * 1rem / var(--font-size));
    margin-top: calc(9 * 1rem / var(--font-size));
  }
  .m-recruit-schedule {
    padding-block: 0 calc(64 * 1rem / var(--font-size));
  }
  .m-recruit-schedule__head {
    padding-block: calc(64 * 1rem / var(--font-size)) calc(40 * 1rem / var(--font-size));
    background-color: var(--color__beige-pale);
  }
  .m-recruit-schedule__head > .l-inner {
    row-gap: calc(24 * 1rem / var(--font-size));
  }
  .m-recruit-schedule__lead {
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.5714285714;
    letter-spacing: 0.08em;
    padding-inline: calc(4 * 1rem / var(--font-size));
  }
  .m-recruit-schedule__body {
    padding-top: 0;
  }
  .m-recruit-requirements {
    padding-block: 0 calc(48 * 1rem / var(--font-size));
  }
  .m-recruit-requirements > .l-inner {
    --_padding-inline: 20;
    padding-top: calc(32 * 1rem / var(--font-size));
  }
  .m-recruit-requirements__bar {
    border-bottom: 1px solid var(--color__gray-soft);
    background-color: var(--color__white);
  }
  .m-recruit-requirements__bar > .l-inner {
    --_padding-inline: 20;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-block: calc(16 * 1rem / var(--font-size)) calc(15 * 1rem / var(--font-size));
  }
  .m-recruit-requirements__lead {
    color: var(--color__gray-steel);
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.6153846154;
    letter-spacing: 0;
    text-align: left;
    line-break: strict;
    padding-top: calc(8 * 1rem / var(--font-size));
  }
  .m-recruit-requirements__jobs {
    grid-template-columns: 100%;
    row-gap: calc(32 * 1rem / var(--font-size));
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-recruit-reason {
    padding-block: calc(80 * 1rem / var(--font-size));
  }
  .m-recruit-reason__tiles {
    grid-template-columns: repeat(2, 1fr);
    row-gap: calc(5 * 1rem / var(--font-size));
    -moz-column-gap: calc(5 * 1rem / var(--font-size));
         column-gap: calc(5 * 1rem / var(--font-size));
    max-width: none;
    margin-top: calc(40 * 1rem / var(--font-size));
  }
  .m-recruit-reason__tile {
    --_text-letter-spacing: 0.1em;
    gap: 0;
    padding-block: calc(8 * 1rem / var(--font-size)) calc(15 * 1rem / var(--font-size));
    box-shadow: none;
  }
  .m-recruit-reason__tile:last-child {
    grid-column: 1/-1;
    width: 100%;
    max-width: calc(215 * 1rem / var(--font-size));
  }
  .m-recruit-reason__tile--common {
    --_text-letter-spacing: 0.1em;
  }
  .m-recruit-reason__tile--tight {
    --_text-letter-spacing: -0.01em;
  }
  .m-recruit-reason__tile--condensed {
    --_text-letter-spacing: -0.02em;
  }
  .m-recruit-reason__label {
    -moz-column-gap: calc(2 * 1rem / var(--font-size));
         column-gap: calc(2 * 1rem / var(--font-size));
    font-size: calc(12 * 1rem / var(--font-size));
    font-weight: 700;
    line-height: 1.4166666667;
  }
  .m-recruit-reason__label::before {
    width: calc(7 * 1rem / var(--font-size));
    height: calc(19 * 1rem / var(--font-size));
  }
  .m-recruit-reason__text {
    font-size: calc(16 * 1rem / var(--font-size));
    font-weight: 700;
    line-height: 1.625;
    padding-left: calc(15 * 1rem / var(--font-size));
  }
  .m-recruit-reason__tight {
    letter-spacing: -0.06em;
  }
  .m-recruit-reality {
    padding-block: calc(64 * 1rem / var(--font-size));
  }
  .m-recruit-reality__cards {
    grid-template-rows: none;
    grid-template-columns: 100%;
    grid-auto-flow: row;
    row-gap: calc(24 * 1rem / var(--font-size));
    margin-top: calc(48 * 1rem / var(--font-size));
  }
  .m-recruit-reality__card {
    --_line-height__text: calc(22 / 13);
    row-gap: calc(20 * 1rem / var(--font-size));
    padding: calc(24 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  }
  .m-recruit-reality__card--indigo {
    --_line-height__text: calc(22 / 13);
  }
  .m-recruit-reality__card-title {
    font-size: calc(20 * 1rem / var(--font-size));
    line-height: 1.4;
    translate: none;
  }
  .m-recruit-reality__box {
    align-content: start;
    min-height: 0;
    padding: calc(16 * 1rem / var(--font-size));
    border-radius: calc(4 * 1rem / var(--font-size));
  }
  .m-recruit-reality__box--trailing-blank {
    padding-bottom: calc(16 * 1rem / var(--font-size));
  }
  .m-recruit-reality__text {
    font-size: calc(13 * 1rem / var(--font-size));
  }
  .m-recruit-reality__text--strong {
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 2.0769230769;
    translate: none;
  }
  .m-recruit-reality__text--lower {
    translate: none;
  }
  .m-recruit-reality__num {
    font-size: calc(15 * 1rem / var(--font-size));
  }
  .m-recruit-reality__unit {
    font-size: calc(14 * 1rem / var(--font-size));
  }
  .m-recruit-reality__triangle {
    width: calc(16 * 1rem / var(--font-size));
    height: calc(8 * 1rem / var(--font-size));
    margin-top: calc(2 * 1rem / var(--font-size));
  }
  .m-recruit-reality__message {
    width: calc(100% + 0.06em);
    height: auto;
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.5714285714;
    letter-spacing: 0.06em;
    padding-left: 0;
    translate: 0 calc(-1 * 1rem / var(--font-size));
    margin-right: -0.06em;
  }
  .m-recruit-photos {
    padding: calc(74 * 1rem / var(--font-size)) 0 calc(60 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size));
  }
  .m-recruit-photos__item {
    width: calc(196 * 1rem / var(--font-size));
    padding-right: calc(14 * 1rem / var(--font-size));
  }
  .m-recruit-photos__item img {
    aspect-ratio: 289/246;
  }
  .m-recruit-message {
    padding-top: calc(40 * 1rem / var(--font-size));
  }
  .m-recruit-message > .l-inner {
    --_padding-inline: 20;
  }
  .m-recruit-message__body {
    row-gap: calc(24 * 1rem / var(--font-size));
  }
  .m-recruit-message__main {
    display: grid;
    row-gap: calc(24 * 1rem / var(--font-size));
    max-width: none;
  }
  .m-recruit-message__photo {
    max-width: calc(335 * 1rem / var(--font-size));
    width: 100%;
    border-radius: 0 0 calc(24 * 1rem / var(--font-size));
    margin-inline: auto;
  }
  .m-recruit-message__photo img {
    aspect-ratio: 335/275;
  }
  .m-recruit-message__texts {
    min-height: 0;
    font-size: calc(13 * 1rem / var(--font-size));
    font-weight: 400;
    line-height: 1.6923076923;
    text-align: left;
    padding-right: calc(1 * 1rem / var(--font-size));
    opacity: 0.8;
  }
  .m-recruit-message__text + .m-recruit-message__text {
    padding-top: calc(22 * 1rem / var(--font-size));
  }
  .m-recruit-job {
    padding-block: calc(48 * 1rem / var(--font-size)) calc(64 * 1rem / var(--font-size));
  }
  .m-recruit-job > .l-inner {
    --_padding-inline: 20;
  }
  .m-recruit-job__lead {
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.7142857143;
    letter-spacing: 0.04em;
    color: var(--color__charcoal);
    text-align: left;
    line-break: strict;
    padding-inline: calc(8 * 1rem / var(--font-size));
  }
  .m-recruit-job__list {
    gap: calc(16 * 1rem / var(--font-size));
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-recruit-highlight {
    min-height: 0;
    padding-block: calc(48 * 1rem / var(--font-size));
  }
  .m-recruit-highlight > .l-inner {
    --_padding-inline: 24;
  }
  .m-recruit-highlight__body {
    display: grid;
    row-gap: calc(32 * 1rem / var(--font-size));
    padding-right: 0;
  }
  .m-recruit-highlight__text {
    row-gap: calc(12 * 1rem / var(--font-size));
    white-space: normal;
  }
  .m-recruit-highlight__title {
    font-size: calc(18 * 1rem / var(--font-size));
    line-height: 1.5;
  }
  .m-recruit-highlight__lead {
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.5384615385;
    line-break: strict;
    opacity: 0.9;
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-recruit-highlight__badges {
    justify-content: center;
  }
  .m-recruit-header {
    padding-top: var(--js-height__header);
    padding-bottom: calc(32 * 1rem / var(--font-size));
  }
  .m-recruit-header__visual {
    height: calc(203 * 1rem / var(--font-size));
    background-image: url("../images/recruit/title-bg-sp.webp");
  }
  .m-recruit-header__group {
    padding-top: calc(77 * 1rem / var(--font-size));
  }
  .m-recruit-header__join {
    top: calc(30 * 1rem / var(--font-size));
    left: calc(10 * 1rem / var(--font-size));
    width: calc(136 * 1rem / var(--font-size));
  }
  .m-recruit-header__en {
    max-width: calc(215 * 1rem / var(--font-size));
    font-size: calc(17 * 1rem / var(--font-size));
    line-height: 2.4117647059;
    margin-left: calc(42 * 1rem / var(--font-size));
  }
  .m-recruit-header__title {
    max-width: calc(165 * 1rem / var(--font-size));
    font-size: calc(24 * 1rem / var(--font-size));
    line-height: 1.4583333333;
    margin-top: calc(1 * 1rem / var(--font-size));
    margin-left: calc(70 * 1rem / var(--font-size));
  }
  .m-recruit-guarantee {
    padding-block: calc(80 * 1rem / var(--font-size));
  }
  .m-recruit-guarantee__list {
    grid-template-columns: 100%;
    row-gap: calc(20 * 1rem / var(--font-size));
    max-width: none;
  }
  .m-recruit-guarantee__card {
    padding: calc(47 * 1rem / var(--font-size)) calc(15 * 1rem / var(--font-size)) calc(19 * 1rem / var(--font-size));
  }
  .m-recruit-guarantee__label {
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.4285714286;
    padding: calc(6 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
    border-radius: 0 0 calc(12 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size));
  }
  .m-recruit-guarantee__text {
    max-width: none;
    font-size: calc(15 * 1rem / var(--font-size));
    line-height: 1.6;
    padding-block: 0;
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-recruit-guarantee__label .m-recruit-guarantee__num {
    font-weight: 400;
  }
  .m-recruit-gallery {
    padding-block: calc(64 * 1rem / var(--font-size));
  }
  .m-recruit-gallery > .l-inner {
    --_padding-inline: 24;
  }
  .m-recruit-gallery__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: calc(12 * 1rem / var(--font-size));
    padding-top: calc(32 * 1rem / var(--font-size));
  }
  .m-recruit-gallery__item {
    aspect-ratio: 4/3;
    box-shadow: 0 calc(4 * 1rem / var(--font-size)) calc(8 * 1rem / var(--font-size)) var(--color__black-alpha15);
  }
  .m-recruit-cta {
    max-width: none;
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-recruit-cta__catch {
    max-width: none;
    min-height: 0;
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.4285714286;
    letter-spacing: 0;
    padding-top: 0;
    border-radius: 0;
    background-color: transparent;
    margin-left: 0;
  }
  .m-recruit-cta__catch::after {
    content: none;
  }
  .m-recruit-cta__job {
    display: block;
    font-size: calc(18 * 1rem / var(--font-size));
    line-height: 1.4444444444;
    letter-spacing: 0;
  }
  .m-recruit-cta__rest {
    display: block;
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.4285714286;
    letter-spacing: 0;
    margin-top: calc(4 * 1rem / var(--font-size));
  }
  .m-recruit-cta__half {
    display: inline;
    letter-spacing: 0;
    translate: none;
  }
  .m-recruit-cta__button {
    display: flex;
    justify-content: center;
    align-items: center;
    -moz-column-gap: calc(12 * 1rem / var(--font-size));
         column-gap: calc(12 * 1rem / var(--font-size));
    min-height: 0;
    padding: calc(20 * 1rem / var(--font-size)) calc(24 * 1rem / var(--font-size));
    margin-top: calc(16 * 1rem / var(--font-size));
  }
  .m-recruit-cta__label {
    font-size: calc(18 * 1rem / var(--font-size));
    line-height: 1.4444444444;
    letter-spacing: 0;
    margin-top: 0;
  }
  .m-recruit-cta__icon {
    position: static;
    flex-shrink: 0;
    width: calc(24 * 1rem / var(--font-size));
    height: calc(24 * 1rem / var(--font-size));
  }
  .m-recruit-contact {
    padding-block: calc(48 * 1rem / var(--font-size)) calc(64 * 1rem / var(--font-size));
  }
  .m-recruit-contact > .l-inner {
    --_padding-inline: 24;
  }
  .m-recruit-contact__title {
    font-size: calc(24 * 1rem / var(--font-size));
    line-height: 1.5833333333;
  }
  .m-recruit-contact__lead {
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.7857142857;
    padding-top: calc(64 * 1rem / var(--font-size));
    translate: none;
  }
  .m-recruit-contact__lead::before {
    top: calc(28 * 1rem / var(--font-size));
    width: calc(120 * 1rem / var(--font-size));
    height: calc(4 * 1rem / var(--font-size));
  }
  .m-recruit-contact__guide {
    max-width: none;
    padding-top: calc(32 * 1rem / var(--font-size));
  }
  .m-recruit-contact__catch {
    min-height: 0;
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.6153846154;
    letter-spacing: 0;
    padding: calc(8 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
    border-radius: calc(24 * 1rem / var(--font-size));
  }
  .m-recruit-contact__catch::before {
    width: calc(19 * 1rem / var(--font-size));
  }
  .m-recruit-contact__catch::after {
    width: calc(16 * 1rem / var(--font-size));
    height: calc(9 * 1rem / var(--font-size));
  }
  .m-recruit-contact__apply {
    font-size: calc(16 * 1rem / var(--font-size));
    line-height: 1.625;
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-recruit-contact__text {
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.6153846154;
    text-align: center;
    padding-top: calc(12 * 1rem / var(--font-size));
  }
  .m-recruit-contact__actions {
    grid-template-columns: 100%;
    row-gap: calc(16 * 1rem / var(--font-size));
    max-width: none;
    padding-top: calc(32 * 1rem / var(--font-size));
  }
  .m-recruit-contact__button {
    -moz-column-gap: calc(10 * 1rem / var(--font-size));
         column-gap: calc(10 * 1rem / var(--font-size));
    min-height: calc(64 * 1rem / var(--font-size));
    padding: calc(10 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  }
  .m-recruit-contact__button--tel {
    padding: calc(10 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  }
  .m-recruit-contact__icon {
    width: calc(20 * 1rem / var(--font-size));
    height: calc(20 * 1rem / var(--font-size));
  }
  .m-recruit-contact__button--web .m-recruit-contact__icon {
    width: calc(24 * 1rem / var(--font-size));
    height: calc(18 * 1rem / var(--font-size));
    translate: none;
  }
  .m-recruit-contact__label {
    font-size: calc(20 * 1rem / var(--font-size));
    line-height: 1.25;
    letter-spacing: 0.05em;
    text-align: center;
    white-space: normal;
    translate: none;
  }
  .m-recruit-contact__label-note {
    display: block;
    font-size: calc(12 * 1rem / var(--font-size));
    line-height: 1.4166666667;
    letter-spacing: 0;
  }
  .m-recruit-contact__button--web .m-recruit-contact__label {
    font-size: calc(16 * 1rem / var(--font-size));
    line-height: 1.4375;
    letter-spacing: 0;
    translate: none;
  }
  .m-recruit-contact__half {
    letter-spacing: -0.5em;
  }
  .m-recruit-benefit {
    padding-block: calc(80 * 1rem / var(--font-size));
  }
  .m-recruit-benefit__inner {
    --_padding-inline: 24;
  }
  .m-recruit-benefit__text {
    color: var(--color__charcoal);
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.7142857143;
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-recruit-benefit__en {
    font-weight: 700;
  }
  .m-recruit-benefit__visual {
    max-width: none;
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-recruit-benefit__illust {
    max-width: none;
    aspect-ratio: 342/200;
    border-radius: calc(12 * 1rem / var(--font-size));
    overflow: clip;
  }
  .m-recruit-benefit__list {
    grid-template-columns: 1fr;
    row-gap: calc(16 * 1rem / var(--font-size));
    padding: calc(20 * 1rem / var(--font-size));
    margin-top: calc(-48 * 1rem / var(--font-size));
  }
  .m-recruit-benefit__item {
    --_bar-color: var(--color__red);
    -moz-column-gap: calc(12 * 1rem / var(--font-size));
         column-gap: calc(12 * 1rem / var(--font-size));
    color: var(--color__crimson);
    font-size: calc(15 * 1rem / var(--font-size));
    line-height: 1.4;
  }
  .m-recruit-benefit__item::before {
    width: calc(4 * 1rem / var(--font-size));
    height: calc(20 * 1rem / var(--font-size));
    border-radius: calc(2 * 1rem / var(--font-size));
  }
  .m-recruit-benefit__item .m-recruit-benefit__en {
    font-family: inherit;
  }
  .m-recruit-benefit__item-text {
    translate: none;
  }
  .m-recruit-benefit__item--crimson {
    --_bar-color: var(--color__red);
  }
  .m-recruit-benefit__item--spaced {
    letter-spacing: 0.01em;
  }
  .m-recruit-benefit__tight {
    letter-spacing: 0.01em;
  }
  .m-recruit-balance {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-recruit-balance__inner {
    --_padding-inline: 20;
  }
  .m-recruit-balance__intro {
    position: relative;
    isolation: isolate;
    padding: calc(20 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size)) 0;
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-recruit-balance__lead {
    gap: calc(16 * 1rem / var(--font-size));
  }
  .m-recruit-balance__tag {
    font-size: calc(11 * 1rem / var(--font-size));
    line-height: 1.4545454545;
    padding: calc(4 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size));
    border-radius: calc(4 * 1rem / var(--font-size));
  }
  .m-recruit-balance__title {
    color: var(--color__jet-light);
    font-size: calc(20 * 1rem / var(--font-size));
    line-height: 1.5;
    letter-spacing: 0.04em;
    text-indent: 0;
    white-space: normal;
  }
  .m-recruit-balance__half--open {
    margin-left: 0;
  }
  .m-recruit-balance__half--close {
    margin-left: 0;
  }
  .m-recruit-balance__photo {
    position: absolute;
    top: 0;
    right: calc(-4 * 1rem / var(--font-size));
    width: 100%;
    max-width: calc(186 * 1rem / var(--font-size));
    aspect-ratio: 186/113;
    border-radius: calc(12 * 1rem / var(--font-size));
    overflow: clip;
    z-index: -1;
    margin-left: 0;
  }
  .m-recruit-balance__detail {
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-recruit-balance__body {
    gap: calc(12 * 1rem / var(--font-size));
  }
  .m-recruit-balance__paragraph {
    color: var(--color__gray-steel);
    font-weight: 500;
    line-height: 1.7857142857;
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-recruit-balance__accent {
    font-size: calc(16 * 1rem / var(--font-size));
    line-height: 1.625;
    translate: none;
  }
  .m-recruit-balance__points {
    gap: calc(28 * 1rem / var(--font-size));
    padding-top: calc(32 * 1rem / var(--font-size));
    border-top: 1px solid var(--color__red-alpha15);
    margin-top: calc(31 * 1rem / var(--font-size));
  }
  .m-recruit-balance__point {
    -moz-column-gap: calc(16 * 1rem / var(--font-size));
         column-gap: calc(16 * 1rem / var(--font-size));
    row-gap: calc(6 * 1rem / var(--font-size));
  }
  .m-recruit-balance__point::before {
    height: calc(56 * 1rem / var(--font-size));
    border-radius: calc(2 * 1rem / var(--font-size));
  }
  .m-recruit-balance__point-title {
    color: var(--color__jet-light);
    line-height: 1.375;
  }
  .m-recruit-balance__point-text {
    max-width: none;
    color: var(--color__gray-steel);
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.5384615385;
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-reason {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-reason::before {
    display: none;
  }
  .m-reason > .l-inner {
    --_padding-inline: 20;
  }
  .m-reason__title {
    height: auto;
    font-size: calc(24 * 1rem / var(--font-size));
    line-height: 1.45;
    letter-spacing: 0;
    padding-top: calc(4 * 1rem / var(--font-size));
    margin-top: 0;
  }
  .m-reason__title-num {
    font-size: calc(48 * 1rem / var(--font-size));
    font-weight: 700;
    line-height: 1.26;
    letter-spacing: 0;
    padding-right: calc(4 * 1rem / var(--font-size));
  }
  .m-reason__title-no {
    letter-spacing: 0;
  }
  .m-reason__title-large {
    font-size: calc(24 * 1rem / var(--font-size));
    letter-spacing: 0;
    margin-right: 0;
  }
  .m-reason__list {
    gap: calc(32 * 1rem / var(--font-size));
    padding-top: calc(40 * 1rem / var(--font-size));
  }
  .m-reason__item + .m-reason__item {
    padding-top: calc(32 * 1rem / var(--font-size));
    border-top-color: var(--color__red-alpha30);
  }
  .m-reason-item {
    grid-template-columns: 100%;
    gap: calc(16 * 1rem / var(--font-size));
  }
  .m-reason-item__body {
    gap: calc(16 * 1rem / var(--font-size));
  }
  .m-reason-item__head {
    gap: calc(12 * 1rem / var(--font-size));
  }
  .m-reason-item__num {
    width: calc(48 * 1rem / var(--font-size));
    height: calc(48 * 1rem / var(--font-size));
    font-size: calc(22 * 1rem / var(--font-size));
  }
  .m-reason-item__title {
    font-size: calc(18 * 1rem / var(--font-size));
    letter-spacing: 0;
    white-space: normal;
  }
  .m-reason-item__text {
    max-width: none;
    line-height: 1.5714285714;
    padding-left: 0;
  }
  .m-proposal-step {
    grid-template-columns: 1fr;
    align-items: start;
    row-gap: calc(20 * 1rem / var(--font-size));
    height: auto;
    padding-block: calc(32 * 1rem / var(--font-size));
  }
  .m-proposal-step::after {
    width: 100%;
  }
  .m-proposal-step__figure {
    width: calc(180 * 1rem / var(--font-size));
    height: calc(180 * 1rem / var(--font-size));
    margin-inline: auto;
  }
  .m-proposal-step__figure img {
    position: static;
    width: 100%;
    height: 100%;
  }
  .m-proposal-step__num {
    font-size: calc(72 * 1rem / var(--font-size));
  }
  .m-proposal-step__body {
    width: 100%;
    gap: calc(12 * 1rem / var(--font-size));
  }
  .m-proposal-step__title {
    font-size: calc(18 * 1rem / var(--font-size));
  }
  .m-proposal-step__text {
    font-size: calc(14 * 1rem / var(--font-size));
  }
  .m-proposal-flow {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-proposal-flow__list {
    max-width: none;
    padding-block: calc(24 * 1rem / var(--font-size)) 0;
  }
  .m-privacy-box {
    padding: calc(16 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size));
    border-radius: calc(16 * 1rem / var(--font-size));
  }
  .m-privacy-box__title {
    font-size: calc(15 * 1rem / var(--font-size));
    line-height: 1.6;
  }
  .m-privacy-box__body {
    max-height: calc(180 * 1rem / var(--font-size));
    font-size: calc(12 * 1rem / var(--font-size));
    line-height: 1.7;
    padding-left: 0;
    margin-top: calc(16 * 1rem / var(--font-size));
  }
  .m-privacy-box__body > p:not(:first-child) {
    margin-top: calc(14 * 1rem / var(--font-size));
  }
  .m-privacy-box__body::-webkit-scrollbar {
    width: calc(12 * 1rem / var(--font-size));
  }
  .m-privacy-box__agree {
    padding-top: calc(14 * 1rem / var(--font-size));
    padding-left: 0;
    margin-top: calc(16 * 1rem / var(--font-size));
  }
  .m-privacy-box__agree label {
    min-height: calc(46 * 1rem / var(--font-size));
    -moz-column-gap: calc(12 * 1rem / var(--font-size));
         column-gap: calc(12 * 1rem / var(--font-size));
    align-items: center;
  }
  .m-privacy-box__agree input[type=checkbox] {
    width: calc(24 * 1rem / var(--font-size));
    height: calc(24 * 1rem / var(--font-size));
  }
  .m-privacy-box__agree input[type=checkbox]:checked {
    background-size: calc(16 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size));
  }
  .m-privacy-box__agree .wpcf7-list-item-label {
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.7;
  }
  .m-price-box {
    padding: calc(12 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  }
  .m-price-box__name {
    font-size: calc(15 * 1rem / var(--font-size));
    white-space: normal;
  }
  .m-price-box__price {
    padding-left: 0;
  }
  .m-price-box__icon {
    width: calc(20 * 1rem / var(--font-size));
    height: calc(20 * 1rem / var(--font-size));
  }
  .m-price-box__value {
    font-size: calc(16 * 1rem / var(--font-size));
  }
  .m-price-box__supplement {
    font-size: calc(11 * 1rem / var(--font-size));
  }
  .m-policy {
    padding-top: calc(30 * 1rem / var(--font-size));
  }
  .m-policy__bands {
    gap: calc(16 * 1rem / var(--font-size));
    max-width: none;
    padding-block: calc(32 * 1rem / var(--font-size)) calc(48 * 1rem / var(--font-size));
  }
  .m-policy__band {
    padding-block: calc(24 * 1rem / var(--font-size));
  }
  .m-policy__pill {
    height: auto;
    font-size: calc(17 * 1rem / var(--font-size));
    padding-block: calc(5 * 1rem / var(--font-size));
  }
  .m-policy__band--corporate .m-policy__pill {
    font-size: calc(17 * 1rem / var(--font-size));
  }
  .m-policy__list {
    gap: calc(16 * 1rem / var(--font-size));
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-policy-item__title {
    font-size: calc(17 * 1rem / var(--font-size));
    padding-left: calc(34 * 1rem / var(--font-size));
  }
  .m-policy-item__icon {
    width: calc(21 * 1rem / var(--font-size));
    height: calc(21 * 1rem / var(--font-size));
  }
  .m-policy-item__text {
    font-size: calc(15 * 1rem / var(--font-size));
    min-height: 0;
    padding-left: calc(34 * 1rem / var(--font-size));
  }
  .m-point-card__num {
    font-size: calc(30 * 1rem / var(--font-size));
  }
  .m-point-card__name {
    font-size: calc(20 * 1rem / var(--font-size));
    line-height: 1.6;
  }
  .m-point-card__text {
    width: calc(100% + 2 * 1rem / var(--font-size));
    font-size: calc(12 * 1rem / var(--font-size));
  }
  .m-philosophy {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-philosophy > .l-inner {
    gap: calc(24 * 1rem / var(--font-size));
  }
  .m-philosophy__heading {
    padding-block: 0;
  }
  .m-philosophy__card {
    padding: calc(20 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) calc(24 * 1rem / var(--font-size));
    border-radius: 0 calc(12 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size));
  }
  .m-philosophy__label {
    font-size: calc(16 * 1rem / var(--font-size));
  }
  .m-philosophy__statements {
    gap: calc(8 * 1rem / var(--font-size));
  }
  .m-philosophy__statement {
    font-size: calc(18 * 1rem / var(--font-size));
    line-height: 1.6;
    letter-spacing: 0.05em;
    padding-left: calc(18 * 1rem / var(--font-size));
  }
  .m-philosophy__statement::before {
    left: 0;
  }
  .m-philosophy__guidelines {
    grid-template-columns: 100%;
    gap: calc(12 * 1rem / var(--font-size));
  }
  .m-philosophy__guideline--wide {
    grid-column: auto;
  }
  .m-pagination {
    gap: calc(8 * 1rem / var(--font-size));
    padding-top: calc(32 * 1rem / var(--font-size));
  }
  .m-pagination .page-numbers {
    width: calc(46 * 1rem / var(--font-size));
    height: calc(46 * 1rem / var(--font-size));
    font-size: calc(20 * 1rem / var(--font-size));
  }
  .m-pagination .page-numbers::before {
    content: none;
  }
  .m-pagination .page-numbers.dots {
    height: calc(46 * 1rem / var(--font-size));
  }
  .m-pagination .prev,
  .m-pagination .next {
    width: calc(46 * 1rem / var(--font-size));
    height: calc(46 * 1rem / var(--font-size));
  }
  .m-pagination .prev {
    justify-items: center;
  }
  .m-pagination .next {
    justify-items: center;
  }
  .m-pagination--box {
    gap: calc(6 * 1rem / var(--font-size));
  }
  .m-pagination--box::after {
    content: "";
    flex-basis: 100%;
    order: 1;
  }
  .m-pagination--box .page-numbers {
    width: auto;
    min-width: calc(36 * 1rem / var(--font-size));
    height: calc(44 * 1rem / var(--font-size));
    font-size: calc(18 * 1rem / var(--font-size));
    padding-inline: calc(4 * 1rem / var(--font-size));
  }
  .m-pagination--box .prev,
  .m-pagination--box .next,
  .m-pagination--box .first,
  .m-pagination--box .last {
    order: 2;
    gap: calc(4 * 1rem / var(--font-size));
    min-width: calc(76 * 1rem / var(--font-size));
    font-size: calc(14 * 1rem / var(--font-size));
    padding-inline: calc(6 * 1rem / var(--font-size));
  }
  .m-page-title {
    padding-top: var(--js-height__header);
  }
  .m-page-title__bg {
    height: calc(140 * 1rem / var(--font-size));
  }
  .m-page-title__card {
    padding-bottom: calc(16 * 1rem / var(--font-size));
    border-radius: calc(12 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size)) 0 0;
  }
  .m-page-title__badge {
    max-width: calc(343 * 1rem / var(--font-size));
    font-size: calc(12 * 1rem / var(--font-size));
    line-height: 1.6666666667;
    padding: calc(2 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size));
    margin-top: calc(-12 * 1rem / var(--font-size));
  }
  .m-page-title__badge-note {
    font-size: calc(10 * 1rem / var(--font-size));
    letter-spacing: 0.1em;
  }
  .m-page-title__title {
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-page-title__badge + .m-page-title__title {
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-page-title__lead {
    font-size: calc(14 * 1rem / var(--font-size));
  }
  .m-page-title__main {
    font-size: calc(22 * 1rem / var(--font-size));
    line-height: 1.5;
  }
  .m-page-title__lead + .m-page-title__main {
    margin-top: calc(4 * 1rem / var(--font-size));
  }
  .m-page-title__sub {
    font-size: calc(15 * 1rem / var(--font-size));
    line-height: 1.5;
  }
  .m-page-title__line {
    width: calc(56 * 1rem / var(--font-size));
    margin-top: calc(12 * 1rem / var(--font-size));
  }
  .m-page-title__text {
    font-size: calc(12 * 1rem / var(--font-size));
    line-height: 1.7;
    letter-spacing: 0.02em;
    margin-top: calc(10 * 1rem / var(--font-size));
  }
  .m-page-title + .m-breadcrumb {
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-page-nav {
    position: static;
    width: 100%;
    padding-top: calc(32 * 1rem / var(--font-size));
  }
  .m-page-nav__body {
    position: static;
  }
  .m-page-nav__title {
    width: auto;
    font-size: calc(16 * 1rem / var(--font-size));
  }
  .m-page-nav__link {
    font-size: calc(14 * 1rem / var(--font-size));
  }
  .m-page-intro {
    padding-block: calc(24 * 1rem / var(--font-size)) calc(40 * 1rem / var(--font-size));
  }
  .m-page-intro__title {
    font-size: calc(24 * 1rem / var(--font-size));
    line-height: 1.5;
  }
  .m-page-intro__title::after {
    width: calc(60 * 1rem / var(--font-size));
    margin-top: calc(12 * 1rem / var(--font-size));
  }
  .m-page-intro__text {
    line-height: 1.9;
    letter-spacing: 0.05em;
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-page-content {
    padding-block: calc(40 * 1rem / var(--font-size)) calc(56 * 1rem / var(--font-size));
  }
  .m-onestop__steps {
    grid-template-columns: 1fr;
    max-width: none;
    margin-top: calc(24 * 1rem / var(--font-size));
  }
  .m-numbered-heading {
    row-gap: calc(8 * 1rem / var(--font-size));
  }
  .m-numbered-heading__head {
    -moz-column-gap: calc(8 * 1rem / var(--font-size));
         column-gap: calc(8 * 1rem / var(--font-size));
  }
  .m-numbered-heading__num {
    width: calc(36 * 1rem / var(--font-size));
    height: calc(36 * 1rem / var(--font-size));
    font-size: calc(15 * 1rem / var(--font-size));
    line-height: 1.4666666667;
  }
  .m-numbered-heading__title {
    font-size: calc(24 * 1rem / var(--font-size));
    line-height: 1.5;
  }
  .m-numbered-heading__sub {
    flex-wrap: wrap;
    row-gap: calc(4 * 1rem / var(--font-size));
  }
  .m-numbered-heading__subtitle {
    min-width: 0;
    font-size: calc(20 * 1rem / var(--font-size));
    line-height: 1.6;
  }
  .m-numbered-heading__note {
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.6;
  }
  .m-not-found {
    padding-block: calc(40 * 1rem / var(--font-size)) calc(56 * 1rem / var(--font-size));
  }
  .m-not-found__card {
    padding: calc(24 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) calc(32 * 1rem / var(--font-size));
    border-radius: calc(16 * 1rem / var(--font-size));
  }
  .m-not-found__lead {
    font-size: calc(18 * 1rem / var(--font-size));
    line-height: 1.5555555556;
  }
  .m-not-found__text {
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.8;
    margin-top: calc(16 * 1rem / var(--font-size));
  }
  .m-not-found__button {
    margin-top: calc(28 * 1rem / var(--font-size));
  }
  .m-news {
    padding-block: calc(64 * 1rem / var(--font-size)) calc(63 * 1rem / var(--font-size));
  }
  .m-news > .l-inner {
    --_padding-inline: 24;
  }
  .m-news__title {
    font-size: calc(28 * 1rem / var(--font-size));
    line-height: 1.3928571429;
    margin-top: calc(12 * 1rem / var(--font-size));
  }
  .m-news__body {
    grid-template-columns: 100%;
    row-gap: calc(24 * 1rem / var(--font-size));
    padding-top: calc(24 * 1rem / var(--font-size));
  }
  .m-news__filter {
    display: flex;
    flex-wrap: wrap;
    row-gap: calc(4 * 1rem / var(--font-size));
    -moz-column-gap: calc(12 * 1rem / var(--font-size));
         column-gap: calc(12 * 1rem / var(--font-size));
  }
  .m-news__list {
    row-gap: calc(24 * 1rem / var(--font-size));
  }
  .m-news__more {
    display: block;
    padding-top: calc(32 * 1rem / var(--font-size));
  }
  .m-news__more > .m-more-link {
    --_font-size__text: 18;
    --_column-gap: 8;
    --_padding-bottom: 16;
    --_padding-left: 0;
    display: flex;
    justify-content: center;
  }
  .m-news-card {
    -moz-column-gap: calc(11 * 1rem / var(--font-size));
         column-gap: calc(11 * 1rem / var(--font-size));
  }
  .m-news-card__thumb {
    aspect-ratio: 161/227;
  }
  .m-news-card__meta {
    flex-direction: column;
    align-items: flex-start;
  }
  .m-news-card__body {
    max-width: none;
    height: calc(164 * 1rem / var(--font-size));
  }
  .m-news-card__body::before {
    top: calc(91 * 1rem / var(--font-size) - 1px);
    width: 100%;
  }
  .m-news-card__title {
    width: calc(100% + 12 * 1rem / var(--font-size));
    height: calc(84 * 1rem / var(--font-size));
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.5;
    -webkit-line-clamp: 4;
  }
  .m-news-card__num {
    letter-spacing: -0.036em;
  }
  .m-news-card__excerpt {
    font-size: calc(13 * 1rem / var(--font-size));
    -webkit-line-clamp: 3;
  }
  .m-news-card__arrow {
    display: none;
  }
  .m-news-card--archive {
    align-items: start;
    padding-bottom: 0;
  }
  .m-news-card--archive .m-news-card__thumb {
    aspect-ratio: 161/227;
  }
  .m-news-card--archive .m-news-card__content {
    height: auto;
  }
  .m-news-card__text {
    row-gap: calc(8 * 1rem / var(--font-size));
  }
  .m-news-card__keywords {
    -moz-column-gap: calc(12 * 1rem / var(--font-size));
         column-gap: calc(12 * 1rem / var(--font-size));
  }
  .m-news-card__keyword {
    min-width: 0;
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.6;
  }
  .m-news-article {
    row-gap: calc(32 * 1rem / var(--font-size));
  }
  .m-news-article__title {
    font-size: calc(20 * 1rem / var(--font-size));
    line-height: 1.6;
  }
  .m-news-article__pager {
    grid-template-columns: 1fr auto 1fr;
    -moz-column-gap: calc(8 * 1rem / var(--font-size));
         column-gap: calc(8 * 1rem / var(--font-size));
    padding-top: calc(32 * 1rem / var(--font-size));
    margin-top: 0;
  }
  .m-news-article__pager-prev,
  .m-news-article__pager-next {
    -moz-column-gap: calc(4 * 1rem / var(--font-size));
         column-gap: calc(4 * 1rem / var(--font-size));
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 3.1428571429;
  }
  .m-news-article__pager-list {
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 3.1428571429;
    padding-inline: calc(8 * 1rem / var(--font-size));
  }
  .m-news-article__pager-icon {
    width: calc(20 * 1rem / var(--font-size));
    height: calc(20 * 1rem / var(--font-size));
  }
  .m-news-archive {
    padding-block: calc(64 * 1rem / var(--font-size));
  }
  .m-news-archive__body {
    grid-template-columns: 100%;
    row-gap: calc(48 * 1rem / var(--font-size));
  }
  .m-news-archive__filter {
    padding: calc(16 * 1rem / var(--font-size));
  }
  .m-news-archive__filter-list {
    grid-template-columns: repeat(2, max-content);
    justify-content: start;
    row-gap: calc(4 * 1rem / var(--font-size));
    -moz-column-gap: calc(12 * 1rem / var(--font-size));
         column-gap: calc(12 * 1rem / var(--font-size));
  }
  .m-news-archive__filter-list > li:first-child {
    grid-column: 1/-1;
  }
  .m-news-archive__list {
    row-gap: calc(24 * 1rem / var(--font-size));
    padding-bottom: calc(80 * 1rem / var(--font-size));
  }
  .m-news-archive__empty {
    gap: calc(32 * 1rem / var(--font-size));
    padding-bottom: calc(80 * 1rem / var(--font-size));
  }
  .m-news-archive__empty-text {
    font-size: calc(14 * 1rem / var(--font-size));
  }
  .m-news-archive__side {
    row-gap: calc(16 * 1rem / var(--font-size));
  }
  .m-news-archive__tags {
    padding: calc(16 * 1rem / var(--font-size));
  }
  .m-news-archive__tag-list {
    gap: calc(8 * 1rem / var(--font-size));
  }
  .m-news-archive__recommend {
    padding: calc(16 * 1rem / var(--font-size));
  }
  .m-news-archive__recommend-title {
    max-width: none;
  }
  .m-news-archive__recommend-list {
    -moz-column-gap: calc(16 * 1rem / var(--font-size));
         column-gap: calc(16 * 1rem / var(--font-size));
  }
  .m-news-archive--single .m-news-archive__body {
    grid-template-columns: 100%;
  }
  .m-news-archive--single .m-news-archive__side {
    order: 1;
  }
  .m-mv {
    padding-top: calc(103 * 1rem / var(--font-size));
  }
  .m-mv__photo {
    height: calc(627 * 1rem / var(--font-size));
    aspect-ratio: auto;
  }
  .m-mv__body {
    bottom: 9.7288676236%;
    left: calc(15 * 1rem / var(--font-size));
    gap: calc(14 * 1rem / var(--font-size));
  }
  .m-mv__badge {
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.4615384615;
    color: var(--color__gray-deep);
    min-width: calc(198 * 1rem / var(--font-size));
    padding: calc(8 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size)) calc(9 * 1rem / var(--font-size));
    border-radius: calc(20 * 1rem / var(--font-size));
    background-color: var(--color__white);
    opacity: 0.8;
  }
  .m-mv__catch {
    font-size: calc(27 * 1rem / var(--font-size));
    line-height: 1.1851851852;
    text-shadow: 0 calc(2 * 1rem / var(--font-size)) calc(8 * 1rem / var(--font-size)) var(--color__black-alpha60);
    translate: 0 calc(2 * 1rem / var(--font-size));
  }
  .m-more-link {
    --_font-size__text: 16;
    --_column-gap: 16;
    --_padding-bottom: 8;
    --_padding-left: 10;
  }
  .m-menu {
    padding-block: calc(32 * 1rem / var(--font-size)) calc(40 * 1rem / var(--font-size));
  }
  .m-menu > .l-inner {
    --_padding-inline: 20;
    --_max-width: 727;
  }
  .m-menu__note {
    font-size: calc(13 * 1rem / var(--font-size));
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-menu__list {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, calc(340 * 1rem / var(--font-size))), 1fr));
    row-gap: calc(10 * 1rem / var(--font-size));
    -moz-column-gap: calc(10 * 1rem / var(--font-size));
         column-gap: calc(10 * 1rem / var(--font-size));
    padding-top: calc(24 * 1rem / var(--font-size));
  }
  .m-menu__list > li {
    --_admin-bar: var(--wp-admin--admin-bar--height, 0px);
    --_offset: calc(var(--_index, 0) * calc(5 * 1rem / var(--font-size)) + calc(20 * 1rem / var(--font-size)));
    --_top: calc(
      var(--_admin-bar) + var(--js-height__header, 0px) + var(--_offset)
    );
    position: sticky;
    top: var(--_top);
  }
  .m-menu__list > li[data-scroll-animation-item] {
    opacity: 1;
    animation: scroll-animation-fade-in linear both;
    animation-timeline: view();
    animation-range: cover calc(100vh - var(--_top) - calc(250 * 1rem / var(--font-size))) cover calc(100vh - var(--_top));
  }
  .m-menu-card {
    min-height: calc(241 * 1rem / var(--font-size));
  }
  .m-manufacturers {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-manufacturers__inner {
    gap: calc(32 * 1rem / var(--font-size));
  }
  .m-manufacturers__heading {
    padding-block: 0;
  }
  .m-manufacturers__heading .m-heading__lead {
    max-width: none;
  }
  .m-manufacturers__logos {
    grid-template-columns: repeat(3, 1fr);
    row-gap: calc(12 * 1rem / var(--font-size));
    -moz-column-gap: calc(16 * 1rem / var(--font-size));
         column-gap: calc(16 * 1rem / var(--font-size));
    padding: calc(16 * 1rem / var(--font-size));
  }
  .m-management {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-management__list {
    gap: calc(16 * 1rem / var(--font-size));
  }
  .m-lined-heading {
    grid-template-columns: 1fr;
  }
  .m-lined-heading__title {
    font-size: calc(20 * 1rem / var(--font-size));
    line-height: 1.5;
    white-space: normal;
    line-break: strict;
    padding-left: calc(16 * 1rem / var(--font-size));
  }
  .m-license {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-license__list {
    grid-template-columns: 100%;
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-label-card--text {
    padding: calc(53 * 1rem / var(--font-size)) calc(15 * 1rem / var(--font-size)) calc(19 * 1rem / var(--font-size));
  }
  .m-label-card__list {
    color: var(--color__black);
  }
  .m-label-card__text {
    min-height: 0;
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.5714285714;
    color: var(--color__black);
  }
  .m-label-card__latin {
    font-family: inherit;
  }
  .m-job-detail {
    display: grid;
    overflow: clip;
    border: 1px solid var(--_color__main);
    border-radius: calc(16 * 1rem / var(--font-size));
    background-color: var(--_color__bg);
  }
  .m-job-detail__title {
    color: var(--color__white);
    font-size: calc(18 * 1rem / var(--font-size));
    line-height: 1.4444444444;
    padding: calc(15 * 1rem / var(--font-size)) calc(15 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
    background-color: var(--_color__main);
  }
  .m-job-detail__list {
    display: grid;
    row-gap: calc(4 * 1rem / var(--font-size));
    padding: calc(16 * 1rem / var(--font-size)) calc(15 * 1rem / var(--font-size)) calc(15 * 1rem / var(--font-size));
  }
  .m-job-detail__row {
    display: grid;
    row-gap: calc(6 * 1rem / var(--font-size));
    padding-block: calc(12 * 1rem / var(--font-size)) calc(11 * 1rem / var(--font-size));
    border-bottom: 1px solid var(--color__gray-soft);
  }
  .m-job-detail__term {
    display: flex;
    align-items: center;
    -moz-column-gap: calc(8 * 1rem / var(--font-size));
         column-gap: calc(8 * 1rem / var(--font-size));
    font-size: calc(13 * 1rem / var(--font-size));
    font-weight: 700;
    line-height: 1.4615384615;
  }
  .m-job-detail__badge {
    color: var(--color__white);
    font-size: calc(10 * 1rem / var(--font-size));
    line-height: 1.4;
    padding: calc(2 * 1rem / var(--font-size)) calc(6 * 1rem / var(--font-size));
    border-radius: calc(3 * 1rem / var(--font-size));
    background-color: var(--color__gray-dim);
  }
  .m-job-detail__desc {
    color: var(--color__gray-steel);
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.6153846154;
    line-break: strict;
  }
  .m-job-detail__gap {
    display: none;
  }
  .m-job-card {
    row-gap: calc(16 * 1rem / var(--font-size));
    padding: calc(20 * 1rem / var(--font-size));
    border-radius: calc(12 * 1rem / var(--font-size));
    box-shadow: 0 calc(4 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size)) var(--color__red-dark-alpha20);
  }
  .m-job-card--crimson {
    --_bg: var(--color__red);
  }
  .m-job-card__head::before {
    width: calc(5 * 1rem / var(--font-size));
    height: calc(32 * 1rem / var(--font-size));
    border-radius: calc(2 * 1rem / var(--font-size));
    box-shadow: none;
  }
  .m-job-card__head {
    -moz-column-gap: calc(12 * 1rem / var(--font-size));
         column-gap: calc(12 * 1rem / var(--font-size));
  }
  .m-job-card__title {
    align-items: baseline;
    -moz-column-gap: calc(8 * 1rem / var(--font-size));
         column-gap: calc(8 * 1rem / var(--font-size));
  }
  .m-job-card__num {
    width: auto;
    font-size: calc(26 * 1rem / var(--font-size));
    line-height: 1.0769230769;
    letter-spacing: 0;
    text-align: left;
    translate: none;
  }
  .m-job-card__name {
    font-size: calc(16 * 1rem / var(--font-size));
    line-height: 1.375;
    letter-spacing: 0.06em;
    line-break: strict;
    translate: none;
  }
  .m-job-card__text {
    min-height: 0;
    font-size: calc(13 * 1rem / var(--font-size));
    font-weight: 500;
    line-height: 1.6153846154;
    letter-spacing: 0.04em;
    line-break: strict;
    padding-left: 0;
  }
  .m-job-card__latin {
    font-family: inherit;
  }
  .m-integrity {
    padding-block: calc(40 * 1rem / var(--font-size)) calc(64 * 1rem / var(--font-size));
  }
  .m-integrity__label {
    font-size: calc(14 * 1rem / var(--font-size));
  }
  .m-integrity__title {
    font-size: calc(22 * 1rem / var(--font-size));
    line-height: 1.6;
    letter-spacing: 0.05em;
    padding-top: calc(8 * 1rem / var(--font-size));
  }
  .m-integrity__row {
    grid-template-columns: 100%;
    row-gap: calc(24 * 1rem / var(--font-size));
    padding-top: calc(32 * 1rem / var(--font-size));
  }
  .m-integrity__row > .m-integrity__body {
    padding-top: 0;
  }
  .m-integrity__text {
    max-width: none;
    line-height: 1.9;
  }
  .m-integrity__caption {
    font-size: calc(12 * 1rem / var(--font-size));
  }
  .m-integrity__caption--end {
    justify-content: flex-start;
    padding-top: calc(12 * 1rem / var(--font-size));
  }
  .m-integrity__photo {
    max-width: none;
  }
  .m-integrity__row--reverse {
    grid-template-columns: 100%;
    min-height: 0;
    padding-top: calc(48 * 1rem / var(--font-size));
  }
  .m-integrity__row--reverse .m-integrity__photo {
    max-width: none;
  }
  .m-integrity__row--reverse .m-integrity__body {
    padding-top: 0;
  }
  .m-integrity__subtitle {
    font-size: calc(20 * 1rem / var(--font-size));
    line-height: 1.6;
  }
  .m-integrity__row--reverse .m-integrity__caption {
    white-space: normal;
    padding-top: calc(12 * 1rem / var(--font-size));
  }
  .m-integrity__text--wide {
    max-width: none;
    padding-top: calc(24 * 1rem / var(--font-size));
  }
  .m-insurance {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-insurance__top {
    display: grid;
    gap: calc(24 * 1rem / var(--font-size));
    min-height: 0;
  }
  .m-insurance__text {
    width: auto;
  }
  .m-insurance__lead {
    min-height: 0;
    line-height: 1.8;
    letter-spacing: 0.05em;
    padding-top: calc(12 * 1rem / var(--font-size));
  }
  .m-insurance__photo {
    justify-self: center;
    max-width: calc(300 * 1rem / var(--font-size));
  }
  .m-insurance__list {
    grid-template-columns: 100%;
    row-gap: calc(16 * 1rem / var(--font-size));
  }
  .m-heading__en {
    font-size: calc(16 * 1rem / var(--font-size));
  }
  .m-heading__title {
    font-size: calc(24 * 1rem / var(--font-size));
    line-height: 1.5;
    letter-spacing: 0.05em;
    margin-top: calc(8 * 1rem / var(--font-size));
  }
  .m-heading__num {
    font-size: calc(30 * 1rem / var(--font-size));
  }
  .m-heading--lined .m-heading__title::after {
    width: calc(60 * 1rem / var(--font-size));
    margin-top: calc(12 * 1rem / var(--font-size));
  }
  .m-heading__lead {
    line-height: 1.9;
    letter-spacing: 0.05em;
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-heading--large .m-heading__title {
    font-size: calc(26 * 1rem / var(--font-size));
    line-height: 1.5;
  }
  .m-heading--large .m-heading__title::after {
    margin-top: calc(12 * 1rem / var(--font-size));
  }
  .m-heading--large .m-heading__lead {
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-heading--service-line .m-heading__title::after {
    width: calc(60 * 1rem / var(--font-size));
    margin-top: calc(16 * 1rem / var(--font-size));
  }
  .m-heading--service-line .m-heading__lead {
    padding-top: calc(15 * 1rem / var(--font-size));
  }
  .m-heading__catch,
  .m-heading__lead--strong {
    font-size: calc(15 * 1rem / var(--font-size));
    line-height: 1.8;
    letter-spacing: 0.05em;
  }
  .m-heading--service-line .m-heading__catch {
    padding-top: calc(15 * 1rem / var(--font-size));
  }
  .m-heading__catch + .m-heading__lead {
    padding-top: calc(12 * 1rem / var(--font-size));
  }
  .m-header::before {
    height: 100%;
  }
  .m-header__band {
    display: grid;
    align-content: start;
    justify-items: start;
    gap: 0;
    height: auto;
    padding: calc(27 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size)) calc(9 * 1rem / var(--font-size));
  }
  .m-header__badge {
    align-content: center;
    width: calc(95 * 1rem / var(--font-size));
    height: calc(23 * 1rem / var(--font-size));
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1;
    padding-top: 0;
  }
  .m-header__cm {
    font-size: calc(12 * 1rem / var(--font-size));
    line-height: 2.0833333333;
    padding-top: 0;
  }
  .m-header__license {
    display: block;
    font-size: calc(10 * 1rem / var(--font-size));
    line-height: 1.9;
    padding-top: 0;
    margin-left: 0;
  }
  .m-header__compliance {
    min-width: 0;
  }
  .m-header__body {
    grid-template-columns: calc(175 * 1rem / var(--font-size)) auto;
    align-items: center;
    height: calc(59 * 1rem / var(--font-size));
    padding: calc(9 * 1rem / var(--font-size)) calc(15 * 1rem / var(--font-size)) calc(9 * 1rem / var(--font-size)) calc(9 * 1rem / var(--font-size));
    background-color: var(--color__white);
  }
  .m-header__logo {
    padding-top: 0;
  }
  .m-guideline-card {
    height: auto;
    padding: calc(20 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
    border-radius: 0 calc(12 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size));
  }
  .m-guideline-card__head {
    height: auto;
  }
  .m-guideline-card__num {
    font-size: calc(26 * 1rem / var(--font-size));
  }
  .m-guideline-card__title {
    font-size: calc(16 * 1rem / var(--font-size));
  }
  .m-guideline-card__title::before {
    height: calc(22 * 1rem / var(--font-size));
  }
  .m-guideline-card__text {
    line-height: 1.8;
  }
  .m-grid-paper--reality {
    --_line-color: var(--color__blue-grid-pale);
    --_line-width: 2px;
    --_pitch-x: 26.81;
    --_pitch-y: 26.9;
    --_offset-x: 14;
    --_offset-y: 20;
  }
  .m-grid-paper--guarantee {
    --_line-color: var(--color__blue-grid);
    --_line-width: 2px;
    --_pitch-x: 23.71;
    --_pitch-y: 21.52;
    --_offset-x: 12;
    --_offset-y: 9;
  }
  .m-grid-paper--schedule {
    background-image: none;
  }
  .m-greeting {
    padding-block: calc(40 * 1rem / var(--font-size)) calc(64 * 1rem / var(--font-size));
  }
  .m-greeting__body {
    display: grid;
    row-gap: calc(24 * 1rem / var(--font-size));
    max-width: none;
    padding-top: calc(32 * 1rem / var(--font-size));
  }
  .m-greeting__photo {
    max-width: calc(335 * 1rem / var(--font-size));
    margin-inline: auto;
  }
  .m-greeting__texts {
    min-height: 0;
    padding-right: 0;
  }
  .m-greeting__text {
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.9;
  }
  .m-greeting__text + .m-greeting__text {
    padding-top: calc(27 * 1rem / var(--font-size));
  }
  .m-greeting__signature {
    padding-top: calc(24 * 1rem / var(--font-size));
  }
  .m-greeting__position {
    min-width: 0;
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.6;
  }
  .m-greeting__name {
    font-size: calc(20 * 1rem / var(--font-size));
  }
  .m-footer {
    padding-block: calc(48 * 1rem / var(--font-size));
  }
  .m-footer > .l-inner {
    --_max-width: var(--max-width, 600);
    --_padding-inline: 24;
  }
  .m-footer__main {
    max-width: none;
  }
  .m-footer__upper {
    grid-template-columns: 100%;
    row-gap: calc(48 * 1rem / var(--font-size));
  }
  .m-footer__info {
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.5714285714;
    padding-top: calc(24 * 1rem / var(--font-size));
  }
  .m-footer__tel {
    line-height: 1.5;
  }
  .m-footer__lower {
    display: block;
    padding-top: calc(47 * 1rem / var(--font-size));
    border-top: 1px solid var(--color__white-alpha30);
    margin-top: calc(48 * 1rem / var(--font-size));
  }
  .m-footer__intro {
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.5714285714;
    padding-top: 0;
  }
  .m-footer__links {
    grid-template-rows: none;
    grid-template-columns: 100%;
    grid-auto-flow: row;
    row-gap: calc(16 * 1rem / var(--font-size));
    max-width: none;
    font-size: calc(16 * 1rem / var(--font-size));
    line-height: 1.625;
    padding-top: calc(32 * 1rem / var(--font-size));
  }
  .m-footer__bottom {
    display: grid;
    row-gap: calc(12 * 1rem / var(--font-size));
    font-size: calc(12 * 1rem / var(--font-size));
    line-height: 1.5833333333;
    padding-top: calc(31 * 1rem / var(--font-size));
    border-top-color: var(--color__white-alpha30);
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-footer__tagline {
    text-align: right;
  }
  .m-footer-menu {
    grid-template-columns: 100%;
    row-gap: calc(40 * 1rem / var(--font-size));
  }
  .m-footer-menu__title {
    padding-left: 0;
    border-left: 0;
  }
  .m-footer-menu__title--sp {
    font-family: var(--font-family__zen-kaku-gothic-new);
    font-size: calc(18 * 1rem / var(--font-size));
    font-weight: 500;
    line-height: 1.6111111111;
  }
  .m-footer-menu__list {
    font-size: calc(16 * 1rem / var(--font-size));
    line-height: 1.625;
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-footer-menu__title--sp + .m-footer-menu__list {
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-footer-menu__list--wrap {
    display: flex;
    flex-wrap: wrap;
    -moz-column-gap: calc(10 * 1rem / var(--font-size));
         column-gap: calc(10 * 1rem / var(--font-size));
  }
  .m-footer-menu__group:last-child .m-footer-menu__title {
    padding-left: 0;
  }
  .m-follow-steps {
    width: 100%;
  }
  .m-follow-steps__badge {
    min-width: 0;
    font-size: calc(16 * 1rem / var(--font-size));
    padding: calc(10 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size));
  }
  .m-follow-steps__list {
    margin-top: calc(20 * 1rem / var(--font-size));
  }
  .m-follow-steps__list::before {
    top: calc(29 * 1rem / var(--font-size));
    left: calc(30 * 1rem / var(--font-size));
    width: calc(100% - 60 * 1rem / var(--font-size));
  }
  .m-follow-steps__item {
    width: calc(64 * 1rem / var(--font-size));
  }
  .m-follow-steps__circle {
    width: calc(60 * 1rem / var(--font-size));
    height: calc(58 * 1rem / var(--font-size));
    font-size: calc(20 * 1rem / var(--font-size));
    border-radius: calc(29 * 1rem / var(--font-size));
  }
  .m-follow-steps__label {
    font-size: calc(14 * 1rem / var(--font-size));
  }
  .m-folder-tabs {
    row-gap: calc(20 * 1rem / var(--font-size));
  }
  .m-folder-tabs__list {
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: calc(12 * 1rem / var(--font-size));
         column-gap: calc(12 * 1rem / var(--font-size));
  }
  .m-folder-tabs__tab {
    min-height: calc(46 * 1rem / var(--font-size));
    font-size: calc(16 * 1rem / var(--font-size));
    line-height: 1.375;
    letter-spacing: 0;
    padding: calc(11 * 1rem / var(--font-size));
    border-radius: calc(12 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size)) 0 0;
  }
  .m-folder-tabs__panel {
    padding: calc(19 * 1rem / var(--font-size));
    border-radius: 0 0 calc(16 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  }
  .m-flow {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-flow__lead {
    line-height: 1.8;
    letter-spacing: 0.05em;
    padding-top: calc(12 * 1rem / var(--font-size));
  }
  .m-flow__list {
    gap: calc(16 * 1rem / var(--font-size));
    margin-top: calc(40 * 1rem / var(--font-size));
  }
  .m-flow-step {
    grid-template-columns: calc(88 * 1rem / var(--font-size)) 1fr;
    -moz-column-gap: calc(16 * 1rem / var(--font-size));
         column-gap: calc(16 * 1rem / var(--font-size));
    min-height: 0;
    padding: calc(16 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size));
  }
  .m-flow-step__num {
    top: calc(-8 * 1rem / var(--font-size));
    left: calc(-4 * 1rem / var(--font-size));
    width: calc(44 * 1rem / var(--font-size));
    font-size: calc(28 * 1rem / var(--font-size));
  }
  .m-flow-step__title {
    font-size: calc(17 * 1rem / var(--font-size));
  }
  .m-flow-step__note {
    font-size: calc(12 * 1rem / var(--font-size));
    margin-top: calc(8 * 1rem / var(--font-size));
  }
  .m-flow-step__text {
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.7;
    margin-top: calc(8 * 1rem / var(--font-size));
  }
  .m-flow-step__note + .m-flow-step__text {
    margin-top: calc(8 * 1rem / var(--font-size));
  }
  .m-filter-chip {
    justify-content: flex-start;
    min-width: calc(156 * 1rem / var(--font-size));
  }
  .m-filter-chip--fit {
    min-width: 0;
  }
  .m-filter-chip--current {
    min-width: 0;
    padding-inline: calc(16 * 1rem / var(--font-size));
  }
  .m-feature-block {
    grid-template-columns: 100%;
    row-gap: calc(24 * 1rem / var(--font-size));
    width: auto;
    min-height: 0;
    padding: calc(40 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
    margin-inline: calc(-16 * 1rem / var(--font-size));
  }
  .m-feature-block__badge {
    font-size: calc(12 * 1rem / var(--font-size));
    padding: calc(4 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size));
  }
  .m-feature-block__title {
    font-size: calc(22 * 1rem / var(--font-size));
    line-height: 1.6;
    letter-spacing: 0.06em;
    padding-top: calc(8 * 1rem / var(--font-size));
  }
  .m-feature-block__text {
    line-height: 1.9;
    margin-top: calc(20 * 1rem / var(--font-size));
  }
  .m-feature-block__callout {
    justify-self: center;
    font-size: calc(15 * 1rem / var(--font-size));
  }
  .m-feature-block__callout::before {
    top: calc(58 * 1rem / var(--font-size));
    left: calc(4 * 1rem / var(--font-size));
    width: calc(100% - 8 * 1rem / var(--font-size));
  }
  .m-feature-block__points {
    margin-top: calc(20 * 1rem / var(--font-size));
  }
  .m-feature-block__figure:not(.m-feature-block__figure--framed) + .m-feature-block__points {
    margin-top: calc(20 * 1rem / var(--font-size));
  }
  .m-feature-badge {
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.6153846154;
    color: var(--color__black);
    padding: calc(13 * 1rem / var(--font-size)) calc(22 * 1rem / var(--font-size));
  }
  .m-faq {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-faq__lead {
    line-height: 1.8;
    letter-spacing: 0.05em;
    padding-top: calc(8 * 1rem / var(--font-size));
  }
  .m-faq__list {
    gap: calc(16 * 1rem / var(--font-size));
    min-height: 0;
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-faq-item__question {
    grid-template-columns: calc(32 * 1rem / var(--font-size)) 1fr calc(20 * 1rem / var(--font-size));
    -moz-column-gap: calc(12 * 1rem / var(--font-size));
         column-gap: calc(12 * 1rem / var(--font-size));
    font-size: calc(15 * 1rem / var(--font-size));
    padding: calc(16 * 1rem / var(--font-size));
  }
  .m-faq-item__mark {
    width: calc(32 * 1rem / var(--font-size));
    height: calc(32 * 1rem / var(--font-size));
  }
  .m-faq-item__icon {
    width: calc(20 * 1rem / var(--font-size));
    height: calc(20 * 1rem / var(--font-size));
  }
  .m-faq-item__answer {
    grid-template-columns: calc(32 * 1rem / var(--font-size)) 1fr;
    -moz-column-gap: calc(12 * 1rem / var(--font-size));
         column-gap: calc(12 * 1rem / var(--font-size));
    padding: calc(16 * 1rem / var(--font-size));
  }
  .m-faq-item__answer-text {
    font-size: calc(15 * 1rem / var(--font-size));
  }
  .m-fact {
    padding-block: calc(40 * 1rem / var(--font-size)) calc(60 * 1rem / var(--font-size));
  }
  .m-fact__list {
    grid-template-columns: 100%;
    row-gap: calc(16 * 1rem / var(--font-size));
    margin-top: calc(24 * 1rem / var(--font-size));
  }
  .m-fact-card__num {
    font-size: calc(32 * 1rem / var(--font-size));
    line-height: 2;
  }
  .m-fact-card__body {
    min-height: 0;
    padding: calc(32 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) calc(24 * 1rem / var(--font-size));
  }
  .m-fact-card__title {
    font-size: calc(17 * 1rem / var(--font-size));
  }
  .m-estimation__head {
    padding-block: calc(40 * 1rem / var(--font-size)) calc(48 * 1rem / var(--font-size));
  }
  .m-estimation__head .m-heading__title,
  .m-estimation__head .m-heading__lead {
    white-space: normal;
    line-break: strict;
  }
  .m-estimation__body {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-estimation__intro {
    gap: calc(24 * 1rem / var(--font-size));
  }
  .m-estimation__text {
    line-height: 1.8;
  }
  .m-estimation__text p + p {
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-estimation__band {
    -moz-column-gap: calc(8 * 1rem / var(--font-size));
         column-gap: calc(8 * 1rem / var(--font-size));
    min-height: 0;
    padding: calc(12 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  }
  .m-estimation__band-icon {
    width: calc(24 * 1rem / var(--font-size));
    height: calc(28 * 1rem / var(--font-size));
  }
  .m-estimation__band-text {
    font-size: calc(16 * 1rem / var(--font-size));
    line-height: 1.6;
    padding-top: 0;
  }
  .m-estimation__band-num {
    font-size: calc(32 * 1rem / var(--font-size));
  }
  .m-estimation__note {
    line-height: 1.8;
  }
  .m-estimation__body .m-compare {
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-estimation__guide {
    margin-top: calc(40 * 1rem / var(--font-size));
  }
  .m-estimation__guide .m-heading__lead {
    max-width: none;
  }
  .m-estimation__guide .m-cost-guide {
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-estimation__closing {
    gap: calc(16 * 1rem / var(--font-size));
    margin-top: calc(48 * 1rem / var(--font-size));
  }
  .m-estimation__closing-text {
    line-height: 1.8;
  }
  .m-esg-card {
    max-width: none;
  }
  .m-esg-card__head {
    grid-template-columns: calc(40 * 1rem / var(--font-size)) auto;
    -moz-column-gap: calc(12 * 1rem / var(--font-size));
         column-gap: calc(12 * 1rem / var(--font-size));
  }
  .m-esg-card__num {
    width: calc(40 * 1rem / var(--font-size));
    height: calc(40 * 1rem / var(--font-size));
    font-size: calc(16 * 1rem / var(--font-size));
  }
  .m-esg-card__text {
    max-width: none;
    min-height: 0;
    line-height: 1.8;
    padding-top: calc(12 * 1rem / var(--font-size));
    padding-left: 0;
  }
  .m-esg-card__tags {
    flex-wrap: wrap;
    justify-self: start;
    gap: calc(8 * 1rem / var(--font-size));
    padding-top: calc(12 * 1rem / var(--font-size));
    padding-left: 0;
  }
  .m-employee-voice {
    overflow: clip;
  }
  .m-employee-voice__head {
    grid-template-columns: auto calc(100 * 1rem / var(--font-size));
    justify-content: space-between;
  }
  .m-employee-voice__profile {
    min-height: calc(40 * 1rem / var(--font-size));
    font-size: calc(12 * 1rem / var(--font-size));
    font-weight: 700;
    line-height: 1.4166666667;
    letter-spacing: 0.1em;
    white-space: nowrap;
    padding: calc(12 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size)) calc(11 * 1rem / var(--font-size));
  }
  .m-employee-voice__profile--tight {
    padding-inline: calc(10 * 1rem / var(--font-size)) calc(9 * 1rem / var(--font-size));
  }
  .m-employee-voice__profile .m-employee-voice__num {
    font-weight: 400;
  }
  .m-employee-voice__illust {
    width: calc(100 * 1rem / var(--font-size));
    aspect-ratio: 100/83;
  }
  .m-employee-voice__body {
    padding: calc(16 * 1rem / var(--font-size));
    border-radius: 0 0 calc(8 * 1rem / var(--font-size)) calc(8 * 1rem / var(--font-size));
    box-shadow: 0 calc(4 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size)) var(--color__black-alpha5);
  }
  .m-employee-voice__catch {
    color: var(--color__jet);
    font-size: calc(16 * 1rem / var(--font-size));
    line-height: 1.5;
    letter-spacing: 0.04em;
  }
  .m-employee-voice__text {
    min-height: 0;
    color: var(--color__gray-darker);
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.6923076923;
    padding-top: calc(16 * 1rem / var(--font-size));
    translate: 0 calc(1 * 1rem / var(--font-size));
  }
  .m-employee-voice__note {
    color: var(--color__black);
    font-size: calc(11 * 1rem / var(--font-size));
    font-weight: 700;
    line-height: 1.3636363636;
    letter-spacing: 0.04em;
    padding-top: calc(11 * 1rem / var(--font-size));
    margin-top: calc(10 * 1rem / var(--font-size));
  }
  .m-data-table__row {
    grid-template-columns: 100%;
    row-gap: calc(4 * 1rem / var(--font-size));
    padding-top: calc(16 * 1rem / var(--font-size));
    padding-bottom: calc(15 * 1rem / var(--font-size));
  }
  .m-data-table__term {
    font-size: calc(15 * 1rem / var(--font-size));
  }
  .m-data-table__desc {
    line-height: 1.7;
  }
  .m-data-table--history {
    padding: calc(8 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  }
  .m-data-table--history .m-data-table__desc {
    line-height: 1.7;
  }
  .m-dashed-list {
    padding-left: 0;
  }
  .m-dashed-list__item {
    font-size: calc(12 * 1rem / var(--font-size));
    line-height: 1.7;
  }
  .m-coverage {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-coverage__body {
    grid-template-areas: "head" "areas" "map";
    grid-template-columns: 100%;
    row-gap: calc(24 * 1rem / var(--font-size));
  }
  .m-coverage__title {
    font-size: calc(22 * 1rem / var(--font-size));
    line-height: 1.5;
    letter-spacing: 0.06em;
    padding-right: calc(96 * 1rem / var(--font-size));
  }
  .m-coverage__lead {
    min-height: 0;
    line-height: 1.8;
    letter-spacing: 0.05em;
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-coverage__areas {
    margin-top: 0;
  }
  .m-coverage__area-title {
    font-size: calc(18 * 1rem / var(--font-size));
  }
  .m-coverage__area-text {
    font-size: calc(15 * 1rem / var(--font-size));
  }
  .m-coverage__map {
    height: auto;
    aspect-ratio: 4/3;
  }
  .m-coverage__badge {
    top: calc(-24 * 1rem / var(--font-size));
    right: calc(-8 * 1rem / var(--font-size));
    left: auto;
    width: calc(96 * 1rem / var(--font-size));
    height: calc(96 * 1rem / var(--font-size));
    font-size: calc(14 * 1rem / var(--font-size));
  }
  .m-cost-panel {
    padding-block: calc(24 * 1rem / var(--font-size));
    border-radius: 0 calc(12 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size));
  }
  .m-cost-panel__head {
    gap: calc(10 * 1rem / var(--font-size));
  }
  .m-cost-panel__label {
    font-size: calc(13 * 1rem / var(--font-size));
    padding: calc(6 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size));
  }
  .m-cost-panel__title-row {
    flex-direction: column;
    align-items: flex-start;
    row-gap: calc(4 * 1rem / var(--font-size));
    padding-inline: calc(16 * 1rem / var(--font-size));
  }
  .m-cost-panel__title {
    font-size: calc(17 * 1rem / var(--font-size));
    line-height: 1.6;
    letter-spacing: 0.05em;
    white-space: normal;
    line-break: strict;
  }
  .m-cost-panel__condition {
    font-size: calc(12 * 1rem / var(--font-size));
    white-space: normal;
  }
  .m-cost-panel__middle {
    flex-direction: column;
    align-items: stretch;
    row-gap: calc(20 * 1rem / var(--font-size));
    padding-inline: calc(16 * 1rem / var(--font-size));
    margin-top: calc(20 * 1rem / var(--font-size));
  }
  .m-cost-panel__price {
    padding-left: 0;
  }
  .m-cost-panel__list-block {
    flex-basis: auto;
  }
  .m-cost-panel__list-title {
    font-size: calc(16 * 1rem / var(--font-size));
  }
  .m-cost-panel__list-text {
    line-height: 1.8;
    padding-left: 0;
  }
  .m-cost-panel__text {
    max-width: none;
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.8;
    padding-inline: calc(16 * 1rem / var(--font-size));
    margin-top: calc(20 * 1rem / var(--font-size));
  }
  .m-cost-panel__note {
    font-size: calc(11 * 1rem / var(--font-size));
    white-space: normal;
    padding-inline: calc(16 * 1rem / var(--font-size));
    margin-top: calc(10 * 1rem / var(--font-size));
  }
  .m-cost-guide {
    gap: calc(8 * 1rem / var(--font-size));
  }
  .m-cost-guide__tabs {
    grid-template-columns: repeat(3, 1fr);
    -moz-column-gap: calc(6 * 1rem / var(--font-size));
         column-gap: calc(6 * 1rem / var(--font-size));
  }
  .m-cost-guide__tab {
    min-height: calc(44 * 1rem / var(--font-size));
    font-size: calc(12 * 1rem / var(--font-size));
    line-height: 1.4;
    letter-spacing: 0;
    padding: calc(6 * 1rem / var(--font-size)) calc(2 * 1rem / var(--font-size));
    border-radius: calc(10 * 1rem / var(--font-size)) calc(10 * 1rem / var(--font-size)) 0 0;
  }
  .m-contact {
    padding-block: calc(48 * 1rem / var(--font-size)) calc(64 * 1rem / var(--font-size));
  }
  .m-contact > .l-inner {
    --_padding-inline: 24;
  }
  .m-contact__lead {
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.7857142857;
    padding-top: calc(64 * 1rem / var(--font-size));
  }
  .m-contact__lead::before {
    top: calc(28 * 1rem / var(--font-size));
    width: calc(120 * 1rem / var(--font-size));
    height: calc(4 * 1rem / var(--font-size));
  }
  .m-contact__actions {
    grid-template-columns: 100%;
    max-width: none;
    row-gap: calc(16 * 1rem / var(--font-size));
    padding-top: calc(32 * 1rem / var(--font-size));
  }
  .m-contact--narrow {
    padding-block: calc(48 * 1rem / var(--font-size)) calc(64 * 1rem / var(--font-size));
  }
  .m-contact--narrow .m-contact__actions {
    max-width: none;
  }
  .m-contact-form {
    padding-block: calc(40 * 1rem / var(--font-size)) calc(56 * 1rem / var(--font-size));
  }
  .m-contact-form__card {
    row-gap: calc(20 * 1rem / var(--font-size));
    padding: calc(24 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) calc(32 * 1rem / var(--font-size));
    border-radius: calc(16 * 1rem / var(--font-size));
  }
  .m-contact-form__rows {
    row-gap: calc(24 * 1rem / var(--font-size));
  }
  .m-contact-form__label {
    font-size: calc(16 * 1rem / var(--font-size));
  }
  .m-contact-form__note {
    font-size: calc(11 * 1rem / var(--font-size));
    line-height: 1.6;
  }
  .m-contact-form__field input:not([type=file]),
  .m-contact-form__field select,
  .m-contact-form__field textarea {
    padding-inline: calc(16 * 1rem / var(--font-size));
  }
  .m-contact-form__field input:not([type=file]),
  .m-contact-form__field select {
    height: calc(48 * 1rem / var(--font-size));
  }
  .m-contact-form__field select {
    padding-right: calc(48 * 1rem / var(--font-size));
  }
  .m-contact-form__field textarea {
    height: calc(140 * 1rem / var(--font-size));
    padding-block: calc(14 * 1rem / var(--font-size));
  }
  .m-contact-form__file {
    -moz-column-gap: calc(12 * 1rem / var(--font-size));
         column-gap: calc(12 * 1rem / var(--font-size));
    padding-left: 0;
  }
  .m-contact-form__file-button {
    width: calc(150 * 1rem / var(--font-size));
    font-size: calc(15 * 1rem / var(--font-size));
    height: calc(46 * 1rem / var(--font-size));
  }
  .m-contact-form__file-name {
    max-width: none;
    width: auto;
    text-align: left;
  }
  .m-contact-form__submit .wpcf7-submit {
    max-width: calc(320 * 1rem / var(--font-size));
    padding-inline: calc(52 * 1rem / var(--font-size)) calc(20 * 1rem / var(--font-size));
    background-position: left calc(24 * 1rem / var(--font-size)) center;
  }
  .m-contact-form__ssl {
    font-size: calc(11 * 1rem / var(--font-size));
    line-height: 1.6;
  }
  .m-contact-card {
    grid-template-areas: "button" "catch" "note";
    justify-items: stretch;
    row-gap: calc(12 * 1rem / var(--font-size));
    padding: calc(14 * 1rem / var(--font-size));
    border: 2px solid var(--color__red);
    border-radius: calc(12 * 1rem / var(--font-size));
  }
  .m-contact-card--web {
    color: var(--color__white);
    padding: calc(16 * 1rem / var(--font-size));
    border: 0;
    background-color: var(--color__red);
  }
  .m-contact-card__catch {
    max-width: none;
    min-height: 0;
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.6153846154;
    letter-spacing: 0;
    text-align: left;
    padding-top: 0;
    border: 0;
    background-color: transparent;
  }
  .m-contact-card__catch::before, .m-contact-card__catch::after {
    content: none;
  }
  .m-contact-card__accent {
    color: inherit;
  }
  .m-contact-card__en {
    font-weight: 400;
  }
  .m-contact-card__button {
    -moz-column-gap: calc(12 * 1rem / var(--font-size));
         column-gap: calc(12 * 1rem / var(--font-size));
    min-height: 0;
    padding: calc(12 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
    border-radius: calc(24 * 1rem / var(--font-size));
    background-color: var(--color__red);
    margin-top: 0;
  }
  .m-contact-card--web .m-contact-card__button {
    max-width: none;
    color: var(--color__red);
    padding: calc(10 * 1rem / var(--font-size)) calc(14 * 1rem / var(--font-size));
    border: 2px solid var(--color__red);
    background-color: var(--color__white);
  }
  .m-contact-card__icon {
    width: calc(20 * 1rem / var(--font-size));
    height: calc(20 * 1rem / var(--font-size));
  }
  .m-contact-card--web .m-contact-card__icon {
    width: calc(20 * 1rem / var(--font-size));
    height: calc(20 * 1rem / var(--font-size));
  }
  .m-contact-card__label {
    font-size: calc(20 * 1rem / var(--font-size));
    line-height: 1.25;
    letter-spacing: 0.18em;
  }
  .m-contact-card--web .m-contact-card__label {
    width: auto;
    translate: none;
    font-size: calc(16 * 1rem / var(--font-size));
    line-height: 1.4375;
    letter-spacing: 0;
  }
  .m-contact-card__half {
    letter-spacing: inherit;
    translate: none;
  }
  .m-contact-card__note {
    font-size: calc(12 * 1rem / var(--font-size));
    line-height: 1.5833333333;
    margin-top: 0;
  }
  .m-contact-card--web .m-contact-card__note {
    margin-top: 0;
  }
  .m-construction {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-construction__body {
    gap: calc(32 * 1rem / var(--font-size));
  }
  .m-construction__lead {
    line-height: 1.8;
    letter-spacing: 0.05em;
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-construction__tab-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: calc(8 * 1rem / var(--font-size));
  }
  .m-construction__tab {
    height: auto;
    min-height: calc(64 * 1rem / var(--font-size));
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.5;
    letter-spacing: 0;
    padding: calc(8 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size));
  }
  .m-construction__grid {
    grid-template-columns: 100%;
    row-gap: calc(16 * 1rem / var(--font-size));
    margin-top: calc(16 * 1rem / var(--font-size));
  }
  .m-construction-card {
    gap: calc(14 * 1rem / var(--font-size));
    max-width: none;
    padding: calc(15 * 1rem / var(--font-size));
  }
  .m-construction-card:has(.m-construction-card__toggle[aria-expanded=true]) {
    min-height: 0;
  }
  .m-construction-card__photo {
    max-width: none;
  }
  .m-construction-card__lead {
    font-size: calc(15 * 1rem / var(--font-size));
  }
  .m-construction-card__detail {
    padding-top: calc(14 * 1rem / var(--font-size));
  }
  .m-construction-card__checks {
    margin-top: calc(16 * 1rem / var(--font-size));
  }
  .m-construction-card__check {
    min-height: 0;
  }
  .m-construction-card__check:nth-child(even) {
    min-height: 0;
  }
  .m-compare {
    padding-bottom: calc(32 * 1rem / var(--font-size));
  }
  .m-compare__label {
    font-size: calc(14 * 1rem / var(--font-size));
    padding: calc(8 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size));
  }
  .m-compare__note {
    padding-top: calc(12 * 1rem / var(--font-size));
  }
  .m-compare__cols {
    grid-template-columns: 100%;
    row-gap: calc(24 * 1rem / var(--font-size));
    width: 100%;
  }
  .m-compare__title {
    font-size: calc(18 * 1rem / var(--font-size));
  }
  .m-compare__bar {
    grid-template-columns: 62fr 38fr;
    max-width: calc(400 * 1rem / var(--font-size));
    width: 100%;
  }
  .m-compare__point {
    font-size: calc(13 * 1rem / var(--font-size));
  }
  .m-company-plan {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-company-plan__body {
    padding-top: calc(24 * 1rem / var(--font-size));
  }
  .m-company-plan__lead {
    font-size: calc(16 * 1rem / var(--font-size));
    line-height: 1.8;
    letter-spacing: 0.05em;
  }
  .m-company-plan__list {
    gap: calc(16 * 1rem / var(--font-size));
    padding-top: calc(20 * 1rem / var(--font-size));
  }
  .m-company-plan__item {
    letter-spacing: 0.05em;
    text-indent: -1.05em;
    padding-left: 1.05em;
  }
  .m-company-plan__scroll {
    padding-bottom: calc(12 * 1rem / var(--font-size));
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-company-overview {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-company-overview__body {
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-company-overview__clients {
    padding-top: calc(24 * 1rem / var(--font-size));
  }
  .m-company-overview__toggle {
    min-height: calc(46 * 1rem / var(--font-size));
  }
  .m-company-overview__clients-body {
    line-height: 1.8;
    padding-top: calc(12 * 1rem / var(--font-size));
    padding-right: 0;
  }
  .m-company-overview__clients-group:first-child {
    padding-block: 0;
  }
  .m-company-overview__clients-group + .m-company-overview__clients-group {
    padding-top: calc(16 * 1rem / var(--font-size));
  }
  .m-company-overview__clients-text {
    padding-top: calc(8 * 1rem / var(--font-size));
  }
  .m-company-history {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-company-history__table {
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-company-access {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-company-access__body {
    grid-template-columns: 100%;
    row-gap: calc(24 * 1rem / var(--font-size));
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-company-access__map {
    max-width: none;
  }
  .m-company-access__info {
    min-height: 0;
  }
  .m-company-access__head {
    row-gap: calc(4 * 1rem / var(--font-size));
  }
  .m-company-access__name {
    font-size: calc(22 * 1rem / var(--font-size));
    line-height: 1.5;
  }
  .m-company-access__routes {
    row-gap: calc(20 * 1rem / var(--font-size));
    padding-top: calc(20 * 1rem / var(--font-size));
  }
  .m-company-access__route {
    row-gap: calc(8 * 1rem / var(--font-size));
  }
  .m-company-access__route-text {
    max-width: none;
    line-height: 1.8;
  }
  .m-commitment__head {
    padding-block: calc(60 * 1rem / var(--font-size)) calc(48 * 1rem / var(--font-size));
  }
  .m-commitment__head::after {
    top: 0;
    width: calc(240 * 1rem / var(--font-size));
  }
  .m-commitment__second {
    padding-block: 0 calc(60 * 1rem / var(--font-size));
  }
  .m-commitment .m-accent-box {
    margin-top: calc(20 * 1rem / var(--font-size));
  }
  .m-commitment__worries {
    row-gap: calc(10 * 1rem / var(--font-size));
  }
  .m-commitment__worry {
    font-size: calc(16 * 1rem / var(--font-size));
    line-height: 1.6;
  }
  .m-commitment__price {
    padding-bottom: calc(60 * 1rem / var(--font-size));
  }
  .m-commitment__price-title {
    font-size: calc(22 * 1rem / var(--font-size));
    line-height: 1.7272727273;
  }
  .m-commitment__price-line--dotted {
    margin-top: calc(16 * 1rem / var(--font-size));
  }
  .m-commitment__price-line--dotted::before {
    top: calc(-24 * 1rem / var(--font-size));
  }
  .m-commitment__price-line--dotted + .m-commitment__price-line {
    margin-top: calc(6 * 1rem / var(--font-size));
  }
  .m-commitment__price-body {
    min-height: 0;
    padding-top: calc(24 * 1rem / var(--font-size));
  }
  .m-commitment__price-text {
    max-width: none;
    font-size: calc(15 * 1rem / var(--font-size));
    line-height: 1.9;
  }
  .m-centered-heading {
    --_gap: 8;
    --_en-font-size: 14;
    --_en-line-height: 20;
    --_title-font-size: 24;
    --_title-line-height: 34;
    --_en-shift: 0;
    --_title-shift: 0;
  }
  .m-centered-heading--start-sp {
    --_align: start;
    --_en-indent: 0;
    --_title-indent: 0;
  }
  .m-centered-heading--message {
    --_gap: 24;
    --_en-font-family: var(--font-family__zen-kaku-gothic-new);
    --_en-font-size: 14;
    --_en-line-height: 20;
    --_en-letter-spacing: 0em;
    --_title-font-size: 20;
    --_title-line-height: 28;
    --_title-letter-spacing: 0em;
    --_en-shift: 0;
    --_title-shift: 1;
  }
  .m-centered-heading--guarantee {
    --_gap: 12;
    --_en-font-size: 16;
    --_en-line-height: 22;
    --_title-font-size: 26;
    --_title-line-height: 36;
  }
  .m-centered-heading--reason {
    --_gap: 12;
    --_en-font-size: 16;
    --_en-font-weight: 900;
    --_en-line-height: 22;
    --_title-font-size: 26;
    --_title-line-height: 39;
  }
  .m-centered-heading--benefit {
    --_en-font-size: 16;
    --_en-line-height: 22;
    --_title-font-size: 26;
    --_title-line-height: 36;
    --_title-color: var(--color__jet-light);
  }
  .m-centered-heading--balance {
    --_title-letter-spacing: 0em;
    --_title-color: var(--color__jet-light);
  }
  .m-centered-heading--reality {
    --_en-letter-spacing: 0.18em;
    --_en-shift: 0;
    --_gap: 4;
    --_en-font-size: 16;
    --_en-line-height: 22;
    --_title-font-size: 22;
    --_title-line-height: 31;
  }
  .m-centered-heading--job {
    --_gap: 12;
    --_en-font-weight: 800;
    --_en-letter-spacing: 0.15em;
    --_title-font-weight: 900;
    --_title-color: var(--color__onyx);
  }
  .m-centered-heading--support {
    --_en-shift: 1;
    --_gap: 10;
    --_en-font-size: 13;
    --_en-line-height: 18;
    --_title-letter-spacing: 0em;
    --_title-color: var(--color__onyx-green);
  }
  .m-centered-heading--voice {
    --_en-letter-spacing: 0.18em;
    --_en-shift: 0;
    --_gap: 12;
    --_en-color: var(--color__black);
    --_title-font-size: 22;
    --_title-line-height: 31;
    --_title-color: var(--color__jet);
  }
  .m-centered-heading--gallery {
    --_en-color: var(--color__black);
    --_title-font-size: 22;
    --_title-line-height: 31;
    --_title-color: var(--color__onyx-violet);
  }
  .m-centered-heading--requirements {
    --_en-line-height: 18;
    --_title-letter-spacing: 0em;
  }
  .m-category-filter {
    padding-top: calc(32 * 1rem / var(--font-size));
  }
  .m-category-filter__icon {
    width: calc(20 * 1rem / var(--font-size));
    height: calc(20 * 1rem / var(--font-size));
  }
  .m-category-filter__title {
    min-width: 0;
    font-size: calc(16 * 1rem / var(--font-size));
  }
  .m-category-filter__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: calc(10 * 1rem / var(--font-size));
    -moz-column-gap: calc(8 * 1rem / var(--font-size));
         column-gap: calc(8 * 1rem / var(--font-size));
    padding: calc(16 * 1rem / var(--font-size));
    border-radius: calc(12 * 1rem / var(--font-size));
    margin-top: calc(8 * 1rem / var(--font-size));
  }
  .m-category-filter__link {
    min-height: calc(46 * 1rem / var(--font-size));
    font-size: calc(14 * 1rem / var(--font-size));
    padding: calc(8 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size));
  }
  .m-case-studies {
    padding-block: calc(56 * 1rem / var(--font-size));
  }
  .m-case-studies__lead {
    padding-top: calc(12 * 1rem / var(--font-size));
  }
  .m-case-studies__list {
    grid-template-columns: 100%;
    row-gap: calc(16 * 1rem / var(--font-size));
    max-width: calc(358 * 1rem / var(--font-size));
    margin-top: calc(32 * 1rem / var(--font-size));
    margin-inline: auto;
  }
  .m-case-studies__more {
    justify-content: center;
    margin-top: calc(32 * 1rem / var(--font-size));
  }
  .m-case-card__name {
    font-size: calc(20 * 1rem / var(--font-size));
  }
  .m-breadcrumb {
    padding-block: calc(16 * 1rem / var(--font-size));
  }
  .m-breadcrumb > .l-inner {
    --_max-width: var(--max-width, 600);
    --_padding-inline: var(--space-inline, 16);
  }
  .m-breadcrumb__list {
    font-size: calc(12 * 1rem / var(--font-size));
  }
  .m-assurance {
    padding-block: calc(56 * 1rem / var(--font-size)) calc(60 * 1rem / var(--font-size));
  }
  .m-assurance--safety {
    padding-bottom: calc(60 * 1rem / var(--font-size));
  }
  .m-assurance .m-accent-box {
    margin-top: calc(24 * 1rem / var(--font-size));
  }
  .m-assurance__photos {
    position: static;
    display: grid;
    grid-auto-columns: 1fr;
    grid-auto-flow: column;
    -moz-column-gap: calc(12 * 1rem / var(--font-size));
         column-gap: calc(12 * 1rem / var(--font-size));
    padding-top: calc(20 * 1rem / var(--font-size));
  }
  .m-assurance__photo {
    position: static;
    max-width: none;
  }
  .m-assurance--quality .m-assurance__photo--upper {
    border-radius: calc(12 * 1rem / var(--font-size)) 0 0;
  }
  .m-assurance--quality .m-assurance__photo--lower {
    border-radius: 0 0 calc(12 * 1rem / var(--font-size));
  }
  .m-assurance--gondola .m-assurance__photo,
  .m-assurance--safety .m-assurance__photo {
    border-radius: 0 0 0 calc(12 * 1rem / var(--font-size));
  }
  .m-assurance--gondola .m-assurance__photos,
  .m-assurance--safety .m-assurance__photos {
    grid-auto-columns: minmax(0, calc(240 * 1rem / var(--font-size)));
    justify-content: center;
  }
  .m-assurance__contents {
    padding-top: calc(24 * 1rem / var(--font-size));
  }
  .m-assurance__contents-title {
    font-size: calc(16 * 1rem / var(--font-size));
  }
  .m-assurance__list {
    padding-top: calc(8 * 1rem / var(--font-size));
  }
  .m-assurance__item {
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.7;
  }
  .m-article-content h2 {
    font-size: calc(18 * 1rem / var(--font-size));
    line-height: 1.5555555556;
    padding: calc(12 * 1rem / var(--font-size)) 0 calc(12 * 1rem / var(--font-size)) calc(10 * 1rem / var(--font-size));
  }
  .m-article-content h2::after {
    left: 0;
    height: calc(52 * 1rem / var(--font-size));
  }
  .m-article-content h2:not(:first-child) {
    margin-top: calc(44 * 1rem / var(--font-size));
  }
  .m-article-content h2:not(:first-child)::before {
    top: calc(-27 * 1rem / var(--font-size));
  }
  .m-area {
    padding-block: calc(56 * 1rem / var(--font-size)) calc(67 * 1rem / var(--font-size));
  }
  .m-area__title {
    font-size: calc(22 * 1rem / var(--font-size));
    line-height: 1.4090909091;
    letter-spacing: 0.04em;
    margin-top: calc(16 * 1rem / var(--font-size));
  }
  .m-area__lead {
    font-size: calc(14 * 1rem / var(--font-size));
    line-height: 1.7857142857;
    padding-top: calc(32 * 1rem / var(--font-size));
  }
  .m-area__cards {
    grid-template-rows: none;
    grid-template-columns: 100%;
    row-gap: calc(24 * 1rem / var(--font-size));
    padding-top: calc(32 * 1rem / var(--font-size));
  }
  .m-area__cards--grid {
    grid-auto-rows: auto;
  }
  .m-area__cards:not(.m-area__cards--grid) > li:first-child {
    grid-row: auto;
  }
  .m-area-card {
    padding: calc(39 * 1rem / var(--font-size)) calc(19 * 1rem / var(--font-size)) calc(19 * 1rem / var(--font-size));
    border-radius: calc(12 * 1rem / var(--font-size));
    box-shadow: calc(2 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size)) calc(8 * 1rem / var(--font-size)) var(--color__black-alpha8);
  }
  .m-area-card__label {
    width: calc(240 * 1rem / var(--font-size));
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.3846153846;
    padding-block: calc(6 * 1rem / var(--font-size));
    border-radius: 0 0 calc(12 * 1rem / var(--font-size)) calc(12 * 1rem / var(--font-size));
  }
  .m-area-card__text {
    max-width: none;
    font-size: calc(13 * 1rem / var(--font-size));
    line-height: 1.9230769231;
  }
  .m-accent-box {
    --_bleed: calc(50% - var(--js-width__viewport) / 2);
    width: calc(100% - var(--_bleed));
    padding-block: calc(24 * 1rem / var(--font-size)) calc(28 * 1rem / var(--font-size));
    padding-right: calc(16 * 1rem / var(--font-size));
    border-radius: calc(4 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) calc(16 * 1rem / var(--font-size)) calc(4 * 1rem / var(--font-size));
  }
  .m-accent-box__title {
    min-height: 0;
    font-size: calc(20 * 1rem / var(--font-size));
    line-height: 1.5;
  }
  .m-accent-box__title + .m-accent-box__body {
    padding-top: calc(12 * 1rem / var(--font-size));
  }
  .m-accent-box__body {
    max-width: none;
  }
  .m-accent-box__text {
    font-size: calc(16 * 1rem / var(--font-size));
    line-height: 1.9;
  }
  .u-only--pc {
    display: none;
  }
}

@media (max-width: 390px){
  html {
    font-size: calc(var(--_font-size) / var(--_width) * 100vw);
  }
}

@media (any-hover: hover){
  .m-target-card:hover {
    --_shadow: none;
    --_circle-scale: calc(37 / 55);
    --_more-shift: calc(-6 * 1rem / var(--font-size)) calc(9 * 1rem / var(--font-size));
  }
  .m-pagination .page-numbers:hover {
    opacity: var(--opacity__hover);
  }
  .m-menu-card:hover {
    --_color__bg: var(--_color__bg-hover);
    --_color__bar: var(--_color__bar-hover);
    --_shadow: none;
  }
  .m-mega-menu__head:hover {
    --_circle-bg: var(--color__red-dark);
    --_arrow-color: var(--color__white);
    color: var(--color__red-dark);
  }
  .m-mega-menu__link:hover {
    --_circle-bg: var(--color__red-dark);
    --_arrow-color: var(--color__white);
    color: var(--color__red-dark);
  }
  .m-icon-button:hover {
    color: var(--_color__main);
    background-color: var(--_color__sub);
    filter: unset;
  }
  .m-header__tel:hover {
    color: var(--color__red-dark);
    background-color: var(--color__white);
    box-shadow: inset 0 0 0 3px var(--color__red-dark);
  }
  .m-header__line:hover {
    --icon-line-letter: var(--color__white);
    color: var(--color__green);
    background-color: var(--color__white);
    box-shadow: inset 0 0 0 3px var(--color__green);
  }
  .m-header__link:hover {
    color: var(--color__red-dark);
  }
  .m-header__link:hover::after {
    opacity: 1;
  }
  .m-contact-form__file-button:hover {
    opacity: var(--opacity__hover);
  }
  .m-contact-form__submit .wpcf7-submit:hover {
    opacity: var(--opacity__hover);
  }
  .m-button:hover {
    color: var(--_color__main);
    background-color: var(--_color__sub);
    filter: unset;
  }
  .m-article-content a:hover {
    opacity: var(--opacity__hover);
  }
  .u-hover--opacity:hover {
    opacity: var(--opacity__hover);
  }
  .u-hover--drop-shadow:hover {
    filter: drop-shadow(0 3px 6px var(--color__black-alpha20));
    transform: translateZ(0);
  }
  .u-hover--color-blue:hover {
    color: var(--color__red);
  }
  .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 (prefers-reduced-motion: no-preference){
  [data-scroll-animation] {
    transition-property: var(--_scroll-animation-property);
    transition-timing-function: var(--_scroll-animation-easing);
  }
  [data-scroll-animation][data-animated=true]:not(:focus-within) {
    transition-duration: var(--_scroll-animation-duration);
  }
  [data-scroll-animation|=clip] {
    --_scroll-animation-property: clip-path;
    --_scroll-animation-easing: cubic-bezier(0.19, 1, 0.22, 1);
    --_scroll-animation-duration: 1s;
    --_scroll-animation-stating-path: inset(0 100% 0 0);
    --_scroll-animation-end-path: inset(0 0 0 0);
  }
  [data-scroll-animation|=clip]:not([data-animated=true]) {
    clip-path: var(--_scroll-animation-stating-path);
  }
  [data-scroll-animation|=clip][data-animated=true] {
    clip-path: var(--_scroll-animation-end-path);
  }
  [data-scroll-animation=clip-with-overlay] {
    --_scroll-animation-overlay-color: var(--color__gray);
    --_scroll-animation-overlay-duration: var(--_scroll-animation-duration);
    --_scroll-animation-overlay-delay: calc(
      var(--_scroll-animation-overlay-duration) / 2
    );
    position: relative;
  }
  [data-scroll-animation=clip-with-overlay]::after {
    position: absolute;
    inset: 0;
    content: "";
    background-color: var(--_scroll-animation-overlay-color);
    transition-timing-function: var(--_scroll-animation-easing);
    transition-property: var(--_scroll-animation-property);
    rotate: 180deg;
  }
  [data-scroll-animation=clip-with-overlay]:not(:focus-within)::after {
    transition-duration: var(--_scroll-animation-duration);
    transition-delay: calc(var(--_scroll-animation-duration) / 2);
  }
  [data-scroll-animation=clip-with-overlay]:not([data-animated=true])::after {
    clip-path: var(--_scroll-animation-end-path);
  }
  [data-scroll-animation=clip-with-overlay][data-animated=true]::after {
    clip-path: var(--_scroll-animation-stating-path);
  }
  [data-scroll-animation=fade-in] {
    --_scroll-animation-property: opacity;
    --_scroll-animation-easing: ease;
    --_scroll-animation-duration: 1s;
  }
  [data-scroll-animation=fade-in]:not([data-animated=true]) {
    opacity: 0;
  }
  [data-scroll-animation=fade-in-up] {
    --_scroll-animation-property: opacity, translate;
    --_scroll-animation-easing: ease-in-out;
    --_scroll-animation-duration: 1s;
    --_scroll-animation-starting-position: 40px;
  }
  [data-scroll-animation=fade-in-up]:not([data-animated=true]) {
    opacity: 0;
    translate: 0 var(--_scroll-animation-starting-position);
  }
  [data-scroll-animation=fade-in-down] {
    --_scroll-animation-property: opacity, translate;
    --_scroll-animation-easing: ease-in-out;
    --_scroll-animation-duration: 1s;
    --_scroll-animation-starting-position: -40px;
  }
  [data-scroll-animation=fade-in-down]:not([data-animated=true]) {
    opacity: 0;
    translate: 0 var(--_scroll-animation-starting-position);
  }
  [data-scroll-animation=fade-in-left] {
    --_scroll-animation-property: opacity, translate;
    --_scroll-animation-easing: ease-in-out;
    --_scroll-animation-duration: 1s;
    --_scroll-animation-starting-position: -40px;
  }
  [data-scroll-animation=fade-in-left]:not([data-animated=true]) {
    opacity: 0;
    translate: var(--_scroll-animation-starting-position) 0;
  }
  [data-scroll-animation=fade-in-right] {
    --_scroll-animation-property: opacity, translate;
    --_scroll-animation-easing: ease-in-out;
    --_scroll-animation-duration: 1s;
    --_scroll-animation-starting-position: 40px;
  }
  [data-scroll-animation=fade-in-right]:not([data-animated=true]) {
    opacity: 0;
    translate: var(--_scroll-animation-starting-position) 0;
  }
  [data-scroll-animation-item=fade-in-right] {
    --_delay: calc(0.2s + var(--js-scroll-animation-delay, 0s));
  }
  [data-scroll-animation-item=fade-in-right]:not([data-animated=true]) {
    opacity: 0;
  }
  [data-scroll-animation-item=fade-in-right][data-animated=true] {
    animation: scroll-animation-fade-in 1s linear var(--_delay) backwards, scroll-animation-slide-in-right 1.6s cubic-bezier(0.16, 1, 0.3, 1) var(--_delay) backwards;
  }
  :has(> [data-scroll-animation-wrap=fade-in-right]) {
    overflow-x: clip;
  }
  [data-scroll-animation=scale-in] {
    --_scroll-animation-property: opacity, scale;
    --_scroll-animation-easing: cubic-bezier(0.19, 1, 0.22, 1);
    --_scroll-animation-duration: 1s;
    --_scroll-animation-starting-scale: 0.9;
  }
  [data-scroll-animation=scale-in]:not([data-animated=true]) {
    opacity: 0;
    scale: var(--_scroll-animation-starting-scale);
  }
}

@media (prefers-reduced-motion: reduce){
  .js-accordion {
    --_duration: 0s;
  }
  .m-drawer {
    --_duration: 0s;
  }
}