@charset "UTF-8";
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

:where([hidden]:not([hidden=until-found])) {
  display: none !important;
}

:where(html) {
  -webkit-text-size-adjust: none;
  color-scheme: dark light;
}

@supports not (min-block-size: 100dvb) {
  :where(html) {
    block-size: 100%;
  }
}
@media (prefers-reduced-motion: no-preference) {
  :where(html:focus-within) {
    scroll-behavior: smooth;
  }
}
:where(body) {
  block-size: 100%;
  block-size: 100dvb;
  line-height: 1.5;
  font-family: system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}

:where(input, button, textarea, select) {
  font: inherit;
  color: inherit;
}

:where(textarea) {
  resize: vertical;
  resize: block;
}

:where(button, label, select, summary, [role=button], [role=option]) {
  cursor: pointer;
}

:where(:disabled) {
  cursor: not-allowed;
}

:where(label:has(> input:disabled), label:has(+ input:disabled)) {
  cursor: not-allowed;
}

:where(button) {
  border-style: solid;
}

:where(a) {
  text-underline-offset: 0.2ex;
}

:where(ul, ol) {
  list-style: none;
}

:where(img, svg, video, canvas, audio, iframe, embed, object) {
  display: block;
}

:where(img, picture, svg) {
  max-inline-size: 100%;
  block-size: auto;
}

:where(p, h1, h2, h3, h4, h5, h6) {
  overflow-wrap: break-word;
}

:where(h1, h2, h3) {
  line-height: calc(1em + 0.5rem);
}

:where(hr) {
  border: none;
  border-block-start: 1px solid;
  color: inherit;
  block-size: 0;
  overflow: visible;
}

:where(:focus-visible) {
  outline: 2px solid var(--focus-color, Highlight);
  outline-offset: 2px;
}

:where(.visually-hidden:not(:focus, :active, :focus-within, .not-visually-hidden)) {
  -webkit-clip-path: inset(50%) !important;
          clip-path: inset(50%) !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden !important;
  position: absolute !important;
  white-space: nowrap !important;
  border: 0 !important;
}

*,
*::before,
*::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}

body {
  font-size: 16px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0.01em;
  color: #111111;
  background: #E3E7EA;
  -webkit-text-size-adjust: 100%;
}

b, strong, .bold {
  font-weight: 700;
}

img {
  max-width: 100%;
  image-rendering: -webkit-optimize-contrast;
  -webkit-backface-visibility: hidden;
}

a {
  color: #111111;
  text-decoration: none;
}

