@layer global {
:root {
  --bp-xxs: 375;
  --bp-xs: 475;
  --bp-sm: 640;
  --bp-md: 768;
  --bp-lg: 1024;
  --bp-xl: 1280;
  --bp-xxl: 1536;
  --bp-xxxl: 1920;

  --color-back: #fff;
  --color-text: #333232;
  --color-white: #fff;
  --color-black: #000;
  --color-primary: #a87130;
  --color-secondary: #282735;
  --color-3rd: #99413d;
  --color-4th: #8db1a2;
  --color-error: #99413d;
  --fontFamily-default: "Noto Sans  JP", "游ゴシック体", YuGothic, "游ゴシック",
    "Yu Gothic", sans-serif;
  --fontFamily-noto: "Noto Sans  JP", "游ゴシック体", YuGothic, "游ゴシック",
    "Yu Gothic", sans-serif;
  --fontFamily-poppins: "Noto Sans JP", sans-serif;

  --ease-in-sine: cubic-bezier(0.47, 0, 0.745, 0.715);
  --ease-out-sine: cubic-bezier(0.39, 0.575, 0.565, 1);
  --ease-in-out-sine: cubic-bezier(0.445, 0.05, 0.55, 0.95);
  --ease-in-quad: cubic-bezier(0.55, 0.085, 0.68, 0.53);
  --ease-out-quad: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --ease-in-out-quad: cubic-bezier(0.455, 0.03, 0.515, 0.955);

  --ease-in-cubic: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  --ease-out-cubic: cubic-bezier(0.215, 0.61, 0.355, 1);
  --ease-in-out-cubic: cubic-bezier(0.645, 0.045, 0.355, 1);
  --ease-in-quart: cubic-bezier(0.895, 0.03, 0.685, 0.22);
  --ease-out-quart: cubic-bezier(0.165, 0.84, 0.44, 1);
  --ease-in-out-quart: cubic-bezier(0.77, 0, 0.175, 1);

  --ease-in-quint: cubic-bezier(0.755, 0.05, 0.855, 0.06);
  --ease-out-quint: cubic-bezier(0.23, 1, 0.32, 1);
  --ease-in-out-quint: cubic-bezier(0.86, 0, 0.07, 1);
  --ease-in-expo: cubic-bezier(0.95, 0.05, 0.795, 0.035);
  --ease-out-expo: cubic-bezier(0.19, 1, 0.22, 1);
  --ease-in-out-expo: cubic-bezier(1, 0, 0, 1);

  --ease-in-circ: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  --ease-out-circ: cubic-bezier(0.075, 0.82, 0.165, 1);
  --ease-in-out-circ: cubic-bezier(0.785, 0.135, 0.15, 0.86);
  --ease-in-back: cubic-bezier(0.6, -0.28, 0.735, 0.045);
  --ease-out-back: cubic-bezier(0.175, 0.885, 0.32, 1.275);
  --ease-in-out-back: cubic-bezier(0.68, -0.55, 0.265, 1.55);

  --height-design: 700;

  /* --height-header: 98; */
  --height-header: 105;
  --height-header-sp: 53;

  --line-clamp: 3;

  --scroll-paddingTop: 40;
  --width-design: 1600;
  --width-inner-lg: 950;
  --width-inner: 780;
  --width-subInner: 800;
  --zIndex-header: 40;
  --zIndex-spmenu: 41;
  --zIndex-toggle: 42;
  --zIndex-online: 30;
  --zIndex-splash: 50;

  --lineHeight-default: 1.5;
  --letterSpacing-default: 0;
  --leading-trim: calc((1em - 1lh) / 2);
  --gutter: max(15px, calc(15 / 375 * 100%));
  --gutter-inner: max(139px, calc(139 / 1920 * 100%));
}
}
@layer reset {

/*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.css */

/* Reset box-model and set borders */
/* ============================================ */

*,
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
  min-width: 0;
}

/* Document */
/* ============================================ */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -webkit-tap-highlight-color: transparent; /* 3*/
}

/* Sections */
/* ============================================ */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */

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

/* Headings */
/* ============================================ */

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

/* Lists (enumeration) */
/* ============================================ */

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

/* Lists (definition) */
/* ============================================ */

dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

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

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */

/**
 * Remove the gray background on active links in IE 10.
 */

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

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

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

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */

/**
 * Prevent vertical alignment issues.
 */

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

/* Forms */
/* ============================================ */

/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */

button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none; /* 1 */
  -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; /* 2 */
}

/**
 * Correct cursors for clickable elements.
 */

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

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

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */

:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */

option {
  padding: 0;
}

/**
 * Reset to invisible
 */

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

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

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

/**
 * Correct the outline style in Safari.
 */

[type="search"] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

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

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/**
 * Fix appearance for Firefox
 */
[type="number"] {
  -moz-appearance: textfield;
}

/**
 * Clickable labels
 */

label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */

[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */

/**
1. Correct table border color inheritance in all Chrome and Safari.
*/

table {
  border-color: inherit; /* 1 */
  border-collapse: collapse;
}

caption {
  text-align: left;
}

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

th {
  text-align: left;
  font-weight: bold;
}
}
@layer base {

html {
  scroll-behavior: auto;
  scroll-padding-top: calc(var(--scroll-paddingTop) * 1px);
}

body {
  background: var(--color-back);
  color: var(--color-text);
  font-family: var(--fontFamily-default);
  overflow-wrap: break-word;
  text-rendering: optimizeLegibility;
  /* word-break: break-all; */
  line-height: var(--lineHeight-default);
  overflow-x: clip;
  letter-spacing: var(--letterSpacing-default);
}

li {
  list-style: none;
}

button {
  cursor: pointer;
}

summary {
  display: block;
  list-style: none;
}

summary::-webkit-details-marker {
  display: none;
}

a {
  color: inherit;
  text-decoration: none;
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

code {
  white-space: pre-wrap;
}

pre {
  font-family: var(--fontFamily-default);
  white-space: pre-wrap;
}

figure {
  max-width: 100%;
}

picture > img {
  max-width: 100%;
}

picture > source {
  max-width: 100%;
}

img {
  height: auto;
  image-rendering: optimize-contrast; /* ぼやけ防止 */
  max-width: 100%;
  vertical-align: middle;
  display: block;
}

main {
  display: block;
}

@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}

/* フォーム部品リセット */
input {
  min-width: 0;
}

input:focus {
  outline: 2px solid var(--color-primary);
}

input:focus-visible {
  outline: 2px solid var(--color-primary);
}

button {
  font-size: 1rem;
}

optgroup {
  font-size: 1rem;
}

textarea {
  resize: none;
}

textarea:focus {
  outline: 2px solid var(--color-primary);
}

textarea:focus-visible {
  outline: 2px solid var(--color-primary);
}

select {
  font-size: 1rem;
}

select:focus {
  outline: 2px solid var(--color-primary);
}

select:focus-visible {
  outline: 2px solid var(--color-primary);
}

/* プレースホルダー */
::-moz-placeholder {
  color: #ccc;
}
::placeholder {
  color: #ccc;
}

/* エラー時 */
.is-error input {
  border-color: var(--color-error);
}

.is-error textarea {
  border-color: var(--color-error);
}

.is-error select {
  border-color: var(--color-error);
}

label {
  cursor: pointer; /* iOSでのlabelとinput,select,textareaの関連付け */
}

/* スピンボタン非表示 (Chrome / Safari) */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button,
input[type="month"]::-webkit-outer-spin-button,
input[type="month"]::-webkit-inner-spin-button,
input[type="datetime-local"]::-webkit-outer-spin-button,
input[type="datetime-local"]::-webkit-inner-spin-button,
input[type="week"]::-webkit-outer-spin-button,
input[type="week"]::-webkit-inner-spin-button,
input[type="time"]::-webkit-outer-spin-button,
input[type="time"]::-webkit-inner-spin-button,
input[type="date"]::-webkit-outer-spin-button,
input[type="date"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
          appearance: none;
  display: none;
  margin: 0;
}

/* スピンボタン非表示 (FireFox) */
input[type="number"],
input[type="month"],
input[type="datetime-local"],
input[type="week"],
input[type="time"],
input[type="date"] {
  -webkit-appearance: textfield;
     -moz-appearance: textfield;
          appearance: textfield;
}

/* クリアボタン非表示 */
input[type="date"]::-webkit-clear-button,
input[type="month"]::-webkit-clear-button,
input[type="datetime-local"]::-webkit-clear-button,
input[type="time"]::-webkit-clear-button,
input[type="week"]::-webkit-clear-button {
  -webkit-appearance: none;
          appearance: none;
}

/* セレクトボックス */
.select-wrap {
  position: relative;
}

.select-wrap > select {
  width: 100%;
}

.select-wrap::after {
  border-bottom: 2px solid;
  border-right: 2px solid;
  bottom: 0;
  content: "";
  display: block;
  height: 10px;
  margin: auto;
  position: absolute;
  right: 20px;
  top: 0;
  transform: rotate(45deg);
  width: 10px;
}

select::-ms-expand {
  display: none;
}

option:disabled {
  color: #ccc;
  opacity: 1;
}

/* ラジオボタン、チェックボックス */
input[type="radio"],
input[type="checkbox"] {
  opacity: 0;
  position: absolute;
}

input[type="radio"] + span,
input[type="checkbox"] + span {
  cursor: pointer;
  display: inline-block;
  line-height: 1;
  padding-left: 2.5em;
  position: relative;
  vertical-align: middle;
  font-size: 16px;
  font-weight: 500;
  line-height: calc(26 / 16);
  letter-spacing: 0.08em;
}

@media screen and (max-width: 768px) {
  input[type="radio"] + span,
  input[type="checkbox"] + span {
    line-height: calc(20 / 16);
    padding-left: 2em;
  }
}

input[type="radio"]:focus-visible + span,
input[type="checkbox"]:focus-visible + span {
  outline: 2px solid var(--color-primary);
}

/* ラジオボタンスタイル */
input[type="radio"] + span::before {
  background: #fff;
  border: 2px solid #707070;
  border-radius: 50%;
  content: "";
  height: calc(26 / 16 * 1em);
  left: 0;
  line-height: 1;
  position: absolute;
  top: 0px;
  width: calc(26 / 16 * 1em);
}

@media screen and (max-width: 768px) {
  input[type="radio"] + span::before {
    height: calc(20 / 16 * 1em);
    width: calc(20 / 16 * 1em);
  }
}

/* ラジオボタンチェック印（未選択） */
input[type="radio"] + span::after {
  content: "";
  display: none;
}

/* ラジオボタンチェック印（選択） */
input[type="radio"]:checked + span::after {
  background: #343434;
  border-radius: 50%;
  display: block;
  height: calc(18 / 16 * 1em);
  left: calc(4 / 16 * 1em);
  line-height: 1;
  margin: 0;
  padding: 0;
  position: absolute;
  top: calc(4 / 16 * 1em);
  width: calc(18 / 16 * 1em);
}

@media screen and (max-width: 768px) {
  input[type="radio"]:checked + span::after {
    height: calc(14 / 16 * 1em);
    top: calc(3 / 16 * 1em);
    left: calc(3 / 16 * 1em);
    width: calc(14 / 16 * 1em);
  }
}

/* チェックボックス */
input[type="checkbox"] + span::before {
  /* position: absolute;
  top: 0.1em;
  left: 0;
  content: "";
  width: calc(20 / 16 * 1em);
  height: calc(20 / 16 * 1em);
  border: 1px solid #707070;
  background: #fff;
  line-height: 1;
  vertical-align: middle; */
  background: #fff;
  border: 2px solid #707070;
  border-radius: 50%;
  content: "";
  height: calc(26 / 16 * 1em);
  left: 0;
  line-height: 1;
  position: absolute;
  top: 0px;
  width: calc(26 / 16 * 1em);
}

@media screen and (max-width: 768px) {
  input[type="checkbox"] + span::before {
    height: calc(20 / 16 * 1em);
    width: calc(20 / 16 * 1em);
  }
}

/* チェックボックス未チェック時 */
input[type="checkbox"] + span::after {
  content: "";
  display: none;
}

/* チェックボックスチェック時 */
input[type="checkbox"]:checked + span::after {
  /* display: block;
  position: absolute;
  top: 0.1em;
  left: 0.4em;
  width: 0.5em;
  height: 1em;
  content: "";
  border-bottom: 3px solid #707070;
  border-right: 3px solid #707070;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg); */
  background: #343434;
  border-radius: 50%;
  display: block;
  height: calc(18 / 16 * 1em);
  left: calc(4 / 16 * 1em);
  line-height: 1;
  margin: 0;
  padding: 0;
  position: absolute;
  top: calc(4 / 16 * 1em);
  width: calc(18 / 16 * 1em);
}


@media screen and (max-width: 768px) {
  input[type="checkbox"]:checked + span::after {
    height: calc(14 / 16 * 1em);
    top: calc(3 / 16 * 1em);
    left: calc(3 / 16 * 1em);
    width: calc(14 / 16 * 1em);
  }
}
}

