@charset "UTF-8";
@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
}

.splide__track--fade > .splide__list > .splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0;
}

.splide__track--fade > .splide__list > .splide__slide.is-active {
  opacity: 1;
  z-index: 1;
}

.splide--rtl {
  direction: rtl;
}

.splide__track--ttb > .splide__list {
  display: block;
}

.splide__container {
  box-sizing: border-box;
  position: relative;
}

.splide__list {
  backface-visibility: hidden;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}

.splide__pagination {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}

.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}

.splide:not(.is-overflow) .splide__pagination {
  display: none;
}

.splide__progress__bar {
  width: 0;
}

.splide {
  position: relative;
  visibility: hidden;
}

.splide.is-initialized, .splide.is-rendered {
  visibility: visible;
}

.splide__slide {
  backface-visibility: hidden;
  box-sizing: border-box;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  position: relative;
}

.splide__slide img {
  vertical-align: bottom;
}

.splide__spinner {
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}

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

.splide__toggle.is-active .splide__toggle__play, .splide__toggle__pause {
  display: none;
}

.splide__toggle.is-active .splide__toggle__pause {
  display: inline;
}

.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}

:root {
  --mh--breakpoint--min: 375px;
  --mh--breakpoint--sm: 640px;
  --mh--breakpoint--md: 768px;
  --mh--breakpoint--lg: 1280px;
  --mh--breakpoint--xl: 1920px;
}

:root {
  --mh--font-family--base:
  	"Zen Kaku Gothic New", "ヒラギノ角ゴ ProN W3", meiryo, sans-serif;
  --mh--font-family--en: "Fira Sans", sans-serif;
}

html body {
  --mh--font-size--x2s: 1.3rem;
  --mh--font-size--xs: 1.4rem;
  --mh--font-size--sm: 1.5rem;
  --mh--font-size--md: 1.6rem;
  --mh--font-size--lg: 1.7rem;
  --mh--font-size--xl: 1.8rem;
  --mh--font-size--x2l: 2rem;
  --mh--font-size--x3l: 2.1rem;
  --mh--font-size--x4l: 2.2rem;
  --mh--font-size--x5l: 2.4rem;
  --mh--font-size--x6l: 2.6rem;
  --mh--font-size--x7l: 2.7rem;
  --mh--font-size--x8l: 2.9rem;
  --mh--font-size--x9l: 3.1rem;
  --mh--font-size--x10l: 3.4rem;
  --mh--font-size--x11l: 3.6rem;
  --mh--font-size--x12l: 3.9rem;
}
@media (width >= 768px ) {
  html body {
    --mh--font-size--x2s: 1.1rem;
    --mh--font-size--xs: 1.3rem;
    --mh--font-size--sm: 1.4rem;
    --mh--font-size--md: 1.6rem;
    --mh--font-size--lg: 1.8rem;
    --mh--font-size--xl: 2rem;
    --mh--font-size--x2l: 2.3rem;
    --mh--font-size--x3l: 2.6rem;
    --mh--font-size--x4l: 2.9rem;
    --mh--font-size--x5l: 3.2rem;
    --mh--font-size--x6l: 3.6rem;
    --mh--font-size--x7l: 4.1rem;
    --mh--font-size--x8l: 4.6rem;
    --mh--font-size--x9l: 5.2rem;
    --mh--font-size--x10l: 5.8rem;
    --mh--font-size--x11l: 6.6rem;
    --mh--font-size--x12l: 7.4rem;
  }
}

:root {
  --mh--letter-spacing--sm: 0.05em;
  --mh--letter-spacing--md: 0.05em;
}

:root {
  --mh--line-height--none: 1;
  --mh--line-height--xs: 1.4;
  --mh--line-height--sm: 1.5;
  --mh--line-height--md: 2;
  --mh--line-height--lg: 2;
}

:root {
  --mh--header--height: 86px;
}
@media (width >= 768px ) {
  :root {
    --mh--header--height: 176px;
  }
}

:root {
  --mh--sidebar--width: 240px;
}

:root {
  --mh--contents--narrow-width: 1100px;
  --mh--contents--width: 1260px;
  --mh--contents--wide-width: 1820px;
  --mh--contents--padding--side: 20px;
  --mh--contents--narrow-width-with-padding: calc(
  	var(--mh--contents--narrow-width) + var(--mh--contents--padding--side) * 2
  );
  --mh--contents--width-with-padding: calc(
  	var(--mh--contents--width) + var(--mh--contents--padding--side) * 2
  );
  --mh--contents--wide-width-with-padding: calc(
  	var(--mh--contents--wide-width) + var(--mh--contents--padding--side) * 2
  );
}
@media (width >= 768px ) {
  :root {
    --mh--contents--padding--side: 50px;
  }
}

html body {
  --mh--color--primary-700: rgb(33 40 54);
  --mh--color--grayscale-100: rgb(255 255 255);
  --mh--color--grayscale-200: rgb(247 247 247);
  --mh--color--grayscale-300: rgb(230 230 230);
  --mh--color--grayscale-500: rgb(217 217 217);
  --mh--color--grayscale-600: rgb(179 179 179);
  --mh--color--grayscale-700: rgb(140 140 140);
  --mh--color--grayscale-900: rgb(51 51 51);
  --mh--color--grayscale-alpha: rgb(51 51 51 / 50%);
  --mh--color--error-500: rgb(242 73 73);
  --mh--gradient01: linear-gradient(
  	270deg,
  	var(--mh--color--grayscale-100) 0%,
  	var(--mh--color--grayscale-200) 100%
  );
  --mh--gradient02: linear-gradient(
  	270deg,
  	var(--mh--color--grayscale-200) 0%,
  	var(--mh--color--grayscale-100) 100%
  );
}

:root {
  --mh--easing: cubic-bezier(0.215, 0.61, 0.355, 1);
  --mh--duration: 0.5s;
}

:root {
  --mh--space--x2s: 5px;
  --mh--space--xs: 10px;
  --mh--space--sm: 15px;
  --mh--space--md: 20px;
  --mh--space--lg: 25px;
  --mh--space--xl: 30px;
  --mh--space--x2l: 35px;
  --mh--space--x3l: 40px;
}
@media (width >= 768px ) {
  :root {
    --mh--space--x2s: 10px;
    --mh--space--xs: 20px;
    --mh--space--sm: 30px;
    --mh--space--md: 40px;
    --mh--space--lg: 50px;
    --mh--space--xl: 60px;
    --mh--space--x2l: 70px;
    --mh--space--x3l: 80px;
  }
}

:root {
  --mh--padding--x2s: 20px;
  --mh--padding--xs: 20px;
  --mh--padding--sm: 20px;
  --mh--padding--md: 30px;
  --mh--padding--lg: 30px;
  --mh--padding--xl: 30px;
  --mh--padding--x-2-l: 30px;
}
@media (width >= 768px ) {
  :root {
    --mh--padding--xs: 20px;
    --mh--padding--sm: 30px;
    --mh--padding--md: 40px;
    --mh--padding--lg: 50px;
    --mh--padding--xl: 60px;
    --mh--padding--x2l: 70px;
  }
}

* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}
*::before, *::after {
  box-sizing: border-box;
}

* :focus-visible {
  outline: 2px solid;
}

html {
  block-size: 100%;
  font-size: 62.5%;
  -webkit-text-size-adjust: none;
}

body {
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizespeed;
  min-block-size: 100%;
}

img,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block;
}

img,
svg,
video {
  max-inline-size: 100%;
  block-size: auto;
}

svg {
  fill: currentcolor;
  stroke: none;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  word-break: break-word;
  word-wrap: break-word;
  overflow-wrap: break-word;
  line-break: strict;
}

ul,
ol {
  list-style: none;
}

a[class] {
  text-decoration: none;
}

input,
select {
  appearance: none;
}

input,
button,
textarea,
select,
input[type=file]::-webkit-file-upload-button {
  font: inherit;
  font-size: inherit;
  color: inherit;
  letter-spacing: inherit;
}

a[href],
area,
button,
input,
label[for],
select,
summary,
textarea,
[tabindex]:not([tabindex*="-"]) {
  touch-action: manipulation;
  cursor: pointer;
}

input[type=file] {
  cursor: auto;
}