.l-footer {
  width: min(95%, 1160px);
  margin: 0 auto;
  padding: 80px 0 100px 0;
  position: relative;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media (max-width: 600px) {
  .l-footer {
    width: 100%;
    padding: 50px 30px 100px 30px;
  }
}
.l-footer::before {
  content: "";
  width: 100vw;
  height: 100%;
  margin: 0 calc(50% - 50vw);
  background: url(../images/common/footer_deco.png) #F4F5F7 repeat-x bottom center/1512px auto;
  border-top: 4px solid #111111;
  position: absolute;
  top: 0;
  z-index: -1;
}
@media (max-width: 600px) {
  .l-footer::before {
    background: url(../images/common/footer_deco.png) #F4F5F7 no-repeat bottom left -410px/1258px auto;
    margin: 0 -30px;
  }
}
.l-footer__corolla {
  width: min(45%, 342px);
}
@media (max-width: 600px) {
  .l-footer__corolla {
    width: 100%;
  }
}
.l-footer__logo {
  width: min(100%, 342px);
}
@media (max-width: 600px) {
  .l-footer__logo {
    width: min(100%, 250px);
    margin: 0 auto;
  }
}
.l-footer__site {
  margin-top: 30px;
}
@media (max-width: 600px) {
  .l-footer__site {
    width: min(100%, 250px);
    margin: 30px auto 0 auto;
  }
}
.l-footer__site-link {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 800;
  letter-spacing: 0.01em;
  width: min(100%, 160px);
  padding-bottom: 10px;
  border-bottom: 4px solid #111111;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 600px) {
  .l-footer__site-link {
    width: 100%;
  }
}
.l-footer__site-link::after {
  content: "";
  width: 7px;
  height: 11px;
  background: #111111;
  -webkit-clip-path: polygon(7px 50%, 0% 0%, 0% 11px);
          clip-path: polygon(7px 50%, 0% 0%, 0% 11px);
}
.l-footer__insta {
  width: min(45%, 376px);
}
@media (max-width: 600px) {
  .l-footer__insta {
    width: min(100%, 250px);
    margin: 30px auto 0 auto;
  }
}
.l-footer__copyright {
  font-size: 14px;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 800;
  text-align: right;
  width: 100%;
  margin-top: 145px;
}
@media (max-width: 600px) {
  .l-footer__copyright {
    font-size: 12px;
    text-align: center;
    margin-top: 50px;
  }
}

.l-header {
  width: min(100%, 210px);
  aspect-ratio: 1/1;
  padding: 25px 0;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 3;
}
@media (max-width: 960px) {
  .l-header {
    width: min(100%, 180px);
    padding: 0;
  }
}
.l-header::before {
  content: "";
  width: 100vw;
  height: 100dvh;
  background: rgba(34, 34, 34, 0.6);
  position: fixed;
  top: 0;
  left: 0;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
}
.l-header__nav {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.02em;
  width: min(100%, 210px);
  margin-left: auto;
}
@media (max-width: 960px) {
  .l-header__nav {
    width: min(100%, 180px);
    padding: 85px 0 45px 0;
    background: #111111;
    display: flex;
    justify-content: center;
    transform: translateX(100%);
  }
}
.l-header__nav-list {
  display: flex;
  flex-direction: column;
  gap: 15px 0;
}
.l-header__nav-item {
  line-height: 1.3;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
@media (max-width: 960px) {
  .l-header__nav-item {
    display: block;
  }
}
.l-header__nav-item::after {
  content: "";
  width: 32px;
  height: 2px;
  margin-left: 15px;
}
@media (max-width: 960px) {
  .l-header__nav-item::after {
    display: none;
  }
}
.l-header__nav-item.is-active::after {
  background: #111111;
}
.l-header__nav-link {
  display: block;
}
@media (max-width: 960px) {
  .l-header__nav-link {
    color: #FFF;
  }
}
.l-header__nav-link.is-active {
  color: #FFF;
}
.l-header__menu {
  width: 70px;
  aspect-ratio: 1/1;
  background: #111111;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  gap: 8px;
  position: fixed;
  top: 0;
  right: 0;
}
@media (max-width: 960px) {
  .l-header__menu {
    opacity: 1;
    visibility: visible;
  }
}
.l-header__menu::after {
  content: "Menu";
  font-family: "Plus Jakarta Sans", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-size: 12px;
  font-weight: 800;
  color: #F4F5F7;
  margin-top: -3px;
}
.l-header__menu-bar {
  width: 32px;
  height: 2px;
  background: #F4F5F7;
  transition: 0.3s;
}
.l-header.is-open {
  width: 100%;
  height: 100vh;
  border: 1px solid #000;
}
@media (max-width: 960px) {
  .l-header.is-open::before {
    opacity: 1;
    visibility: visible;
  }
}
@media (max-width: 960px) {
  .l-header.is-open .l-header__nav {
    transform: translateX(0);
  }
}
.l-header.is-open .l-header__menu::after {
  content: "Close";
}
.l-header.is-open .l-header__menu-bar:nth-child(1) {
  transform: translateY(5px) rotate(30deg);
}
.l-header.is-open .l-header__menu-bar:nth-child(2) {
  transform: translateY(-5px) rotate(-30deg);
}

.l-container {
  position: relative;
  overflow-x: hidden;
}
.l-container::before {
  content: "";
  width: min(100%, 264px);
  aspect-ratio: 1/1;
  background: #007DB5;
  position: absolute;
  top: 0;
  left: 5%;
  transform: translateY(-51%);
  z-index: 1;
}
@media (max-width: 960px) {
  .l-container::before {
    transform: translate(-70%, -30%);
  }
}
@media (max-width: 600px) {
  .l-container::before {
    width: min(100%, 120px);
    transform: translate(-70%, -10%);
  }
}
.l-container::after {
  content: "";
  width: min(100%, 210px);
  aspect-ratio: 1/1;
  background: #F7B928;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
}
@media (max-width: 960px) {
  .l-container::after {
    transform: translateY(-60%);
  }
}
@media (max-width: 600px) {
  .l-container::after {
    width: min(100%, 112px);
    transform: translate(-60px, -60%);
  }
}

.l-main {
  width: min(95%, 1160px);
  margin: 0 auto;
}
@media (max-width: 600px) {
  .l-main {
    width: 100%;
    padding: 0 30px;
  }
}

.l-pagination {
  display: inline-flex;
  align-items: center;
  gap: 13px;
}
@media (max-width: 600px) {
  .l-pagination {
    flex-wrap: wrap;
  }
}
.l-pagination .page-numbers {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  color: #111111;
  text-decoration: none;
  background: #FFF;
  border: 2px solid #111111;
  --viewport-from: 375;
  --viewport-to: 1440;
  --min-font-size: 14;
  --max-font-size: 16;
}
.l-pagination .page-numbers *,
.l-pagination .page-numbers *::before,
.l-pagination .page-numbers *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
.l-pagination .page-numbers.current {
  background: #111111;
  color: #FFF;
}
.l-pagination .page-numbers.dots {
  border: none;
  font-size: 35px;
  line-height: 0;
}
.l-pagination .page-numbers.prev {
  display: flex;
  justify-content: center;
  align-items: center;
  transform: scale(-1, 1);
}
.l-pagination .page-numbers.prev::after {
  content: "";
  width: 7px;
  height: 11px;
  background: #111111;
  -webkit-clip-path: polygon(7px 50%, 0% 0%, 0% 11px);
          clip-path: polygon(7px 50%, 0% 0%, 0% 11px);
}
.l-pagination .page-numbers.next {
  display: flex;
  justify-content: center;
  align-items: center;
}
.l-pagination .page-numbers.next::after {
  content: "";
  width: 7px;
  height: 11px;
  background: #111111;
  -webkit-clip-path: polygon(7px 50%, 0% 0%, 0% 11px);
          clip-path: polygon(7px 50%, 0% 0%, 0% 11px);
}

.l-post-content > p {
  margin-bottom: 30px;
  font-weight: 500;
}
.l-post-content > p:first-of-type {
  margin: 0 0 30px;
}
.l-post-content > p > strong {
  --viewport-from: 375;
  --viewport-to: 1440;
  --min-font-size: 16;
  --max-font-size: 18;
}
.l-post-content > p > strong *,
.l-post-content > p > strong *::before,
.l-post-content > p > strong *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
.l-post-content > p > a {
  text-decoration: underline;
}
.l-post-content > a {
  text-decoration: underline;
}
.l-post-content > h2 {
  --viewport-from: 375;
  --viewport-to: 1440;
  --min-font-size: 18;
  --max-font-size: 22;
  font-weight: bold;
  line-height: 1.8;
  margin-bottom: 20px;
}
.l-post-content > h2 *,
.l-post-content > h2 *::before,
.l-post-content > h2 *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
.l-post-content > h3 {
  --viewport-from: 375;
  --viewport-to: 1440;
  --min-font-size: 17;
  --max-font-size: 20;
  font-weight: bold;
  line-height: 1.8;
  margin-bottom: 20px;
}
.l-post-content > h3 *,
.l-post-content > h3 *::before,
.l-post-content > h3 *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
.l-post-content > h4 {
  --viewport-from: 375;
  --viewport-to: 1440;
  --min-font-size: 16;
  --max-font-size: 18;
  font-weight: bold;
  line-height: 1.8;
  margin-bottom: 20px;
}
.l-post-content > h4 *,
.l-post-content > h4 *::before,
.l-post-content > h4 *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
.l-post-content > h5, .l-post-content h6 {
  --viewport-from: 375;
  --viewport-to: 1440;
  --min-font-size: 15;
  --max-font-size: 16;
  font-weight: bold;
  line-height: 1.8;
  margin-bottom: 20px;
}
.l-post-content > h5 *,
.l-post-content > h5 *::before,
.l-post-content > h5 *::after, .l-post-content h6 *,
.l-post-content h6 *::before,
.l-post-content h6 *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
.l-post-content > ol, .l-post-content ul {
  margin-bottom: 30px;
}
.l-post-content > ol > li {
  list-style-position: inside;
}
.l-post-content > figure {
  margin-bottom: 30px;
}
.l-post-content a[href$=".pdf"]::after {
  content: "";
  width: 14px;
  height: 17px;
  margin-left: 7px;
  background: url(../images/common/ic_pdf.svg) no-repeat center center/100% auto;
  display: inline-block;
  vertical-align: -0.1em;
}

.p-home-mv {
  padding: 1px 0 0 0;
  position: relative;
}
.p-home-mv::before {
  content: "";
  width: 100vw;
  height: 100%;
  margin: 0 calc(50% - 50vw);
  background-image: repeating-conic-gradient(at 50% 100%, transparent 5deg 15deg, #D2DAE0 15deg 25deg);
  background-size: contain;
  background-position: center center;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
  opacity: 0.4;
}
.p-home-mv::after {
  content: "";
  width: 100vw;
  height: 6px;
  margin: 0 calc(50% - 50vw);
  background: linear-gradient(90deg, rgb(24, 97, 86) 0%, rgb(24, 97, 86) 22px, rgb(165, 185, 57) 22px, rgb(165, 185, 57) 44px, rgb(247, 185, 40) 44px, rgb(247, 185, 40) 66px, rgb(226, 95, 62) 66px, rgb(226, 95, 62) 88px, rgb(0, 125, 181) 88px, rgb(0, 125, 181) 110px, rgb(115, 43, 110) 110px, rgb(115, 43, 110) 132px, rgb(17, 17, 17) 132px) no-repeat;
  position: absolute;
  top: 0;
  z-index: 2;
}
.p-home-mv__inner {
  margin-top: 75px;
  padding: 80px 55px 0 55px;
  background-color: #FFF;
}
@media (max-width: 600px) {
  .p-home-mv__inner {
    margin-top: 35px;
    background: #FFF;
    padding: 55px 30px 0 30px;
  }
}
.p-home-mv__inner::before {
  content: "";
  width: min(100%, 278px);
  aspect-ratio: 1/1;
  background: #A5B939;
  position: absolute;
  left: 0;
  bottom: 20px;
  transform: translateX(-90%);
  z-index: -1;
}
@media (max-width: 600px) {
  .p-home-mv__inner::before {
    width: min(100%, 171px);
    transform: translateX(-50%);
    bottom: 40px;
  }
}
.p-home-mv__inner::after {
  content: "";
  width: min(100%, 182px);
  aspect-ratio: 1/1;
  background: #732B6E;
  position: absolute;
  bottom: 20px;
  right: 0;
  transform: translateX(154%);
  z-index: -1;
}
@media (max-width: 600px) {
  .p-home-mv__inner::after {
    width: min(100%, 150px);
    transform: translateX(90%);
    bottom: 10px;
  }
}
.p-home-mv__title {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 15px 0;
  position: relative;
}
.p-home-mv__title::before {
  content: "";
  width: 60px;
  aspect-ratio: 1/1;
  background: url(../images/home/deco_mv_car01.png) no-repeat center center/100% auto;
  position: absolute;
  left: 0;
}
@media (max-width: 960px) {
  .p-home-mv__title::before {
    display: none;
  }
}
.p-home-mv__title::after {
  content: "";
  width: 60px;
  aspect-ratio: 1/1;
  background: url(../images/home/deco_mv_car02.png) no-repeat center center/100% auto;
  position: absolute;
  right: 0;
  bottom: 0;
  transform: translateY(120%);
}
@media (max-width: 960px) {
  .p-home-mv__title::after {
    display: none;
  }
}
.p-home-mv__logo {
  width: min(37%, 325px);
}
@media (max-width: 600px) {
  .p-home-mv__logo {
    width: min(100%, 169px);
  }
}
.p-home-mv__open {
  margin-top: 30px;
}
.p-home-mv__open img {
  margin: 0 auto;
}
@media (max-width: 600px) {
  .p-home-mv__open {
    margin-top: 20px;
  }
}
.p-home-mv__lead {
  margin-top: 30px;
  position: relative;
}
@media (max-width: 960px) {
  .p-home-mv__lead::before {
    content: "";
    width: 50px;
    aspect-ratio: 1/1;
    background: url(../images/home/deco_mv_car01.png) no-repeat center center/100% auto;
    position: absolute;
    left: 0;
    top: 0;
    transform: translate(-100%, -100%);
  }
}
@media (max-width: 960px) and (max-width: 600px) {
  .p-home-mv__lead::before {
    transform: translate(-100%, 0);
  }
}
.p-home-mv__lead::after {
  content: "";
}
@media (max-width: 960px) {
  .p-home-mv__lead::after {
    width: 50px;
    aspect-ratio: 1/1;
    background: url(../images/home/deco_mv_car02.png) no-repeat center center/100% auto;
    position: absolute;
    right: 0;
    bottom: 0;
    transform: translate(100%, 100%);
  }
}
@media (max-width: 960px) and (max-width: 600px) {
  .p-home-mv__lead::after {
    transform: translate(100%, -100%);
  }
}
.p-home-mv__lead img {
  margin: 0 auto;
}
.p-home-mv__img {
  width: 100vw;
  margin: 50px calc(50% - 50vw) 0 calc(50% - 50vw);
  position: relative;
}
.p-home-mv__img img {
  width: min(120%, 1520px);
  margin: 0 auto;
}
@media (max-width: 960px) {
  .p-home-mv__img img {
    max-width: initial;
    width: 115%;
    -o-object-fit: cover;
       object-fit: cover;
    transform: translateX(-4%);
  }
}
.p-home-mv__svg {
  margin: 15px auto 0 auto;
  width: min(100%, 1520px);
  display: block;
  position: relative;
}
@media (max-width: 600px) {
  .p-home-mv__svg {
    margin-top: 80px;
  }
}
.p-home-mv__svg img {
  width: min(30%, 451px);
  position: absolute;
  top: -15px;
  left: 13%;
}
@media (max-width: 600px) {
  .p-home-mv__svg img {
    width: 60%;
    top: 0;
    left: 40px;
    transform: translateY(-75%);
  }
}

@keyframes animation {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: 0 200%;
  }
}
.p-home-news {
  position: relative;
}
.p-home-news::before {
  content: "";
  width: 100vw;
  height: 6px;
  margin: 0 calc(50% - 50vw);
  background: linear-gradient(90deg, rgb(24, 97, 86) 0%, rgb(24, 97, 86) 22px, rgb(165, 185, 57) 22px, rgb(165, 185, 57) 44px, rgb(247, 185, 40) 44px, rgb(247, 185, 40) 66px, rgb(226, 95, 62) 66px, rgb(226, 95, 62) 88px, rgb(0, 125, 181) 88px, rgb(0, 125, 181) 110px, rgb(115, 43, 110) 110px, rgb(115, 43, 110) 132px, rgb(17, 17, 17) 132px) no-repeat;
  position: absolute;
  top: 0;
  transform: scale(-1, 1);
  z-index: 1;
}
.p-home-news__inner {
  padding: 150px 25px 100px 25px;
  background: url(../images/home/bg_msg.png) no-repeat center bottom -200px/1680px auto;
  background-color: #FFF;
}
@media (max-width: 600px) {
  .p-home-news__inner {
    padding: 80px 30px 60px 30px;
  }
}
.p-home-news__heading {
  text-align: center;
  --viewport-from: 375;
  --viewport-to: 1440;
  --min-font-size: 24;
  --max-font-size: 48;
}
.p-home-news__heading *,
.p-home-news__heading *::before,
.p-home-news__heading *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
.p-home-news__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: 32px;
       column-gap: 32px;
  margin-top: 56px;
}
@media (max-width: 600px) {
  .p-home-news__list {
    display: block;
  }
}
@media (max-width: 600px) {
  .p-home-news__list-item:not(:first-of-type) {
    margin-top: 16px;
  }
}
.p-home-news__link-image img {
  width: 100%;
  max-width: 100%;
  height: auto;
}
.p-home-news__title-area {
  margin-top: 13px;
}
@media (max-width: 600px) {
  .p-home-news__title-area {
    margin-top: 10px;
  }
}
.p-home-news__link-date {
  display: flex;
  align-items: center;
  font-size: 13px;
  gap: 4px;
}
.p-home-news__link-date::before {
  content: "";
  display: block;
  aspect-ratio: 1/1;
  width: 8px;
  background: #CC3C18;
}
.p-home-news__link-title {
  margin-top: 8px;
}
.p-home-news__button {
  display: flex;
  justify-content: center;
  margin-top: 30px;
}
@media (max-width: 600px) {
  .p-home-news__button {
    width: min(100%, 250px);
    margin: 30px auto 0 auto;
  }
}
.p-home-news__button-link {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 800;
  letter-spacing: 0.01em;
  width: min(100%, 160px);
  padding-bottom: 10px;
  border-bottom: 4px solid #111111;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 64px;
}
@media (max-width: 600px) {
  .p-home-news__button-link {
    margin-top: 32px;
    width: 100%;
  }
}
.p-home-news__button-link::after {
  content: "";
  width: 7px;
  height: 11px;
  background: #111111;
  -webkit-clip-path: polygon(7px 50%, 0% 0%, 0% 11px);
          clip-path: polygon(7px 50%, 0% 0%, 0% 11px);
}

.p-home-message {
  position: relative;
}
.p-home-message::after {
  content: "";
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  height: 150px;
  background: url(../images/home/deco_open.png) repeat-x center bottom/1512px auto;
  position: absolute;
  bottom: 0;
}
@media (max-width: 600px) {
  .p-home-message::after {
    background: url(../images/home/deco_open.png) no-repeat left -360px bottom/1258px auto;
  }
}
.p-home-message__inner {
  padding: 150px 25px 200px 25px;
  background: url(../images/home/bg_msg.png) no-repeat center bottom -200px/1680px auto;
  background-color: #FFF;
}
@media (max-width: 600px) {
  .p-home-message__inner {
    padding: 80px 30px 200px 30px;
  }
}
.p-home-message__inner::after {
  content: "";
  width: 107px;
  aspect-ratio: 1/1;
  background: #CC3C18;
  position: absolute;
  top: 85px;
  right: 19%;
  z-index: 0;
}
@media (max-width: 600px) {
  .p-home-message__inner::after {
    width: 70px;
    top: 30px;
  }
}
.p-home-message__cube-left {
  width: min(100%, 270px);
  aspect-ratio: 1/1;
  position: absolute;
  top: 180px;
  left: 0;
  transform: translateX(-77%);
  z-index: 2;
}
.p-home-message__cube-left::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #F7B928;
  position: absolute;
  top: 0;
  left: 0;
}
@media (max-width: 600px) {
  .p-home-message__cube-left {
    width: min(100%, 145px);
    top: 125px;
  }
}
.p-home-message__crane-left {
  width: min(100%, 59px);
  margin: 0 auto;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  transform: translateY(100%);
  z-index: -1;
}
@media (max-width: 1360px) {
  .p-home-message__crane-left {
    right: -60%;
  }
}
@media (max-width: 600px) {
  .p-home-message__crane-left {
    width: min(100%, 40px);
  }
}
.p-home-message__cube-right {
  width: min(100%, 285px);
  aspect-ratio: 1/1;
  position: absolute;
  top: 390px;
  right: 0;
  transform: translateX(91%);
  z-index: 2;
}
.p-home-message__cube-right::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #A5B939;
  position: absolute;
  top: 0;
  left: 0;
}
@media (max-width: 600px) {
  .p-home-message__cube-right {
    transform: translateX(80%);
    width: min(100%, 145px);
  }
}
.p-home-message__crane-right {
  width: min(100%, 62px);
  margin: 0 auto;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  transform: translate(-80%, 100%);
  z-index: -1;
}
@media (max-width: 1360px) {
  .p-home-message__crane-right {
    right: 50%;
  }
}
@media (max-width: 600px) {
  .p-home-message__crane-right {
    width: min(100%, 42px);
    right: 10%;
  }
}
.p-home-message__title-eng {
  --viewport-from: 600;
  --viewport-to: 1200;
  --min-font-size: 42;
  --max-font-size: 100;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  color: rgba(210, 218, 224, 0.3);
  font-weight: 800;
  line-height: 1;
  text-align: left;
  letter-spacing: -0.02em;
  transform: rotate(-5deg);
  position: relative;
}
.p-home-message__title-eng *,
.p-home-message__title-eng *::before,
.p-home-message__title-eng *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
@media (max-width: 600px) {
  .p-home-message__title-eng {
    width: calc(100% + 60px);
    margin: 0 -30px;
  }
}
.p-home-message__title-eng span {
  margin-bottom: -10px;
}
.p-home-message__title-eng span.--right {
  text-align: right;
  display: block;
}
@media (max-width: 600px) {
  .p-home-message__title-eng span {
    margin: 0;
  }
  .p-home-message__title-eng span.--center {
    text-align: center;
    display: block;
  }
}
.p-home-message__title-eng::after {
  content: "";
  width: min(100%, 194px);
  aspect-ratio: 194/113;
  background: url(../images/home/deco_eyes.svg) no-repeat left top;
  background-size: 100% auto;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  transform: rotate(5deg);
  animation: animation steps(2) 5s infinite;
}
@media (max-width: 960px) {
  .p-home-message__title-eng::after {
    width: min(100%, 100px);
    margin-top: 30px;
    position: relative;
  }
}
@media (max-width: 600px) {
  .p-home-message__title-eng::after {
    width: min(100%, 85px);
    margin-top: 60px;
    position: relative;
  }
}
.p-home-message__title {
  margin-top: 30px;
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 2;
}
@media (max-width: 600px) {
  .p-home-message__title {
    margin-top: 20px;
  }
}
.p-home-message__title::before {
  content: "";
  width: min(100%, 430px);
  aspect-ratio: 215/119;
  background: url(../images/home/deco_msg.png) no-repeat center center/cover;
  transform: rotate(5deg) translateX(-15%);
  position: absolute;
  left: -70px;
  top: 0;
  transform: translateY(-65%);
}
@media (max-width: 960px) {
  .p-home-message__title::before {
    transform: translateY(-85%);
    left: -90px;
  }
}
@media (max-width: 600px) {
  .p-home-message__title::before {
    transform: translateY(calc(-85% - 60px));
    left: -90px;
  }
}
.p-home-message__title::after {
  content: "";
  width: 60px;
  aspect-ratio: 1/1;
  background: url(../images/home/deco_msg_car01.png) no-repeat center center/100% auto;
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(-100%, -50%);
}
@media (max-width: 960px) {
  .p-home-message__title::after {
    width: 50px;
  }
}
@media (max-width: 600px) {
  .p-home-message__title::after {
    transform: translate(0, -100%);
  }
}
.p-home-message__lead {
  --viewport-from: 960;
  --viewport-to: 1200;
  --min-font-size: 16;
  --max-font-size: 32;
  font-weight: 800;
  line-height: 1.7;
  text-align: center;
  margin-top: 40px;
  position: relative;
}
.p-home-message__lead *,
.p-home-message__lead *::before,
.p-home-message__lead *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
.p-home-message__lead::after {
  content: "";
  width: 60px;
  aspect-ratio: 1/1;
  background: url(../images/home/deco_msg_car02.png) no-repeat center center/100% auto;
  position: absolute;
  left: 0;
  bottom: 0;
  transform: translate(100%, -50%);
}
@media (max-width: 960px) {
  .p-home-message__lead::after {
    width: 50px;
  }
}
@media (max-width: 600px) {
  .p-home-message__lead::after {
    position: static;
    margin-top: 25px;
    display: block;
    transform: translate(0, 0);
  }
}
.p-home-message__slide {
  width: 100vw;
  margin: 90px calc(50% - 50vw) 0 calc(50% - 50vw);
  overflow: hidden;
}
@media (max-width: 600px) {
  .p-home-message__slide {
    margin-top: 40px;
  }
}
.p-home-message__slide-wrapper {
  min-width: 100%;
  display: flex;
  flex-wrap: nowrap;
  justify-content: unset;
  align-items: center;
  white-space: nowrap;
}
.p-home-message__slide-image {
  min-width: 403px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  padding-right: 20px;
  gap: 20px;
}
@media (max-width: 600px) {
  .p-home-message__slide-image {
    gap: 10px;
    padding-right: 10px;
    min-width: 180px;
  }
}
.p-home-message__slide-image.--w250 {
  min-width: 270px;
}
@media (max-width: 600px) {
  .p-home-message__slide-image.--w250 {
    min-width: 120px;
  }
}
.p-home-message__slide-image.--w220 {
  min-width: 240px;
}
@media (max-width: 600px) {
  .p-home-message__slide-image.--w220 {
    min-width: 107px;
  }
}
.p-home-message__slide-image.--w350 {
  min-width: 370px;
}
@media (max-width: 600px) {
  .p-home-message__slide-image.--w350 {
    min-width: 165px;
  }
}
.p-home-message__slide-image.--w420 {
  min-width: 440px;
}
@media (max-width: 600px) {
  .p-home-message__slide-image.--w420 {
    min-width: 195px;
  }
}
.p-home-message__img.--car01 {
  width: 160px;
  margin: 0 20px 0 auto;
}
.p-home-message__img.--car01 .is-active::before {
  background-image: url(../images/home/img_open01_back.jpg);
}
.p-home-message__img.--car01 .is-active::after {
  background-image: url(../images/home/img_open01_front.jpg);
}
@media (max-width: 600px) {
  .p-home-message__img.--car01 {
    width: 70px;
    margin: 0 10px 0 auto;
  }
}
.p-home-message__img.--car02 {
  width: 250px;
}
.p-home-message__img.--car02 .is-active::before {
  background-image: url(../images/home/img_open02_back.jpg);
}
.p-home-message__img.--car02 .is-active::after {
  background-image: url(../images/home/img_open02_front.jpg);
}
@media (max-width: 600px) {
  .p-home-message__img.--car02 {
    width: 110px;
  }
}
.p-home-message__img.--car03 {
  width: 383px;
}
.p-home-message__img.--car03 .is-active::before {
  background-image: url(../images/home/img_open03_back.jpg);
}
.p-home-message__img.--car03 .is-active::after {
  background-image: url(../images/home/img_open03_front.jpg);
}
@media (max-width: 600px) {
  .p-home-message__img.--car03 {
    width: 170px;
  }
}
.p-home-message__img.--car04 {
  width: 250px;
}
.p-home-message__img.--car04 .is-active::before {
  background-image: url(../images/home/img_open04_back.jpg);
}
.p-home-message__img.--car04 .is-active::after {
  background-image: url(../images/home/img_open04_front.jpg);
}
@media (max-width: 600px) {
  .p-home-message__img.--car04 {
    width: 110px;
  }
}
.p-home-message__img.--car05 {
  width: 200px;
  margin-left: 10px;
}
.p-home-message__img.--car05 .is-active::before {
  background-image: url(../images/home/img_open05_back.jpg);
}
.p-home-message__img.--car05 .is-active::after {
  background-image: url(../images/home/img_open05_front.jpg);
}
@media (max-width: 600px) {
  .p-home-message__img.--car05 {
    width: 90px;
  }
}
.p-home-message__img.--car06 {
  width: 180px;
  margin: 0 10px 0 auto;
}
.p-home-message__img.--car06 .is-active::before {
  background-image: url(../images/home/img_open06_back.jpg);
}
.p-home-message__img.--car06 .is-active::after {
  background-image: url(../images/home/img_open06_front.jpg);
}
@media (max-width: 600px) {
  .p-home-message__img.--car06 {
    width: 80px;
  }
}
.p-home-message__img.--car07 {
  width: 220px;
}
.p-home-message__img.--car07 .is-active::before {
  background-image: url(../images/home/img_open07_back.jpg);
}
.p-home-message__img.--car07 .is-active::after {
  background-image: url(../images/home/img_open07_front.jpg);
}
@media (max-width: 600px) {
  .p-home-message__img.--car07 {
    width: 97px;
  }
}
.p-home-message__img.--car08 {
  width: 350px;
}
.p-home-message__img.--car08 .is-active::before {
  background-image: url(../images/home/img_open08_back.jpg);
}
.p-home-message__img.--car08 .is-active::after {
  background-image: url(../images/home/img_open08_front.jpg);
}
@media (max-width: 600px) {
  .p-home-message__img.--car08 {
    width: 155px;
  }
}
.p-home-message__img.--car09 {
  width: 420px;
}
.p-home-message__img.--car09 .is-active::before {
  background-image: url(../images/home/img_open09_back.jpg);
}
.p-home-message__img.--car09 .is-active::after {
  background-image: url(../images/home/img_open09_front.jpg);
}
@media (max-width: 600px) {
  .p-home-message__img.--car09 {
    width: 185px;
  }
}
.p-home-message__img.--car10 {
  width: 160px;
  margin: 0 20px 0 auto;
}
.p-home-message__img.--car10 .is-active::before {
  background-image: url(../images/home/img_open10_back.jpg);
}
.p-home-message__img.--car10 .is-active::after {
  background-image: url(../images/home/img_open10_front.jpg);
}
@media (max-width: 600px) {
  .p-home-message__img.--car10 {
    width: 70px;
    margin: 0 10px 0 auto;
  }
}
.p-home-message__img.--car11 {
  width: 250px;
}
.p-home-message__img.--car11 .is-active::before {
  background-image: url(../images/home/img_open11_back.jpg);
}
.p-home-message__img.--car11 .is-active::after {
  background-image: url(../images/home/img_open11_front.jpg);
}
@media (max-width: 600px) {
  .p-home-message__img.--car11 {
    width: 110px;
  }
}
.p-home-message__img.--car12 {
  width: 383px;
}
.p-home-message__img.--car12 .is-active::before {
  background-image: url(../images/home/img_open12_back.jpg);
}
.p-home-message__img.--car12 .is-active::after {
  background-image: url(../images/home/img_open12_front.jpg);
}
@media (max-width: 600px) {
  .p-home-message__img.--car12 {
    width: 170px;
  }
}
.p-home-message__img.--car13 {
  width: 250px;
}
.p-home-message__img.--car13 .is-active::before {
  background-image: url(../images/home/img_open13_back.jpg);
}
.p-home-message__img.--car13 .is-active::after {
  background-image: url(../images/home/img_open13_front.jpg);
}
@media (max-width: 600px) {
  .p-home-message__img.--car13 {
    width: 110px;
  }
}
.p-home-message__img.--car14 {
  width: 200px;
  margin-left: 10px;
}
.p-home-message__img.--car14 .is-active::before {
  background-image: url(../images/home/img_open14_back.jpg);
}
.p-home-message__img.--car14 .is-active::after {
  background-image: url(../images/home/img_open14_front.jpg);
}
@media (max-width: 600px) {
  .p-home-message__img.--car14 {
    width: 90px;
  }
}
.p-home-message .is-active {
  animation: 0.3s linear rotation forwards;
}
.p-home-message .is-active::before {
  content: "";
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  z-index: 1;
  transform: scale(-1, 1);
  transition-delay: 0.2;
}
.p-home-message .is-active::after {
  content: "";
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  z-index: 1;
  animation: 0.2s linear fade forwards;
}
.p-home-message .js-change {
  position: relative;
  z-index: 0;
  animation: 0.3s linear retune forwards;
}
.p-home-message .js-change::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  border: 4px solid #111111;
  z-index: 1;
}
@media (max-width: 600px) {
  .p-home-message .js-change::before {
    border-width: 3px;
  }
}

