@charset "UTF-8";

/* dependencies */
/* ======================== */
/*!
 Splide is released under MIT license. © 2022 Naotoshi Fujita
*/
@layer behavior {
  .splide__container {
    box-sizing: border-box;
    position: relative;
  }

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

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

  .splide__pagination {
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: center;
    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;
    -ms-flex-negative: 0;
    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;
  }

  @keyframes splide-loading {
    0% {
      transform: rotate(0);
    }

    to {
      transform: rotate(1turn);
    }
  }

  .splide__track--draggable {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -ms-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__arrow {
    -ms-flex-align: center;
    align-items: center;
    background: #ccc;
    border: 0;
    border-radius: 50%;
    cursor: pointer;
    display: -ms-flexbox;
    display: flex;
    height: 2em;
    -ms-flex-pack: center;
    justify-content: center;
    opacity: 0.7;
    padding: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 2em;
    z-index: 1;
  }

  .splide__arrow svg {
    fill: #000;
    height: 1.2em;
    width: 1.2em;
  }

  .splide__arrow:hover:not(:disabled) {
    opacity: 0.9;
  }

  .splide__arrow:disabled {
    opacity: 0.3;
  }

  .splide__arrow:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: 3px;
  }

  .splide__arrow--prev {
    left: 1em;
  }

  .splide__arrow--prev svg {
    transform: scaleX(-1);
  }

  .splide__arrow--next {
    right: 1em;
  }

  .splide.is-focus-in .splide__arrow:focus {
    outline: 3px solid #0bf;
    outline-offset: 3px;
  }

  .splide__pagination {
    bottom: 0.5em;
    left: 0;
    padding: 0 1em;
    position: absolute;
    right: 0;
    z-index: 1;
  }

  .splide__pagination__page {
    background: #ccc;
    border: 0;
    border-radius: 50%;
    display: inline-block;
    height: 8px;
    margin: 3px;
    opacity: 0.7;
    padding: 0;
    position: relative;
    transition: transform 0.2s linear;
    width: 8px;
  }

  .splide__pagination__page.is-active {
    background: #fff;
    transform: scale(1.4);
    z-index: 1;
  }

  .splide__pagination__page:hover {
    cursor: pointer;
    opacity: 0.9;
  }

  .splide__pagination__page:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: 3px;
  }

  .splide.is-focus-in .splide__pagination__page:focus {
    outline: 3px solid #0bf;
    outline-offset: 3px;
  }

  .splide__progress__bar {
    background: #ccc;
    height: 3px;
  }

  .splide__slide {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  }

  .splide__slide:focus {
    outline: 0;
  }

  @supports (outline-offset: -3px) {
    .splide__slide:focus-visible {
      outline: 3px solid #0bf;
      outline-offset: -3px;
    }
  }

  @media screen and (-ms-high-contrast: none) {
    .splide__slide:focus-visible {
      border: 3px solid #0bf;
    }
  }

  @supports (outline-offset: -3px) {
    .splide.is-focus-in .splide__slide:focus {
      outline: 3px solid #0bf;
      outline-offset: -3px;
    }
  }

  @media screen and (-ms-high-contrast: none) {
    .splide.is-focus-in .splide__slide:focus {
      border: 3px solid #0bf;
    }

    .splide.is-focus-in .splide__track>.splide__list>.splide__slide:focus {
      border-color: #0bf;
    }
  }

  .splide__toggle {
    cursor: pointer;
  }

  .splide__toggle:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: 3px;
  }

  .splide.is-focus-in .splide__toggle:focus {
    outline: 3px solid #0bf;
    outline-offset: 3px;
  }

  .splide__track--nav>.splide__list>.splide__slide {
    border: 3px solid transparent;
    cursor: pointer;
  }

  .splide__track--nav>.splide__list>.splide__slide.is-active {
    border: 3px solid #000;
  }

  .splide__arrows--rtl .splide__arrow--prev {
    left: auto;
    right: 1em;
  }

  .splide__arrows--rtl .splide__arrow--prev svg {
    transform: scaleX(1);
  }

  .splide__arrows--rtl .splide__arrow--next {
    left: 1em;
    right: auto;
  }

  .splide__arrows--rtl .splide__arrow--next svg {
    transform: scaleX(-1);
  }

  .splide__arrows--ttb .splide__arrow {
    left: 50%;
    transform: translate(-50%);
  }

  .splide__arrows--ttb .splide__arrow--prev {
    top: 1em;
  }

  .splide__arrows--ttb .splide__arrow--prev svg {
    transform: rotate(-90deg);
  }

  .splide__arrows--ttb .splide__arrow--next {
    bottom: 1em;
    top: auto;
  }

  .splide__arrows--ttb .splide__arrow--next svg {
    transform: rotate(90deg);
  }

  .splide__pagination--ttb {
    bottom: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    left: auto;
    padding: 1em 0;
    right: 0.5em;
    top: 0;
  }
}

/* scripts */
/* ======================== */
/*!
v1.0.0
Last Updated: 2024-06-30T07:19:20.491Z
Author: Mitsubishi Corporation
*/
@layer behavior, component, utility, override;

/* reset */
@layer behavior {
  :where(body) {
    margin: 0;
    line-height: 1;
  }

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

  :where(p) {
    margin-block: 0;
  }

  :where(blockquote, figure, hr) {
    margin-block: 0;
    margin-inline: 0;
  }

  :where(table) {
    border-spacing: 0;
    font-size: inherit;
    font-style: inherit;
    text-indent: initial;
    line-height: inherit;
    font-variant: inherit;
    color: inherit;
    white-space: inherit;
  }

  :where(td, th) {
    vertical-align: inherit;
    padding: 0;
  }

  :where(th) {
    font-weight: inherit;
  }

  :where(caption) {
    text-align: inherit;
  }

  :where(ul, menu, ol) {
    list-style-type: none;
    margin-block: 0;
    padding-block-start: 0;
    padding-inline-start: 0;
    counter-reset: list-item;
  }

  :where(dl) {
    margin-block: 0;
  }

  :where(dd) {
    margin-inline-start: 0;
  }

  :where(form) {
    margin-top: 0;
  }

  :where(fieldset) {
    -webkit-margin-start: 0;
    -webkit-margin-end: 0;
    margin-inline: 0;
    padding-block: 0;
    padding-inline: 0;
  }

  :where(legend) {
    -webkit-padding-start: 0;
    -webkit-padding-end: 0;
    padding-inline: 0;
  }

  :where(ins) {
    text-decoration: inherit;
  }

  :where(strong, b) {
    font-weight: inherit;
    text-decoration: inherit;
  }

  :where(i, cite, em, var, address, dfn) {
    font-style: inherit;
  }

  code,
  kbd,
  samp {
    font-family: monospace;
  }

  :where(pre, plaintext) {
    margin-top: 0;
    margin-bottom: 0;
    white-space: pre;
  }

  :where(mark) {
    background-color: transparent;
    color: inherit;
  }

  :where(small) {
    font-size: inherit;
  }

  :where(s, del) {
    text-decoration: none;
  }

  /* states */
  :where(a:any-link) {
    color: inherit;
    text-decoration: inherit;
  }

  :where(a:any-link:active) {
    color: inherit;
  }

  :where(iframe) {
    border-width: 0;
    border-style: none;
  }
}

/* property */
@layer behavior {
  :root {
    --mc--quantity--of-design--horizontal--sp: 0.2666666667vw;
    --mc--quantity--of-design--horizontal--tb: 0.1302083333vw;
    --mc--quantity--of-design--horizontal--lt: 0.0694444444vw;
    --mc--quantity--of-design--horizontal--dt: 0.0520833333vw;
  }

 @media screen and (max-width: 767px) {
    :root {
      --mc--size--of-font--for-root: 4.2666666667vw;
    }
  }

  @media (min-width: 768px) {
    :root {
      --mc--size--of-font--for-root: 16px;
    }
  }

  @media screen and (min-width: 1200px) {
    :root {
      /* サイドマージン60pxずつ */
      --width-contents: min(1200px, calc(100vw - 120px), 100%);
    }
  }

  /* @media screen and (min-width: 768px) { */
  /* @media (min-width: 768px) { */
  @media print, screen and (min-width: 768px) {
    :root {
      /* デザイン上の10px */
      --base-unit: 10px;
    }
  }

  /* @media screen and (min-width: 768px) and (max-width: 1199px) { */
  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    :root {
      /* サイドマージン40pxずつ */
      --width-contents: min(calc(100vw - 80px), 100%);
    }
  }

 @media screen and (max-width: 767px) {
    :root {
      /* 375pxデザイン上の10px */
      --base-unit: calc(10 / 375 * 100vw);
      /* サイドマージン20pxずつ */
      --width-contents: min(calc(100vw - calc(4 * var(--base-unit))), 100%);
    }
  }

 @media screen and (max-width: 767px) {
    .l-page {
      --l-header-state-height:calc(32* var(--mc--quantity--of-design--horizontal) + 1px);
      --mc--quantity--of-design--horizontal: var(--mc--quantity--of-design--horizontal--sp);
      /* --mc--height--ol-header: calc(93 * var(--mc--quantity--of-design--horizontal)); */
      --mc--height--ol-header: calc((93 * var(--mc--quantity--of-design--horizontal)) - var(--l-header-state-height));
      --mc-layout--offset--of-outer-left: calc(20 * var(--mc--quantity--of-design--horizontal));
      --mc-layout--offset--of-inner-left: calc(16 * var(--mc--quantity--of-design--horizontal));
      --mc-layout--width-column: calc(68 * var(--mc--quantity--of-design--horizontal));
      --mc-layout--gap: calc(10 * var(--mc--quantity--of-design--horizontal));
      --mc-layout--offset--of-inner-right: calc(17 * var(--mc--quantity--of-design--horizontal));
      --mc-layout--offset--of-outer-right: var(--mc-layout--offset--of-outer-left);
      --new-contents-width:calc(100% - var(--mc-layout--offset--of-outer-left) - var(--mc-layout--offset--of-outer-right))
      /* --new-contents-width: calc(100% - var(--mc-layout--offset--of-outer-left) - var(--mc-layout--offset--of-inner-left) - var(--mc-layout--offset--of-inner-right) - var(--mc-layout--offset--of-outer-right)); */
    }
  }

  /* @media screen and (min-width: 768px) and (max-width: 1199px) { */
  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .l-page {
      --mc--quantity--of-design--horizontal: var(--mc--quantity--of-design--horizontal--tb);
      /* --mc--height--ol-header: 110px; */
      --mc--height--ol-header: 80px;
      --mc-layout--offset--of-outer-left: calc(20 * var(--mc--quantity--of-design--horizontal));
      --mc-layout--offset--of-inner-left: var(--mc-layout--offset--of-outer-left);
      --mc-layout--width-column: calc(58 * var(--mc--quantity--of-design--horizontal));
      --mc-layout--gap: calc(12 * var(--mc--quantity--of-design--horizontal));
      --mc-layout--offset--of-inner-right: var(--mc-layout--offset--of-outer-left);
      --mc-layout--offset--of-outer-right: var(--mc-layout--offset--of-outer-left);
      --new-contents-width: calc(100% - var(--mc-layout--offset--of-outer-left) - var(--mc-layout--offset--of-inner-left) - var(--mc-layout--offset--of-inner-right) - var(--mc-layout--offset--of-outer-right));
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .l-page {
      /* --mc--height--ol-header: 150px; */
      --mc--height--ol-header: 120px;
    }
  }

  @media screen and (min-width: 1440px) {
    .l-page {
      /* --mc--height--ol-header: 150px; */
      --mc--height--ol-header: 120px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .l-page {
      --mc--quantity--of-design--horizontal: var(--mc--quantity--of-design--horizontal--lt);
      --mc-layout--width-column: calc(78 * var(--mc--quantity--of-design--horizontal));
      --mc-layout--gap: calc(24 * var(--mc--quantity--of-design--horizontal));
      --mc-layout--offset--of-outer-left: calc(60 * var(--mc--quantity--of-design--horizontal));
      --mc-layout--offset--of-inner-left: var(--mc-layout--offset--of-outer-left);
      --mc-layout--offset--of-inner-right: var(--mc-layout--offset--of-outer-left);
      --mc-layout--offset--of-outer-right: var(--mc-layout--offset--of-outer-left);
      --new-contents-width: calc(100% - var(--mc-layout--offset--of-outer-left) - var(--mc-layout--offset--of-inner-left) - var(--mc-layout--offset--of-inner-right) - var(--mc-layout--offset--of-outer-right));
    }
  }

  @media screen and (min-width: 1440px) {
    .l-page {
      --mc--quantity--of-design--horizontal: var(--mc--quantity--of-design--horizontal--dt);
      --mc-layout--width-column: 78px;
      --mc-layout--gap: 24px;
      --mc-layout--offset--of-outer-left: calc((100vw - 1200px) / 24 * 7);
      --mc-layout--offset--of-outer-right: var(--mc-layout--offset--of-outer-left);
      --mc-layout--offset--of-inner-left: calc((100vw - 1200px) / 24 * 5);
      --mc-layout--offset--of-inner-right: var(--mc-layout--offset--of-inner-left);
      --new-contents-width: calc(100% - var(--mc-layout--offset--of-outer-left) - var(--mc-layout--offset--of-inner-left) - var(--mc-layout--offset--of-inner-right) - var(--mc-layout--offset--of-outer-right));
    }
  }
}


/* foundation */
@layer behavior {
  html {
    font-size: var(--mc--size--of-font--for-root, 16px);
    scroll-behavior: smooth;
  }

  @media screen and (min-width: 1200px) {
    html {
      scroll-padding: 80px;
    }
  }

  body {
    font-family: var(--mc--str--of-font-family-name--basic);
    font-size: 0.625rem;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0;
    overflow-x: hidden;
    overflow-y: auto;
    position: relative;
    -webkit-text-size-adjust: 100%;
  }

  small,
  i {
    font-style: inherit;
  }

  img {
    user-select: none;
  }

  [lang=en][translate=no] {
    user-select: none;
  }

  mark {
    background-color: transparent;
    color: inherit;
  }

  b,
  strong {
    font-weight: inherit;
  }

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

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

/* common parts */
@layer component {

  .c-note1:not(small) :where(small):has(b:first-child),
  .c-note1:is(small):has(b:first-child) {
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: 0.2em;
    align-items: baseline;
  }
}

@layer component {
  /* .c-link1 {
    display: inline;
  }
  .c-link1:is([target=_blank][href^=http]):not([href$=".pdf"])::after {
    content: "";
    display: inline-block;
    aspect-ratio: 1;
    height: 1em;
    margin-left: 0.5em;
    background: url("/assets_r24/images/cmn-mark_newwin_1.svg") no-repeat center/contain;
    vertical-align: middle;
  } */
}

@layer component {
  .c-image1:is(picture) {
    display: block;
    width: 100%;
    height: 100%;
  }
  
  .c-image1:is(picture) :where(img) {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  
  .p-menu1__pageSubList :where(figure > div:has(.c-image1)) {
    overflow: hidden;
  }

  .p-menu1__pageSubList a :where(.p-menu1__pageSubList dd img, .p-menu1__pageSubList dd picture) {
    transition: 0.3s ease 0s;
  }

  .p-menu1__pageSubList a:hover :where(.p-menu1__pageSubList dd img, .p-menu1__pageSubList dd picture) {
    transition-duration: 0.3s;
    transition-timing-function: ease-out;
    scale: 1.1;
  }
}

@layer component {
  .c-button1 {
    display: block grid;
    grid-template-columns: auto 1fr;
    grid-auto-flow: column;
    grid-auto-columns: auto;
    align-items: center;
    justify-items: start;
    column-gap: 0.5em;
    box-sizing: border-box;
    background-color: #000;
    color: #FFF;
    line-height: 1.6;
  }

 @media screen and (max-width: 767px) {
    .c-button1 {
      padding-top: var(--mc-layout--offset--of-inner-left);
      padding-bottom: var(--mc-layout--offset--of-inner-left);
      padding-left: var(--mc-layout--offset--of-inner-left);
      padding-right: var(--mc-layout--offset--of-inner-right);
      font-size: var(--mc-button--size--of-font, calc(17 * var(--mc--quantity--of-design--horizontal)));
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-button1 {
      width: fit-content;
      min-width: 500px;
      padding: 1.25em 2em 1.25em 1.25em;
      margin-left: auto;
      margin-right: auto;
      font-size: var(--mc-button--size--of-font, 20px);
      transition-property: background-color;
      transition-duration: 0.2s;
      transition-timing-function: ease-in;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-button1 {
      width: fit-content;
      min-width: 500px;
      padding: 1.25em 2em 1.25em 1.25em;
      margin-left: auto;
      margin-right: auto;
      font-size: var(--mc-button--size--of-font, 20px);
      transition-property: background-color;
      transition-duration: 0.2s;
      transition-timing-function: ease-in;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-button1 {
      width: fit-content;
      min-width: 500px;
      padding: 1.25em 2em 1.25em 1.25em;
      margin-left: auto;
      margin-right: auto;
      font-size: var(--mc-button--size--of-font, 20px);
      transition-property: background-color;
      transition-duration: 0.2s;
      transition-timing-function: ease-in;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-button1:hover,
    .c-button1:focus-visible {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: #A22040;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {

    .c-button1:hover,
    .c-button1:focus-visible {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: #A22040;
    }
  }

  @media screen and (min-width: 1440px) {

    .c-button1:hover,
    .c-button1:focus-visible {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: #A22040;
    }
  }

  .c-button1::after {
    content: "";
    justify-self: end;
    aspect-ratio: 1;
    width: 1em;
    background-color: #FFF;
    mask: var(--mc-button-url-mark-after, url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_1.svg")) no-repeat center/contain;
  }

  .c-more1 {
    all: unset;
    display: inline grid;
    grid-template-columns: 100%;
    grid-template-rows: 1fr 1px 1fr;
    align-items: center;
    justify-items: center;
    text-align: center;
    font-weight: 400;
    letter-spacing: 0.1em;
  }

 @media screen and (max-width: 767px) {
    .c-more1 {
      aspect-ratio: 120/50;
      width: calc(120 * var(--mc--quantity--of-design--horizontal));
      font-size: var(--mc-button--size--of-font, calc(16 * var(--mc--quantity--of-design--horizontal)));
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-more1 {
      aspect-ratio: 120/60;
      width: 120px;
      font-size: var(--mc-button--size--of-font, 16px);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-more1 {
      aspect-ratio: 120/60;
      width: 120px;
      font-size: var(--mc-button--size--of-font, 16px);
    }
  }

  @media screen and (min-width: 1440px) {
    .c-more1 {
      aspect-ratio: 120/60;
      width: 120px;
      font-size: var(--mc-button--size--of-font, 16px);
    }
  }

  .c-more1:focus-visible {
    outline: 2px solid #000;
    outline-offset: 1px;
    border-radius: 2px;
  }

  .c-more1:not([disabled]) {
    cursor: pointer;
  }

  .c-more1::before,
  .c-more1::after {
    content: "";
  }

  .c-more1::before {
    order: 2;
    height: 1px;
    background-color: #333;
  }

 @media screen and (max-width: 767px) {
    .c-more1::before {
      width: min(120 * var(--mc--quantity--of-design--horizontal), 100%);
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-more1::before {
      width: min(120px, 100%);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-more1::before {
      width: min(120px, 100%);
    }
  }

  @media screen and (min-width: 1440px) {
    .c-more1::before {
      width: min(120px, 100%);
    }
  }

  .c-more1::after {
    order: 3;
    scale: -1;
    align-self: start;
    aspect-ratio: 1;
    background-color: #333;
    mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_triangle_1.svg") no-repeat center/contain;
  }

 @media screen and (max-width: 767px) {
    .c-more1::after {
      width: 1.25em;
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-more1::after {
      width: 1.5em;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-more1::after {
      width: 1.5em;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-more1::after {
      width: 1.5em;
    }
  }

  .c-more1--active::after {
    order: 1;
    scale: 1;
    align-self: end;
  }

  .c-more1 :where(span) {
    order: 1;
    align-self: end;
    padding-bottom: 0.5em;
  }

  .c-more1 :where(span):nth-child(1) {
    display: flow;
  }

  .c-more1 :where(span):nth-child(2) {
    display: none;
  }

  .c-more1--active :where(span) {
    order: 3;
    align-self: start;
    padding-top: 0.5em;
  }

  .c-more1--active :where(span):nth-child(1) {
    display: none;
  }

  .c-more1--active :where(span):nth-child(2) {
    display: flow;
  }
}

@layer component {
  .c-panel1__frame {
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: repeat(2, auto);
  }

  .c-panel1__text {
    color: var(--mc-panel--color--of-text--default, #000);
  }

  .c-panel1__text:has(.c-panel__pickup) {
    display: flex;
    align-items: center;
    box-sizing: border-box;
    max-height: calc(9.2 * var(--base-unit));
  }

 @media screen and (max-width: 767px) {
    .c-panel1__text {
      padding-top: var(--mc-layout--offset--of-inner-left);
      padding-bottom: var(--mc-layout--offset--of-inner-left);
      padding-left: var(--mc-layout--offset--of-inner-left);
      padding-right: var(--mc-layout--offset--of-inner-right);
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-panel1__text {
      padding: 30px 20px 30px;
      transition-duration: 0.2s;
      transition-timing-function: ease-in;
    }
  }

  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-panel1__text {
      padding: 30px 20px 30px;
      transition-duration: 0.2s;
      transition-timing-function: ease-in;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-panel1__text {
      padding: 30px 20px 30px;
      transition-duration: 0.2s;
      transition-timing-function: ease-in;
    }
  }

  .p-gallery2__items :where(.c-panel1), .p-gallery2__items :where(.c-panel1) :where(.c-panel1__text) {
    transition-duration: 0.3s;
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    
    .p-gallery2__items :where(.c-panel1):focus-visible, .p-gallery2__items :where(.c-panel1):hover {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: var(--mc-panel--background-color--of-text--active, #A22041);
    }
    .p-gallery2__items :where(.c-panel1):focus-visible :where(.c-panel1__text), .p-gallery2__items :where(.c-panel1):hover :where(.c-panel1__text){
      transition-duration: 0.3s;
      color: var(--mc-panel--color--of-text--active, #FFF);
    }

    /* .c-panel1:focus-visible :where(.c-panel1__text),
    .c-panel1:hover :where(.c-panel1__text) {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: var(--mc-panel--background-color--of-text--active, #A22041);
      color: var(--mc-panel--color--of-text--active, #FFF);
    } */
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {

    .p-gallery2__items :where(.c-panel1):focus-visible, .p-gallery2__items :where(.c-panel1):hover {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: var(--mc-panel--background-color--of-text--active, #A22041);
    }
    .p-gallery2__items :where(.c-panel1):focus-visible :where(.c-panel1__text), .p-gallery2__items :where(.c-panel1):hover :where(.c-panel1__text){
      transition-duration: 0.3s;
      color: var(--mc-panel--color--of-text--active, #FFF);
    }

    /* .c-panel1:focus-visible :where(.c-panel1__text),
    .c-panel1:hover :where(.c-panel1__text) {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: var(--mc-panel--background-color--of-text--active, #A22041);
      color: var(--mc-panel--color--of-text--active, #FFF);
    } */
  }

  @media screen and (min-width: 1440px) {

    .p-gallery2__items :where(.c-panel1):focus-visible, .p-gallery2__items :where(.c-panel1):hover {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: var(--mc-panel--background-color--of-text--active, #A22041);
    }
    .p-gallery2__items :where(.c-panel1):focus-visible :where(.c-panel1__text), .p-gallery2__items :where(.c-panel1):hover :where(.c-panel1__text){
      transition-duration: 0.3s;
      color: var(--mc-panel--color--of-text--active, #FFF);
    }

    /* .c-panel1:focus-visible :where(.c-panel1__text),
    .c-panel1:hover :where(.c-panel1__text) {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: var(--mc-panel--background-color--of-text--active, #A22041);
      color: var(--mc-panel--color--of-text--active, #FFF);
    } */
  }
  
  .p-gallery2__items :where(.c-panel1):hover .c-panel__pickup::after {
    background: #fff;
    transition-duration: 0.3s;
    transition-timing-function: ease-out;
  }

  .c-panel1__title {
    font-weight: 500;
    line-height: 1.6;
    position: relative;
  }
  .c-panel1__title.c-panel__pickup {
    width: 100%;
  }

 @media screen and (max-width: 767px) {
    .c-panel1__title {
      /* margin-bottom: calc(10 * var(--mc--quantity--of-design--horizontal)); */
      font-size: calc(18 * var(--mc--quantity--of-design--horizontal));
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-panel1__title {
      /* margin-bottom: 10px; */
      font-size: 20px;
      letter-spacing: 0.1em;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-panel1__title {
      /* margin-bottom: 10px; */
      font-size: 20px;
      letter-spacing: 0.1em;
    }
  }

  
  @media screen and (min-width: 1440px) {
    .c-panel1__title {
      /* margin-bottom: 10px; */
      font-size: 20px;
      letter-spacing: 0.1em;
    }
  }
  .c-panel__pickup {
    padding-right: 40px;
  }
  .c-panel__pickup::after {
    content: "";
    display: block;
    position: absolute;
    width: calc(2* var(--base-unit));
    height: calc(2* var(--base-unit));
    right: calc(1* var(--base-unit));
    top: 0;
    bottom: 0;
    margin: auto 0;
    background: #333;
    mask: url(https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_5.svg) no-repeat center center / contain;
    transition-duration: 0.3s;
    transition-timing-function: ease-out;
  }

  .c-panel1__description {
    font-weight: 400;
  }

 @media screen and (max-width: 767px) {
    .c-panel1__description {
      font-size: calc(15 * var(--mc--quantity--of-design--horizontal));
      line-height: 1.6;
      letter-spacing: 0.04em;
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-panel1__description {
      font-size: 16px;
      line-height: 1.8;
      letter-spacing: 0.03em;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-panel1__description {
      font-size: 16px;
      line-height: 1.8;
      letter-spacing: 0.03em;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-panel1__description {
      font-size: 16px;
      line-height: 1.8;
      letter-spacing: 0.03em;
    }
  }

  .c-panel1__image {
    grid-row: 1/2;
    overflow: hidden;
    aspect-ratio: 16/9;
  }

  .c-panel1__image :where(img, picture) {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    text-align: top;
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-panel1__image :where(img, picture) {
      transition-property: scale;
      transition-duration: 0.2s;
      transition-timing-function: ease-in;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-panel1__image :where(img, picture) {
      transition-property: scale;
      transition-duration: 0.2s;
      transition-timing-function: ease-in;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-panel1__image :where(img, picture) {
      transition-property: scale;
      transition-duration: 0.2s;
      transition-timing-function: ease-in;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {

    .c-panel1:focus-visible :where(.c-panel1__image img, .c-panel1__image picture),
    .c-panel1:hover :where(.c-panel1__image img, .c-panel1__image picture) {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      scale: 1.1;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {

    .c-panel1:focus-visible :where(.c-panel1__image img, .c-panel1__image picture),
    .c-panel1:hover :where(.c-panel1__image img, .c-panel1__image picture) {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      scale: 1.1;
    }
  }

  @media screen and (min-width: 1440px) {

    .c-panel1:focus-visible :where(.c-panel1__image img, .c-panel1__image picture),
    .c-panel1:hover :where(.c-panel1__image img, .c-panel1__image picture) {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      scale: 1.1;
    }
  }

  .c-panel1__image.c-image1--bd {
    border: 1px solid #D5D5D5;
  }

}

@layer component {
  .l-body {
    width: 100%;
    overflow-x: hidden;
    background-color: white;
  }

  .l-page {
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: repeat(6, auto);
    width: 100%;
    min-height: 100dvh;
  }

  .l-page__wrapper {
    /* container-name: cn-page;
    container-type: inline-size; */
  }
}

@layer component {
  .l-header {
    grid-column: 1/2;
    grid-row: 1/2;
    display: grid;
    width: 100%;
    height: var(--mc--height--ol-header);
    /* box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16); */
    background-color: #FFF;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100000000;
    transition: all 0.3s;
  }

 @media screen and (max-width: 767px) {
    .l-header {
      grid-template-rows: 1fr auto;
      grid-template-columns: repeat(2, auto);
      position: unset;
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .l-header {
      grid-template-rows: 1fr auto;
      grid-template-columns: repeat(2, auto);
      position: unset;
    }
  }

  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .l-header {
      grid-template-rows: 1fr repeat(2, auto);
      grid-template-columns: auto 1fr 1fr;
    }
    .l-header.--home {
      height: 180px;
      grid-template-rows: 1fr repeat(3, auto);
      grid-template-columns: auto 1fr auto;
      top: 0;
    }
    .l-header.--sub {
      height: 120px;
    }
    .l-header.--home.is-hide {
      top: -100px;
      grid-template-rows: 100px 1fr 46px;
      grid-template-columns: auto 1fr auto;
    }
    .l-header.--sub.is-hide {
      top: -40px;
      grid-template-rows: 40px 1fr 46px;
      grid-template-columns: auto 1fr auto;
    }
  }

  @media screen and (min-width: 1440px) {
    .l-header {
      grid-template-rows: 1fr repeat(2, auto);
      grid-template-columns: 1fr auto 1fr;
    }
    .l-header.--home {
      height: 180px;
      grid-template-rows: 1fr repeat(2, auto);
      grid-template-columns: auto 1fr auto;
      top: 0;
    }
    .l-header.--sub {
      height: 120px;
    }
    .l-header.--home.is-hide {
      top: -100px;
      grid-template-rows: 100px 1fr 46px;
      grid-template-columns: auto 1fr auto;
    }
    .l-header.--sub.is-hide {
      top: -40px;
      grid-template-rows: 40px 1fr 46px;
      grid-template-columns: auto 1fr auto;
    }
  }

  .l-header__logo {
    grid-column: 1/-1;
    align-self: center;
    justify-self: center;
    position: relative;
    z-index: 2;
    opacity: 1;
    visibility: visible;
    transition: opacity 0.2s ease-in 0.2s;
  }
  .l-header__logo.--left {
    grid-column: 1/2;
    align-self: center;
    margin-left: 30px;
    opacity: 0;
    visibility: hidden;
  }

  .l-header__logo--en a {
    aspect-ratio: 400 / 50;
    background-size: contain;
  }

  .l-header.is-hide > .l-header__logo.--left {
    grid-row: 2/4;
    grid-column: 1/2;
    align-self: center;
    margin-left: 30px;
    opacity: 1;
    visibility: visible;
  }
  .l-header.--home > .l-header__logo.--left.l-header__logo--en a {
    aspect-ratio: 300 / 50;
  }
 @media screen and (max-width: 767px) {
    .l-header__logo {
      grid-row: 1/2;
      grid-column: 1/1;
      justify-self: start;
      margin-top: 0;
      margin-left: calc(20 * var(--mc--quantity--of-design--horizontal));
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .l-header__logo {
      grid-row: 1/2;
      grid-column: 1/1;
      justify-self: start;
      margin-left: 30px;
    }
  }

  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .l-header__logo {
      grid-row: 1/2;
    }
    .is-hide > .l-header__logo {
      opacity: 0;
      visibility: hidden;
    }
    .is-hide > .l-header__logo.--left {
      opacity: 1;
      visibility: visible;
    }
    .--sub > .l-header__logo {
      grid-row: 1/span 2;
      grid-column: 1/2;
      justify-self: start;
      margin-left: 30px;
      align-self: end;
      padding-bottom: 40px;
      transition: all 0.3s;
    }
    .--sub.is-hide > .l-header__logo {
      grid-row: 2/-1;
      grid-column: 1/2;
      opacity: 1;
      visibility: visible;
      padding-bottom: 20px;
    }
    .--sub.is-hide > .l-header__logo.--left {
      opacity: 0;
      visibility: hidden;
    }
    .l-header:not(.--home) > .l-header__logo.l-header__logo--en a {
      aspect-ratio: 300 / 50;
    }
  }
  @media screen and (min-width: 1440px) {
    .l-header__logo {
      grid-row: 1/2;
    }
    .is-hide > .l-header__logo {
      opacity: 0;
      visibility: hidden;
    }
    .is-hide > .l-header__logo.--left {
      opacity: 1;
      visibility: visible;
    }
    .--sub > .l-header__logo {
      grid-row: 1/span 2;
      grid-row: 1/-1;
      grid-column: 1/2;
      justify-self: start;
      margin-left: 30px;
      align-self: end;
      padding-bottom: 40px;
      transition: all 0.3s;
    }
    .--sub.is-hide > .l-header__logo {
      grid-row: 2/-1;
      grid-column: 1/2;
      opacity: 1;
      visibility: visible;
      padding-bottom: 20px;
    }
    .--sub.is-hide > .l-header__logo.--left {
      opacity: 0;
      visibility: hidden;
    }
    .l-header:not(.--home) > .l-header__logo.l-header__logo--en a {
      aspect-ratio: 300 / 50;
    }
  }


  .l-header__logo :where(a) {
    overflow: hidden;
    white-space: nowrap;
    text-indent: 100%;
    display: block;
    aspect-ratio: calc(var(--mc-num-logo-width-original) - var(--mc-num-logo-offset-top-original) - var(--mc-num-logo-offset-bottom-original))/calc(var(--mc-num-logo-height-original) - var(--mc-num-logo-offset-left-original) - var(--mc-num-logo-offset-right-original));
    background-image: var(--mc-str-logo-path);
    background-position: center;
    background-size: auto calc(var(--mc-num-logo-height-original) / (var(--mc-num-logo-height-original) - var(--mc-num-logo-offset-left-original) - var(--mc-num-logo-offset-right-original)) * 94%);
    background-repeat: no-repeat;
  }

 @media screen and (max-width: 767px) {
    .l-header__logo :where(a) {
      height: calc(0.0746666667 * 100vw);
    }
    .l-header__logo--en :where(a) {
      max-width: 40vw;
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .l-header__logo :where(a) {
      height: calc(calc(var(--mc-num-logo-height-original) - var(--mc-num-logo-offset-left-original) - var(--mc-num-logo-offset-right-original)) * 0.7826086957 * 1px);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .l-header__logo :where(a) {
      height: calc(calc(var(--mc-num-logo-height-original) - var(--mc-num-logo-offset-left-original) - var(--mc-num-logo-offset-right-original)) * 1 * 1px);
    }
  }

  @media screen and (min-width: 1440px) {
    .l-header__logo :where(a) {
      height: calc(calc(var(--mc-num-logo-height-original) - var(--mc-num-logo-offset-left-original) - var(--mc-num-logo-offset-right-original)) * 1 * 1px);
    }
  }

  .l-header__link {
    grid-column: 1/-1;
    z-index: 1;
  }

 @media screen and (max-width: 767px) {
    .l-header__link {
      grid-row: 1/2;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .l-header__link {
      grid-row: 1/2;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .l-header__link {
      grid-row: 1/3;
    }
    .is-hide > .l-header__link {
      grid-row: 1/-1;
    }
  }

  @media screen and (min-width: 1440px) {
    .l-header__link {
      grid-row: 1/3;
    }
    .is-hide > .l-header__link {
      grid-row: 1/-1;
    }
  }

  .l-header__state {
    border-top: solid 1px #D5D5D5;
    position: relative;
    z-index: 0;
    grid-column: 1/-1;
    grid-row: -2/-1;
  }

 @media screen and (max-width: 767px) {
    .l-header__state {
      height: calc(32 * var(--mc--quantity--of-design--horizontal) + 1px);
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .l-header__state {
      height: 30px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .l-header__state {
      height: 30px;
    }
  }

  @media screen and (min-width: 1440px) {
    .l-header__state {
      height: 30px;
    }
  }
}

@layer component {
  .l-main {
    padding-top: var(--mc--height--ol-header);
    grid-column: 1/2;
    grid-row: 2/3;
    z-index: 0;
    background-color: #FFF;
    color: #000;
  }
  .l-main--home {
    padding-top: 180px;    
  }
  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .l-main {
      padding-top: 0;
    }
    .l-main--home {
      padding-top: 0;
    }
  }
 @media screen and (max-width: 767px) {
    .l-main {
      padding-top: 0;
    }
    .l-main--home {
      padding-top: 0;
    }
  }
}

@layer component {
  .l-footer {
    grid-column: 1/2;
    grid-row: 2/span 5;
    display: grid;
    grid-template-columns: subgrid;
    grid-template-rows: subgrid;
  }

 @media screen and (max-width: 767px) {
    .l-footer {
      --mc-width-pagetop: calc(48 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .l-footer {
      --mc-width-pagetop: 72px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .l-footer {
      --mc-width-pagetop: 72px;
    }
  }

  @media screen and (min-width: 1440px) {
    .l-footer {
      --mc-width-pagetop: 72px;
    }
  }

  .l-footer__terminal {
    grid-column: 1/2;
    grid-row: 1/span 3;
    justify-self: end;
    margin-bottom: calc(var(--mc-width-pagetop) * -1 / 2 - var(--mc-layout--offset--of-outer-right));
  }

  .l-footer__terminal.js-gotop {
    opacity: 0;
    visibility: hidden;
    transition:
      opacity 0.4s ease 0s,
      visibility 0s ease 0.4s;
    pointer-events: none;
  }

  .l-footer__terminal.js-gotop.is-active {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transition:
      visibility 0s ease 0s,
      opacity 0.4s ease 0s;
  }

  .l-footer__terminal :where(div) {
    height: 100%;
    max-height: calc(100dvh - var(--mc--height--ol-header));
    position: sticky;
    z-index: 1;
    top: var(--mc--height--ol-header);
  }

  .l-footer__terminal :where(div > a) {
    overflow: hidden;
    white-space: nowrap;
    text-indent: 100%;
    display: block;
    aspect-ratio: 1;
    width: var(--mc-width-pagetop);
    border-radius: 100vw;
    background-color: rgba(162, 32, 65, 0.8);
    position: absolute;
    bottom: var(--mc-layout--offset--of-outer-right);
    right: var(--mc-layout--offset--of-outer-right);
  }

  .l-footer__terminal :where(div > a):hover {
    background-color: #a22041;
  }

  .l-footer__terminal :where(div > a)::after {
    content: "";
    display: block;
    aspect-ratio: 1;
    margin: auto;
    position: absolute;
    inset: 0;
    background-color: #FFF;
    mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_triangle_1.svg") no-repeat center/contain;
  }

 @media screen and (max-width: 767px) {
    .l-footer__terminal :where(div > a)::after {
      width: calc(24 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .l-footer__terminal :where(div > a)::after {
      width: 24px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .l-footer__terminal :where(div > a)::after {
      width: 24px;
    }
  }

  @media screen and (min-width: 1440px) {
    .l-footer__terminal {
      margin-bottom: calc(var(--mc-width-pagetop) * -1 / 2 - var(--mc-width-pagetop));
    }

    .l-footer__terminal :where(div > a) {
      bottom: var(--mc-width-pagetop);
    }

    .l-footer__terminal :where(div > a)::after {
      width: 24px;
    }
  }

  .l-footer__state {
    grid-column: 1/2;
    grid-row: 2/3;
    border-top: solid 1px #D5D5D5;
    background-color: #FFF;
    color: #666;
    padding-top: 4px;
    padding-bottom: 4px;
  }

  .l-footer__link {
    grid-column: 1/2;
    grid-row: 3/span 2;
    display: grid;
    grid-template-columns: subgrid;
    grid-template-rows: subgrid;
  }

  .l-footer__copyright {
    grid-column: 1/2;
    grid-row: 5/6;
    background-color: #000;
    color: #FFF;
    margin-top: -1px;
  }

 @media screen and (max-width: 767px) {
    .l-footer__copyright {
      padding-top: calc(36 * var(--mc--quantity--of-design--horizontal));
      padding-bottom: calc(40 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .l-footer__copyright {
      padding-top: 40px;
      padding-bottom: 80px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .l-footer__copyright {
      padding-top: 60px;
      padding-bottom: 60px;
    }
  }

  @media screen and (min-width: 1440px) {
    .l-footer__copyright {
      padding-top: 60px;
      padding-bottom: 60px;
    }
  }

  .l-footer__copyright :where(p) {
    text-align: center;
    font-weight: 400;
    letter-spacing: 0.05em;
  }

 @media screen and (max-width: 767px) {
    .l-footer__copyright :where(p) {
      font-size: calc(10 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .l-footer__copyright :where(p) {
      font-size: 12px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .l-footer__copyright :where(p) {
      font-size: 12px;
    }
  }

  @media screen and (min-width: 1440px) {
    .l-footer__copyright :where(p) {
      font-size: 12px;
    }
  }

}

@layer component {
 @media screen and (max-width: 767px) {
    .p-menu1 {
      align-self: center;
      justify-self: end;
      display: grid;
      grid-template-columns: repeat(3, auto);
      grid-template-rows: auto;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1 {
      align-self: center;
      justify-self: end;
      display: grid;
      grid-template-columns: repeat(3, auto);
      grid-template-rows: auto;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1 {
      gap: 0 calc(6 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1 {
      gap: 0 6px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1 {
      display: grid;
      grid-template-columns: subgrid;
      grid-template-rows: subgrid;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1 {
      display: grid;
      grid-template-columns: subgrid;
      grid-template-rows: subgrid;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__site {
      grid-column: 1/span 2;
      grid-row: 1/2;
      display: grid;
      grid-template-columns: subgrid;
      grid-template-rows: subgrid;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__site {
      grid-column: 1/span 2;
      grid-row: 1/2;
      display: grid;
      grid-template-columns: subgrid;
      grid-template-rows: subgrid;
    }
  }

  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__site {
      grid-column: 3/4;
      grid-row: 1/2;
      justify-self: end;
      margin-top: 24px;
      margin-right: 40px;
      opacity: 1;
      visibility: visible;
      transition: opacity 0.2s ease-in 0.2s;
    }
    .--sub .p-menu1__site {
        grid-column: 1/4;
      }
    .is-hide > .p-menu1__site {
      opacity: 0;
      visibility: hidden;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__site {
      grid-column: 3/4;
      grid-row: 1/2;
      justify-self: end;
      margin-top: 24px;
      margin-right: 40px;
      opacity: 1;
      visibility: visible;
    }
    .is-hide > .p-menu1__site {
      opacity: 0;
      visibility: hidden;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    /* .l-header--home :where(.p-menu1__site) {
      grid-column: -2/-1;
    } */
    .is-hide :where(.p-menu1__site) {
      opacity: 0;
      visibility: hidden;
    }
  }

  @media screen and (min-width: 1440px) {
    /* .l-header--home :where(.p-menu1__site) {
      grid-column: -2/-1;
    } */
    .is-hide :where(.p-menu1__site) {
      opacity: 0;
      visibility: hidden;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__site :where(menu) {
      display: contents;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__site :where(menu) {
      display: contents;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__site :where(menu) {
      display: flex;
      flex-flow: row nowrap;
      gap: 0 20px;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__site :where(menu) {
      display: flex;
      flex-flow: row nowrap;
      gap: 0 20px;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__site :where(menu > li) {
      direction: ltr;
      text-align: left;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__site :where(menu > li) {
      direction: ltr;
      text-align: left;
    }
  }

  .p-menu1__site :where(menu > li.c-access) {
    font-weight: 500;
  }

 @media screen and (max-width: 767px) {
    .p-menu1__site :where(menu > li.c-access) {
      letter-spacing: 0.04em;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__site :where(menu > li.c-access) {
      letter-spacing: 0.04em;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__site :where(menu > li.c-access) {
      font-size: calc(10 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__site :where(menu > li.c-access) {
      font-size: 10px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__site :where(menu > li.c-access) {
      letter-spacing: 0.1em;
      font-size: 14px;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__site :where(menu > li.c-access) {
      letter-spacing: 0.1em;
      font-size: 14px;
    }
  }

  .p-menu1__site :where(menu > li.c-access a) {
    display: grid;
  }

 @media screen and (max-width: 767px) {
    .p-menu1__site :where(menu > li.c-access a) {
      grid-template-columns: 100%;
      grid-template-rows: repeat(2, auto);
      aspect-ratio: 1;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__site :where(menu > li.c-access a) {
      grid-template-columns: 100%;
      grid-template-rows: repeat(2, auto);
      aspect-ratio: 1;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__site :where(menu > li.c-access a) {
      gap: calc(2 * var(--mc--quantity--of-design--horizontal)) 0;
      width: calc(60 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__site :where(menu > li.c-access a) {
      gap: 2px 0;
      width: 60px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__site :where(menu > li.c-access a) {
      grid-template-columns: repeat(2, auto);
      grid-template-rows: auto;
      gap: 0 6px;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__site :where(menu > li.c-access a) {
      grid-template-columns: repeat(2, auto);
      grid-template-rows: auto;
      gap: 0 6px;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__site :where(menu > li.c-access a b) {
      display: none;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__site :where(menu > li.c-access a b) {
      display: none;
    }
  }

  .p-menu1__site :where(menu > li.c-access a span) {
    font-weight: 500;
  }

 @media screen and (max-width: 767px) {
    .p-menu1__site :where(menu > li.c-access a span) {
      align-self: start;
      justify-self: center;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__site :where(menu > li.c-access a span) {
      align-self: start;
      justify-self: center;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__site :where(menu > li.c-access a span) {
      align-self: center;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__site :where(menu > li.c-access a span) {
      align-self: center;
    }
  }

  .p-menu1__site :where(menu > li.c-access a)::before {
    align-self: end;
    justify-self: center;
    content: "";
    display: block;
    aspect-ratio: 1;
    background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_pin_1.svg") no-repeat center/contain;
  }

 @media screen and (max-width: 767px) {
    .p-menu1__site :where(menu > li.c-access a)::before {
      width: calc(24 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__site :where(menu > li.c-access a)::before {
      width: 24px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__site :where(menu > li.c-access a)::before {
      width: 24px;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__site :where(menu > li.c-access a)::before {
      width: 24px;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__site :where(menu > li:nth-child(3)) {
      position: relative;
      z-index: 1;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__site :where(menu > li:nth-child(3)) {
      position: relative;
      z-index: 1;
    }
  }

  .p-menu1__page {
    height: 46px;
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__page {
      grid-row: 2/3;
      justify-self: center;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__page {
      grid-row: 2/3;
      justify-self: center;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__page {
      grid-column: 2/-1;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__page {
      grid-column: 1/-1;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .l-header.--home :where(.p-menu1__page) {
      grid-column: 1/-1;
      grid-row: 3/4;
    }
    .l-header.--home.is-hide :where(.p-menu1__page) {
      grid-column: 2/-1;
      grid-row: 3/4;
    }
    .l-header.--sub.is-hide :where(.p-menu1__page) {
      grid-column: 2/-1;
      grid-row: 3/4;
    }
  }

  @media screen and (min-width: 1440px) {
    .l-header.--home :where(.p-menu1__page) {
      grid-row: 3/4;
      grid-column: 1/-1;
    }
    .l-header.--home.is-hide :where(.p-menu1__page) {
      grid-column: 1/-1;
      grid-row: 3/4;
    }
    .l-header.--sub.is-hide :where(.p-menu1__page) {
      grid-column: 1/-1;
      grid-row: 3/4;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageHeader {
      display: grid;
      grid-template-columns: 100%;
      grid-template-rows: repeat(2, auto);
      aspect-ratio: 64/60;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageHeader {
      display: grid;
      grid-template-columns: 100%;
      grid-template-rows: repeat(2, auto);
      /* aspect-ratio: 64/60; */
      aspect-ratio: 80/80;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageHeader {
      /* gap: calc(4 * var(--mc--quantity--of-design--horizontal)) 0; */
      width: calc(64 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageHeader {
      /* gap: 4px 0; */
      /* width: 64px; */
      width: 80px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageHeader {
      display: none;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageHeader {
      display: none;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageHeader :where([role=heading]) {
      grid-column: 1/-1;
      grid-row: 2/-1;
      text-align: center;
      font-weight: 500;
      letter-spacing: 0.02em;
      padding-bottom: 6px;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageHeader :where([role=heading]) {
      grid-column: 1/-1;
      grid-row: 2/-1;
      text-align: center;
      font-weight: 500;
      letter-spacing: 0.02em;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageHeader :where([role=heading]) {
      font-size: calc(10 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageHeader :where([role=heading]) {
      font-size: 10px;
    }
  }

  .p-menu1__pageHeader :where(button) {
    all: unset;
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageHeader :where(button) {
      cursor: pointer;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageHeader :where(button) {
      cursor: pointer;
    }
  }

  .p-menu1__pageHeader :where(button):focus-visible {
    outline-offset: revert;
    outline: revert;
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageHeader :where(button):first-of-type {
      display: grid;
    }

    .p-menu1__pageHeader :where(button):last-of-type {
      display: none;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageHeader :where(button):first-of-type {
      display: grid;
    }

    .p-menu1__pageHeader :where(button):last-of-type {
      display: none;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__page--active :where(.p-menu1__pageHeader [role=heading]) {
      display: none;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__page--active :where(.p-menu1__pageHeader [role=heading]) {
      display: none;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__page--active :where(.p-menu1__pageHeader button):first-of-type {
      display: none;
    }

    .p-menu1__page--active :where(.p-menu1__pageHeader button):last-of-type {
      display: grid;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__page--active :where(.p-menu1__pageHeader button):first-of-type {
      display: none;
    }

    .p-menu1__page--active :where(.p-menu1__pageHeader button):last-of-type {
      display: grid;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageOpen {
      overflow: hidden;
      white-space: nowrap;
      text-indent: 100%;
      grid-column: 1/-1;
      /* grid-row: 1/-1; */
      display: grid;
      grid-template-columns: subgrid;
      grid-template-rows: 100% 0;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageOpen {
      overflow: hidden;
      white-space: nowrap;
      text-indent: 100%;
      grid-column: 1/-1;
      grid-row: 1/-1;
      display: grid;
      grid-template-columns: subgrid;
      grid-template-rows: 100% 0;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageOpen {
      /* padding-right: calc(4 * var(--mc--quantity--of-design--horizontal)); */
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageOpen {
      /* padding-right: 4px; */
    }
  }

 @media screen and (max-width: 767px) {

    .p-menu1__pageOpen::before,
    .p-menu1__pageOpen::after {
      content: "";
      grid-column: 1/2;
      grid-row: 1/2;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {

    .p-menu1__pageOpen::before,
    .p-menu1__pageOpen::after {
      content: "";
      grid-column: 1/2;
      grid-row: 1/2;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageOpen::after {
      justify-self: center;
      aspect-ratio: 1;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_menu_1.svg") no-repeat center/contain;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageOpen::after {
      justify-self: center;
      aspect-ratio: 1;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_menu_1.svg") no-repeat center/contain;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageOpen::after {
      width: calc(32 * var(--mc--quantity--of-design--horizontal));
      margin-top: calc(7 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageOpen::after {
      width: 32px;
      /* margin-top: 7px; */
      margin-top: 16px;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageClose {
      grid-column: 1/-1;
      grid-row: 1/-1;
      display: grid;
      grid-template-columns: subgrid;
      grid-template-rows: subgrid;
      background-color: #000;
      color: #FFF;
      text-align: center;
      font-weight: 500;
      letter-spacing: 0.02em;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageClose {
      grid-column: 1/-1;
      grid-row: 1/-1;
      display: grid;
      grid-template-columns: subgrid;
      grid-template-rows: subgrid;
      background-color: #000;
      color: #FFF;
      text-align: center;
      font-weight: 500;
      letter-spacing: 0.02em;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageClose {
      font-size: calc(10 * var(--mc--quantity--of-design--horizontal));
      padding-right: calc(4 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageClose {
      font-size: 10px;
      padding-right: 4px;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageClose::before {
      content: "";
      align-self: end;
      justify-self: center;
      aspect-ratio: 1;
      background-color: #FFF;
      mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_x_1.svg") no-repeat center/contain;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageClose::before {
      content: "";
      align-self: end;
      justify-self: center;
      aspect-ratio: 1;
      background-color: #FFF;
      mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_x_1.svg") no-repeat center/contain;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageClose::before {
      width: calc(24 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageClose::before {
      width: 24px;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageBody {
      visibility: hidden;
      display: none;
      width: 100vw;
      position: absolute;
      bottom: 0;
      transition-property: right, opacity;
      transition-delay: 0.2s, 0s;
      transition-duration: 0s, 0.2s;
      right: 100vw;
      opacity: 0;
    }

    .p-menu1__pageBody::after {
      content: "";
      display: block;
      width: 100%;
      position: absolute;
      top: 0;
      bottom: 0;
      z-index: -1;
      background-color: rgba(0, 0, 0, 0.6);
      -webkit-backdrop-filter: blur(1px);
      backdrop-filter: blur(1px);
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageBody {
      visibility: hidden;
      width: 100vw;
      position: absolute;
      bottom: 0;
      transition-property: right, opacity;
      transition-delay: 0.2s, 0s;
      transition-duration: 0s, 0.2s;
      right: 100vw;
      opacity: 0;
    }

    .p-menu1__pageBody::after {
      content: "";
      display: block;
      width: 100%;
      position: absolute;
      top: 0;
      bottom: 0;
      z-index: -1;
      background-color: rgba(0, 0, 0, 0.6);
      -webkit-backdrop-filter: blur(1px);
      backdrop-filter: blur(1px);
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageBody {
      /* top: calc(var(--mc--height--ol-header) - (32 * var(--mc--quantity--of-design--horizontal) + 1px)); */
      top: var(--mc--height--ol-header);
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageBody {
      /* top: calc((var(--mc--height--ol-header) - 30px - 60px) / 2 + 60px); */
      top: calc((var(--mc--height--ol-header) - 30px - 110px) / 2 + 110px);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageBody {
      display: contents;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageBody {
      display: contents;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__page--active :where(.p-menu1__pageBody) {
      visibility: visible;
      display: block;
      transition-delay: 0s, 0s;
      transition-duration: 0s, 0.3s;
      right: 0;
      opacity: 1;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__page--active :where(.p-menu1__pageBody) {
      visibility: visible;
      transition-delay: 0s, 0s;
      transition-duration: 0s, 0.3s;
      right: 0;
      opacity: 1;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageItems {
      background-color: #000;
      color: #FFF;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageItems {
      background-color: #000;
      color: #FFF;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageItems {
      display: flex;
      flex-flow: row nowrap;
      gap: 0 50px;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageItems {
      display: flex;
      flex-flow: row nowrap;
      gap: 0 50px;
      height: 100%;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageItem:not(:last-child) {
      border-bottom: solid 1px #FFF;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageItem:not(:last-child) {
      border-bottom: solid 1px #FFF;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageItemControl {
      display: grid;
      grid-template-columns: 100%;
      grid-template-rows: 100%;
      aspect-ratio: 1;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageItemControl {
      display: grid;
      grid-template-columns: 100%;
      grid-template-rows: 100%;
      aspect-ratio: 1;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageItemControl {
      width: calc(54 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageItemControl {
      width: 54px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageItemControl {
      display: none;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageItemControl {
      display: none;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageItemControl :where(button) {
      all: unset;
      overflow: hidden;
      white-space: nowrap;
      text-indent: 100%;
      cursor: pointer;
      grid-column: 1/-1;
      grid-row: 1/-1;
      position: relative;
    }

    .p-menu1__pageItemControl :where(button):focus-visible {
      outline-offset: revert;
      outline: revert;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageItemControl :where(button) {
      all: unset;
      overflow: hidden;
      white-space: nowrap;
      text-indent: 100%;
      cursor: pointer;
      grid-column: 1/-1;
      grid-row: 1/-1;
      position: relative;
    }

    .p-menu1__pageItemControl :where(button):focus-visible {
      outline-offset: revert;
      outline: revert;
    }
  }

 @media screen and (max-width: 767px) {

    .p-menu1__pageItemControl :where(button)::after,
    .p-menu1__pageItemControl :where(button)::before {
      display: block;
      aspect-ratio: 1;
      margin: auto;
      position: absolute;
      inset: 0;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_minus_1.svg") no-repeat center/contain;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {

    .p-menu1__pageItemControl :where(button)::after,
    .p-menu1__pageItemControl :where(button)::before {
      display: block;
      aspect-ratio: 1;
      margin: auto;
      position: absolute;
      inset: 0;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_minus_1.svg") no-repeat center/contain;
    }
  }

 @media screen and (max-width: 767px) {

    .p-menu1__pageItemControl :where(button)::after,
    .p-menu1__pageItemControl :where(button)::before {
      width: calc(16 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {

    .p-menu1__pageItemControl :where(button)::after,
    .p-menu1__pageItemControl :where(button)::before {
      width: 16px;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageItemControl :where(button):first-child {
      display: block;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageItemControl :where(button):first-child {
      display: block;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageItemControl :where(button):first-child::before {
      content: "";
      rotate: -90deg;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageItemControl :where(button):first-child::before {
      content: "";
      rotate: -90deg;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageItemControl :where(button):last-child {
      display: none;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageItemControl :where(button):last-child {
      display: none;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageItemControl :where(button)::after {
      content: "";
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageItemControl :where(button)::after {
      content: "";
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageItem--active :where(.p-menu1__pageItemControl button):first-child {
      display: none;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageItem--active :where(.p-menu1__pageItemControl button):first-child {
      display: none;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageItem--active :where(.p-menu1__pageItemControl button):last-child {
      display: block;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageItem--active :where(.p-menu1__pageItemControl button):last-child {
      display: block;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageCategory {
      display: grid;
      grid-template-columns: 1fr auto;
      align-items: center;
      font-weight: 500;
      letter-spacing: 0.1em;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageCategory {
      display: grid;
      grid-template-columns: 1fr auto;
      align-items: center;
      font-weight: 500;
      letter-spacing: 0.1em;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageCategory {
      font-size: calc(16 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageCategory {
      font-size: 16px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageCategory {
      font-weight: 500;
      font-size: 16px;
      letter-spacing: 0.2em;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageCategory {
      font-weight: 500;
      font-size: 16px;
      letter-spacing: 0.2em;
    }
  }

  .p-menu1__icon-newwin {
    /* filter: invert(19%) sepia(82%) saturate(1575%) hue-rotate(200deg) brightness(36%) contrast(99%); */
    transition-duration: 0.2s;
    transition-timing-function: ease-in;
  }
  a:hover .p-menu1__icon-newwin {
    /* filter: invert(19%) sepia(72%) saturate(1936%) hue-rotate(320deg) brightness(96%) contrast(100%); */
    filter: invert(13%) sepia(95%) saturate(3269%) hue-rotate(335deg) brightness(87%) contrast(101%);
    transition-duration: 0.2s;
    transition-timing-function: ease-in;
  }
 @media screen and (max-width: 767px) {
    .p-menu1__icon-newwin {
      filter:  invert(100%) brightness(100%) contrast(100%);
      visibility: visible;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__icon-newwin {
      filter:  invert(100%) brightness(100%) contrast(100%);
      visibility: visible;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageCategory :where(a) {
      padding-top: 1em;
      padding-bottom: 1em;
      padding-left: calc(var(--mc-layout--offset--of-outer-left));
      padding-right: calc(var(--mc-layout--offset--of-outer-right));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageCategory :where(a) {
      padding-top: 1em;
      padding-bottom: 1em;
      padding-left: calc(var(--mc-layout--offset--of-outer-left));
      padding-right: calc(var(--mc-layout--offset--of-outer-right));
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageCategory :where(a) {
      display: grid;
      grid-template-columns: 100%;
      grid-template-rows: 1fr repeat(2, auto);
      transition-property: color;
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      color: #333333;
    }
    .p-menu1__pageCategory.--newwin :where(a) {
      grid-template-columns: 1fr auto;
      column-gap: 4px;
    }
    .p-menu1__pageCategory.--newwin a::before {
      grid-row: 2/3;
      grid-column: 1/-1;
    }
    .p-menu1__pageCategory.--newwin a::after {
      grid-row: 3/4;
      grid-column: 1/-1;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageCategory :where(a) {
      display: grid;
      grid-template-columns: 100%;
      grid-template-rows: 1fr repeat(2, auto);
      transition-property: color;
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      color: #333333;
      height: 100%;
    }
    .p-menu1__pageCategory.--newwin :where(a) {
      grid-template-columns: 1fr auto;
      column-gap: 4px;
    }
    .p-menu1__pageCategory.--newwin a::before {
      grid-row: 2/3;
      grid-column: 1/-1;
    }
    .p-menu1__pageCategory.--newwin a::after {
      grid-row: 3/4;
      grid-column: 1/-1;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageCategory :where(a)::before {
      content: "";
      order: 2;
      justify-self: center;
      aspect-ratio: 1;
      width: 16px;
      margin-top: 4px;
      margin-bottom: 4px;
      background-color: #333333;
      mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_triangle_1.svg") no-repeat center/contain;
      scale: -1;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageCategory :where(a)::before {
      content: "";
      order: 2;
      justify-self: center;
      aspect-ratio: 1;
      width: 16px;
      margin-top: 4px;
      margin-bottom: 4px;
      background-color: #333333;
      mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_triangle_1.svg") no-repeat center/contain;
      scale: -1;
    }
  }

  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageCategory :where(a)::after {
      content: "";
      order: 3;
      height: 6px;
      background-color: transparent;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageCategory :where(a)::after {
      content: "";
      order: 3;
      height: 6px;
      background-color: transparent;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageCategory :where(a):hover {
      transition-timing-function: ease-in;
      color: #A22041;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageCategory :where(a):hover {
      transition-timing-function: ease-in;
      color: #A22041;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageCategory :where(a):hover::before {
      background-color: #A22041;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageCategory :where(a):hover::before {
      background-color: #A22041;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageCategory :where(a):hover::after {
      background-color: #A22041;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageCategory :where(a):hover::after {
      background-color: #A22041;
    }
  }
  .p-menu1__pageSubList .p-link01__ico {
    fill: #42AFE3;
  }
 @media screen and (max-width: 767px) {
    .p-menu1__pageSubList {
      display: grid;
      grid-template-columns: 100%;
      margin-left: calc(var(--mc-layout--offset--of-outer-left) + var(--mc-layout--offset--of-inner-left));
      transition-property: grid-template-rows;
      transition-duration: 0.5s;
      grid-template-rows: 0fr;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageSubList {
      display: grid;
      grid-template-columns: 100%;
      margin-left: calc(var(--mc-layout--offset--of-outer-left) + var(--mc-layout--offset--of-inner-left));
      transition-property: grid-template-rows;
      transition-duration: 0.5s;
      grid-template-rows: 0fr;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageSubList {
      box-sizing: border-box;
      width: 100%;
      padding-left: calc(var(--mc-layout--offset--of-outer-left));
      padding-right: calc(var(--mc-layout--offset--of-outer-right));
      padding-top: 50px;
      padding-bottom: 78px;
      position: absolute;
      background-color: rgba(0, 0, 0, 0.8);
      color: white;
      transition-property: left, opacity;
      transition-delay: 0.4s, 0;
      transition-duration: 0s, 0.2s;
      left: -100%;
      opacity: 0;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageSubList {
      box-sizing: border-box;
      width: 100%;
      padding-left: calc(var(--mc-layout--offset--of-outer-left));
      padding-right: calc(var(--mc-layout--offset--of-outer-right));
      padding-top: 50px;
      padding-bottom: 78px;
      position: absolute;
      background-color: rgba(0, 0, 0, 0.8);
      color: white;
      transition-property: left, opacity;
      transition-delay: 0.4s, 0;
      transition-duration: 0s, 0.2s;
      left: -100%;
      opacity: 0;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageSubListInner {
      overflow: hidden;
      transition: visibility 0s 0.3s;
      visibility: hidden;
    }
  }

  .p-menu1__pageSubListItems {
    line-height: 1.5;
  }
  .p-menu1__pageSubListCardLink {
    line-height: 1.6;
  }
  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageSubListInner {
      overflow: hidden;
      transition: visibility 0s 0.3s;
      visibility: hidden;
    }
  }

  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageSubListInner {
      display: contents;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageSubListInner {
      display: contents;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageSubList :where(ul:has(figure)) {
      display: grid;
      grid-template-columns: repeat(5, 1fr);
      gap: var(--mc-layout--gap);
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageSubList :where(ul:has(figure)) {
      display: grid;
      grid-template-columns: repeat(5, 1fr);
      gap: var(--mc-layout--gap);
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageSubList :where(dl) {
      display: grid;
      grid-template-columns: 100%;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageSubList :where(dl) {
      display: grid;
      grid-template-columns: 100%;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageSubList :where(dl) {
      display: grid;
      grid-template-columns: auto 1fr auto;
    }
  .p-menu1__pageSubList.p-menu1__pageSubList--2col :where(dl) {
      grid-template-columns: 1fr 1fr;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageSubList :where(dl) {
      display: grid;
      grid-template-columns: auto 1fr auto;
    }
    .p-menu1__pageSubList.p-menu1__pageSubList--2col :where(dl) {
        grid-template-columns: 1fr 1fr;
      }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageSubList :where(dl > div) {
      display: contents;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageSubList :where(dl > div) {
      display: contents;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageSubList :where(figure) {
      display: contents;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageSubList :where(figure) {
      display: contents;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageSubList :where(dl > div figure) {
      width: calc((100vw - var(--mc-layout--offset--of-outer-left) - var(--mc-layout--offset--of-outer-right) - 4 * var(--mc-layout--gap)) / 5);
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageSubList :where(dl > div figure) {
      width: calc((100vw - var(--mc-layout--offset--of-outer-left) - var(--mc-layout--offset--of-outer-right) - 4 * var(--mc-layout--gap)) / 5);
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageSubList :where(figure > div) {
      display: none;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageSubList :where(figure > div) {
      display: none;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageSubList :where(figure > div) {
      aspect-ratio: 16/9;
      margin-bottom: 10px;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageSubList :where(figure > div) {
      aspect-ratio: 16/9;
      margin-bottom: 10px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageSubList :where(figure img) {
      width: 100%;
      height: 100%;
      object-fit: cover;
      vertical-align: top;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageSubList :where(figure img) {
      width: 100%;
      height: 100%;
      object-fit: cover;
      vertical-align: top;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageSubList :where(figcaption) {
      display: inline;
      margin-top: 10px;
      font-weight: 500;
      letter-spacing: 0.02em;
      font-size: 20px;
      width: fit-content;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageSubList :where(figcaption) {
      display: inline;
      margin-top: 10px;
      font-weight: 500;
      letter-spacing: 0.02em;
      font-size: 20px;
      width: fit-content;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageSubList :where(a) {
      display: grid;
      grid-template-columns: auto 1fr;
      align-items: center;
      padding-top: 1em;
      padding-bottom: 1em;
      font-weight: 500;
      letter-spacing: 0.1em;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageSubList :where(a) {
      display: grid;
      grid-template-columns: auto 1fr;
      align-items: center;
      padding-top: 1em;
      padding-bottom: 1em;
      font-weight: 500;
      letter-spacing: 0.1em;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageSubList :where(a) {
      column-gap: calc(10 * var(--mc--quantity--of-design--horizontal));
      font-size: calc(16 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageSubList :where(a) {
      column-gap: 10px;
      font-size: 16px;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageSubList :where(a)::before {
      content: "";
      aspect-ratio: 1;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_3.svg") no-repeat center/contain;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageSubList :where(a)::before {
      content: "";
      aspect-ratio: 1;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_3.svg") no-repeat center/contain;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageSubList :where(a)::before {
      width: calc(24 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageSubList :where(a)::before {
      width: 24px;
    }
  }

  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageSubList :where(a figcaption)::after {
      content: "";
      display: inline-block;
      aspect-ratio: 1;
      width: 16px;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_2.svg") no-repeat center/contain;
      margin-left: 1em;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageSubList :where(a figcaption)::after {
      content: "";
      display: inline-block;
      aspect-ratio: 1;
      width: 16px;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_2.svg") no-repeat center/contain;
      margin-left: 1em;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {

    .p-menu1__pageSubList :where(a:not(:has(figure))),
    .p-menu1__pageSubList :where(a figcaption) {
      position: relative;
      padding-bottom: .15em;
      background: linear-gradient(#fff, #fff) 0 100%/0 1px no-repeat;
      transition: background .4s;
    }

    .p-menu1__pageSubList a.p-menu1__pageLink-item::before {
      content: none;
    }
  }

  @media screen and (min-width: 1440px) {

    .p-menu1__pageSubList :where(a:not(:has(figure))),
    .p-menu1__pageSubList :where(a figcaption) {
      position: relative;
      padding-bottom: .15em;
      background: linear-gradient(#fff, #fff) 0 100%/0 1px no-repeat;
      transition: background .4s;
    }

    .p-menu1__pageSubList a.p-menu1__pageLink-item::before {
      content: none;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {

    .p-menu1__pageSubList :where(a:not(:has(figure)):hover),
    .p-menu1__pageSubList :where(a:hover figcaption) {
      background-size: 100% 1px;
    }
  }

  @media screen and (min-width: 1440px) {

    .p-menu1__pageSubList :where(a:not(:has(figure)):hover),
    .p-menu1__pageSubList :where(a:hover figcaption) {
      background-size: 100% 1px;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageSubList :where(dl dt) {
      display: none;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageSubList :where(dl dt) {
      display: none;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageSubList :where(dl dt) {
      display: inline-grid;
      grid-template-columns: repeat(2, auto);
      gap: 0 10px;
      align-items: center;
      margin-bottom: 30px;
      font-weight: 400;
      letter-spacing: 0.03em;
      font-size: 24px;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageSubList :where(dl dt) {
      display: inline-grid;
      grid-template-columns: repeat(2, auto);
      gap: 0 10px;
      align-items: center;
      margin-bottom: 30px;
      font-weight: 400;
      letter-spacing: 0.03em;
      font-size: 24px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageSubList :where(dl dt)::before {
      content: "";
      aspect-ratio: 1;
      border-radius: 100vw;
      width: 8px;
      background-color: #BF0C0C;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageSubList :where(dl dt)::before {
      content: "";
      aspect-ratio: 1;
      border-radius: 100vw;
      width: 8px;
      background-color: #BF0C0C;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {

    .p-menu1__pageSubList :where(dl dd),
    .p-menu1__pageSubList :where(ul li) {
      font-weight: 400;
      letter-spacing: 0.03em;
      font-size: 16px;
    }
  }

  @media screen and (min-width: 1440px) {

    .p-menu1__pageSubList :where(dl dd),
    .p-menu1__pageSubList :where(ul li) {
      font-weight: 400;
      letter-spacing: 0.03em;
      font-size: 16px;
    }
  }

 @media screen and (max-width: 767px) {

    .p-menu1__pageSubList :where(ul li:not(:last-child)),
    .p-menu1__pageSubList :where(dl div:not(:last-child) dd),
    .p-menu1__pageSubList :where(dl div:last-child dd:not(:last-child)) {
      border-bottom: solid 1px #FFF;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {

    .p-menu1__pageSubList :where(ul li:not(:last-child)),
    .p-menu1__pageSubList :where(dl div:not(:last-child) dd),
    .p-menu1__pageSubList :where(dl div:last-child dd:not(:last-child)) {
      border-bottom: solid 1px #FFF;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {

    .p-menu1__pageSubList :where(dl dd:not(:has(figure)):not(:last-child)),
    .p-menu1__pageSubList :where(ul li:not(:has(figure)):not(:last-child)) {
      margin-bottom: var(--mc-layout--gap);
    }
  }

  @media screen and (min-width: 1440px) {

    .p-menu1__pageSubList :where(dl dd:not(:has(figure)):not(:last-child)),
    .p-menu1__pageSubList :where(ul li:not(:has(figure)):not(:last-child)) {
      margin-bottom: var(--mc-layout--gap);
    }
  }

  @media screen and (min-width: 1200px) and (max-width: 1439px) {

    .p-menu1__pageSubList :where(dl dd > a:not(:has(figure)))::after,
    .p-menu1__pageSubList :where(ul li > a:not(:has(figure)))::after {
      content: "";
      display: inline-block;
      aspect-ratio: 1;
      width: 16px;
      margin-left: 1em;
      vertical-align: calc(-0.2 * var(--base-unit));
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_2.svg") no-repeat center/contain;
    }
  }

  @media screen and (min-width: 1440px) {

    .p-menu1__pageSubList :where(dl dd > a:not(:has(figure)))::after,
    .p-menu1__pageSubList :where(ul li > a:not(:has(figure)))::after {
      content: "";
      display: inline-block;
      aspect-ratio: 1;
      width: 16px;
      margin-left: 1em;
      vertical-align: calc(-0.2 * var(--base-unit));
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_2.svg") no-repeat center/contain;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageSubList :where(dl > div:nth-child(1)) {
      display: grid;
      grid-template-columns: repeat(2, auto);
      /* grid-template-rows: repeat(2, auto) 1fr; */
      gap: var(--mc-layout--gap);
      border-right: solid 1px #FFF;
      padding-right: calc(var(--mc-layout--gap) * 2);
      margin-right: calc(var(--mc-layout--gap) * 2);
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageSubList :where(dl > div:nth-child(1)) {
      display: grid;
      grid-template-columns: repeat(2, auto);
      /* grid-template-rows: repeat(2, auto) 1fr; */
      gap: var(--mc-layout--gap);
      border-right: solid 1px #FFF;
      padding-right: calc(var(--mc-layout--gap) * 2);
      margin-right: calc(var(--mc-layout--gap) * 2);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageSubList :where(dl > div:nth-child(1) dt) {
      justify-self: start;
      grid-column: 1/-1;
      margin-bottom: calc(30px - var(--mc-layout--gap));
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageSubList :where(dl > div:nth-child(1) dt) {
      justify-self: start;
      grid-column: 1/-1;
      margin-bottom: calc(30px - var(--mc-layout--gap));
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageSubList :where(dl > div:nth-child(3)) {
      border-left: solid 1px #FFF;
      padding-left: calc(var(--mc-layout--gap) * 2);
      margin-left: calc(var(--mc-layout--gap) * 2);
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageSubList :where(dl > div:nth-child(3)) {
      border-left: solid 1px #FFF;
      padding-left: calc(var(--mc-layout--gap) * 2);
      margin-left: calc(var(--mc-layout--gap) * 2);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageSubList :where(dl > div:nth-child(3) dd:not(:last-child)) {
      margin-bottom: var(--mc-layout--gap);
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageSubList :where(dl > div:nth-child(3) dd:not(:last-child)) {
      margin-bottom: var(--mc-layout--gap);
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageItem--active .p-menu1__pageSubList {
      grid-template-rows: 1fr;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageItem--active .p-menu1__pageSubList {
      grid-template-rows: 1fr;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageItem--active .p-menu1__pageSubListInner {
      transition-delay: 0s;
      visibility: visible;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageItem--active .p-menu1__pageSubListInner {
      transition-delay: 0s;
      visibility: visible;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageLink2Cover {
      border-bottom: solid 1px #FFF;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageLink2Cover {
      border-bottom: solid 1px #FFF;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageLink2Cover {
      margin-bottom: 40px;
      font-weight: 500;
      letter-spacing: 0.1em;
      font-size: 28px;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageLink2Cover {
      margin-bottom: 40px;
      font-weight: 500;
      letter-spacing: 0.1em;
      font-size: 28px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageLink2Cover :where(a) {
      display: inline-grid;
      grid-template-columns: repeat(3, auto);
      gap: 0 8px;
      align-items: center;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageLink2Cover :where(a) {
      display: inline-grid;
      grid-template-columns: repeat(3, auto);
      gap: 0 8px;
      align-items: center;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageLink2Cover :where(a)::after {
      content: "";
      aspect-ratio: 1;
      width: 24px;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_1.svg") no-repeat center/contain;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageLink2Cover :where(a)::after {
      content: "";
      aspect-ratio: 1;
      width: 24px;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_1.svg") no-repeat center/contain;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageLink2Location {
      order: 99;
      border-top: solid 1px #FFF;
      border-bottom-style: none;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageLink2Location {
      order: 99;
      border-top: solid 1px #FFF;
      border-bottom-style: none;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageLink2Location {
      display: inline-grid;
      grid-template-columns: repeat(2, auto);
      gap: 0 8px;
      align-items: center;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageLink2Location {
      display: inline-grid;
      grid-template-columns: repeat(2, auto);
      gap: 0 8px;
      align-items: center;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageLink2Location::before {
      content: "";
      display: block;
      aspect-ratio: 1;
      width: 24px;
      background-color: #FFF;
      mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_pin_1.svg") no-repeat center/contain;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageLink2Location::before {
      content: "";
      display: block;
      aspect-ratio: 1;
      width: 24px;
      background-color: #FFF;
      mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_pin_1.svg") no-repeat center/contain;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageSearch {
      padding-left: var(--mc-layout--offset--of-outer-left);
      padding-right: var(--mc-layout--offset--of-outer-right);
      background-color: #f7f7f7;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageSearch {
      padding-left: var(--mc-layout--offset--of-outer-left);
      padding-right: var(--mc-layout--offset--of-outer-right);
      background-color: #f7f7f7;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageSearch {
      padding-top: calc(24 * var(--mc--quantity--of-design--horizontal));
      padding-bottom: calc(24 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageSearch {
      padding-top: 24px;
      padding-bottom: 24px;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageSearch {
      visibility: hidden;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageSearch {
      visibility: hidden;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageSearch {
      display: none;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageSearch {
      display: none;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__page--active .p-menu1__pageSearch {
      visibility: visible;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__page--active .p-menu1__pageSearch {
      visibility: visible;
    }
  }
  

  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageTarminal {
      display: none;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-menu1__pageTarminal {
      display: none;
    }
  }

  @media screen and (min-width: 1200px) and (max-width: 1439px) {

    /* :where(.p-menu1__pageCategory:has(a:hover))+.p-menu1__pageSubList,
    .p-menu1__pageSubList:hover,
    :where(.p-menu1__pageCategory:has(a:focus))+.p-menu1__pageSubList,
    .p-menu1__pageSubList:has(a:focus) { */
    :where(.p-menu1__pageCategory:has(a:hover))+.p-menu1__pageSubList:not(.is-hover--disabled),
    .p-menu1__pageSubList:not(.is-hover--disabled):hover,
    :where(.p-menu1__pageCategory:has(a:focus))+.p-menu1__pageSubList:not(.is-hover--disabled),
    .p-menu1__pageSubList:not(.is-hover--disabled):has(a:focus){
      transition-delay: 0;
      transition-duration: 0s, 0.5s;
      left: 0;
      opacity: 1;
    }
  }

  @media screen and (min-width: 1440px) {

    /* :where(.p-menu1__pageCategory:has(a:hover))+.p-menu1__pageSubList,
    .p-menu1__pageSubList:hover,
    :where(.p-menu1__pageCategory:has(a:focus))+.p-menu1__pageSubList,
    .p-menu1__pageSubList:has(a:focus) { */
    :where(.p-menu1__pageCategory:has(a:hover))+.p-menu1__pageSubList:not(.is-hover--disabled),
    .p-menu1__pageSubList:not(.is-hover--disabled):hover,
    :where(.p-menu1__pageCategory:has(a:focus))+.p-menu1__pageSubList:not(.is-hover--disabled),
    .p-menu1__pageSubList:not(.is-hover--disabled):has(a:focus){
      transition-delay: 0;
      transition-duration: 0s, 0.5s;
      left: 0;
      opacity: 1;
    }
  }

  @media screen and (min-width: 1200px) {
    .p-menu1__news-btn-list {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      width: 800px;
      gap: 24px;
    }
    .p-menu1__news-btn-list>li>a {
      width: 250px;
      border: 1px solid #ffffff;
      flex-direction: column;
      font-size: calc(2* var(--base-unit));
      min-height: calc(8* var(--base-unit));
      padding-left: 20px;
      padding-bottom: 0;
      transition: all 0.5s ease 0s;
      background: none;
    }
    .p-menu1__news-btn-list>li>a::after {
      display: block;
      width: calc(2* var(--base-unit));
      height: calc(2* var(--base-unit));
      position: absolute;
      right: calc(3* var(--base-unit));
      top: 0;
      bottom: 0;
      margin: auto 0;
    }
    .p-menu1__news-btn-list>li>a:hover {
      background: #a22041;
      border-color:rgba(0, 0, 0, 0);
      transition: all 0.3s ease 0s;
    }
    .p-menu1__sustainapageList {
      display: grid;
      grid-template-columns: 1fr 1fr;
    }
    .p-menu1__sustainapageList-inner,
    .p-menu1__irpageList-inner {
      display: grid;
      grid-template-columns: 1fr 1fr;
      column-gap: calc(1 * var(--base-unit));
    }
    .p-menu1__sustainapageList02 {
      padding-left: 50px;
      border-left: 1px solid #fff;
      padding-bottom: 50px;
    }
    .p-menu1__pageSubList .p-menu1__sustainapageList .p-menu1__sustainapageLis01 :where(ul li > a)::after {
      content: none;
    }
    .p-menu1__sustainapageList .p-link01__ico {
      filter: brightness(0) invert(1);
    }
    .p-menu1__sustainapageLink-hd,
    .p-menu1__ir-pageLink-hd {
      display: inline-grid;
      grid-template-columns: repeat(3, auto);
      gap: 0 10px;
      align-items: center;
      margin-bottom: 30px;
      font-weight: 400;
      letter-spacing: 0.03em;
      font-size: 24px;
    }
    .p-menu1__sustainapageLink-hd::before,
    .p-menu1__ir-pageLink-hd::before {
      content: "";
      aspect-ratio: 1;
      border-radius: 100vw;
      width: 8px;
      background-color: #BF0C0C;
    }
    .p-menu1__sustainapageLink-hd--arrow a,
    .p-menu1__ir-pageLink-hd a {
      display: inline-grid;
      grid-template-columns: repeat(2, auto);
      gap: 8px;
    }
    .p-menu1__sustainapageLink-hd--arrow a::after,
    .p-menu1__ir-pageLink-hd a::after {
      content: "";
      aspect-ratio: 1;
      width: 24px;
      background: url(https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_1.svg) no-repeat center / contain;
    }
    
    .p-menu1__ir-pageList {
      width: fit-content;
      display: grid;
      grid-template-columns: auto auto auto auto;
    }
    .p-menu1__ir-pageList01 {
      width: fit-content;
      padding-right: 50px;
      padding-bottom: 50px;
    }
    /* .p-menu1__ir-pageList01:nth-of-type(2), */
    .p-menu1__ir-pageList01:nth-of-type(4) {
      padding-left: 50px;
    }
    .p-menu1__ir-pageList01:nth-of-type(1),
    .p-menu1__ir-pageList01:nth-of-type(3) {
      border-right: 1px solid #fff;
    }
    .p-menu1__ir-imagePanel {
      width: 287px;
    }
    .p-menu1__ir-imagePanel dd {
      margin-bottom: 20px;
    }
    .p-menu1__sustainapageList--dao,
    .p-menu1__ir-pageList--ii {
      width: 282px;
      height: 89px;
      margin-top: 50px;
      place-content: center;
      grid-row: 1 / 2;
      overflow: hidden;
      box-sizing: border-box;
      background: #fff;
    }
    .p-menu1__ir-pageList--ii {
      margin-top: 0;
      }
    .p-menu1__sustainapageList--dao a,
    .p-menu1__ir-pageList--ii a {
      display: block;
    }
    .p-menu1__sustainapageList--dao img,
    .p-menu1__ir-pageList--ii img {
      object-fit: contain;
      width: 100%;
      transition: 0.3s ease 0s;
    }
    .p-menu1__sustainapageList--dao a:hover img,
    .p-menu1__ir-pageList--ii a:hover img {
      transform: scale(1.1);
      transition: 0.3s ease 0s;
    }
    .p-menu1__sustainapageList--dao a::before,
    .p-menu1__sustainapageList--dao a::after,
    .p-menu1__ir-pageList--ii a::before,
    .p-menu1__ir-pageList--ii a::after {
      content: none;
    }

  }
  
  @media screen and (max-width: 1199px) {
    .p-menu1__pageSubList .p-menu1__external-link a::before {
      content: none;
    }
    .p-menu1__sustainapageList .p-link01__ico {
      filter: brightness(0) invert(1);
    }
    .p-menu1__sustainapageLink-hd {
      border-bottom: solid 1px #FFF;
    }
    .p-menu1__sustainapageList02,
    .p-menu1__sustainapageList03 {
      border-top: solid 1px #FFF;
    }
    
    .p-menu1__ir-imagePanel dd {
      border-top: solid 1px #FFF;
    }

    .p-menu1__irpageLink-hd {
      border-top: solid 1px #FFF;
      border-bottom: solid 1px #FFF;
    }

  }

}

@layer component {
  .c-language1 :where(fieldset) {
    display: contents;
  }

  .c-language1 :where(legend) {
    width: 0;
    height: 0;
    overflow: hidden;
    position: absolute;
    clip: rect(1px, 1px, 1px, 1px);
  }

 @media screen and (max-width: 767px) {
    .c-language1__state {
      cursor: pointer;
      display: grid;
      grid-template-columns: repeat(2, auto);
      grid-template-rows: 100%;
      aspect-ratio: 1;
    }
  }

  .p-menu1__pageLink-item {
    display: inline-grid;
    grid-auto-flow: column;
    align-items: center;
    gap: 0 8px;
  }
  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-language1__state {
      cursor: pointer;
      display: grid;
      grid-template-columns: repeat(2, auto);
      grid-template-rows: 100%;
      aspect-ratio: 1;
    }
  }

 @media screen and (max-width: 767px) {
    .c-language1__state {
      gap: 0 calc(4 * var(--mc--quantity--of-design--horizontal));
      width: calc(60 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-language1__state {
      gap: 0 4px;
      width: 60px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-language1__state {
      display: none;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-language1__state {
      display: none;
    }
  }

 @media screen and (max-width: 767px) {
    .c-language1__state :where(dt) {
      width: 0;
      height: 0;
      overflow: hidden;
      position: absolute;
      clip: rect(1px, 1px, 1px, 1px);
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-language1__state :where(dt) {
      width: 0;
      height: 0;
      overflow: hidden;
      position: absolute;
      clip: rect(1px, 1px, 1px, 1px);
    }
  }

 @media screen and (max-width: 767px) {
    .c-language1__state :where(dd) {
      align-self: center;
      justify-self: end;
      font-weight: 500;
      letter-spacing: 0.02em;
      text-transform: uppercase;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-language1__state :where(dd) {
      align-self: center;
      justify-self: end;
      font-weight: 500;
      letter-spacing: 0.02em;
      text-transform: uppercase;
    }
  }

 @media screen and (max-width: 767px) {
    .c-language1__state :where(dd) {
      font-size: calc(15 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-language1__state :where(dd) {
      font-size: 15px;
    }
  }

 @media screen and (max-width: 767px) {
    .c-language1__state::after {
      content: "";
      align-self: center;
      justify-self: start;
      display: block;
      aspect-ratio: 1;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_triangle_1.svg") no-repeat center/contain;
      scale: -1;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-language1__state::after {
      content: "";
      align-self: center;
      justify-self: start;
      display: block;
      aspect-ratio: 1;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_triangle_1.svg") no-repeat center/contain;
      scale: -1;
    }
  }

 @media screen and (max-width: 767px) {
    .c-language1__state::after {
      width: calc(16 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-language1__state::after {
      width: 16px;
    }
  }

 @media screen and (max-width: 767px) {
    .c-language1__state--active::after {
      scale: 1;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-language1__state--active::after {
      scale: 1;
    }
  }
  .c-language1__control li:not(.lang--current) {
    color: #666;
  }
 @media screen and (max-width: 767px) {
    .c-language1__control {
      position: absolute;
      transition-property: opacity, left;
      transition-delay: 0s, 0.5s;
      transition-duration: 0.5s, 0s;
      opacity: 0;
      left: -100vw;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-language1__control {
      position: absolute;
      transition-property: opacity, left;
      transition-delay: 0s, 0.5s;
      transition-duration: 0.5s, 0s;
      opacity: 0;
      left: -100vw;
    }
  }

 @media screen and (max-width: 767px) {

    .c-language1__control:has(input:focus),
    .c-language1__control--active {
      transition-delay: 0s;
      transition-duration: 1s, 0s;
      opacity: 1;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {

    .c-language1__control:has(input:focus),
    .c-language1__control--active {
      transition-delay: 0s;
      transition-duration: 1s, 0s;
      opacity: 1;
    }
  }

 @media screen and (max-width: 767px) {

    .c-language1__control:has(input:focus),
    .c-language1__control--active {
      left: -12vw;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {

    .c-language1__control:has(input:focus),
    .c-language1__control--active {
      left: -45px;
    }
  }

 @media screen and (max-width: 767px) {
    .c-language1__control :where(ul) {
      font-weight: 500;
      letter-spacing: 0.04em;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-language1__control :where(ul) {
      font-weight: 500;
      letter-spacing: 0.04em;
    }
  }

 @media screen and (max-width: 767px) {
    .c-language1__control :where(ul) {
      width: calc(150 * var(--mc--quantity--of-design--horizontal));
      font-size: calc(16 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-language1__control :where(ul) {
      width: 150px;
      font-size: 16px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-language1__control :where(ul:not(li.lang--current)) {
      display: flex;
      flex-flow: row nowrap;
      gap: 0 8px;
      border-bottom: solid 1px #D5D5D5;
      padding-bottom: 8px;
      height: 24px;
      font-weight: 200;
      font-size: 14px;
      letter-spacing: 0.03em;
    }
    
    .c-language1__control ul li.lang--current {
      font-weight: 500;
    }
    .c-language1__control ul li.en.lang--current {
      font-weight: 400;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-language1__control :where(ul:not(li.lang--current)) {
      display: flex;
      flex-flow: row nowrap;
      gap: 0 8px;
      border-bottom: solid 1px #D5D5D5;
      padding-bottom: 8px;
      height: 24px;
      font-weight: 200;
      font-size: 14px;
      letter-spacing: 0.03em;
    }    
    .c-language1__control ul li.lang--current {
      font-weight: 500;
    }
    .c-language1__control ul li.en.lang--current {
      font-weight: 400;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-language1__control :where(ul > li) {
      display: flex;
      flex-flow: row nowrap;
      align-items: center;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-language1__control :where(ul > li) {
      display: flex;
      flex-flow: row nowrap;
      align-items: center;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-language1__control :where(ul > li:not(:last-child))::after {
      content: "";
      display: block;
      width: 1px;
      height: 10px;
      margin-left: 8px;
      background-color: #D5D5D5;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-language1__control :where(ul > li:not(:last-child))::after {
      content: "";
      display: block;
      width: 1px;
      height: 10px;
      margin-left: 8px;
      background-color: #D5D5D5;
    }
  }

  .c-language1__control :where(input[type=radio]) {
    width: 0;
    height: 0;
    overflow: hidden;
    position: absolute;
    clip: rect(1px, 1px, 1px, 1px);
  }

  .c-language1__control :where(input[type=submit]):not(:focus):not(:active) {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute !important;
    width: 1px;
    word-wrap: normal !important;
    /* Many screen reader and browser combinations announce broken words as they would appear visually. */
  }

  .c-language1__control :where(input[type=submit]):focus {
    background-color: #000;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px #000;
    clip: auto !important;
    -webkit-clip-path: none;
    clip-path: none;
    color: #fff;
    display: block;
    font-size: 0.875rem;
    font-weight: 700;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
  }

  .c-language1__control :where(label) {
    cursor: pointer;
    color: #333333;
  }

 @media screen and (max-width: 767px) {
    .c-language1__control :where(label) {
      display: flex;
      flex-flow: column nowrap;
      align-items: center;
      justify-content: center;
      box-sizing: border-box;
      aspect-ratio: 150/50;
      border: solid 1px #D5D5D5;
      background-color: #070707;
      color: #FFF;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-language1__control :where(label) {
      display: flex;
      flex-flow: column nowrap;
      align-items: center;
      justify-content: center;
      box-sizing: border-box;
      aspect-ratio: 150/50;
      border: solid 1px #D5D5D5;
      background-color: #070707;
      color: #FFF;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-language1__control :where(label) {
      display: block;
      position: relative;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-language1__control :where(label) {
      display: block;
      position: relative;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-language1__control :where(label)::after {
      content: "";
      display: block;
      aspect-ratio: 1;
      border-radius: 100vw;
      width: 7px;
      margin-left: auto;
      margin-right: auto;
      position: absolute;
      left: 0;
      right: 0;
      bottom: -17px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-language1__control :where(label)::after {
      content: "";
      display: block;
      aspect-ratio: 1;
      border-radius: 100vw;
      width: 7px;
      margin-left: auto;
      margin-right: auto;
      position: absolute;
      left: 0;
      right: 0;
      bottom: -17px;
    }
  }

 @media screen and (max-width: 767px) {

    .c-language1__control :where(label):hover,
    .c-language1__control :where(input[type=radio]:checked + label),
    .c-language1__control :where(input[type=radio]:focus + label) {
      background-color: #FFF;
      color: #333333;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {

    .c-language1__control :where(label):hover,
    .c-language1__control :where(input[type=radio]:checked + label),
    .c-language1__control :where(input[type=radio]:focus + label) {
      background-color: #FFF;
      color: #333333;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {

    .c-language1__control :where(label):hover::after,
    .c-language1__control :where(input[type=radio]:checked + label)::after,
    .c-language1__control :where(input[type=radio]:focus + label)::after {
      background-color: #A22041;
    }
  }

  @media screen and (min-width: 1440px) {

    .c-language1__control :where(label):hover::after,
    .c-language1__control :where(input[type=radio]:checked + label)::after,
    .c-language1__control :where(input[type=radio]:focus + label)::after {
      background-color: #A22041;
    }
  }

  .c-language1__control :where(input[type=radio]:focus + label) {
    outline: 2px solid #000;
    outline-offset: 1px;
    border-radius: 2px;
  }
}

@layer component {
  .c-categorymap1 {
    border-top: solid 1px #D5D5D5;
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-categorymap1 {
      padding-bottom: 40px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-categorymap1 {
      padding-top: 60px;
      padding-bottom: 60px;
      padding-left: calc(var(--mc-layout--offset--of-inner-left) + var(--mc-layout--offset--of-outer-left));
      padding-right: calc(var(--mc-layout--offset--of-inner-right) + var(--mc-layout--offset--of-outer-right));
    }
  }

  @media screen and (min-width: 1440px) {
    .c-categorymap1 {
      padding-top: 60px;
      padding-bottom: 60px;
      padding-left: calc(var(--mc-layout--offset--of-inner-left) + var(--mc-layout--offset--of-outer-left));
      padding-right: calc(var(--mc-layout--offset--of-inner-right) + var(--mc-layout--offset--of-outer-right));
    }
  }

  :where(.c-categorymap1 > div) {
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.5;
  }

 @media screen and (max-width: 767px) {
    :where(.c-categorymap1 > div) {
      font-size: calc(17 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    :where(.c-categorymap1 > div) {
      font-size: 17px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    :where(.c-categorymap1 > div) {
      font-size: 20px;
    }
  }

  @media screen and (min-width: 1440px) {
    :where(.c-categorymap1 > div) {
      font-size: 20px;
    }
  }

  :where(.c-categorymap1 > div > a) {
    align-items: center;
  }

 @media screen and (max-width: 767px) {
    :where(.c-categorymap1 > div > a) {
      display: block grid;
      grid-template-columns: auto 1fr;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    :where(.c-categorymap1 > div > a) {
      display: block grid;
      grid-template-columns: auto 1fr;
    }
  }

 @media screen and (max-width: 767px) {
    :where(.c-categorymap1 > div > a) {
      column-gap: calc(10 * var(--mc--quantity--of-design--horizontal));
      height: calc(65 * var(--mc--quantity--of-design--horizontal));
      padding-left: var(--mc-layout--offset--of-outer-left);
      padding-right: var(--mc-layout--offset--of-outer-right);
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    :where(.c-categorymap1 > div > a) {
      column-gap: 10px;
      height: 65px;
      padding-left: var(--mc-layout--offset--of-outer-left);
      padding-right: var(--mc-layout--offset--of-outer-right);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    :where(.c-categorymap1 > div > a) {
      display: inline grid;
      grid-template-columns: repeat(2, auto);
      column-gap: 16px;
    }
  }

  @media screen and (min-width: 1440px) {
    :where(.c-categorymap1 > div > a) {
      display: inline grid;
      grid-template-columns: repeat(2, auto);
      column-gap: 16px;
    }
  }

  :where(.c-categorymap1 > div > a)::before {
    content: "";
    aspect-ratio: 1;
    background-color: #000;
    mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_return_1.svg") no-repeat center/contain;
  }

 @media screen and (max-width: 767px) {
    :where(.c-categorymap1 > div > a)::before {
      width: calc(20 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    :where(.c-categorymap1 > div > a)::before {
      width: 20px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    :where(.c-categorymap1 > div > a)::before {
      width: 1em;
    }
  }

  @media screen and (min-width: 1440px) {
    :where(.c-categorymap1 > div > a)::before {
      width: 1em;
    }
  }

  .c-categorymap1 :where(menu) {
    display: grid;
    border-top: solid 1px #D5D5D5;
    border-bottom: solid 1px #D5D5D5;
    font-weight: 500;
    letter-spacing: 0.1em;
  }

 @media screen and (max-width: 767px) {
    .c-categorymap1 :where(menu) {
      margin-bottom: calc(40 * var(--mc--quantity--of-design--horizontal));
      line-height: 1.5384615385;
      font-size: calc(13 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-categorymap1 :where(menu) {
      line-height: 1.5384615385;
      font-size: 13px;
    }
  }

 @media screen and (max-width: 767px) {
    .c-categorymap1 :where(menu) {
      grid-template-columns: repeat(2, 1fr);
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-categorymap1 :where(menu) {
      grid-template-columns: repeat(2, 1fr);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-categorymap1 :where(menu) {
      grid-template-columns: repeat(4, 1fr);
      margin-top: 17px;
      line-height: 1.5;
      font-size: 16px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-categorymap1 :where(menu) {
      grid-template-columns: repeat(4, 1fr);
      margin-top: 17px;
      line-height: 1.5;
      font-size: 16px;
    }
  }

 @media screen and (max-width: 767px) {

    .c-categorymap1 :where(li):nth-child(2n):not(:last-child),
    .c-categorymap1 :where(li):nth-last-child(n+3) {
      border-bottom: solid 1px #D5D5D5;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {

    .c-categorymap1 :where(li):nth-child(2n):not(:last-child),
    .c-categorymap1 :where(li):nth-last-child(n+3) {
      border-bottom: solid 1px #D5D5D5;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-categorymap1 :where(li) {
      border-bottom: solid 1px #D5D5D5;
    }
    .c-categorymap1 :where(li):nth-last-child(1) {
      border-bottom-width: 0px;
    }
    .c-categorymap1 :where(li):nth-last-child(2):not(:nth-child(4n)) {
      border-bottom-width: 0px;
    }
    .c-categorymap1 :where(li):nth-last-child(3):not(:nth-child(4n), :nth-child(4n+3)) {
      border-bottom-width: 0px;
    }
    .c-categorymap1 :where(li):nth-last-child(4):not(:nth-child(4n), :nth-child(4n+3), :nth-child(4n+2)) {
      border-bottom-width: 0px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-categorymap1 :where(li) {
      border-bottom: solid 1px #D5D5D5;
    }
    .c-categorymap1 :where(li):nth-last-child(1) {
      border-bottom-width: 0px;
    }
    .c-categorymap1 :where(li):nth-last-child(2):not(:nth-child(4n)) {
      border-bottom-width: 0px;
    }
    .c-categorymap1 :where(li):nth-last-child(3):not(:nth-child(4n), :nth-child(4n+3)) {
      border-bottom-width: 0px;
    }
    .c-categorymap1 :where(li):nth-last-child(4):not(:nth-child(4n), :nth-child(4n+3), :nth-child(4n+2)) {
      border-bottom-width: 0px;
    }
  }

  .c-categorymap1 :where(li > a) {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    box-sizing: border-box;
    width: 100%;
    position: relative;
    z-index: 0;
    background-color: rgba(255, 255, 255, 0);
    color: #000;
    transition-property: background-color, color;
    transition-duration: 0.2s;
    transition-timing-function: ease-in;
  }

 @media screen and (max-width: 767px) {
    .c-categorymap1 :where(li > a) {
      column-gap: calc(10 * var(--mc--quantity--of-design--horizontal));
      min-height: calc(54 * var(--mc--quantity--of-design--horizontal));
      padding-left: var(--mc-layout--offset--of-outer-left);
      padding-right: calc(var(--mc-layout--offset--of-outer-right) / 2);
      height: 100%;
    }
    .c-categorymap1 li.is-current > a::before {
      content: "";
      display: block;
      position: absolute;
      width: calc(100% - var(--mc-layout--offset--of-outer-left) - (var(--mc-layout--offset--of-outer-right) / 2));
      height: 4px;
      bottom: -1px;
      left: var(--mc-layout--offset--of-outer-left);
      background: #A22041;
    } 
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-categorymap1 :where(li > a) {
      column-gap: 10px;
      height: 54px;
      padding-left: var(--mc-layout--offset--of-outer-left);
      padding-right: calc(var(--mc-layout--offset--of-outer-right) / 2);
    }
    .c-categorymap1 li.is-current > a::before {
      content: "";
      display: block;
      position: absolute;
      width: calc(100% - var(--mc-layout--offset--of-outer-left) - (var(--mc-layout--offset--of-outer-right) / 2));
      height: 4px;
      bottom: -1px;
      left: var(--mc-layout--offset--of-outer-left);
      background: #A22041;
    }    
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-categorymap1 :where(li > a) {
      column-gap: 10px;
      height: 100%;
      min-height: 65px;
      padding-left: 16px;
      padding-right: 16px;
    }

    .c-categorymap1 li.is-current > a::before {
      content: "";
      display: block;
      position: absolute;
      width: calc(100% - 28px);
      height: 4px;
      bottom: -1px;
      left: 14px;
      background: #A22041;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-categorymap1 :where(li > a) {
      column-gap: 10px;
      height: 100%;
      min-height: 65px;
      padding-left: 16px;
      padding-right: 16px;
    }

    .c-categorymap1 li.is-current > a::before {
      content: "";
      display: block;
      position: absolute;
      width: calc(100% - 28px);
      height: 4px;
      bottom: -1px;
      left: 14px;
      background: #A22041;
    }
  }
  .c-categorymap1 li.is-current > a::before {
    transition: .3s;
  }
  .c-categorymap1 li.is-current > a:hover::before {
    display: none;
    transition: .3s;
  }

  .c-categorymap1 :where(li > a):not([aria-current=page]):hover,
  .c-categorymap1 :where(li > a):focus {
    color: white;
    transition-duration: 0.3s;
    transition-timing-function: ease-out;
    background-color: #A22041;
  }

  .c-categorymap1 :where(li > a):is([aria-current=page])::before {
    content: "";
    display: block;
    margin-left: auto;
    margin-right: auto;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #A22041;
  }

 @media screen and (max-width: 767px) {
    .c-categorymap1 :where(li > a):is([aria-current=page])::before {
      width: calc(100% - var(--mc-layout--offset--of-outer-left) - var(--mc-layout--offset--of-outer-right));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-categorymap1 :where(li > a):is([aria-current=page])::before {
      width: calc(100% - var(--mc-layout--offset--of-outer-left) - var(--mc-layout--offset--of-outer-right));
    }
  }

 @media screen and (max-width: 767px) {
    .c-categorymap1 :where(li > a):is([aria-current=page])::before {
      height: calc(4 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-categorymap1 :where(li > a):is([aria-current=page])::before {
      height: 4px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-categorymap1 :where(li > a):is([aria-current=page])::before {
      width: calc(100% - 2em);
      height: 4px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-categorymap1 :where(li > a):is([aria-current=page])::before {
      width: calc(100% - 2em);
      height: 4px;
    }
  }

  .c-categorymap1 :where(li:not(.is-current) > a)::after {
    content: "";
    justify-self: start;
    aspect-ratio: 1;
    background-color: #000;
    transition-property: background-color;
    transition-duration: 0.2s;
    transition-timing-function: ease-in;
  }

 @media screen and (max-width: 767px) {
    .c-categorymap1 :where(li > a):not([aria-current=page])::after {
      order: -1;
      mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_3.svg") no-repeat center/contain;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-categorymap1 :where(li > a):not([aria-current=page])::after {
      order: -1;
      mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_3.svg") no-repeat center/contain;
    }
  }

 @media screen and (max-width: 767px) {
    .c-categorymap1 :where(li > a):not([aria-current=page])::after {
      width: calc(20 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-categorymap1 :where(li > a):not([aria-current=page])::after {
      width: 20px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-categorymap1 :where(li > a):not([aria-current=page])::after {
      width: 1em;
      mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_1.svg") no-repeat center/contain;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-categorymap1 :where(li > a):not([aria-current=page])::after {
      width: 1em;
      mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_1.svg") no-repeat center/contain;
    }
  }

  .c-categorymap1 :where(li > a):not([aria-current=page]):hover::after,
  .c-categorymap1 :where(li > a):focus::after {
    transition-duration: 0.3s;
    transition-timing-function: ease-out;
    background-color: #FFF;
  }

  .c-sitemap1 {
    background-color: #000;
    color: #FFF;
    grid-row: -1/-2;
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-sitemap1__inner {
      padding-left: calc(var(--mc-layout--offset--of-inner-left) + var(--mc-layout--offset--of-outer-left));
      padding-right: calc(var(--mc-layout--offset--of-inner-right) + var(--mc-layout--offset--of-outer-right));
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-sitemap1__inner {
      width: fit-content;
      margin-left: auto;
      margin-right: auto;
      padding-inline: 60px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-sitemap1__inner {
      width: fit-content;
      margin-left: auto;
      margin-right: auto;
      padding-inline: 60px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-sitemap1__content {
      display: grid;
      grid-template-columns: 100%;
      grid-template-rows: repeat(2, auto);
      width: 100%;
      padding-left: 20px;
      padding-right: 20px;
      box-sizing: border-box;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-sitemap1__content {
      display: grid;
      grid-template-columns: 100%;
      grid-template-rows: repeat(2, auto);
      width: 100%;
    }
  }

 @media screen and (max-width: 767px) {
    .c-sitemap1__content :where(menu) {
      grid-row: 3/4;
      z-index: 1;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-sitemap1__content :where(menu) {
      grid-row: 3/4;
      z-index: 1;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-sitemap1__content :where(menu) {
      justify-self: center;
      display: grid;
      grid-template-columns: repeat(6, auto);
      grid-template-rows: auto;
      column-gap: 40px;
    }
    .c-sitemap1__content--en :where(menu) {
      grid-template-columns: repeat(5, auto);
    }
    .c-sitemap1__content--zh :where(menu) {
      grid-template-columns: repeat(4, auto);
      column-gap: 80px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-sitemap1__content :where(menu) {
      justify-self: center;
      display: grid;
      grid-template-columns: repeat(6, auto);
      grid-template-rows: auto;
      column-gap: 40px;
    }
    .c-sitemap1__content--en :where(menu) {
      grid-template-columns: repeat(5, auto);
    }
    .c-sitemap1__content--zh :where(menu) {
      grid-template-columns: repeat(4, auto);
      column-gap: 80px;
    }
  }

  .c-sitemap1__content :where(menu div) {
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.6;
  }

 @media screen and (max-width: 767px) {
    .c-sitemap1__content :where(menu div) {
      border-bottom: solid 1px #FFF;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-sitemap1__content :where(menu div) {
      border-bottom: solid 1px #FFF;
    }
  }

 @media screen and (max-width: 767px) {
    .c-sitemap1__content :where(menu div) {
      font-size: calc(16 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-sitemap1__content :where(menu div) {
      font-size: 16px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-sitemap1__content :where(menu div) {
      font-size: 20px;
      margin-bottom: 24px;
    }
    .c-sitemap1__content :where(menu div.mT50) {
      margin-top: 50px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-sitemap1__content :where(menu div) {
      font-size: 20px;
      margin-bottom: 24px;
    }
    .c-sitemap1__content :where(menu div.mT50) {
      margin-top: 50px;
    }
  }

 @media screen and (max-width: 767px) {
    .c-sitemap1__content :where(menu ul:not(.c-sitemap__list-recruit)) {
      display: none;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-sitemap1__content :where(menu ul:not(.c-sitemap__list-recruit)) {
      display: none;
    }
  }

  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-sitemap1__content :where(menu ul) {
      font-weight: 400;
      letter-spacing: 0.03em;
      font-size: 16px;
      line-height: 1.8;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-sitemap1__content :where(menu ul) {
      font-weight: 400;
      letter-spacing: 0.03em;
      font-size: 16px;
      line-height: 1.8;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-sitemap1__content :where(menu ul > li:not(:last-child)) {
      margin-bottom: 16px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-sitemap1__content :where(menu ul > li:not(:last-child)) {
      margin-bottom: 16px;
    }
  }

 @media screen and (max-width: 767px) {
    .c-sitemap1__content :where(menu a) {
      display: grid;
      grid-template-columns: auto 1fr;
      align-items: center;
      padding: 1em;
      background: linear-gradient(#fff, #fff) 0 100%/0 1px no-repeat;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-sitemap1__content :where(menu a) {
      display: grid;
      grid-template-columns: auto 1fr;
      align-items: center;
      padding: 1em;
      background: linear-gradient(#fff, #fff) 0 100%/0 1px no-repeat;
    }
  }

 @media screen and (max-width: 767px) {
    .c-sitemap1__content :where(menu a) {
      column-gap: calc(10 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-sitemap1__content :where(menu a) {
      column-gap: 10px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-sitemap1__content :where(menu a) {
     
      position: relative;
      padding-bottom: .3em;
      background: linear-gradient(#fff, #fff) 0 100%/0 1px no-repeat;
      transition: background .4s;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-sitemap1__content :where(menu a) {
     
      position: relative;
      padding-bottom: .3em;
      background: linear-gradient(#fff, #fff) 0 100%/0 1px no-repeat;
      transition: background .4s;
    }
  }


 @media screen and (max-width: 767px) {
    .c-sitemap1__content :where(menu a)::before {
      aspect-ratio: 1;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_3.svg") no-repeat center/contain;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-sitemap1__content :where(menu a)::before {
      aspect-ratio: 1;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_3.svg") no-repeat center/contain;
    }
  }

 @media screen and (max-width: 767px) {
    .c-sitemap1__content :where(menu a)::before {
      width: calc(24 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-sitemap1__content :where(menu a)::before {
      width: 24px;
    }
  }


  
  @media screen and (min-width: 1440px) {
   
    .c-sitemap1__content :where(menu a.no-arrow)::after {
      background: none;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-sitemap1__content :where(menu a)::after {
      display: inline-block;
      content: "";
      aspect-ratio: 1;
      width: 16px;
      translate: 0 0.1em;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_2.svg") no-repeat center/contain;
      margin-left: 0.5em;
    }
    .c-sitemap1__content :where(menu a.no-arrow)::after {
      background: none;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-sitemap1__content :where(menu a)::after {
      display: inline-block;
      content: "";
      aspect-ratio: 1;
      width: 16px;
      translate: 0 0.1em;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_2.svg") no-repeat center/contain;
      margin-left: 0.5em;
    }
    .c-sitemap1__content :where(menu a.no-arrow)::after {
      background: none;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-sitemap1__content :where(menu a):hover {
      background-size: 100% 1px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-sitemap1__content :where(menu a):hover {
      background-size: 100% 1px;
    }
  }

 @media screen and (max-width: 767px) {
    .c-sitemap1__top {
      width: fit-content;
      margin-left: auto;
      margin-right: auto;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-sitemap1__top {
      width: fit-content;
      margin-left: auto;
      margin-right: auto;
    }
  }

 @media screen and (max-width: 767px) {
    .c-sitemap1__top {
      padding-top: calc(24 * var(--mc--quantity--of-design--horizontal));
      padding-bottom: calc(24 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-sitemap1__top {
      padding-top: 24px;
      padding-bottom: 32px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-sitemap1__top {
      justify-self: center;
      padding-top: 80px;
      padding-bottom: 80px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-sitemap1__top {
      justify-self: center;
      padding-top: 80px;
      padding-bottom: 80px;
    }
  }

  .c-sitemap1__top :where(a) {
    color: #FFF;
  }

  .c-sitemap1__top :where(span) {
    overflow: hidden;
    white-space: nowrap;
    text-indent: 100%;
    display: block;
    aspect-ratio: calc(var(--mc-num-logo-width-original) - var(--mc-num-logo-offset-top-original) - var(--mc-num-logo-offset-bottom-original))/calc(var(--mc-num-logo-height-original) - var(--mc-num-logo-offset-left-original) - var(--mc-num-logo-offset-right-original));
    background-color: white;
    mask: var(--mc-str-logo-path) no-repeat center center/calc(var(--mc-num-logo-width-original) / calc(var(--mc-num-logo-width-original) - var(--mc-num-logo-offset-top-original) - var(--mc-num-logo-offset-bottom-original)) * 100%);
  }

 @media screen and (max-width: 767px) {
    .c-sitemap1__top :where(span) {
      height: calc(34 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-sitemap1__top :where(span) {
      height: calc(calc(var(--mc-num-logo-height-original) - var(--mc-num-logo-offset-left-original) - var(--mc-num-logo-offset-right-original)) * 0.7826086957 * 1px);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-sitemap1__top :where(span) {
      height: calc(calc(var(--mc-num-logo-height-original) - var(--mc-num-logo-offset-left-original) - var(--mc-num-logo-offset-right-original)) * 1.3913043478 * 1px);
    }
  }

  @media screen and (min-width: 1440px) {
    .c-sitemap1__top :where(span) {
      height: calc(calc(var(--mc-num-logo-height-original) - var(--mc-num-logo-offset-left-original) - var(--mc-num-logo-offset-right-original)) * 1.3913043478 * 1px);
    }
  }

  .c-sitemap1__top--en :where(span) {
    aspect-ratio: 420 / 50;
    background-color: white;
    mask: var(--mc-str-logo-path)no-repeat center center;
  }

 @media screen and (max-width: 767px) {
    .c-sitemap1__top--en :where(span) {
      mask-size: 100%;
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-sitemap1__top--en :where(span) {
      height: 50px;
    }
  }




  @media screen and (min-width: 1200px) {
    .c-sitemap__list-recruit {
      margin-top: 34px;
    }
    .c-sitemap__external-link .p-link01__ico {
      filter: brightness(0) invert(1);
    }
    .c-sitemap__external-link a::after {
      content: none;
    }
  }
  @media screen and (min-width: 768px) and (max-width: 1199px) {
    .c-sitemap__external-link .p-link01__ico {
      filter: brightness(0) invert(1);
    }
    .c-sitemap__external-link a::before {
      content: none;
    }
  }

 @media screen and (max-width: 767px) {
    .c-sitemap__external-link .p-link01__ico {
      filter: brightness(0) invert(1);
    }
    .c-sitemap__external-link a::before {
      content: none;
    }
  }


 @media screen and (max-width: 767px) {
    .c-sitemap1__info {
      padding-left: var(--mc-layout--offset--of-outer-left);
      padding-right: var(--mc-layout--offset--of-outer-right);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-sitemap1__info {
      display: grid;
      grid-template-columns: 100%;
      grid-template-rows: repeat(2, auto);
      row-gap: 80px;
      border-top: solid 1px #707070;
      padding-top: 30px;
      margin-top: 60px;
    }
    .c-sitemap1__info--zh {
      padding: 0 160px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-sitemap1__info {
      display: grid;
      grid-template-columns: 100%;
      grid-template-rows: repeat(2, auto);
      row-gap: 80px;
      border-top: solid 1px #707070;
      padding-top: 30px;
      margin-top: 60px;
    }
    .c-sitemap1__info--zh {
      padding: 0 160px;
    }
  }

  .c-sitemap1__info :where(ul) {
    font-weight: 400;
    letter-spacing: 0.05em;
  }

 @media screen and (max-width: 767px) {
    .c-sitemap1__info :where(ul) {
      display: grid;
    }
    .c-sitemap1__info .c-sitemap1__info-item-col2 {
      grid-column: 1 / 3;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-sitemap1__info :where(ul) {
      display: grid;
    }
  }

 @media screen and (max-width: 767px) {
    .c-sitemap1__info :where(ul) {
      grid-template-columns: repeat(2, auto);
      gap: calc(16 * var(--mc--quantity--of-design--horizontal));
      padding-top: calc(24 * var(--mc--quantity--of-design--horizontal));
      padding-left: var(--mc-layout--offset--of-inner-left);
      padding-right: var(--mc-layout--offset--of-inner-right);
      font-size: calc(13 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-sitemap1__info :where(ul) {
      grid-template-columns: repeat(4, auto);
      gap: 16px;
      padding-top: 32px;
      padding-bottom: 0.5em;
      font-size: 13px;
      row-gap: 1em;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-sitemap1__info :where(ul) {
      grid-row: 2/3;
      justify-self: center;
      display: flex;
      flex-flow: row wrap;
      width: fit-content;
      font-size: 15px;
      row-gap: 1em;
      width: 880px;
      transform: translateX(20px);
    }
    .c-sitemap1__info--en :where(ul) {
      grid-row: 2/3;
      justify-self: center;
      display: flex;
      flex-flow: row wrap;
      width: fit-content;
      font-size: 15px;
      row-gap: 1em;
      /* width: 980px; */
      transform: translateX(40px);
    }
  }

  @media screen and (min-width: 1440px) {
    .c-sitemap1__info :where(ul) {
      grid-row: 2/3;
      justify-self: center;
      display: flex;
      flex-flow: row wrap;
      width: fit-content;
      font-size: 15px;
      row-gap: 1em;
      width: 880px;
      transform: translateX(20px);
    }
    .c-sitemap1__info--en :where(ul) {
      grid-row: 2/3;
      justify-self: center;
      display: flex;
      flex-flow: row wrap;
      width: fit-content;
      font-size: 15px;
      row-gap: 1em;
      width: 980px;
      transform: translateX(40px);
    }
  }
  @media screen and (min-width: 1800px) {
    .c-sitemap1__info :where(ul) {
      grid-row: 2/3;
      justify-self: center;
      display: flex;
      flex-flow: row wrap;
      width: fit-content;
      font-size: 15px;
      row-gap: 1em;
      transform: translateX(0px);
    }
    .c-sitemap1__info--en :where(ul)  {
      grid-row: 2/3;
      justify-self: center;
      display: flex;
      flex-flow: row wrap;
      width: fit-content;
      font-size: 15px;
      row-gap: 1em;
      transform: translateX(0px);
    }
    
  }
  @media screen and (min-width: 1990px) {
    .c-sitemap1__info--en :where(ul)  {
      grid-row: 2/3;
      justify-self: center;
      display: flex;
      flex-flow: row wrap;
      width: fit-content;
      font-size: 15px;
      row-gap: 1em;
      transform: translateX(0px);
    }
  }
  

  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-sitemap1__info :where(ul > li) {
      display: flex;
      flex-flow: row nowrap;
      align-items: center;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-sitemap1__info :where(ul > li) {
      display: flex;
      flex-flow: row nowrap;
      align-items: center;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-sitemap1__info :where(ul > li:not(:last-child))::after {
      content: "";
      display: block;
      width: 1px;
      height: 2em;
      margin-left: 20px;
      margin-right: 20px;
      background-color: #FFF;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-sitemap1__info :where(ul > li:not(:last-child))::after {
      content: "";
      display: block;
      width: 1px;
      height: 2em;
      margin-left: 20px;
      margin-right: 20px;
      background-color: #FFF;
    }
  }

  .c-sitemap1__info :where(div:not([role=heading])) {
    font-weight: 500;
    letter-spacing: 0.1em;
  }

 @media screen and (max-width: 767px) {
    .c-sitemap1__info :where(div:not([role=heading])) {
      margin-top: calc(32 * var(--mc--quantity--of-design--horizontal));
      font-size: calc(17 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-sitemap1__info :where(div:not([role=heading])) {
      margin-top: 16px;
      font-size: 20px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-sitemap1__info :where(div:not([role=heading])) {
      grid-row: 1/2;
      justify-self: end;
      font-size: 20px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-sitemap1__info :where(div:not([role=heading])) {
      grid-row: 1/2;
      justify-self: end;
      font-size: 20px;
    }
  }

  .c-sitemap1__info :where(div > a) {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-auto-flow: column;
    grid-auto-columns: auto;
    align-items: center;
    justify-items: start;
    column-gap: 0.5em;
    box-sizing: border-box;
    background-color: #FFF;
    color: #000;
  }

 @media screen and (max-width: 767px) {
    .c-sitemap1__info :where(div > a) {
      padding: 1em 0.75em;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-sitemap1__info :where(div > a) {
      padding: 1em 0.75em;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-sitemap1__info :where(div > a) {
      aspect-ratio: 240/60;
      width: 240px;
      padding: 1em;
      transition-property: background-color, color;
      transition-duration: 0.2s;
      transition-timing-function: ease-in;
    }
    .c-sitemap1__info--en :where(div > a) {
      aspect-ratio: 304/110;
      width: 304px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-sitemap1__info :where(div > a) {
      aspect-ratio: 240/60;
      width: 240px;
      padding: 1em;
      transition-property: background-color, color;
      transition-duration: 0.2s;
      transition-timing-function: ease-in;
    }
    .c-sitemap1__info--en :where(div > a) {
      aspect-ratio: 304/110;
      width: 304px;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {

    .c-sitemap1__info :where(div > a):focus,
    .c-sitemap1__info :where(div > a):hover {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: #A22041;
      color: #FFF;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {

    .c-sitemap1__info :where(div > a):focus,
    .c-sitemap1__info :where(div > a):hover {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: #A22041;
      color: #FFF;
    }
  }

  @media screen and (min-width: 1440px) {

    .c-sitemap1__info :where(div > a):focus,
    .c-sitemap1__info :where(div > a):hover {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: #A22041;
      color: #FFF;
    }
  }

  .c-sitemap1__info :where(div > a)::before,
  .c-sitemap1__info :where(div > a)::after {
    content: "";
    aspect-ratio: 1;
    background-color: #000;
    width: 1em;
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {

    .c-sitemap1__info :where(div > a)::before,
    .c-sitemap1__info :where(div > a)::after {
      transition-property: background-color;
      transition-duration: 0.2s;
      transition-timing-function: ease-in;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {

    .c-sitemap1__info :where(div > a)::before,
    .c-sitemap1__info :where(div > a)::after {
      transition-property: background-color;
      transition-duration: 0.2s;
      transition-timing-function: ease-in;
    }
  }

  @media screen and (min-width: 1440px) {

    .c-sitemap1__info :where(div > a)::before,
    .c-sitemap1__info :where(div > a)::after {
      transition-property: background-color;
      transition-duration: 0.2s;
      transition-timing-function: ease-in;
    }
  }

  .c-sitemap1__info :where(div > a)::before {
    justify-self: start;
    mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_mail_1.svg") no-repeat center/contain;
  }

  .c-sitemap1__info :where(div > a)::after {
    justify-self: end;
    mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_1.svg") no-repeat center/contain;
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {

    .c-sitemap1__info :where(div > a):focus::before,
    .c-sitemap1__info :where(div > a):hover::before,
    .c-sitemap1__info :where(div > a):focus::after,
    .c-sitemap1__info :where(div > a):hover::after {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: #FFF;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {

    .c-sitemap1__info :where(div > a):focus::before,
    .c-sitemap1__info :where(div > a):hover::before,
    .c-sitemap1__info :where(div > a):focus::after,
    .c-sitemap1__info :where(div > a):hover::after {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: #FFF;
    }
  }

  @media screen and (min-width: 1440px) {

    .c-sitemap1__info :where(div > a):focus::before,
    .c-sitemap1__info :where(div > a):hover::before,
    .c-sitemap1__info :where(div > a):focus::after,
    .c-sitemap1__info :where(div > a):hover::after {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: #FFF;
    }
  }

}

@layer component {
  .p-location1 {
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: 1fr;
  }

  .p-location1:not(:has(a)) {
    display: none;
  }

  .p-location1 :where(nav) {
    width: max-content;
    align-self: center;
    overflow-x: auto;
    overflow-y: hidden;
    width: var(--new-contents-width);
    margin: 0 auto;
  }

 @media screen and (max-width: 767px) {
    .p-location1 :where(nav) {
      white-space: nowrap;
    }
  }

  .p-location1 :where(ol) {
    /* display: flex; */
    letter-spacing: 0.1em;
  }

 @media screen and (max-width: 767px) {
    .p-location1 :where(ol) {
      gap: 0 calc(4 * var(--mc--quantity--of-design--horizontal));
      font-size: calc(13 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-location1 :where(ol) {
      gap: 0 4px;
      font-size: 12px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-location1 :where(ol) {
      gap: 0 4px;
      font-size: 12px;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-location1 :where(ol) {
      gap: 0 4px;
      font-size: 12px;
    }
  }

  .p-location1 :where(ol > li) {
    display: inline;
  }

 @media screen and (max-width: 767px) {
    .p-location1 :where(ol > li) {
      gap: 0 calc(4 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-location1 :where(ol > li) {
      gap: 0 4px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-location1 :where(ol > li) {
      gap: 0 4px;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-location1 :where(ol > li) {
      gap: 0 4px;
    }
  }

  .p-location1 :where(ol > li):not(:last-child)::after {
    content: "";
    display: inline-block;
    vertical-align: text-bottom;
    margin-left: 4px;
    margin-right: 4px;
    aspect-ratio: 1;
    background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_gt_1.svg") no-repeat center/contain;
    filter: brightness(0) saturate(100%) invert(40%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(100%);
  }

 @media screen and (max-width: 767px) {
    .p-location1 :where(ol > li):not(:last-child)::after {
      width: calc(16 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-location1 :where(ol > li):not(:last-child)::after {
      width: 16px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-location1 :where(ol > li):not(:last-child)::after {
      width: 16px;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-location1 :where(ol > li):not(:last-child)::after {
      width: 16px;
    }
  }

}

@layer component {
  .c-search1 {
    display: grid;
    grid-template-rows: auto;
    box-sizing: border-box;
    border-style: solid;
    border-width: 1px;
  }

 @media screen and (max-width: 767px) {
    .c-search1 {
      grid-template-columns: 1fr auto auto;
      column-gap: 0.5em;
      border-color: #D5D5D5;
      position: relative;
      z-index: 0;
      background-color: #FFF;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-search1 {
      grid-template-columns: 1fr auto auto;
      column-gap: 0.5em;
      border-color: #D5D5D5;
      position: relative;
      z-index: 0;
      background-color: #FFF;
    }
  }

 @media screen and (max-width: 767px) {
    .c-search1 {
      font-size: calc(16 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-search1 {
      font-size: 16px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-search1 {
      grid-template-columns: 100%;
      margin-top: -2px;
      border-color: transparent;
      width: 68px;
      font-size: 14px;
    }
    .c-search1--en {
      width: 81px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-search1 {
      grid-template-columns: 100%;
      margin-top: -2px;
      border-color: transparent;
      width: 68px;
      font-size: 14px;
    }
    .c-search1--en {
      width: 81px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-search1:has(input:focus) {
      border-color: #D5D5D5;
      width: clamp(148px, -362.000px + 42.5vw, 250px);
      transform: translateY(-3px);
    }
  }
  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .--sub .c-search1:has(input:focus) {
      border-color: #D5D5D5;
      width: 250px;
      transform: translateY(-3px);
    }
  }

  @media screen and (min-width: 1440px) {
    .c-search1:has(input:focus) {
      border-color: #D5D5D5;
      width: 250px;
      transform: translateY(-3px);
    }
  }

  .c-search1 :where(fieldset) {
    display: contents;
  }

  .c-search1 :where(legend) {
    grid-row: 1/2;
    align-self: center;
    font-weight: 500;
    letter-spacing: 0.1em;
    opacity: 1;
  }

 @media screen and (max-width: 767px) {
    .c-search1 :where(legend) {
      grid-column: 1/-1;
      padding-left: var(--mc-layout--offset--of-inner-left);
      padding-right: var(--mc-layout--offset--of-inner-right);
      color: #D5D5D5;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-search1 :where(legend) {
      grid-column: 1/-1;
      padding-left: var(--mc-layout--offset--of-inner-left);
      padding-right: var(--mc-layout--offset--of-inner-right);
      color: #D5D5D5;
    }
  }

 @media screen and (max-width: 767px) {
    .c-search1 :where(legend) {
      padding-top: calc(8 * var(--mc--quantity--of-design--horizontal));
      padding-bottom: calc(8 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-search1 :where(legend) {
      padding-top: 8px;
      padding-bottom: 8px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-search1 :where(legend) {
      grid-column: 1/2;
      padding: 4px 0px 4px 28px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-search1 :where(legend) {
      grid-column: 1/2;
      padding: 4px 0px 4px 28px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-search1:has(input:focus) :where(legend) {
      color: #666666;
      font-weight: 400;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-search1:has(input:focus) :where(legend) {
      color: #666666;
      font-weight: 400;
    }
  }

  .c-search1:has(input:focus) :where(legend) {
    opacity: 0;
  }

  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-search1 :where(legend span) {
      display: none;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-search1 :where(legend span) {
      display: none;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-search1:has(input:focus) :where(legend span) {
      display: inline;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-search1:has(input:focus) :where(legend span) {
      display: inline;
    }
  }

  .c-search1 :where(input[type=text]) {
    all: unset;
    grid-column: 1/-1;
    grid-row: 1/2;
  }

 @media screen and (max-width: 767px) {
    .c-search1 :where(input[type=text]) {
      padding-left: var(--mc-layout--offset--of-inner-left);
      padding-right: var(--mc-layout--offset--of-inner-right);
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-search1 :where(input[type=text]) {
      padding-left: var(--mc-layout--offset--of-inner-left);
      padding-right: var(--mc-layout--offset--of-inner-right);
    }
  }

 @media screen and (max-width: 767px) {
    .c-search1 :where(input[type=text]) {
      padding-top: calc(8 * var(--mc--quantity--of-design--horizontal));
      padding-bottom: calc(8 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-search1 :where(input[type=text]) {
      padding-top: 8px;
      padding-bottom: 8px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-search1 :where(input[type=text]) {
      padding: 4px 28px 4px;
      opacity: 0;
      letter-spacing: .05em;
    }
    .--sub .c-search1 :where(input[type=text]) {
        padding-left: 36px;
        letter-spacing: .1em;
      }
  }


  @media screen and (min-width: 1440px) {
    .c-search1 :where(input[type=text]) {
      padding: 4px 28px 4px;
      padding-left: 36px;
      opacity: 0;
      letter-spacing: .1em;
    }
  }

  .c-search1:has(input:focus) :where(input[type=text]) {
    opacity: 1;
    height: 30px;
  }

  .c-search1 :where(input[type=text])::placeholder {
    opacity: 1;
    color: #666666;
    font-weight: 400;
  }

  .c-search1 :where(input[type=reset]) {
    all: unset;
    overflow: hidden;
    white-space: nowrap;
    text-indent: 100%;
    cursor: pointer;
    opacity: 0;
    grid-row: 1/2;
    justify-self: end;
    align-self: center;
    aspect-ratio: 1;
    background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_x_1.svg") no-repeat center/70%;
  }

 @media screen and (max-width: 767px) {
    .c-search1 :where(input[type=reset]) {
      grid-column: -2/-3;
      z-index: -1;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-search1 :where(input[type=reset]) {
      grid-column: -2/-3;
      z-index: -1;
    }
  }

 @media screen and (max-width: 767px) {
    .c-search1 :where(input[type=reset]) {
      width: calc(20 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-search1 :where(input[type=reset]) {
      width: 20px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-search1 :where(input[type=reset]) {
      grid-column: 1/2;
      width: 16px;
      margin-right: 4px;
      z-index: 1;
    }
    .--sub .c-search1 :where(input[type=reset]) {
        margin-right: 10px;
      }
  }

  @media screen and (min-width: 1440px) {
    .c-search1 :where(input[type=reset]) {
      grid-column: 1/2;
      width: 16px;
      margin-right: 10px;
      z-index: 1;
    }
  }

  .c-search1 :where(input[type=reset]):focus {
    outline: 2px solid #000;
    outline-offset: 1px;
    border-radius: 2px;
  }

  .c-search1:has(input:focus) :where(input[type=reset]) {
    opacity: 1;
  }

 @media screen and (max-width: 767px) {
    .c-search1:has(input:focus) :where(input[type=reset]) {
      z-index: 1;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-search1:has(input:focus) :where(input[type=reset]) {
      z-index: 1;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {}


  @media screen and (min-width: 1440px) {}

  .c-search1 :where(input[type=submit]) {
    all: unset;
    overflow: hidden;
    white-space: nowrap;
    text-indent: 100%;
    cursor: pointer;
    grid-column: 1/2;
    grid-row: 1/2;
    justify-self: start;
    align-self: center;
    aspect-ratio: 1;
    position: relative;
    z-index: -1;
    background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_magnifier_1.svg") no-repeat center/contain;
  }

 @media screen and (max-width: 767px) {
    .c-search1 :where(input[type=submit]) {
      grid-column: -1/-2;
      margin-right: var(--mc-layout--offset--of-inner-right);
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-search1 :where(input[type=submit]) {
      grid-column: -1/-2;
      margin-right: var(--mc-layout--offset--of-inner-right);
    }
  }

 @media screen and (max-width: 767px) {
    .c-search1 :where(input[type=submit]) {
      width: calc(20 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-search1 :where(input[type=submit]) {
      width: 20px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-search1 :where(input[type=submit]) {
      width: 16px;
      margin-left: 4px;
    }
    .--sub .c-search1 :where(input[type=submit]) {
        width: 16px;
        margin-left: 4px;
      }
  }

  @media screen and (min-width: 1440px) {
    .c-search1 :where(input[type=submit]) {
      width: 16px;
      margin-left: 10px;
    }
  }

  .c-search1 :where(input[type=submit]):focus {
    outline: 2px solid #000;
    outline-offset: 1px;
    border-radius: 2px;
  }

  .c-search1:has(input:focus) :where(input[type=submit]) {
    z-index: 2;
  }
}

@layer component {
  .c-hero1 {
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: 1fr repeat(2, auto);
    box-sizing: border-box;
    width: 100%;
    position: relative;
    z-index: 0;
    background-color: #000;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background-image: var(--mc-hero--imgset--of-background);
    color: #FFF;
  }

 @media screen and (max-width: 767px) {
    .c-hero1 {
      height: calc(360 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero1 {
      height: 670px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero1 {
      height: 670px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero1 {
      height: 670px;
    }
  }

  .c-hero1::before,
  .c-hero1::after {
    content: "";
    position: relative;
    z-index: -1;
    mix-blend-mode: multiply;
  }

  .c-hero1::before {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);
    grid-area: 1/1/2/2;
    align-self: end;
  }

 @media screen and (max-width: 767px) {
    .c-hero1::before {
      height: calc(50 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero1::before {
      height: 100px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero1::before {
      height: 100px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero1::before {
      height: 100px;
    }
  }

  .c-hero1::after {
    background-color: rgba(0, 0, 0, 0.6);
    grid-area: 2/1/span 2/2;
  }

 @media screen and (max-width: 767px) {}


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {}


  @media screen and (min-width: 1200px) and (max-width: 1439px) {}


  @media screen and (min-width: 1440px) {}

  .c-hero1__title {
    grid-area: -2/1/-3/2;
    display: grid;
  }

 @media screen and (max-width: 767px) {
    .c-hero1__title {
      grid-template-columns: auto 1fr;
      grid-template-rows: repeat(2, auto);
      gap: calc(8 * var(--mc--quantity--of-design--horizontal)) calc(14 * var(--mc--quantity--of-design--horizontal));
      margin-left: var(--mc-layout--offset--of-outer-left);
      margin-right: var(--mc-layout--offset--of-outer-right);
      font-weight: 300;
      letter-spacing: 0.12em;
      font-size: calc(28 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero1__title {
      grid-template-columns: repeat(3, auto);
      column-gap: 30px;
      align-items: center;
      width: fit-content;
      padding-left: calc(var(--mc-layout--offset--of-outer-left) + var(--mc-layout--offset--of-inner-left));
      padding-right: calc(var(--mc-layout--offset--of-outer-right) + var(--mc-layout--offset--of-inner-right));
      font-weight: 500;
      letter-spacing: 0.18em;
      font-size: 46px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero1__title {
      grid-template-columns: repeat(3, auto);
      column-gap: 30px;
      align-items: center;
      width: fit-content;
      padding-left: calc(var(--mc-layout--offset--of-outer-left) + var(--mc-layout--offset--of-inner-left));
      padding-right: calc(var(--mc-layout--offset--of-outer-right) + var(--mc-layout--offset--of-inner-right));
      font-weight: 500;
      letter-spacing: 0.18em;
      font-size: 46px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero1__title {
      grid-template-columns: repeat(3, auto);
      column-gap: 30px;
      align-items: center;
      width: fit-content;
      padding-left: calc(var(--mc-layout--offset--of-outer-left) + var(--mc-layout--offset--of-inner-left));
      padding-right: calc(var(--mc-layout--offset--of-outer-right) + var(--mc-layout--offset--of-inner-right));
      font-weight: 500;
      letter-spacing: 0.18em;
      font-size: 46px;
    }
  }

  .c-hero1__title[data-attr]::before {
    content: "";
  }
  .c-hero1__title--en[data-attr]::before {
    content: none;
  }

 @media screen and (max-width: 767px) {
    .c-hero1__title[data-attr]::before {
      grid-area: 1/1/span 2/2;
      width: calc(8 * var(--mc--quantity--of-design--horizontal));
      background-repeat: no-repeat;
      background-image: radial-gradient(circle, #bf0c0c calc(4 * var(--mc--quantity--of-design--horizontal) - 0.5px), rgba(191, 12, 12, 0) calc(4 * var(--mc--quantity--of-design--horizontal) + 0.5px)), linear-gradient(to right, rgba(255, 255, 255, 0) calc(4 * var(--mc--quantity--of-design--horizontal) - 1px), white calc(4 * var(--mc--quantity--of-design--horizontal) - 1px), white calc(4 * var(--mc--quantity--of-design--horizontal) + 1px), rgba(255, 255, 255, 0) calc(4 * var(--mc--quantity--of-design--horizontal) + 1px));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero1__title[data-attr]::before {
      grid-area: 1/2/2/3;
      width: 8px;
      height: 46px;
      background-image: radial-gradient(circle, #bf0c0c 3.5px, rgba(191, 12, 12, 0) 4.5px), linear-gradient(to right, rgba(255, 255, 255, 0) 3px, white 3px, white 5px, rgba(255, 255, 255, 0) 5px);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero1__title[data-attr]::before {
      grid-area: 1/2/2/3;
      width: 8px;
      height: 46px;
      background-image: radial-gradient(circle, #bf0c0c 3.5px, rgba(191, 12, 12, 0) 4.5px), linear-gradient(to right, rgba(255, 255, 255, 0) 3px, white 3px, white 5px, rgba(255, 255, 255, 0) 5px);
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero1__title[data-attr]::before {
      grid-area: 1/2/2/3;
      width: 8px;
      height: 46px;
      background-image: radial-gradient(circle, #bf0c0c 3.5px, rgba(191, 12, 12, 0) 4.5px), linear-gradient(to right, rgba(255, 255, 255, 0) 3px, white 3px, white 5px, rgba(255, 255, 255, 0) 5px);
    }
  }

  .c-hero1__title[data-attr]::after {
    content: attr(data-attr);
    font-family: "Neue Helvetica";
    font-weight: 300;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }
  .c-hero1__title--en[data-attr]::after {
    content: none;
  }

 @media screen and (max-width: 767px) {
    .c-hero1__title[data-attr]::after {
      grid-area: 2/2/3/3;
      font-size: calc(20 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero1__title[data-attr]::after {
      grid-area: 1/3/2/4;
      font-size: 50px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero1__title[data-attr]::after {
      grid-area: 1/3/2/4;
      font-size: 50px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero1__title[data-attr]::after {
      grid-area: 1/3/2/4;
      font-size: 50px;
    }
  }

  .c-hero1__description {
    grid-area: -1/1/-2/2;
    font-weight: 400;
  }

 @media screen and (max-width: 767px) {
    .c-hero1__description {
      padding-top: calc(12 * var(--mc--quantity--of-design--horizontal));
      padding-bottom: calc(24 * var(--mc--quantity--of-design--horizontal));
      padding-left: var(--mc-layout--offset--of-outer-left);
      padding-right: var(--mc-layout--offset--of-outer-right);
      font-size: calc(15 * var(--mc--quantity--of-design--horizontal));
      letter-spacing: 0.04em;
      line-height: 1.6;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero1__description {
      padding-top: 24px;
      padding-bottom: 37px;
      padding-left: calc(var(--mc-layout--offset--of-outer-left) + var(--mc-layout--offset--of-inner-left));
      padding-right: calc(var(--mc-layout--offset--of-outer-right) + var(--mc-layout--offset--of-inner-right));
      font-size: 20px;
      letter-spacing: 0.15em;
      line-height: 2;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero1__description {
      padding-top: 24px;
      padding-bottom: 37px;
      padding-left: calc(var(--mc-layout--offset--of-outer-left) + var(--mc-layout--offset--of-inner-left));
      padding-right: calc(var(--mc-layout--offset--of-outer-right) + var(--mc-layout--offset--of-inner-right));
      font-size: 20px;
      letter-spacing: 0.15em;
      line-height: 2;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero1__description {
      padding-top: 24px;
      padding-bottom: 37px;
      padding-left: calc(var(--mc-layout--offset--of-outer-left) + var(--mc-layout--offset--of-inner-left));
      padding-right: calc(var(--mc-layout--offset--of-outer-right) + var(--mc-layout--offset--of-inner-right));
      font-size: 20px;
      letter-spacing: 0.15em;
      line-height: 2;
    }
  }

  .c-hero2 {
    display: grid;
    width: 100%;
    position: relative;
    z-index: 0;
  }

 @media screen and (max-width: 767px) {
    .c-hero2 {
      grid-template-columns: 100%;
      grid-template-rows: repeat(2, 50%);
      height: calc(312 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2 {
      direction: var(--mc-hero2--keyword--of-direction, ltr);
      grid-template-columns: repeat(2, 50%);
      grid-template-rows: 100%;
      height: 500px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2 {
      direction: var(--mc-hero2--keyword--of-direction, ltr);
      grid-template-columns: repeat(2, 50%);
      grid-template-rows: 100%;
      height: 500px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2 {
      direction: var(--mc-hero2--keyword--of-direction, ltr);
      grid-template-columns: repeat(2, 50%);
      grid-template-rows: 100%;
      height: 500px;
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2 :where(a) {
      /* display: inline grid;
      grid-template-columns: repeat(2, auto);
      column-gap: 0.5em;
      align-items: center; */
      position: relative;
      z-index: 0;
      padding-bottom: 0.2em
    }
    .c-hero2__list :where(a) {
      background: linear-gradient(#fff, #fff) 0 100%/0 1px no-repeat;
      transition: background .4s;
    }
    .c-hero2 :where(a:not([target="_blank"]))::after {
      content: "";
      display: inline-block;
      margin-left: 0.5em;
      vertical-align: calc(-0.4 * var(--base-unit));
      aspect-ratio: 1;
      width: 1em;
      background: url(https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_2.svg) no-repeat center / contain;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2 :where(a) {
      position: relative;
      z-index: 0;
      padding-bottom: 0.2em
    }
    .c-hero2__list :where(a) {
      background: linear-gradient(#fff, #fff) 0 100%/0 1px no-repeat;
      transition: background .4s;
    }
    .c-hero2 :where(a:not([target="_blank"]))::after {
      content: "";
      display: inline-block;
      margin-left: 0.5em;
      vertical-align: calc(-0.4 * var(--base-unit));
      aspect-ratio: 1;
      width: 1em;
      background: url(https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_2.svg) no-repeat center / contain;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2 :where(a) {
      position: relative;
      z-index: 0;
      padding-bottom: 0.2em
    }
    .c-hero2__list :where(a) {
      background: linear-gradient(#fff, #fff) 0 100%/0 1px no-repeat;
      transition: background .4s;
    }
    .c-hero2 :where(a:not([target="_blank"]))::after {
      content: "";
      display: inline-block;
      margin-left: 0.5em;
      vertical-align: calc(-0.4 * var(--base-unit));
      aspect-ratio: 1;
      width: 1em;
      background: url(https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_2.svg) no-repeat center / contain;
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2 :where(a:not([target="_blank"]))::after {
      content: "";
      aspect-ratio: 1;
      width: 1em;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_2.svg") no-repeat center/contain;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2 :where(a:not([target="_blank"]))::after {
      content: "";
      aspect-ratio: 1;
      width: 1em;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_2.svg") no-repeat center/contain;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2 :where(a:not([target="_blank"]))::after {
      content: "";
      aspect-ratio: 1;
      width: 1em;
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_2.svg") no-repeat center/contain;
    }
  }

  .c-hero2 .p-link01__ico {
    position: relative;
    filter: brightness(0) invert(1);
    margin-left: 0;
  }

  .c-hero2 .p-link01__ico img {
    position: absolute;
    top: 0;
    left: 0;
    margin-left: 0.5em;
  }
  @media  screen and (min-width: 768px) {
    .c-hero2__shortcut :where(a):hover::before {
      width: 100%;
    }
  }
  
  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2 :where(a):hover {
      /* transition-duration: 0.3s;
      transition-timing-function: ease-out;
      width: 100%; */
      background-size: 100% 1px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2 :where(a):hover {
      /* transition-duration: 0.3s;
      transition-timing-function: ease-out;
      width: 100%; */
      background-size: 100% 1px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2 :where(a):hover {
      /* transition-duration: 0.3s;
      transition-timing-function: ease-out;
      width: 100%; */
      background-size: 100% 1px;
    }
  }

  .c-hero2__cover {
    display: grid;
    grid-template-columns: 100%;
    position: relative;
    z-index: 0;
    background-color: rgba(0, 0, 0, 0.8);
    color: #FFF;
  }

 @media screen and (max-width: 767px) {
    .c-hero2__cover {
      grid-area: 2/1/3/-1;
      grid-template-rows: 100%;
      padding: 0;
    }
  }


  @media print, screen and (min-width: 768px) {
    .c-hero2__cover {
      padding: 0 calc(10% + 65px) 0 10%;
    }

    li.c-hero2:nth-child(even) .c-hero2__cover {
      padding: 0 10% 0 calc(10% + 65px);
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2__cover {
      direction: ltr;
      grid-area: 1/1/2/2;
      grid-template-rows: repeat(2, auto);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2__cover {
      direction: ltr;
      grid-area: 1/1/2/2;
      grid-template-rows: repeat(2, auto);
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2__cover {
      direction: ltr;
      grid-area: 1/1/2/2;
      grid-template-rows: repeat(2, auto);
    }
  }

 @media screen and (max-width: 767px) {
    .c-hero2__header {
      grid-area: 1/1/-1/-1;
      display: grid;
      grid-template-columns: 100%;
      grid-template-rows: 100%;
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2__header {
      align-self: end;
      padding-top: 40px;
      padding-bottom: 40px;
    }
  }
  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    html[lang="en"] .c-hero2--sustainability .c-hero2__header {
      padding-top: calc(30 / 1200 * 100vw);
      padding-bottom: calc(30 / 1200 * 100vw);
    }
    html[lang="en"] .c-hero2--sustainability .c-hero2__description {
      margin-top: 0;
      line-height: 1.5;
    }
  }

  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2__header {
      align-self: end;
      padding-top: 40px;
      padding-bottom: 40px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2__header {
      align-self: end;
      padding-top: 40px;
      padding-bottom: 40px;
    }
  }

  .c-hero2__title {
    display: grid;
  }

  .c-hero2__title::after {
    content: attr(data-attr);
  }

 @media screen and (max-width: 767px) {
    .c-hero2__title {
      align-self: center;
      justify-self: center;
      grid-template-columns: repeat(2, auto);
      grid-template-rows: repeat(2, auto);
      gap: calc(14 * var(--mc--quantity--of-design--horizontal)) calc(10 * var(--mc--quantity--of-design--horizontal));
      align-items: center;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2__title {
      grid-auto-flow: row;
      row-gap: 32px;
      justify-items: center;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2__title {
      grid-auto-flow: row;
      row-gap: 32px;
      justify-items: center;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2__title {
      grid-auto-flow: row;
      row-gap: 32px;
      justify-items: center;
    }
  }

 @media screen and (max-width: 767px) {
    .c-hero2__title :where(span) {
      grid-column: 1/-1;
      font-weight: 300;
      font-size: calc(28 * var(--mc--quantity--of-design--horizontal));
      letter-spacing: 0.12em;
    }
  }


  @media print, screen and (min-width: 768px) {
    .c-hero2__title :where(span) {
      font-weight: 300;
      font-size: min(50px, 4.5vw);
      white-space: nowrap;
      margin: 0 -1em;
    }
  }


  @media screen and (min-width: 1200px) {
    .c-hero2__title :where(span) {
      letter-spacing: 0.2em;
    }
  }

 @media screen and (max-width: 767px) {
    .c-hero2__title:not(.c-hero2__title--recruit)::before {
      content: "";
      grid-area: -1/1/-2/2;
      justify-self: end;
      aspect-ratio: 1;
      width: calc(20 * var(--mc--quantity--of-design--horizontal));
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_3.svg") no-repeat center/contain;
    }

    .c-hero2__title.c-hero2__title--recruit::before {
      content: "";
      grid-area: 2 / 2 / 3 / 3;
      justify-self: start;
      aspect-ratio: 1;
      width: calc(20 * var(--mc--quantity--of-design--horizontal));
      background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_newwin_1.svg") no-repeat center/contain;
      filter: brightness(0) invert(1);
    }

  }

  .c-hero2__title::after {
    font-family: "Neue Helvetica";
    font-weight: 400;
  }

 @media screen and (max-width: 767px) {
    .c-hero2__title::after {
      grid-column: 2/3;
      font-size: calc(16 * var(--mc--quantity--of-design--horizontal));
      letter-spacing: 0.1em;
    }
    .c-hero2__title.c-hero2__title--recruit::after {
      grid-area: 2 / 1 / 3 / 2;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2__title::after {
      letter-spacing: 0.1em;
      font-size: 20px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2__title::after {
      letter-spacing: 0.1em;
      font-size: 20px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2__title::after {
      letter-spacing: 0.1em;
      font-size: 20px;
    }
  }

 @media screen and (max-width: 767px) {
    .c-hero2__description {
      display: none;
    }
  }


  @media print, screen and (min-width: 768px) {
    .c-hero2__description {
      width: 100%;
      max-width: 450px;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2__description {
      margin-top: 43px;
      margin-left: auto;
      margin-right: auto;
      font-size: 16px;
      letter-spacing: 0.03em;
      line-height: 1.8;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2__description {
      margin-top: 43px;
      margin-left: auto;
      margin-right: auto;
      font-size: 16px;
      letter-spacing: 0.03em;
      line-height: 1.8;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2__description {
      margin-top: 43px;
      margin-left: auto;
      margin-right: auto;
      font-size: 16px;
      letter-spacing: 0.03em;
      line-height: 1.8;
    }
  }

 @media screen and (max-width: 767px) {
    .c-hero2__shortcut {
      grid-area: 1/1/-1/-1;
      overflow: hidden;
      white-space: nowrap;
      text-indent: 100%;
    }
  }


  @media print, screen and (min-width: 768px) {
    .c-hero2__shortcut {
      margin: 0 -1em;
      justify-self: center;
      font-weight: 500;
      font-size: min(20px, 2.4vw);
      white-space: nowrap;
    }
    .c-hero2__shortcut :where(a)::before {
      content: "";
      display: block;
      height: 1px;
      position: absolute;
      bottom: -0.2em;
      background-color: #FFF;
      transition: width 0.2s ease-in;
      width: 0;
    }
  }


  @media screen and (min-width: 1200px) {
    .c-hero2__shortcut {
      letter-spacing: 0.1em;
    }
  }

 @media screen and (max-width: 767px) {
    .c-hero2__shortcut :where(a) {
      overflow: hidden;
      text-indent: 100%;
      white-space: nowrap;
      display: block;
      position: absolute;
      inset: 0;
    }
  }

  .c-hero2__vista {
    position: relative;
    z-index: -1;
    height: 100%;
  }

  .c-hero2__vista :where(img, picture) {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    text-align: top;
  }

 @media screen and (max-width: 767px) {
    .c-hero2__vista {
      grid-area: 1/1/-1/-1;
      overflow: hidden;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2__vista {
      direction: ltr;
      grid-area: 1/1/2/-1;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2__vista {
      direction: ltr;
      grid-area: 1/1/2/-1;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2__vista {
      direction: ltr;
      grid-area: 1/1/2/-1;
    }
  }

  .c-hero2__vista :where(*) {
    height: 100%;
  }

 @media screen and (max-width: 767px) {
    .c-hero2__content {
      display: none;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2__content {
      position: relative;
      grid-area: 1/-1/2/-2;
      display: grid;
      align-items: center;
      color: #FFF;
    }
    .c-hero2__contentInner {
      position: absolute;
      top: 0;
      left: 0;
      background-color: rgba(0, 0, 0, 0.8);
      opacity: 0;
      transition-duration: 0.5s;
      z-index: -1;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2__content {
      position: relative;
      grid-area: 1/-1/2/-2;
      display: grid;
      align-items: center;
      color: #FFF;
    }
    .c-hero2__contentInner {
      position: absolute;
      top: 0;
      left: 0;
      background-color: rgba(0, 0, 0, 0.8);
      opacity: 0;
      transition-duration: 0.5s;
      z-index: -1;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2__content {
      position: relative;
      grid-area: 1/-1/2/-2;
      display: grid;
      align-items: center;
      color: #FFF;
    }
    .c-hero2__contentInner {
      position: absolute;
      top: 0;
      left: 0;
      background-color: rgba(0, 0, 0, 0.8);
      opacity: 0;
      transition-duration: 0.5s;
      z-index: -1;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2__content_btn{
      transition-duration: 0.5s;
    }
    .c-hero2__content_btn:hover~ .c-hero2__contentInner, .c-hero2__contentInner:hover{
      transition-duration: 0.5s;
      opacity: 1;
      z-index: 1;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2__content_btn{
      transition-duration: 0.5s;
    }
    .c-hero2__content_btn:hover~ .c-hero2__contentInner, .c-hero2__contentInner:hover{
      transition-duration: 0.5s;
      opacity: 1;
      z-index: 1;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2__content_btn{
      transition-duration: 0.5s;
    }
    .c-hero2__content_btn:hover~ .c-hero2__contentInner, .c-hero2__contentInner:hover{
      transition-duration: 0.5s;
      opacity: 1;
      z-index: 1;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2__content_btn {
      display: block;
      box-sizing: border-box;
      width: 65px;
      border-left: solid 1px #FFF;
      border-right: solid 1px #FFF;
      margin-inline-start: -65px;
      position: absolute;
      top: 0;
      bottom: 0;
      z-index: 1;
      cursor: pointer;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2__content_btn {
      display: block;
      box-sizing: border-box;
      width: 65px;
      border-left: solid 1px #FFF;
      border-right: solid 1px #FFF;
      margin-inline-start: -65px;
      position: absolute;
      top: 0;
      bottom: 0;
      z-index: 1;
      cursor: pointer;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2__content_btn {
      display: block;
      box-sizing: border-box;
      width: 65px;
      border-left: solid 1px #FFF;
      border-right: solid 1px #FFF;
      margin-inline-start: -65px;
      position: absolute;
      top: 0;
      bottom: 0;
      z-index: 1;
      cursor: pointer;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2__content_btn:hover, .js-border-red .c-hero2__content_btn {
      border-color: #A22041;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2__content_btn:hover, .js-border-red .c-hero2__content_btn {
      border-color: #A22041;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2__content_btn:hover, .js-border-red .c-hero2__content_btn {
      border-color: #A22041;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2__content_btn::after {
      content: "";
      rotate: 90deg;
      display: block;
      width: 40px;
      height: 40px;
      margin-top: auto;
      margin-bottom: auto;
      margin-inline-start: 11px;
      position: absolute;
      top: 0;
      bottom: 0;
      background-color: #FFF;
      mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_triangle_1.svg") no-repeat center/contain;
    }
    .c-hero2--sustainability .c-hero2__content_btn::after,
    .c-hero2--recruit .c-hero2__content_btn::after {
      rotate: 270deg;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2__content_btn::after {
      content: "";
      rotate: 90deg;
      display: block;
      width: 40px;
      height: 40px;
      margin-top: auto;
      margin-bottom: auto;
      margin-inline-start: 11px;
      position: absolute;
      top: 0;
      bottom: 0;
      background-color: #FFF;
      mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_triangle_1.svg") no-repeat center/contain;
    }
    .c-hero2--sustainability .c-hero2__content_btn::after,
    .c-hero2--recruit .c-hero2__content_btn::after {
      rotate: 270deg;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2__content_btn::after {
      content: "";
      rotate: 90deg;
      display: block;
      width: 40px;
      height: 40px;
      margin-top: auto;
      margin-bottom: auto;
      margin-inline-start: 11px;
      position: absolute;
      top: 0;
      bottom: 0;
      background-color: #FFF;
      mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_triangle_1.svg") no-repeat center/contain;
    }
    .c-hero2--sustainability .c-hero2__content_btn::after,
    .c-hero2--recruit .c-hero2__content_btn::after {
      rotate: 270deg;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2__content_btn:hover::after, .js-border-red .c-hero2__content_btn::after {
      rotate: -90deg;
      background-color: #A22041;
    }
    .c-hero2--sustainability .c-hero2__content_btn:hover::after,
    .c-hero2--recruit .c-hero2__content_btn:hover::after {
      rotate: -270deg;
    }
    .c-hero2--sustainability .js-border-red .c-hero2__content_btn::after,
    .c-hero2--recruit .js-border-red .c-hero2__content_btn::after  {
      rotate: -270deg;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2__content_btn:hover::after, .js-border-red .c-hero2__content_btn::after {
      rotate: -90deg;
      background-color: #A22041;
    }
    .c-hero2--sustainability .c-hero2__content_btn:hover::after,
    .c-hero2--recruit .c-hero2__content_btn:hover::after {
      rotate: -270deg;
    }
    .c-hero2--sustainability .js-border-red .c-hero2__content_btn::after,
    .c-hero2--recruit .js-border-red .c-hero2__content_btn::after  {
      rotate: -270deg;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2__content_btn:hover::after, .js-border-red .c-hero2__content_btn::after {
      rotate: -90deg;
      background-color: #A22041;
    }
    .c-hero2--sustainability .c-hero2__content_btn:hover::after,
    .c-hero2--recruit .c-hero2__content_btn:hover::after {
      rotate: -270deg;
    }
    .c-hero2--sustainability .js-border-red .c-hero2__content_btn::after,
    .c-hero2--recruit .js-border-red .c-hero2__content_btn::after  {
      rotate: -270deg;
    }
  }

  /* @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2:has(:focus) :where(.c-hero2__content) {
      z-index: 1;
      background-color: rgba(0, 0, 0, 0.8);
    }
  } */

  /* @media screen and (min-width: 1440px) {
    .c-hero2:has(:focus) :where(.c-hero2__content) {
      z-index: 1;
      background-color: rgba(0, 0, 0, 0.8);
    }
  } */

  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2:has(:focus) :where(.c-hero2__content)::before {
      border-color: #A22041;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2:has(:focus) :where(.c-hero2__content)::before {
      border-color: #A22041;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2:has(:focus) :where(.c-hero2__content)::after {
      rotate: -90deg;
      background-color: #A22041;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2:has(:focus) :where(.c-hero2__content)::after {
      rotate: -90deg;
      background-color: #A22041;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2:has(:focus) :where(.c-hero2__content)::after {
      rotate: -90deg;
      background-color: #A22041;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2__contentInner {
      display: flex;
      flex-direction: column;
      justify-content: center;
      direction: ltr;
      width: 100%;
      height: 100%;
    }

    .c-hero2__contentInner:focus-within {
      z-index: 1;
      opacity: 1;
    }

    li.c-hero2:nth-child(even) .c-hero2__contentInner .c-hero2__totop{
      width: min(727px, 80%);
      margin: 0 min(145px, 12%) 0 auto;
    }
    li.c-hero2:nth-child(even) .c-hero2__contentInner .c-hero2__list {
      width: min(727px, 80%);
      margin: 2em min(145px, 12%) 0 auto;
    }

    .c-hero2__totop, .c-hero2__list{
      width: min(727px, 80%);
      margin: 0 auto 0 5%;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2__contentInner {
      display: flex;
      flex-direction: column;
      justify-content: center;
      direction: ltr;
      width: 100%;
      height: 100%;
    }

    .c-hero2__contentInner:focus-within {
      z-index: 1;
      opacity: 1;
    }

    li.c-hero2:nth-child(even) .c-hero2__contentInner .c-hero2__totop {
      width: min(727px, 80%);
      margin: 0 min(145px, 12%) 0 auto;
    }
    li.c-hero2:nth-child(even) .c-hero2__contentInner .c-hero2__list {
      width: min(727px, 80%);
      margin: 2em min(145px, 12%) 0 auto;
    }

    .c-hero2__totop, .c-hero2__list{
      width: min(727px, 80%);
      margin: 0 auto 0 min(116px, 12%);
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2__contentInner {
      display: flex;
      flex-direction: column;
      justify-content: center;
      direction: ltr;
      width: 100%;
      height: 100%;
    }

    .c-hero2__contentInner:focus-within {
      z-index: 1;
      opacity: 1;
    }

    li.c-hero2:nth-child(even) .c-hero2__contentInner .c-hero2__totop{
      width: min(727px, 80%);
      margin: 0 min(145px, 12%) 0 auto;
    }
    li.c-hero2:nth-child(even) .c-hero2__contentInner .c-hero2__list {
      width: min(727px, 80%);
      margin: 2em min(145px, 12%) 0 auto;
    }

    .c-hero2__totop, .c-hero2__list{
      width: min(727px, 80%);
      margin: 0 auto 0 min(116px, 12%);
    }
  }


  @media print, screen and (min-width: 768px) {
    .c-hero2__totop {
      font-size: min(28px, 2.8vw);
      letter-spacing: 0.1em;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2__totop {
      font-size: 28px;
      letter-spacing: 0.1em;
    }
  }


  @media print, screen and (min-width: 768px) {
    .c-hero2__totop{
      max-width: 727px;
    }
    .c-hero2__list {
      max-width: 727px;
      display: flex;
      flex-wrap: wrap;
      flex-direction: column;
      width: 100%;
      height: fit-content;
      font-size: min(20px, 1.3vw);
      gap: .85em 1em;
      margin-top: 2em;
      line-height: 1.6;
      letter-spacing: 0.1em;
    }
    
    .c-hero2.c-hero2--about .c-hero2__list {
      width: min(727px, 80%);
      height: 13em;
    }

    .c-hero2.c-hero2--sustainability .c-hero2__list {
      width: min(727px, 80%);
      height: 19em;
    }

    .c-hero2.c-hero2--ir .c-hero2__list {
      width: min(727px, 80%);
      height: 13em;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero2__list {
      font-size: min(20px, 1.75vw);
      gap: 1.2em 1em;
      margin-top: 1.5em;
    }

    .c-hero2.c-hero2--about .c-hero2__list {
      height: 17em;
    }

    .c-hero2.c-hero2--ir .c-hero2__list {
      height: 17em;
    }

    .c-hero2__list__item-small{
      font-size: min(16px, 1.3vw);
      padding-left: 1em;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero2__list {
      font-size: min(18px, 1.3vw);
      gap: 1.3em 1em;
      margin-top: 2em;
    }

    .c-hero2.c-hero2--about .c-hero2__list {
      height: 16em;
    }

    .c-hero2.c-hero2--ir .c-hero2__list {
      height: 14em;
    }

    .c-hero2__list__item-small{
      font-size: min(16px, 1.2vw);
      padding-left: 1em;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero2.c-hero2--business .c-hero2__list {
      height: 13em;
    }

    .c-hero2.c-hero2--sustainability .c-hero2__list {
      height: 15em;
    }

    .c-hero2__list__item-small {
      font-size: min(16px, 1.3vw);
      padding-left: 1em;
    }
  }

  .c-hero2__list--en .c-hero2__list__item-small {
    padding-left: 0;
  }

  .c-hero3 {
    display: block grid;
  }

 @media screen and (max-width: 767px) {
    .c-hero3 {
      grid-template-columns: 100%;
      grid-template-rows: repeat(3, auto);
      grid-auto-flow: row;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero3 {
      grid-template-columns: repeat(2, 50%);
      grid-template-rows: repeat(2, auto);
      row-gap: 20px;
      width: 100%;
      height: 514px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero3 {
      grid-template-columns: repeat(2, 50%);
      grid-template-rows: repeat(2, auto);
      row-gap: 20px;
      width: 100%;
      height: 514px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero3 {
      grid-template-columns: repeat(2, 50%);
      grid-template-rows: repeat(2, auto);
      row-gap: 20px;
      width: 100%;
      height: 514px;
    }
  }

  .c-hero3__movie,
  .c-hero3:not(:has(.c-hero3__movie))::before {
    background-color: #000;
  }

 @media screen and (max-width: 767px) {

    .c-hero3__movie,
    .c-hero3:not(:has(.c-hero3__movie))::before {
      aspect-ratio: 16/9;
      margin-bottom: calc(30 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {

    .c-hero3__movie,
    .c-hero3:not(:has(.c-hero3__movie))::before {
      grid-area: 1/1/-1/2;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {

    .c-hero3__movie,
    .c-hero3:not(:has(.c-hero3__movie))::before {
      grid-area: 1/1/-1/2;
    }
  }

  @media screen and (min-width: 1440px) {

    .c-hero3__movie,
    .c-hero3:not(:has(.c-hero3__movie))::before {
      grid-area: 1/1/-1/2;
    }
  }

  .c-hero3__movie {
    position: relative;
    z-index: 0;
    order: -1;
  }

  .c-hero3:not(:has(.c-hero3__movie))::before {
    content: "";
    background-color: #000;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background-image: var(--mc-hero--imgset--of-background-image);
  }

 @media screen and (max-width: 767px) {
    .c-hero3:not(:has(.c-hero3__movie))::before {
      aspect-ratio: 16/9;
      margin-bottom: calc(30 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero3:not(:has(.c-hero3__movie))::before {
      grid-area: 1/1/-1/2;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero3:not(:has(.c-hero3__movie))::before {
      grid-area: 1/1/-1/2;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero3:not(:has(.c-hero3__movie))::before {
      grid-area: 1/1/-1/2;
    }
  }

  .c-hero3__title {
    display: grid;
    grid-auto-flow: row;
    justify-items: center;
    font-weight: 300;
    letter-spacing: 0.1em;
  }

 @media screen and (max-width: 767px) {
    .c-hero3__title {
      font-size: calc(24 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero3__title {
      grid-area: 1/2/2/3;
      justify-self: center;
      align-self: end;
      font-size: min(38px, 4vw);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero3__title {
      grid-area: 1/2/2/3;
      justify-self: center;
      align-self: end;
      font-size: 38px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero3__title {
      grid-area: 1/2/2/3;
      justify-self: center;
      align-self: end;
      font-size: 38px;
    }
  }

  .c-hero3__title::before {
    content: "";
    aspect-ratio: 1;
    border-radius: 100vw;
    background-color: var(--mc-hero3--background-color--of-icon, #000);
    background-image: var(--mc-hero3--image--of-icon);
    background-repeat: no-repeat;
    background-position: center;
  }

 @media screen and (max-width: 767px) {
    .c-hero3__title::before {
      width: calc(50 * var(--mc--quantity--of-design--horizontal));
      margin-bottom: calc(10 * var(--mc--quantity--of-design--horizontal));
      background-size: calc(36 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero3__title::before {
      width: 70px;
      margin-bottom: 24px;
      background-size: 50px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero3__title::before {
      width: 70px;
      margin-bottom: 24px;
      background-size: 50px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero3__title::before {
      width: 70px;
      margin-bottom: 24px;
      background-size: 50px;
    }
  }

  .c-hero3__discription {
    text-align: center;
    font-weight: 400;
    letter-spacing: 0.1em;
  }

 @media screen and (max-width: 767px) {
    .c-hero3__discription {
      margin-top: calc(10 * var(--mc--quantity--of-design--horizontal));
      font-size: calc(16 * var(--mc--quantity--of-design--horizontal));
      line-height: 1.8;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-hero3__discription {
      grid-area: 2/2/3/3;
      text-align: center;
      font-size: min(22px, 2.2vw);
      line-height: 1.9090909091;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-hero3__discription {
      grid-area: 2/2/3/3;
      text-align: center;
      font-size: 22px;
      line-height: 1.9090909091;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-hero3__discription {
      grid-area: 2/2/3/3;
      text-align: center;
      font-size: 22px;
      line-height: 1.9090909091;
    }
  }

}

@layer component {
  .c-carousel1 {
    position: relative;
    z-index: 0;
  }

 @media screen and (max-width: 767px) {
    .c-carousel1 {
      --mc-gap-carousel: calc(10 * var(--mc--quantity--of-design--horizontal));
      --mc-padding-carousel-left: var(--mc-layout--offset--of-outer-left);
      --mc-padding-carousel-right: var(--mc-layout--offset--of-outer-right);
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-carousel1 {
      --mc-gap-carousel: 16.6145833333vw;
      --mc-padding-carousel-left: 29.375vw;
      --mc-padding-carousel-right: 29.375vw;
      --mc-padding-carousel-function: ease;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-carousel1 {
      --mc-gap-carousel: 16.6145833333vw;
      --mc-padding-carousel-left: 29.375vw;
      --mc-padding-carousel-right: 29.375vw;
      --mc-padding-carousel-function: ease;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-carousel1 {
      --mc-gap-carousel: 16.6145833333vw;
      --mc-padding-carousel-left: 29.375vw;
      --mc-padding-carousel-right: 29.375vw;
      --mc-padding-carousel-function: ease;
    }
  }

  .c-carousel1__title {
    text-transform: uppercase;
    font-family: "Neue Helvetica";
    font-weight: 300;
    letter-spacing: 0.05em;
  }

 @media screen and (max-width: 767px) {
    .c-carousel1__title {
      margin-bottom: calc(6* var(--mc--quantity--of-design--horizontal));
      font-size: calc(30 * var(--mc--quantity--of-design--horizontal));
      padding-left: var(--mc-layout--offset--of-outer-left);
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-carousel1__title {
      position: absolute;
      top: -0.15em;
      left: calc(286 * var(--mc--quantity--of-design--horizontal--dt));
      z-index: 1;
      font-size: min(58px, calc(58 / 1200 * 100vw));
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-carousel1__title {
      position: absolute;
      top: -0.15em;
      left: calc(286 * var(--mc--quantity--of-design--horizontal--dt));
      z-index: 1;
      font-size: 58px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-carousel1__title {
      position: absolute;
      top: -0.15em;
      left: calc(286 * var(--mc--quantity--of-design--horizontal--dt));
      z-index: 1;
      font-size: 58px;
    }
  }

  .c-carousel1__screen {
    width: 100%;
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {}


  @media screen and (min-width: 1200px) and (max-width: 1439px) {}


  @media screen and (min-width: 1440px) {}

  .c-carousel1__card {
    box-sizing: border-box;
  }

 @media screen and (max-width: 767px) {
    .c-carousel1__card {
      display: grid;
      grid-template-rows: auto 1fr;
      grid-auto-flow: row;
      width: 100%;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-carousel1__card {
      position: relative;
      z-index: 0;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-carousel1__card {
      position: relative;
      z-index: 0;
    }
  }


  @media screen and (min-width: 1440px) {
    .c-carousel1__card {
      position: relative;
      z-index: 0;
    }
  }

  .c-carousel1__text {
    box-sizing: border-box;
    background-color: #000;
    color: #FFF;
  }

 @media screen and (max-width: 767px) {
    .c-carousel1__text {
      order: 2;
      aspect-ratio: 335/202;
      padding-top: calc(25 * var(--mc--quantity--of-design--horizontal));
      padding-bottom: calc(32 * var(--mc--quantity--of-design--horizontal));
      padding-left: var(--mc-layout--offset--of-outer-left);
      padding-right: var(--mc-layout--offset--of-outer-right);
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-carousel1__text {
      width: 76.5151515152%;
      padding: min(55px, calc(20 / 1200 * 100vw)) min(30px, calc(30 / 1200 * 100vw)) min(20px, calc(20 / 1200 * 100vw));
      bottom: min(20px, calc(20 / 1200 * 100vw));
      top: min(42px, calc(42 / 1200 * 100vw));
      position: absolute;
      z-index: 0;
      transition-property: opacity, left;
      transition-duration: 0.5s, 0s;
      transition-delay: 0s, 0.5s;
      opacity: 0;
      left: 0;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-carousel1__text {
      width: 76.5151515152%;
      padding: min(55px, calc(55 / 1920 * 100vw)) min(60px, calc(60 / 1920 * 100vw)) min(45px, calc(45 / 1920 * 100vw));
      bottom: min(42px, calc(42 / 1920 * 100vw));
      position: absolute;
      top: 42px;
      z-index: 0;
      transition-property: opacity, left;
      transition-duration: 0.5s, 0s;
      transition-delay: 0s, 0.5s;
      opacity: 0;
      left: 0;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-carousel1__text {
      width: 76.5151515152%;
      padding: min(55px, calc(55 / 1920 * 100vw)) min(60px, calc(60 / 1920 * 100vw)) min(45px, calc(45 / 1920 * 100vw));
      position: absolute;
      top: 42px;
      bottom: min(42px, calc(42 / 1920 * 100vw));
      z-index: 0;
      transition-property: opacity, left;
      transition-duration: 0.5s, 0s;
      transition-delay: 0s, 0.5s;
      opacity: 0;
      left: 0;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .splide__slide.is-active :where(.c-carousel1__text) {
      transition-duration: 0.5s, 0s;
      transition-delay: 0.8s, 0s;
      left: -14.53125vw;
      opacity: 1;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .splide__slide.is-active :where(.c-carousel1__text) {
      transition-duration: 0.5s, 0s;
      transition-delay: 0.8s, 0s;
      left: -14.53125vw;
      opacity: 1;
    }
  }

  @media screen and (min-width: 1440px) {
    .splide__slide.is-active :where(.c-carousel1__text) {
      transition-duration: 0.5s, 0s;
      transition-delay: 0.8s, 0s;
      left: -14.53125vw;
      opacity: 1;
    }
  }

  .c-carousel1__textInner {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: 1fr auto;
    width: 100%;
    height: 100%;
  }

 @media screen and (max-width: 767px) {
    .c-carousel1__textInner {
      row-gap: calc(12 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-carousel1__textInner {
      row-gap: 16px;
      column-gap: 10px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-carousel1__textInner {
      row-gap: 16px;
      column-gap: 10px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-carousel1__textInner {
      row-gap: 16px;
      column-gap: 10px;
    }
  }

  .c-carousel1__textInner::after {
    content: "";
    aspect-ratio: 1;
    background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_3.svg") no-repeat center/contain;
  }

 @media screen and (max-width: 767px) {
    .c-carousel1__textInner::after {
      width: calc(20 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-carousel1__textInner::after {
      width: 30px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-carousel1__textInner::after {
      width: 30px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-carousel1__textInner::after {
      width: 30px;
    }
  }

  .c-carousel1__textMain {
    grid-column: 1/-1;
    border-bottom: solid 2px #FFF;
    font-weight: 400;
  }

 @media screen and (max-width: 767px) {
    .c-carousel1__textMain {
      padding-bottom: calc(25 * var(--mc--quantity--of-design--horizontal));
      font-size: calc(20 * var(--mc--quantity--of-design--horizontal));
      line-height: 1.4;
      letter-spacing: 0.03em;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-carousel1__textMain {
      padding-bottom: min(16px, calc(16 / 1920 * 100vw));
      font-size: min(32px, calc(32 / 1920 * 100vw));
      line-height: 1.5;
      letter-spacing: 0.06em;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-carousel1__textMain {
      padding-bottom: min(16px, calc(16 / 1920 * 100vw));
      font-size: min(32px, calc(32 / 1920 * 100vw));
      line-height: 1.5;
      letter-spacing: 0.06em;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-carousel1__textMain {
      padding-bottom: min(16px, calc(16 / 1920 * 100vw));
      font-size: min(32px, calc(32 / 1920 * 100vw));
      line-height: 1.5;
      letter-spacing: 0.06em;
    }
  }

  .c-carousel1__textSub {
    align-self: center;
    justify-self: start;
    border: solid 1px #FFF;
    font-weight: 400;
    letter-spacing: 0;
  }

 @media screen and (max-width: 767px) {
    .c-carousel1__textSub {
      border-radius: calc(2 * var(--mc--quantity--of-design--horizontal));
      padding: calc(4 * var(--mc--quantity--of-design--horizontal)) calc(8 * var(--mc--quantity--of-design--horizontal));
      font-size: calc(11 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-carousel1__textSub {
      border-radius: 2px;
      padding: 8px;
      font-size: 11px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-carousel1__textSub {
      border-radius: 2px;
      padding: 8px;
      font-size: 11px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-carousel1__textSub {
      border-radius: 2px;
      padding: 8px;
      font-size: 11px;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-carousel1__image {
      position: relative;
      z-index: -1;
      transition: right 700ms linear;
      right: 0;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-carousel1__image {
      position: relative;
      z-index: -1;
      transition: right 700ms linear;
      right: 0;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-carousel1__image {
      position: relative;
      z-index: -1;
      transition: right 700ms linear;
      right: 0;
    }
  }

  .c-carousel1__image img {
    width: 100%;
    height: auto;
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .splide__slide.is-active :where(.c-carousel1__image) {
      right: -14.53125vw;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .splide__slide.is-active :where(.c-carousel1__image) {
      right: -14.53125vw;
    }
  }

  @media screen and (min-width: 1440px) {
    .splide__slide.is-active :where(.c-carousel1__image) {
      right: -14.53125vw;
    }
  }

  .c-carousel1__tarminal {
    display: grid;
    grid-template-rows: auto;
  }

 @media screen and (max-width: 767px) {
    .c-carousel1__tarminal {
      grid-template-columns: 1fr auto;
      margin-top: calc(10 * var(--mc--quantity--of-design--horizontal));
      margin-left: var(--mc-layout--offset--of-outer-left);
      margin-right: var(--mc-layout--offset--of-outer-right);
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-carousel1__tarminal {
      grid-template-columns: 1fr repeat(2, auto);
      column-gap: 16px;
      margin-top: 20px;
      margin-left: calc(285 * var(--mc--quantity--of-design--horizontal--dt));
      margin-right: calc(285 * var(--mc--quantity--of-design--horizontal--dt));
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-carousel1__tarminal {
      grid-template-columns: 1fr repeat(2, auto);
      column-gap: 16px;
      margin-top: 20px;
      margin-left: calc(285 * var(--mc--quantity--of-design--horizontal--dt));
      margin-right: calc(285 * var(--mc--quantity--of-design--horizontal--dt));
    }
  }

  @media screen and (min-width: 1440px) {
    .c-carousel1__tarminal {
      grid-template-columns: 1fr repeat(2, auto);
      column-gap: 16px;
      margin-top: 20px;
      margin-left: calc(285 * var(--mc--quantity--of-design--horizontal--dt));
      margin-right: calc(285 * var(--mc--quantity--of-design--horizontal--dt));
    }
  }

  .c-carousel1__bullets {
    padding: 0;
    position: relative;
    inset: unset;
  }

 @media screen and (max-width: 767px) {
    .c-carousel1__bullets {
      grid-area: 1/1/2/span 2;
      align-self: center;
      column-gap: calc(20 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-carousel1__bullets {
      justify-self: end;
      column-gap: 16px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-carousel1__bullets {
      justify-self: end;
      column-gap: 16px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-carousel1__bullets {
      justify-self: end;
      column-gap: 16px;
    }
  }

  .c-carousel1__bullet {
    opacity: 1;
    transform: scale(1);
    box-sizing: border-box;
    border: solid 1px #000;
    margin: unset;
    background-color: #000;
  }

  .c-carousel1__bullet[aria-selected] {
    background-color: #FFF;
  }

 @media screen and (max-width: 767px) {
    .c-carousel1__bullet {
      width: calc(10 * var(--mc--quantity--of-design--horizontal));
      height: calc(10 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-carousel1__bullet {
      width: 8px;
      height: 8px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-carousel1__bullet {
      width: 8px;
      height: 8px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-carousel1__bullet {
      width: 8px;
      height: 8px;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-carousel1__arrows {
      display: grid;
      grid-template-columns: repeat(2, auto);
      column-gap: 8px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-carousel1__arrows {
      display: grid;
      grid-template-columns: repeat(2, auto);
      column-gap: 8px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-carousel1__arrows {
      display: grid;
      grid-template-columns: repeat(2, auto);
      column-gap: 8px;
    }
  }

  .c-carousel1__arrow {
    opacity: 1;
    border-radius: unset;
    background-color: #000;
    outline: none;
    transform: unset;
    inset: unset;
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-carousel1__arrow {
      transition: background-color 0.2s ease-in;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-carousel1__arrow {
      transition: background-color 0.2s ease-in;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-carousel1__arrow {
      transition: background-color 0.2s ease-in;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {

    .c-carousel1__arrow:focus,
    .c-carousel1__arrow:hover {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: #A22041;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {

    .c-carousel1__arrow:focus,
    .c-carousel1__arrow:hover {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: #A22041;
    }
  }

  @media screen and (min-width: 1440px) {

    .c-carousel1__arrow:focus,
    .c-carousel1__arrow:hover {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: #A22041;
    }
  }

  .c-carousel1__arrow :where(svg) {
    display: none;
  }

  .c-carousel1__arrow::before {
    content: "";
    rotate: 90deg;
    display: block;
    margin: auto;
    position: absolute;
    inset: 0;
    background-color: #FFF;
    mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_triangle_1.svg") no-repeat center/contain;
  }

 @media screen and (max-width: 767px) {
    .c-carousel1__arrow::before {
      width: calc(16 * var(--mc--quantity--of-design--horizontal));
      height: calc(16 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-carousel1__arrow::before {
      width: calc(24 * var(--mc--quantity--of-design--horizontal--dt));
      height: calc(24 * var(--mc--quantity--of-design--horizontal--dt));
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-carousel1__arrow::before {
      width: calc(24 * var(--mc--quantity--of-design--horizontal--dt));
      height: calc(24 * var(--mc--quantity--of-design--horizontal--dt));
    }
  }

  @media screen and (min-width: 1440px) {
    .c-carousel1__arrow::before {
      width: calc(24 * var(--mc--quantity--of-design--horizontal--dt));
      height: calc(24 * var(--mc--quantity--of-design--horizontal--dt));
    }
  }

  .c-carousel1__arrow[aria-label="Previous slide"]::before,
  .c-carousel1__arrow[aria-label="Go to last slide"]::before {
    scale: -1;
  }

 @media screen and (max-width: 767px) {
    .c-carousel1__arrow {
      width: calc(40 * var(--mc--quantity--of-design--horizontal));
      height: calc(40 * var(--mc--quantity--of-design--horizontal));
      top: calc(78 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-carousel1__arrow {
      width: 48px;
      height: 48px;
      position: relative;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-carousel1__arrow {
      width: 48px;
      height: 48px;
      position: relative;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-carousel1__arrow {
      width: 48px;
      height: 48px;
      position: relative;
    }
  }

 @media screen and (max-width: 767px) {
    .c-carousel1__arrow::before {
      width: calc(20 * var(--mc--quantity--of-design--horizontal));
      height: calc(20 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-carousel1__arrow::before {
      width: 20px;
      height: 20px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-carousel1__arrow::before {
      width: 20px;
      height: 20px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-carousel1__arrow::before {
      width: 20px;
      height: 20px;
    }
  }

 @media screen and (max-width: 767px) {
    .c-carousel1__arrow-prev {
      left: 0;
    }
  }

 @media screen and (max-width: 767px) {
    .c-carousel1__arrow-next {
      right: 0;
    }
  }

  .c-carousel1__button {
    all: unset;
    cursor: pointer;
    display: block;
    background-color: #000;
    color: #FFF;
  }

 @media screen and (max-width: 767px) {
    .c-carousel1__button {
      grid-area: 1/-1/2/-2;
      width: calc(48 * var(--mc--quantity--of-design--horizontal));
      height: calc(48 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-carousel1__button {
      width: 48px;
      height: 48px;
      transition: background-color 0.2s ease-in;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-carousel1__button {
      width: 48px;
      height: 48px;
      transition: background-color 0.2s ease-in;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-carousel1__button {
      width: 48px;
      height: 48px;
      transition: background-color 0.2s ease-in;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {

    .c-carousel1__button:focus,
    .c-carousel1__button:hover {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: #A22041;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {

    .c-carousel1__button:focus,
    .c-carousel1__button:hover {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: #A22041;
    }
  }

  @media screen and (min-width: 1440px) {

    .c-carousel1__button:focus,
    .c-carousel1__button:hover {
      transition-duration: 0.3s;
      transition-timing-function: ease-out;
      background-color: #A22041;
    }
  }

  .c-carousel1__button :where(span) {
    overflow: hidden;
    text-indent: 10em;
    white-space: nowrap;
    width: 100%;
    height: 100%;
    position: relative;
    display: block;
  }

  .c-carousel1__button :where(span)::before {
    content: "";
    display: block;
    width: 27.0833333333%;
    height: 39.5833333333%;
    background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_pause_1.svg") no-repeat center center/contain;
    position: absolute;
    margin: auto;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
  }

  .c-carousel1__button :where(span).splide__toggle__play::before {
    width: 25%;
    height: 16.6666666667%;
    background-image: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_play_1.svg");
    transform: rotate(-90deg);
  }

  .c-carousel1__button :where(span):last-child {
    display: none;
  }

  .c-carousel1__button.is-active :where(span):first-child {
    display: none;
  }

  .c-carousel1__button.is-active :where(span):last-child {
    display: block;
  }
}

@layer component {

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-navigation2 {
      display: grid;
      grid-template-columns: calc(var(--mc-layout--width-column) * 2 + var(--mc-layout--gap)) 1fr;
      column-gap: var(--mc-layout--gap);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-navigation2 {
      display: grid;
      grid-template-columns: calc(var(--mc-layout--width-column) * 2 + var(--mc-layout--gap)) 1fr;
      column-gap: var(--mc-layout--gap);
    }
  }

  @media screen and (min-width: 1440px) {
    .p-navigation2 {
      display: grid;
      grid-template-columns: calc(var(--mc-layout--width-column) * 2 + var(--mc-layout--gap)) 1fr;
      column-gap: var(--mc-layout--gap);
    }
  }

 @media screen and (max-width: 767px) {
    .p-navigation2__trigger {
      display: none;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-navigation2__trigger {
      align-self: start;
      position: sticky;
      top: var(--mc-navigation2--offset--for-top, 0);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-navigation2__trigger {
      align-self: start;
      position: sticky;
      top: var(--mc-navigation2--offset--for-top, 0);
    }
  }

  @media screen and (min-width: 1440px) {
    .p-navigation2__trigger {
      align-self: start;
      position: sticky;
      top: var(--mc-navigation2--offset--for-top, 0);
    }
  }

}

@layer component {
  .p-tab1 :where([aria-hidden=true]) {
    display: none;
  }

  .p-tab1 :where([aria-hidden=false]) {
    display: block;
  }

  .p-tab1 :where([role=tablist]) {
    display: block grid;
    grid-template-columns: 1fr;
    grid-auto-flow: column;
    grid-auto-columns: 1fr;
  }

  .p-tab1 :where([role=tab]) {
    all: unset;
    display: block;
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-tab1 :where([role=tab]) {
      cursor: pointer;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-tab1 :where([role=tab]) {
      cursor: pointer;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-tab1 :where([role=tab]) {
      cursor: pointer;
    }
  }

}

@layer component {
  .p-clip1 {
    overflow: hidden;
    width: 100%;
    position: relative;
    z-index: 0;
  }

  .p-clip1__target {
    display: grid;
    grid-template-columns: 100%;
    transition: grid-template-rows 0.2s ease-in;
    grid-template-rows: calc(var(--mc-clip1--height) - var(--mc-clip1--height--button));
  }

  .p-clip1--active .p-clip1__target {
    transition-duration: 0.3s;
    transition-timing-function: ease-out;
    grid-template-rows: 1fr;
  }

  .p-clip1__tarminal {
    height: var(--mc-clip1--height--button, 0);
    position: relative;
    z-index: 1;
    background-image: linear-gradient(to bottom, rgb(from var(--mc-clip1--color--for-hide, #FFF) R G B/0), rgb(from var(--mc-clip1--color-for-hide, #FFF) R G B/1));
  }

  .p-clip1__tarminal :where(button) {
    aspect-ratio: unset;
    width: 100%;
    height: 100%;
  }
}

@layer component {
  .p-gallery1 {
    overflow: hidden;
    position: relative;
    z-index: 0;
  }

  :where(.p-gallery1__items) {
    display: block grid;
    grid-template-rows: auto;
    width: 100%;
  }

 @media screen and (max-width: 767px) {
    :where(.p-gallery1__items) {
      grid-template-columns: 1fr;
      gap: var(--mc-layout--offset--of-outer-left);
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    :where(.p-gallery1__items) {
      gap: var(--mc-layout--gap);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    :where(.p-gallery1__items) {
      gap: var(--mc-layout--gap);
    }
  }

  @media screen and (min-width: 1440px) {
    :where(.p-gallery1__items) {
      gap: var(--mc-layout--gap);
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    :where(.p-gallery1__items) {
      grid-template-columns: repeat(2, 1fr);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    :where(.p-gallery1__items) {
      grid-template-columns: repeat(3, 1fr);
    }
  }

  @media screen and (min-width: 1440px) {
    :where(.p-gallery1__items) {
      grid-template-columns: repeat(3, 1fr);
    }
  }

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

  .p-gallery2__items {
    display: grid;
    grid-template-rows: auto;
    grid-auto-rows: 0;
    width: 100%;
  }

 @media screen and (max-width: 767px) {
    .p-gallery2__items {
      grid-template-columns: 1fr;
      gap: var(--mc-layout--offset--of-outer-left);
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-gallery2__items {
      gap: var(--mc-layout--gap);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-gallery2__items {
      gap: var(--mc-layout--gap);
    }
  }

  @media screen and (min-width: 1440px) {
    .p-gallery2__items {
      gap: var(--mc-layout--gap);
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-gallery2__items {
      grid-template-columns: repeat(2, 1fr);
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-gallery2__items {
      grid-template-columns: repeat(3, 1fr);
    }
  }

  @media screen and (min-width: 1440px) {
    .p-gallery2__items {
      grid-template-columns: repeat(3, 1fr);
    }
  }

  .p-gallery2--active .p-gallery2__items {
    grid-auto-rows: auto;
  }

 @media screen and (max-width: 767px) {
    .p-gallery2__items>li:nth-child(n+3) {
      display: none;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-gallery2__items>li:nth-child(n+5) {
      display: none;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-gallery2__items>li:nth-child(n+7) {
      display: none;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-gallery2__items>li:nth-child(n+7) {
      display: none;
    }
  }

 @media screen and (max-width: 767px) {
    .p-gallery2--active .p-gallery2__items>li:nth-child(n+3) {
      display: block;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-gallery2--active .p-gallery2__items>li:nth-child(n+5) {
      display: block;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-gallery2--active .p-gallery2__items>li:nth-child(n+7) {
      display: block;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-gallery2--active .p-gallery2__items>li:nth-child(n+7) {
      display: block;
    }
  }

  .p-gallery2__items .c-panel1 {
    display: block;
    height: 100%;
  }
  .p-gallery2__items li {
    border-bottom: var(--mc-panel--border--of-text, solid 1px #D5D5D5);
    background-color: var(--mc-panel--background-color--of-text--default, #FFF);
  }

  .p-gallery2__terminal {
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: 100%;
    width: 100%;
    position: relative;
    z-index: 1;
  }

 @media screen and (max-width: 767px) {
    .p-gallery2__terminal {
      height: calc(100 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-gallery2__terminal {
      height: 120px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-gallery2__terminal {
      height: 120px;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-gallery2__terminal {
      height: 120px;
    }
  }

 @media screen and (max-width: 767px) {
    .p-gallery2__items:not(:has(li:nth-child(3)))+.p-gallery2__terminal {
      display: none;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-gallery2__items:not(:has(li:nth-child(3)))+.p-gallery2__terminal {
      display: none;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-gallery2__items:not(:has(li:nth-child(4)))+.p-gallery2__terminal {
      display: none;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-gallery2__items:not(:has(li:nth-child(4)))+.p-gallery2__terminal {
      display: none;
    }
  }

  .p-gallery2__terminal>button {
    aspect-ratio: unset;
    width: 100%;
    height: 100%;
    /* background-image: linear-gradient(to bottom, rgb(from var(--mc-gallery2--color--for-hide, #FFF) R G B/0), rgb(from var(--mc-gallery2--color-for-hide, #FFF) R G B/1)); */
  }

 @media screen and (max-width: 767px) {
    .p-gallery2__terminal>button {
      /* background-image: linear-gradient(to bottom, rgb(from var(--mc-gallery2--color--for-hide, #FFF) R G B/0), rgb(from var(--mc-gallery2--color-for-hide, #FFF) R G B/1)); */
    }
  }
}

.c-pagetitle1.c-pagetitle1--nobg{
  height: unset;
  min-height: unset;
  background: unset;
  padding: unset;
}

@layer component {
  .c-pagetitle1 {
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: auto;
    grid-auto-flow: row;
    align-content: center;
    box-sizing: border-box;
    width: 100%;
    padding-left: calc(var(--mc-layout--offset--of-outer-left) + var(--mc-layout--offset--of-inner-left));
    padding-right: calc(var(--mc-layout--offset--of-outer-right) + var(--mc-layout--offset--of-inner-right));
    background: #f7f7f8;
  }

 @media screen and (max-width: 767px) {
    .c-pagetitle1 {
      padding-top: calc(8* var(--base-unit));
      padding-bottom: calc(8* var(--base-unit));
      min-height: calc(16* var(--base-unit));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-pagetitle1 {
      padding-top: calc(6* var(--base-unit));
      padding-bottom: calc(6* var(--base-unit));
      min-height: calc(22* var(--base-unit));
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-pagetitle1 {
      padding-top: calc(6* var(--base-unit));
      padding-bottom: calc(6* var(--base-unit));
      min-height: calc(22* var(--base-unit));
    }
  }

  @media screen and (min-width: 1440px) {
    .c-pagetitle1 {
      padding-top: calc(6* var(--base-unit));
      padding-bottom: calc(6* var(--base-unit));
      min-height: calc(22* var(--base-unit));
    }
  }

  .c-pagetitle1__text {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto;
    align-items: baseline;
    width: 100%;
    font-weight: 300;
    letter-spacing: 0.12em;
  }

 @media screen and (max-width: 767px) {
    .c-pagetitle1__text {
      column-gap: calc(10 * var(--mc--quantity--of-design--horizontal));
      font-size: calc(28 * var(--mc--quantity--of-design--horizontal));
      line-height: 1.3571428571;
      color: #000;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-pagetitle1__text {
      column-gap: 12px;
      font-size: 42px;
      line-height: 1.5238095238;
      color: #333;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-pagetitle1__text {
      column-gap: 12px;
      font-size: 42px;
      line-height: 1.5238095238;
      color: #333;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-pagetitle1__text {
      column-gap: 12px;
      font-size: 42px;
      line-height: 1.5238095238;
      color: #333;
    }
  }

  .c-pagetitle1__text::before {
    content: "";
    aspect-ratio: 1;
    border-radius: 100%;
    background: #BF0C0C;
  }

 @media screen and (max-width: 767px) {
    .c-pagetitle1__text::before {
      translate: 0 calc(-0.5em + 10 * var(--mc--quantity--of-design--horizontal));
      width: calc(10 * var(--mc--quantity--of-design--horizontal));
      font-size: calc(28 * var(--mc--quantity--of-design--horizontal));
      line-height: 1.3571428571;
      color: #000;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-pagetitle1__text::before {
      translate: 0 calc(-0.5em + 10px);
      width: 10px;
      font-size: 42px;
      line-height: 1.5238095238;
      color: #333;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-pagetitle1__text::before {
      translate: 0 calc(-0.5em + 10px);
      width: 10px;
      font-size: 42px;
      line-height: 1.5238095238;
      color: #333;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-pagetitle1__text::before {
      translate: 0 calc(-0.5em + 10px);
      width: 10px;
      font-size: 42px;
      line-height: 1.5238095238;
      color: #333;
    }
  }

  .c-pagetitle1__note {
    letter-spacing: 0.03em;
    color: #333;
  }

 @media screen and (max-width: 767px) {
    .c-pagetitle1__note {
      font-size: calc(15 * var(--mc--quantity--of-design--horizontal));
      line-height: 1.6;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-pagetitle1__note {
      font-size: 16px;
      line-height: 1.8;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-pagetitle1__note {
      font-size: 16px;
      line-height: 1.8;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-pagetitle1__note {
      font-size: 16px;
      line-height: 1.8;
    }
  }

}

@layer component {
  .c-heading1 {
    font-weight: 300;
  }

 @media screen and (max-width: 767px) {
    .c-heading1 {
      margin-bottom: calc(24 * var(--mc--quantity--of-design--horizontal));
      font-size: calc(28 * var(--mc--quantity--of-design--horizontal));
      letter-spacing: 0.12em;
      line-height: 1.5;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-heading1 {
      row-gap: 20px;
      margin-bottom: 40px;
      font-size: 50px;
      letter-spacing: 0.1em;
      line-height: 1.28;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-heading1 {
      row-gap: 20px;
      margin-bottom: 40px;
      font-size: 50px;
      letter-spacing: 0.1em;
      line-height: 1.28;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-heading1 {
      row-gap: 20px;
      margin-bottom: 40px;
      font-size: 50px;
      letter-spacing: 0.1em;
      line-height: 1.28;
    }
  }

  .c-heading1[data-attr] {
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: repeat(2, auto);
  }

  .c-heading1[data-attr]::after {
    justify-self: start;
    content: attr(data-attr);
  }

  .c-heading1[data-attr]::after {
    font-family: "Neue Helvetica";
    font-weight: 400;
  }

 @media screen and (max-width: 767px) {
    .c-heading1[data-attr]::after {
      font-size: calc(16 * var(--mc--quantity--of-design--horizontal));
      letter-spacing: 0.1em;
      line-height: 2.25;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-heading1[data-attr]::after {
      color: #333;
      font-size: 20px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-heading1[data-attr]::after {
      color: #333;
      font-size: 20px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-heading1[data-attr]::after {
      color: #333;
      font-size: 20px;
    }
  }

  .c-heading2 {
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: repeat(2, auto);
    font-weight: 400;
    letter-spacing: 0.1em;
  }

 @media screen and (max-width: 767px) {
    .c-heading2 {
      margin-bottom: calc(22 * var(--mc--quantity--of-design--horizontal));
      row-gap: calc(8 * var(--mc--quantity--of-design--horizontal));
      font-size: calc(22 * var(--mc--quantity--of-design--horizontal));
      line-height: 1.3636363636;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-heading2 {
      margin-bottom: 40px;
      row-gap: 10px;
      font-size: 34px;
      line-height: 1.4117647059;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-heading2 {
      margin-bottom: 40px;
      row-gap: 10px;
      font-size: 34px;
      line-height: 1.4117647059;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-heading2 {
      margin-bottom: 40px;
      row-gap: 10px;
      font-size: 34px;
      line-height: 1.4117647059;
    }
  }

  .c-heading2::before,
  .c-heading2::after {
    content: "";
    order: 1;
    grid-column: 1/-1;
    grid-row: -1/-2;
    align-self: center;
    display: block;
  }

  .c-heading2::before {
    height: 1px;
    background-color: #000;
  }

 @media screen and (max-width: 767px) {
    .c-heading2::before {
      width: calc(30 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-heading2::before {
      width: 40px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-heading2::before {
      width: 40px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-heading2::before {
      width: 40px;
    }
  }

  .c-heading2::after {
    aspect-ratio: 1;
    border-radius: 100vw;
    background-color: #BF0C0C;
  }

 @media screen and (max-width: 767px) {
    .c-heading2::after {
      width: calc(5 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-heading2::after {
      width: 5px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-heading2::after {
      width: 5px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-heading2::after {
      width: 5px;
    }
  }

}

@layer component {
  .c-list1__hit {
    position: relative;
    z-index: 0;
    display: block;
  }

  .c-list1__hit::after {
    content: "";
    display: block;
    box-sizing: border-box;
    position: absolute;
    inset: 0;
    z-index: -2;
    border-bottom: solid 1px #D5D5D5;
    transition-property: border-color, left, right, box-shadow;
    transition-duration: 0.2s;
    transition-timing-function: ease-in;
  }
  .c-list1__hit.c-list1__hit--text::after {
    content: none;
  }
  .c-list1__hit--text::before {
    content: "";
    display: block;
    box-sizing: border-box;
    position: absolute;
    inset: 0;
    border-bottom: solid 1px #D5D5D5;
  }

  .c-list1__hit:hover::after,
  .c-list1__hit:focus::after {
    z-index: -1;
    transition-duration: 0.3s;
    transition-timing-function: ease-out;
    border-bottom-color: transparent;
    left: -10px;
    right: -10px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  }

  .c-list1__frame {
    display: block grid;
    grid-template-columns: 100%;
    grid-auto-rows: auto;
  }

 @media screen and (max-width: 767px) {
    .c-list1__frame {
      row-gap: calc(12 * var(--mc--quantity--of-design--horizontal));
      padding-top: calc(16 * var(--mc--quantity--of-design--horizontal));
      padding-bottom: calc(16 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-list1__frame {
      row-gap: 12px;
      padding-top: 16px;
      padding-bottom: 16px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-list1__frame {
      row-gap: 12px;
      padding-top: 16px;
      padding-bottom: 16px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-list1__frame {
      row-gap: 12px;
      padding-top: 16px;
      padding-bottom: 16px;
    }
  }

  .c-list1__frame:has(.c-list1__figure) {
    grid-template-columns: auto 1fr;
    grid-template-rows: auto 1fr;
  }

 @media screen and (max-width: 767px) {
    .c-list1__frame:has(.c-list1__figure) {
      column-gap: calc(16 * var(--mc--quantity--of-design--horizontal));
      padding-top: calc(17 * var(--mc--quantity--of-design--horizontal));
      padding-bottom: calc(16 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-list1__frame:has(.c-list1__figure) {
      column-gap: 24px;
      padding-top: 30px;
      padding-bottom: 30px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-list1__frame:has(.c-list1__figure) {
      column-gap: 24px;
      padding-top: 30px;
      padding-bottom: 30px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-list1__frame:has(.c-list1__figure) {
      column-gap: 24px;
      padding-top: 30px;
      padding-bottom: 30px;
    }
  }

  .c-list1__title {
    justify-self: start;
    display: inline grid;
    grid-column: auto;
    grid-auto-flow: column;
    align-items: center;
    font-weight: 400;
    letter-spacing: 0.05em;
  }

 @media screen and (max-width: 767px) {
    .c-list1__title {
      column-gap: calc(8 * var(--mc--quantity--of-design--horizontal));
      font-size: calc(13 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-list1__title {
      column-gap: 8px;
      font-size: 14px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-list1__title {
      column-gap: 8px;
      font-size: 14px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-list1__title {
      column-gap: 8px;
      font-size: 14px;
    }
  }

  .c-list1__title :where(time) {
    order: -1;
  }

 @media screen and (max-width: 767px) {
    .c-list1__title :where(time) {
      margin-right: calc(4 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-list1__title :where(time) {
      margin-right: 4px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-list1__title :where(time) {
      margin-right: 4px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-list1__title :where(time) {
      margin-right: 4px;
    }
  }

  .c-list1__title :where(b),
  .c-list1__title :where(span) {
    padding: 0.5em 0.75em;
    letter-spacing: 0.05em;
  }

 @media screen and (max-width: 767px) {

    .c-list1__title :where(b),
    .c-list1__title :where(span) {
      border-radius: calc(2 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {

    .c-list1__title :where(b),
    .c-list1__title :where(span) {
      border-radius: 2px;
      font-size: 11px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {

    .c-list1__title :where(b),
    .c-list1__title :where(span) {
      border-radius: 2px;
      font-size: 11px;
    }
  }

  @media screen and (min-width: 1440px) {

    .c-list1__title :where(b),
    .c-list1__title :where(span) {
      border-radius: 2px;
      font-size: 11px;
    }
  }

  .c-list1__title :where(b) {
    background-color: #FADDF3;
    text-transform: uppercase;
  }

  .c-list1__title :where(span) {
    border: solid 1px #D5D5D5;
  }

 @media screen and (max-width: 767px) {
    .c-list1__frame:has(.c-list1__figure) .c-list1__title {
      column-gap: calc(16 * var(--mc--quantity--of-design--horizontal));
      row-gap: calc(8 * var(--mc--quantity--of-design--horizontal));
    }
  }

 @media screen and (max-width: 767px) {
    .c-list1__frame:has(.c-list1__figure) .c-list1__title :where(time) {
      grid-column: 1/span 2;
      grid-row: 1/2;
      margin-right: 0;
    }
  }

 @media screen and (max-width: 767px) {

    .c-list1__frame:has(.c-list1__figure) .c-list1__title :where(b),
    .c-list1__frame:has(.c-list1__figure) .c-list1__title :where(span) {
      grid-row: 2/3;
    }
  }

  .c-list1__figure {
    grid-area: 1/1/-1/2;
    box-sizing: border-box;
    border: solid 1px #D5D5D5;
    aspect-ratio: 16/9;
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-list1__figure {
      width: 282px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-list1__figure {
      width: 282px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-list1__figure {
      width: 282px;
    }
  }

 @media screen and (max-width: 767px) {
    .c-list1__figure {
      width: calc(126 * var(--mc--quantity--of-design--horizontal));
    }
  }

  .c-list1__description {
    font-weight: 400;
    letter-spacing: 0.04em;
  }

 @media screen and (max-width: 767px) {
    .c-list1__description {
      line-height: 1.6;
      font-size: calc(15 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-list1__description {
      line-height: 1.6666666667;
      font-size: 15px;
      transition-property: color;
      transition-duration: 0.2s;
      transition-timing-function: ease-in;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-list1__description {
      line-height: 1.6666666667;
      font-size: 15px;
      transition-property: color;
      transition-duration: 0.2s;
      transition-timing-function: ease-in;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-list1__description {
      line-height: 1.6666666667;
      font-size: 15px;
      transition-property: color;
      transition-duration: 0.2s;
      transition-timing-function: ease-in;
    }
  }

  .c-list1__hit:hover :where(.c-list1__description),
  .c-list1__hit:focus-visible :where(.c-list1__description) {
    transition-duration: 0.3s;
    transition-timing-function: ease-out;
    color: #A22041;
  }
  .c-list1__hit.c-list1__hit--text:hover :where(.c-list1__description),
  .c-list1__hit.c-list1__hit--text:focus-visible :where(.c-list1__description) {
    color: #0F2350;
  }

  .c-list1__hit:hover :where(.c-list1__description) :where(p)::after,
  .c-list1__hit:focus-visible :where(.c-list1__description) :where(p)::after {
    transition-duration: 0.3s;
    transition-timing-function: ease-out;
    background-color: #A22041 !important;
  }

 @media screen and (max-width: 767px) {
    .c-list1__tarminal {
      height: calc(100 * var(--mc--quantity--of-design--horizontal));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-list1__tarminal {
      height: 120px;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .c-list1__tarminal {
      height: 120px;
    }
  }

  @media screen and (min-width: 1440px) {
    .c-list1__tarminal {
      height: 120px;
    }
  }

  .c-list1__tarminal :where(button) {
    aspect-ratio: unset;
    width: 100%;
    height: 100%;
  }
}

@layer component {
  .c-content {
    margin-bottom: calc(10 * var(--base-unit)); 
  }
 @media screen and (max-width: 767px) {
    .c-content {
      margin-bottom: calc(4 * var(--base-unit)); 
    }
  }
}


/* Utility */
@layer utility {
  .u-4sr:not(:focus):not(:active) {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute !important;
    width: 1px;
    word-wrap: normal !important;
    /* Many screen reader and browser combinations announce broken words as they would appear visually. */
  }

  .u-4sr:focus {
    background-color: #000;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px #000;
    clip: auto !important;
    -webkit-clip-path: none;
    clip-path: none;
    color: #fff;
    display: block;
    font-size: 0.875rem;
    font-weight: 700;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
  }

  .u-ta--l {
    text-align: left !important;
  }

  .u-ta--c {
    text-align: center !important;
  }

  .u-ta--r {
    text-align: right !important;
  }

  .u-fw--700 {
    font-weight: 700 !important;
  }

  .u-fw--600 {
    font-weight: 600 !important;
  }

  .u-fw--500 {
    font-weight: 500 !important;
  }

  .u-fw--400 {
    font-weight: 400 !important;
  }

  .u-fw--300 {
    font-weight: 300 !important;
  }

  .u-mb--100 {
    margin-bottom: calc(10 * var(--base-unit)) !important;
  }

 @media screen and (max-width: 767px) {
    .u-mb--100 {
      margin-bottom: calc(5 * var(--base-unit)) !important;
    }
  }
}

@layer utility {
  .u-hide {
    display: none;
  }

 @media screen and (max-width: 767px) {
    .u-hide--sp {
      display: none;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .u-hide--tb {
      display: none;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .u-hide--lt {
      display: none;
    }
  }

  @media screen and (min-width: 1440px) {
    .u-hide--dt {
      display: none;
    }
  }



  @media print, screen and (min-width: 768px) {
    .u-hide--tb-pc {
      display: none;
    }
  }



  @media print, screen and (max-width: 1199px) {
    .u-hide--sp-tb {
      display: none;
    }
  }



  @media screen and (min-width: 1200px) {
    .u-hide--pc {
      display: none;
    }
  }

}

@layer utility {
  /* ---------------------------------------------
  *   margin-top
  --------------------------------------------- */
  .u-mgt--0 {
      margin-top: 0 !important;
  }
  .u-mgt--10 {
      margin-top: calc(1 * var(--base-unit)) !important;
  }
  .u-mgt--20 {
      margin-top: calc(2 * var(--base-unit)) !important;
  }
  .u-mgt--30 {
      margin-top: calc(3 * var(--base-unit)) !important;
  }
  .u-mgt--40 {
      margin-top: calc(4 * var(--base-unit)) !important;
  }
  .u-mgt--50 {
      margin-top: calc(5 * var(--base-unit)) !important;
  }
  .u-mgt--60 {
      margin-top: calc(6 * var(--base-unit)) !important;
  }
  .u-mgt--70 {
      margin-top: calc(7 * var(--base-unit)) !important;
  }
  .u-mgt--80 {
      margin-top: calc(8 * var(--base-unit)) !important;
  }
  .u-mgt--90 {
      margin-top: calc(9 * var(--base-unit)) !important;
  }
  .u-mgt--100 {
      margin-top: calc(10 * var(--base-unit)) !important;
  }
  .u-mgt--110 {
      margin-top: calc(11 * var(--base-unit)) !important;
  }
  .u-mgt--120 {
      margin-top: calc(12 * var(--base-unit)) !important;
  }
  .u-mgt--130 {
      margin-top: calc(13 * var(--base-unit)) !important;
  }
  .u-mgt--140 {
      margin-top: calc(14 * var(--base-unit)) !important;
  }
  .u-mgt--150 {
      margin-top: calc(15 * var(--base-unit)) !important;
  }
 @media screen and (max-width: 767px) {
      .u-mgt-sp--0 {
          margin-top: 0 !important;
      }
      .u-mgt-sp--10 {
          margin-top: calc(1 * var(--base-unit)) !important;
      }
      .u-mgt-sp--20 {
          margin-top: calc(2 * var(--base-unit)) !important;
      }
      .u-mgt-sp--30 {
          margin-top: calc(3 * var(--base-unit)) !important;
      }
      .u-mgt-sp--40 {
          margin-top: calc(4 * var(--base-unit)) !important;
      }
      .u-mgt-sp--50 {
          margin-top: calc(5 * var(--base-unit)) !important;
      }
      .u-mgt-sp--60 {
          margin-top: calc(6 * var(--base-unit)) !important;
      }
      .u-mgt-sp--70 {
          margin-top: calc(7 * var(--base-unit)) !important;
      }
      .u-mgt-sp--80 {
          margin-top: calc(8 * var(--base-unit)) !important;
      }
      .u-mgt-sp--90 {
          margin-top: calc(9 * var(--base-unit)) !important;
      }
      .u-mgt-sp--100 {
          margin-top: calc(10 * var(--base-unit)) !important;
      }
      .u-mgt-sp--110 {
          margin-top: calc(11 * var(--base-unit)) !important;
      }
      .u-mgt-sp--120 {
          margin-top: calc(12 * var(--base-unit)) !important;
      }
      .u-mgt-sp--130 {
          margin-top: calc(13 * var(--base-unit)) !important;
      }
      .u-mgt-sp--140 {
          margin-top: calc(14 * var(--base-unit)) !important;
      }
      .u-mgt-sp--150 {
          margin-top: calc(15 * var(--base-unit)) !important;
      }
  }
  /* ---------------------------------------------
  *   margin-bottom
  --------------------------------------------- */
  .u-mgb--0 {
      margin-bottom: 0 !important;
  }
  .u-mgb--10 {
      margin-bottom: calc(1 * var(--base-unit)) !important;
  }
  .u-mgb--20 {
      margin-bottom: calc(2 * var(--base-unit)) !important;
  }
  .u-mgb--30 {
      margin-bottom: calc(3 * var(--base-unit)) !important;
  }
  .u-mgb--40 {
      margin-bottom: calc(4 * var(--base-unit)) !important;
  }
  .u-mgb--50 {
      margin-bottom: calc(5 * var(--base-unit)) !important;
  }
  .u-mgb--60 {
      margin-bottom: calc(6 * var(--base-unit)) !important;
  }
  .u-mgb--70 {
      margin-bottom: calc(7 * var(--base-unit)) !important;
  }
  .u-mgb--80 {
      margin-bottom: calc(8 * var(--base-unit)) !important;
  }
  .u-mgb--90 {
      margin-bottom: calc(9 * var(--base-unit)) !important;
  }
  .u-mgb--100 {
      margin-bottom: calc(10 * var(--base-unit)) !important;
  }
  .u-mgb--110 {
      margin-bottom: calc(11 * var(--base-unit)) !important;
  }
  .u-mgb--120 {
      margin-bottom: calc(12 * var(--base-unit)) !important;
  }
  .u-mgb--130 {
      margin-bottom: calc(13 * var(--base-unit)) !important;
  }
  .u-mgb--140 {
      margin-bottom: calc(14 * var(--base-unit)) !important;
  }
  .u-mgb--150 {
      margin-bottom: calc(15 * var(--base-unit)) !important;
  }
 @media screen and (max-width: 767px) {
      .u-mgb-sp--0 {
          margin-bottom: 0 !important;
      }
      .u-mgb-sp--10 {
          margin-bottom: calc(1 * var(--base-unit)) !important;
      }
      .u-mgb-sp--20 {
          margin-bottom: calc(2 * var(--base-unit)) !important;
      }
      .u-mgb-sp--30 {
          margin-bottom: calc(3 * var(--base-unit)) !important;
      }
      .u-mgb-sp--40 {
          margin-bottom: calc(4 * var(--base-unit)) !important;
      }
      .u-mgb-sp--50 {
          margin-bottom: calc(5 * var(--base-unit)) !important;
      }
      .u-mgb-sp--60 {
          margin-bottom: calc(6 * var(--base-unit)) !important;
      }
      .u-mgb-sp--70 {
          margin-bottom: calc(7 * var(--base-unit)) !important;
      }
      .u-mgb-sp--80 {
          margin-bottom: calc(8 * var(--base-unit)) !important;
      }
      .u-mgb-sp--90 {
          margin-bottom: calc(9 * var(--base-unit)) !important;
      }
      .u-mgb-sp--100 {
          margin-bottom: calc(10 * var(--base-unit)) !important;
      }
      .u-mgb-sp--110 {
          margin-bottom: calc(11 * var(--base-unit)) !important;
      }
      .u-mgb-sp--120 {
          margin-bottom: calc(12 * var(--base-unit)) !important;
      }
      .u-mgb-sp--130 {
          margin-bottom: calc(13 * var(--base-unit)) !important;
      }
      .u-mgb-sp--140 {
          margin-bottom: calc(14 * var(--base-unit)) !important;
      }
      .u-mgb-sp--150 {
          margin-bottom: calc(15 * var(--base-unit)) !important;
      }
  }
}
@layer utility {
  /* ---------------------------------------------
  *   text-align
  --------------------------------------------- */
 @media screen and (max-width: 767px) {
      .u-ta-sp--l {
          text-align: left !important;
      }
      .u-ta-sp--c {
          text-align: center !important;
      }
      .u-ta-sp--r {
          text-align: right !important;
      }
  }
}

@layer utility {
	/* This Class will right-align elements that are centered with "margin:0 auto;". */
	.u-mr--0 {
		margin-right: 0;
	}
	/* This Class will left-align elements that are centered with "margin:0 auto;". */
	.u-ml--0 {
		margin-left: 0;
	}

	.u-my--auto {
		margin-top: auto;
		margin-bottom: auto;
	}

	/* Zoom image */
	.u-image-hover--0 {
		overflow: hidden;

		img {
			transition: 0.3s ease 0s;
		}

		&:hover img {
			@media screen and (min-width: 768px) {
				transform: scale(1.1);
			}
		}
	}

	.u-mgt--160 {
		margin-top: calc(16 * var(--base-unit)) !important;
	}
	.u-mgt--170 {
		margin-top: calc(17 * var(--base-unit)) !important;
	}
	.u-mgt--180 {
		margin-top: calc(18 * var(--base-unit)) !important;
	}

	.u-heading-small--0 {
  font-size: calc(1.8 * var(--base-unit));

 @media screen and (max-width: 767px) {
    font-size: calc(1.5 * var(--base-unit));
  }
	}

	.u-heading-small--1 {
		font-size: calc(1.6 * var(--base-unit));
	}
}


@layer component {

  .c-list1__description{
    color: #0F2350;
  }

  .p-investment__lnk1 {
    display: flex;
  }

  .c-list1__hit .c-list1__icon {
    filter: invert(19%) sepia(82%) saturate(1575%) hue-rotate(200deg) brightness(36%) contrast(99%);
    transition-duration: 0.2s;
    transition-timing-function: ease-in;
    vertical-align: calc(-0.35 * var(--base-unit));
    width: calc(1.8 * var(--base-unit));
    aspect-ratio: 1;
    margin-left: calc(0.8* var(--base-unit));
  }

  .c-list1__hit:hover .c-list1__icon {
    filter: invert(19%) sepia(72%) saturate(1936%) hue-rotate(320deg) brightness(96%) contrast(100%);
    transition-duration: 0.2s;
    transition-timing-function: ease-in;
  }

  .p-investment__lnk1 span {
    font-size: 80%;
  }

  .c-list1__description figure,
  .p-investment__lnk1 figure {
    display: inline-block;
  }

 @media screen and (max-width: 767px) {
    .p-investment__lnk1 {
      display: block;
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {}

  @media screen and (min-width: 1200px) and (max-width: 1439px) {}

  .c-carousel1__image {
    overflow: hidden;
  }

  .splide__slide a .c-carousel1__image img {
    transition-duration: 0.3s;
  }

  .splide__slide a:hover .c-carousel1__image img {
    transition-duration: 0.3s;
    transition-timing-function: ease-out;
    scale: 1.1;
  }

  .splide__slide a:hover .c-carousel1__text {
    background-color: #A22041;
  }

  .p-menu1__site :where(menu > li.c-access a),
  .p-menu1__site .c-search1 {
    position: relative;
  }
  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__site :where(menu > li.c-access a) {
      top: 10px;
    }
  }

  .p-menu1__site :where(menu > li.c-access a)::after,
  .p-menu1__site .c-search1::after {
    content: "";
    display: block;
    height: 1px;
    position: absolute;
    bottom: -0.4em;
    background-color: #666666;
    transition: width 0.2s ease-in;
    width: 0;
  }

  .p-menu1__site :where(menu > li.c-access a):hover::after,
  .p-menu1__site .c-search1:hover::after {
    transition-duration: 0.3s;
    transition-timing-function: ease-out;
    width: 100%;
  }

  .c-language1__control :where(label):hover {
    transition-timing-function: ease-in;
    color: #A22041;
  }

  .p-location1 :where(ol) {
    padding: 2px 0;
  }

  .p-location1 :where(ol > li) {
    position: relative;
    line-height: 1.8;
    padding: 4px 0;
  }
  .p-location1 :where(ol > li > a) {
    position: relative;
    line-height: 1.8;
    padding: 4px 0;
  }

  .p-location1 :where(ol > li):not(:last-child) a::before {
    content: "";
    display: block;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #666666;
    transition: width 0.2s ease-in;
    width: 0;
  }

  .p-location1 :where(ol > li):not(:last-child) a:hover::before {
    transition-duration: 0.3s;
    transition-timing-function: ease-out;
    width: 100%;
  }

  .c-categorymap1__to-top a {
    position: relative;
  }

  .c-categorymap1__to-top a::after {
    content: "";
    display: block;
    height: 1px;
    position: absolute;
    bottom: 0;
    background-color: #666666;
    transition: width 0.2s ease-in;
    width: 0;
  }

  .c-categorymap1__to-top a:hover::after {
    transition-duration: 0.3s;
    transition-timing-function: ease-out;
    width: 100%;
  }

  .p-menu1__pageItem.p-menu1__pageItem--explore .p-menu1__pageCategory a::before,
  .p-menu1__pageItem.p-menu1__pageItem--recruit .p-menu1__pageCategory a::before {
    visibility: hidden;
  }

  @media screen and (min-width: 1200px) and (max-width: 1439px) {
  .p-menu1__pageItem.p-menu1__pageItem--explore .p-menu1__pageCategory a::before,
  .p-menu1__pageItem.p-menu1__pageItem--recruit .p-menu1__pageCategory a::before {
      visibility: hidden;
    }
  }

  @media screen and (min-width: 1440px) {
  .p-menu1__pageItem.p-menu1__pageItem--explore .p-menu1__pageCategory a::before,
  .p-menu1__pageItem.p-menu1__pageItem--recruit .p-menu1__pageCategory a::before {
      visibility: hidden;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageItem.p-menu1__pageItem--explore .p-menu1__pageItemControl button::before {
      content: none;
    }
  }

 @media screen and (max-width: 767px) {
  .p-menu1__pageItem.p-menu1__pageItem--explore .p-menu1__pageCategory a::before,
  .p-menu1__pageItem.p-menu1__pageItem--recruit .p-menu1__pageCategory a::before {
      content: none;
    }
  }

 @media screen and (max-width: 767px) {
    .p-menu1__pageItem.p-menu1__pageItem--explore .p-menu1__pageItemControl button::after {
      content: none;
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-menu1__pageItem.p-menu1__pageItem--explore .p-menu1__pageItemControl button::after {
      content: none;
    }
  }

 @media screen and (max-width: 767px) {
    .p-gallery2__terminal {
      padding-top: calc(100 * var(--mc--quantity--of-design--horizontal));
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-gallery2__terminal {
      padding-top: 120px;
    }
  }

  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-gallery2__terminal {
      padding-top: 120px;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-gallery2__terminal {
      padding-top: 120px;
    }
  }

  .p-gallery2--active .p-gallery2__terminal {
    padding-top: 0;
  }

  .p-gallery2__terminal {
    background-image: linear-gradient(to bottom, rgb(from var(--mc-gallery2--color--for-hide, #FFF) R G B/0) 0, rgb(from var(--mc-gallery2--color-for-hide, #FFF) R G B/1) 50%);
  }

 @media screen and (max-width: 767px) {
    .p-gallery2__terminal {
      background-image: linear-gradient(to bottom, rgb(from var(--mc-gallery2--color--for-hide, #FFF) R G B/0) 0, rgb(from var(--mc-gallery2--color-for-hide, #FFF) R G B/1) 50%);
    }
  }

  .p-close-button {
    position: absolute;
    bottom: 30px;
    right: 30px;
    width: 30px;
    height: 30px;
    cursor: pointer;
    filter: #fff;
    background-color: #FFF;
    mask: var(--mc-button-url-mark-after, url(https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_x_2.svg) no-repeat center / contain);
  }
  @media screen and (max-width: 1199px) {
    .p-close-button {
      display: none;
    }
  }

}

/* モジュール */
@layer component {

  /* キーフレーム */
  @keyframes kf-fade {
    0% {
      opacity: 0;
    }

    100% {
      opacity: 1;
    }
  }

  /* moduleページのみ */
  .module {
    border-top: calc(4 * var(--base-unit)) solid #000;
    border-bottom: calc(4 * var(--base-unit)) solid #000;
    padding: calc(4 * var(--base-unit)) 0;
  }

  .module+.module {
    border-top: 0;
  }

  .module__hd {
    margin: 0 auto;
    width: var(--width-contents);
    display: flex;
    align-items: flex-end;
    column-gap: calc(1 * var(--base-unit));
  }

  .module__hd>span {
    font-size: calc(1.6 * var(--base-unit));
    color: #ff8600;
    font-weight: 500;
    line-height: calc(21.6 / 16);
    flex-shrink: 1;
  }

  .module__hd>b {
    font-size: calc(1.6 * var(--base-unit));
    line-height: 1;
    color: #fff;
    font-weight: 700;
    width: calc(4.4 * var(--base-unit));
    height: calc(2.8 * var(--base-unit));
    background: #004fce;
    opacity: 0.8;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    white-space: nowrap;
  }

  /* H1見出し */

  .p-pagetitle1.p-pagetitle1--nobg{
    height: unset;
    min-height: unset;
    background: unset;
    padding: unset;
  }
  .p-pagetitle1 {
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: auto;
    grid-auto-flow: row;
    align-content: center;
    box-sizing: border-box;
    width: 100%;
    background: #f7f7f8;
  }

 @media screen and (max-width: 767px) {
    .p-pagetitle1 {
      padding-top: calc(8* var(--base-unit));
      padding-bottom: calc(8* var(--base-unit));
      min-height: calc(16* var(--base-unit));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-pagetitle1 {
      padding-top: calc(6* var(--base-unit));
      padding-bottom: calc(6* var(--base-unit));
      min-height: calc(22* var(--base-unit));
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-pagetitle1 {
      padding-top: calc(6* var(--base-unit));
      padding-bottom: calc(6* var(--base-unit));
      min-height: calc(22* var(--base-unit));
    }
  }

  /* @media print {
    .p-pagetitle1 {
      padding-top: calc(6* var(--base-unit));
      padding-bottom: calc(6* var(--base-unit));
      min-height: calc(22* var(--base-unit));
    }
  } */

  @media screen and (min-width: 1440px) {
    .p-pagetitle1 {
      padding-top: calc(6* var(--base-unit));
      padding-bottom: calc(6* var(--base-unit));
      min-height: calc(22* var(--base-unit));
    }
  }

  .p-pagetitle1__text {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto;
    align-items: baseline;
    width: 100%;
    font-weight: 300;
    letter-spacing: 0.12em;
  }

 @media screen and (max-width: 767px) {
    .p-pagetitle1__text {
      column-gap: calc(10 * var(--mc--quantity--of-design--horizontal));
      font-size: calc(28 * var(--mc--quantity--of-design--horizontal));
      line-height: 1.3571428571;
      color: #000;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-pagetitle1__text {
      column-gap: 12px;
      font-size: 42px;
      line-height: 1.5238095238;
      color: #333;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-pagetitle1__text {
      column-gap: 12px;
      font-size: 42px;
      line-height: 1.5238095238;
      color: #333;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-pagetitle1__text {
      column-gap: 12px;
      font-size: 42px;
      line-height: 1.5238095238;
      color: #333;
    }
  }

  .p-pagetitle1__text::before {
    content: "";
    aspect-ratio: 1;
    border-radius: 100%;
    background: #BF0C0C;
  }

 @media screen and (max-width: 767px) {
    .p-pagetitle1__text::before {
      translate: 0 calc(-0.5em + 10 * var(--mc--quantity--of-design--horizontal));
      width: calc(10 * var(--mc--quantity--of-design--horizontal));
      font-size: calc(28 * var(--mc--quantity--of-design--horizontal));
      line-height: 1.3571428571;
      color: #000;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-pagetitle1__text::before {
      translate: 0 calc(-0.5em + 10px);
      width: 10px;
      font-size: 42px;
      line-height: 1.5238095238;
      color: #333;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-pagetitle1__text::before {
      translate: 0 calc(-0.5em + 10px);
      width: 10px;
      font-size: 42px;
      line-height: 1.5238095238;
      color: #333;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-pagetitle1__text::before {
      translate: 0 calc(-0.5em + 10px);
      width: 10px;
      font-size: 42px;
      line-height: 1.5238095238;
      color: #333;
    }
  }

  .p-pagetitle1__note {
    letter-spacing: 0.03em;
    color: #333;
  }

 @media screen and (max-width: 767px) {
    .p-pagetitle1__note {
      font-size: calc(15 * var(--mc--quantity--of-design--horizontal));
      line-height: 1.6;
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-pagetitle1__note {
      font-size: 16px;
      line-height: 1.8;
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-pagetitle1__note {
      font-size: 16px;
      line-height: 1.8;
    }
  }

  @media screen and (min-width: 1440px) {
    .p-pagetitle1__note {
      font-size: 16px;
      line-height: 1.8;
    }
  }
  
  /* H1見出し */
  .p-hd01 {
    margin: 0;
    width: 100%;
  }

  .p-hd01+*,
  .module .p-pagetitle1+* {
    margin-top: calc(8 * var(--base-unit)) !important;
  }

  .p-pagetitle1__hd {
    margin: 0 auto;
    width: var(--width-contents);
    display: flex;
    align-items: flex-start;
    column-gap: calc(1.2 * var(--base-unit));
  }

  .p-pagetitle1__hd::before {
    margin-top: calc(2.6 * var(--base-unit));
    content: '';
    display: block;
    width: calc(1 * var(--base-unit));
    height: calc(1 * var(--base-unit));
    border-radius: 50%;
    background: #bf0c0c;
  }

  .p-pagetitle1__hd>span {
    display: block;
    font-size: calc(4.2 * var(--base-unit));
    font-weight: 300;
    letter-spacing: 0.12em;
    line-height: calc(64 / 42);
    color: #000;
    flex: 1;
  }

  .p-pagetitle1__txt {
    margin: calc(2 * var(--base-unit)) auto 0;
    width: var(--width-contents);
    font-weight: 400;
    font-size: calc(1.6 * var(--base-unit));
    letter-spacing: 0.03em;
    line-height: calc(28.8 / 16);
    color: #333;
  }

 @media screen and (max-width: 767px) {
    .p-hd01+*,
    .module .p-pagetitle1+* {
      margin-top: calc(3 * var(--base-unit)) !important;
    }

    .p-pagetitle1__hd::before {
      margin-top: calc(1.5 * var(--base-unit));
    }

    .p-pagetitle1__hd>span {
      font-size: calc(2.8 * var(--base-unit));
      line-height: calc(38 / 28);
    }

    .p-pagetitle1__txt {
      margin-top: calc(1.2 * var(--base-unit));
      font-size: calc(1.5 * var(--base-unit));
      letter-spacing: 0.04em;
      line-height: calc(24 / 15);
      color: #000;
    }
  }


  .p-hd01 {
    margin: 0;
    width: 100%;
  }

  .p-hd01+*,
  .module .c-pagetitle1+* {
    margin-top: calc(8 * var(--base-unit)) !important;
  }

  .p-hd01__hd {
    margin: 0 auto;
    width: var(--width-contents);
    display: flex;
    align-items: flex-start;
    column-gap: calc(1.2 * var(--base-unit));
  }

  .p-hd01__hd::before {
    margin-top: calc(2.6 * var(--base-unit));
    content: '';
    display: block;
    width: calc(1 * var(--base-unit));
    height: calc(1 * var(--base-unit));
    border-radius: 50%;
    background: #bf0c0c;
  }

  .p-hd01__hd>span {
    display: block;
    font-size: calc(4.2 * var(--base-unit));
    font-weight: 300;
    letter-spacing: 0.12em;
    line-height: calc(64 / 42);
    color: #000;
    flex: 1;
  }

  .p-hd01__txt {
    margin: calc(2 * var(--base-unit)) auto 0;
    width: var(--width-contents);
    font-weight: 400;
    font-size: calc(1.6 * var(--base-unit));
    letter-spacing: 0.03em;
    line-height: calc(28.8 / 16);
    color: #333;
  }

 @media screen and (max-width: 767px) {
    .p-hd01+*,
    .module .c-pagetitle1+* {
      margin-top: calc(3 * var(--base-unit)) !important;
    }

    .p-hd01__hd::before {
      margin-top: calc(1.5 * var(--base-unit));
    }

    .p-hd01__hd>span {
      font-size: calc(2.8 * var(--base-unit));
      line-height: calc(38 / 28);
    }

    .p-hd01__txt {
      margin-top: calc(1.2 * var(--base-unit));
      font-size: calc(1.5 * var(--base-unit));
      letter-spacing: 0.04em;
      line-height: calc(24 / 15);
      color: #000;
    }
  }

  /* H1見出し（グレー背景） */
  .p-hd01.p-hd01--bg {
    padding: calc(6 * var(--base-unit)) 0;
    min-height: calc(22 * var(--base-unit));
    background: #f7f7f8;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-sizing: border-box;
  }

 @media screen and (max-width: 767px) {
    .p-hd01.p-hd01--bg {
      padding: calc(8 * var(--base-unit)) 0;
      min-height: calc(16 * var(--base-unit));
    }
  }

  /* H2見出し */
  .p-hd02 {
    margin: calc(8 * var(--base-unit)) 0 0;
    width: 100%;
  }

  .p-hd02+* {
    margin-top: calc(3 * var(--base-unit)) !important;
  }

  .p-hd02__hd {
    margin: 0 auto;
    width: var(--width-contents);
    position: relative;
    padding-bottom: calc(1.5 * var(--base-unit));
  }

  .p-hd02__hd::before,
  .p-hd02__hd::after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    height: calc(0.5 * var(--base-unit));
  }

  .p-hd02__hd::before {
    width: calc(4.3 * var(--base-unit));
    background: linear-gradient(0deg, #000 0%, #000 100%) no-repeat right center / 100% calc(0.1 * var(--base-unit));
  }

  .p-hd02__hd::after {
    width: calc(0.5 * var(--base-unit));
    border-radius: 50%;
    background: #bf0c0c;
  }

  .p-hd02__hd>span {
    font-size: calc(3.4 * var(--base-unit));
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: calc(48 / 34);
    color: #333;
  }

 @media screen and (max-width: 767px) {
    .p-hd02 {
      margin-top: calc(4 * var(--base-unit));
    }

    .p-hd02+* {
      margin-top: calc(2.4 * var(--base-unit)) !important;
    }

    .p-hd02__hd {
      padding-bottom: calc(1.3 * var(--base-unit));
    }

    .p-hd02__hd::before {
      width: calc(3.3 * var(--base-unit));
    }

    .p-hd02__hd>span {
      font-size: calc(2.2 * var(--base-unit));
      font-weight: 500;
      line-height: calc(30 / 22);
    }
  }

  /* H3見出し */
  .p-hd03 {
    margin: calc(6 * var(--base-unit)) 0 0;
    width: 100%;
  }

  .p-hd03+* {
    margin-top: calc(3 * var(--base-unit)) !important;
  }

  .p-hd03__hd {
    margin: 0 auto;
    width: var(--width-contents);
    display: flex;
    align-items: flex-start;
    column-gap: calc(1.2 * var(--base-unit));
  }

  .p-hd03__hd::before {
    margin-top: calc(1.2 * var(--base-unit));
    content: '';
    display: block;
    width: calc(1 * var(--base-unit));
    height: calc(1.8 * var(--base-unit));
    background:
      linear-gradient(0deg, #bf0c0c 0%, #bf0c0c 100%) no-repeat left top / calc(0.2 * var(--base-unit)) 100%,
      linear-gradient(0deg, #bf0c0c 0%, #bf0c0c 100%) no-repeat center top / calc(0.2 * var(--base-unit)) 100%,
      linear-gradient(0deg, #bf0c0c 0%, #bf0c0c 100%) no-repeat right top / calc(0.2 * var(--base-unit)) 100%;
  }

  .p-hd03__hd>span {
    display: block;
    font-size: calc(2.8 * var(--base-unit));
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: calc(42 / 28);
    color: #333;
    flex: 1;
  }

 @media screen and (max-width: 767px) {
    .p-hd03 {
      margin-top: calc(4 * var(--base-unit));
    }

    .p-hd03+* {
      margin-top: calc(2.4 * var(--base-unit)) !important;
    }

    .p-hd03__hd::before {
      margin-top: calc(0.4 * var(--base-unit));
    }

    .p-hd03__hd>span {
      font-size: calc(1.8 * var(--base-unit));
      font-weight: 500;
      line-height: calc(28 / 18);
    }
  }

  /* H4見出し */
  .p-hd04 {
    margin: calc(4 * var(--base-unit)) 0 0;
    width: 100%;
  }

  .p-hd04+* {
    margin-top: calc(2 * var(--base-unit)) !important;
  }

  .p-hd04__hd {
    margin: 0 auto;
    width: var(--width-contents);
  }

  .p-hd04__hd>span {
    display: block;
    font-size: calc(2.2 * var(--base-unit));
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: calc(32 / 22);
    color: #333;
  }

 @media screen and (max-width: 767px) {
    .p-hd04 {
      margin-top: calc(3 * var(--base-unit));
    }

    .p-hd04+* {
      margin-top: calc(2 * var(--base-unit)) !important;
    }

    .p-hd04__hd>span {
      font-size: calc(1.8 * var(--base-unit));
      font-weight: 500;
      line-height: calc(28 / 18);
    }
  }

  /* H5見出し */
  .p-hd05 {
    margin: calc(3 * var(--base-unit)) 0 0;
    width: 100%;
  }

  .p-hd05+* {
    margin-top: calc(2 * var(--base-unit)) !important;
  }

  .p-hd05__hd {
    margin: 0 auto;
    width: var(--width-contents);
  }

  .p-hd05__hd>span {
    display: block;
    font-size: calc(1.6 * var(--base-unit));
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: calc(28.8 / 16);
    color: #333;
  }

 @media screen and (max-width: 767px) {
    .p-hd05 {
      margin-top: calc(3 * var(--base-unit));
    }

    .p-hd05+* {
      margin-top: calc(1.6 * var(--base-unit)) !important;
    }

    .p-hd05__hd>span {
      font-size: calc(1.5 * var(--base-unit));
      line-height: calc(28.8 / 15);
    }
  }

  /* 特殊見出し_サブタイトルあり */
  .p-hd06 {
    margin: calc(4 * var(--base-unit)) 0 0;
    width: 100%;
  }

  .p-hd06__hd {
    margin: 0 auto;
    width: var(--width-contents);
  }

  .p-hd06__hd>span {
    display: block;
    font-size: calc(5 * var(--base-unit));
    font-weight: 300;
    letter-spacing: 0.1em;
    line-height: calc(64 / 50);
    color: #333;
  }

  .p-hd06__hd>small {
    margin-top: calc(1.5 * var(--base-unit));
    display: block;
    font-size: calc(2 * var(--base-unit));
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: 1;
    color: #333;
  }

 @media screen and (max-width: 767px) {
    .p-hd06__hd>span {
      font-size: calc(2.8 * var(--base-unit));
      letter-spacing: 0.12em;
      line-height: calc(42 / 28);
      color: #000;
    }

    .p-hd06__hd>small {
      margin-top: calc(0.5 * var(--base-unit));
      font-size: calc(1.6 * var(--base-unit));
    }
  }

  /* 本文テキスト */
  .p-txt01 {
    margin: calc(2 * var(--base-unit)) 0 0;
    width: 100%;
    font-weight: 400;
    font-size: calc(1.6 * var(--base-unit));
    letter-spacing: 0.03em;
    line-height: calc(28.8 / 16);
    color: #333;
  }

  .p-txt01>p {
    margin: 0 auto;
    width: var(--width-contents);
  }

 @media screen and (max-width: 767px) {
    .p-txt01 {
      margin-top: calc(1.8 * var(--base-unit));
      font-size: calc(1.5 * var(--base-unit));
      line-height: calc(27 / 15);
    }
  }

  /* 本文テキスト（リード） */
  .p-txt01.p-txt01--lead {
    margin-top: calc(4 * var(--base-unit));
    font-size: calc(1.8 * var(--base-unit));
    line-height: calc(32.4 / 18);
  }

  .p-txt01.p-txt01--lead+* {
    margin-top: calc(2 * var(--base-unit)) !important;
  }

 @media screen and (max-width: 767px) {
    .p-txt01.p-txt01--lead {
      margin-top: calc(3 * var(--base-unit));
      font-size: calc(1.7 * var(--base-unit));
      line-height: calc(30.6 / 17);
    }
  }

  .p-txt01--icon {
    vertical-align: middle;
  }

  /* 本文テキスト（小） */
  .p-txt01.p-txt01--small {
    margin-top: calc(1.4 * var(--base-unit));
    font-size: calc(1.4 * var(--base-unit));
    line-height: calc(25.2 / 14);
  }

 @media screen and (max-width: 767px) {
    .p-txt01.p-txt01--small {
      margin-top: calc(1.6 * var(--base-unit));
      font-size: calc(1.3 * var(--base-unit));
      line-height: calc(23.4 / 13);
    }
  }

  /* リスト（通常） */
  .p-list01 {
    margin: calc(3 * var(--base-unit)) 0 0;
    width: 100%;
    font-weight: 400;
    font-size: calc(1.6 * var(--base-unit));
    letter-spacing: 0.03em;
    line-height: calc(28.8 / 14);
    color: #333;
  }

  .p-list01__dot,
  .p-list01__num01,
  .p-list01__num-paren01,
  .p-list01__alpha01 {
    margin: 0 auto;
    width: var(--width-contents);
  }

  .p-list01__dot>li {
    padding-left: calc(2 * var(--base-unit));
    position: relative;
  }

  .p-list01__dot>li::before {
    content: '・';
    position: absolute;
    left: 0;
    top: 0;
  }

  .p-list01__num01,
  .p-list01__alpha01,
  .p-list01__num-paren01 {
    display: table;
  }

  .p-list01__num01>li,
  .p-list01__alpha01>li,
  .p-list01__num-paren01>li {
    display: table-row;
  }

  .p-list01__num01>li::before,
  .p-list01__alpha01>li::before,
  .p-list01__num-paren01>li::before {
    display: table-cell;
    width: 1em;
    white-space: nowrap;
  }

  .p-list01__num01 {
    counter-reset: c-list01__num01__counter;
  }

  .p-list01__num01>li {
    counter-increment: c-list01__num01__counter;
  }

  .p-list01__num01>li::before {
    content: counter(c-list01__num01__counter) '.';
    padding-right: calc(0.6 * var(--base-unit));
  }

  .p-list01__alpha01 {
    counter-reset: c-list01__alpha01__counter;
  }

  .p-list01__alpha01>li {
    counter-increment: c-list01__alpha01__counter;
  }

  .p-list01__alpha01>li::before {
    content: counter(c-list01__alpha01__counter, lower-alpha) '.';
    padding-right: calc(0.5 * var(--base-unit));
  }

 @media screen and (max-width: 767px) {
    .p-list01 {
      margin-top: calc(2 * var(--base-unit));
      font-size: calc(1.5 * var(--base-unit));
      line-height: calc(27 / 15);
    }
  }

  /* リスト（注釈） */
  .p-notes01 {
    margin: calc(3 * var(--base-unit)) 0 0;
    width: 100%;
    font-weight: 400;
    font-size: calc(1.6 * var(--base-unit));
    letter-spacing: 0.03em;
    line-height: calc(28.8 / 14);
    color: #333;
  }

  .p-notes01__list {
    margin: 0 auto;
    width: var(--width-contents);
    display: table;
  }

  .p-notes01__list>li {
    display: table-row;
  }

  .p-notes01__list>li>div {
    display: table-cell;
  }

  .p-notes01__list>li>div:first-child {
    white-space: nowrap;
    padding-right: calc(0.4 * var(--base-unit));
    min-width: calc(2 * var(--base-unit));
    box-sizing: border-box;
  }

  .p-notes01__list>li>div:last-child {
    width: 100%;
  }

 @media screen and (max-width: 767px) {
    .p-notes01 {
      margin-top: calc(2 * var(--base-unit));
      font-size: calc(1.5 * var(--base-unit));
      line-height: calc(23.4 / 15);
    }

    .p-notes01__list>li>div:first-child {
      padding-right: calc(0.8 * var(--base-unit));
    }
  }

  /* リスト（注釈_弱） */
  .p-notes01.p-notes01--small {
    font-size: calc(1.2 * var(--base-unit));
    line-height: calc(21.6 / 12);
  }

  .p-notes01.p-notes01--small .p-notes01__list>li>div:first-child {
    padding-right: calc(0.8 * var(--base-unit));
  }

 @media screen and (max-width: 767px) {
    .p-notes01.p-notes01--small {
      font-size: calc(1.3 * var(--base-unit));
      line-height: calc(23.4 / 13);
    }

    .p-notes01.p-notes01--small .p-notes01__list>li>div:first-child {
      padding-right: calc(0.4 * var(--base-unit));
    }
  }


  /* リスト（注釈_丸カッコ番号付き） */
 .p-list01__num-paren01 {
   counter-reset: c-list01__num01__counter;
 }
  .p-list01__num-paren01 {
   counter-reset: c-list01__num-paren01__counter;
 }
 .p-list01__num-paren01>li {
   counter-increment: c-list01__num-paren01__counter;
 }
 .p-list01__num-paren01>li::before {
   content: '('counter(c-list01__num-paren01__counter) ') ';
   padding-right: calc(0.6 * var(--base-unit));
 }
  
 
 /* ボックス */
  .p-box01 {
    margin: calc(4 * var(--base-unit)) auto 0;
    width: var(--width-contents);
    background: #fff;
    border: calc(0.1 * var(--base-unit)) solid #bebebe;
    box-sizing: border-box;
    padding: calc(4 * var(--base-unit)) calc(5 * var(--base-unit));
  }
  .p-box01.p-link01 {
    margin: calc(1 * var(--base-unit)) auto 0;
  }

  .p-box01__sct {
    margin-top: calc(3 * var(--base-unit));
  }

  .p-box01>*:first-child,
  .p-box01__sct>*:first-child {
    margin-top: 0 !important;
  }

  .p-box01 .p-hd04+*,
  .p-box01 .p-hd05+* {
    margin-top: calc(1 * var(--base-unit)) !important;
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-box01 {
      padding: calc(4 * var(--base-unit)) calc(4 * var(--base-unit));
    }
  }

 @media screen and (max-width: 767px) {
    .p-box01 {
      margin-top: calc(3 * var(--base-unit));
      padding: calc(3 * var(--base-unit)) calc(2 * var(--base-unit));
    }
  }

  .p-box01__block {
    display: flex;
    align-items: center;
    }
    .p-box01__link,
    .p-box01__block>.p-link01 {
      margin: calc(1* var(--base-unit)) auto 0;
    }
    .p-box01__link {
      margin-right: 20px;
    }
    .p-box01__img {
      margin: calc(2* var(--base-unit)) auto;
      margin-right: 20px;
    }
    .p-box01__block>.p-txt01 {
      margin: calc(2* var(--base-unit)) auto;
    }
   @media screen and (max-width: 767px) {
      .p-box01__block {
      flex-direction: column;
      }
      .p-box01__link {
        margin: calc(1* var(--base-unit)) auto 0;
      }
      .p-box01__block>.p-link01 {
      width: 76%;
      }
      .p-box01__img {
        margin: 0 auto;
      }
      .p-box01__block>.p-txt01 {
        margin: calc(2* var(--base-unit)) auto 0;
      }
    }

  /* ボックス（グレー背景） */
  .p-box01.p-box01--bg {
    background: #f7f7f8;
    border: 0;
  }
  .p-box01.p-box01--alert {
    background: #FCE8EC;
    border: 0;
  }

  /* テキストリンク */
  .p-link01 {
    margin: calc(3 * var(--base-unit)) auto 0;
    width: var(--width-contents);
    font-weight: 500;
    font-size: calc(1.6 * var(--base-unit));
    letter-spacing: 0.1em;
    line-height: calc(24 / 16);
    overflow-wrap: anywhere;
  }

  /* .p-link01 a {
    color: #333;
    transition: color 0.3s ease 0s;
  } */

   .p-link01 a {
    color: #333;
    padding-bottom: .3em;
    background: linear-gradient(#333, #333) 0 100%/0 1px no-repeat;
    line-height: calc(29 / 16);
    transition: background .4s;
  }
  @media screen and (min-width: 768px) {
    .p-link01 a {
      position: relative;
    }
    .p-link01 a:hover {
      background-size: 100% 1px;
    }
  }

  .p-link01 a::after,
  .p-link01__ico {
    display: inline-block;
    vertical-align: calc(-0.45 * var(--base-unit));
    width: calc(2 * var(--base-unit));
    height: calc(2 * var(--base-unit));
    margin-left: calc(0.8 * var(--base-unit));
  }

  .p-link01 a::after {
    content: '';
    transition: background 0.3s ease 0s;
    background: #333;
    mask: url(https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_5.svg) no-repeat center center / contain;
  }

  .p-link01 a[target="_blank"]::after {
    display: none;
  }

  .p-link01__ico {
    transition: filter 0.3s ease 0s;
    filter: invert(25%) sepia(65%) saturate(0%) hue-rotate(224deg) brightness(85%) contrast(116%);
  }

  .p-link01__ico>img {
    width: 100%;
    height: auto;
  }

  .p-link01__list {
    width: 100%;
  }

  .p-link01__list>li {
    padding: calc(1.8 * var(--base-unit)) calc(4 * var(--base-unit)) calc(1.3 * var(--base-unit));
    border-bottom: calc(0.1 * var(--base-unit)) solid #d5d5d5;
  }

  .p-link01__list>li:first-child {
    border-top: calc(0.1 * var(--base-unit)) solid #d5d5d5;
  }

 @media screen and (max-width: 767px) {
    .p-link01 {
      margin-top: calc(2.4 * var(--base-unit));
      font-size: calc(1.5 * var(--base-unit));
      line-height: calc(24 / 15);
    }

    .p-link01__list>li {
      padding: calc(1.6 * var(--base-unit)) 0;
    }
  }

  /* テキストリンク（2カラム） */
  @media print, screen and (min-width: 768px) {
    .p-link01.p-link01--col2 .p-link01__list {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      column-gap: calc(2.4 * var(--base-unit));
    }

    .p-link01.p-link01--col2 .p-link01__list>li {
      padding-left: 0;
      padding-right: 0;
    }

    .p-link01.p-link01--col2 .p-link01__list>li:nth-child(2) {
      border-top: calc(0.1 * var(--base-unit)) solid #d5d5d5;
    }
  }

  /* テキストリンク（リード） */
  .p-link01.p-link01--lead {
    font-size: calc(1.8 * var(--base-unit));
  }

  .p-link01.p-link01--lead a::after,
  .p-link01.p-link01--lead .p-link01__ico {
    vertical-align: calc(-0.35 * var(--base-unit));
  }

  /* テキストリンク（小） */
  .p-link01.p-link01--small {
    font-size: calc(1.4 * var(--base-unit));
  }

  .p-link01.p-link01--small a::after,
  .p-link01.p-link01--small .p-link01__ico {
    vertical-align: calc(-0.5 * var(--base-unit));
  }

 @media screen and (max-width: 767px) {
    .p-link01.p-link01--small {
      font-size: calc(1.3 * var(--base-unit));
    }
  }

  /* テキストリンク（アイコン左） */
  .p-link01.p-link01--arw a {
    display: flex;
    width: fit-content;
    max-width: 100%;
    column-gap: calc(1 * var(--base-unit));
    align-items: flex-start;
  }

  .p-link01.p-link01--arw a::before {
    content: '';
    transition: background 0.3s ease 0s;
    background: #333;
    display: block;
    width: calc(2.14 * var(--base-unit));
    height: calc(2.14 * var(--base-unit));
    mask: url(https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_6.svg) no-repeat center center / contain;
    margin-top: calc(0.1 * var(--base-unit));
  }

  .p-link01.p-link01--arw.p-link01--small a::before {
    margin-top: 0;
  }

  .p-link01.p-link01--arw.p-link01--lead a::before {
    margin-top: calc(0.2 * var(--base-unit));
  }

  .p-link01.p-link01--arw a::after {
    display: none;
  }

  @media screen and (min-width: 768px) {
    .p-link01.p-link01--arw a:hover::before {
      background: #a22041;
    }
  }

  /* テキストリンク（文中） */
  .c-link01 {
    margin: 0 calc(1 * var(--base-unit));
    padding-bottom: calc(0.3 * var(--base-unit));
    border-bottom: calc(0.1 * var(--base-unit)) solid #333;
    color: #333;
    font-weight: 700;
    transition:
      color 0.3s ease 0s,
      border-bottom-color 0.3s ease 0s;
      overflow-wrap: anywhere;
  }

  .c-link01__ico {
    display: inline-block;
    margin-left: calc(0.5 * var(--base-unit));
    transition: filter 0.3s ease 0s;
    filter: invert(25%) sepia(65%) saturate(0%) hue-rotate(224deg) brightness(85%) contrast(116%);
    vertical-align: calc(-0.3 * var(--base-unit));
    width: calc(2 * var(--base-unit));
    height: calc(2 * var(--base-unit));
  }

  .c-link01__ico>img {
    width: 100%;
    height: auto;
  }

  @media screen and (min-width: 768px) {
    .c-link01:hover {
      color: #a22041;
      border-bottom-color: #a22041;
    }

    .c-link01:hover .c-link01__ico {
      filter: invert(19%) sepia(58%) saturate(3057%) hue-rotate(325deg) brightness(87%) contrast(94%);
    }
  }

  


  /* 左画像＋テキストリンク */
  .p-link-img01 {
    margin: calc(3* var(--base-unit)) auto 0;
    width: var(--width-contents);
    max-width: 996px;
    display: grid;
  }
  .p-link-img01__inner a {
    display: flex;
    align-items: center;
    background: #fff;
    border: 1px solid #d5d5d5;
    box-sizing: border-box;
    padding: 30px 60px;
    column-gap: 90px;
  }
 @media screen and (max-width: 767px) {
    .p-link-img01__inner a {
      display: block;
      padding: 0;
      border: unset;
    }
  }
  .p-link-img01__inner-img {
    width: 43.8356164384%;
    overflow: hidden;
  }
 @media screen and (max-width: 767px) {
    .p-link-img01__inner-img {
      width: 100%;
    }
  }
  .p-link-img01__inner-img img {
    display: block;
    width: 100%;
    height: auto;
    /* object-fit: contain; */
    transition: 0.3s ease 0s;
  }
  .p-link-img01__inner-txt {
    display: inline grid;
    grid-template-columns: repeat(2, auto);
    grid-template-rows: auto;
    align-items: center;
    color: #0f2350;
    font-weight: 500;
  }
  .p-link-img01__inner-txt {
    column-gap: 8px;
    margin-top: 20px;
    font-size: 18px;
    letter-spacing: 0.1em;
  }
 @media screen and (max-width: 767px) {
    .p-link-img01__inner-txt {
      column-gap: 2.6666666667vw;
      margin-top: 0;
      padding: 3.7333333333vw 0;
      font-size: 4.8vw;
    }
  }
  .p-link-img01__inner-txt::before,
  .p-link-img01__inner-txt::after {
    content: "";
    grid-area: 1/1/2/2;
  }
 @media screen and (max-width: 767px) {
    .p-link-img01__inner-txt::before,
    .p-link-img01__inner-txt::after {
      width: 5.3333333333vw;
      height: 5.3333333333vw;
    }
  }
  .p-link-img01__inner-txt::before,
  .p-link-img01__inner-txt::after {
    width: 32px;
    height: 32px;
    transition-duration: 0.2s;
    transition-timing-function: ease-in;
  }
  .p-link-img01__inner-txt::before {
    background-color: #0F2350;
    mask: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_4.svg") no-repeat center center/contain;
  }
  .p-link-img01__inner-txt::before {
    transition-property: background-color;
  }
  .p-link-img01__inner-txt::after {
    box-sizing: border-box;
    border-radius: 100vw;
    border: solid 2px #0F2350;
    background-color: transparent;
    transition-property: background-color, border-color;
  }
  a:hover .p-link-img01__inner-txt {
    color: #a22041;
  }
  a:hover .p-link-img01__inner-txt::before,
  a:hover .p-link-img01__inner-txt::after {
    transition-duration: 0.3s;
    transition-timing-function: ease-out;
  }
  a:hover .p-link-img01__inner-txt::before {
    background-color: #FFF;
  }
  a:hover .p-link-img01__inner-txt::after {
    border-color: #a22041;
    background-color: #a22041;
  }
  a:hover .p-link-img01__inner-img img {
    transform: scale(1.1);
    transition: 0.3s ease 0s;
  }


  /* サムネイル＋テキストリンク集 */
  .p-linkset01 {
    margin: calc(3* var(--base-unit)) auto 0;
    width: var(--width-contents);
    max-width: 996px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: calc(2.4* var(--base-unit));
    row-gap: calc(3* var(--base-unit));
    padding: calc(3* var(--base-unit)) calc(1* var(--base-unit));
    border: solid #D5D5D5 1px;
  }
  .p-linkset01__fig {
      width: 100%;
  }
  .p-linkset01__fig-img {
      /* width: 100%; */
      display: grid;
      place-content: center;
  }
  .p-linkset01__fig-img>img {
      display: block;
      width: 100%;
      height: auto;
      max-width: calc(100% + 2px);
      max-height: 100%;
      /* width: unset;
      height: unset; */
      object-fit: contain;
  }
  @media print, screen and (max-width: 767px) {
    .p-linkset01 {
      display: block;
      padding: 0;
      border: none;
    }
  }

  .p-linkset01--wrapper .p-linkset01__fig {
    margin: auto;
  }
  .p-linkset01.p-linkset01--bd {
    max-width: unset;
    padding: calc(10* var(--base-unit)) 0;
    column-gap: calc(7.4* var(--base-unit));
    margin: calc(3* var(--base-unit)) auto 0;
    border: unset;
  }
 @media screen and (max-width: 767px) {
    .p-linkset01.p-linkset01--bd {
      padding: 0;
    }
  }
  .p-link01.p-link01--bg {
    margin: 0 auto;
    position: relative;
    background: #F7F7F8;
  }  
  .p-link01--bg::after {
    content: "";
    display: block;
    position: absolute;
    top: calc(-10 * var(--base-unit));
    left: calc(-21.4* var(--base-unit));
    width: calc(100vw + (14* var(--base-unit)));
    height: calc(100% + (20* var(--base-unit)));
    background: #F7F7F8;
    z-index: -1;
  }
  .p-link01.p-link01--bg a:not(.p-link01__list a) {
    padding-bottom: 0;
  }
  .p-linkset01 .p-link01__list>li {
    padding: calc(1.8 * var(--base-unit)) 0 calc(1.3 * var(--base-unit));
  }

  .p-link01__lang {
    display: flex;
    align-items: center;
    box-sizing: border-box;
    width: calc(38.6 * var(--base-unit));
    height: calc(6.2 * var(--base-unit));
    font-size: calc(2.8* var(--base-unit));
    margin: calc(4* var(--base-unit)) 0 calc(3.6* var(--base-unit));
    padding-left: calc(1.6* var(--base-unit));
    border-bottom: #0F2350 solid 1px;
    background: #fff;
    transition-property: background;
    transition-duration: 0.2s;
    transition-timing-function: ease-in;
  }
  .p-link01 a.p-link01__lang:before {
    display: block;
    width: calc(0.6* var(--base-unit));
    height: calc(1* var(--base-unit));
    position: absolute;
    right: calc(1.5* var(--base-unit));
    top: 0;
    bottom: 0;
    margin: auto 0;
    content: '';
    background: #000;
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
  }
  @media print, screen and (max-width: 767px) {
    .p-link01 a.p-link01__lang:before {
      top: unset;
      bottom: unset;
    }
  }
  .p-link01 a.p-link01__lang:after {
    content: "";
    display: none;
  }
  .p-link01__lang {
    position: unset;
    font-size: calc(1.6* var(--base-unit));
  }
  .p-link01 a.p-link01__lang:hover {
    background: #a22041;
    color: #fff;
    transition-property: background-color;
    transition-duration: 0.2s;
    transition-timing-function: ease-in;
  }
  .p-link01 a.p-link01__lang:hover:before {
    background: #fff;
    width: calc(0.6* var(--base-unit));
    transition-property: background-color;
    transition-duration: 0.2s;
    transition-timing-function: ease-in;
  }
 @media screen and (max-width: 767px) {
    .p-linkset01--wrapper {
      overflow: hidden;
    }
    .p-link01--bg::after {
        left: 0;
        width: 100vw;
        margin-left: calc(50% - 50vw);
    }
    .p-link01__lang {
      width: 100%;
    }
  }

  

  /* サムネイル＋テキストリンク集_3カラム */
  @media print, screen and (min-width: 768px) {
    .p-link01-thum1co3 {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 25px;
    }
  }

  .p-link01-thum1co3 .p-link01 {
    display: grid;
    grid-template-columns: 102px 1fr;
    gap: 20px;
  }

  .p-link01-thum1co3__title {
    padding-bottom: calc(1.8* var(--base-unit));
    font-size: calc(1.8* var(--base-unit));
  }

  .p-link01-thum1co3 .p-link01__list>li {
    padding: calc(1.8* var(--base-unit)) 0;
  }
  .p-link01-thum1co3 .p-link01__list>li:last-child {
    padding-bottom: calc(4* var(--base-unit));
  }

  /* サムネイル＋テキストリンク集_1カラム */
  @media print, screen and (min-width: 768px) {
    .p-linkset01.p-linkset01--thum1col {
      width: var(--width-contents);
      max-width: unset;
      padding: 0;
      border: none;
      grid-template-columns: 180px 1fr;
    }
    .p-linkset01--thum1col .p-link01__list>li {
      padding: calc(1.8* var(--base-unit)) 0 calc(1.3* var(--base-unit));
    }
    .p-linkset01--thum1col .p-link01__list-inner {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      column-gap: calc(2.4* var(--base-unit));
    }
  }
  .p-linkset01--thum1col .p-link01 {
    margin: 0;
  }
  .p-linkset01--thum1col .p-linkset01--title {
    padding-bottom: calc(2.0* var(--base-unit));
    font-size: calc(2.0* var(--base-unit));
  }
 @media screen and (max-width: 767px) {
    .p-linkset01--thum1col .p-linkset01--title {
      padding-top: calc(3.0* var(--base-unit));
    }

  }
  .p-linkset01--thum1col .p-link01__list-inner>li {
    padding: calc(1.8* var(--base-unit)) calc(4* var(--base-unit)) calc(1.3* var(--base-unit));
    border-bottom: calc(0.1* var(--base-unit)) solid #d5d5d5;
  }
  .p-linkset01--thum1col .p-link01__list>li.list-reset {
    padding-top: unset;
    border-bottom: unset;
  }
  .p-link01--contents {
    padding-bottom: calc(3.0* var(--base-unit));
  }

  /* .p-link01 .p-link01--multi-line a::before {
    content: unset;
  }
  .p-link01--multi-line a {
    padding-bottom: .3em;
    background: linear-gradient(#333, #333) 0 100%/0 1px no-repeat;
    line-height: calc(29 / 16);
  }
  .p-link01:has(.p-link01--multi-line) a {
    transition: background .4s;
  }
  .p-link01--multi-line a:hover {
    background-size: 100% 1px;
  } */


  /* ボタンリンク */
  .p-btn01 {
    margin: calc(4 * var(--base-unit)) auto 0;
    width: var(--width-contents);
  }

  .p-btn01 a {
    display: flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    min-width: calc(calc(100% - calc(4.8 * var(--base-unit))) / 3);
    min-height: calc(8 * var(--base-unit));
    box-sizing: border-box;
    padding: calc(1.2 * var(--base-unit)) calc(6 * var(--base-unit)) calc(1.1 * var(--base-unit)) calc(3 * var(--base-unit));
    transition: background 0.3s ease 0s;
    background: #000;
    color: #fff;
    font-size: calc(2 * var(--base-unit));
    position: relative;
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: calc(28 / 20);
  }

  .p-btn01 a::after,
  .p-btn01__ico {
    display: block;
    width: calc(2 * var(--base-unit));
    height: calc(2 * var(--base-unit));
    position: absolute;
    right: calc(3 * var(--base-unit));
    top: 0;
    bottom: 0;
    margin: auto 0;
  }

  .p-btn01 a:not(.cboxElement):after {
    content: '';
    background: url(https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_7.svg) no-repeat center center / contain;
  }

  .p-btn01 a[target="_blank"]::after {
    display: none;
  }

  .p-btn01__ico {
    filter: brightness(0) invert(1);
  }

  .p-btn01__ico>img {
    display: block;
    width: 100%;
    height: auto;
  }

  .p-btn01>a {
    margin: 0 auto;
  }

  .p-btn01__list {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: calc(3 * var(--base-unit));
    column-gap: calc(2.4 * var(--base-unit));
  }

  @media screen and (min-width: 768px) {
    .p-btn01 a:hover {
      background: #a22041;
    }
  }

 @media screen and (max-width: 767px) {
    .p-btn01 {
      margin-top: calc(3 * var(--base-unit));
    }

    .p-btn01 a {
      min-width: 100%;
      min-height: calc(5.4 * var(--base-unit));
      padding: calc(1.2 * var(--base-unit)) calc(4.4 * var(--base-unit)) calc(1.1 * var(--base-unit)) calc(1.6 * var(--base-unit));
      font-size: calc(1.7 * var(--base-unit));
      font-weight: 500;
      line-height: calc(22 / 17);
    }

    .p-btn01 a::after,
    .p-btn01__ico {
      right: calc(1.2 * var(--base-unit));
    }
  }

  /* ボタンリンク（2カラム） */
  @media print, screen and (min-width: 768px) {
    .p-btn01.p-btn01--col2 {
      width: min(var(--width-contents), calc(99.6 * var(--base-unit)));
    }

    .p-btn01.p-btn01--col2 .p-btn01__list {
      grid-template-columns: repeat(2, 1fr);
    }

    .p-btn01.p-btn01--col2 .p-btn01__list>li>a {
      width: 100%;
    }
  }

  /* ボタンリンク（3カラム） */
  @media print, screen and (min-width: 768px) {
    .p-btn01.p-btn01--col3 .p-btn01__list {
      grid-template-columns: repeat(3, 1fr);
    }

    .p-btn01.p-btn01--col3 .p-btn01__list>li>a {
      width: 100%;
    }
  }

  /* サブボタンリンク（薄） */
  .p-btn02 {
    margin: calc(4 * var(--base-unit)) auto 0;
    width: var(--width-contents);
  }

  .p-btn02 a {
    display: flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    min-width: calc(38.4 * var(--base-unit));
    min-height: calc(5 * var(--base-unit));
    box-sizing: border-box;
    padding: calc(1 * var(--base-unit)) calc(6.8 * var(--base-unit)) calc(1 * var(--base-unit)) calc(3 * var(--base-unit));
    transition: background 0.3s ease 0s;
    font-size: calc(2 * var(--base-unit));
    position: relative;
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: calc(28 / 20);
    color: #333;
    background: #fff;
    border: 1px solid #0f2350;
  }

  .p-btn02 a::after,
  .p-btn02__ico {
    display: block;
    width: calc(2 * var(--base-unit));
    height: calc(2 * var(--base-unit));
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
  }

  .p-btn02 a::after {
    right: calc(2.4 * var(--base-unit));
    content: '';
    mask: url(https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_7.svg) no-repeat center center / contain;
    background: #333;
  }

  .p-btn02 a[target="_blank"]::after {
    display: none;
  }

  .p-btn02__ico {
    transition: filter 0.3s ease 0s;
  }

  .p-btn02__ico>img {
    display: block;
    width: 100%;
    height: auto;
  }

  .p-btn02>a {
    margin: 0 0 0 auto;
  }

  @media screen and (min-width: 768px) {
    .p-btn02 a:hover {
      border-color: #a22041;
      background: #a22041;
      color: #fff;
    }

    .p-btn02 a:hover::after,
    .p-btn02 a:hover .p-btn02__ico {
      filter: brightness(0) invert(1);
    }
  }

  @media print, screen and (min-width: 768px) {
    .p-btn02 a[target="_blank"] {
      padding: calc(1 * var(--base-unit)) calc(6 * var(--base-unit)) calc(1 * var(--base-unit)) calc(2 * var(--base-unit));
      font-size: calc(1.6 * var(--base-unit));
      letter-spacing: 0.1em;
      line-height: calc(28 / 16);
    }

    .p-btn02 a[target="_blank"] .p-btn02__ico {
      right: calc(2 * var(--base-unit));
    }
  }

 @media screen and (max-width: 767px) {
    .p-btn02 {
      margin-top: calc(3 * var(--base-unit));
    }

    .p-btn02 a {
      min-width: 100%;
      min-height: calc(5.4 * var(--base-unit));
      padding: calc(1.2 * var(--base-unit)) calc(4.4 * var(--base-unit)) calc(1.1 * var(--base-unit)) calc(1.6 * var(--base-unit));
      font-size: calc(1.7 * var(--base-unit));
      font-weight: 500;
      line-height: calc(22 / 17);
    }

    .p-btn02 a::after,
    .p-btn02__ico {
      right: calc(1.2 * var(--base-unit));
    }
  }

  /* アンカーリンク */
  .p-btn03 {
    margin: calc(4 * var(--base-unit)) auto 0;
    width: var(--width-contents);
  }

  .p-btn03 a {
    display: flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    min-width: calc(calc(100% - calc(7.2 * var(--base-unit))) / 4);
    min-height: calc(6.2 * var(--base-unit));
    box-sizing: border-box;
    padding: calc(0.8 * var(--base-unit)) calc(4 * var(--base-unit)) calc(0.8 * var(--base-unit)) calc(1.6 * var(--base-unit));
    transition:
      background 0.3s ease 0s,
      box-shadow 0.3s ease 0s;
    background: #fff;
    color: #333;
    font-size: calc(1.6 * var(--base-unit));
    position: relative;
    font-weight: 400;
    letter-spacing: 0.03em;
    line-height: calc(22 / 16);
    border-bottom: calc(0.1 * var(--base-unit)) solid #0f2350;

  }

  .p-btn03 a::after {
    display: block;
    width: calc(1 * var(--base-unit));
    height: calc(0.6 * var(--base-unit));
    position: absolute;
    right: calc(1.5 * var(--base-unit));
    top: 0;
    bottom: 0;
    margin: auto 0;
    content: '';
    background: #000;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
  }

  .p-btn03__list {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: calc(3 * var(--base-unit));
    column-gap: calc(2.4 * var(--base-unit));
  }

  @media screen and (min-width: 768px) {
    .p-btn03 a:hover {
      color: #fff;
      background: #a22041;
      box-shadow: 0 calc(0.3 * var(--base-unit)) calc(0.6 * var(--base-unit)) rgba(0, 0, 0, 0.16);
      border-bottom-color: #a22041;
    }

    .p-btn03 a:hover::after {
      background: #fff;
    }
  }

 @media screen and (max-width: 767px) {
    .p-btn03 {
      margin-top: calc(3 * var(--base-unit));
    }

    .p-btn03 a {
      min-width: 100%;
      min-height: calc(5.4 * var(--base-unit));
      padding: calc(1.5 * var(--base-unit)) calc(4.4 * var(--base-unit)) calc(1.4 * var(--base-unit)) calc(1.6 * var(--base-unit));
      font-size: calc(1.7 * var(--base-unit));
      font-weight: 500;
      line-height: calc(22 / 17);
    }

    .p-btn03 a::after {
      width: calc(1.4 * var(--base-unit));
      height: calc(0.8 * var(--base-unit));
    }
  }

  /* アンカーリンク（4カラム） */
  @media print, screen and (min-width: 768px) {
    .p-btn03.p-btn03--col4 .p-btn03__list {
      grid-template-columns: repeat(4, 1fr);
    }

    .p-btn03.p-btn03--col4 .p-btn03__list>li>a {
      width: 100%;
    }
  }

  /* アンカーリンク（3カラム） */
  @media print, screen and (min-width: 768px) {
    .p-btn03.p-btn03--col3 .p-btn03__list {
      grid-template-columns: repeat(3, 1fr);
    }

    .p-btn03.p-btn03--col3 .p-btn03__list>li>a {
      width: 100%;
    }
  }

  /* アンカーリンク（6カラム） */
  @media print, screen and (min-width: 768px) {
    .p-btn03.p-btn03--col6 .p-btn03__list {
      grid-template-columns: repeat(6, 1fr);
    }

    .p-btn03.p-btn03--col6 .p-btn03__list>li>a {
      width: 100%;
    }
  }
 @media screen and (max-width: 767px) {
    .p-btn03.p-btn03--col6 .p-btn03__list {
      grid-template-columns: repeat(2, 1fr);
    }
  }

  /* プルダウンボタン */
  .p-btn04 {
    margin: calc(4 * var(--base-unit)) auto 0;
    width: var(--width-contents);
  }

  .p-btn04__select {
    display: inline-flex;
    align-items: center;
    position: relative;
  }

  .p-btn04__select::after {
    position: absolute;
    right: calc(1.5 * var(--base-unit));
    width: calc(1 * var(--base-unit));
    height: calc(0.6 * var(--base-unit));
    background: #000;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: '';
    pointer-events: none;
  }

  .p-btn04__select>select {
    appearance: none;
    min-width: calc(28.2 * var(--base-unit));
    height: calc(6.2 * var(--base-unit));
    padding: calc(1.9 * var(--base-unit)) calc(3.4 * var(--base-unit)) calc(1.9 * var(--base-unit)) calc(1.6 * var(--base-unit));
    border: calc(0.1 * var(--base-unit)) solid #d5d5d5;
    background-color: #fff;
    font-size: calc(1.6 * var(--base-unit));
    font-weight: 400;
    letter-spacing: 0.03em;
    color: #333;
    cursor: pointer;
  }

 @media screen and (max-width: 767px) {
    .p-btn04 {
      margin-top: calc(3 * var(--base-unit));
    }

    .p-btn04__select {
      width: 100%;
    }

    .p-btn04__select::after {
      width: calc(1.4 * var(--base-unit));
      height: calc(0.8 * var(--base-unit));
    }

    .p-btn04__select>select {
      width: 100%;
      height: calc(5.4 * var(--base-unit));
      padding: calc(1.5 * var(--base-unit)) calc(4.4 * var(--base-unit)) calc(1.4 * var(--base-unit)) calc(1.6 * var(--base-unit));
      font-size: calc(1.7 * var(--base-unit));
      font-weight: 500;
      letter-spacing: 0.1em;
    }
  }

  /* フォトボックス */
  .p-panel01 {
    margin: calc(4 * var(--base-unit)) auto 0;
    width: var(--width-contents);
  }

  .p-panel01 a {
    display: block;
    /* display: grid; */
    /* width: 100%; */
    height: 100%;
    transition: background 0.3s ease 0s;
    background: #000;
    color: #fff;
    /* grid-template-rows: subgrid;
    grid-row: span 2;
    transition: background 0.3s ease 0s; */
  }

  .p-panel01__img {
    width: 100%;
  }

  .p-panel01__img>img {
    display: block;
    width: 100%;
    height: auto;
    max-width: calc(100% + 2px);
    max-height: 100%;
    /* width: unset;
    height: unset; */
    object-fit: contain;
  }

  .p-panel01__txt {
    position: relative;
    font-weight: 400;
    font-size: calc(2 * var(--base-unit));
    letter-spacing: 0.1em;
    line-height: calc(28 / 20);
    min-height: calc(8 * var(--base-unit));
    padding: calc(1.15 * var(--base-unit)) calc(7 * var(--base-unit)) calc(1.15 * var(--base-unit)) calc(3 * var(--base-unit));
    box-sizing: border-box;
    display: flex;
    align-items: center;
  }

  .p-panel01__txt::after {
    display: block;
    width: calc(2 * var(--base-unit));
    height: calc(2 * var(--base-unit));
    position: absolute;
    right: calc(3 * var(--base-unit));
    top: 0;
    bottom: 0;
    margin: auto 0;
    content: '';
    background: url(https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_arrow_7.svg) no-repeat center center / contain;
  }
  .p-panel01__txt--newwin::after {
    background: url(https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_newwin_1.svg) no-repeat center center / contain;
  }

  .p-panel01__set01 {
    box-sizing: border-box;
    padding: calc(3 * var(--base-unit)) calc(2 * var(--base-unit)) calc(4 * var(--base-unit));
  }

  .p-panel01__set01-hd {
    font-weight: 500;
    font-size: calc(2 * var(--base-unit));
    letter-spacing: 0.1em;
    line-height: calc(32 / 20);
  }

  .p-panel01__set01-txt {
    margin-top: calc(1 * var(--base-unit));
    font-weight: 400;
    font-size: calc(1.6 * var(--base-unit));
    letter-spacing: 0.03em;
    line-height: calc(28.8 / 16);
  }

  .p-panel01__list {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: calc(3 * var(--base-unit));
    column-gap: calc(2.4 * var(--base-unit));
  }

  .p-panel01 a .p-panel01__img{
    display: grid;
    place-content: center;
    grid-row: 1 / 2;
    overflow: hidden;
    aspect-ratio: 9 / 5;
    border: 1px solid #d5d5d5;
    box-sizing: border-box;
    background: #fff;;
  }
  .p-panel01 a .p-panel01__img img{
    object-fit: contain;
    transition: 0.3s ease 0s;
  }

  @media screen and (min-width: 768px) {
    .p-panel01 a:hover {
      background: #a22041;
    }
    
    .p-panel01 a:hover .p-panel01__img img{
      transform: scale(1.1);
      transition: 0.3s ease 0s;
    }
  }

 @media screen and (max-width: 767px) {
    .p-panel01 {
      margin-top: calc(3 * var(--base-unit));
    }

    .p-panel01__txt {
      min-height: calc(5.4 * var(--base-unit));
      font-size: calc(1.8 * var(--base-unit));
      font-weight: 500;
      line-height: calc(32 / 18);
      padding: calc(1.15 * var(--base-unit)) calc(4.4 * var(--base-unit)) calc(1.15 * var(--base-unit)) calc(1.6 * var(--base-unit));
    }

    .p-panel01__txt::after {
      right: calc(1.2 * var(--base-unit));
    }

    .p-panel01__set01 {
      padding: calc(1.6 * var(--base-unit)) calc(1.6 * var(--base-unit)) calc(3 * var(--base-unit));
    }

    .p-panel01__set01-hd {
      font-size: calc(1.8 * var(--base-unit));
    }

    .p-panel01__set01-txt {
      font-size: calc(1.5 * var(--base-unit));
      letter-spacing: 0.04em;
      line-height: calc(24 / 15);
    }
  }

  /* フォトボックス（2カラム） */
  @media print, screen and (min-width: 768px) {
    .p-panel01.p-panel01--col2 .p-panel01__list {
      grid-template-columns: repeat(2, 1fr);
    }
  }

  @media screen and (min-width: 1200px) {
    .p-panel01.p-panel01--col2-pc .p-panel01__list {
      grid-template-columns: repeat(2, 1fr);
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-panel01.p-panel01--col2-tb .p-panel01__list {
      grid-template-columns: repeat(2, 1fr);
    }
  }

 @media screen and (max-width: 767px) {
    .p-panel01.p-panel01--col2-sp .p-panel01__list {
      grid-template-columns: repeat(2, 1fr);
    }
  }

  /* フォトボックス（3カラム） */
  @media print, screen and (min-width: 768px) {
    .p-panel01.p-panel01--col3 .p-panel01__list {
      grid-template-columns: repeat(3, 1fr);
    }
  }

  @media screen and (min-width: 1200px) {
    .p-panel01.p-panel01--col3-pc .p-panel01__list {
      grid-template-columns: repeat(3, 1fr);
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-panel01.p-panel01--col3-tb .p-panel01__list {
      grid-template-columns: repeat(3, 1fr);
    }
  }

 @media screen and (max-width: 767px) {
    .p-panel01.p-panel01--col3-sp .p-panel01__list {
      grid-template-columns: repeat(3, 1fr);
    }
  }

  /* フォトボックス（4カラム） */
  @media print, screen and (min-width: 768px) {
    .p-panel01.p-panel01--col4 .p-panel01__list {
      grid-template-columns: repeat(4, 1fr);
    }

    .p-panel01.p-panel01--col4 .p-panel01__txt {
      min-height: calc(6.4 * var(--base-unit));
    }
  }

  @media screen and (min-width: 1200px) {
    .p-panel01.p-panel01--col4-pc .p-panel01__list {
      grid-template-columns: repeat(4, 1fr);
    }

    .p-panel01.p-panel01--col4-pc .p-panel01__txt {
      min-height: calc(6.4 * var(--base-unit));
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-panel01.p-panel01--col4-tb .p-panel01__list {
      grid-template-columns: repeat(4, 1fr);
    }

    .p-panel01.p-panel01--col4-tb .p-panel01__txt {
      min-height: calc(6.4 * var(--base-unit));
    }
  }

 @media screen and (max-width: 767px) {
    .p-panel01.p-panel01--col4-sp .p-panel01__list {
      grid-template-columns: repeat(4, 1fr);
    }

    .p-panel01.p-panel01--col4-sp .p-panel01__txt {
      min-height: calc(6.4 * var(--base-unit));
    }
  }

  /* フォトボックス（白） */
  .p-panel01.p-panel01--white a {
    background: #fff;
    color: #333;
    /* grid-template-rows: subgrid;
    grid-row: span 2; */
    border-bottom: calc(0.1 * var(--base-unit)) solid #d5d5d5;
    transition:
      background 0.3s ease 0s,
      color 0.3s ease 0s,
      border-bottom-color 0.3s ease 0s;
  }

  .p-panel01.p-panel01--white .p-panel01__txt::after {
    transition: filter 0.3s ease 0s;
    filter: brightness(0) invert(0);
  }

  @media screen and (min-width: 768px) {
    .p-panel01.p-panel01--white a:hover {
      background: #a22041;
      color: #fff;
      border-bottom-color: #a22041;
    }

    .p-panel01.p-panel01--white a:hover .p-panel01__txt::after {
      filter: brightness(0) invert(1);
    }
  }

  /* タブボタン */
  .p-tab01 {
    margin: calc(8 * var(--base-unit)) auto 0;
    width: var(--width-contents);
  }

  .p-tab01__btn {
    display: flex;
    width: 100%;
    column-gap: calc(0.1 * var(--base-unit));
  }

  .p-tab01__btn>li {
    width: 100%;
  }

  .p-tab01__btn>li>a {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 100%;
    min-height: calc(6.4 * var(--base-unit));
    box-sizing: border-box;
    padding: calc(1.6 * var(--base-unit)) calc(1.6 * var(--base-unit)) calc(1.5 * var(--base-unit));
    transition: background 0.3s ease 0s;
    background: #000;
    color: #fff;
    font-size: calc(2 * var(--base-unit));
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: calc(17 / 15);
    border-bottom: calc(0.4 * var(--base-unit)) solid #fff;
  }

  .p-tab01__btn>li.is-active>a {
    pointer-events: none;
    color: #333;
    background: #fff;
    border-bottom-color: #a22041;
  }

  .p-tab01__sct {
    display: none;
  }

  .p-tab01__sct.is-active {
    display: block;
    animation: kf-fade 0.3s ease 0s forwards;
  }

  @media screen and (min-width: 768px) {
    .p-tab01__btn>li>a:hover {
      background: #a22041;
    }
  }

 @media screen and (max-width: 767px) {
    .p-tab01 {
      margin-top: calc(4 * var(--base-unit));
      width: 100%;
    }

    .p-tab01__btn>li>a {
      min-height: calc(5 * var(--base-unit));
      padding: calc(0.6 * var(--base-unit)) calc(1 * var(--base-unit));
      font-size: calc(1.5 * var(--base-unit));
      letter-spacing: 0.04em;
      line-height: calc(17 / 15);
      border-top: calc(0.1 * var(--base-unit)) solid #000;
      border-bottom: 0;
    }
  }

  @media screen and (max-width: 767px) {
    .p-tab01__btn>li>a:hover {
      border-top-color: #a22041;
    }
  }

  /* タブボタン（4カラム） */
 @media screen and (max-width: 767px) {
    .p-tab01.p-tab01--col4 .p-tab01__btn {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      grid-template-rows: repeat(2, auto);
      gap: 1px;
      margin-bottom: calc(25* var(--mc--quantity--of-design--horizontal));
    }

    .p-tab01.p-tab01--col4 .p-tab01__btn>li.c-access {
      grid-column: 1 / -1;
    }

    .p-tab01__btn>li:first-child{
      grid-column: 1 / -1;
    }

  }

  /* アコーディオン */
  .p-acd01 {
    margin: calc(4 * var(--base-unit)) auto 0;
    width: var(--width-contents);
    color: #333;
    font-size: calc(1.6 * var(--base-unit));
    letter-spacing: 0.03em;
    line-height: calc(28.8 / 16);
  }

  .p-acd01__data {
    border-bottom: calc(0.2 * var(--base-unit)) solid #d5d5d5;
  }

  .p-acd01__data>dt,
  .p-acd01__data>dd {
    border-top: calc(0.2 * var(--base-unit)) solid #d5d5d5;
  }

  .p-acd01__data>dt {
    padding: calc(3 * var(--base-unit)) calc(6 * var(--base-unit)) calc(3 * var(--base-unit)) 0;
    font-weight: 600;
    position: relative;
    cursor: pointer;
  }

  .p-acd01__plus {
    position: absolute;
    right: calc(3 * var(--base-unit));
    width: calc(2 * var(--base-unit));
    height: calc(2 * var(--base-unit));
    top: 0;
    bottom: 0;
    margin: auto 0;
  }

  .p-acd01__plus>span {
    width: 0;
    height: 0;
    display: block;
    overflow: hidden;
  }

  .p-acd01__plus::before,
  .p-acd01__plus::after {
    position: absolute;
    left: 0;
    top: 0;
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    transform-origin: center center;
    background: linear-gradient(0deg, #000 0%, #000 100%) no-repeat center center / 100% calc(0.2 * var(--base-unit));
  }

  .p-acd01__plus::after {
    transition: all 0.3s ease 0s;
    transform: rotate(90deg);
  }

  .p-acd01__data>dt.is-open>.p-acd01__plus::after {
    transform: rotate(0deg);
    opacity: 0;
  }

  .p-acd01__data>dd {
    overflow: hidden;
    max-height: 0;
    padding: 0 calc(4 * var(--base-unit));
    border-top-width: 0;
    opacity: 0;
    transition: all 0.3s ease 0s;
    position: relative;
  }

  .p-acd01__data>dt.is-open+dd {
    max-height: 1000em;
    padding-top: calc(3 * var(--base-unit));
    padding-bottom: calc(3 * var(--base-unit));
    border-top-width: calc(0.2 * var(--base-unit));
    opacity: 1;
  }

  .p-acd01__txt {
    font-weight: 400;
  }

  .p-acd01__data>dt.is-open+dd .p-acd01__txt {
    line-height: calc(28.8 / 16);
  }

  .p-acd01__img {
    margin: calc(4 * var(--base-unit)) auto 0;
    max-width: 100%;
    width: calc(58.8 * var(--base-unit));
  }

  .p-acd01__data>dt.is-open+dd>.p-acd01__img:last-child {
    margin-bottom: calc(1 * var(--base-unit));
  }

  .p-acd01__img>img {
    display: block;
    width: 100%;
    height: auto;
  }

 @media screen and (max-width: 767px) {
    .p-acd01 {
      margin-top: calc(2.4 * var(--base-unit));
      font-size: calc(1.5 * var(--base-unit));
      line-height: calc(27 / 15);
    }

    .p-acd01__data>dt {
      padding: calc(1.6 * var(--base-unit)) calc(5.4 * var(--base-unit)) calc(1.6 * var(--base-unit)) 0;
    }

    .p-acd01__plus {
      right: calc(1.7 * var(--base-unit));
    }

    .p-acd01__data>dd {
      padding: 0 calc(1.6 * var(--base-unit));
    }

    .p-acd01__data>dt.is-open+dd {
      padding-top: calc(1.6 * var(--base-unit));
      padding-bottom: calc(2.4 * var(--base-unit));
    }

    .p-acd01__data>dt.is-open+dd .p-acd01__txt {
      line-height: calc(27 / 15);
    }

    .p-acd01__data>dt.is-open+dd .p-acd01__img {
      margin-top: calc(2 * var(--base-unit));
      width: 100%;
    }
  }

  /* アコーディオン（QA） */
  .p-acd01.p-acd01--qa>.p-acd01__data>dt {
    padding: calc(3 * var(--base-unit)) calc(10.2 * var(--base-unit));
    font-weight: 600;
    position: relative;
    cursor: pointer;
  }

  .p-acd01.p-acd01--qa .p-acd01__ico {
    position: absolute;
    left: calc(3 * var(--base-unit));
    width: 1.5em;
    font-size: calc(2.8 * var(--base-unit));
    line-height: 1;
    top: calc(3 * var(--base-unit));
    font-family: "Helvetica Neue", "Helvetica", sans-serif;
    font-weight: 500;
  }

  .p-acd01.p-acd01--qa>.p-acd01__data>dd {
    padding-left: calc(10.2 * var(--base-unit));
    padding-right: calc(10.2 * var(--base-unit));
    background: #f7f7f8;
  }

  .p-acd01.p-acd01--qa>.p-acd01__data>dt.is-open+dd {
    padding-top: calc(3 * var(--base-unit));
    padding-bottom: calc(3 * var(--base-unit));
  }

 @media screen and (max-width: 767px) {
    .p-acd01.p-acd01--qa>.p-acd01__data>dt {
      padding: calc(1.6 * var(--base-unit)) calc(4.9 * var(--base-unit)) calc(1.8 * var(--base-unit));
    }

    .p-acd01.p-acd01--qa .p-acd01__ico {
      left: calc(1 * var(--base-unit));
      top: calc(2 * var(--base-unit));
    }

    .p-acd01.p-acd01--qa>.p-acd01__data>dd {
      padding-left: calc(4.9 * var(--base-unit));
      padding-right: calc(1.7 * var(--base-unit));
    }

    .p-acd01.p-acd01--qa>.p-acd01__data>dt.is-open+dd {
      padding-top: calc(1.6 * var(--base-unit));
      padding-bottom: calc(2 * var(--base-unit));
    }
  }

  /* 動画 */
  .p-movie01 {
    margin: calc(3 * var(--base-unit)) auto 0;
    width: var(--width-contents);
  }

  .p-movie01__list {
    margin: 0 auto;
    display: grid;
    width: calc(79.2 * var(--base-unit));
    grid-template-columns: 1fr;
    column-gap: calc(2.4 * var(--base-unit));
    row-gap: calc(3 * var(--base-unit));
  }

  .p-movie01__list>li {
    width: 100%;
  }

  .p-movie01__item {
    width: 100%;
  }

  .p-movie01>.p-movie01__item {
    margin: 0 auto;
    width: calc(79.2 * var(--base-unit));
    max-width: 100%;
  }

  .p-movie01__item-movie {
    width: 100%;
    position: relative;        
    overflow: hidden;
  }
  .p-movie01__modal-grid {
    /* モーダルホバー時のズーム対応 */
    overflow: hidden;
  }
  
  .p-movie01__item-movie::before {
    content: '';
    display: block;
    width: 100%;
    height: 0;
    padding-top: calc(446 / 792 * 100%);
  }
  .p-movie01__item-movie-time {
    position: absolute;
    bottom: 10px;
    left: 10px;
    color: #fff;
    background-color: #000;
    border-radius: 2px;
    font-size: calc(1.2 * var(--base-unit));
    line-height: 1.8;
    text-align: center;
    width: 50px;
  }

  #cboxLoadedContent .p-movie01__item-movie-time {
    /* 動画モーダルを開いたときにモーダル再生時間を消す指定 */
    display: none;
  }
  
  .p-movie01__item-movie:has(.vjs-button.vjs-paused, .vjs-button.vjs-playing) .p-movie01__item-movie-time {
    /* 動画再生ボタンをクリックしたあとは再生時間を表示しない指定 */
    display: none;
  }

  .p-movie01__item-cap {
    margin-top: calc(1 * var(--base-unit));
    font-weight: 400;
    font-size: calc(1.2 * var(--base-unit));
    letter-spacing: 0.03em;
    line-height: calc(21.6 / 12);
    color: #333;
  }

 @media screen and (max-width: 767px) {
    .p-movie01 {
      margin-top: calc(2 * var(--base-unit));
    }

    .p-movie01__list {
      width: 100%;
      grid-template-columns: 1fr;
      row-gap: calc(2 * var(--base-unit));
    }

    .p-movie01>.p-movie01__item {
      width: 100%;
    }
    .p-movie01__item-movie-time {
      position: absolute;
      bottom: calc(0.8 * var(--base-unit));
      left: calc(0.8 * var(--base-unit));
      font-size: calc(1.4 * var(--base-unit));
      width: calc(5 * var(--base-unit));
    }
  }

  /* サムネイルホバー時のスタイル */
  .p-movie01__item-movie .vjs-poster {
    transition: scale 0.3s;
  }
  
  @media screen and (min-width: 768px) {
    .p-movie01__item-movie:hover .vjs-poster {
      scale: 1.1;
    }
    .p-movie01__modal-grid:hover .vjs-poster {
      scale: 1.1;
    }
  }
  
  /* サムネイル中央の動画再生ボタン */
  .video-js .vjs-big-play-button {
    background-color: transparent!important;
  }
  .video-js .vjs-big-play-button {
    width: 60px!important;
    height: 60px!important;
    margin-left: -30px!important;
    margin-top: -30px!important;
  }

  .video-js .vjs-big-play-button .vjs-icon-placeholder:before{
    content: ""!important;
    background: url("https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_play_4.svg") no-repeat center / contain;
  }
  
 @media screen and (max-width: 767px) {
    .video-js .vjs-big-play-button {
      width: min(50px, calc(50 / 375 * 100vw))!important;
      height: min(50px, calc(50 / 375 * 100vw))!important;
      margin-left: min(-25px, calc(25 / 375 * 100vw))!important;
      margin-top: min(-25px, calc(25 / 375 * 100vw))!important;
    }
  }

  /* 動画（2カラム） */
  @media print, screen and (min-width: 768px) {
    .p-movie01.p-movie01--col2 .p-movie01__list {
      width: 100%;
      grid-template-columns: repeat(2, 1fr);
    }
  }
  
  /*　動画 iframe使用 */
  .p-movie01__item--iframe {
    position: relative;
    width: 100%;
    height: auto;
    padding-bottom: 56.25%;
    overflow: hidden;
  }

  .p-movie01__item--iframe iframe {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }



  /* 画像 */
  .p-img01 {
    margin: calc(3 * var(--base-unit)) auto 0;
    width: var(--width-contents);
  }

  .p-img01__list {
    margin: 0 auto;
    display: grid;
    width: calc(79.2 * var(--base-unit));
    grid-template-columns: 1fr;
    column-gap: calc(2.4 * var(--base-unit));
    row-gap: calc(3 * var(--base-unit));
  }

  .p-img01__list>li {
    width: 100%;
  }

  .p-img01__item {
    width: 100%;
  }

  .p-img01>.p-img01__item {
    margin: 0 auto;
    width: calc(79.2 * var(--base-unit));
    max-width: 100%;
  }

  .p-img01__item-img {
    /* width: 100%; */
    display: grid;
    place-content: center;
  }
  .p-img01__item-img--bd {
    border: 2px solid #ababab;
  }

  .p-img01__item-img>img {
    width: 100%;
    height: auto;
    display: block;
    max-width: calc(100% + 2px);
    max-height: 100%;
    /* width: unset;
    height: unset; */
    object-fit: contain;
  }

  .p-img01__item-cap {
    margin-top: calc(1 * var(--base-unit));
    font-weight: 400;
    font-size: calc(1.3 * var(--base-unit));
    letter-spacing: 0.04em;
    line-height: calc(22 / 13);
    color: #333;
  }

 @media screen and (max-width: 767px) {
    .p-img01 {
      margin-top: calc(2 * var(--base-unit));
    }

    .p-img01__list {
      width: 100%;
      grid-template-columns: 1fr;
      row-gap: calc(2 * var(--base-unit));
    }

    .p-img01>.p-img01__item {
      width: 100%;
    }
  }

  /* 画像（2カラム） */
  @media print, screen and (min-width: 768px) {
    .p-img01.p-img01--col2 .p-img01__list {
      width: 100%;
      grid-template-columns: repeat(2, 1fr);
    }
  }

  /* 画像（3カラム） */
  @media print, screen and (min-width: 768px) {
    .p-img01.p-img01--col3 .p-img01__list {
      width: 100%;
      grid-template-columns: repeat(3, 1fr);
    }
  }

  /* 画像（4カラム） */
  @media print, screen and (min-width: 768px) {
    .p-img01.p-img01--col4 .p-img01__list {
      width: 100%;
      grid-template-columns: repeat(4, 1fr);
    }
  }

  /* 画像＋テキスト */
  .p-imgset01 {
    margin: calc(3 * var(--base-unit)) auto 0;
    width: var(--width-contents);
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: calc(2.4 * var(--base-unit));
    row-gap: calc(3 * var(--base-unit));
  }
    .p-imgset01__small {
    grid-template-columns: 32% 66%;
  }

  .p-imgset01__fig {
    width: 100%;
  }

  .p-imgset01__fig-img {
    /* width: 100%; */
    display: grid;
    place-content: center;
  }

  .p-imgset01__fig-img>img {
    display: block;
    width: 100%;
    height: auto;
    max-width: calc(100% + 2px);
    max-height: 100%;
    /* width: unset;
    height: unset; */
    object-fit: contain;
  }

  .p-imgset01__fig-cap {
    margin-top: calc(2 * var(--base-unit));
    font-weight: 400;
    font-size: calc(1.3 * var(--base-unit));
    letter-spacing: 0.04em;
    line-height: calc(22 / 13);
    color: #333;
  }

  .p-imgset01__txt {
    font-weight: 400;
    font-size: calc(1.6 * var(--base-unit));
    letter-spacing: 0.03em;
    line-height: calc(28.8 / 16);
    color: #333;
  }

  .p-imgset01__txt>p+p {
    margin-top: calc(28.8 / 16 * 1em);
  }

 @media screen and (max-width: 767px) {
    .p-imgset01 {
      margin-top: calc(2 * var(--base-unit));
      grid-template-columns: 1fr;
      row-gap: calc(2 * var(--base-unit));
    }

    .p-imgset01__fig-cap {
      margin-top: calc(1 * var(--base-unit));
    }

    .p-imgset01__txt {
      font-size: calc(1.5 * var(--base-unit));
      line-height: calc(27 / 15);
    }

    .p-imgset01__txt>p+p {
      margin-top: calc(27 / 15 * 1em);
    }
  }

  .p-imgset01__txt [class^="p-hd0"] {
    margin: 0;
  }

  /* テーブル */
  .p-tbl01 {
    margin: calc(3 * var(--base-unit)) auto 0;
    width: var(--width-contents);
    overflow-x: auto;
  }

  .p-tbl01__scroll {
    width: 100%;
  }

  .p-tbl01__scroll .simplebar-scrollbar::before {
    background: #777;
    height: 100% !important;
    border-radius: 0 !important;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    opacity: 1;
  }

  .p-tbl01__scroll .simplebar-track {
    margin: 0 auto;
    width: var(--width-contents);
    border-top: calc(0.1 * var(--base-unit)) solid #d5d5d5;
    border-bottom: calc(0.1 * var(--base-unit)) solid #d5d5d5;
    height: calc(0.6 * var(--base-unit));
    background: #fff;
  }

  .p-tbl01__tbl {
    width: 100%;
  }
  @media screen and (min-width: 768px) {
    /* ブラウザで拡大縮小したときにtable最下部の下線が消える対策 */
    .p-tbl01__tbl {
      padding-bottom: 2px; 
    }
  }
  .p-tbl01__col2>col {
    width: calc(100% / 2);
  }

  .p-tbl01__col2-w1-3>col:nth-child(1) {
    width: calc(100% / 4 * 1);
  }

  .p-tbl01__col2-w1-3>col:nth-child(2) {
    width: calc(100% / 4 * 3);
  }

  .p-tbl01__col2-w1-2>col:nth-child(1) {
    width: calc(100% / 3 * 1);
  }

  .p-tbl01__col2-w1-2>col:nth-child(2) {
    width: calc(100% / 3 * 2);
  }

  .p-tbl01__col3>col {
    width: calc(100% / 3);
  }

  .p-tbl01__col3-w1-1-2>col:nth-child(1),
  .p-tbl01__col3-w1-1-2>col:nth-child(2) {
    width: calc(100% / 4 * 1);
  }

  .p-tbl01__col3-w1-1-2>col:nth-child(3) {
    width: calc(100% / 4 * 2);
  }

  .p-tbl01__col3-w1-2-3>col:nth-child(1) {
    width: calc(100% / 6 * 1);
  }

  .p-tbl01__col3-w1-2-3>col:nth-child(2) {
    width: calc(100% / 6 * 2);
  }

  .p-tbl01__col3-w1-2-3>col:nth-child(3) {
    width: calc(100% / 6 * 3);
  }

  .p-tbl01__col4>col {
    width: calc(100% / 4);
  }

  .p-tbl01__tbl>table {
    width: 100%;
    box-sizing: border-box;
    border-collapse: collapse;
  }

  .p-tbl01__tbl>table>thead>tr>th,
  .p-tbl01__tbl>table>tbody>tr>th,
  .p-tbl01__tbl>table>tbody>tr>td {
    padding: calc(1.3 * var(--base-unit)) calc(1.6 * var(--base-unit)) calc(1.4 * var(--base-unit));
    font-size: calc(1.6 * var(--base-unit));
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: calc(27 / 16);
    text-align: left;
    color: #333;
    box-sizing: border-box;
    vertical-align: top;
  }

  .p-tbl01__tbl>table>thead>tr>th,
  .p-tbl01__tbl>table>tbody>tr>th,
  .p-tbl01__tbl>table>tbody>tr>th.p-tbl01__cell01 {
    border: calc(0.1 * var(--base-unit)) solid #fff;
    background: #e6e6e6;
  }

  .p-tbl01__tbl>table>thead>tr>th {
    text-align: center;
    font-weight: 700;
  }

  .p-tbl01__tbl>table>tbody>tr>td,
  .p-tbl01__tbl>table>tbody>tr>th.p-tbl01__cell02 {
    background: #fff;
    border: calc(0.1 * var(--base-unit)) solid #d5d5d5;
  }
  
  .p-tbl01__tbl>table>tbody>tr>td>*:first-child,
  .p-tbl01__tbl>table>tbody>tr>th>*:first-child {
    margin-top: 0 !important;
  }
  

 @media screen and (max-width: 767px) {
    .p-tbl01 {
      margin: calc(2.4 * var(--base-unit)) 0 0;
      width: 100%;
    }

    .p-tbl01:before {
      margin-left: calc(2 * var(--base-unit));
      display: block;
      content: '↔ 表はスライドできます';
      font-size: calc(1.6 * var(--base-unit));
      line-height: calc(27 / 16);
      color: #333;
      font-weight: 500;
      margin-bottom: calc(1 * var(--base-unit));
    }
    [lang=en] .p-tbl01:before {
        content: '↔ The table can be scrolled.';
    }

    .p-tbl01__scroll {
      width: 100%;
      overflow-x: scroll;
    }

    .p-tbl01__tbl {
      width: calc(120 * var(--base-unit));
      padding: 0 calc(2 * var(--base-unit)) calc(1.8 * var(--base-unit));
      box-sizing: border-box;
      font-size: calc(1.5 * var(--base-unit));
    }

    .p-tbl01__tbl>table>thead>tr>th,
    .p-tbl01__tbl>table>tbody>tr>th,
    .p-tbl01__tbl>table>tbody>tr>td {
      padding: calc(1.4 * var(--base-unit)) calc(1.6 * var(--base-unit));
      font-size: calc(1.5 * var(--base-unit));
      text-align: left;
    }
  }

  /* スクロール無し */
  .p-tbl01__noscroll {
    margin: calc(3 * var(--base-unit)) auto 0;
    width: var(--width-contents);
    overflow-x: auto;
  }

 @media screen and (max-width: 767px) {

  .p-tbl01__noscroll {
    margin: calc(2.4 * var(--base-unit)) 0 0;
    width: 100%;
  }

  .p-tabl01__noscroll:before {
    content: none;
  }

  .p-tbl01__noscroll>.p-tbl01__tbl {
    width: 100%;
  }

}

  /* テーブル（横罫線） */
  .p-tbl02 {
    margin: calc(3 * var(--base-unit)) auto 0;
    width: var(--width-contents);
  }

  .p-tbl02__scroll {
    width: 100%;
  }

  .p-tbl02__scroll .simplebar-scrollbar::before {
    background: #777;
    height: 100% !important;
    border-radius: 0 !important;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    opacity: 1;
  }
  
  .p-tbl02__scroll .simplebar-track {
    margin: 0 auto;
    width: var(--width-contents);
    border-top: calc(0.1 * var(--base-unit)) solid #d5d5d5;
    border-bottom: calc(0.1 * var(--base-unit)) solid #d5d5d5;
    height: calc(0.6 * var(--base-unit));
    background: #fff;
  }

  .p-tbl02__tbl {
    width: 100%;
  }

  .p-tbl02__col2>col {
    width: calc(100% / 2);
  }

  .p-tbl02__col2-w1-3>col:nth-child(1) {
    width: calc(100% / 4 * 1);
  }

  .p-tbl02__col2-w1-3>col:nth-child(2) {
    width: calc(100% / 4 * 3);
  }

  .p-tbl02__col2-w1-2>col:nth-child(1) {
    width: calc(100% / 3 * 1);
  }

  .p-tbl02__col2-w1-2>col:nth-child(2) {
    width: calc(100% / 3 * 2);
  }

  .p-tbl02__tbl>table {
    width: 100%;
    box-sizing: border-box;
    border-collapse: collapse;
  }

  .p-tbl02__tbl>table>tbody>tr>th,
  .p-tbl02__tbl>table>tbody>tr>td {
    padding: calc(2 * var(--base-unit)) calc(1.6 * var(--base-unit));
    font-size: calc(1.6 * var(--base-unit));
    letter-spacing: 0.04em;
    line-height: calc(27 / 16);
    text-align: left;
    color: #333;
    box-sizing: border-box;
    border-top: calc(0.1 * var(--base-unit)) solid #d5d5d5;
    border-bottom: calc(0.1 * var(--base-unit)) solid #d5d5d5;
    vertical-align: top;
  }

  .p-tbl02__tbl>table>tbody>tr>th {
    font-weight: 500;
  }

  .p-tbl03__tbl>table>tbody>tr>td {
    font-weight: 400;
  }

 @media screen and (max-width: 767px) {
    .p-tbl02 {
      margin: calc(2.4 * var(--base-unit)) 0 0;
      width: 100%;
    }

    .p-tbl02__scroll {
      width: 100%;
      overflow-x: scroll;
    }

    .p-tbl02__scroll .simplebar-scrollbar::before {
      background: #777;
    }

    .p-tbl02__scroll .simplebar-track.simplebar-vertical {
      width: calc(0.6 * var(--base-unit));
    }

    .p-tbl02__tbl {
      width: 100%;
      padding: 0 calc(2 * var(--base-unit)) calc(1.8 * var(--base-unit));
      box-sizing: border-box;
      font-size: calc(1.5 * var(--base-unit));
    }

    .p-tbl02__tbl>table>tbody>tr>th,
    .p-tbl02__tbl>table>tbody>tr>td {
      display: block;
      padding: calc(1.4 * var(--base-unit)) calc(1.6 * var(--base-unit));
      font-size: calc(1.5 * var(--base-unit));
      text-align: left;
      width: 100%;
    }
    .p-tbl02__tbl > table > tbody > tr > th,
    .p-tbl02__tbl > table > tbody > tr:not(:last-child) > td{
      border-bottom: unset;
    }
    .p-tbl02__col2-w1-3,
    .p-tbl02__col2-w1-2{
      display: none;
    }
    .p-tbl02__tbl>table>tbody>tr>td {
      border-top: none;
    }
  }
  
  /**********************************
   サスティナビリティ　汎用モジュール 
   **********************************/

  .p-txt_link_reference {
    display: grid;
    grid-template-columns: auto 1fr;
    margin: calc(3 * var(--base-unit)) auto 0;
    width: var(--width-contents);
    overflow-wrap: anywhere;
  }
  
  .p-txt_link_reference__note {
    margin-right: 10px;
    font-weight: 400;
    font-size: calc(1.6 * var(--base-unit));
    letter-spacing: 0.03em;
    line-height: calc(21 / 16);
    color: #333;
    background: #F7F7F8;
    border: 1px solid #D5D5D5;
    padding: 2px 10px 4px;
    border-radius: 2px;
    height: fit-content;
  }
  .p-txt_link_reference li {
    display: inline;
    font-weight: 500;
    font-size: calc(1.6 * var(--base-unit));
    line-height: calc(28.8 / 16);
    letter-spacing: 0.03em;
  }
  .p-txt_link_reference .c-link01__note {
    margin-left: calc(2 * var(--base-unit));
  }

  @media screen and (max-width: 767px)  {
    .p-txt_link_reference li {
      /* display: block; */
      display: inline-block;
      font-size: calc(1.5 * var(--base-unit));
      letter-spacing: 0.03em;
      line-height: calc(28.8 / 15);
    }

    .p-txt_link_reference li:not(:first-of-type) {
      margin-top: calc(1 * var(--base-unit));
    }

    .p-txt_link_reference__note {
      margin-right: 10px;
      font-weight: 400;
      font-size: calc(1.5 * var(--base-unit));
      letter-spacing: 0.05em;
      line-height: calc(20 / 15);
    }
  }


  .p-hd_num-list {
    margin: calc(3 * var(--base-unit)) 0 0;
    width: 100%;
    font-weight: 500;
    font-size: calc(1.8 * var(--base-unit));
    letter-spacing: 0.03em;
    line-height: calc(32 / 18);
    color: #333;
  }

  .p-hd_num-list__num01  {
    margin: 0 auto;
    width: var(--width-contents);
  }

  .p-hd_num-list__num01 {
    display: table;
  }

  .p-hd_num-list__num01>li {
    display: table-row;
  }

  .p-hd_num-list__num01>li>span {
    display: table-cell;
    width: 1em;
    white-space: nowrap;
    padding-right: calc(1.2 * var(--base-unit));
  }

   @media screen and (max-width: 767px)  {
    
  .p-hd_num-list {
    font-weight: 400;
    font-size: calc(1.5 * var(--base-unit));
    line-height: calc(27 / 15);
  }

  .p-hd_num-list__num01>li>span{
    padding-right: calc(0.8 * var(--base-unit));
   }
  }

  @media  screen and (max-width: 767px) {
    .p-imgset01__small--r {
      row-gap: calc(4.8* var(--base-unit));
    }
  }
  @media screen and (min-width: 768px) {
    .p-imgset01__small--r {
      grid-template-columns: 66% 32%;
    }
  }
  


    .p-img_caption {
      margin: calc(3 * var(--base-unit)) auto 0;
      width: var(--width-contents);
    }

    .p-img_caption__list {
      margin: 0 auto;
      display: grid;
      width: calc(79.2 * var(--base-unit));
      grid-template-columns: 1fr;
      column-gap: calc(2.4 * var(--base-unit));
      row-gap: calc(3 * var(--base-unit));
    }
  
    .p-img_caption__list>li {
      width: 100%;
    }
  
    .p-img_caption__item {
      width: 100%;
    }
  
    .p-img_caption>.p-img_caption__item {
      margin: 0 auto;
      /* width: calc(79.2 * var(--base-unit)); */
      /* max-width: 100%; */
      width: fit-content;
    }
    .p-img_caption_l_flex>.p-img_caption__item {
      margin: 0 auto 0 0;
    }
  
    .p-img_caption_r_flex>.p-img_caption__item {
      margin: 0 0 0 auto;
    }

    .p-img_caption__item-img {
      width: fit-content;
    }

    .p-img_caption_l_flex .p-img_caption__item-img {
      margin: 0 auto 0 0;
    }
    .p-img_caption_c_flex .p-img_caption__item-img {
      margin: 0 auto;
    }
    .p-img_caption_r_flex .p-img_caption__item-img {
      margin: 0 0 0 auto;
    }

    .p-img_caption__item-img--bd {
      border: 2px solid #ababab;
    }
  
    .p-img_caption__item-img>img {
      width: 100%;
      height: auto;
      display: block;
      max-width: calc(100% + 2px);
      max-height: 100%;
      /* width: unset;
      height: unset; */
      object-fit: contain;
    }
  
    .p-img_caption__item-cap {
      margin-top: calc(1 * var(--base-unit));
      font-weight: 400;
      font-size: calc(1.3 * var(--base-unit));
      letter-spacing: 0.04em;
      line-height: calc(22 / 13);
      color: #333;
    }
  
     @media screen and (max-width: 767px) {
      .p-img_caption {
        margin-top: calc(2 * var(--base-unit));
      }
  
      .p-img_caption__list {
        width: 100%;
        grid-template-columns: 1fr;
        row-gap: calc(2 * var(--base-unit));
      }
  
      .p-img_caption>.p-img_caption__item {
        width: 100%;
      }
    }
  

    .p-box_2 {
    margin: calc(4 * var(--base-unit)) auto 0;
    width: var(--width-contents);
    background: #fff;
    border: calc(0.1 * var(--base-unit)) solid #bebebe;
    box-sizing: border-box;
    padding: calc(5 * var(--base-unit)) calc(5 * var(--base-unit));

    }
    .p-box_2.p-link01 {
      margin: calc(1 * var(--base-unit)) auto 0;
    }

    .p-box_2__sct {
      margin-top: calc(3 * var(--base-unit));
    }

    .p-box_2>*:first-child,
    .p-box_2__sct>*:first-child {
      margin-top: 0 !important;
    }

    .p-box_2 .p-hd04+*,
    .p-box_2 .p-hd05+* {
      margin-top: calc(1.5 * var(--base-unit)) !important;
    }

    @media print, screen and (min-width: 768px) and (max-width: 1199px) {
      .p-box_2 {
        padding: calc(4 * var(--base-unit)) calc(4 * var(--base-unit));
      }
    }

     @media screen and (max-width: 767px) {
      .p-box_2 {
        margin-top: calc(3 * var(--base-unit));
        padding: calc(2 * var(--base-unit)) calc(1.6 * var(--base-unit));
      }
      .p-box_2 .p-hd04__hd>span {
        font-size: calc(1.7* var(--base-unit));
        font-weight: 400            ;
        line-height: calc(24 / 17);
        letter-spacing: 0.03em;
      }
      .p-box_2-lead_img_2col .p-hd04__hd>span {
        font-size: calc(1.7* var(--base-unit));
        font-weight: 500;
        line-height: calc(24 / 17);
        letter-spacing: 0.03em;
      }
      .p-box_2 .p-txt01 {
        font-size: calc(1.5* var(--base-unit));
        font-weight: 400;
        line-height: calc(27 / 15);
        letter-spacing: 0.03em;
      }
      .p-box_2-lead_img_2col .p-txt01 {
        font-size: calc(1.5* var(--base-unit));
        font-weight: 400;
        line-height: calc(24 / 15);
        letter-spacing: 0.03em;
      }

    }
  /* ボックス（グレー背景） */
  .p-box_2.p-box_2--bg {
    background: #f7f7f8;
    border: 0;
  }
  /* 画像 */
  .p-box_2 {
    margin: calc(3 * var(--base-unit)) auto 0;
    width: var(--width-contents);
  }



  .p-box_2__list {
    margin: 0 auto;
    /* display: grid; */
    /* width: calc(79.2 * var(--base-unit)); */
    /* grid-template-columns: 1fr;*/
    column-gap: calc(2.4 * var(--base-unit));
    row-gap: calc(3 * var(--base-unit));
    display: flex;
    margin-top: calc(8 * var(--base-unit));
  }
  @media screen and (max-width: 767px) {
    .p-box_2__list {
      flex-direction: column;
      row-gap: calc(2* var(--base-unit));
    }
  }

  .p-box_2__list>li {
    margin: 0 auto;
  }

  .p-box_2__item {
    width: 100%;
  }

  .p-box_2>.p-box_2__item {
    margin: 0 auto;
    width: calc(79.2 * var(--base-unit));
    max-width: 100%;
  }

  .p-box_2__item-img {
    /* width: 100%; */
    display: grid;
    place-content: center;
  }
  .p-box_2__item-img--bd {
    border: 2px solid #ababab;
  }

  .p-box_2__item-img>img {
    width: 100%;
    height: auto;
    display: block;
    max-width: calc(100% + 2px);
    max-height: 100%;
    /* width: unset;
    height: unset; */
    object-fit: contain;
  }

  .p-box_2__item-cap {
    margin-top: calc(1 * var(--base-unit));
    font-weight: 400;
    font-size: calc(1.3 * var(--base-unit));
    letter-spacing: 0.04em;
    line-height: calc(22 / 13);
    color: #333;
  }

   @media screen and (max-width: 767px) {
    .p-box_2 {
      margin-top: calc(2 * var(--base-unit));
    }

    .p-box_2__list {
      width: 100%;
      grid-template-columns: 1fr;
      row-gap: calc(1.6 * var(--base-unit));
      margin-top: calc(4.5 * var(--base-unit));
    }

    .p-box_2>.p-box_2__item {
      width: 100%;
    }
  }

  /* 画像（2カラム） */
  @media print, screen and (min-width: 768px)  {
    .p-box_2.p-box_2-lead_img_2col .p-box_2__list {
      width: 100%;
      max-width: calc(96.6* var(--base-unit));
      grid-template-columns: repeat(2, 1fr);
    }
  }


  /* リスト（通常） */
  .p-box_1 {
    margin: calc(4 * var(--base-unit)) auto 0;
    width: var(--width-contents);
    background: #fff;
    border: calc(0.1 * var(--base-unit)) solid #bebebe;
    box-sizing: border-box;
    padding: calc(3 * var(--base-unit)) calc(4 * var(--base-unit));
  }

  .p-box_1_list {
    font-weight: 400;
    font-size: calc(1.6 * var(--base-unit));
    letter-spacing: 0.03em;
    line-height: calc(28.8 / 14);
    color: #333;
  }

  .p-box_1_list__dot {
    margin: 0 auto;
    width: var(--width-contents);
  }

  .p-box_1_list__dot>li {
    padding-left: calc(2 * var(--base-unit));
    font-size: calc(1.8 * var(--base-unit));
    position: relative;
  }

  .p-box_1_list__dot>li::before {
    content: '・';
    position: absolute;
    left: 0;
    top: 0;
  }
  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .p-box_1 {
      padding: calc(4 * var(--base-unit)) calc(4 * var(--base-unit));
    }
  }

  @media screen and (max-width: 767px) {
    .p-box_1 {
      margin-top: calc(3 * var(--base-unit));
      padding: calc(2 * var(--base-unit)) calc(1.6 * var(--base-unit));
    }
    .p-box_1_list {
      font-size: calc(1.5 * var(--base-unit));
      line-height: calc(27 / 15);
    }
    .p-box_1_list__dot>li {
      font-size: calc(1.5 * var(--base-unit));
      line-height: calc(27 / 15);
      letter-spacing: 0.03em;
    }
  }

  .p-box_2__dl {
      margin: 0 auto;
      margin-top: calc(7* var(--base-unit));
      font-weight: 400;
      font-size: calc(1.6 * var(--base-unit));
      letter-spacing: 0.03em;
      line-height: calc(28.8 / 16);
  }
  .p-box_2__dl>dt {
    margin-bottom: calc(1 * var(--base-unit));
  }
  .p-box_2__dl>dd {
    border-bottom: calc(0.1 * var(--base-unit)) solid #D5D5D5;
    padding-bottom: calc(2 * var(--base-unit));
  }
  .p-box_2__dl>dd:not(:last-child) {
    margin-bottom: calc(2 * var(--base-unit));
  }
  .p-box_2>.p-notes01 {
    margin: calc(1* var(--base-unit)) 0 calc(2* var(--base-unit));
  }

  @media screen and (max-width: 767px) {
    .p-box_2__dl {
      margin-top: calc(5.7* var(--base-unit));
      font-size: calc(1.5 * var(--base-unit));
      line-height: calc(27 / 15);
      font-weight: 500;
     }
     .p-box_2__dl>dd {
      padding-bottom: calc(4.8 * var(--base-unit));
      font-weight: 400;
     }
     .p-box_2>.p-notes01 {
      margin: calc(1* var(--base-unit)) 0 calc(3* var(--base-unit));
    }
   }
   @media screen and (max-width: 767px) {
    .p-box_1_list  .p-hd04__hd > span {
      font-size: calc(1.7 * var(--base-unit));
      line-height: calc(27 / 17);
      letter-spacing: 0.03em;
    }
   }


  .p-heading_special_materiality {
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: auto;
    grid-auto-flow: row;
    align-content: center;
    box-sizing: border-box;
    width: 100%;
  }

  @media screen and (max-width: 767px) {
    .p-heading_special_materiality {
      padding-top: calc(5* var(--base-unit));
      /* padding-bottom: calc(5* var(--base-unit)); */
      min-height: calc(16* var(--base-unit));
    }
  }


  @media print, screen and (min-width: 768px) and (max-width: 1199px){
    .p-heading_special_materiality {
      padding-top: calc(6* var(--base-unit));
      /* padding-bottom: calc(6* var(--base-unit)); */
      min-height: calc(22* var(--base-unit));
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-heading_special_materiality {
      padding-top: calc(6* var(--base-unit));
      /* padding-bottom: calc(6* var(--base-unit)); */
      min-height: calc(22* var(--base-unit));
    }
  }

  @media screen and (min-width: 1440px) {
    .p-heading_special_materiality {
      padding-top: calc(6* var(--base-unit));
      /* padding-bottom: calc(6* var(--base-unit)); */
    }
  }


  /* @media screen and (max-width: 767px) {
    .example>.p-heading_special_materiality {
display: none;
    }
  }
  @media print, screen and (min-width: 768px) and (max-width: 1199px){
    .example>.p-heading_special_materiality {
      padding-top: calc(3* var(--base-unit));
      padding-bottom: calc(3* var(--base-unit));
    }
  }

  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .example>.p-heading_special_materiality {
      padding-top: calc(3* var(--base-unit));
      padding-bottom: calc(3* var(--base-unit));
    }
  }

  @media screen and (min-width: 1440px) {
    .example>.p-heading_special_materiality {
      padding-top: calc(3* var(--base-unit));
      padding-bottom: calc(3* var(--base-unit));
    }
  } */

  .p-heading_special_materiality__hd {
    margin: 0 auto;
    width: var(--width-contents);
    display: flex;
    align-items: center;
    column-gap: calc(1.2 * var(--base-unit));
  }

  .p-heading_special_materiality__hd::before {
    content: '';
    display: block;
    width: calc(6 * var(--base-unit));
    height: calc(6 * var(--base-unit));
    border-radius: 50%;
  }
  .p-heading_special_materiality__hd--dummy::before {
    background: url(https://www.mitsubishicorp.com/jp/ja/sustainability/assets_r24/images/img_dmy_sus-general_00.svg) center / cover no-repeat;
  }
  .p-heading_special_materiality__hd--01::before {
    background: url(https://www.mitsubishicorp.com/jp/ja/sustainability/assets_r24/images/img_sus-general_01.svg) center / cover no-repeat;
  }
  .p-heading_special_materiality__hd--02::before {
    background: url(https://www.mitsubishicorp.com/jp/ja/sustainability/assets_r24/images/img_sus-general_02.svg) center / cover no-repeat;
  }
  .p-heading_special_materiality__hd--03::before {
    background: url(https://www.mitsubishicorp.com/jp/ja/sustainability/assets_r24/images/img_sus-general_03.svg) center / cover no-repeat;
  }
  .p-heading_special_materiality__hd--04::before {
    background: url(https://www.mitsubishicorp.com/jp/ja/sustainability/assets_r24/images/img_sus-general_04.svg) center / cover no-repeat;
  }
  .p-heading_special_materiality__hd--05::before {
    background: url(https://www.mitsubishicorp.com/jp/ja/sustainability/assets_r24/images/img_sus-general_05.svg) center / cover no-repeat;
  }
  .p-heading_special_materiality__hd--06::before {
    background: url(https://www.mitsubishicorp.com/jp/ja/sustainability/assets_r24/images/img_sus-general_06.svg) center / cover no-repeat;
  }
  .p-heading_special_materiality__hd--07::before {
    background: url(https://www.mitsubishicorp.com/jp/ja/sustainability/assets_r24/images/img_sus-general_07.svg) center / cover no-repeat;
  }
  .p-heading_special_materiality__hd--08::before {
    background: url(https://www.mitsubishicorp.com/jp/ja/sustainability/assets_r24/images/img_sus-general_08.svg) center / cover no-repeat;
  }

  .p-heading_special_materiality__hd>span {
    display: block;
    font-size: calc(3.4 * var(--base-unit));
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: calc(48 / 34);
    color: #333;
    flex: 1;
  }

  .p-heading_special_materiality__txt {
    margin: calc(2 * var(--base-unit)) auto 0;
    width: var(--width-contents);
    font-weight: 400;
    font-size: calc(1.8 * var(--base-unit));
    letter-spacing: 0.03em;
    line-height: calc(32.4 / 18);
    color: #333;
  }

  @media screen and (max-width: 767px) {
    .module .p-heading_special_materiality+* {
      margin-top: calc(3 * var(--base-unit)) !important;
    }

    .p-heading_special_materiality__hd>span {
      font-size: calc(2.2 * var(--base-unit));
      line-height: calc(30 / 22);
      letter-spacing: 0.1em;
      font-weight: 500;
    }

    .p-heading_special_materiality__txt {
      margin-top: calc(2 * var(--base-unit));
      font-size: calc(1.7 * var(--base-unit));
      letter-spacing: 0.03em;
      line-height: calc(30.6 / 17);
      color: #333;
    }
  }

/* 画像 */
  .p-icon_sdgs {
    margin: calc(3 * var(--base-unit)) auto 0;
    max-width: calc(120* var(--base-unit));
    padding: calc(4* var(--base-unit)) calc(4* var(--base-unit));
    box-sizing: border-box;
  }

  .p-icon_sdgs__list {
    display: flex;
    flex-wrap: wrap;
    gap: calc(2.4* var(--base-unit));
  }

  .p-icon_sdgs__list>li {
    max-width: 120px;
  }

  .p-icon_sdgs__item-img>img {
    display: block;
    width: 100%;
    height: auto;
    max-width: calc(120* var(--base-unit));
    max-height: 100%;
    object-fit: contain;
  }


  @media screen and (max-width: 767px) {
    .p-icon_sdgs {
      margin-top: calc(2 * var(--base-unit));
      width: 100%;
      padding: calc(1* var(--base-unit)) calc(2* var(--base-unit));
    }

    .p-icon_sdgs__list {
      width: 100%;
      gap: calc(1.1* var(--base-unit));
    }

    .p-icon_sdgs>.p-icon_sdgs__item {
      width: 100%;
    }
  }

  @media screen and (max-width: 500px) {
    .p-icon_sdgs__list>li {
      max-width: 75px;
    }
  }


  /* テーブル */
  .p-table-txt-ptn {
    margin: calc(3 * var(--base-unit)) auto 0;
    width: var(--width-contents);
    overflow-x: auto;
  }

  .p-table-txt-ptn__scroll {
    width: 100%;
  }

  .p-table-txt-ptn__scroll .simplebar-scrollbar::before {
    background: #777;
    height: 100% !important;
    border-radius: 0 !important;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    opacity: 1;
  }

  .p-table-txt-ptn__scroll .simplebar-track {
    margin: 0 auto;
    width: var(--width-contents);
    border-top: calc(0.1 * var(--base-unit)) solid #d5d5d5;
    border-bottom: calc(0.1 * var(--base-unit)) solid #d5d5d5;
    height: calc(0.6 * var(--base-unit));
    background: #fff;
  }

  .p-table-txt-ptn__tbl {
    width: 100%;
  }
  @media screen and (min-width: 768px) {
    /* ブラウザで拡大縮小したときにtable最下部の下線が消える対策 */
    .p-table-txt-ptn__tbl {
      padding-bottom: 2px;
    }
  }
  .p-table-txt-ptn__col1 {
    width: calc(100% / 6 * 1);
  }

  .p-table-txt-ptn__col2 {
    width: calc(100% / 6 * 2);
  }

  .p-table-txt-ptn__col3 {
    width: calc(100% / 6 * 3);
  }

  /* col width 汎用class */
  .col-width--01 { 
      width: 1% !important;
  }
  .col-width--02 { 
      width: 2% !important;
  }
  .col-width--03 { 
      width: 3% !important;
  }
  .col-width--04 { 
      width: 4% !important;
  }
  .col-width--05 { 
      width: 5% !important;
  }
  .col-width--06 { 
      width: 6% !important;
  }
  .col-width--07 { 
      width: 7% !important;
  }
  .col-width--08 { 
      width: 8% !important;
  }
  .col-width--09 { 
      width: 9% !important;
  }
  .col-width--10 {
      width: 10% !important;
  }
  .col-width--11 { 
      width: 11% !important;
  }
  .col-width--12 { 
      width: 12% !important;
  }
  .col-width--13 { 
      width: 13% !important;
  }
  .col-width--14 { 
      width: 14% !important;
  }
  .col-width--15 { 
      width: 15% !important;
  }
  .col-width--16 { 
      width: 16% !important;
  }
  .col-width--17 { 
      width: 17% !important;
  }
  .col-width--18 { 
      width: 18% !important;
  }
  .col-width--19 { 
      width: 19% !important;
  }
  .col-width--20 {
      width: 20% !important;
  }
  .col-width--21 { 
    width: 21% !important;
  }
  .col-width--22 { 
      width: 22% !important;
  }
  .col-width--23 { 
      width: 23% !important;
  }
  .col-width--24 { 
      width: 24% !important;
  }
  .col-width--25 { 
      width: 25% !important;
  }
  .col-width--26 { 
      width: 26% !important;
  }
  .col-width--27 { 
      width: 27% !important;
  }
  .col-width--28 { 
      width: 28% !important;
  }
  .col-width--29 { 
      width: 29% !important;
  }
  .col-width--30 {
      width: 30% !important;
  }
  .col-width--31 { 
      width: 31% !important;
  }
  .col-width--32 { 
      width: 32% !important;
  }
  .col-width--33 { 
      width: 33% !important;
  }
  .col-width--34 { 
      width: 34% !important;
  }
  .col-width--35 { 
      width: 35% !important;
  }
  .col-width--36 { 
      width: 36% !important;
  }
  .col-width--37 { 
      width: 37% !important;
  }
  .col-width--38 { 
      width: 38% !important;
  }
  .col-width--39 { 
      width: 39% !important;
  }
  .col-width--40 {
      width: 40% !important;
  }
  .col-width--41 { 
      width: 41% !important;
  }
  .col-width--42 { 
      width: 42% !important;
  }
  .col-width--43 { 
      width: 43% !important;
  }
  .col-width--44 { 
      width: 44% !important;
  }
  .col-width--45 { 
      width: 45% !important;
  }
  .col-width--46 { 
      width: 46% !important;
  }
  .col-width--47 { 
      width: 47% !important;
  }
  .col-width--48 { 
      width: 48% !important;
  }
  .col-width--49 { 
      width: 49% !important;
  }
  .col-width--50 {
      width: 50% !important;
  }
  .col-width--51 { 
      width: 51% !important;
  }
  .col-width--52 { 
      width: 52% !important;
  }
  .col-width--53 { 
      width: 53% !important;
  }
  .col-width--54 { 
      width: 54% !important;
  }
  .col-width--55 { 
      width: 55% !important;
  }
  .col-width--56 { 
      width: 56% !important;
  }
  .col-width--57 { 
      width: 57% !important;
  }
  .col-width--58 { 
      width: 58% !important;
  }
  .col-width--59 { 
      width: 59% !important;
  }
  .col-width--60 {
      width: 60% !important;
  }
  .col-width--61 { 
     width: 61% !important;
  }
  .col-width--62 { 
      width: 62% !important;
  }
  .col-width--63 { 
      width: 63% !important;
  }
  .col-width--64 { 
      width: 64% !important;
  }
  .col-width--65 { 
      width: 65% !important;
  }
  .col-width--66 { 
      width: 66% !important;
  }
  .col-width--67 { 
      width: 67% !important;
  }
  .col-width--68 { 
      width: 68% !important;
  }
  .col-width--69 { 
      width: 69% !important;
  }
  .col-width--70 {
      width: 70% !important;
  }
  .col-width--71 { 
      width: 71% !important;
  }
  .col-width--72 { 
      width: 72% !important;
  }
  .col-width--73 { 
      width: 73% !important;
  }
  .col-width--74 { 
      width: 74% !important;
  }
  .col-width--75 { 
      width: 75% !important;
  }
  .col-width--76 { 
      width: 76% !important;
  }
  .col-width--77 { 
      width: 77% !important;
  }
  .col-width--78 { 
      width: 78% !important;
  }
  .col-width--79 { 
      width: 79% !important;
  }
  .col-width--80 {
      width: 80% !important;
  }
  .col-width--81 { 
      width: 81% !important;
  }
  .col-width--82 { 
      width: 82% !important;
  }
  .col-width--83 { 
      width: 83% !important;
  }
  .col-width--84 { 
      width: 84% !important;
  }
  .col-width--85 { 
      width: 85% !important;
  }
  .col-width--86 { 
      width: 86% !important;
  }
  .col-width--87 { 
      width: 87% !important;
  }
  .col-width--88 { 
      width: 88% !important;
  }
  .col-width--89 { 
      width: 89% !important;
  }
  .col-width--90 {
      width: 90% !important;
  }
  .col-width--91 { 
      width: 91% !important;
  }
  .col-width--92 { 
      width: 92% !important;
  }
  .col-width--93 { 
      width: 93% !important;
  }
  .col-width--94 { 
      width: 94% !important;
  }
  .col-width--95 { 
      width: 95% !important;
  }
  .col-width--96 { 
      width: 96% !important;
  }
  .col-width--97 { 
      width: 97% !important;
  }
  .col-width--98 { 
      width: 98% !important;
  }
  .col-width--99 { 
      width: 99% !important;
  }
  .col-width--100 {
      width: 100% !important;
  }

  .p-table-txt-ptn__tbl>table {
    width: 100%;
    box-sizing: border-box;
    border-collapse: collapse;
  }

  .p-table-txt-ptn__tbl>table>thead>tr>th,
  .p-table-txt-ptn__tbl>table>tbody>tr>th,
  .p-table-txt-ptn__tbl>table>tbody>tr>td {
    padding: calc(1.3 * var(--base-unit)) calc(1.6 * var(--base-unit)) calc(1.4 * var(--base-unit));
    font-size: calc(1.6 * var(--base-unit));
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: calc(27 / 16);
    /* text-align: left; */
    color: #333;
    box-sizing: border-box;
    /* vertical-align: top; */
  }

  .p-table-txt-ptn__tbl>table>thead>tr>th,
  .p-table-txt-ptn__tbl>table>tbody>tr>th {
    border: calc(0.1 * var(--base-unit)) solid #fff;
    background: #e6e6e6;
  }

  .p-table-txt-ptn__tbl>table>thead>tr>th {
    text-align: center;
    /* font-weight: 700; */
  }

  .p-table-txt-ptn__tbl>table>tbody>tr>td {
    background: #fff;
    border: calc(0.1 * var(--base-unit)) solid #d5d5d5;
  }
  
  .p-table-txt-ptn__tbl>table>tbody>tr>td>*:first-child,
  .p-table-txt-ptn__tbl>table>tbody>tr>th>*:first-child {
    margin-top: 0 !important;
  }

  /* 文字位置 汎用class */
  @layer utility {
    .u-tbl-txt__lt {
    text-align: left!important;  
    vertical-align: top!important;
    }

    .u-tbl-txt__lm {
    text-align: left!important;  
    vertical-align:middle!important;
    }

    .u-tbl-txt__lb {
    text-align: left!important;  
    vertical-align:bottom!important;
    }

    .u-tbl-txt__ct {
    text-align: center!important;  
    vertical-align:top!important;
    }

    .u-tbl-txt__cm {
    text-align: center!important;  
    vertical-align:middle!important;
    }

    .u-tbl-txt__cb {
    text-align: center!important;  
    vertical-align:bottom!important;
    }

    .u-tbl-txt__rt {
    text-align: right!important;  
    vertical-align: top!important;
    }

    .u-tbl-txt__rm {
    text-align: right!important;  
    vertical-align: middle!important;
    }

    .u-tbl-txt__rb {
    text-align: right!important;  
    vertical-align: bottom!important;
    }
  }

  @media screen and (max-width: 767px) {
    .p-table-txt-ptn {
      margin: calc(2.4 * var(--base-unit)) 0 0;
      width: 100%;
    }

    .p-table-txt-ptn:before {
      margin-left: calc(2 * var(--base-unit));
      display: block;
      content: '↔ 表はスライドできます';
      font-size: calc(1.6 * var(--base-unit));
      line-height: calc(27 / 16);
      color: #333;
      font-weight: 500;
      margin-bottom: calc(1 * var(--base-unit));
    }
    [lang=en] .p-table-txt-ptn:before {
        content: '↔ The table can be scrolled.';
    }

    .p-table-txt-ptn__scroll {
      width: 100%;
      overflow-x: scroll;
    }

    .p-table-txt-ptn__tbl {
      width: calc(72 * var(--base-unit));
      padding: 0 calc(2 * var(--base-unit)) calc(1.8 * var(--base-unit));
      box-sizing: border-box;
      font-size: calc(1.5 * var(--base-unit));
    }

    .p-table-txt-ptn__tbl>table>thead>tr>th,
    .p-table-txt-ptn__tbl>table>tbody>tr>th,
    .p-table-txt-ptn__tbl>table>tbody>tr>td {
      padding: calc(1.3 * var(--base-unit)) calc(1.6 * var(--base-unit));
      font-size: calc(1.5 * var(--base-unit));
      line-height: calc(27 / 15);
    }
  }
}

/* カレント表示 */
@layer component {

  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-menu1__pageCategory.is-current a::after {
      background-color: #A22041;
    }
  }


  @media screen and (min-width: 1440px) {
    .p-menu1__pageCategory.is-current a::after {
      background-color: #A22041;
    }
  }

}

/* footer ホバー処理*/
@layer component {
  @media screen and (min-width: 768px)  {
    .c-sitemap1__info ul li a {
      padding-bottom: .3em;
      background: linear-gradient(#fff, #fff) 0 100%/0 1px no-repeat;
      transition: background .4s;
      line-height: 1.6;
    }
    .c-sitemap1__info ul li a:hover {
      background-size: 100% 1px;
    }
  }
}


@layer component {
 @media screen and (max-width: 767px) {
    .c-search1 :where(legend) {
      display: none;
    }
  }

  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-search1 :where(legend) {
      display: none;
    }
  }
}


/* 言語切り替え */
@layer component {
  .c-language1__control li {
    position: relative;
  }

  .c-language1__control li::before {
    content: "";
    display: block;
    aspect-ratio: 1;
    border-radius: 100vw;
    width: 7px;
    margin-left: auto;
    margin-right: auto;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -12px;
  }

  .c-language1__control li.lang--current::before {
    background-color: #A22041;
  }

  .c-language1__control li:hover {
    transition-timing-function: ease-in;
    color: #A22041;
  }

  .c-language1__control li:hover {
    transition-timing-function: ease-in;
    color: #A22041;
  }
  
  .c-language1__control  li:hover.lang--current {
    color: inherit;
  }
  
  /* .c-language1__control li:hover::before {
    background-color: #A22041;
  } */

}


/* 言語切り替えSP */
@layer component {
  .c-language-mobile {
    position: relative;
  }

  .c-language-mobile-btn {
    border: none;
    background-color: #FFF;
    color: #333333;
    width: 60px;
    height: 60px;
    cursor: pointer;
    display: grid;
    grid-template-columns: repeat(2, auto);
    grid-template-rows: 100%;
    gap: 0 4px;
    aspect-ratio: 1;
  }
 @media screen and (max-width: 767px) {
    .c-language-mobile-btn {
      gap: 0 calc(4* var(--mc--quantity--of-design--horizontal));
      width: calc(60* var(--mc--quantity--of-design--horizontal));
      height: 100%;
    }
    
  }
  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-language-mobile-btn {
      width: 80px;
      height: 80px;
    }
  }
  .c-language-mobile-btn__text {
    font-size: 15px;
    align-self: center;
    justify-self: end;
    font-weight: bold;
    letter-spacing: 0.02em;
    text-transform: uppercase;
  }
 @media screen and (max-width: 767px) {
    .c-language-mobile-btn__text {
      font-size: calc(15* var(--mc--quantity--of-design--horizontal));
    }

  }
  .c-language-mobile-btn__icon {
    width: 16px;
    height: 16px;
    display: block;
    align-self: center;
    justify-self: start;
    aspect-ratio: 1;
    background: url(https://www.mitsubishicorp.com/assets_r24/images/cmn-mark_triangle_1.svg) no-repeat center / contain;
    scale: -1;
  }
 @media screen and (max-width: 767px) {
    .c-language-mobile-btn__icon {
      width: calc(16* var(--mc--quantity--of-design--horizontal));
      height: calc(16* var(--mc--quantity--of-design--horizontal));
    }
  }
  .c-language-mobile-btn[aria-expanded="true"] > .c-language-mobile-btn__icon {
    scale: 1;
  }
  .c-language-mobile__accordion-panel.--close {
    visibility: hidden;
    opacity: 0;
  }
  .c-language-mobile__accordion-panel {
    position: absolute;
    top: 60px;
    left: 50%;
    transform: translateX(-50%);
    transition-property: opacity, left;
    transition-delay: 0s;
    transition-duration: .3s, 0s;
    opacity: 1;
    visibility: visible;
  }
 @media screen and (max-width: 767px) {
    .c-language-mobile__accordion-panel {
      top: calc(60* var(--mc--quantity--of-design--horizontal));
    }
  }
  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .c-language-mobile__accordion-panel {
      top: 80px;
      z-index: 500;
    }
  }
  .c-language-mobile__list {
    width: 150px;
    font-size: 16px;
  }
 @media screen and (max-width: 767px) {
    .c-language-mobile__list {
      width: calc(150* var(--mc--quantity--of-design--horizontal));
      font-size: calc(16* var(--mc--quantity--of-design--horizontal));
    }
  }
  .c-language-mobile__list > li {
    border: solid 1px #D5D5D5;
    background-color: #FFF;
    color: #333333;    
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    aspect-ratio: 150 / 50;
    font-weight: 500;
    letter-spacing: 0.04em;
  }
  .c-language-mobile__list > li > a {
    width: 100%;
    height: 100%;
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: center;
    background-color: #070707;
    color: #FFF;        
  }
}

/* パンくずリスト */
@layer component {
  .l-breadcrumb {
    border-top: solid 1px #D5D5D5;
    padding-top: 4px;
    padding-bottom: 4px;
    color: #666;
  }
  .l-breadcrumb a,
  .l-footer__state nav a {
    color: #000;
  }
  .l-breadcrumb__border {
    position: sticky;
    /* top: calc(var(--mc--height--ol-header) - 4px); */
    top: calc( 80px - 4px);
    margin-top: -4px;
    z-index: 100000000;
    height: 4px;
    background-color: #FFF;
    box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
    box-sizing: border-box;
    clip-path: inset(1px 0px -10px 0px);
    /* clip-path: inset(0px 0px -10px 0px); */
  }
  @media print, screen and (min-width: 768px) and (max-width: 1199px) {
    .l-breadcrumb__border {
      position: relative;
      top: 0;
      z-index: 1;
    }
  }
 @media screen and (max-width: 767px) {
    .l-breadcrumb__border {
      position: relative;
      top: 0;
      z-index: 1;
    }
  }
  

  /* .p-related */
  .p-related {
    --mc-gallery2--color-for-hide: #F7F7F8;
    background-color: #F7F7F8;
  }

 @media screen and (max-width: 767px) {
    .p-related {
      padding-top: calc(32 * var(--mc--quantity--of-design--horizontal));
      padding-left: var(--mc-layout--offset--of-outer-left);
      padding-right: var(--mc-layout--offset--of-outer-right);
    }
  }


  @media screen and (min-width: 768px) and (max-width: 1199px) {
    .p-related {
      padding-top: 100px;
      padding-bottom: 80px;
      padding-left: calc(var(--mc-layout--offset--of-outer-left) + var(--mc-layout--offset--of-inner-left));
      padding-right: calc(var(--mc-layout--offset--of-outer-right) + var(--mc-layout--offset--of-inner-right));
    }
  }


  @media screen and (min-width: 1200px) and (max-width: 1439px) {
    .p-related {
      padding-top: 100px;
      padding-bottom: 80px;
      padding-left: calc(var(--mc-layout--offset--of-outer-left) + var(--mc-layout--offset--of-inner-left));
      padding-right: calc(var(--mc-layout--offset--of-outer-right) + var(--mc-layout--offset--of-inner-right));
    }
  }

  @media print {
    .p-related {
      padding-top: 100px;
      padding-bottom: 80px;
      padding-left: calc(var(--mc-layout--offset--of-outer-left) + var(--mc-layout--offset--of-inner-left));
      padding-right: calc(var(--mc-layout--offset--of-outer-right) + var(--mc-layout--offset--of-inner-right));
    }
  }

  @media screen and (min-width: 1440px) {
    .p-related {
      padding-top: 100px;
      padding-bottom: 80px;
      padding-left: calc(var(--mc-layout--offset--of-outer-left) + var(--mc-layout--offset--of-inner-left));
      padding-right: calc(var(--mc-layout--offset--of-outer-right) + var(--mc-layout--offset--of-inner-right));
    }
  }
  
}