/* @import "vendor.css" layer(vendor); */
@layer wordpress {
/* ブロックエディタ用のスタイル */
#wp-postbody {
  display: flow-root;
  overflow: hidden;
  word-break: break-all;
}

#wp-postbody::after,
#wp-postbody::before {
  clear: both;
  content: "";
  display: table;
}

#wp-postbody > * {
  margin-top: 0.6em;
  margin-bottom: 0.6em;
}

#wp-postbody > *:first-child {
  margin-top: 0;
}

#wp-postbody :is(h1, h2, h3, h4, h5, h6, p) {
  color: var(--color-text);
}

#wp-postbody h1 {
  font-size: 38px;
  line-height: calc(64.6 / 38);
  letter-spacing: 0.09em;
  font-weight: 500;
  color: var(--color-secondary);
}

#wp-postbody h2 {
  font-size: 32px;
  line-height: calc(54.4 / 32);
  font-weight: 700;
  color: var(--color-secondary);
  letter-spacing: 0.09em;
}

@media screen and (max-width: 768px) {
  #wp-postbody h2 {
    font-size: 18px;
    line-height: calc(30.6 / 18);
  }
}

#wp-postbody h3 {
  font-size: 25px;
  font-weight: 500;
  line-height: calc(45 / 25);
  letter-spacing: 0.1em;
  padding-left: calc(29 / 25 * 1em);
  padding-right: calc(29 / 25 * 1em);
  border-left: 6px solid;
  border-right: 6px solid;
  display: inline-block;
}
@media screen and (max-width: 768px) {
  #wp-postbody h3 {
    font-size: 18px;
    line-height: calc(30.6 / 18);
  }
}

#wp-postbody h4 {
  font-size: 24px;
  line-height: calc(36 / 24);
  padding: calc(14 / 24 * 1em);
  color: white;
  background-color: var(--color-secondary);
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 768px) {
  #wp-postbody h4 {
    font-size: 16px;
    line-height: calc(27.2 / 16);
    padding: calc(16 / 16 * 1em) calc(16 / 16 * 1em);
  }
}

#wp-postbody h5 {
  font-size: 20px;
  line-height: calc(30 / 20);
  padding: calc(8 / 20 * 1em);
  border-left: 2px solid var(--color-secondary);
  font-weight: 500;
}

@media screen and (max-width: 768px) {
  #wp-postbody h5 {
    font-size: 16px;
    line-height: calc(27.2 / 16);
  }
}

#wp-postbody h6 {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.09em;
  line-height: calc(23.8 / 14);
  color: var(--color-secondary);
}

@media screen and (max-width: 768px) {
  #wp-postbody h6 {
    font-size: 12px;
    line-height: calc(18 / 12);
  }
}

#wp-postbody p {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.09em;
  line-height: calc(23.8 / 14);
  margin-top: 1.5em;
  margin-bottom: 1.5em;
  font-style: normal;
}
@media screen and (max-width: 768px) {
  #wp-postbody p {
    font-size: 14px;
    line-height: calc(23.8 / 14);
  }
}

#wp-postbody cite {
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: calc(30 / 15);
  font-style: normal;
}

#wp-postbody strong {
  font-weight: 700;
  font-size: 20px;
  letter-spacing: 0.09em;
  line-height: calc(34 / 20);
}
@media screen and (max-width: 768px) {
  #wp-postbody strong {
    font-size: 16px;
    line-height: calc(27.2 / 16);
  }
}

#wp-postbody em {
  font-style: italic;
}

#wp-postbody tr {
  font-weight: normal;
}

#wp-postbody :is(th, td) {
  padding: 0.5em;
}

#wp-postbody blockquote {
  background-color: white;
  padding: 1.5em 1.6em 1em;
  text-align: left;
}

@media screen and (max-width: 768px) {
  #wp-postbody blockquote {
    padding: 1.3em 0.7em 1em;
  }
}

#wp-postbody blockquote p {
  font-size: 12px;
  line-height: calc(20.4 / 12);
}
#wp-postbody blockquote cite {
  font-size: 14px;
  line-height: calc(28 / 14);
}

#wp-postbody blockquote a {
  cursor: pointer;
  text-decoration: underline;
}