@keyframes rotation {
  0% {
    transform: rotateY(0);
  }
  100% {
    transform: rotateY(180deg);
  }
}
@keyframes retune {
  0% {
    transform: rotateY(180deg);
  }
  100% {
    transform: rotateY(0);
  }
}
@keyframes fade {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.p-home-event {
  position: relative;
}
.p-home-event::before {
  content: "";
  width: 100vw;
  height: 100%;
  margin: 0 calc(50% - 50vw);
  background: linear-gradient(0deg, rgb(255, 232, 117) 0%, rgb(246, 202, 171) 50%, rgb(190, 222, 245) 100%);
  position: absolute;
  top: 0;
  z-index: -1;
}
.p-home-event::after {
  content: "";
  width: 100vw;
  height: 415px;
  margin: 0 calc(50% - 50vw);
  background: #EE8582;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
}
@media (max-width: 1200px) {
  .p-home-event::after {
    height: auto;
    aspect-ratio: 48/17;
  }
}
@media (max-width: 1200px) and (max-width: 600px) {
  .p-home-event::after {
    height: 10.6%;
    aspect-ratio: inherit;
  }
}

.p-home-showroom {
  padding: 90px 0 100px 0;
  position: relative;
}
@media (max-width: 600px) {
  .p-home-showroom {
    padding: 50px 0;
  }
}
.p-home-showroom::before {
  content: "";
  width: 100vw;
  height: 100%;
  margin: 0 calc(50% - 50vw);
  background: #111111;
  position: absolute;
  top: 0;
  z-index: -1;
}
.p-home-showroom__title {
  --viewport-from: 960;
  --viewport-to: 1200;
  --min-font-size: 32;
  --max-font-size: 48;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 800;
  color: #FFF;
  text-align: center;
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 0 5px;
}
.p-home-showroom__title *,
.p-home-showroom__title *::before,
.p-home-showroom__title *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
.p-home-showroom__title img {
  width: 1.5em;
}
.p-home-showroom__swiper {
  width: 100vw;
  margin: 55px calc(50% - 50vw) 0 calc(50% - 50vw);
  overflow: hidden;
}
@media (max-width: 600px) {
  .p-home-showroom__swiper {
    margin-top: 30px;
  }
}
.p-home-showroom__swiper-slide {
  transition: transform 0.7s;
  position: relative;
}
.p-home-showroom__swiper-slide::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #111111;
  mix-blend-mode: multiply;
  opacity: 0.6;
  position: absolute;
  top: 0;
  transition: transform 0.7s;
}
.p-home-showroom__swiper-slide img {
  width: 100%;
  height: auto;
}
.p-home-showroom .swiper-slide-active::before {
  display: none;
}
.p-home-showroom .swiper-slide-prev,
.p-home-showroom .swiper-slide-next,
.p-home-showroom .swiper-slide-duplicate-prev,
.p-home-showroom .swiper-slide-duplicate-next {
  transform: scale(0.85);
}
.p-home-showroom__pagination {
  color: #818181;
  letter-spacing: 0.05em;
  width: min(100%, 170px);
  margin: 30px auto 0 auto;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 0;
}
.p-home-showroom .swiper-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 15px;
  position: static;
}
.p-home-showroom .swiper-pagination-current {
  color: #FFF;
}
.p-home-showroom .swiper-pagination-total {
  color: #FFF;
}
.p-home-showroom .swiper-button-next {
  width: 26px;
  height: 12px;
  margin: auto;
  top: 0;
  bottom: 0;
  display: none;
}
.p-home-showroom .swiper-button-next::after {
  content: "";
  width: 26px;
  height: 12px;
  background: #FFF;
  -webkit-mask: url(../images/home/ic_arrow.svg) no-repeat center center/100% auto;
          mask: url(../images/home/ic_arrow.svg) no-repeat center center/100% auto;
  position: static;
}
.p-home-showroom .swiper-button-prev {
  width: 26px;
  height: 12px;
  margin: auto;
  top: 0;
  bottom: 0;
  display: none;
}
.p-home-showroom .swiper-button-prev::after {
  content: "";
  width: 26px;
  height: 12px;
  background: #FFF;
  -webkit-mask: url(../images/home/ic_arrow.svg) no-repeat center center/100% auto;
          mask: url(../images/home/ic_arrow.svg) no-repeat center center/100% auto;
  transform: scale(-1, 1);
  position: static;
}