button,
button[type],
input[type=button],
input[type=submit],
input[type=reset],
input[type=file]::-webkit-file-upload-button,
input[type=file]::file-selector-button {
  text-align: center;
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

button[disabled],
button[type][disabled],
input[type=button][disabled],
input[type=submit][disabled],
input[type=reset][disabled] {
  cursor: not-allowed;
}

/* 02_base
================================================ */
html:not([class=is-no-smoothscroll]) {
  scroll-behavior: smooth;
  scroll-padding-top: var(--mh--header--height);
}

body {
  min-width: 320px;
  color: var(--mh--color--grayscale-900);
  -webkit-text-size-adjust: 100%;
  font-size: var(--mh--font-size--md);
  font-family: var(--mh--font-family--base);
  font-weight: 400;
  line-height: var(--mh--line-height--md);
  letter-spacing: var(--mh--letter-spacing--md);
}
@media (width >= 768px ) {
  body {
    min-width: var(--mh--contents--narrow-width);
  }
}
@media (width >= 768px ) and (hover: none) {
  body {
    -webkit-text-size-adjust: none;
  }
}

* {
  letter-spacing: var(--mh--letter-spacing--md);
}

ins {
  text-decoration: none;
  background-color: #ff9;
}

mark {
  font-weight: bold;
  background-color: #ff9;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  cursor: help;
  border-bottom: 1px dotted;
}

sup {
  font-size: 0.75em;
  vertical-align: text-top;
}

sub {
  font-size: 0.75em;
  vertical-align: text-bottom;
}

hr {
  display: block;
  height: 1px;
  padding: 0;
  margin: 1em 0;
  border: 0;
  border-top: 1px solid;
}

table {
  width: 100%;
  table-layout: fixed;
  border-spacing: 0;
  border-collapse: collapse;
}

a {
  color: inherit;
}
@media (width < 768px) {
  a:hover {
    text-decoration: none;
  }
}

input[type=text],
input[type=email],
input[type=tel],
textarea,
button,
select,
option {
  display: block;
  width: 100%;
  max-width: 100%;
  font-family: inherit;
  background: none;
  border: 1px solid;
  border-radius: 0;
}
@media (width < 768px) {
  input[type=text],
  input[type=email],
  input[type=tel],
  textarea,
  button,
  select,
  option {
    font-size: 1.6rem;
  }
}

summary {
  display: block;
  cursor: pointer;
  list-style: none;
}
summary::-webkit-details-marker {
  display: none;
}

.l-wrapper {
  position: relative;
  padding-top: var(--mh--header--height);
  padding-bottom: env(safe-area-inset-bottom);
  overflow-x: hidden;
}

.l-container.is-col2 {
  display: grid;
  gap: 60px;
}
@media (width < 1280px) {
  .l-container.is-col2 {
    padding-left: var(--mh--contents--padding--side);
    padding-right: var(--mh--contents--padding--side);
  }
}
@media (width >= 1280px ) {
  .l-container.is-col2 {
    display: grid;
    grid-template-columns: 1fr var(--mh--sidebar--width);
    gap: 7.2727272727%;
    width: var(--mh--contents--narrow-width);
    margin: 0 auto;
  }
}

.splide__arrows {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: center;
  margin: 30px 0 0;
}
.splide__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  aspect-ratio: 1/1;
  background-color: transparent;
  border: 1px solid var(--mh--color--grayscale-900);
  border-radius: 50%;
}
.splide__arrow--prev {
  transform: scaleX(-1);
}
.splide__arrow-ico {
  transform: translateX(1px);
}
.splide__arrow-ico::after {
  display: block !important;
}
.splide__pagination {
  display: flex !important;
  align-items: center;
  justify-content: center;
}
.splide__pagination__page {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  aspect-ratio: 1/1;
  border: none;
}
.splide__pagination__page::before {
  display: block;
  width: 8px;
  aspect-ratio: 1/1;
  content: "";
  background-color: var(--mh--color--grayscale-500);
  border-radius: 50%;
  transition: background-color var(--mh--duration) var(--mh--easing);
}
.splide__pagination__page.is-active::before {
  background-color: var(--mh--color--grayscale-900);
}
@media (width >= 768px ) {
  .splide__arrow {
    width: 40px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .splide__arrow {
    transition: background-color var(--mh--duration) var(--mh--easing);
  }
  .splide__arrow:hover {
    background-color: var(--mh--color--grayscale-300);
  }
}

/*  .c-archive01
================================================== */
.c-archive01 > * + * {
  margin-top: 40px;
}
.c-archive01__item-in {
  display: flex;
  flex-direction: column;
}
.c-archive01__item-meta {
  display: flex;
  order: 2;
  margin: 0 0 3.5px;
  color: var(--mh--color--grayscale-700);
}
.c-archive01__item-date {
  font-size: var(--mh--font-size--md);
  font-family: var(--mh--font-family--en);
  font-weight: 400;
  line-height: var(--mh--line-height--xs);
  letter-spacing: 0;
  display: block;
}
.c-archive01__item-cat {
  font-size: var(--mh--font-size--sm);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  position: relative;
  display: block;
  padding-left: 13px;
  margin-left: 12px;
}
.c-archive01__item-cat::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 1px;
  height: 14px;
  content: "";
  background-color: var(--mh--color--grayscale-600);
  transform: translateY(-50%);
}
.c-archive01__item-head {
  font-size: var(--mh--font-size--md);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  display: block;
  display: -webkit-box;
  order: 2;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.c-archive01__item-img {
  display: block;
  order: 1;
  width: 100%;
  aspect-ratio: 335/223;
  margin: 0 0 10.5px;
  overflow: hidden;
}
.c-archive01__item-img-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (width >= 768px ) {
  .c-archive01 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 42px;
  }
  .c-archive01 > * + * {
    margin-top: 0;
  }
  .c-archive01__item-meta {
    padding: 0 30px;
    margin-bottom: 4px;
  }
  .c-archive01__item-head {
    padding: 0 30px;
  }
  .c-archive01__item-img {
    margin-bottom: 30px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-archive01__item-in .c-archive01__item-img-img {
    transition: transform calc(var(--mh--duration) * 3) var(--mh--easing);
  }
  .c-archive01__item-in:hover .c-archive01__item-img-img {
    transform: scale(1.1);
  }
}

/* .c-blockquote01
================================================== */
.c-blockquote01 {
  padding: 15px;
  border: 1px solid var(--mh--color--primary-700);
}
@media (width >= 768px ) {
  .c-blockquote01 {
    padding: 25px;
  }
}

/* .c-btn01
================================================== */
.c-btn01 {
  font-size: var(--mh--font-size--sm);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  display: inline-block;
  padding: 12.5px 24px;
  border: 1px solid var(--mh--color--grayscale-900);
  border-radius: calc(infinity * 1px);
}
.c-btn01:has(.c-btn01__ico) {
  position: relative;
  padding-right: 48px;
}
.c-btn01.is-small {
  font-size: var(--mh--font-size--xs);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  padding: 9px 41px 9px 19px;
}
.c-btn01__ico {
  position: absolute;
  top: 50%;
  right: 19px;
  transform: translateY(-50%);
}
.c-btn01__ico::after {
  display: block !important;
}
.c-btn01.is-small .c-btn01__ico {
  right: 14px;
}
@media (width >= 768px ) {
  .c-btn01 {
    padding: 13.5px 24px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-btn01 {
    transition: background-color var(--mh--duration) var(--mh--easing);
  }
  .c-btn01:hover {
    background-color: var(--mh--color--grayscale-300);
  }
}

/* .c-next-page-btn
================================================== */
.c-next-page-btn {
  position: relative;
  display: block;
  padding: 91px 20px 20px;
  overflow: hidden;
}
.c-next-page-btn__img {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-next-page-btn__txt {
  position: relative;
  display: block;
}
.c-next-page-btn__txt-en {
  font-size: var(--mh--font-size--xs);
  font-family: var(--mh--font-family--en);
  font-weight: 400;
  line-height: var(--mh--line-height--xs);
  letter-spacing: 0;
  display: block;
  margin: 0 0 2px;
  color: var(--mh--color--grayscale-700);
}
.c-next-page-btn__txt-ja {
  font-size: var(--mh--font-size--x3l);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  display: block;
}
.c-next-page-btn__link-img {
  position: absolute;
  top: 20px;
  right: 20px;
  display: block;
  width: 60px;
  height: 60px;
}
.c-next-page-btn__ico {
  position: absolute;
  right: 20px;
  bottom: 20px;
  display: block;
}
.c-next-page-btn__ico::after {
  display: block !important;
}
@media (width >= 768px ) {
  .c-next-page-btn {
    padding: 140px 50px 49px;
  }
  .c-next-page-btn__txt-en {
    margin-bottom: 5px;
  }
  .c-next-page-btn__link-img {
    top: 50px;
    right: 50px;
  }
  .c-next-page-btn__ico {
    right: 50px;
    bottom: 50px;
  }
  .c-next-page-btn__ico::after {
    width: 20px !important;
    height: 20px !important;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-next-page-btn__img {
    transition: transform calc(var(--mh--duration) * 3) var(--mh--easing);
  }
  .c-next-page-btn:hover .c-next-page-btn__img {
    transform: scale(1.1);
  }
}

/* .c-form
================================================== */
.c-form input[type=text],
.c-form input[type=email],
.c-form input[type=tel],
.c-form textarea,
.c-form button,
.c-form select,
.c-form option {
  border: 1px solid var(--mh--color--grayscale-700);
}
.c-form input[type=text]:focus-visible,
.c-form input[type=email]:focus-visible,
.c-form input[type=tel]:focus-visible,
.c-form textarea:focus-visible,
.c-form button:focus-visible,
.c-form select:focus-visible,
.c-form option:focus-visible {
  border-color: rgb(var(--color-black01));
  box-shadow: 0 0 0 2px rgba(var(--color-black01), 0.25);
}
.c-form fieldset {
  border: none;
}
.c-form input,
.c-form textarea {
  box-sizing: border-box;
  padding: 10px;
  font-size: 1.6rem;
  border-radius: 4px;
}
.c-form input[type=file] {
  padding: 0;
}
.c-form input[type=text],
.c-form input[type=email] {
  height: 50px;
  border-radius: 4px;
}
.c-form input[type=radio],
.c-form input[type=checkbox] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  white-space: nowrap;
  border-width: 0;
  clip: rect(0, 0, 0, 0);
}
.c-form textarea {
  height: 200px;
}
.c-form__set {
  box-sizing: border-box;
  padding: 25px 10px 20px;
  border-top: 1px solid var(--mh--color--grayscale-600);
}
.c-form__head {
  position: relative;
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 500;
}
.c-form__required, .c-form__optional {
  box-sizing: border-box;
  padding: 2px 10px 3px;
  font-size: 1.4rem;
  font-weight: 500;
  color: #fff;
  text-align: center;
  background: var(--mh--color--grayscale-300);
}
.c-form__required {
  background: var(--mh--color--grayscale-900);
}
.c-form__optional {
  color: var(--mh--color--primary-700);
  background: var(--mh--color--grayscale-300);
}
.c-form__field-set {
  display: block;
  margin-top: 15px;
}
.c-form__field-description {
  display: grid;
  gap: 5px 0;
  margin-top: 5px;
  font-size: 1.4rem;
  line-height: 1.5;
  color: var(--mh--color--grayscale-700);
}
.c-form__field-txt {
  margin-bottom: 10px;
  font-size: 1.6rem;
  line-height: 1.5;
}
.c-form__postcode {
  display: flex;
  align-items: start;
}
.c-form__postcode-suffix {
  margin: 13px 10px 0 0;
  font-size: 1.6rem;
  line-height: 1.5;
}
.c-form__postcode-btn {
  box-sizing: border-box;
  flex-shrink: 0;
  width: 105px;
  height: 50px;
  padding: 10px 15px;
  margin-left: 15px;
  font-size: 1.4rem;
  font-weight: 500;
  color: #fff;
  text-align: center;
  background: var(--mh--color--primary-700);
}
.c-form__postcode > input,
.c-form__postcode > span {
  width: 40%;
}
.c-form__select-in {
  position: relative;
  display: inline-block;
}
.c-form__select-in select {
  padding: 13px 21px 13px 10px;
  font-size: 1.6rem;
  line-height: 2.2rem;
  cursor: pointer;
}
.c-form__select-in::after {
  position: absolute;
  top: 19px;
  right: 8px;
  width: 9px;
  height: 9px;
  content: "";
  border-right: 2px solid var(--mh--color--grayscale-700);
  border-bottom: 2px solid var(--mh--color--grayscale-700);
  transform: rotate(45deg);
}
.c-form__select-unit {
  margin-left: 2px;
  font-size: 1.6rem;
}
.c-form__select.is-date .c-form__select-year select {
  width: 80px;
}
.c-form__select.is-date .c-form__select-month select,
.c-form__select.is-date .c-form__select-day select {
  width: 66px;
}
.c-form__select label + label {
  margin-left: 9px;
}
.c-form__radio-list {
  display: grid;
  gap: 15px 19px;
}
.c-form__radio-list label {
  position: relative;
  padding-left: 37px;
  cursor: pointer;
}
.c-form__radio-list input + span::before {
  position: absolute;
  top: 14px;
  left: 0;
  box-sizing: border-box;
  width: 24px;
  height: 24px;
  content: "";
  border: 1px solid var(--mh--color--grayscale-700);
  border-radius: 50%;
  transform: translateY(-50%);
}
.c-form__radio-list input + span::after {
  position: absolute;
  top: 8px;
  left: 6px;
  display: block;
  width: 12px;
  height: 12px;
  content: "";
  background: var(--mh--color--grayscale-700);
  border-radius: 50%;
  transform: scale(0);
  transition: all 0.3s ease;
}
.c-form__radio-list input:checked + span::after {
  transform: scale(1);
}
.c-form__radio-list span {
  margin: 0;
}
.c-form__checkbox-list {
  display: grid;
  gap: 15px 19px;
}
.c-form__checkbox-list label {
  position: relative;
  display: flex;
  padding-left: 37px;
  cursor: pointer;
}
.c-form__checkbox-list input + span::before {
  position: absolute;
  top: 14px;
  left: 0;
  box-sizing: border-box;
  width: 24px;
  height: 24px;
  content: "";
  border: 1px solid var(--mh--color--grayscale-700);
  transform: translateY(-50%);
}
.c-form__checkbox-list input + span::after {
  position: absolute;
  top: 7px;
  left: 4px;
  display: block;
  width: 15px;
  height: 9px;
  content: "";
  border-color: var(--mh--color--grayscale-700);
  border-style: solid;
  border-width: 3px 3px 0 0;
  transform: scale(0) rotate(135deg);
  transition: all 0.3s ease;
}
.c-form__checkbox-list input:checked + span::after {
  transform: scale(1) rotate(135deg);
}
.c-form__checkbox-list span {
  margin: 0;
}
.c-form__radio-list label + span, .c-form__checkbox-list label + span {
  font-size: 1.6rem;
  line-height: 1.5;
}
.c-form__radio-list input:focus + span::before, .c-form__checkbox-list input:focus + span::before {
  border-color: rgb(var(--color-black01));
  box-shadow: 0 0 0 2px rgba(var(--color-black01), 0.25);
}
.c-form__radio-list input:disabled + label, .c-form__checkbox-list input:disabled + label {
  opacity: 0.5;
}
.c-form__radio-list + .c-form__radio-list, .c-form__radio-list + .c-form__checkbox-list, .c-form__checkbox-list + .c-form__radio-list, .c-form__checkbox-list + .c-form__checkbox-list {
  margin-top: 50px;
}
.c-form__radio-list.is-col2, .c-form__radio-list.is-col3, .c-form__checkbox-list.is-col2, .c-form__checkbox-list.is-col3 {
  grid-template-columns: repeat(2, 1fr);
}
.c-form__privacy {
  box-sizing: border-box;
  height: 300px;
  padding: 30px 35px;
  margin-bottom: 20px;
  overflow-y: scroll;
  border: 1px solid var(--mh--color--grayscale-700);
}
.c-form__privacy-head {
  margin-bottom: 10px;
  font-weight: bold;
}
.c-form__agreement-txt {
  text-align: center;
}
.c-form__agreement-txt a {
  border-bottom: 1px solid var(--mh--color--grayscale-900);
}
.c-form__agreement-check {
  text-align: center;
}
.c-form__agreement-check label {
  position: relative;
  padding-left: 35px;
  cursor: pointer;
}
.c-form__agreement-check span {
  margin: 0;
  font-weight: 700;
}
.c-form__agreement-check input + span {
  line-height: 1.5;
}
.c-form__agreement-check input + span::before {
  position: absolute;
  top: 13px;
  left: 0;
  width: 20px;
  height: 20px;
  content: "";
  border: 1px solid var(--mh--color--grayscale-600);
  transform: translateY(-50%);
}
.c-form__agreement-check input:checked + span::after {
  position: absolute;
  top: 8px;
  left: 4px;
  display: block;
  width: 12px;
  height: 7px;
  content: "";
  border-color: var(--mh--color--grayscale-900);
  border-style: solid;
  border-width: 3px 2px 0 0;
  transform: rotate(135deg);
}
.c-form__agreement-check input:focus + span::before {
  border-color: rgb(var(--color-black01));
  box-shadow: 0 0 0 2px rgba(var(--color-black01), 0.25);
}
.c-form__agreement-check input:disabled + label {
  opacity: 0.5;
}
.c-form__btn {
  margin-top: 20px;
  position: relative;
}
.c-form__btn::after {
  display: inline-block;
  width: 14px;
  height: 14px;
  color: currentColor;
  content: "";
  background-color: currentcolor;
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14"><path d="M3.73224 14L2.9165 13.2232L9.45169 7L2.9165 0.776795L3.73224 0L11.0832 7L3.73224 14Z" fill="currentColor"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  transition: all var(--mh--duration) var(--mh--easing);
  position: absolute;
  top: 50%;
  right: 25px;
  translate: 0 -50%;
}
.c-form__btn input {
  box-sizing: border-box;
  display: inline-block;
  width: 100%;
  padding: 18px 25px;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.5;
  appearance: none;
  outline: none;
  border-radius: 50px;
  background-color: transparent;
  border: 1px solid var(--mh--color--grayscale-900);
  text-align: left;
}
.c-form__btn input:focus-visible,
.c-form__btn :focus {
  border-color: rgb(var(--color-black01));
  box-shadow: 0 0 0 2px rgba(var(--color-black01), 0.25);
}
.c-form__btn input + input {
  margin-left: 20px;
}
.c-form__btn span {
  width: 0;
  margin: 0;
}
@media (width >= 768px ) {
  .c-form__set {
    display: grid;
    grid-template-columns: 248px 1fr;
    gap: 80px;
    padding: 30px 0 20px;
  }
  .c-form__set.is-pc-block {
    display: block;
  }
  .c-form__head {
    align-items: flex-start;
    margin-bottom: 0;
    padding-top: 23px;
  }
  .c-form__field-description {
    margin-bottom: 20px;
  }
  .c-form__postcode-btn {
    font-size: 1.6rem;
  }
  .c-form__select-in select {
    padding: 13px 40px 13px 10px;
  }
  .c-form__select-in::after {
    right: 12px;
  }
  .c-form__select-unit {
    margin-left: 7px;
  }
  .c-form__select.is-date .c-form__select-year select {
    width: 150px;
  }
  .c-form__select.is-date .c-form__select-month select,
  .c-form__select.is-date .c-form__select-day select {
    width: 110px;
  }
  .c-form__select label + label {
    margin-left: 18px;
  }
  .c-form__optional, .c-form__required {
    padding: 4px 17px 5px;
    margin-left: 20px;
  }
  .c-form__radio-list, .c-form__checkbox-list {
    gap: 15px 30px;
  }
  .c-form__radio-list.is-col3, .c-form__checkbox-list.is-col3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .c-form__privacy {
    height: 200px;
    padding: 40px;
  }
  .c-form__agreement {
    padding-top: 20px;
  }
  .c-form__agreement-check {
    margin-top: 40px;
  }
  .c-form__btn {
    width: fit-content;
    margin: 40px auto 0;
  }
  .c-form__btn input {
    width: 320px;
    margin: 0;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-form__btn input {
    transition: all var(--mh--duration) var(--mh--easing);
  }
  .c-form__btn input:hover {
    color: var(--mh--color--primary-700);
    background: var(--mh--color--grayscale-300);
  }
}

/* .c-form-btn
================================================== */
.c-form-area-btn {
  margin-top: 35px;
}
@media (width >= 768px ) {
  .c-form-area-btn {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 35px;
  }
}

.c-form-btn {
  position: relative;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 320px;
  height: 60px;
  padding: 10px 20px;
  margin: 0 auto;
  font-weight: 500;
  text-align: left;
  appearance: none;
  border: 0;
}
.c-form-btn + .c-form-btn {
  margin-top: 20px;
}
@media (width >= 768px ) {
  .c-form-btn {
    max-width: 320px;
    height: 80px;
    margin: 0;
    transition: all var(--mh--duration) var(--mh--easing);
  }
  .c-form-btn + .c-form-btn {
    margin-top: 0;
    margin-left: 40px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-form-btn:hover {
    opacity: 0.8;
  }
}

/* .c-head01
================================================== */
.c-head01__txt-sm {
  font-size: var(--mh--font-size--sm);
  font-family: var(--mh--font-family--en);
  font-weight: 400;
  line-height: var(--mh--line-height--xs);
  letter-spacing: 0;
  display: block;
  color: var(--mh--color--grayscale-700);
  text-transform: uppercase;
}
.c-head01__txt-sm::before {
  display: inline-block;
  width: 11px;
  height: 12px;
  margin-right: 8px;
  content: "";
  background: url("../img/common/ico_hexagon.svg") no-repeat center center/contain;
  transform: translateY(1px);
}
.c-head01:has(.c-head01__txt-lg) .c-head01__txt-sm {
  margin: 0 0 5px;
}
.c-head01__txt-lg {
  font-size: var(--mh--font-size--x6l);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  display: block;
}
@media (width >= 768px ) {
  .c-head01:has(.c-head01__txt-lg) .c-head01__txt-sm {
    margin: 0 0 10px;
  }
}

/* head
================================================ */
.c-single01__content h3:not([class*=c-]), .c-icon-head {
  position: relative;
  padding-left: 20px;
  margin-top: var(--mh--space--x2l);
  margin-bottom: 15px;
  font-size: var(--mh--font-size--lg);
  line-height: var(--mh--line-height--sm);
}
.c-single01__content h3:not([class*=c-])::before, .c-icon-head::before {
  position: absolute;
  top: 7px;
  left: 0;
  width: 11px;
  height: 12px;
  content: "";
  background: url("../img/common/ico_hexagon.svg") no-repeat center/contain;
}
@media (width >= 768px ) {
  .c-single01__content h3:not([class*=c-]), .c-icon-head {
    margin-bottom: 20px;
  }
}

.c-single01__content h2:not([class*=c-]), .c-under-border-head {
  padding-bottom: 15px;
  margin-top: var(--mh--space--x2l);
  margin-bottom: 15px;
  font-size: var(--mh--font-size--x3l);
  line-height: var(--mh--line-height--sm);
  border-bottom: 1px solid var(--mh--color--grayscale-600);
}
@media (width >= 768px ) {
  .c-single01__content h2:not([class*=c-]), .c-under-border-head {
    padding-bottom: 20px;
    margin-bottom: 20px;
  }
}

/* list
================================================ */
.c-single01__content ul:not([class*=c-]), .c-single01__content ul:not([class*=c-]) > li > ul, .c-single01__content ol:not([class*=c-]) > li > ul, .c-disc-list, .c-disc-list > li > ul, .c-decimal-list > li > ul {
  --list-gap: 5px;
  --icon-gap: 10px;
  --icon-size: 6px;
  --icon-color: var(--mh--color--grayscale-900);
  --line-height: var(--mh--line-height--md);
  --font-size: var(--mh--font-size--md);
  display: grid;
  row-gap: var(--list-gap);
  padding: 0;
  margin: 0;
  font-size: var(--font-size);
  list-style: none;
}
.c-single01__content ul:not([class*=c-]) > li, .c-single01__content ul:not([class*=c-]) > li > ul > li, .c-single01__content ol:not([class*=c-]) > li > ul > li, .c-disc-list > li, .c-disc-list > li > ul > li, .c-decimal-list > li > ul > li {
  position: relative;
  padding-left: calc(var(--icon-size) + var(--icon-gap));
  line-height: var(--line-height);
}
.c-single01__content ul:not([class*=c-]) > li::before, .c-single01__content ul:not([class*=c-]) > li > ul > li::before, .c-single01__content ol:not([class*=c-]) > li > ul > li::before, .c-disc-list > li::before, .c-disc-list > li > ul > li::before, .c-decimal-list > li > ul > li::before {
  position: absolute;
  top: calc(var(--font-size) * var(--line-height) / 2 - var(--icon-size) / 2);
  left: 0;
  width: var(--icon-size);
  aspect-ratio: 1/1;
  content: "";
  background-color: var(--icon-color);
  border-radius: 50%;
}
@media (width >= 768px ) {
  .c-single01__content ul:not([class*=c-]), .c-single01__content ul:not([class*=c-]) > li > ul, .c-single01__content ol:not([class*=c-]) > li > ul, .c-disc-list, .c-disc-list > li > ul, .c-decimal-list > li > ul {
    --list-gap: 10px;
  }
}

.c-single01__content ul:not([class*=c-]) > li > ol, .c-single01__content ol:not([class*=c-]), .c-single01__content ol:not([class*=c-]) > li > ol, .c-disc-list > li > ol, .c-decimal-list, .c-decimal-list > li > ol {
  --list-type: counter(item);
  --list-gap: 5px;
  --padding-left: 1.5em;
  --number-color: var(--mh--color--grayscale-900);
  --line-height: var(--mh--line-height--md);
  --font-size: var(--mh--font-size--md);
  display: grid;
  row-gap: var(--list-gap);
  padding: 0;
  margin: 0;
  font-size: var(--font-size);
  list-style: none;
  counter-reset: item;
}
.c-single01__content ul:not([class*=c-]) > li > ol > li, .c-single01__content ol:not([class*=c-]) > li, .c-single01__content ol:not([class*=c-]) > li > ol > li, .c-disc-list > li > ol > li, .c-decimal-list > li, .c-decimal-list > li > ol > li {
  position: relative;
  padding-left: var(--padding-left);
  line-height: var(--line-height);
}
.c-single01__content ul:not([class*=c-]) > li > ol > li::before, .c-single01__content ol:not([class*=c-]) > li::before, .c-single01__content ol:not([class*=c-]) > li > ol > li::before, .c-disc-list > li > ol > li::before, .c-decimal-list > li::before, .c-decimal-list > li > ol > li::before {
  position: absolute;
  top: 6px;
  left: 0;
  width: calc(var(--padding-left) - 0.5em);
  line-height: var(--line-height);
  color: var(--number-color);
  content: var(--list-type);
  font-family: var(--mh--font-family--en);
  font-weight: 400;
  line-height: var(--mh--line-height--xs);
  letter-spacing: 0;
  counter-increment: item;
}
@media (width >= 768px ) {
  .c-single01__content ul:not([class*=c-]) > li > ol, .c-single01__content ol:not([class*=c-]), .c-single01__content ol:not([class*=c-]) > li > ol, .c-disc-list > li > ol, .c-decimal-list, .c-decimal-list > li > ol {
    --list-gap: 10px;
  }
}

/* .c-icon-head
================================================== */
/* .c-under-border-head
================================================== */
/* .c-ico
================================================== */
.c-ico {
  display: inline-block;
  vertical-align: baseline;
}
.c-ico svg {
  transition: all var(--mh--duration) var(--mh--easing);
}

/* .c-ico.is-arw01
================================================== */
.c-ico.is-arw01 {
  color: inherit;
}
.c-ico.is-arw01::after {
  display: inline-block;
  width: 14px;
  height: 14px;
  color: currentColor;
  content: "";
  background-color: currentcolor;
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14"><path d="M3.73224 14L2.9165 13.2232L9.45169 7L2.9165 0.776795L3.73224 0L11.0832 7L3.73224 14Z" fill="currentColor"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  transition: all var(--mh--duration) var(--mh--easing);
}

/* .c-ico.is-arw02
================================================== */
.c-ico.is-arw02 {
  margin-left: 5px;
  color: green;
}
.c-ico.is-arw02::after {
  display: inline-block;
  width: 6px;
  height: 10px;
  color: currentColor;
  content: "";
  background-color: currentcolor;
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 5.516 9.032"><path d="M0,8.032a1,1,0,0,1-.707-.293,1,1,0,0,1,0-1.414L2.1,3.516-.707.707a1,1,0,0,1,0-1.414,1,1,0,0,1,1.414,0L4.223,2.809a1,1,0,0,1,0,1.414L.707,7.739A1,1,0,0,1,0,8.032Z" transform="translate(1 1)"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  transition: all var(--mh--duration) var(--mh--easing);
}

/* .c-ico.is-arw03
================================================== */
.c-ico.is-arw03 {
  margin-left: 5px;
}
.c-ico.is-arw03::after {
  display: inline-block;
  width: 22px;
  height: 11px;
  color: currentColor;
  content: "";
  background-color: currentcolor;
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21.917 10.727"><path d="M14.812,9.212l3.014-2.848H0v-2H17.827L14.812,1.515,16.261,0l5.656,5.363-5.656,5.363Z"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  transition: all var(--mh--duration) var(--mh--easing);
  background: linear-gradient(to right, rgb(34, 193, 195) 0%, rgb(253, 187, 45) 100%);
}

/* .c-ico.is-blank01
================================================== */
.c-ico.is-blank01 {
  color: inherit;
}
.c-ico.is-blank01::after {
  display: inline-block;
  width: 12px;
  height: 12px;
  color: currentColor;
  content: "";
  background-color: currentcolor;
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 12" fill="none"><path d="M12 0V8.08696H3.91309V0H12ZM4.95656 7.04348H10.9566V1.04348H4.95656V7.04348Z" fill="currentColor"/><path d="M2.6087 4.06934V5.11281H1.04348V10.9559H7.04348V9.5476H8.08696V11.9994H0V4.06934H2.6087Z" fill="currentColor"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  transition: all var(--mh--duration) var(--mh--easing);
}

/* .c-ico.is-blank02
================================================== */
.c-ico.is-blank02 {
  margin-left: 5px;
  color: green;
}
.c-ico.is-blank02::after {
  display: inline-block;
  width: 14px;
  height: 14px;
  color: currentColor;
  content: "";
  background-color: currentcolor;
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13.435 13.434"><path d="M15333.549,2248.428a.56.56,0,0,1-.559-.562V2237.79a.559.559,0,0,1,.559-.558h4.479a.56.56,0,1,1,0,1.121h-3.917v8.955h8.954v-3.917a.561.561,0,1,1,1.121,0v4.475a.56.56,0,0,1-.562.562Zm5.2-5.762a.562.562,0,0,1,0-.793l5.762-5.762h-3.686a.558.558,0,1,1,0-1.117h5.038a.559.559,0,0,1,.559.559v5.038a.559.559,0,0,1-1.117,0V2236.9l-5.762,5.762a.568.568,0,0,1-.794,0Z" transform="translate(-15332.99 -2234.994)"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  transition: all var(--mh--duration) var(--mh--easing);
}

/* .c-ico.is-blank03
================================================== */
.c-ico.is-blank03 {
  margin-left: 5px;
}
.c-ico.is-blank03::after {
  background: linear-gradient(to right, rgb(34, 193, 195) 0%, rgb(253, 187, 45) 100%);
}

/* .c-ico.is-mail01
================================================== */
.c-ico.is-mail01 {
  color: inherit;
}
.c-ico.is-mail01::after {
  display: inline-block;
  width: 30px;
  height: 30px;
  color: currentColor;
  content: "";
  background-color: currentcolor;
  mask-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 30 30" xmlns="http://www.w3.org/2000/svg"><path d="M0.913197 24.5108C0.78969 24.5108 0.689453 24.4152 0.689453 24.2975V5.10294C0.689453 4.9852 0.78969 4.88965 0.913197 4.88965H29.0852C29.2088 4.88965 29.309 4.9852 29.309 5.10294V24.2975C29.309 24.4152 29.2088 24.5108 29.0852 24.5108H0.913197ZM1.13694 24.0842H28.8615V5.31623H1.13694V24.0842Z" fill="currentColor"/><path d="M29.2194 5.10232C29.2193 5.03766 29.1627 4.97864 29.0849 4.97864H0.912884C0.83509 4.97872 0.779069 5.0377 0.778956 5.10232V24.2973C0.77909 24.3619 0.835104 24.4209 0.912884 24.421H29.0849C29.1627 24.421 29.2193 24.3619 29.2194 24.2973V5.10232ZM28.9509 5.22658V24.173H1.04739V5.22658H28.9509ZM1.22616 23.9948H28.7722V5.40484H1.22616V23.9948ZM29.3981 24.2973C29.398 24.4679 29.2539 24.5998 29.0849 24.5998H0.912884C0.743954 24.5997 0.599739 24.4679 0.599609 24.2973V5.10232C0.599719 4.93173 0.743943 4.79988 0.912884 4.7998H29.0849C29.2539 4.7998 29.398 4.93168 29.3981 5.10232V24.2973Z" fill="currentColor"/><path d="M14.9991 17.8629C14.9419 17.8629 14.8882 17.8424 14.8461 17.8057L0.760073 5.25907C0.670575 5.17887 0.665205 5.04322 0.749333 4.95705C0.792292 4.91354 0.850465 4.88965 0.913113 4.88965C0.970392 4.88965 1.02409 4.91012 1.06615 4.94681L14.9991 17.3578L28.933 4.94681C28.9742 4.91012 29.0288 4.88965 29.0861 4.88965C29.1487 4.88965 29.2069 4.91354 29.2498 4.95705C29.334 5.04322 29.3295 5.17802 29.2391 5.25822L15.1531 17.8049C15.1119 17.8416 15.0573 17.862 15 17.862L14.9991 17.8629Z" fill="currentColor"/><path d="M29.0856 4.7998C29.1501 4.79983 29.212 4.81868 29.2644 4.8538L29.3127 4.89387L29.3133 4.89445L29.3523 4.94322C29.4295 5.06386 29.4107 5.22484 29.2982 5.32471L29.2976 5.32413L15.2119 17.8707C15.1635 17.9138 15.1027 17.9391 15.0384 17.9468L15.0343 17.9514H14.9988C14.9198 17.9514 14.8451 17.9232 14.7868 17.8724L14.7856 17.8719L0.699937 5.32529C0.573092 5.21161 0.564842 5.01732 0.684797 4.89445L0.73371 4.8538C0.786069 4.81869 0.847972 4.79982 0.912474 4.7998C0.971795 4.7998 1.02855 4.81621 1.07785 4.84568L1.12443 4.87935L1.12501 4.87993L14.9982 17.2372L28.8731 4.87993L28.9197 4.84568C28.9692 4.81595 29.0268 4.7998 29.0856 4.7998ZM29.0856 4.97864C29.0586 4.97864 29.0329 4.98563 29.0117 4.99839L28.9919 5.0129L14.9988 17.477L14.9388 17.4242L1.00681 5.01348L0.985843 4.99839C0.964103 4.98543 0.939014 4.97864 0.912474 4.97864C0.873111 4.97866 0.837967 4.99331 0.81232 5.01929C0.764518 5.06878 0.76734 5.14575 0.819307 5.19232L14.9044 17.7383L14.9248 17.7534C14.9449 17.7655 14.968 17.7716 14.9924 17.7726H14.9993C15.0354 17.7726 15.0689 17.7593 15.0931 17.7377L29.1788 5.19116L29.1963 5.17258C29.231 5.12649 29.2279 5.06294 29.1858 5.01929L29.1648 5.00187C29.1423 4.9867 29.1152 4.97867 29.0856 4.97864Z" fill="currentColor"/><path d="M0.912457 24.5106C0.849808 24.5106 0.791635 24.4867 0.748676 24.4432C0.664548 24.357 0.669023 24.2222 0.759416 24.142L10.0761 15.8433C10.1173 15.8066 10.1719 15.7861 10.2292 15.7861C10.2918 15.7861 10.35 15.81 10.3929 15.8535C10.4341 15.8953 10.4547 15.9491 10.4529 16.0062C10.4511 16.0634 10.4261 16.1163 10.3822 16.1547L1.0655 24.4526C1.02433 24.4893 0.969735 24.5098 0.912457 24.5098V24.5106Z" fill="currentColor"/><path d="M10.23 15.6963C10.3157 15.6963 10.3969 15.7295 10.4571 15.7904L10.4955 15.8385C10.5283 15.8891 10.5446 15.9477 10.5427 16.0087C10.5401 16.0905 10.5037 16.1656 10.4419 16.22L10.4425 16.2206L1.1258 24.5186C1.09034 24.5502 1.04762 24.5713 1.00235 24.5842V24.5993H0.913259C0.827351 24.5993 0.74584 24.5663 0.685582 24.5053H0.685C0.565444 24.3828 0.572112 24.1891 0.700722 24.075L10.0169 15.7764L10.064 15.7422C10.1136 15.7125 10.1711 15.6963 10.23 15.6963ZM10.23 15.8751C10.2029 15.8751 10.1773 15.8821 10.156 15.8949L10.1362 15.9094L0.81951 24.208C0.767407 24.2542 0.764616 24.3305 0.813105 24.3804L0.834067 24.3978C0.853579 24.4109 0.876638 24.418 0.901613 24.4199H0.913259C0.949217 24.4199 0.982256 24.4072 1.00643 24.3856L10.3231 16.0876L10.3237 16.0871L10.3406 16.0691C10.3553 16.0498 10.3631 16.027 10.3639 16.0029C10.3646 15.9782 10.3585 15.9552 10.3453 15.9349L10.3295 15.9158C10.3039 15.8899 10.2692 15.8752 10.23 15.8751Z" fill="currentColor"/><path d="M29.0845 24.5106C29.0272 24.5106 28.9735 24.4901 28.9315 24.4535L19.6148 16.1547C19.5709 16.1155 19.5458 16.0634 19.544 16.0062C19.5423 15.9491 19.5637 15.8953 19.604 15.8535C19.647 15.81 19.7051 15.7861 19.7678 15.7861C19.8251 15.7861 19.8788 15.8066 19.9208 15.8433L29.2375 24.142C29.3279 24.2222 29.3324 24.3579 29.2483 24.4432C29.2053 24.4867 29.1471 24.5106 29.0845 24.5106Z" fill="currentColor"/><path d="M19.7679 15.6963C19.8272 15.6963 19.884 15.7128 19.9333 15.7422L19.9799 15.7758L19.981 15.7764L29.2977 24.075H29.2972C29.4096 24.1747 29.4288 24.3361 29.3513 24.4565L29.3123 24.5053C29.2521 24.5663 29.1705 24.5993 29.0846 24.5993C29.0057 24.5993 28.9309 24.5711 28.8727 24.5204L28.8721 24.5198L19.5554 16.2206C19.4943 16.1659 19.4578 16.0913 19.4552 16.0087C19.4527 15.9266 19.4835 15.8499 19.5397 15.7915L19.5408 15.7904L19.5897 15.7503C19.642 15.7153 19.7036 15.6963 19.7679 15.6963ZM19.7679 15.8751C19.7287 15.8752 19.6939 15.8899 19.6683 15.9158L19.6678 15.9152C19.644 15.9402 19.633 15.971 19.634 16.0029C19.635 16.0344 19.6483 16.0639 19.6748 16.0876L28.9909 24.3856L29.0113 24.4007C29.033 24.4138 29.058 24.421 29.0846 24.4211C29.1239 24.4211 29.1591 24.4063 29.1848 24.3804L29.2005 24.3607C29.2271 24.3196 29.2256 24.2669 29.1958 24.2271L29.1784 24.208L19.8623 15.91L19.8419 15.8949C19.8201 15.8818 19.7946 15.8751 19.7679 15.8751Z" fill="currentColor"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  transition: all var(--mh--duration) var(--mh--easing);
}

/* .c-ico.is-map01
================================================== */
.c-ico.is-map01 {
  margin-right: 5px;
  color: violet;
}
.c-ico.is-map01::after {
  display: inline-block;
  width: 12px;
  height: 16px;
  color: currentColor;
  content: "";
  background-color: currentcolor;
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12.016 16.221"><path d="M6.008,0A6.026,6.026,0,0,0,0,6.041C0,10.188,4.166,14.8,5.684,16.1a.5.5,0,0,0,.647,0c1.519-1.3,5.684-5.909,5.684-10.057A6.026,6.026,0,0,0,6.008,0m0,9.864A3.633,3.633,0,1,1,9.619,6.227,3.622,3.622,0,0,1,6.008,9.86" transform="translate(0 0.004)"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  transition: all var(--mh--duration) var(--mh--easing);
}

/* .c-ico.is-search01
================================================== */
.c-ico.is-search01 {
  margin-right: 5px;
  color: red;
}
.c-ico.is-search01::after {
  display: inline-block;
  width: 19px;
  height: 19px;
  color: currentColor;
  content: "";
  background-color: currentcolor;
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.814 18.814"><path d="M12491.646,13519.027l-4.409-4.409,0,0a7.6,7.6,0,1,1,1.386-1.387l4.409,4.413a.979.979,0,0,1,0,1.381.975.975,0,0,1-1.384,0Zm-14.97-10.43a5.922,5.922,0,1,0,5.921-5.921A5.926,5.926,0,0,0,12476.677,13508.6Z" transform="translate(-12474.751 -13500.751)" stroke-width="0.5"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  transition: all var(--mh--duration) var(--mh--easing);
}

/* .c-ico.is-tel01
================================================== */
.c-ico.is-tel01 {
  margin-right: 5px;
  color: pink;
}
.c-ico.is-tel01::after {
  display: inline-block;
  width: 24px;
  height: 24px;
  color: currentColor;
  content: "";
  background-color: currentcolor;
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 23.5 23.5"><path d="M18.019,23.5c-2.313,0-7.045-.741-12.147-5.844C-.641,11.143-.085,5.26.093,4.147a3.661,3.661,0,0,1,1.045-2.1L2.405.778a2.668,2.668,0,0,1,3.767,0l3.19,3.191a2.669,2.669,0,0,1,0,3.768L7.81,9.29a18.573,18.573,0,0,0,2.752,3.674A18.585,18.585,0,0,0,14.217,15.7l1.554-1.557a2.671,2.671,0,0,1,3.77,0l3.181,3.184a2.669,2.669,0,0,1,0,3.767l-1.25,1.25A3.7,3.7,0,0,1,19.5,23.378a7.471,7.471,0,0,1-1.479.122M4.29,2.148a.516.516,0,0,0-.367.149L2.658,3.564a1.554,1.554,0,0,0-.441.9c-.1.594-.725,5.777,5.174,11.675,6.21,6.213,11.472,5.18,11.692,5.133a1.6,1.6,0,0,0,.873-.441L21.2,19.581a.522.522,0,0,0,0-.731l-3.182-3.184a.526.526,0,0,0-.733,0l-2.708,2.71-.708-.393a21.871,21.871,0,0,1-4.828-3.5A21.8,21.8,0,0,1,5.532,9.632l-.393-.708L7.845,6.218a.522.522,0,0,0,0-.731L4.655,2.3a.515.515,0,0,0-.365-.148" transform="translate(0 0)"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  transition: all var(--mh--duration) var(--mh--easing);
}

/* .c-ico.is-check01
================================================== */
.c-ico.is-check01 {
  color: inherit;
}
.c-ico.is-check01::after {
  display: inline-block;
  width: 15px;
  height: 15px;
  color: currentColor;
  content: "";
  background-color: currentcolor;
  mask-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 15 15" xmlns="http://www.w3.org/2000/svg"><path d="M12.8284 8.81075C12.6942 8.81075 12.5853 8.91966 12.5853 9.05381V13.2035H1.48612V2.10428H10.4631C10.5972 2.10428 10.7061 1.99537 10.7061 1.86122C10.7061 1.72707 10.5972 1.61816 10.4631 1.61816H1.24306C1.10891 1.61816 1 1.72707 1 1.86122V13.4465C1 13.5807 1.10891 13.6896 1.24306 13.6896H12.8284C12.9625 13.6896 13.0714 13.5807 13.0714 13.4465V9.05381C13.0714 8.91966 12.9625 8.81075 12.8284 8.81075Z" fill="currentColor" stroke="currentColor" stroke-width="0.6"/><path d="M13.9297 3.69648C13.8353 3.60801 13.6821 3.60801 13.5878 3.69648L6.73232 10.1248L4.19879 7.74913C4.10444 7.66065 3.95125 7.66065 3.8569 7.74913C3.76254 7.8376 3.76254 7.98125 3.8569 8.06972L6.56119 10.6055C6.60855 10.6499 6.67025 10.6718 6.73232 10.6718C6.79438 10.6718 6.85609 10.6496 6.90344 10.6055L13.9297 4.01707C14.024 3.9286 14.024 3.78496 13.9297 3.69648Z" fill="currentColor" stroke="currentColor" stroke-width="0.6"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  transition: all var(--mh--duration) var(--mh--easing);
}

/* .c-img01
================================================== */
.c-img01 {
  margin: var(--mh--space--md) 0;
}

/* .c-decimal-list
================================================== */
.c-decimal-list {
  margin-block: var(--mh--space--sm);
}
.c-decimal-list > li > ul {
  margin-top: var(--list-gap);
}
.c-decimal-list > li > ol {
  margin-top: var(--list-gap);
}

/* .c-disc-list
================================================== */
.c-disc-list {
  margin-block: var(--mh--space--sm);
}
.c-disc-list > li > ul {
  margin-top: var(--list-gap);
}
.c-disc-list > li > ol {
  margin-top: var(--list-gap);
}

/* .c-pager01
=================================== */
.c-pager01 {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  align-items: center;
  justify-content: center;
  margin-top: 30px;
  overflow: hidden;
  font-size: var(--mh--font-size--xl);
  text-align: center;
}
.c-pager01 li a,
.c-pager01 li span {
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 28px;
  line-height: 1;
  text-decoration: none;
}
.c-pager01 li.pages, .c-pager01 li.first, .c-pager01 li.last {
  display: none;
}
.c-pager01 li.current span {
  position: relative;
}
.c-pager01 li.current span::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0.8em;
  height: 1px;
  content: "";
  background-color: var(--mh--color--grayscale-900);
  translate: -50% 0;
}
.c-pager01 li.previous, .c-pager01 li.next {
  margin-top: 0;
}
.c-pager01 li.previous a, .c-pager01 li.next a {
  position: relative;
  width: 40px;
  height: 40px;
  font-size: 0;
  border: 1px solid var(--mh--color--grayscale-900);
  border-radius: 50%;
}
.c-pager01 li.previous a::after, .c-pager01 li.next a::after {
  display: inline-block;
  width: 14px;
  height: 14px;
  color: currentColor;
  content: "";
  background-color: currentcolor;
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14"><path d="M3.73224 14L2.9165 13.2232L9.45169 7L2.9165 0.776795L3.73224 0L11.0832 7L3.73224 14Z" fill="currentColor"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  transition: all var(--mh--duration) var(--mh--easing);
}
.c-pager01 li.previous a::after {
  rotate: 180deg;
}
.c-pager01 li.extend span {
  border: 0;
}
@media (width >= 768px ) {
  .c-pager01 li.previous {
    margin-right: 15px;
  }
  .c-pager01 li.next {
    margin-left: 15px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-pager01 {
    margin-top: 40px;
  }
  .c-pager01 li.page a {
    position: relative;
  }
  .c-pager01 li.page a::before {
    position: absolute;
    bottom: 0;
    left: 8px;
    width: 16px;
    height: 1px;
    content: "";
    background-color: currentcolor;
    transform-origin: left;
    scale: 0 1;
    transition: scale var(--mh--duration) var(--mh--easing);
  }
  .c-pager01 li.page a:hover::before {
    scale: 1 1;
  }
  .c-pager01 li.previous a, .c-pager01 li.next a {
    transition: background-color var(--mh--duration) var(--mh--easing);
  }
  .c-pager01 li.previous a:hover, .c-pager01 li.next a:hover {
    background-color: var(--mh--color--grayscale-300);
  }
}

/*  .c-pager02
================================================== */
.c-pager02 {
  display: grid;
  grid-template-areas: "all all" "prev next";
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  padding-inline: 28px;
  padding-top: var(--mh--space--x3l);
  margin-top: var(--mh--space--x2l);
  overflow: hidden;
  font-size: var(--mh--font-size--sm);
  font-weight: 500;
  color: var(--mh--color--grayscale-900);
  border-top: 1px solid var(--mh--color--grayscale-600);
}
.c-pager02__prev a, .c-pager02__next a {
  display: flex;
  gap: 5px;
  align-items: center;
  width: fit-content;
}
.c-pager02__prev a::after, .c-pager02__next a::after {
  display: inline-block;
  width: 10px;
  height: 10px;
  color: currentColor;
  content: "";
  background-color: currentcolor;
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14"><path d="M3.73224 14L2.9165 13.2232L9.45169 7L2.9165 0.776795L3.73224 0L11.0832 7L3.73224 14Z" fill="currentColor"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  transition: all var(--mh--duration) var(--mh--easing);
}
.c-pager02__prev {
  grid-area: prev;
}
.c-pager02__prev a {
  flex-direction: row-reverse;
  margin-right: auto;
}
.c-pager02__prev a::after {
  scale: -1 1;
}
.c-pager02__next {
  grid-area: next;
}
.c-pager02__next a {
  margin-left: auto;
}
.c-pager02__all {
  grid-area: all;
}
.c-pager02__all a {
  display: grid;
  place-content: center;
  width: 100%;
  padding: 10px 20px;
  border: 1px solid var(--mh--color--grayscale-900);
  border-radius: 100vmax;
}
@media (width >= 768px ) {
  .c-pager02 {
    grid-template-areas: "prev all next";
    grid-template-columns: auto 280px auto;
    gap: 30px;
    align-items: center;
  }
  .c-pager02__prev a {
    margin-inline: auto 0;
  }
  .c-pager02__next a {
    margin-inline: 0 auto;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-pager02__prev a, .c-pager02__next a {
    position: relative;
  }
  .c-pager02__prev a::before, .c-pager02__next a::before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    content: "";
    background-color: currentcolor;
    transform-origin: left;
    scale: 0 1;
    transition: scale var(--mh--duration) var(--mh--easing);
  }
  .c-pager02__prev a:hover::before, .c-pager02__next a:hover::before {
    scale: 1 1;
  }
  .c-pager02__all a {
    transition: background-color var(--mh--duration) var(--mh--easing);
  }
  .c-pager02__all a:hover {
    background-color: var(--mh--color--grayscale-300);
  }
}

/*  .c-set01.is-reverse
================================================== */
@media (width >= 768px ) {
  :root .c-set01.is-reverse {
    flex-direction: row;
  }
}

/*  .c-set01
================================================== */
:root .c-set01 {
  flex-direction: column-reverse;
  gap: var(--mh--space--sm);
  margin-block: var(--mh--space--x2l);
}
:root .c-set01__area-txt > *:first-child {
  margin-top: 0 !important;
}
@media (width >= 768px ) {
  :root .c-set01 {
    flex-direction: row-reverse;
  }
  :root .c-set01 .c-set01__img {
    flex: 0 0 34.2%;
  }
}

/* .c-single01
================================================== */
.c-single01__header {
  display: grid;
  row-gap: 15px;
}
.c-single01__meta {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  color: var(--mh--color--grayscale-700);
}
.c-single01__tag {
  position: relative;
  padding-left: 12px;
  font-size: var(--mh--font-size--sm);
  line-height: var(--mh--line-height--sm);
}
.c-single01__tag::before {
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  width: 1px;
  height: 14px;
  content: "";
  background-color: var(--mh--color--grayscale-600);
  translate: 0 -50%;
}
.c-single01__head {
  font-size: var(--mh--font-size--x4l);
  line-height: var(--mh--line-height--sm);
}
.c-single01__content {
  overflow: hidden;
}
.c-single01__content > *:first-child {
  margin-top: var(--mh--space--x2l) !important;
}
.c-single01__content > *:first-child:is(figure) {
  margin-top: var(--mh--space--md) !important;
}
.c-single01__content > *:last-child {
  margin-bottom: 0 !important;
}
.c-single01__content p {
  margin: var(--mh--space--sm) 0;
}
.c-single01__content p a {
  position: relative;
  padding-right: 15px;
  text-decoration: underline;
}
.c-single01__content p a::after {
  display: inline-block;
  width: 10px;
  height: 10px;
  color: currentColor;
  content: "";
  background-color: currentcolor;
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14"><path d="M3.73224 14L2.9165 13.2232L9.45169 7L2.9165 0.776795L3.73224 0L11.0832 7L3.73224 14Z" fill="currentColor"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  transition: all var(--mh--duration) var(--mh--easing);
  position: absolute;
  top: 7px;
  right: 0;
  margin-right: 2px;
}
.c-single01__content p a[target=_blank]::after {
  display: inline-block;
  width: 10px;
  height: 10px;
  color: currentColor;
  content: "";
  background-color: currentcolor;
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 12" fill="none"><path d="M12 0V8.08696H3.91309V0H12ZM4.95656 7.04348H10.9566V1.04348H4.95656V7.04348Z" fill="currentColor"/><path d="M2.6087 4.06934V5.11281H1.04348V10.9559H7.04348V9.5476H8.08696V11.9994H0V4.06934H2.6087Z" fill="currentColor"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  transition: all var(--mh--duration) var(--mh--easing);
}
.c-single01__content h1:not([class*=c-]),
.c-single01__content h2:not([class*=c-]),
.c-single01__content h3:not([class*=c-]) {
  clear: both;
  margin-top: 35px;
  margin-bottom: 15px;
  line-height: var(--mh--line-height--sm);
}
.c-single01__content h4:not([class*=c-]),
.c-single01__content h5:not([class*=c-]),
.c-single01__content h6:not([class*=c-]) {
  clear: both;
  margin: var(--mh--space--lg) 0 var(--mh--space--md);
  font-size: var(--mh--font-size--md);
  line-height: var(--mh--line-height--sm);
}
.c-single01__content > ul:not([class*=c-]), .c-single01__content > ol:not([class*=c-]) {
  margin-block: var(--mh--space--sm);
}
.c-single01__content ul:not([class*=c-]) > li > ul {
  margin-block-end: 0;
  margin-top: var(--list-gap);
}
.c-single01__content ul:not([class*=c-]) > li > ol {
  margin-block-end: 0;
  margin-top: var(--list-gap);
}
.c-single01__content ol:not([class*=c-]) > li > ul {
  margin-block-end: 0;
  margin-top: var(--list-gap);
}
.c-single01__content ol:not([class*=c-]) > li > ol {
  margin-block-end: 0;
  margin-top: var(--list-gap);
}
.c-single01__content blockquote {
  padding: 20px;
  margin: var(--mh--space--md) 0;
  border: 1px solid var(--mh--color--primary-700);
}
.c-single01__content blockquote > *:first-child {
  margin-top: 0;
}
.c-single01__content figure {
  margin: var(--mh--space--md) 0;
}
.c-single01__content *:not(.c-link01) a {
  color: var(--mh--color--primary-700);
  text-decoration: underline !important;
}
@media (hover: hover) and (pointer: fine) {
  .c-single01__content *:not(.c-link01) a:hover {
    text-decoration: none !important;
  }
}
@media (width >= 768px ) {
  .c-single01__header {
    row-gap: 20px;
  }
  .c-single01__content h1:not([class*=c-]),
  .c-single01__content h2:not([class*=c-]),
  .c-single01__content h3:not([class*=c-]) {
    margin-top: 70px;
    margin-bottom: 20px;
  }
}

/* .c-table01
================================================== */
.c-table01 table {
  width: 100%;
  border-top: 1px solid var(--mh--color--grayscale-600);
  border-bottom: 1px solid var(--mh--color--grayscale-600);
}
.c-table01 th {
  font-size: var(--mh--font-size--md);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  padding: 14px 0 0;
  text-align: left;
  border-top: 1px solid var(--mh--color--grayscale-600);
}
.c-table01 tr:first-child th {
  border-top: none;
}
.c-table01 td {
  font-size: var(--mh--font-size--md);
  font-family: var(--mh--font-family--base);
  font-weight: 400;
  line-height: var(--mh--line-height--md);
  letter-spacing: var(--mh--letter-spacing--md);
  padding: 5px 0 15px;
  text-align: left;
}
@media (width < 768px) {
  .c-table01 table,
  .c-table01 tr,
  .c-table01 th,
  .c-table01 td {
    display: block;
  }
}
@media (width >= 768px ) {
  .c-table01 th {
    width: 220px;
    padding: 19px 0 20px;
  }
  .c-table01 td {
    padding: 19px 0 20px;
    border-top: 1px solid var(--mh--color--grayscale-600);
  }
}

/* .l-breadcrumb
================================================ */
/* .l-breadcrumb-list
================================================ */
.l-breadcrumb-list {
  display: flex;
  flex-wrap: wrap;
}
.l-breadcrumb-list__item {
  font-size: var(--mh--font-size--sm);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  display: inline-block;
  vertical-align: top;
}
.l-breadcrumb-list__item + .l-breadcrumb-list__item {
  position: relative;
  padding-left: 20px;
  margin-left: 10px;
  color: var(--mh--color--grayscale-700);
}
.l-breadcrumb-list__item + .l-breadcrumb-list__item::before {
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  width: 10px;
  height: 1px;
  content: "";
  background-color: var(--mh--color--grayscale-600);
}
.l-breadcrumb-list__item-txt:where(a) {
  position: relative;
  display: inline-block;
}
.l-breadcrumb-list__item-txt:where(a)::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  content: "";
  background: currentcolor;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform var(--mh--duration) var(--mh--easing);
}
.l-breadcrumb-list__item-txt:where(a).is-active::after {
  transform: scaleX(1);
}
@media (hover: hover) and (pointer: fine) {
  .l-breadcrumb-list__item-txt:where(a):hover::after {
    transform: scaleX(1);
  }
}

/* .l-footer
================================================ */
.l-footer {
  padding: 0 0 60px;
  margin: 60px 0 0;
}
.l-footer.is-home {
  margin-top: 50px;
}
@media (width >= 768px ) {
  .l-footer {
    margin-top: 120px;
  }
  .l-footer.is-home {
    margin-top: 100px;
  }
  .l-footer__grid {
    display: grid;
    grid-template-rows: repeat(2, auto);
    grid-template-columns: repeat(2, 1fr);
    gap: 80px 0;
  }
  .l-footer__grid-item:nth-child(1) {
    grid-area: 1/1/2/2;
  }
  .l-footer__grid-item:nth-child(2) {
    grid-area: 1/2/2/3;
  }
  .l-footer__grid-item:nth-child(3) {
    grid-area: 2/2/3/3;
  }
  .l-footer__grid-item:nth-child(4) {
    display: flex;
    flex-direction: column;
    grid-area: 2/1/3/2;
    align-items: flex-start;
    justify-content: flex-end;
  }
}

/* .l-footer-outro
================================================ */
.l-footer-outro {
  padding: 29px 0 130px;
  border-top: 1px solid var(--mh--color--grayscale-600);
}
.l-footer-outro__txt01 {
  font-size: var(--mh--font-size--x6l);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  width: calc(100% + var(--mh--contents--padding--side));
  margin: 0 0 15px;
}
.l-footer-outro__txt02 {
  font-size: var(--mh--font-size--md);
  font-family: var(--mh--font-family--en);
  font-weight: 400;
  line-height: var(--mh--line-height--xs);
  letter-spacing: 0;
  color: var(--mh--color--grayscale-700);
}
@media (width >= 768px ) {
  .l-footer-outro {
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 50px 0 161px;
  }
  .l-footer-outro__txt01 {
    margin-bottom: 0;
  }
  .l-footer-outro__txt02 {
    text-align: right;
  }
}

/* .l_footer-contact
================================================ */
.l_footer-contact {
  position: relative;
  display: block;
  min-height: 223px;
  padding: 20px;
  margin: 0 0 60px;
  background-color: var(--mh--color--grayscale-200);
}
.l_footer-contact__head {
  margin: 0 0 10px;
}
.l_footer-contact__ico {
  position: absolute;
  right: 20px;
  bottom: 20px;
}
.l_footer-contact__ico::after {
  display: block !important;
}
@media (width >= 768px ) {
  .l_footer-contact {
    min-height: 302px;
    padding: 50px;
    margin-bottom: 50px;
  }
  .l_footer-contact__head {
    margin-bottom: 15px;
  }
  .l_footer-contact__txt {
    font-size: var(--mh--font-size--xl);
  }
  .l_footer-contact__ico {
    right: 50px;
    bottom: 50px;
  }
  .l_footer-contact__ico::after {
    width: 20px !important;
    height: 20px !important;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l_footer-contact {
    transition: background-color var(--mh--duration) var(--mh--easing);
  }
  .l_footer-contact:hover {
    background-color: var(--mh--color--grayscale-300);
  }
}

/* .l-footer-logo
================================================ */
.l-footer-logo {
  margin: 0 0 19px;
}
.l-footer-logo__link svg {
  display: block;
  width: 98px;
  height: 30px;
}
@media (width >= 768px ) {
  .l-footer-logo {
    margin-bottom: 0;
  }
  .l-footer-logo__link svg {
    width: 151px;
    height: 46px;
  }
}

/* .l-footer-nav
================================================ */
.l-footer-nav {
  width: 227px;
  margin: 0 0 30px;
}
.l-footer-nav__list {
  column-gap: 0;
  column-count: 2;
}
.l-footer-nav__item {
  display: block;
}
.l-footer-nav__item-txt {
  font-size: var(--mh--font-size--md);
  font-family: var(--mh--font-family--en);
  font-weight: 400;
  line-height: var(--mh--line-height--xs);
  letter-spacing: 0;
  display: block;
  padding: 10px 0;
  text-transform: uppercase;
}
@media (width >= 768px ) {
  .l-footer-nav {
    width: fit-content;
    margin: 0 0 0 auto;
  }
  .l-footer-nav__list {
    display: grid;
    grid-template-rows: repeat(3, auto);
    grid-template-columns: repeat(2, auto);
    gap: 15px 30px;
    column-count: 1;
  }
  .l-footer-nav__item {
    width: fit-content;
  }
  .l-footer-nav__item:nth-child(1) {
    grid-area: 1/1/2/2;
  }
  .l-footer-nav__item:nth-child(2) {
    grid-area: 2/1/3/2;
  }
  .l-footer-nav__item:nth-child(3) {
    grid-area: 3/1/4/2;
  }
  .l-footer-nav__item:nth-child(4) {
    grid-area: 1/2/2/3;
  }
  .l-footer-nav__item:nth-child(5) {
    grid-area: 2/2/3/3;
  }
  .l-footer-nav__item:nth-child(6) {
    grid-area: 3/2/4/3;
  }
  .l-footer-nav__item-txt {
    position: relative;
    display: inline-block;
    display: block;
    padding: 0;
    font-size: var(--mh--font-size--md);
  }
  .l-footer-nav__item-txt::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    content: "";
    background: currentcolor;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform var(--mh--duration) var(--mh--easing);
  }
  .l-footer-nav__item-txt.is-active::after {
    transform: scaleX(1);
  }
}
@media (width >= 768px ) and (hover: hover) and (pointer: fine) {
  .l-footer-nav__item-txt:hover::after {
    transform: scaleX(1);
  }
}

/* .l-footer-ec
================================================ */
.l-footer-ec {
  margin: 0 0 22px;
}
.l-footer-ec__head {
  font-size: var(--mh--font-size--lg);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  padding: 15px 0;
  margin: 0 0 10px;
  background: var(--mh--gradient02);
}
.l-footer-ec__item {
  font-size: var(--mh--font-size--sm);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
}
.l-footer-ec__link {
  display: inline-block;
  padding: 10px 0;
}
.l-footer-ec__ico {
  margin-left: 5px;
  transform: translateY(-2px);
}
.l-footer-ec__ico::after {
  width: 9px !important;
  height: 9px !important;
}
@media (width >= 768px ) {
  .l-footer-ec {
    display: grid;
    grid-template-columns: 230px 1fr;
    gap: 0 30px;
    width: 624px;
    margin: 0 0 0 auto;
  }
  .l-footer-ec__head {
    padding: 30px 10px;
    text-align: center;
    background: var(--mh--gradient01);
  }
  .l-footer-ec__list {
    display: grid;
    grid-template-rows: repeat(3, auto);
    grid-template-columns: repeat(2, auto);
    gap: 20px 40px;
    padding: 30px 0;
  }
  .l-footer-ec__link {
    position: relative;
    display: inline-block;
    padding: 0;
  }
  .l-footer-ec__link::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    content: "";
    background: currentcolor;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform var(--mh--duration) var(--mh--easing);
  }
  .l-footer-ec__link.is-active::after {
    transform: scaleX(1);
  }
}
@media (width >= 768px ) and (hover: hover) and (pointer: fine) {
  .l-footer-ec__link:hover::after {
    transform: scaleX(1);
  }
}
@media (width >= 768px ) {
  .l-footer-ec__ico {
    display: inline-block;
  }
  .l-footer-ec__ico::after {
    display: block !important;
  }
}

/* .l-footer-sns
================================================ */
.l-footer-sns {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: center;
  margin: 0 0 32px;
}
.l-footer-sns__link {
  display: grid !important;
  place-items: center;
  width: 45px;
  height: 45px;
}
.l-footer-sns__link-ico {
  display: block;
}
@media (width >= 768px ) {
  .l-footer-sns {
    margin: 0 0 22px -8px;
  }
}

/* .l-footer-copyright
================================================ */
.l-footer-copyright {
  line-height: var(--mh--line-height--xs);
  text-align: center;
}
.l-footer-copyright__txt {
  font-size: var(--mh--font-size--sm);
  font-family: var(--mh--font-family--en);
  font-weight: 400;
  line-height: var(--mh--line-height--xs);
  letter-spacing: 0;
  color: var(--mh--color--grayscale-700);
}

/* .l-header
================================================ */
.l-header {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  min-width: 320px;
  transition: transform var(--mh--duration) var(--mh--easing);
}
.l-header.is-out-of-view {
  position: fixed;
  opacity: 0;
  transform: translateY(-100%);
}
.l-header.is-fixed {
  position: fixed;
  opacity: 1;
  transform: translateY(0);
}
.l-header:has(.l-nav.is-open) {
  position: fixed;
}
.l-header__inner {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  height: var(--mh--header--height);
  padding-top: 20px;
}
.l-header__inner::after {
  position: absolute;
  bottom: 0;
  left: var(--mh--contents--padding--side);
  display: block;
  width: calc(100% - var(--mh--contents--padding--side) * 2);
  height: 1px;
  content: "";
  background: var(--mh--color--grayscale-600);
  transition: opacity var(--mh--duration) var(--mh--easing);
}
.l-header.is-out-of-view .l-header__inner {
  height: auto;
}
.l-header.is-out-of-view .l-header__inner::after {
  opacity: 0;
}
@media (width >= 768px ) and (hover: none) {
  .l-header {
    left: 0 !important;
  }
}
@media (width >= 768px ) {
  .l-header__inner {
    padding: 40px 0 0;
  }
  .l-header.is-out-of-view .l-header__inner {
    padding-top: 30px;
  }
}

/* .l-header-logo
================================================== */
.l-header-logo {
  z-index: 10;
  width: 97px;
}
.l-header-logo__link {
  display: block;
}
.l-header-logo__link svg {
  display: block;
  width: 100%;
  aspect-ratio: 151/46;
}
@media (width >= 768px ) {
  .l-header-logo {
    width: 151px;
  }
}

/* .l-nav-btn
================================================== */
.l-nav-btn {
  position: relative;
  z-index: 10;
  width: 70px;
  height: 36px;
  cursor: pointer;
  border: 1px solid var(--mh--color--grayscale-900);
  border-radius: calc(infinity * 1px);
}
.l-nav-btn__line {
  position: absolute;
  left: 21px;
  width: 26px;
  height: 1px;
  content: "";
  border-bottom: 1px solid var(--mh--color--grayscale-900);
  transition: transform var(--mh--duration) var(--mh--easing);
}
.l-nav-btn__line:nth-child(1) {
  top: 13px;
}
.l-nav-btn__line:nth-child(2) {
  top: 20px;
  width: 18px;
}
.l-nav-btn.is-open .l-nav-btn__line:nth-child(1) {
  top: 17px;
  transform: rotate(-30deg);
}
.l-nav-btn.is-open .l-nav-btn__line:nth-child(2) {
  top: 17px;
  width: 26px;
  transform: rotate(30deg);
}

/* .l-nav
================================================ */
.l-nav {
  overscroll-behavior-y: none;
  -webkit-overflow-scrolling: touch;
}
.l-nav__inner {
  padding: 50px 0 0;
}
.l-nav__contact-btn {
  font-size: var(--mh--font-size--md);
  font-family: var(--mh--font-family--en);
  font-weight: 400;
  line-height: var(--mh--line-height--xs);
  letter-spacing: 0;
  display: block;
  padding: 18px 29px 17px;
  text-align: center;
  text-transform: uppercase;
}
@media (width < 768px) {
  .l-nav {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    min-width: 320px;
    height: 100dvh;
    padding: var(--mh--header--height) var(--mh--contents--padding--side) calc(50px + env(safe-area-inset-bottom));
    overflow: auto;
    pointer-events: none;
    background: var(--mh--color--grayscale-100) url("../img/common/bg_nav.png") no-repeat right 20px top 176px/142px 125px;
    opacity: 0;
  }
  .l-nav::-webkit-scrollbar {
    display: none;
  }
  .l-nav.is-initialized {
    transition: opacity var(--mh--duration) var(--mh--easing);
  }
  .l-nav.is-open {
    pointer-events: auto;
    opacity: 1;
  }
}
@media (width >= 768px ) {
  .l-nav {
    width: 331px;
  }
  .l-nav__inner {
    display: grid;
    grid-template-columns: 206px 1fr;
    padding: 0;
  }
  .l-nav__contact-btn {
    padding: 14px 14px 12px;
  }
}

/* .l-nav-list
================================================== */
.l-nav-list {
  column-gap: 0;
  column-count: 2;
  margin: 0 0 50px;
}
.l-nav-list__item {
  display: inline-block;
  width: 100%;
}
.l-nav-list__item-txt {
  font-size: var(--mh--font-size--xl);
  font-family: var(--mh--font-family--en);
  font-weight: 400;
  line-height: var(--mh--line-height--xs);
  letter-spacing: 0;
  display: block;
  padding: 10px 0;
  text-transform: uppercase;
}
@media (width >= 768px ) {
  .l-nav-list {
    margin: -7px 0 0;
  }
  .l-nav-list__item-txt {
    position: relative;
    display: inline-block;
    display: inline-block;
    padding: 0;
    margin: 0 0 0 2px;
    font-size: var(--mh--font-size--md);
  }
  .l-nav-list__item-txt::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    content: "";
    background: currentcolor;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform var(--mh--duration) var(--mh--easing);
  }
  .l-nav-list__item-txt.is-active::after {
    transform: scaleX(1);
  }
}
@media (width >= 768px ) and (hover: hover) and (pointer: fine) {
  .l-nav-list__item-txt:hover::after {
    transform: scaleX(1);
  }
}

/* .l-main-img HOME
================================================ */
.l-main-img {
  padding: 0 0 20px;
  background: url("../img/home/bg_main_img.png") no-repeat right 10px top 177px/145px 125px;
}
.l-main-img__txt {
  padding-top: 31px;
  padding-bottom: 135px;
}
.l-main-img__copy01 {
  font-size: var(--mh--font-size--x8l);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  margin: 0 0 15px;
  opacity: 0;
}
.l-main-img__copy02 {
  font-family: var(--mh--font-family--en);
  font-weight: 400;
  line-height: var(--mh--line-height--xs);
  letter-spacing: 0;
  color: var(--mh--color--grayscale-700);
  opacity: 0;
}
.l-main-img__splide {
  opacity: 0;
}
.l-main-img__slide-img {
  display: block;
  height: auto;
}
.l-main-img__slide[aria-label^="1 of "] .l-main-img__slide-img {
  width: clamp(300px, 227.1844660194px + 19.4174757282vw, 600px);
}
.l-main-img__slide[aria-label^="2 of "] .l-main-img__slide-img {
  width: clamp(334px, 252.6893203883px + 21.6828478964vw, 669px);
}
.l-main-img__slide[aria-label^="3 of "] .l-main-img__slide-img {
  width: clamp(150px, 113.5922330097px + 9.7087378641vw, 300px);
}
.l-main-img__slide[aria-label^="4 of "] .l-main-img__slide-img {
  width: clamp(167px, 126.2233009709px + 10.8737864078vw, 335px);
}
.l-main-img__slide[aria-label^="5 of "] .l-main-img__slide-img {
  width: clamp(133px, 100.4757281553px + 8.6731391586vw, 267px);
}
.l-main-img__slide[aria-label^="6 of "] .l-main-img__slide-img {
  width: clamp(376px, 284.4951456311px + 24.4012944984vw, 753px);
}
.l-main-img__slide[aria-label^="7 of "] .l-main-img__slide-img {
  width: clamp(200px, 151.4563106796px + 12.9449838188vw, 400px);
}
.l-main-img__slide[aria-label^="8 of "] .l-main-img__slide-img {
  width: clamp(200px, 151.4563106796px + 12.9449838188vw, 400px);
}
.l-main-img__slide[aria-label^="9 of "] .l-main-img__slide-img {
  width: clamp(167px, 126.2233009709px + 10.8737864078vw, 335px);
}
@media (width >= 768px ) {
  .l-main-img {
    padding-bottom: 50px;
    background-position: left clamp(360px, 284px + 5.9375vw, 398px) top 50px;
    background-size: 289px 250px;
  }
  .l-main-img__txt {
    display: flex;
    justify-content: space-between;
    padding-top: 50px;
    padding-bottom: 115px;
    padding-bottom: clamp(115px, 17px + 7.65625vw, 164px);
  }
  .l-main-img__copy01 {
    margin-bottom: 0;
  }
  .l-main-img__slide[aria-label^="1 of "] .l-main-img__slide-img {
    width: clamp(420px, 60px + 28.125vw, 600px);
  }
  .l-main-img__slide[aria-label^="2 of "] .l-main-img__slide-img {
    width: clamp(468px, 66px + 31.40625vw, 669px);
  }
  .l-main-img__slide[aria-label^="3 of "] .l-main-img__slide-img {
    width: clamp(210px, 30px + 14.0625vw, 300px);
  }
  .l-main-img__slide[aria-label^="4 of "] .l-main-img__slide-img {
    width: clamp(235px, 35px + 15.625vw, 335px);
  }
  .l-main-img__slide[aria-label^="5 of "] .l-main-img__slide-img {
    width: clamp(187px, 27px + 12.5vw, 267px);
  }
  .l-main-img__slide[aria-label^="6 of "] .l-main-img__slide-img {
    width: clamp(527px, 75px + 35.3125vw, 753px);
  }
  .l-main-img__slide[aria-label^="7 of "] .l-main-img__slide-img {
    width: clamp(280px, 40px + 18.75vw, 400px);
  }
  .l-main-img__slide[aria-label^="8 of "] .l-main-img__slide-img {
    width: clamp(280px, 40px + 18.75vw, 400px);
  }
  .l-main-img__slide[aria-label^="9 of "] .l-main-img__slide-img {
    width: clamp(235px, 35px + 15.625vw, 335px);
  }
}

/* .l-sub-img
================================================ */
.l-sub-img {
  margin: 0 0 60px;
}
.l-sub-img__inner {
  padding-top: 31px;
  background: url("../img/common/bg_sub_img_sp.png") no-repeat right 25px top 25px/140px 120px;
}
.l-sub-img__head {
  font-size: var(--mh--font-size--x8l);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  margin: 0 0 15px;
}
.l-sub-img__img-wrap {
  width: 100%;
  aspect-ratio: 335/225;
  margin: 60px 0 0;
}
.l-sub-img__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (width >= 768px ) {
  .l-sub-img {
    margin-bottom: 120px;
  }
  .l-sub-img__inner {
    padding-top: 50px;
    background: url("../img/common/bg_sub_img_pc.png") no-repeat right 90px top 144px/701px 140px;
  }
  .l-sub-img__main {
    display: flex;
    justify-content: space-between;
  }
  .l-sub-img__head {
    margin-bottom: 0;
  }
  .l-sub-img__img-wrap {
    aspect-ratio: 1820/450;
    margin-top: 120px;
  }
}

/* .l-sidebar
================================================== */
.l-sidebar {
  display: grid;
  grid-template-rows: min-content min-content;
  gap: 40px;
}

.l-sidebar-sec__head {
  padding-bottom: 15px;
  border-bottom: 1px solid var(--mh--color--grayscale-500);
  margin-bottom: 15px;
}
.l-sidebar-sec__list {
  display: grid;
  gap: 16px;
  padding-left: 15px;
}
.l-sidebar-sec__item.is-curr .l-sidebar-sec__item-link {
  color: var(--mh--color--grayscale-900);
}
.l-sidebar-sec__item.is-curr .l-sidebar-sec__item-link::after {
  transform: scaleX(1);
}
.l-sidebar-sec__item-link {
  color: var(--mh--color--grayscale-700);
  position: relative;
}
.l-sidebar-sec__item-link::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  content: "";
  background: var(--mh--color--grayscale-900);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform var(--mh--duration) var(--mh--easing);
}
.l-sidebar-sec__select {
  position: relative;
  max-width: 260px;
}
.l-sidebar-sec__select select {
  border-color: var(--mh--color--grayscale-500);
  padding: 12px 19px;
}
.l-sidebar-sec__select::after {
  position: absolute;
  top: 22px;
  right: 12px;
  width: 9px;
  height: 9px;
  content: "";
  border-right: 1px solid var(--mh--color--grayscale-900);
  border-bottom: 1px solid var(--mh--color--grayscale-900);
  transform: rotate(45deg);
}
@media (hover: hover) and (pointer: fine) {
  .l-sidebar-sec .l-sidebar-sec__item-link:hover::after {
    transform: scaleX(1);
  }
}

.js-c-anime-elem[data-anime=fadein-up] {
  opacity: 0;
  transform: translateY(30px);
  transition: transform calc(var(--mh--duration) * 2) var(--mh--easing), opacity calc(var(--mh--duration) * 2) var(--mh--easing);
}
.js-c-anime-elem[data-anime=fadein-up].is-animated {
  opacity: 1;
  transform: translateY(0);
}

.js-c-anime-elem[data-anime=fadein-left] {
  opacity: 0;
  transform: translateX(-30px);
  transition: transform var(--mh--duration) var(--mh--easing), opacity var(--mh--duration) var(--mh--easing);
}
.js-c-anime-elem[data-anime=fadein-left].is-animated {
  opacity: 1;
  transform: translateX(0);
}

.js-c-anime-elem[data-anime=fadein-right] {
  opacity: 0;
  transform: translateX(30px);
  transition: transform var(--mh--duration) var(--mh--easing), opacity var(--mh--duration) var(--mh--easing);
}
.js-c-anime-elem[data-anime=fadein-right].is-animated {
  opacity: 1;
  transform: translateX(0);
}

.js-c-anime-elem[data-anime=scalein] {
  opacity: 0;
  transform: scale(1.1);
  transition: transform calc(var(--mh--duration) * 2) var(--mh--easing), opacity calc(var(--mh--duration) * 2) var(--mh--easing);
}
.js-c-anime-elem[data-anime=scalein].is-animated {
  opacity: 1;
  transform: scale(1);
}

.js-c-anime-elem-group-item[data-anime=scalein] {
  opacity: 0;
  transform: scale(1.1);
  transition: transform calc(var(--mh--duration) * 2) var(--mh--easing), opacity calc(var(--mh--duration) * 2) var(--mh--easing);
}
.js-c-anime-elem-group-item[data-anime=scalein].is-animated {
  opacity: 1;
  transform: scale(1);
}

.js-c-anime-elem[data-anime-delay="0.1"] {
  transition-delay: 0.1s;
}
.js-c-anime-elem[data-anime-delay="0.2"] {
  transition-delay: 0.2s;
}
.js-c-anime-elem[data-anime-delay="0.3"] {
  transition-delay: 0.3s;
}
.js-c-anime-elem[data-anime-delay="0.4"] {
  transition-delay: 0.4s;
}
.js-c-anime-elem[data-anime-delay="0.5"] {
  transition-delay: 0.5s;
}
.js-c-anime-elem[data-anime-delay="0.6"] {
  transition-delay: 0.6s;
}
.js-c-anime-elem[data-anime-delay="0.7"] {
  transition-delay: 0.7s;
}
.js-c-anime-elem[data-anime-delay="0.8"] {
  transition-delay: 0.8s;
}
.js-c-anime-elem[data-anime-delay="0.9"] {
  transition-delay: 0.9s;
}
.js-c-anime-elem[data-anime-delay="1"] {
  transition-delay: 1s;
}
.js-c-anime-elem[data-anime-delay="1.1"] {
  transition-delay: 1.1s;
}
.js-c-anime-elem[data-anime-delay="1.2"] {
  transition-delay: 1.2s;
}
.js-c-anime-elem[data-anime-delay="1.3"] {
  transition-delay: 1.3s;
}
.js-c-anime-elem[data-anime-delay="1.4"] {
  transition-delay: 1.4s;
}
.js-c-anime-elem[data-anime-delay="1.5"] {
  transition-delay: 1.5s;
}
.js-c-anime-elem[data-anime-delay="1.6"] {
  transition-delay: 1.6s;
}
.js-c-anime-elem[data-anime-delay="1.7"] {
  transition-delay: 1.7s;
}
.js-c-anime-elem[data-anime-delay="1.8"] {
  transition-delay: 1.8s;
}
.js-c-anime-elem[data-anime-delay="1.9"] {
  transition-delay: 1.9s;
}
.js-c-anime-elem[data-anime-delay="2"] {
  transition-delay: 2s;
}

.js-c-switch-tab {
  cursor: pointer;
}

.js-c-switch-content {
  display: none;
}
.js-c-switch-content.is-active {
  display: block;
}

.js-c-toggle-trigger {
  cursor: pointer;
}

.js-c-toggle-content {
  display: none;
}

/* .about-intro
================================================== */
.about-intro__inner {
  padding-bottom: 60px;
  background: url("../img/about/bg_intro.png") no-repeat left 10px bottom 10px/200px 111px;
}
.about-intro__inner2 {
  max-width: var(--mh--contents--narrow-width);
  margin: 0 auto;
}
.about-intro__head {
  font-size: var(--mh--font-size--x6l);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  margin: 0 0 20px;
}
@media (width >= 768px ) {
  .about-intro__inner {
    padding-bottom: 120px;
    background-position: left 50px bottom 50px;
    background-size: 440px 222px;
  }
  .about-intro__head {
    margin-bottom: 40px;
  }
  .about-intro__txt {
    width: 50%;
    margin: 0 0 0 auto;
  }
}

/* .about-images
================================================== */
.about-images {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: 62.6% 1fr;
  gap: 5px;
}
.about-images__item:nth-child(1) {
  grid-area: 1/1/2/3;
}
.about-images__item:nth-child(2) {
  grid-area: 2/1/3/2;
}
.about-images__item:nth-child(3) {
  grid-area: 2/2/3/3;
}
.about-images__img {
  display: block;
  width: 100%;
}
@media (width < 768px) {
  .about-images {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
}
@media (width >= 768px ) {
  .about-images {
    grid-template-columns: 64.8% 21.7% 1fr;
    gap: 0 10px;
  }
  .about-images__item:nth-child(1) {
    grid-area: auto;
  }
  .about-images__item:nth-child(2) {
    grid-area: auto;
  }
  .about-images__item:nth-child(3) {
    grid-area: auto;
  }
}

/* .about-message
================================================== */
.about-message {
  padding-block: 60px;
}
.about-message__inner {
  display: grid;
  row-gap: var(--mh--space--md);
}
.about-message__set {
  display: flex;
  flex-direction: column;
  gap: var(--mh--space--md);
}
.about-message__set-img {
  width: 71.6%;
  margin-inline: auto;
}
.about-message__set-content {
  display: grid;
  row-gap: 15px;
}
.about-message__set-content-name {
  font-size: var(--mh--font-size--sm);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  display: flex;
  column-gap: 10px;
  align-items: baseline;
  justify-content: flex-end;
}
.about-message__set-content-name-em {
  font-size: var(--mh--font-size--x2l);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
}
@media (width >= 768px ) {
  .about-message {
    padding-block: 120px;
  }
  .about-message__set {
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
  }
  .about-message__set-img {
    width: 36%;
    max-width: 390px;
    margin-inline: 0;
  }
  .about-message__set-content {
    row-gap: 20px;
    max-width: 550px;
  }
}

/* .about-conduct
================================================== */
.about-conduct {
  padding: 28px 0 40px;
  background-color: var(--mh--color--grayscale-200);
}
.about-conduct__head {
  margin: 0 0 20px;
}
.about-conduct__list-item {
  padding: 13px 0 20px;
  counter-increment: about-conduct-list-item;
  border-top: 1px solid var(--mh--color--grayscale-600);
}
.about-conduct__list-item::before {
  font-size: var(--mh--font-size--sm);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  display: block;
  margin: 0 0 4px;
  color: var(--mh--color--grayscale-700);
  content: counter(about-conduct-list-item, decimal-leading-zero);
}
.about-conduct__list-item-txt {
  font-size: var(--mh--font-size--xl);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  display: block;
}
@media (width >= 768px ) {
  .about-conduct {
    padding: 120px 0 80px;
  }
  .about-conduct__head {
    margin-bottom: 40px;
  }
  .about-conduct__list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0 40px;
  }
  .about-conduct__list-item {
    padding: 29px 0 40px;
  }
  .about-conduct__list-item::before {
    margin-bottom: 10px;
  }
}

/* .about-outline
================================================== */
.about-outline {
  padding: 60px 0;
  background: url("../img/about/bg_outline.png") no-repeat right 10px top 10px/183px 100px;
}
.about-outline__head {
  margin: 0 0 20px;
}
@media (width >= 768px ) {
  .about-outline {
    padding: 120px 0;
    background-position: right 50px top 50px;
    background-size: 400px 219px;
  }
  .about-outline__head {
    margin-bottom: 40px;
  }
}
@media (width >= 1920px ) {
  .about-outline {
    background-position: right calc((100% - var(--mh--contents--wide-width) + 400px) / 2) top 50px;
  }
}

#contact .l-sub-img {
  position: relative;
}
#contact .l-sub-img::before {
  position: absolute;
  top: 25px;
  right: 25px;
  display: block;
  width: 140px;
  height: 120px;
  content: "";
  background: url("../img/common/bg_sub_img02_sp.png") no-repeat center/contain;
}
#contact .l-sub-img__inner {
  background: transparent;
}
@media (width >= 768px ) {
  #contact .l-sub-img::before {
    right: 170px;
    width: 260px;
    height: 225px;
  }
}