#wp-postbody figure {
  margin-bottom: 0.5em;
  margin-top: 0.5em;
  max-width: 100%;
}

#wp-postbody figure.wp-block-table {
  overflow: visible;
}

#wp-postbody figcaption {
  text-align: center;
  margin-top: 0.2em;
}

#wp-postbody figure.aligncenter {
  margin-left: auto;
  margin-right: auto;
}

#wp-postbody img {
  max-width: 100%;
}

#wp-postbody .wp-block-pullquote {
  padding: unset !important;
  margin-left: unset !important;
  margin-right: unset !important;
  margin-top: 1em !important;
  margin-bottom: 1em !important;
}

#wp-postbody
  :is(img.alignnone, img.alignleft, img.alignright, img.aligncenter) {
  display: block;
  height: auto;
  margin-bottom: 0.5em;
  margin-left: auto;
  margin-right: auto;
  -o-object-fit: contain;
     object-fit: contain;
  width: auto;
}

#wp-postbody img.alignnone {
  margin-left: 0;
}

#wp-postbody img.alignleft {
  float: left;
  margin-left: 0;
  margin-right: 0.5em;
}

#wp-postbody img.alignright {
  float: right;
  margin-left: 0.5em;
  margin-right: 0;
}

#wp-postbody ul > li {
  margin-top: 1em;
  padding-left: 1.3em;
  position: relative;
  font-size: 16px;
  line-height: calc(27.2 / 16);
  font-weight: 500;
  letter-spacing: 0.09em;
}

#wp-postbody ul > li::before {
  background: var(--color-secondary);
  border-radius: 50%;
  content: "";
  display: block;
  height: calc(9 / 16 * 1em);
  left: 0;
  position: absolute;
  top: 0.7em;
  width: calc(9 / 16 * 1em);
}

#wp-postbody ol {
  counter-reset: li;
}

#wp-postbody ol > li {
  list-style: none;
  margin-top: 1.2em;
  padding-left: 1.3em;
  position: relative;
  font-size: 16px;
  line-height: calc(27.2 / 16);
  font-weight: 500;
  letter-spacing: 0.09em;
}

#wp-postbody ol > li::before {
  content: counter(li);
  counter-increment: li;
  font-weight: bold;
  left: 0;
  position: absolute;
  top: 0;
}

#wp-postbody a[href] {
  cursor: pointer;
  text-decoration: underline;
  color: var(--color-secondary);
  transition: opacity 0.3s var(--ease-in-out-quad);
}
#wp-postbody a[href][target="_blank"]::after {
  content: url("data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 width%3D%2213.438%22 height%3D%2213.091%22 viewBox%3D%220 0 13.438 13.091%22%3E%3Cg id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_2648%22 data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%202648%22 transform%3D%22translate(-90.5%20-6418)%22%3E%3Cg id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_667%22 data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%20667%22 transform%3D%22translate(93.772%206418)%22 fill%3D%22none%22 stroke%3D%22%23473b2e%22 stroke-width%3D%221%22%3E%3Crect width%3D%2210.165%22 height%3D%2210.165%22 stroke%3D%22none%22%2F%3E%3Crect x%3D%220.5%22 y%3D%220.5%22 width%3D%229.165%22 height%3D%229.165%22 fill%3D%22none%22%2F%3E%3C%2Fg%3E%3Cpath id%3D%22%E3%83%91%E3%82%B9_12114%22 data-name%3D%22%E3%83%91%E3%82%B9%2012114%22 d%3D%22M9096%2C6328v9.353h9.836%22 transform%3D%22translate(-9005%2093.238)%22 fill%3D%22none%22 stroke%3D%22%23473b2e%22 stroke-width%3D%221%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  margin-left: 0.3em;
  display: inline-block;
}
#wp-postbody a[href]:hover {
  opacity: 0.8;
}
#wp-postbody table {
  width: 100%;
}

#wp-postbody table th {
  font-weight: 700;
}

#wp-postbody table td {
  font-weight: 400;
}

#wp-postbody dl {
  font-weight: 400;
}

#wp-postbody dt {
  font-weight: 700;
}

#wp-postbody dd {
  font-weight: 400;
  margin-bottom: 1.25rem;
}

#wp-postbody pre,
#wp-postbody code {
  white-space: pre-wrap;
}

#wp-postbody .aligncenter {
  display: block;
}

#wp-postbody .alignright {
  float: right;
  margin-left: 0.5em;
  margin-right: 0;
}

#wp-postbody .alignleft {
  float: left;
  margin-left: 0;
  margin-right: 0.5em;
}

#wp-postbody .wp-caption,
#wp-postbody [class*="wp-image"] {
  display: block;
  max-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  text-align: center;
}

#wp-postbody .wp-caption-text {
  margin-bottom: 0;
  margin-top: 0;
}

#wp-postbody .post-password-form [name="post_password"] {
  border: 1px solid #333;
  padding: 0.3em;
}

#wp-postbody .post-password-form input[name="Submit"] {
  border: 1px solid #707070;
  border-radius: 5px;
  padding: 0.3em 0.6em;
}

#wp-postbody sup {
  top: -0.5em;
}

#wp-postbody sub {
  bottom: -0.25em;
}

#wp-postbody sub,
#wp-postbody sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: initial;
}

/* プラグイン用 */
#wp-postbody .pdfemb-viewer {
  max-width: 100%;
}

#wp-postbody summary {
  cursor: pointer;
}

#wp-postbody summary::before {
  content: "▽";
  margin-right: 0.2em;
  display: inline-block;
}

#wp-postbody details > * {
  margin-top: 1em;
}

#wp-postbody details > *:first-child {
  margin-top: 0;
}