.p-home-access {
  padding: 90px 0 100px 0;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 55px 0;
}
@media (max-width: 960px) {
  .p-home-access {
    justify-content: center;
  }
}
@media (max-width: 600px) {
  .p-home-access {
    padding: 50px 0;
    gap: 0;
  }
}
.p-home-access::before {
  content: "";
  width: 100vw;
  height: 100%;
  margin: 0 calc(50% - 50vw);
  background: #F4F5F7;
  position: absolute;
  top: 0;
  z-index: -1;
}
.p-home-access__title {
  --viewport-from: 960;
  --viewport-to: 1200;
  --min-font-size: 32;
  --max-font-size: 48;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 800;
  text-align: center;
  width: 100%;
}
.p-home-access__title *,
.p-home-access__title *::before,
.p-home-access__title *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
.p-home-access__info {
  width: min(44%, 500px);
}
@media (max-width: 960px) {
  .p-home-access__info {
    width: min(100%, 570px);
  }
}
@media (max-width: 600px) {
  .p-home-access__info {
    margin-top: 30px;
  }
}
.p-home-access__info-title {
  --viewport-from: 960;
  --viewport-to: 1200;
  --min-font-size: 20;
  --max-font-size: 32;
  font-weight: 800;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0 10px;
}
.p-home-access__info-title *,
.p-home-access__info-title *::before,
.p-home-access__info-title *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
.p-home-access__info-title img {
  width: min(37%, 170px);
}
.p-home-access__address {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.8;
  font-style: normal;
  margin-top: 20px;
}
@media (max-width: 600px) {
  .p-home-access__address {
    font-size: 16px;
  }
}
.p-home-access__details {
  font-weight: 500;
  margin-top: 30px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px 0;
}
@media (max-width: 600px) {
  .p-home-access__details {
    font-size: 14px;
  }
}
.p-home-access__term {
  width: min(100%, 120px);
  padding: 0 0 10px 0;
  position: relative;
}
@media (max-width: 600px) {
  .p-home-access__term {
    width: min(100%, 85px);
  }
}
.p-home-access__term::before {
  content: "";
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, rgb(24, 97, 86) 0%, rgb(24, 97, 86) 7px, rgb(165, 185, 57) 7px, rgb(165, 185, 57) 14px, rgb(247, 185, 40) 14px, rgb(247, 185, 40) 21px, rgb(226, 95, 62) 21px, rgb(226, 95, 62) 28px, rgb(0, 125, 181) 28px, rgb(0, 125, 181) 35px, rgb(115, 43, 110) 35px, rgb(115, 43, 110) 42px, rgb(17, 17, 17) 42px) no-repeat;
  position: absolute;
  bottom: 0;
}
.p-home-access__description {
  width: calc(100% - 120px);
  padding: 0 0 10px 0;
  position: relative;
}
@media (max-width: 600px) {
  .p-home-access__description {
    width: calc(100% - 85px);
  }
}
.p-home-access__description::before {
  content: "";
  width: 100%;
  height: 2px;
  background: #111111;
  position: absolute;
  bottom: 0;
}
.p-home-access__map {
  width: min(50%, 570px);
  aspect-ratio: 3/2;
  overflow: hidden;
}
@media (max-width: 960px) {
  .p-home-access__map {
    width: min(100%, 570px);
  }
}
@media (max-width: 600px) {
  .p-home-access__map {
    margin-top: 30px;
  }
}
.p-home-access__map iframe {
  width: 100%;
  height: 100%;
}