/* contact-main
================================================== */
.contact-main__form {
  padding-top: 30px;
}
.contact-main__btn {
  width: 280px;
}
.contact-main__btn-wrap {
  margin-top: var(--mh--space--md);
  text-align: center;
}
@media (width >= 768px ) {
  .contact-main__txt {
    text-align: center;
  }
  .contact-main__form {
    padding-top: 75px;
  }
}

/* .error-page404
================================================ */
.error-page404__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
@media (width >= 768px ) {
  .error-page404__inner {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

/* .home-about
================================================== */
.home-about__main-area {
  max-width: var(--mh--contents--wide-width);
  padding: 55px 0 75px;
  margin: 0 auto;
  background: url("../img/home/bg_about_01.png") no-repeat right 11px top 10px/215px 118px;
}
.home-about__head {
  margin: 0 0 20px;
}
.home-about__txt {
  margin: 0 0 15px;
}
.home-about__btn-wrap {
  margin: 25px 0 0;
}
.home-about__btn {
  display: block;
}
@media (width >= 768px ) {
  .home-about__main-area {
    padding-top: clamp(60px, -20px + 6.25vw, 100px);
    padding-bottom: clamp(110px, 10px + 7.8125vw, 160px);
    background: url("../img/home/bg_about_01.png") no-repeat right top/430px 235px;
  }
  .home-about__head {
    margin: 0 0 40px;
  }
  .home-about__body {
    width: 600px;
    margin: 0 0 0 auto;
  }
  .home-about__txt {
    margin-bottom: 30px;
  }
  .home-about__btn-wrap {
    margin-top: 50px;
  }
  .home-about__btn {
    width: 280px;
  }
}
@media (width >= 1920px ) {
  .home-about__main-area {
    padding-top: clamp(60px, -20px + 6.25vw, 100px);
    padding-bottom: clamp(110px, 30px + 6.25vw, 150px);
    background: url("../img/home/bg_about_01.png") no-repeat right top/430px 235px, url("../img/home/bg_about_02.png") no-repeat left bottom 50px/701px 140px;
  }
}

/* .home-kiso
================================================== */
.home-kiso__main-area {
  padding: 20px var(--mh--contents--padding--side) 75px;
  margin-bottom: 5px;
  background: var(--mh--gradient02);
}
.home-kiso__head {
  margin: 0 0 32px;
}
.home-kiso__head-txt {
  font-size: var(--mh--font-size--sm);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
}
.home-kiso__point {
  position: relative;
  max-width: 335px;
  margin: 0 auto;
}
.home-kiso__point-list {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: repeat(2, 1fr);
}
.home-kiso__point-list-item {
  text-align: center;
}
.home-kiso__point-list-item:nth-child(1) {
  grid-area: 1/1/2/3;
  padding-left: 4px;
  margin: 0 0 167px;
}
.home-kiso__point-list-item:nth-child(2) {
  grid-area: 2/1/3/2;
  padding-right: 6px;
}
.home-kiso__point-list-item:nth-child(3) {
  grid-area: 2/2/3/3;
  padding-left: 7px;
}
.home-kiso__point-head-txt-en {
  font-size: var(--mh--font-size--x2s);
  font-family: var(--mh--font-family--en);
  font-weight: 400;
  line-height: var(--mh--line-height--xs);
  letter-spacing: 0;
  display: block;
  color: var(--mh--color--grayscale-700);
  text-transform: uppercase;
}
.home-kiso__point-head-txt-ja {
  font-size: var(--mh--font-size--x4l);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  display: block;
  margin: 0 0 2px;
}
.home-kiso__point-description {
  font-size: var(--mh--font-size--xs);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
}
.home-kiso__point-img {
  position: absolute;
  top: 104px;
  left: 50%;
  display: block;
  transform: translateX(-50%);
}
.home-kiso__images-img {
  display: block;
}
.home-kiso__images-img + .home-kiso__images-img {
  margin-top: 5px;
}
.home-kiso__images-img:nth-child(1) {
  width: 100%;
}
.home-kiso__images-img:nth-child(2) {
  width: 78.13%;
}
@media (width >= 768px ) {
  .home-kiso {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    width: 100%;
    max-width: var(--mh--contents--wide-width-with-padding);
    padding: 0 var(--mh--contents--padding--side);
    margin: 0 auto;
  }
  .home-kiso__main-area {
    order: 2;
    padding: 50px;
    margin-bottom: 0;
  }
  .home-kiso__head {
    margin-bottom: clamp(29px, -151px + 14.0625vw, 119px);
  }
  .home-kiso__point {
    max-width: 680px;
  }
  .home-kiso__point-list-item:nth-child(1) {
    padding-left: 8px;
    margin-bottom: clamp(229px, 77px + 11.875vw, 305px);
  }
  .home-kiso__point-list-item:nth-child(2) {
    padding-right: 10px;
  }
  .home-kiso__point-list-item:nth-child(3) {
    padding-left: 10px;
  }
  .home-kiso__point-head {
    margin-bottom: clamp(15px, 5px + 0.78125vw, 20px);
  }
  .home-kiso__point-head-txt-en {
    font-size: clamp(10.5px, 3.5px + 0.546875vw, 14px);
  }
  .home-kiso__point-head-txt-ja {
    font-size: clamp(21.75px, 7.25px + 1.1328125vw, 29px);
  }
  .home-kiso__point-description {
    font-size: clamp(12px, 4px + 0.625vw, 16px);
  }
  .home-kiso__point-img {
    top: clamp(95px, 31px + 5vw, 127px);
    width: clamp(261px, 85px + 13.75vw, 349px);
  }
  .home-kiso__images {
    order: 1;
  }
  .home-kiso__images-img + .home-kiso__images-img {
    margin-top: 10px;
  }
  .home-kiso__images-img:nth-child(2) {
    width: 81.53%;
  }
}
@media (width >= 1920px ) {
  .home-kiso__point-list-item:nth-child(2) {
    padding: 0;
  }
  .home-kiso__point-list-item:nth-child(3) {
    padding: 0;
  }
  .home-kiso__point-head-txt-en {
    margin-bottom: 1px;
  }
  .home-kiso__images-img:nth-child(2) {
    width: 79%;
  }
}

/* .home-service
================================================== */
.home-service {
  padding: 75px 0;
  background: url("../img/home/bg_service.png") no-repeat right 10px top 10px/67px 168px;
}
.home-service__head {
  margin: 0 0 20px;
}
.home-service__txt {
  margin: 0 0 30px;
}
.home-service__section-wrap {
  margin: 0 0 30px;
}
.home-service__section {
  padding: 29px 0 30px;
  counter-increment: home-service-section;
  border-bottom: 1px solid var(--mh--color--grayscale-600);
}
.home-service__section:first-child {
  border-top: 1px solid var(--mh--color--grayscale-600);
}
.home-service__section-group {
  margin: 0 0 30px;
}
.home-service__section-head {
  font-size: var(--mh--font-size--x3l);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  margin: 0 0 10px;
}
.home-service__section-head::before {
  font-size: var(--mh--font-size--md);
  font-family: var(--mh--font-family--en);
  font-weight: 400;
  line-height: var(--mh--line-height--xs);
  letter-spacing: 0;
  display: block;
  margin: 0 0 2px;
  color: var(--mh--color--grayscale-600);
  content: counter(home-service-section, decimal-leading-zero);
}
.home-service__section-txt {
  margin: 0 0 15px;
}
.home-service__section-img {
  display: block;
  width: 100%;
  aspect-ratio: 600/239;
  object-fit: cover;
}
.home-service__section-btn {
  width: 180px;
}
.home-service__btn {
  display: block;
}
@media (width >= 768px ) {
  .home-service {
    padding: clamp(120px, 58px + 4.84375vw, 151px) 0;
    background: url("../img/home/bg_service.png") no-repeat right 50px top 50px/134px 337px;
  }
  .home-service__cols {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin: 0 0 40px;
  }
  .home-service__head {
    margin: 0;
  }
  .home-service__txt {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    margin: 0;
  }
  .home-service__section-wrap {
    margin-bottom: 40px;
  }
  .home-service__section {
    display: grid;
    grid-template-columns: 1fr 600px;
    gap: 0 60px;
    padding: 49px 0 50px;
  }
  .home-service__section-group {
    margin-bottom: 0;
  }
  .home-service__section-head {
    margin-bottom: 50px;
  }
  .home-service__section-head::before {
    margin-bottom: 5px;
  }
  .home-service__section-txt {
    margin-bottom: 30px;
  }
  .home-service__section-btn {
    width: 160px;
  }
  .home-service__btn {
    width: 280px;
  }
}
@media (width >= 1920px ) {
  .home-service {
    background-position: right calc((100% - 1920px + 134px) / 2 + 50px) top 50px;
  }
}

/* .home-products
================================================== */
.home-products {
  padding: 75px 0;
  background: var(--mh--color--grayscale-200);
}
.home-products__head {
  margin: 0 0 20px;
}
.home-products__txt {
  margin: 0 0 30px;
}
.home-products__splide {
  width: calc(100% + var(--mh--contents--padding--side));
}
.home-products__splide-arrows {
  margin: 30px 0 0 calc(var(--mh--contents--padding--side) * -1);
}
@media (width >= 768px ) {
  .home-products {
    padding: clamp(120px, 62px + 4.53125vw, 149px) 0;
  }
  .home-products__cols {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin: 0 0 40px;
  }
  .home-products__head {
    margin: 0;
  }
  .home-products__txt {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    margin: 0;
  }
  .home-products__splide {
    width: calc(100vw - (100vw - var(--mh--contents--width)) / 2);
  }
  .home-products__splide-arrows {
    justify-content: flex-start;
    margin: 40px 0 0;
  }
}

.home-product {
  display: flex;
  flex-direction: column;
  width: 335px;
  height: 100%;
  border-bottom: 1px solid var(--mh--color--grayscale-600);
}
.home-product__name {
  order: 2;
}
.home-product__name-link {
  font-size: var(--mh--font-size--xs);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  position: relative;
  display: block;
  padding: 20px 0 19px;
}
.home-product__name-link[target=_blank]::after {
  display: inline-block;
  width: 12px;
  height: 12px;
  color: currentColor;
  content: "";
  background-color: currentcolor;
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 12" fill="none"><path d="M12 0V8.08696H3.91309V0H12ZM4.95656 7.04348H10.9566V1.04348H4.95656V7.04348Z" fill="currentColor"/><path d="M2.6087 4.06934V5.11281H1.04348V10.9559H7.04348V9.5476H8.08696V11.9994H0V4.06934H2.6087Z" fill="currentColor"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  transition: all var(--mh--duration) var(--mh--easing);
  position: absolute;
  top: 50%;
  right: 1px;
  display: block !important;
  transform: translateY(-50%);
}
.home-product__img {
  order: 1;
}
.home-product__img-link {
  display: block;
  width: 100%;
  aspect-ratio: 1/1;
}
.home-product__img-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (width >= 768px ) {
  .home-product {
    position: relative;
    display: block;
    width: 306px;
    border: none;
  }
  .home-product__name {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .home-product__name-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 0;
    color: var(--mh--color--grayscale-100);
    text-align: center;
    background: rgba(51, 51, 51, 0.5);
    opacity: 0;
    transition: opacity var(--mh--duration) var(--mh--easing);
  }
  .home-product__name-link[target=_blank]::after {
    inset: auto 15px 15px auto;
    transform: none;
  }
}
@media (hover: hover) and (pointer: fine) {
  .home-product__name-link:hover {
    opacity: 1;
  }
}

/* .home-company
================================================== */
.home-company {
  padding: 75px 0 0;
}
.home-company__head {
  margin: 0 0 20px;
}
.home-company__txt {
  margin: 0 0 30px;
}
.home-company__list {
  padding: 0 0 29px;
  margin: 0 0 30px;
  border-bottom: 1px solid var(--mh--color--grayscale-600);
}
.home-company__list-item + .home-company__list-item {
  margin-top: 10px;
}
.home-company__link {
  position: relative;
  display: flex;
  align-items: flex-end;
  height: 158px;
  padding: 20px;
  background-color: var(--mh--color--grayscale-200);
}
.home-company__link-txt {
  display: block;
}
.home-company__link-txt-en {
  font-size: var(--mh--font-size--xs);
  font-family: var(--mh--font-family--en);
  font-weight: 400;
  line-height: var(--mh--line-height--xs);
  letter-spacing: 0;
  display: block;
  margin: 0 0 2px;
  color: var(--mh--color--grayscale-700);
  text-transform: uppercase;
}
.home-company__link-txt-ja {
  font-size: var(--mh--font-size--lg);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  display: block;
}
.home-company__link-img {
  position: absolute;
  top: 20px;
  right: 20px;
  display: block;
  width: 60px;
  height: 60px;
  object-fit: cover;
}
.home-company__link-ico {
  position: absolute;
  right: 20px;
  bottom: 20px;
}
.home-company__link-ico::after {
  display: block !important;
}
.home-company__btn {
  display: block;
}
@media (width >= 768px ) {
  .home-company {
    padding: clamp(120px, 58px + 4.84375vw, 151px) 0 0;
  }
  .home-company__cols {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin: 0 0 40px;
  }
  .home-company__head {
    margin: 0;
  }
  .home-company__txt {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    margin: 0;
  }
  .home-company__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 42px;
    padding-bottom: 39px;
    margin-bottom: 40px;
  }
  .home-company__list-item + .home-company__list-item {
    margin-top: 0;
  }
  .home-company__link {
    height: 261px;
    padding: 30px;
  }
  .home-company__link-txt {
    display: block;
  }
  .home-company__link-txt-en {
    margin-bottom: 3px;
  }
  .home-company__link-img {
    top: 30px;
    right: 30px;
  }
  .home-company__link-ico {
    right: 30px;
    bottom: 30px;
  }
  .home-company__btn {
    width: 280px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .home-company__link {
    transition: background-color var(--mh--duration) var(--mh--easing);
  }
  .home-company__link:hover {
    background-color: var(--mh--color--grayscale-300);
  }
}

/* .home-news
================================================== */
.home-news {
  padding: 61px 0 75px;
}
.home-news__head {
  margin: 0 0 20px;
}
.home-news__tab-list {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 20px;
  align-items: flex-start;
  margin: 0 0 30px;
}
.home-news__tab-btn {
  font-size: var(--mh--font-size--md);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  display: block;
  width: fit-content;
  padding: 0;
  color: var(--mh--color--grayscale-700);
  border: none;
  transition: color var(--mh--duration) var(--mh--easing), opacity var(--mh--duration) var(--mh--easing);
  position: relative;
  display: inline-block;
}
.home-news__tab-btn.is-active {
  color: var(--mh--color--grayscale-900);
}
.home-news__tab-btn::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  content: "";
  background: currentcolor;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform var(--mh--duration) var(--mh--easing);
}
.home-news__tab-btn.is-active::after {
  transform: scaleX(1);
}
@media (hover: hover) and (pointer: fine) {
  .home-news__tab-btn:hover::after {
    transform: scaleX(1);
  }
}
.home-news__content-list {
  padding: 0 0 29px;
  margin: 0 0 30px;
  border-bottom: 1px solid var(--mh--color--grayscale-600);
}
.home-news__content {
  display: block !important;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: opacity calc(var(--mh--duration) * 3) var(--mh--easing);
}
.home-news__content.is-active {
  max-height: none;
  overflow: visible;
  opacity: 1;
}
.home-news__btn {
  display: block;
}
@media (width >= 768px ) {
  .home-news {
    padding: clamp(90px, 28px + 4.84375vw, 121px) 0 clamp(120px, 60px + 4.6875vw, 150px);
  }
  .home-news__cols {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin: 0 0 40px;
  }
  .home-news__head {
    margin: 0;
  }
  .home-news__tab-list {
    margin: auto 0 0 auto;
  }
  .home-news__tab-btn {
    padding-bottom: 2px;
  }
  .home-news__content-list {
    padding: 0 0 39px;
    margin: 0 0 40px;
  }
  .home-news__btn {
    width: 280px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .home-news__tab-btn:hover {
    color: var(--mh--color--grayscale-900);
  }
  .home-news__tab-btn:hover::after {
    transform: scaleX(1);
  }
}

/* .home-recruit
================================================== */
.home-recruit__main-area {
  padding: 75px var(--mh--contents--padding--side) 75px;
  margin-bottom: 5px;
  background: url("../img/home/bg_recruit.png") no-repeat right 10px top 10px/220px 219px, var(--mh--gradient01);
}
.home-recruit__head {
  margin: 0 0 50px;
}
.home-recruit__head-txt {
  font-size: var(--mh--font-size--sm);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
}
.home-recruit__txt {
  margin: 0 0 20px;
}
.home-recruit__btn {
  display: block;
}
.home-recruit__images-img {
  display: block;
}
.home-recruit__images-img + .home-recruit__images-img {
  margin-top: 5px;
}
.home-recruit__images-img:nth-child(1) {
  width: 100%;
}
.home-recruit__images-img:nth-child(2) {
  width: 78.13%;
  margin-left: auto;
}
@media (width >= 768px ) {
  .home-recruit {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    width: 100%;
    max-width: var(--mh--contents--wide-width-with-padding);
    padding: 0 var(--mh--contents--padding--side);
    margin: 0 auto;
  }
  .home-recruit__main-area {
    display: grid;
    grid-template-rows: 1fr auto auto;
    padding: clamp(80px, -12px + 7.1875vw, 126px) clamp(80px, -10px + 7.03125vw, 125px) clamp(80px, -10px + 7.03125vw, 125px);
    margin-bottom: 0;
    background: url("../img/home/bg_recruit.png") no-repeat right 60px top 60px/330px 329px, var(--mh--gradient01);
  }
  .home-recruit__head {
    margin-bottom: clamp(29px, -151px + 14.0625vw, 119px);
  }
  .home-recruit__txt {
    margin-bottom: 40px;
  }
  .home-recruit__btn {
    width: 280px;
  }
  .home-recruit__images-img + .home-recruit__images-img {
    margin-top: 10px;
  }
  .home-recruit__images-img:nth-child(2) {
    width: 79.48%;
  }
}
@media (width >= 1920px ) {
  .home-recruit__main-area {
    background: url("../img/home/bg_recruit.png") no-repeat right 50px bottom 50px/440px 438px, var(--mh--gradient01);
  }
  .home-recruit__images {
    padding-bottom: 3px;
  }
  .home-recruit__images-img:nth-child(2) {
    width: 79%;
  }
}

#news .l-sub-img {
  position: relative;
}
#news .l-sub-img::before {
  content: "";
  display: block;
  width: 140px;
  height: 120px;
  background: url(../img/common/bg_sub_img02_sp.png) no-repeat center/contain;
  position: absolute;
  top: 25px;
  right: 25px;
}
#news .l-sub-img__inner {
  background: transparent;
}
@media (width >= 768px ) {
  #news .l-sub-img::before {
    width: 260px;
    height: 225px;
    right: 118px;
  }
}