#wp-postbody .myblock-point {
  display: grid;
  grid-template-columns: 90px 1fr;
  -moz-column-gap: 10px;
       column-gap: 10px;
  min-height: 87px;
}
#wp-postbody .myblock-point__left {
  display: grid;
  place-items: center;
  grid-auto-flow: row;
}
#wp-postbody .myblock-point__left .-point {
  font-size: 22px;
  line-height: calc(33 / 22);
  font-weight: 900;
  color: black;
  align-self: flex-end;
}
#wp-postbody .myblock-point__left .-num {
  font-size: 70px;
  line-height: 1;
  font-weight: 900;
  color: black;
  align-self: flex-start;
}
#wp-postbody .myblock-point__right {
  height: 100%;
  font-size: 30px;
  background-color: black;
  line-height: 1.5;
  padding: 1em;
  font-weight: 900;
}
#wp-postbody .myblock-point__right .-text {
  color: white;
}

#wp-postbody .wp-element-button {
  background-color: black;
  color: white;
  font-size: 38px;
  font-weight: 900;
  text-align: center;
  padding: 0.8em;
  border-radius: 0;
  line-height: 1.5;
}

/* wp-paginavi */
.wp-pagenavi {
  display: flex;
  -moz-column-gap: 20px;
       column-gap: 20px;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .wp-pagenavi {
    -moz-column-gap: 0px;
         column-gap: 0px;
  }
}
@keyframes text-shadow-animation-pagination {
  0% {
    text-shadow: 0 2em 0 var(--color-text), 0 0 0 var(--color-text);
  }

  100% {
    text-shadow: 0 0 0 var(--color-text), 0 -2em 0 var(--color-text);
  }
}

.wp-pagenavi .current {
  font-size: 20px;
  line-height: 1;
  display: grid;
  place-items: center;
  color: white;
  background-color: var(--color-secondary);
  aspect-ratio: 1/1;
  width: 62px;
  border-radius: 999em;
  font-weight: 500;
}

@media screen and (max-width: 768px) {
  .wp-pagenavi .current {
    font-size: 15px;
    width: 43px;
  }
}

.wp-pagenavi :is(.page, .extend) {
  font-size: 20px;
  line-height: 1;
  display: grid;
  place-items: center;
  background-color: transparent;
  aspect-ratio: 1/1;
  width: 62px;
  border-radius: 999em;

  overflow: hidden;
  color: transparent;
  text-shadow: 0 2em 0 var(--color-text), 0 0 0 var(--color-text);
}
@media screen and (max-width: 768px) {
  .wp-pagenavi :is(.page, .extend) {
    font-size: 15px;
    width: 43px;
  }
}
.wp-pagenavi :is(.page):hover {
  animation: text-shadow-animation-pagination 0.3s forwards;
}

.wp-pagenavi :is(.nextpostslink, .previouspostslink) {
  font-size: 20px;
  line-height: 1;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  display: grid;
  place-items: center;
  grid-template-columns: auto auto;

  overflow: hidden;
  color: transparent;
  text-shadow: 0 2em 0 var(--color-text), 0 0 0 var(--color-text);
}

@media screen and (max-width: 768px) {
  .wp-pagenavi :is(.nextpostslink, .previouspostslink) {
    font-size: 16px;
  }
}
.wp-pagenavi :is(.nextpostslink, .previouspostslink):hover {
  animation: text-shadow-animation-pagination 0.3s forwards;
}

.wp-pagenavi .previouspostslink::before {
  content: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212.553%22 height=%2211.141%22 viewBox=%220 0 12.553 11.141%22%3E%3Cg id=%22グループ_385%22 data-name=%22グループ 385%22 transform=%22translate(905.053 1649.819) rotate(180)%22%3E%3Cpath id=%22パス_68%22 data-name=%22パス 68%22 d=%22M795.387,1837.093l4.156,4.156-4.156,4.156%22 transform=%22translate(104.51 -197)%22 fill=%22none%22 stroke=%22%23030c11%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 stroke-width=%222%22/%3E%3Cline id=%22線_5%22 data-name=%22線 5%22 x1=%229.849%22 transform=%22translate(893.5 1644.249)%22 fill=%22none%22 stroke=%22%23030c11%22 stroke-linecap=%22round%22 stroke-width=%222%22/%3E%3C/g%3E%3C/svg%3E");
  display: inline-block;
  margin-right: 10px;
}