/*------------------------------------
  archiveページ
-------------------------------------*/
.p-news-archive {
  position: relative;
  padding: 12vw 0 12vw 0;
}
.p-news-archive::before {
  content: "";
  width: 100vw;
  height: 100%;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
  opacity: 0.5;
  background: url(../images/home/bg_msg.png) no-repeat center bottom -200px/1680px auto;
  background-color: #FFF;
}
.p-news-archive__inner {
  padding: 0 3vw;
}
@media (max-width: 600px) {
  .p-news-archive__inner {
    padding: 0;
  }
}
.p-news-archive__inner::before {
  content: "";
  width: min(100%, 278px);
  aspect-ratio: 1/1;
  background: #A5B939;
  position: absolute;
  left: 3%;
  top: 30%;
  transform: translateX(-90%);
  z-index: -1;
}
@media (max-width: 600px) {
  .p-news-archive__inner::before {
    width: 50%;
    left: 10%;
  }
}
.p-news-archive__inner::after {
  content: "";
  width: min(100%, 182px);
  aspect-ratio: 1/1;
  background: #732B6E;
  position: absolute;
  top: 40%;
  right: 6%;
  transform: translateX(154%);
  z-index: -1;
}
@media (max-width: 600px) {
  .p-news-archive__inner::after {
    top: auto;
    bottom: 30%;
    left: 20%;
    width: 40%;
  }
}
.p-news-archive__title {
  text-align: center;
  --viewport-from: 375;
  --viewport-to: 1440;
  --min-font-size: 24;
  --max-font-size: 56;
}
.p-news-archive__title *,
.p-news-archive__title *::before,
.p-news-archive__title *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
.p-news-archive__wrap {
  position: relative;
  padding: 12vw 5vw 12vw 5vw;
  background: #FFF;
}
.p-news-archive__wrap::before {
  content: "";
  position: absolute;
  bottom: 11%;
  right: -5%;
  display: block;
  aspect-ratio: 1/1;
  width: 10%;
  background: #CC3C18;
}
.p-news-archive__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: 32px;
       column-gap: 32px;
  row-gap: 96px;
  margin-top: 90px;
}
@media (max-width: 600px) {
  .p-news-archive__list {
    display: block;
    margin-top: 48px;
  }
}
@media (max-width: 600px) {
  .p-news-archive__list-item:not(:first-of-type) {
    margin-top: 16px;
  }
}
.p-news-archive__title-area {
  margin-top: 13px;
}
@media (max-width: 600px) {
  .p-news-archive__title-area {
    margin-top: 7px;
  }
}
.p-news-archive__link-date {
  display: flex;
  align-items: center;
  font-size: 13px;
  gap: 4px;
}
.p-news-archive__link-date::before {
  content: "";
  display: block;
  aspect-ratio: 1/1;
  width: 8px;
  background: #CC3C18;
}
.p-news-archive__link-title {
  margin-top: 8px;
}
.p-news-archive__pagination {
  text-align: center;
  margin-top: 100px;
}
@media (max-width: 600px) {
  .p-news-archive__pagination {
    margin-top: 40px;
  }
}