/* news-archive
================================================== */
.news-archive__list .c-archive01__item-img-img {
  object-fit: contain;
}
@media (width >= 768px ) {
  .news-archive__list {
    grid-template-columns: 1fr 1fr;
    gap: 40px 0;
  }
  .news-archive__list .c-archive01__item {
    border-bottom: 1px solid var(--mh--color--grayscale-600);
    padding-bottom: 40px;
  }
  .news-archive__list .c-archive01__item:nth-of-type(odd) {
    padding-right: 20px;
  }
  .news-archive__list .c-archive01__item:nth-of-type(even) {
    padding-left: 20px;
  }
}

/* .recruit-intro
================================================== */
.recruit-intro__inner {
  padding-bottom: 60px;
  background: url("../img/recruit/bg_intro.png") no-repeat right 30px bottom 62vw/220px 111px;
}
.recruit-intro__inner2 {
  max-width: var(--mh--contents--narrow-width);
  margin: 0 auto;
}
.recruit-intro__head {
  font-size: var(--mh--font-size--x6l);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  margin: 0 0 20px;
}
.recruit-intro__txt {
  margin: 0 0 20px;
}
.recruit-intro__images {
  position: relative;
  width: 100%;
  aspect-ratio: 335/285;
}
.recruit-intro__images-img {
  position: absolute;
  display: block;
}
.recruit-intro__images-img:nth-child(1) {
  top: 3.5%;
  left: 0;
  width: 36.4%;
  aspect-ratio: 122/217;
}
.recruit-intro__images-img:nth-child(2) {
  top: 34.1%;
  right: 0;
  width: 50.9%;
  aspect-ratio: 171/66;
}
.recruit-intro__images-img:nth-child(3) {
  right: 20%;
  bottom: 0;
  width: 36.4%;
  aspect-ratio: 122/98;
}
@media (width >= 768px ) {
  .recruit-intro__inner {
    padding-bottom: 120px;
    background-position: right 50px bottom 50px;
    background-size: 440px 222px;
  }
  .recruit-intro__inner2 {
    display: grid;
    grid-template-rows: auto auto;
    grid-template-columns: 550px 1fr;
  }
  .recruit-intro__head {
    grid-area: 1/1/2/3;
    margin-bottom: 40px;
  }
  .recruit-intro__txt {
    grid-area: 2/2/3/3;
    margin: 0;
  }
  .recruit-intro__images {
    grid-area: 2/1/3/2;
    aspect-ratio: 550/491;
    transform: translateX(-80px);
  }
  .recruit-intro__images-img:nth-child(1) {
    top: 8.1%;
  }
  .recruit-intro__images-img:nth-child(2) {
    top: 37.3%;
  }
}