@media screen and (max-width: 768px) {
  .wp-pagenavi .previouspostslink::before {
    margin-right: 5px;
  }
}
.wp-pagenavi .nextpostslink::after {
  content: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212.553%22 height=%2211.141%22 viewBox=%220 0 12.553 11.141%22%3E%3Cg id=%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_384%22 data-name=%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%20384%22 transform=%22translate(-892.5%20-1638.678)%22%3E%3Cpath id=%22%E3%83%91%E3%82%B9_68%22 data-name=%22%E3%83%91%E3%82%B9%2068%22 d=%22M795.387,1837.093l4.156,4.156-4.156,4.156%22 transform=%22translate(104.51%20-197)%22 fill=%22none%22 stroke=%22%23333232%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 stroke-width=%222%22/%3E%3Cline id=%22%E7%B7%9A_5%22 data-name=%22%E7%B7%9A%205%22 x1=%229.849%22 transform=%22translate(893.5%201644.249)%22 fill=%22none%22 stroke=%22%23333232%22 stroke-linecap=%22round%22 stroke-width=%222%22/%3E%3C/g%3E%3C/svg%3E");
  display: inline-block;
  margin-left: 10px;
}
@media screen and (max-width: 768px) {
  .wp-pagenavi .nextpostslink::after {
    margin-left: 5px;
  }
}
}
@layer components {

.c-article-row__link {
  padding-top: 20px;
  padding-bottom: 20px;
  position: relative;
}

@media screen and (max-width: 768px) {
  .c-article-row__link {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
.c-article-row__link::before {
  content: "";
  position: absolute;
  top: 65%;
  left: -25px;
  translate: 0 -50%;
  background-color: var(--color-secondary);
  width: 10px;
  height: 10px;
  display: block;
  border-radius: 999em;
  scale: 0;
  transition: scale 0.3s;
}

.c-article-row__link::after {
  content: "";
  width: 100%;
  height: 1px;
  display: block;

  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #707070;
}

.c-article-row__title {
  margin-top: 2px;
  font-size: 22px;
  font-weight: 500;
  line-height: calc(34 / 22);
  letter-spacing: 0.09em;
  font-family: var(--fontFamily-noto);
}

@media screen and (max-width: 768px) {
  .c-article-row__title {
    font-size: 16px;
    line-height: calc(34 / 16);
    margin-top: -8px;
  }
}

.c-article-row__meta {
  display: grid;
  grid-template-columns: 100px 1fr;
  -moz-column-gap: 30px;
       column-gap: 30px;
}

@media screen and (max-width: 768px) {
  .c-article-row__meta {
    grid-template-columns: 80px 1fr;
    -moz-column-gap: 10px;
         column-gap: 10px;
  }
}

.c-article-row__date {
  font-family: var(--fontFamily-noto);
  font-size: 15px;
  font-weight: 500;
  line-height: calc(30 / 15);
  letter-spacing: 0.09em;
  color: #767676;
}

@media screen and (max-width: 768px) {
  .c-article-row__date {
    font-size: 12px;
    line-height: calc(30 / 12);
  }
}

.c-article-row__categoryList {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 10px;
       column-gap: 10px;
}
.c-article-row__categoryLink {
  font-family: var(--fontFamily-noto);
  font-size: 14px;
  font-weight: 500;
  line-height: calc(30 / 14);
  letter-spacing: 0.09em;
  color: #767676;
  transition: opacity 0.3s var(--ease-in-out-quad);
}
@media screen and (max-width: 768px) {
  .c-article-row__categoryLink {
    font-size: 12px;
    line-height: calc(30 / 12);
  }
}

.c-article-row__categoryLink:hover {
  opacity: 0.8;
}

.c-article-row__categoryLink::before {
  content: "#";
}
.c-form-input {
  padding: calc((27 / 2) / 16 * 1em) calc(34 / 16 * 1em);
  border: 1px solid #707070;
  width: 100%;
  line-height: calc(28.8 / 16);
  border-radius: 30px;
  font-family: var(--fontFamily-noto);
  letter-spacing: 0.08em;
  background-color: white;
  max-width: 679px;
}

.c-form-input._recruit {
  border-color: #aaaaaa;
}

@media screen and (max-width: 768px) {
  .c-form-input {
    padding: calc((10 / 2) / 16 * 1em) calc(20 / 16 * 1em);
  }
}

.c-form-textarea {
  font-family: var(--fontFamily-noto);
  padding: calc((27 / 2) / 16 * 1em) calc(34 / 16 * 1em);
  border: 1px solid #707070;
  width: 100%;
  line-height: calc(28.8 / 16);
  border-radius: 12px;
  letter-spacing: 0.08em;
  height: 390px;
  max-width: 679px;
  background-color: white;
}
.c-form-textarea._recruit {
  border-color: #aaaaaa;
}
@media screen and (max-width: 768px) {
  .c-form-textarea {
    padding: calc((20 / 2) / 16 * 1em) calc(20 / 16 * 1em);
    height: 305px;
  }
}

.c-form-tel {
  font-family: var(--fontFamily-noto);
  padding: calc((27 / 2) / 16 * 1em) calc(34 / 16 * 1em);
  border: 1px solid #707070;
  width: 100%;
  line-height: calc(28.8 / 16);
  letter-spacing: 0.08em;
  border-radius: 30px;
  max-width: 679px;
  background-color: white;
}

.c-form-range {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  cursor: pointer;
  background: #eeeeee;
  height: 12px;
  width: 100%;
  border-radius: 10px;
  border: solid 3px #eeeeee;
  outline: 0;
}

.c-form-range:focus {
  box-shadow: 0 0 3px var(--color-secondary);
}

.c-form-range::-webkit-slider-thumb {
  -webkit-appearance: none;
  background: var(--color-primary);
  width: 24px;
  height: 24px;
  border-radius: 50%;
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.15);
}

.c-form-range::-moz-range-thumb {
  background: var(--color-primary);
  width: 24px;
  height: 24px;
  border-radius: 50%;
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.15);
  border: none;
}

.c-form-range::-moz-focus-outer {
  border: 0;
}

.c-form-range:active::-webkit-slider-thumb {
  box-shadow: 0px 5px 10px -2px rgba(0, 0, 0, 0.3);
}

.c-form-select {
  position: relative;
  padding: 1em;
  border: 1px solid #707070;
  width: 100%;
}

.c-hamburger {
  cursor: pointer;
  position: relative;
  width: 57px;
  height: 23px;
  border-radius: 23px;
  transition: all 0.3s;
  background-color: var(--color-secondary);
}

.c-hamburger[aria-expanded="true"] {
  background-color: white;
}
.c-hamburger__line {
  background: white;
  display: inline-block;
  height: 1px;
  left: 20px;
  pointer-events: none;
  position: absolute;
  transition: all 0.3s;
  width: 18px;
}

.c-hamburger__line:nth-of-type(1) {
  top: 8px;
}

.c-hamburger__line:nth-of-type(2) {
  top: 14px;
}

.c-hamburger[aria-expanded="true"] .c-hamburger__line {
  background: var(--color-secondary);
}

.c-hamburger[aria-expanded="true"] .c-hamburger__line:nth-of-type(1) {
  top: 5px;
  width: 22px;
  transform: translate3d(-2px, 6px, 0) rotate(-30deg);
}

.c-hamburger[aria-expanded="true"] .c-hamburger__line:nth-of-type(2) {
  width: 22px;
  top: 17px;
  transform: translate3d(-2px, -6px, 0) rotate(30deg);
}

.c-postNavigation {
  cursor: pointer;
  font-weight: 700;
  position: relative;
}

.c-postNavigation__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.c-postNavigation__item {
  height: 100%;
  position: relative;
  transition: 0.3s;
  width: 100%;
  width: -moz-fit-content;
  width: fit-content;
}
.c-postNavigation__item._next {
  justify-self: flex-end;
}
}
@layer site {

.s-header {
  height: calc(var(--height-header) * 1px);
  background-repeat: repeat;
}

.s-header._bg {
  background-color: #fffcf7;
}

@media screen and (max-width: 1200px) {
  .s-header {
    height: calc(var(--height-header-sp) * 1px);
  }
}

.s-header._fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: var(--zIndex-header);
}