/*------------------------------------
  singleページ
-------------------------------------*/
.p-news-post {
  position: relative;
  padding: 6vw 0 12vw;
}
.p-news-post::before {
  content: "";
  width: 100vw;
  height: 100%;
  margin: 0 calc(50% - 50vw);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
  opacity: 0.5;
  background: url(../images/home/bg_msg.png) no-repeat center bottom -200px/1680px auto;
  background-color: #FFF;
}
.p-news-post__inner {
  padding: 0 5vw;
}
@media (max-width: 600px) {
  .p-news-post__inner {
    padding: 0;
  }
}
.p-news-post__wrap {
  padding: 12vw 5vw 12vw 5vw;
  background: #FFF;
}
@media (max-width: 600px) {
  .p-news-post__wrap {
    padding: 25vw 3vw 12vw 3vw;
  }
}
.p-news-post__head {
  padding-bottom: 25px;
  margin-bottom: 50px;
}
.p-news-post__head-title {
  position: relative;
  --viewport-from: 375;
  --viewport-to: 1440;
  --min-font-size: 24;
  --max-font-size: 50;
  font-weight: 700;
  line-height: 1.4;
  padding-bottom: 40px;
}
.p-news-post__head-title *,
.p-news-post__head-title *::before,
.p-news-post__head-title *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
@media (max-width: 600px) {
  .p-news-post__head-title {
    padding-bottom: 24px;
  }
}
.p-news-post__head-title::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 6px;
  background: linear-gradient(90deg, rgb(24, 97, 86) 0%, rgb(24, 97, 86) 22px, rgb(165, 185, 57) 22px, rgb(165, 185, 57) 44px, rgb(247, 185, 40) 44px, rgb(247, 185, 40) 66px, rgb(226, 95, 62) 66px, rgb(226, 95, 62) 88px, rgb(0, 125, 181) 88px, rgb(0, 125, 181) 110px, rgb(115, 43, 110) 110px, rgb(115, 43, 110) 132px, rgb(17, 17, 17) 132px) no-repeat;
  z-index: 1;
}
.p-news-post__head-details {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-top: 10px;
}
.p-news-post__head-date {
  display: flex;
  align-items: center;
  font-size: 13px;
  gap: 4px;
}
.p-news-post__head-date::before {
  content: "";
  display: block;
  aspect-ratio: 1/1;
  width: 8px;
  background: #CC3C18;
}
.p-news-post__head-category {
  display: flex;
  align-items: center;
  gap: 3px;
  --viewport-from: 375;
  --viewport-to: 1440;
  --min-font-size: 12;
  --max-font-size: 16;
  font-weight: 700;
  color: #111111;
}
.p-news-post__head-category *,
.p-news-post__head-category *::before,
.p-news-post__head-category *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
.p-news-post__head-category::before {
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
}
.p-news-post__button {
  margin-top: 50px;
  border-top: 4px solid #111111;
  padding-top: 50px;
}
@media (max-width: 600px) {
  .p-news-post__button {
    padding-top: 25px;
  }
}
.p-news-post__other-list {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.p-news-post__other-list-item {
  text-align: center;
  width: 33.3333333333%;
}
@media (max-width: 600px) {
  .p-news-post__other-list-item {
    width: auto;
  }
}
.p-news-post__other-list-item.--prev {
  text-align: left;
}
.p-news-post__other-list-item.--next {
  text-align: right;
}
.p-news-post__other-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  --viewport-from: 375;
  --viewport-to: 1440;
  --min-font-size: 14;
  --max-font-size: 16;
}
.p-news-post__other-link *,
.p-news-post__other-link *::before,
.p-news-post__other-link *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
.p-news-post__other-link.--prev::before {
  content: "";
  width: 7px;
  height: 11px;
  background: #111111;
  -webkit-clip-path: polygon(7px 50%, 0% 0%, 0% 11px);
          clip-path: polygon(7px 50%, 0% 0%, 0% 11px);
  transform: scale(-1, 1);
}
.p-news-post__other-link.--next::after {
  content: "";
  width: 7px;
  height: 11px;
  background: #111111;
  -webkit-clip-path: polygon(7px 50%, 0% 0%, 0% 11px);
          clip-path: polygon(7px 50%, 0% 0%, 0% 11px);
}
.p-news-post__other-title {
  --viewport-from: 375;
  --viewport-to: 1440;
  --min-font-size: 14;
  --max-font-size: 16;
}
.p-news-post__other-title *,
.p-news-post__other-title *::before,
.p-news-post__other-title *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
.p-news-post__back-button {
  text-align: center;
}
.p-news-post__link {
  display: inline-flex;
  border: 1px solid #111111;
  padding: 16px 30px;
  --viewport-from: 375;
  --viewport-to: 1440;
  --min-font-size: 14;
  --max-font-size: 16;
}
.p-news-post__link *,
.p-news-post__link *::before,
.p-news-post__link *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
@media (max-width: 600px) {
  .p-news-post__link {
    padding: 8px;
  }
}
.p-news-post__back-button-contents {
  position: relative;
}