/* .recruit-reasons
================================================== */
.recruit-reasons {
  padding: 60px 0;
  background-color: var(--mh--color--grayscale-200);
}
.recruit-reasons__head {
  margin: 0 0 20px;
}
.recruit-reasons__list-item {
  padding: 27px 0 0;
  counter-increment: about-conduct-list-item;
  border-top: 1px solid var(--mh--color--grayscale-600);
}
.recruit-reasons__list-item + .recruit-reasons__list-item {
  margin-top: 15px;
}
.recruit-reasons__list-item::before {
  font-size: var(--mh--font-size--md);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  display: block;
  margin: 0 0 2px;
  color: var(--mh--color--grayscale-700);
  content: counter(about-conduct-list-item, decimal-leading-zero);
}
.recruit-reasons__list-item-txt {
  font-size: var(--mh--font-size--xl);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  display: block;
  margin: 0 0 20px;
}
.recruit-reasons__list-item-img {
  display: block;
  width: 100%;
  aspect-ratio: 335/133;
  object-fit: cover;
}
@media (width >= 768px ) {
  .recruit-reasons {
    padding: 120px 0;
  }
  .recruit-reasons__head {
    margin-bottom: 40px;
  }
  .recruit-reasons__list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 40px;
  }
  .recruit-reasons__list-item + .recruit-reasons__list-item {
    margin-top: 0;
  }
  .recruit-reasons__list-item::before {
    margin-bottom: 6px;
  }
}