.s-header::before {
  /* position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: ""; */
  /* background-image: url("../images/site/main_bg.jpg");
  background-repeat: repeat; */
  /* opacity: 0.25; */
  /* z-index: -1; */
}

/* Header Upper Section */
.s-header__upper {
  display: grid;
  grid-template-columns: 269px 1fr;
  align-items: center;
  padding-left: calc(62 / 1680 * 100%);
  padding-right: calc(51 / 1680 * 100%);
  height: 100%;
}

@media screen and (max-width: 1200px) {
  .s-header__left {
    height: 100%;
    display: grid;
    place-items: center;
  }
}
@media screen and (max-width: 1200px) {
  .s-header__upper {
    grid-template-columns: 150px 1fr;
    padding-right: calc(var(--gutter) + 69px);
  }

  .s-header._recruitment .s-header__upper {
    grid-template-columns: 150px 1fr;
    padding-right: calc(var(--gutter) + 69px);
  }
}

.s-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: calc(var(--width-inner) * 1px);
  margin-left: auto;
  margin-right: auto;
  height: 100%;
}

.s-header__right {
  display: flex;
  justify-content: flex-end;
  -moz-column-gap: calc(62 / 1680 * 100%);
       column-gap: calc(62 / 1680 * 100%);
  align-items: center;
  translate: 0 5px;
}

@media screen and (max-width: 1200px) {
  .s-header__right {
    translate: 0;
  }
}

/* Header Toggle Button */
.s-header__toggle {
  display: none;
  position: relative;
  z-index: var(--zIndex-toggle);
}

@media screen and (max-width: 1200px) {
  .s-header__toggle {
    display: block;
    position: fixed;
    right: var(--gutter);
    top: 14px;
  }
}

.s-header__spmenu {
  /* display: none; */
  position: fixed;
  /* position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100svh; */
}

/* Hamburger Menu */
.s-hamburger {
  background-color: var(--color-primary);
  width: 4rem;
  height: 4rem;
  padding: var(--gutter);
  display: none;
  position: relative;
}

@media screen and (max-width: 1200px) {
  .s-hamburger {
    display: block;
  }
}
.s-header__nav {
  flex: 1;
}
@media screen and (max-width: 1200px) {
  .s-header__nav {
    display: none;
  }
}
.s-header-nav__list {
  display: flex;
  align-items: center;
  -moz-column-gap: calc(67 / 1680 * 100%);
       column-gap: calc(67 / 1680 * 100%);
  height: 100%;
  justify-content: flex-end;
}

@keyframes text-shadow-animation {
  0% {
    text-shadow: 0 1.5em 0 var(--color-text), 0 0 0 var(--color-text);
  }

  100% {
    text-shadow: 0 0 0 var(--color-text), 0 -1.5em 0 var(--color-text);
  }
}

.s-header-nav__list .menu-item > a[href] {
  font-size: 16px;
  line-height: 1.5;
  font-weight: 600;
  font-family: var(--fontFamily-poppins);
  text-transform: uppercase;
  display: block;
  overflow: hidden;
  color: transparent;
  text-shadow: 0 1.5em 0 var(--color-text), 0 0 0 var(--color-text);
}

.s-header-nav__list .menu-item:not(:has(.sub-menu)) > a:hover {
  animation: text-shadow-animation 0.3s forwards;
}

.s-header-nav__list .menu-item > a[aria-current="page"]::before {
  content: "";
  display: inline-block;
  margin-right: 0.5em;
  width: 12px;
  height: 12px;
  background-color: var(--color-secondary);
  border-radius: 999em;
}

.s-header-nav__list .sub-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  padding-block-start: 1em;
  padding-block-end: 1em;
  width: 140%;
}

.s-header-nav__list .sub-menu a[href] {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.09em;
  line-height: 1.5;
  font-family: var(--fontFamily-noto);
}

.s-header-nav__list .menu-item:has(.sub-menu) {
  position: relative;
}

.s-header-nav__list .menu-item:has(.sub-menu) > a {
  cursor: default;
}

.s-header-nav__list .menu-item:has(.sub-menu):hover .sub-menu,
.s-header-nav__list .menu-item:has(.sub-menu):focus-visible .sub-menu {
  display: flex;
  flex-direction: column;
  row-gap: 10px;
}
/* SP Menu */
.s-spmenu {
  background-color: var(--color-secondary);
  height: 100vh;
  height: 100dvh;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  pointer-events: none;
  /* opacity: 0; */
  transition: clip-path 0.4s var(--ease-in-out-quad);
  z-index: var(--zIndex-spmenu);
  color: white;
  clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
}

.s-spmenu._recruitment {
  background-color: var(--color-primary);
}