.p-notfound-main {
  position: relative;
}
.p-notfound-main::after {
  content: "";
  width: 100vw;
  height: 6px;
  margin: 0 calc(50% - 50vw);
  background: linear-gradient(90deg, rgb(24, 97, 86) 0%, rgb(24, 97, 86) 22px, rgb(165, 185, 57) 22px, rgb(165, 185, 57) 44px, rgb(247, 185, 40) 44px, rgb(247, 185, 40) 66px, rgb(226, 95, 62) 66px, rgb(226, 95, 62) 88px, rgb(0, 125, 181) 88px, rgb(0, 125, 181) 110px, rgb(115, 43, 110) 110px, rgb(115, 43, 110) 132px, rgb(17, 17, 17) 132px) no-repeat;
  position: absolute;
  top: 0;
  z-index: 2;
}
.p-notfound-main__inner {
  padding: 150px 25px 200px 25px;
  background: url(../images/home/bg_msg.png) no-repeat center bottom -200px/1680px auto;
  background-color: #FFF;
}
@media (max-width: 600px) {
  .p-notfound-main__inner {
    padding: 80px 30px 200px 30px;
  }
}
.p-notfound-main__inner::after {
  content: "";
  width: 107px;
  aspect-ratio: 1/1;
  background: #CC3C18;
  position: absolute;
  top: 85px;
  right: 19%;
  z-index: 0;
}
@media (max-width: 600px) {
  .p-notfound-main__inner::after {
    width: 70px;
    top: 30px;
  }
}
.p-notfound-main__title-eng {
  --viewport-from: 600;
  --viewport-to: 1200;
  --min-font-size: 42;
  --max-font-size: 100;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  color: rgba(210, 218, 224, 0.3);
  font-weight: 800;
  line-height: 1;
  text-align: center;
  letter-spacing: -0.02em;
  transform: rotate(-5deg);
  position: relative;
}
.p-notfound-main__title-eng *,
.p-notfound-main__title-eng *::before,
.p-notfound-main__title-eng *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
@media (max-width: 600px) {
  .p-notfound-main__title-eng {
    width: calc(100% + 60px);
    margin: 0 -30px;
  }
}
.p-notfound-main__title-eng span {
  margin-bottom: -10px;
}
.p-notfound-main__title-eng::after {
  content: "";
  width: min(100%, 194px);
  aspect-ratio: 194/113;
  background: url(../images/home/deco_eyes.svg) no-repeat left top;
  background-size: 100% auto;
  display: block;
  margin: -40px auto 0 auto;
  transform: rotate(5deg);
  animation: animation steps(2) 5s infinite;
}
@media (max-width: 960px) {
  .p-notfound-main__title-eng::after {
    width: min(100%, 100px);
  }
}
@media (max-width: 600px) {
  .p-notfound-main__title-eng::after {
    width: min(100%, 85px);
  }
}
.p-notfound-main__heading {
  --viewport-from: 960;
  --viewport-to: 1200;
  --min-font-size: 30;
  --max-font-size: 50;
  font-weight: 700;
  line-height: 1.3;
  color: #CB0211;
  text-align: center;
  margin-top: 40px;
}
.p-notfound-main__heading *,
.p-notfound-main__heading *::before,
.p-notfound-main__heading *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
.p-notfound-main__text {
  --viewport-from: 960;
  --viewport-to: 1200;
  --min-font-size: 16;
  --max-font-size: 20;
  text-align: center;
  margin-top: 40px;
}
.p-notfound-main__text *,
.p-notfound-main__text *::before,
.p-notfound-main__text *::after {
  --viewport-unit-converter: 1vw;
  --fz-from: var(--font-size-from, var(--min-font-size));
  --fz-to: var(--font-size-to, var(--max-font-size));
  --fz-slope: (var(--fz-to) - var(--fz-from)) / (var(--viewport-to) - var(--viewport-from)) * 100;
  --fz-intercept: (var(--viewport-to) * var(--fz-from) - var(--viewport-from) * var(--fz-to)) / (var(--viewport-to) - var(--viewport-from));
  --font-size: calc(var(--fz-slope) * var(--viewport-unit-converter) + var(--fz-intercept) * 1px);
  --min-fz-px: calc(var(--min-font-size) * 1px);
  --max-fz-px: calc(var(--max-font-size) * 1px);
  --clamp: clamp(var(--min-fz-px), var(--font-size), var(--max-fz-px));
  --max: var(--has-max, var(--min));
  --min: var(--has-min, var(--font-size));
  --has-max: min(var(--max-fz-px), var(--font-size));
  --has-min: max(var(--min-fz-px), var(--font-size));
  font-size: var(--clamp, var(--max));
}
.p-notfound-main__cube-left {
  width: min(100%, 270px);
  aspect-ratio: 1/1;
  position: absolute;
  top: 180px;
  left: 0;
  transform: translateX(-77%);
  z-index: 2;
}
.p-notfound-main__cube-left::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #F7B928;
  position: absolute;
  top: 0;
  left: 0;
}
@media (max-width: 600px) {
  .p-notfound-main__cube-left {
    width: min(100%, 145px);
  }
}
.p-notfound-main__cube-right {
  width: min(100%, 285px);
  aspect-ratio: 1/1;
  position: absolute;
  top: 390px;
  right: 0;
  transform: translateX(91%);
  z-index: 2;
}
.p-notfound-main__cube-right::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #A5B939;
  position: absolute;
  top: 0;
  left: 0;
}
@media (max-width: 600px) {
  .p-notfound-main__cube-right {
    transform: translateX(80%);
    width: min(100%, 145px);
  }
}
.p-notfound-main__button {
  margin: 50px auto 0 auto;
  width: min(100%, 250px);
}
.p-notfound-main__link {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 800;
  letter-spacing: 0.01em;
  width: 100%;
  padding-bottom: 10px;
  border-bottom: 4px solid #111111;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 600px) {
  .p-notfound-main__link {
    width: 100%;
  }
}
.p-notfound-main__link::after {
  content: "";
  width: 7px;
  height: 11px;
  background: #111111;
  -webkit-clip-path: polygon(7px 50%, 0% 0%, 0% 11px);
          clip-path: polygon(7px 50%, 0% 0%, 0% 11px);
}