/* .recruit-person
================================================== */
.recruit-person {
  padding: 60px 0;
}
.recruit-person__head {
  margin: 0 0 20px;
}
.recruit-person__list-item {
  padding: 19px 0 0;
  border-top: 1px solid var(--mh--color--grayscale-600);
}
.recruit-person__list-item + .recruit-person__list-item {
  margin-top: 20px;
}
.recruit-person__section-ico {
  display: block;
  margin: 0 0 10px;
  color: var(--mh--color--grayscale-700) !important;
}
.recruit-person__section-ico::after {
  display: block !important;
}
.recruit-person__section-head {
  font-size: var(--mh--font-size--xl);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  margin: 0 0 5px;
}
@media (width >= 768px ) {
  .recruit-person {
    padding: 120px 0;
  }
  .recruit-person__head {
    margin-bottom: 40px;
  }
  .recruit-person__list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
  }
  .recruit-person__list-item {
    padding-top: 30px;
  }
  .recruit-person__list-item + .recruit-person__list-item {
    margin-top: 0;
  }
  .recruit-person__section-ico {
    margin-bottom: 10px;
  }
  .recruit-person__section-head {
    margin-bottom: 10px;
  }
}

/* .recruit-requirements
================================================== */
.recruit-requirements {
  padding: 60px 0;
  background-color: var(--mh--color--grayscale-200);
}
.recruit-requirements__head {
  margin: 0 0 20px;
}
.recruit-requirements__detail {
  border: 1px solid var(--mh--color--grayscale-900);
}
.recruit-requirements__detail + .recruit-requirements__detail {
  margin-top: 15px;
}
.recruit-requirements__detail-toggler {
  position: relative;
  padding: 14px 39px 14px 19px;
  background-color: var(--mh--color--grayscale-300);
}
.recruit-requirements__detail-toggler-txt {
  font-size: var(--mh--font-size--md);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  display: block;
}
.recruit-requirements__detail-toggler-ico {
  position: absolute;
  top: 50%;
  right: 19px;
  display: block;
  width: 15px;
  height: 15px;
  transform: translateY(-50%);
}
.recruit-requirements__detail-toggler-ico::before, .recruit-requirements__detail-toggler-ico::after {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  content: "";
  background-color: var(--mh--color--grayscale-900);
  transform: translateY(-50%);
  transition: transform var(--mh--duration) var(--mh--easing);
}
.recruit-requirements__detail-toggler-ico::after {
  transform: translateY(-50%) rotate(-90deg);
}
.recruit-requirements__detail.is-open .recruit-requirements__detail-toggler-ico::after {
  transform: translateY(-50%) rotate(0deg);
}
.recruit-requirements__detail-content {
  background-color: var(--mh--color--grayscale-100);
  border-top: 1px solid var(--mh--color--grayscale-900);
}
.recruit-requirements__detail-content-inner {
  padding: 6px 19px 0;
}
.recruit-requirements__table table {
  border: none;
}
@media (width >= 768px ) {
  .recruit-requirements {
    padding: 120px 0;
  }
  .recruit-requirements__head {
    margin-bottom: 40px;
  }
  .recruit-requirements__detail + .recruit-requirements__detail {
    margin-top: 20px;
  }
  .recruit-requirements__detail-toggler {
    padding: 19px 39px 19px 19px;
  }
  .recruit-requirements__detail-content-inner {
    padding: 21px 39px;
  }
  .recruit-requirements__table tr:first-child th,
  .recruit-requirements__table tr:first-child td {
    border: none;
  }
}