.s-spmenu._is-open {
  pointer-events: all;
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.s-spmenu__inner {
  padding-left: var(--gutter);
  padding-right: var(--gutter);
  height: 100%;
  width: 100%;
}

.s-spmenu__head {
  display: grid;
  grid-template-columns: 150px 1fr;
  height: calc(var(--height-header-sp) * 1px);
  padding-right: calc(69px);
}

.s-spmenu__subinner {
  display: flex;
  justify-content: space-between;
  margin-top: 1.5vh;
}

@media screen and (max-width: 1200px) {
  .s-spmenu__logo {
    height: 100%;
    display: grid;
    place-items: center;
  }
}

.s-spmenu__contact {
  display: flex;
  justify-content: flex-end;
  -moz-column-gap: calc(62 / 1680 * 100%);
       column-gap: calc(62 / 1680 * 100%);
  align-items: center;
}

.s-spmenu__privacy {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.09em;
}

.s-spmenu__body {
  height: calc(100vh - var(--height-header-sp) * 1px);
  overflow-y: auto;
  padding-bottom: 2vh;
}
.s-spmenu__upper {
  padding-top: 2.5vh;
  padding-left: 4%;
  padding-bottom: 3.8vh;
}
.s-spmenu__lower {
  padding-top: calc(20 / 700 * 100vh);
  border-top: 1px solid white;
}
.s-spmenu__address .-name {
  color: #bcbcbc;
  font-size: 12px;
  line-height: calc(21 / 12);
  letter-spacing: 0.12em;
  font-weight: 500;
  display: block;
}

.s-spmenu._recruitment .s-spmenu__address .-name {
  color: white;
}
.s-spmenu__address .-address {
  color: #bcbcbc;
  font-size: 12px;
  line-height: calc(21 / 12);
  letter-spacing: 0.12em;
  font-weight: 500;
  display: block;
  font-weight: 500;
}

.s-spmenu._recruitment .s-spmenu__address .-address {
  color: white;
}
.s-spmenu__address .-tel {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.12em;
  font-weight: 500;
  display: inline-block;
  border-bottom: 1px solid white;
}

@media screen and (max-width: 1200px) {
  .s-spmenu__address .-tel {
    margin-top: 1.5vh;
  }
}

.s-spmenu__copyright {
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.09em;
  margin-top: 1.5vh;
}

@media screen and (max-width: 1200px) {
  .s-spmenu__instagram .c-icon-instagram svg {
    width: 32px;
    display: block;
    height: 32px;
  }
}

.s-spmenu-nav__list {
  display: flex;
  flex-direction: column;
  gap: calc(13 / var(--height-design) * 100vh);
}

.s-spmenu-nav__list .menu-item {
}

.s-spmenu-nav__list .menu-item > a {
  transition: opacity 0.3s;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 24px;
  line-height: 1.5;
}

.s-spmenu-nav__list .menu-item > a[href][target="_blank"] {
  padding-right: 28px;
  position: relative;
}

.s-spmenu-nav__list .menu-item > a[href][target="_blank"]::before {
  content: "";
  width: 0.7em;
  height: 0.7em;
  background-size: contain;
  background-repeat: no-repeat;
  display: block;
  position: absolute;
  right: 0;
  top: 0.3em;
}

.s-spmenu-nav__list .menu-item > a[href="#"] {
  pointer-events: none;
}

.s-spmenu-nav__list .menu-item > a:hover {
  opacity: 0.7;
}

.s-spmenu-nav__list .sub-menu {
  margin-top: 5px;
}
.s-spmenu-nav__list .sub-menu .menu-item > a {
  font-size: 14px;
  line-height: 2;
  font-family: var(--fontFamily-noto-jp);
}

/* Footer */
.s-footer {
  background-color: var(--color-secondary);
  padding-top: 135px;
  padding-left: var(--gutter);
  padding-right: var(--gutter);
  color: white;
}
}
@layer javascript {
.js-animation._fade-in-up {
  opacity: 0;
  transition: opacity 1s, transform 1s cubic-bezier(0.23, 1, 0.32, 1);
  transform: translateY(10.5rem);
}
.js-animation._fade-in-up._delay-02 {
  transition-delay: 0.2s;
}
.js-animation._fade-in-up._delay-04 {
  transition-delay: 0.4s;
}

@media screen and (max-width: 768px) {
  .js-animation._fade-in-up._delay-02 {
    transition-delay: 0;
  }
  .js-animation._fade-in-up._delay-04 {
    transition-delay: 0;
  }
}
.js-animation._fade-in-up._active {
  opacity: 1;
  transform: translateY(0);
}
}
@layer utility {

.u-visually-hidden {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
}

.u-hidden {
  display: none !important;
}

.u-overflow-hidden {
  overflow: hidden;
}

.u-clamp-text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: var(--line-clamp);
  overflow: hidden;
  text-overflow: ellipsis;
}

.u-clear-fix::after {
  clear: both;
  content: "";
  display: table;
}

@media screen and (max-width: 768px) {
  .u-md-hidden {
    display: none;
  }
}
.u-md-visible {
  display: none;
}
@media screen and (max-width: 768px) {
  .u-md-visible {
    display: revert;
  }
}
@media screen and (max-width: 1024px) {
  .u-lg-hidden {
    display: none;
  }
}
.u-lg-visible {
  display: none;
}
@media screen and (max-width: 1024px) {
  .u-lg-visible {
    display: revert;
  }
}

@media screen and (max-width: 1280px) {
  .u-xl-hidden {
    display: none;
  }
}
.u-xl-visible {
  display: none;
}
@media screen and (max-width: 1280px) {
  .u-xl-visible {
    display: revert;
  }
}

.u-ib {
  display: inline-block;
}

.u-block {
  display: block;
}

.u-contents {
  display: contents;
}

.u-delay-02 {
  transition-delay: 0.2s;
}
.u-delay-04 {
  transition-delay: 0.4s;
}

.u-underline {
  text-decoration: underline;
}
}