.u-mt0 {
  margin-top: 0px;
}

.u-mt5 {
  margin-top: 5px;
}

.u-mt10 {
  margin-top: 10px;
}

.u-mt15 {
  margin-top: 15px;
}

.u-mt20 {
  margin-top: 20px;
}

.u-mt25 {
  margin-top: 25px;
}

.u-mt30 {
  margin-top: 30px;
}

.u-mt35 {
  margin-top: 35px;
}

.u-mt40 {
  margin-top: 40px;
}

.u-mt45 {
  margin-top: 45px;
}

.u-mt50 {
  margin-top: 50px;
}

.u-mt55 {
  margin-top: 55px;
}

.u-mt60 {
  margin-top: 60px;
}

.u-mt65 {
  margin-top: 65px;
}

.u-mt70 {
  margin-top: 70px;
}

.u-mt75 {
  margin-top: 75px;
}

.u-mt80 {
  margin-top: 80px;
}

.u-mt85 {
  margin-top: 85px;
}

.u-mt90 {
  margin-top: 90px;
}

.u-mt95 {
  margin-top: 95px;
}

.u-mt100 {
  margin-top: 100px;
}

.u-mt105 {
  margin-top: 105px;
}

.u-mt110 {
  margin-top: 110px;
}

.u-mt115 {
  margin-top: 115px;
}

.u-mt120 {
  margin-top: 120px;
}

.u-mt125 {
  margin-top: 125px;
}

.u-mt130 {
  margin-top: 130px;
}

.u-mt135 {
  margin-top: 135px;
}

.u-mt140 {
  margin-top: 140px;
}

.u-mt145 {
  margin-top: 145px;
}

.u-mt150 {
  margin-top: 150px;
}

@media (max-width: 600px) {
  .u-mt-sp0 {
    margin-top: 0px;
  }
  .u-mt-sp5 {
    margin-top: 5px;
  }
  .u-mt-sp10 {
    margin-top: 10px;
  }
  .u-mt-sp15 {
    margin-top: 15px;
  }
  .u-mt-sp20 {
    margin-top: 20px;
  }
  .u-mt-sp25 {
    margin-top: 25px;
  }
  .u-mt-sp30 {
    margin-top: 30px;
  }
  .u-mt-sp35 {
    margin-top: 35px;
  }
  .u-mt-sp40 {
    margin-top: 40px;
  }
  .u-mt-sp45 {
    margin-top: 45px;
  }
  .u-mt-sp50 {
    margin-top: 50px;
  }
  .u-mt-sp55 {
    margin-top: 55px;
  }
  .u-mt-sp60 {
    margin-top: 60px;
  }
  .u-mt-sp65 {
    margin-top: 65px;
  }
  .u-mt-sp70 {
    margin-top: 70px;
  }
  .u-mt-sp75 {
    margin-top: 75px;
  }
  .u-mt-sp80 {
    margin-top: 80px;
  }
  .u-mt-sp85 {
    margin-top: 85px;
  }
  .u-mt-sp90 {
    margin-top: 90px;
  }
  .u-mt-sp95 {
    margin-top: 95px;
  }
  .u-mt-sp100 {
    margin-top: 100px;
  }
  .u-mt-sp105 {
    margin-top: 105px;
  }
  .u-mt-sp110 {
    margin-top: 110px;
  }
  .u-mt-sp115 {
    margin-top: 115px;
  }
  .u-mt-sp120 {
    margin-top: 120px;
  }
  .u-mt-sp125 {
    margin-top: 125px;
  }
  .u-mt-sp130 {
    margin-top: 130px;
  }
  .u-mt-sp135 {
    margin-top: 135px;
  }
  .u-mt-sp140 {
    margin-top: 140px;
  }
  .u-mt-sp145 {
    margin-top: 145px;
  }
  .u-mt-sp150 {
    margin-top: 150px;
  }
}
.u-dn-tab-min {
  display: none;
}
@media (max-width: 960px) {
  .u-dn-tab-min {
    display: block;
  }
}

.u-dn-sp-min {
  display: none;
}
@media (max-width: 600px) {
  .u-dn-sp-min {
    display: block;
  }
}

@media (max-width: 600px) {
  .u-dn-sp-max {
    display: none;
  }
}/*# sourceMappingURL=style.css.map */