/* .recruit-faq
================================================== */
.recruit-faq {
  padding: 60px 0 50px;
}
.recruit-faq__head {
  margin: 0 0 20px;
}
.recruit-faq__detail {
  border-top: 1px solid var(--mh--color--grayscale-600);
}
.recruit-faq__detail:last-of-type {
  margin-bottom: 0;
  border-bottom: 1px solid var(--mh--color--grayscale-600);
}
.recruit-faq__detail-toggler {
  position: relative;
  padding: 14px 20px 14px 0;
}
.recruit-faq__detail-toggler-txt {
  font-size: var(--mh--font-size--md);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  display: block;
}
.recruit-faq__detail-toggler-ico {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 15px;
  height: 15px;
  transform: translateY(-50%);
}
.recruit-faq__detail-toggler-ico::before, .recruit-faq__detail-toggler-ico::after {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  content: "";
  background-color: var(--mh--color--grayscale-900);
  transform: translateY(-50%);
  transition: transform var(--mh--duration) var(--mh--easing);
}
.recruit-faq__detail-toggler-ico::after {
  transform: translateY(-50%) rotate(-90deg);
}
.recruit-faq__detail.is-open .recruit-faq__detail-toggler-ico::after {
  transform: translateY(-50%) rotate(0deg);
}
.recruit-faq__detail-content-inner {
  padding: 0 0 15px;
}
.recruit-faq__contact {
  padding: 50px 0 0;
}
.recruit-faq__contact-link {
  position: relative;
  display: block;
  padding: 11px 67px 9px 39px;
  border: 1px solid var(--mh--color--grayscale-900);
  border-radius: 9999px;
}
.recruit-faq__contact-txt {
  font-size: var(--mh--font-size--md);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
  display: block;
}
.recruit-faq__contact-mail {
  font-size: var(--mh--font-size--md);
  font-family: var(--mh--font-family--base);
  font-weight: 400;
  line-height: var(--mh--line-height--md);
  letter-spacing: var(--mh--letter-spacing--md);
  display: block;
  color: var(--mh--color--grayscale-700);
}
.recruit-faq__contact-ico {
  position: absolute;
  top: 50%;
  right: 29px;
  display: block;
  transform: translateY(-50%);
}
.recruit-faq__contact-ico::after {
  display: block !important;
}
@media (width >= 768px ) {
  .recruit-faq {
    padding: 120px 0 100px;
  }
  .recruit-faq__head {
    margin-bottom: 40px;
  }
  .recruit-faq__detail-toggler {
    padding: 19px 20px 19px 0;
  }
  .recruit-faq__detail-content-inner {
    padding: 1px 0 20px;
  }
  .recruit-faq__contact {
    max-width: 480px;
    padding-top: 100px;
    margin: 0 auto;
  }
  .recruit-faq__contact-link {
    padding: 22px 80px 22px 43px;
  }
  .recruit-faq__contact-txt {
    margin-bottom: 2px;
  }
  .recruit-faq__contact-mail {
    font-size: var(--mh--font-size--sm);
  }
  .recruit-faq__contact-ico {
    right: 39px;
  }
  .recruit-faq__contact-ico::after {
    width: 40px !important;
    height: 40px !important;
  }
}
@media (hover: hover) and (pointer: fine) {
  .recruit-faq__contact-link {
    transition: background-color var(--mh--duration) var(--mh--easing);
  }
  .recruit-faq__contact-link:hover {
    background-color: var(--mh--color--grayscale-300);
  }
}

/* .service-nav
================================================== */
.service-nav {
  margin: 0 0 60px;
}
.service-nav__item + .service-nav__item {
  margin-top: 15px;
}
.service-nav__btn {
  display: block;
  padding: 14px 41px 13px 24px !important;
}
.service-nav__btn-ico {
  transform: rotate(90deg);
  transform-origin: top center;
}
@media (width >= 768px ) {
  .service-nav {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 120px;
  }
  .service-nav__item + .service-nav__item {
    margin-top: 0;
  }
  .service-nav__btn {
    padding: 14px 41px 13px 24px !important;
    font-size: var(--mh--font-size--sm) !important;
  }
}

/* .service-section
================================================== */
.service-section {
  width: 100vw;
  padding: 0 0 75px;
  margin-left: calc(var(--mh--contents--padding--side) * -1);
}
.service-section.is-planning {
  background: url("../img/service/bg_planning.png") no-repeat top calc(100vw + 20px) right 10px/202px 40px;
}
.service-section.is-shipping {
  background: url("../img/service/bg_shipping.png") no-repeat top calc(100vw + 20px) right 10px/120px 61px;
}
.service-section.is-oem {
  background: url("../img/service/bg_oem.png") no-repeat top calc(100vw + 20px) right 10px/120px 105px;
}
.service-section__inner {
  display: flex;
  flex-direction: column;
}
.service-section__main {
  order: 2;
  padding: 50px var(--mh--contents--padding--side) 0;
}
.service-section__head {
  margin: 0 0 20px;
}
.service-section__txt + .service-section__txt {
  margin-top: 15px;
}
.service-section__img-wrap {
  order: 1;
  width: 100%;
  aspect-ratio: 1/1;
}
.service-section__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.service-section__content {
  display: grid;
  row-gap: var(--mh--space--md);
}
.service-section__set {
  display: grid;
  row-gap: 15px;
}
.service-section__set-head {
  font-size: var(--mh--font-size--lg);
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
}
.service-section__set-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px 15px;
}
.service-section__set-list > li {
  margin: 0 !important;
}
@media (width < 768px) {
  .service-section__set-list .is-wide-md-down {
    grid-column: 1/3;
  }
}
@media (width >= 768px ) {
  .service-section {
    width: 100%;
    padding: 0 0 150px;
    margin-left: 0;
  }
  .service-section.is-planning {
    background-position: bottom 50px left;
    background-size: 701px 140px;
  }
  .service-section.is-shipping {
    background-position: bottom 50px left;
    background-size: 440px 222px;
  }
  .service-section.is-oem {
    background-position: bottom 150px left;
    background-size: 285px 250px;
  }
  .service-section__inner {
    display: grid;
    grid-template-columns: 1fr 52%;
    gap: 150px;
    max-width: 1460px;
    margin-right: 0;
    margin-left: auto;
  }
  .service-section.is-reverse .service-section__inner {
    grid-template-columns: 52% 1fr;
    margin-right: auto;
    margin-left: 0;
  }
  .service-section__main {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    order: 1;
    padding: 0;
  }
  .service-section.is-reverse .service-section__main {
    order: 2;
  }
  .service-section__head {
    margin-bottom: 40px;
  }
  .service-section__txt + .service-section__txt {
    margin-top: 30px;
  }
  .service-section__img-wrap {
    order: 2;
    width: 100%;
    margin: 0;
  }
  .service-section.is-reverse .service-section__img-wrap {
    order: 1;
  }
  .service-section__set-list {
    grid-template-columns: repeat(3, 1fr);
    gap: 10px 20px;
  }
}

.u-hidden {
  display: none;
}

.u-inline {
  display: inline;
}

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

.u-block {
  display: block;
}

.u-flex {
  display: flex;
}

.u-grid {
  display: grid;
}

@media (width < 640px) {
  .u-hidden-sm-down {
    display: none;
  }
}
@media (width < 768px) {
  .u-hidden-md-down {
    display: none;
  }
}
@media (width < 1280px) {
  .u-hidden-lg-down {
    display: none;
  }
}
@media (width < 1920px) {
  .u-hidden-xl-down {
    display: none;
  }
}
@media (width >= 640px) {
  .u-hidden-sm-up {
    display: none;
  }
}
@media (width >= 768px ) {
  .u-hidden-md-up {
    display: none;
  }
}
@media (width >= 1280px ) {
  .u-hidden-lg-up {
    display: none;
  }
}
@media (width >= 1920px ) {
  .u-hidden-xl-up {
    display: none;
  }
}
/* overflow
-------------------------------------- */
.u-overflow-auto {
  overflow: auto;
}

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

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

/* screen reader
-------------------------------------- */
.u-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  white-space: nowrap;
  border-width: 0;
  clip: rect(0, 0, 0, 0);
}

/* text-transform
-------------------------------------- */
.u-uppercase {
  text-transform: uppercase;
}

.u-capitalize {
  text-transform: capitalize;
}

/* text-align
-------------------------------------- */
.u-text-left {
  text-align: left;
}

.u-text-right {
  text-align: right;
}

.u-text-center {
  text-align: center;
}

@media (width < 640px) {
  .u-text-left-sm-down {
    text-align: left;
  }
}
@media (width < 640px) {
  .u-text-right-sm-down {
    text-align: right;
  }
}
@media (width < 640px) {
  .u-text-center-sm-down {
    text-align: center;
  }
}
@media (width < 768px) {
  .u-text-left-md-down {
    text-align: left;
  }
}
@media (width < 768px) {
  .u-text-right-md-down {
    text-align: right;
  }
}
@media (width < 768px) {
  .u-text-center-md-down {
    text-align: center;
  }
}
@media (width < 1280px) {
  .u-text-left-lg-down {
    text-align: left;
  }
}
@media (width < 1280px) {
  .u-text-right-lg-down {
    text-align: right;
  }
}
@media (width < 1280px) {
  .u-text-center-lg-down {
    text-align: center;
  }
}
@media (width < 1920px) {
  .u-text-left-xl-down {
    text-align: left;
  }
}
@media (width < 1920px) {
  .u-text-right-xl-down {
    text-align: right;
  }
}
@media (width < 1920px) {
  .u-text-center-xl-down {
    text-align: center;
  }
}
@media (width >= 640px) {
  .u-text-left-sm-up {
    text-align: left;
  }
}
@media (width >= 640px) {
  .u-text-right-sm-up {
    text-align: right;
  }
}
@media (width >= 640px) {
  .u-text-center-sm-up {
    text-align: center;
  }
}
@media (width >= 768px ) {
  .u-text-left-md-up {
    text-align: left;
  }
}
@media (width >= 768px ) {
  .u-text-right-md-up {
    text-align: right;
  }
}
@media (width >= 768px ) {
  .u-text-center-md-up {
    text-align: center;
  }
}
@media (width >= 1280px ) {
  .u-text-left-lg-up {
    text-align: left;
  }
}
@media (width >= 1280px ) {
  .u-text-right-lg-up {
    text-align: right;
  }
}
@media (width >= 1280px ) {
  .u-text-center-lg-up {
    text-align: center;
  }
}
@media (width >= 1920px ) {
  .u-text-left-xl-up {
    text-align: left;
  }
}
@media (width >= 1920px ) {
  .u-text-right-xl-up {
    text-align: right;
  }
}
@media (width >= 1920px ) {
  .u-text-center-xl-up {
    text-align: center;
  }
}
/* font-size
-------------------------------------- */
.u-text-x2s {
  font-size: var(--mh--font-size--x2s);
}

.u-text-xs {
  font-size: var(--mh--font-size--xs);
}

.u-text-sm {
  font-size: var(--mh--font-size--sm);
}

.u-text-md {
  font-size: var(--mh--font-size--md);
}

.u-text-lg {
  font-size: var(--mh--font-size--lg);
}

.u-text-xl {
  font-size: var(--mh--font-size--xl);
}

.u-text-x2l {
  font-size: var(--mh--font-size--x2l);
}

.u-text-x3l {
  font-size: var(--mh--font-size--x3l);
}

.u-text-x4l {
  font-size: var(--mh--font-size--x4l);
}

.u-text-x5l {
  font-size: var(--mh--font-size--x5l);
}

.u-text-x6l {
  font-size: var(--mh--font-size--x6l);
}

.u-text-x7l {
  font-size: var(--mh--font-size--x7l);
}

.u-text-x8l {
  font-size: var(--mh--font-size--x8l);
}

.u-text-x9l {
  font-size: var(--mh--font-size--x9l);
}

.u-text-x10l {
  font-size: var(--mh--font-size--x10l);
}

.u-text-x11l {
  font-size: var(--mh--font-size--x11l);
}

.u-text-x12l {
  font-size: var(--mh--font-size--x12l);
}

.u-text-x13l {
  font-size: var(--mh--font-size--x13l);
}

.u-text-x14l {
  font-size: var(--mh--font-size--x14l);
}

.u-text-x15l {
  font-size: var(--mh--font-size--x15l);
}

.u-text-md {
  line-height: var(--mh--line-height--md);
  letter-spacing: var(--mh--letter-spacing--md);
}

.u-text-x2s,
.u-text-xs,
.u-text-sm,
.u-text-lg,
.u-text-xl,
.u-text-x2l,
.u-text-x3l,
.u-text-x4l,
.u-text-x5l,
.u-text-x6l,
.u-text-x7l,
.u-text-x8l,
.u-text-x9l,
.u-text-x10l,
.u-text-x11l,
.u-text-x12l,
.u-text-x13l,
.u-text-x14l,
.u-text-x15l {
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
}

/* line-height
-------------------------------------- */
.u-leading-none {
  line-height: var(--mh--line-height--none);
}

.u-leading-xs {
  line-height: var(--mh--line-height--xs);
}

.u-leading-sm {
  line-height: var(--mh--line-height--sm);
}

.u-leading-md {
  line-height: var(--mh--line-height--md);
}

.u-leading-lg {
  line-height: var(--mh--line-height--lg);
}

/* letter-spacing
-------------------------------------- */
.u-tracking-sm {
  letter-spacing: var(--mh--letter-spacing--sm);
}

.u-tracking-md {
  letter-spacing: var(--mh--letter-spacing--md);
}

/* font-weight
-------------------------------------- */
.u-font-bold {
  font-weight: 700;
}

/* font-family
-------------------------------------- */
.u-font-en {
  font-family: var(--mh--font-family--en);
  font-weight: 400;
  line-height: var(--mh--line-height--xs);
  letter-spacing: 0;
}

.u-font-head {
  font-family: var(--mh--font-family--base);
  font-weight: 500;
  line-height: var(--mh--line-height--sm);
  letter-spacing: var(--mh--letter-spacing--md);
}

.u-font-body {
  font-family: var(--mh--font-family--base);
  font-weight: 400;
  line-height: var(--mh--line-height--md);
  letter-spacing: var(--mh--letter-spacing--md);
}

/* 行頭の役物スペース調整用
-------------------------------------- */
.u-font-indent-adjust {
  text-indent: -0.5em;
}

/* position
-------------------------------------- */
.u-relative {
  position: relative;
}

.u-absolute {
  position: absolute !important;
}

/* layout
-------------------------------------- */
.u-inner {
  padding-right: var(--mh--contents--padding--side);
  padding-left: var(--mh--contents--padding--side);
}
@media (width >= 768px ) {
  .u-inner {
    width: 100%;
    max-width: var(--mh--contents--width-with-padding);
    margin-right: auto;
    margin-left: auto;
  }
}

.u-narrow-inner {
  padding-right: var(--mh--contents--padding--side);
  padding-left: var(--mh--contents--padding--side);
}
@media (width >= 768px ) {
  .u-narrow-inner {
    width: 100%;
    max-width: var(--mh--contents--narrow-width-with-padding);
    margin-right: auto;
    margin-left: auto;
  }
}

.u-wide-inner {
  padding-right: var(--mh--contents--padding--side);
  padding-left: var(--mh--contents--padding--side);
}
@media (width >= 768px ) {
  .u-wide-inner {
    width: 100%;
    max-width: var(--mh--contents--wide-width-with-padding);
    margin-right: auto;
    margin-left: auto;
  }
}

.u-item-center {
  display: grid;
  place-items: center;
}

.u-clearfix {
  clear: both;
  display: block;
  height: 0;
  border: none;
}

/* link
-------------------------------------- */
a.u-alpha {
  display: block;
  text-decoration: none;
}
@media (hover: hover) and (pointer: fine) {
  a.u-alpha {
    transition: opacity var(--mh--duration) var(--mh--easing);
  }
  a.u-alpha:hover {
    opacity: 0.7;
  }
}

a.u-zoom {
  display: block;
  text-decoration: none;
}
a.u-zoom .u-zoom__img {
  display: block;
}
a.u-zoom .u-zoom__img-wrap {
  display: block;
  overflow: hidden;
}
@media (hover: hover) and (pointer: fine) {
  a.u-zoom .u-zoom__img {
    transition: transform var(--mh--duration) var(--mh--easing);
  }
  a.u-zoom:hover .u-zoom__img {
    transform: scale(1.1);
  }
}

a.u-link-layer {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: block;
  overflow: hidden;
  text-indent: 200%;
  white-space: nowrap;
}

a[class].u-text-underline {
  text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
  a[class].u-text-underline:hover {
    text-decoration: none;
  }
}

a.u-link-border {
  position: relative;
  display: inline-block;
}
a.u-link-border::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  content: "";
  background: currentcolor;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform var(--mh--duration) var(--mh--easing);
}
a.u-link-border.is-active::after {
  transform: scaleX(1);
}
@media (hover: hover) and (pointer: fine) {
  a.u-link-border:hover::after {
    transform: scaleX(1);
  }
}

.u-media-query {
  font-family: sp;
}
@media (width >= 768px ) {
  .u-media-query {
    font-family: tb;
  }
}
@media (width >= 1280px ) {
  .u-media-query {
    font-family: pc;
  }
}

.u-text-primary-700 {
  color: var(--mh--color--primary-700);
}

.u-text-grayscale-100 {
  color: var(--mh--color--grayscale-100);
}

.u-text-grayscale-200 {
  color: var(--mh--color--grayscale-200);
}

.u-text-grayscale-300 {
  color: var(--mh--color--grayscale-300);
}

.u-text-grayscale-500 {
  color: var(--mh--color--grayscale-500);
}

.u-text-grayscale-600 {
  color: var(--mh--color--grayscale-600);
}

.u-text-grayscale-700 {
  color: var(--mh--color--grayscale-700);
}

.u-text-grayscale-900 {
  color: var(--mh--color--grayscale-900);
}

.u-text-grayscale-alpha {
  color: var(--mh--color--grayscale-alpha);
}

.u-text-error-500 {
  color: var(--mh--color--error-500);
}

.u-bg-primary-700 {
  background-color: var(--mh--color--primary-700);
}

.u-bg-grayscale-100 {
  background-color: var(--mh--color--grayscale-100);
}

.u-bg-grayscale-200 {
  background-color: var(--mh--color--grayscale-200);
}

.u-bg-grayscale-300 {
  background-color: var(--mh--color--grayscale-300);
}

.u-bg-grayscale-500 {
  background-color: var(--mh--color--grayscale-500);
}

.u-bg-grayscale-600 {
  background-color: var(--mh--color--grayscale-600);
}

.u-bg-grayscale-700 {
  background-color: var(--mh--color--grayscale-700);
}

.u-bg-grayscale-900 {
  background-color: var(--mh--color--grayscale-900);
}

.u-bg-grayscale-alpha {
  background-color: var(--mh--color--grayscale-alpha);
}

.u-bg-error-500 {
  background-color: var(--mh--color--error-500);
}

.u-p-x2s {
  padding: var(--mh--padding--x2s);
}

.u-py-x2s {
  padding-block: var(--mh--padding--x2s);
}

.u-px-x2s {
  padding-inline: var(--mh--padding--x2s);
}

.u-pt-x2s {
  padding-top: var(--mh--padding--x2s);
}

.u-pb-x2s {
  padding-bottom: var(--mh--padding--x2s);
}

.u-pl-x2s {
  padding-left: var(--mh--padding--x2s);
}

.u-pr-x2s {
  padding-right: var(--mh--padding--x2s);
}

.u-p-xs {
  padding: var(--mh--padding--xs);
}

.u-py-xs {
  padding-block: var(--mh--padding--xs);
}

.u-px-xs {
  padding-inline: var(--mh--padding--xs);
}

.u-pt-xs {
  padding-top: var(--mh--padding--xs);
}

.u-pb-xs {
  padding-bottom: var(--mh--padding--xs);
}

.u-pl-xs {
  padding-left: var(--mh--padding--xs);
}

.u-pr-xs {
  padding-right: var(--mh--padding--xs);
}

.u-p-sm {
  padding: var(--mh--padding--sm);
}

.u-py-sm {
  padding-block: var(--mh--padding--sm);
}

.u-px-sm {
  padding-inline: var(--mh--padding--sm);
}

.u-pt-sm {
  padding-top: var(--mh--padding--sm);
}

.u-pb-sm {
  padding-bottom: var(--mh--padding--sm);
}

.u-pl-sm {
  padding-left: var(--mh--padding--sm);
}

.u-pr-sm {
  padding-right: var(--mh--padding--sm);
}

.u-p-md {
  padding: var(--mh--padding--md);
}

.u-py-md {
  padding-block: var(--mh--padding--md);
}

.u-px-md {
  padding-inline: var(--mh--padding--md);
}

.u-pt-md {
  padding-top: var(--mh--padding--md);
}

.u-pb-md {
  padding-bottom: var(--mh--padding--md);
}

.u-pl-md {
  padding-left: var(--mh--padding--md);
}

.u-pr-md {
  padding-right: var(--mh--padding--md);
}

.u-p-lg {
  padding: var(--mh--padding--lg);
}

.u-py-lg {
  padding-block: var(--mh--padding--lg);
}

.u-px-lg {
  padding-inline: var(--mh--padding--lg);
}

.u-pt-lg {
  padding-top: var(--mh--padding--lg);
}

.u-pb-lg {
  padding-bottom: var(--mh--padding--lg);
}

.u-pl-lg {
  padding-left: var(--mh--padding--lg);
}

.u-pr-lg {
  padding-right: var(--mh--padding--lg);
}

.u-p-xl {
  padding: var(--mh--padding--xl);
}

.u-py-xl {
  padding-block: var(--mh--padding--xl);
}

.u-px-xl {
  padding-inline: var(--mh--padding--xl);
}

.u-pt-xl {
  padding-top: var(--mh--padding--xl);
}

.u-pb-xl {
  padding-bottom: var(--mh--padding--xl);
}

.u-pl-xl {
  padding-left: var(--mh--padding--xl);
}

.u-pr-xl {
  padding-right: var(--mh--padding--xl);
}

.u-p-x2l {
  padding: var(--mh--padding--x2l);
}

.u-py-x2l {
  padding-block: var(--mh--padding--x2l);
}

.u-px-x2l {
  padding-inline: var(--mh--padding--x2l);
}

.u-pt-x2l {
  padding-top: var(--mh--padding--x2l);
}

.u-pb-x2l {
  padding-bottom: var(--mh--padding--x2l);
}

.u-pl-x2l {
  padding-left: var(--mh--padding--x2l);
}

.u-pr-x2l {
  padding-right: var(--mh--padding--x2l);
}

.u-m-x2s {
  margin: var(--mh--space--x2s);
}

.u-my-x2s {
  margin-block: var(--mh--space--x2s);
}

.u-mx-x2s {
  margin-inline: var(--mh--space--x2s);
}

.u-mt-x2s {
  margin-top: var(--mh--space--x2s);
}

.u-mb-x2s {
  margin-bottom: var(--mh--space--x2s);
}

.u-ml-x2s {
  margin-left: var(--mh--space--x2s);
}

.u-mr-x2s {
  margin-right: var(--mh--space--x2s);
}

.u-m-xs {
  margin: var(--mh--space--xs);
}

.u-my-xs {
  margin-block: var(--mh--space--xs);
}

.u-mx-xs {
  margin-inline: var(--mh--space--xs);
}

.u-mt-xs {
  margin-top: var(--mh--space--xs);
}

.u-mb-xs {
  margin-bottom: var(--mh--space--xs);
}

.u-ml-xs {
  margin-left: var(--mh--space--xs);
}

.u-mr-xs {
  margin-right: var(--mh--space--xs);
}

.u-m-sm {
  margin: var(--mh--space--sm);
}

.u-my-sm {
  margin-block: var(--mh--space--sm);
}

.u-mx-sm {
  margin-inline: var(--mh--space--sm);
}

.u-mt-sm {
  margin-top: var(--mh--space--sm);
}

.u-mb-sm {
  margin-bottom: var(--mh--space--sm);
}

.u-ml-sm {
  margin-left: var(--mh--space--sm);
}

.u-mr-sm {
  margin-right: var(--mh--space--sm);
}

.u-m-md {
  margin: var(--mh--space--md);
}

.u-my-md {
  margin-block: var(--mh--space--md);
}

.u-mx-md {
  margin-inline: var(--mh--space--md);
}

.u-mt-md {
  margin-top: var(--mh--space--md);
}

.u-mb-md {
  margin-bottom: var(--mh--space--md);
}

.u-ml-md {
  margin-left: var(--mh--space--md);
}

.u-mr-md {
  margin-right: var(--mh--space--md);
}

.u-m-lg {
  margin: var(--mh--space--lg);
}

.u-my-lg {
  margin-block: var(--mh--space--lg);
}

.u-mx-lg {
  margin-inline: var(--mh--space--lg);
}

.u-mt-lg {
  margin-top: var(--mh--space--lg);
}

.u-mb-lg {
  margin-bottom: var(--mh--space--lg);
}

.u-ml-lg {
  margin-left: var(--mh--space--lg);
}

.u-mr-lg {
  margin-right: var(--mh--space--lg);
}

.u-m-xl {
  margin: var(--mh--space--xl);
}

.u-my-xl {
  margin-block: var(--mh--space--xl);
}

.u-mx-xl {
  margin-inline: var(--mh--space--xl);
}

.u-mt-xl {
  margin-top: var(--mh--space--xl);
}

.u-mb-xl {
  margin-bottom: var(--mh--space--xl);
}

.u-ml-xl {
  margin-left: var(--mh--space--xl);
}

.u-mr-xl {
  margin-right: var(--mh--space--xl);
}

.u-m-x2l {
  margin: var(--mh--space--x2l);
}

.u-my-x2l {
  margin-block: var(--mh--space--x2l);
}

.u-mx-x2l {
  margin-inline: var(--mh--space--x2l);
}

.u-mt-x2l {
  margin-top: var(--mh--space--x2l);
}

.u-mb-x2l {
  margin-bottom: var(--mh--space--x2l);
}

.u-ml-x2l {
  margin-left: var(--mh--space--x2l);
}

.u-mr-x2l {
  margin-right: var(--mh--space--x2l);
}

.u-m-x3l {
  margin: var(--mh--space--x3l);
}

.u-my-x3l {
  margin-block: var(--mh--space--x3l);
}

.u-mx-x3l {
  margin-inline: var(--mh--space--x3l);
}

.u-mt-x3l {
  margin-top: var(--mh--space--x3l);
}

.u-mb-x3l {
  margin-bottom: var(--mh--space--x3l);
}

.u-ml-x3l {
  margin-left: var(--mh--space--x3l);
}

.u-mr-x3l {
  margin-right: var(--mh--space--x3l);
}

.u-mx-auto {
  margin-inline: auto;
}

html body {
  --wp--style--block-gap: 0;
}

html body {
  --wp--preset--font-size--x-2-s: var(--mh--font-size--x2s);
  --wp--preset--font-size--xs: var(--mh--font-size--xs);
  --wp--preset--font-size--sm: var(--mh--font-size--sm);
  --wp--preset--font-size--md: var(--mh--font-size--md);
  --wp--preset--font-size--lg: var(--mh--font-size--lg);
  --wp--preset--font-size--xl: var(--mh--font-size--xl);
  --wp--preset--font-size--x-2-l: var(--mh--font-size--x2l);
  --wp--preset--font-size--x-3-l: var(--mh--font-size--x3l);
  --wp--preset--font-size--x-4-l: var(--mh--font-size--x4l);
  --wp--preset--font-size--x-5-l: var(--mh--font-size--x5l);
  --wp--preset--font-size--x-6-l: var(--mh--font-size--x6l);
  --wp--preset--font-size--x-7-l: var(--mh--font-size--x7l);
  --wp--preset--font-size--x-8-l: var(--mh--font-size--x8l);
  --wp--preset--font-size--x-9-l: var(--mh--font-size--x9l);
  --wp--preset--font-size--x-10-l: var(--mh--font-size--x10l);
  --wp--preset--font-size--x-11-l: var(--mh--font-size--x11l);
  --wp--preset--font-size--x-12-l: var(--mh--font-size--x12l);
  --wp--preset--font-size--x-13-l: var(--mh--font-size--x13l);
  --wp--preset--font-size--x-14-l: var(--mh--font-size--x14l);
  --wp--preset--font-size--x-15-l: var(--mh--font-size--x15l);
}

.has-md-font-size {
  line-height: var(--mh--line-height--md);
  letter-spacing: var(--mh--letter-spacing--md);
}

.has-x-2-s-font-size,
.has-xs-font-size,
.has-sm-font-size,
.has-lg-font-size,
.has-xl-font-size,
.has-x-2-l-font-size,
.has-x-3-l-font-size,
.has-x-4-l-font-size,
.has-x-5-l-font-size,
.has-x-6-l-font-size,
.has-x-7-l-font-size,
.has-x-8-l-font-size,
.has-x-9-l-font-size,
.has-x-10-l-font-size,
.has-x-11-l-font-size,
.has-x-12-l-font-size,
.has-x-13-l-font-size,
.has-x-14-l-font-size,
.has-x-15-l-font-size {
  line-height: var(--mh--line-height--xs);
}

.wp-block-m-hand-custom-block-custom-group[class*=" u-grid-cols"],
.wp-block-m-hand-custom-block-custom-group[class*=" sm:u-grid-cols"],
.wp-block-m-hand-custom-block-custom-group[class*=" md:u-grid-cols"],
.wp-block-m-hand-custom-block-custom-group[class*=" lg:u-grid-cols"],
.wp-block-m-hand-custom-block-custom-group[class*=" xl:u-grid-cols"],
.wp-block-m-hand-custom-block-custom-group[class*=" u-gap"],
.wp-block-m-hand-custom-block-custom-group[class*=" sm:u-gap"],
.wp-block-m-hand-custom-block-custom-group[class*=" md:u-gap"],
.wp-block-m-hand-custom-block-custom-group[class*=" lg:u-gap"],
.wp-block-m-hand-custom-block-custom-group[class*=" xl:u-gap"],
.wp-block-group[class*=" u-gap"],
.wp-block-group[class*=" sm:u-gap"],
.wp-block-group[class*=" md:u-gap"],
.wp-block-group[class*=" lg:u-gap"],
.wp-block-group[class*=" xl:u-gap"],
.wp-block-group[class*=" u-grid-cols"],
.wp-block-group[class*=" sm:u-grid-cols"],
.wp-block-group[class*=" md:u-grid-cols"],
.wp-block-group[class*=" lg:u-grid-cols"],
.wp-block-group[class*=" xl:u-grid-cols"],
.wp-block-columns[class*=" u-grid-cols"],
.wp-block-columns[class*=" sm:u-grid-cols"],
.wp-block-columns[class*=" md:u-grid-cols"],
.wp-block-columns[class*=" lg:u-grid-cols"],
.wp-block-columns[class*=" xl:u-grid-cols"],
.wp-block-columns[class*=" u-gap"],
.wp-block-columns[class*=" sm:u-gap"],
.wp-block-columns[class*=" md:u-gap"],
.wp-block-columns[class*=" lg:u-gap"],
.wp-block-columns[class*=" xl:u-gap"] {
  display: grid;
}

html body a:not(.wp-element-button) {
  text-decoration: inherit;
}

@media (width >= 768px ) {
  .wp-block-image.alignleft {
    float: left;
    margin-right: 2em;
  }
  .wp-block-image.alignright {
    float: right;
    margin-left: 2em;
  }
  .wp-block-image.aligncenter {
    margin-right: auto;
    margin-left: auto;
    text-align: center;
  }
}