@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Yuji+Syuku&display=swap");
/*
    A (more) Modern CSS Reset
    https://piccalil.li/blog/a-more-modern-css-reset/
    @since 25/02/05
*/
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  -ms-text-size-adjust: none;
      text-size-adjust: none;
}

body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

ul[role=list],
ol[role=list] {
  list-style: none;
}

body {
  line-height: 1.5;
  min-height: 100dvh;
}

h1,
h2,
h3,
h4,
button,
input,
label {
  line-height: 1.1;
}

h1,
h2,
h3,
h4 {
  text-wrap: balance;
}

a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
  color: currentColor;
}

img,
picture,
svg {
  display: block;
  max-width: 100%;
}

input,
button,
textarea,
select {
  font: inherit;
}

textarea:not([rows]) {
  min-height: 10em;
}

:target {
  scroll-margin-block: 2.5ex;
}

:root {
  --base-font-family: Zen Kaku Gothic Antique, sans-serif; /* メインフォント */
  --page-header-after: 150px; /* ページヘッダー - 後 */
  --gutter: clamp(40px, 12.5vw, 200px); /* コンテンツガイド */
  --gutter-sm: clamp(40px, 5vw, 80px); /* コンテンツガイド(sm) */
  --gutter-lg: clamp(40px, 19.6875vw, 315px); /* コンテンツガイド(lg) */
  --contents-spacer: 130px; /* コンテンツ間隔 */
  --fix-header-height: 80px;
}
@media screen and (width <= 768px) {
  :root {
    --page-header-after: 40px; /* ページヘッダー - 後 */
    --gutter: clamp(10px, 5.3333333333vw, 40px); /* コンテンツガイド */
    --gutter-sm: clamp(10px, 5.3333333333vw, 40px); /* コンテンツガイド(sm) */
    --gutter-lg: clamp(10px, 5.3333333333vw, 40px); /* コンテンツガイド(lg) */
    --contents-spacer: 80px; /* コンテンツ間隔 */
  }
}
@media screen and (width > 1024px) {
  :root {
    --fix-header-height: 80px;
  }
}

:target {
  scroll-margin-block: 0;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: var(--fix-header-height);
}

body {
  font-size: 1rem;
  font-weight: 500;
  -webkit-font-smoothing: antialiased;
  line-height: 1.8;
  color: #2d282a;
  font-family: var(--base-font-family), sans-serif;
  background-color: #ffffff;
}
@media screen and (width <= 768px) {
  body {
    font-size: 0.875rem;
  }
}
body.js-fix {
  overflow: hidden;
}

h1,
h2,
h3,
h4,
button,
input,
label {
  line-height: 1.75;
}

h1,
h2,
h3,
h4 {
  text-wrap: wrap;
}

:where(.js-tab-container) {
  display: grid;
}
:where(.js-tab-container) .js-tab-buttons {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
:where(.js-tab-container) .js-tab-button {
  margin: 0;
  padding: 0;
  cursor: pointer;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
}
:where(.js-tab-container) .js-tab-contents {
  position: relative;
  display: grid;
  grid-template-areas: "tab-content";
}
:where(.js-tab-container) .js-tab-content {
  z-index: 0;
  display: grid;
  visibility: hidden;
  grid-template-rows: 0fr;
  grid-area: tab-content;
  opacity: 0;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: visibility, opacity, z-index, grid-template-rows;
  transition-property: visibility, opacity, z-index, grid-template-rows;
  transition-property: visibility, opacity, z-index, grid-template-rows, -ms-grid-rows;
}
:where(.js-tab-container) .js-tab-content.is-active {
  z-index: 1;
  visibility: visible;
  grid-template-rows: 1fr;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
  opacity: 1;
}
:where(.js-tab-container) .js-tab-content[aria-hidden=true] {
  display: none;
}
:where(.js-tab-container) .js-tab-content-inn {
  overflow: hidden;
}

.js-tab-container.tab-theme-default {
  gap: 8px;
}
.js-tab-container.tab-theme-default .js-tab-buttons {
  gap: 8px;
}
.js-tab-container.tab-theme-default .js-tab-button {
  font-size: 0.875rem;
  padding: 8px 16px;
  color: #333333;
  border-radius: 20px;
  background-color: #f0f0f0;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-property: background-color, color, opacity;
  transition-property: background-color, color, opacity;
}
.js-tab-container.tab-theme-default .js-tab-button:hover {
  opacity: 0.9;
}
.js-tab-container.tab-theme-default .js-tab-button.is-active {
  color: #ffffff;
  background-color: #004b8d;
}
.js-tab-container.tab-theme-default .js-tab-button:focus {
  outline: 2px solid rgba(0, 75, 141, 0.5);
  outline-offset: 2px;
}
.js-tab-container.tab-theme-default .js-tab-button:focus:not(:focus-visible) {
  outline: none;
}
.js-tab-container.tab-theme-default .js-tab-contents {
  padding: 8px;
}

.js-scroll-fade-up-trr {
  opacity: 0;
  -webkit-transform: translateY(20px);
          transform: translateY(20px);
  -webkit-transition: opacity 0.6s ease-out, -webkit-transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, -webkit-transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, transform 0.6s ease-out, -webkit-transform 0.6s ease-out;
}

.is-visible {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.c-breadcrumb {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  row-gap: 4px;
  width: 100%;
  margin: 0;
  padding: 0;
  -webkit-column-gap: 8px;
     -moz-column-gap: 8px;
          column-gap: 8px;
}
.c-breadcrumb__item {
  font-size: clamp(0.75rem, 0.71875rem + 0.15625vw, 0.875rem);
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  line-height: 1.75em;
  color: var(--breadcrumb-color, #0b7ace);
  font-weight: 600;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
}
.c-breadcrumb__item > a {
  text-decoration: underline;
  text-underline-offset: 0.15em;
}
.c-breadcrumb__item::after {
  display: inline-block;
  content: "／";
  pointer-events: none;
  color: var(--breadcrumb-bullet-color, var(--breadcrumb-color));
}
.c-breadcrumb__item:last-of-type {
  -webkit-line-clamp: 1;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-flex: unset;
  -webkit-flex: unset;
      -ms-flex: unset;
          flex: unset;
  -webkit-box-orient: vertical;
  text-decoration: none;
}
.c-breadcrumb__item:last-of-type::after {
  display: none;
}

.c-btn-with-arrow {
  --btn-main-color: #4ed3e2;
  --btn-sub-color: #ffffff;
  --icon-size: max(21px, 1.285em);
  --circle-fill-color: var(--btn-sub-color);
  --circle-fill-color-hover: var(--btn-main-color);
  --arrow-fill-color: var(--btn-main-color);
  --arrow-fill-color-hover: var(--btn-sub-color);
  --icn-trans-dur: 0.3s;
  --icn-trans-easing: ease-out;
  font-weight: 500;
  display: grid;
  -webkit-box-pack: start;
  -webkit-justify-content: start;
      -ms-flex-pack: start;
          justify-content: start;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  grid-template-columns: 1fr auto;
  width: 100%;
  padding: 1.4285em 0.89285em;
  -webkit-transition: all var(--icn-trans-dur) var(--icn-trans-easing);
  transition: all var(--icn-trans-dur) var(--icn-trans-easing);
  text-align: center;
  text-decoration: none;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  color: var(--btn-sub-color);
  border: 2px solid var(--btn-main-color);
  border-radius: 100vmax;
  background-color: var(--btn-main-color);
  line-height: 1;
}
@media screen and (width <= 768px) {
  .c-btn-with-arrow {
    padding-block: 0.89em;
  }
}
.c-btn-with-arrow:focus-visible {
  --circle-fill-color: var(--circle-fill-color-hover);
  --arrow-fill-color: var(--arrow-fill-color-hover);
  color: var(--circle-fill-color-hover);
  background-color: var(--arrow-fill-color-hover);
}
@media (any-hover: hover) {
  .c-btn-with-arrow:hover {
    --circle-fill-color: var(--circle-fill-color-hover);
    --arrow-fill-color: var(--arrow-fill-color-hover);
    color: var(--circle-fill-color-hover);
    background-color: var(--arrow-fill-color-hover);
  }
}
[data-hover-trigger=btn-with-arrow]:focus-visible .c-btn-with-arrow {
  --circle-fill-color: var(--circle-fill-color-hover);
  --arrow-fill-color: var(--arrow-fill-color-hover);
  color: var(--circle-fill-color-hover);
  background-color: var(--arrow-fill-color-hover);
}
@media (any-hover: hover) {
  [data-hover-trigger=btn-with-arrow]:hover .c-btn-with-arrow {
    --circle-fill-color: var(--circle-fill-color-hover);
    --arrow-fill-color: var(--arrow-fill-color-hover);
    color: var(--circle-fill-color-hover);
    background-color: var(--arrow-fill-color-hover);
  }
}
.c-btn-with-arrow--darken {
  --btn-main-color: #0b7ace;
}
.c-btn-with-arrow--stroke {
  --circle-fill-color: var(--btn-main-color);
  --circle-fill-color-hover: var(--btn-sub-color);
  --arrow-fill-color: var(--btn-sub-color);
  --arrow-fill-color-hover: var(--btn-main-color);
  color: currentColor;
  border-color: var(--btn-main-color);
  background-color: var(--btn-sub-color);
}
.c-btn-with-arrow__icon {
  display: block;
  width: var(--icon-size);
  height: var(--icon-size);
}
.c-btn-with-arrow__icon > svg {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
.c-btn-with-arrow--back .c-btn-with-arrow__icon {
  scale: -1 1;
}

.c-heading {
  font-size: clamp(24px, 19.1020408163px + 1.306122449vw, 40px);
  font-weight: 700;
  color: #2d282a;
  -webkit-padding-after: calc(0.15em - (1lh - 1em) * 0.5);
          padding-block-end: calc(0.15em - (1lh - 1em) * 0.5);
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-bottom: 1px solid #e72c3c;
}
@media screen and (width <= 374px) {
  .c-heading {
    font-size: clamp(22px, 10.3636363636px + 3.6363636364vw, 24px);
  }
}

.c-message {
  font-size: clamp(0.875rem, 0.8367346939rem + 0.1632653061vw, 1rem);
  font-weight: 500;
  -webkit-font-smoothing: antialiased;
  line-height: 1.75em;
  color: #2d282a;
  display: block;
  grid-column: 1/-1;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.c-pagination {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.c-pagination__cards {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: clamp(0.875rem, 0.8367346939rem + 0.1632653061vw, 1rem);
     -moz-column-gap: clamp(0.875rem, 0.8367346939rem + 0.1632653061vw, 1rem);
          column-gap: clamp(0.875rem, 0.8367346939rem + 0.1632653061vw, 1rem);
}
.c-pagination__card {
  --pagination-card-width: clamp(30px, 26.9387755102px + 0.8163265306vw, 40px);
  --pagination-card-ratio: calc(4 / 4.5);
  font-size: clamp(12px, 10.7755102041px + 0.3265306122vw, 16px);
  font-weight: 500;
  -webkit-font-smoothing: antialiased;
  line-height: 1em;
  color: #0b7ace;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  min-width: var(--pagination-card-width);
  height: calc(var(--pagination-card-width) / var(--pagination-card-ratio));
  padding: 0.25em;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  text-decoration: none;
  border: 1px solid #0b7ace;
  border-radius: calc(var(--pagination-card-width) * 0.1);
  background-color: #ffffff;
}
.c-pagination__card:focus-visible {
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  color: #ffffff;
  background-color: rgb(25.267281106, 149.0552995392, 242.732718894);
}
@media (any-hover: hover) {
  .c-pagination__card:hover {
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    color: #ffffff;
    background-color: rgb(25.267281106, 149.0552995392, 242.732718894);
  }
}
.c-pagination__card.is-active {
  pointer-events: none;
  color: #ffffff;
  border-color: #0b7ace;
  background-color: #0b7ace;
}
.c-pagination__dot {
  font-size: 16px;
  font-weight: 500;
  -webkit-font-smoothing: antialiased;
  line-height: 1.75em;
  color: #0b7ace;
}
.c-pagination--inverted .c-pagination__card {
  color: #ffffff;
  border-color: #ffffff;
  background-color: #0b7ace;
}
.c-pagination--inverted .c-pagination__card:focus-visible {
  color: #0b7ace;
  background-color: rgb(229.5, 229.5, 229.5);
}
@media (any-hover: hover) {
  .c-pagination--inverted .c-pagination__card:hover {
    color: #0b7ace;
    background-color: rgb(229.5, 229.5, 229.5);
  }
}
.c-pagination--inverted .c-pagination__card.is-active {
  color: #0b7ace;
  border-color: #ffffff;
  background-color: #ffffff;
}
.c-pagination--inverted .c-pagination__dot {
  color: #ffffff;
}

.c-term {
  font-size: 1em;
  font-weight: 500;
  line-height: 1.1;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.35em 0.92em 0.5em;
  color: #0b7ace;
  border: 1px solid #0b7ace;
  border-radius: 100vmax;
}

.c-link-btn {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
  padding: 30px 60px 30px 30px;
  min-width: 250px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  border: 1px #2d282a solid;
  color: #ffffff;
  background-color: #2d282a;
  border-radius: 100vh;
  min-width: 250px;
  text-decoration: none;
}
@media screen and (width > 768px) {
  .c-link-btn:hover {
    background-color: #ffffff;
    color: #2d282a;
  }
  .c-link-btn:hover::before {
    background-color: #2d282a;
  }
}
.c-link-btn::before, .c-link-btn::after {
  content: "";
  display: block;
  top: 50%;
  right: 45px;
  position: absolute;
  aspect-ratio: 1/1;
}
.c-link-btn::before {
  width: 30px;
  background-color: #ffffff;
  -webkit-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
  border-radius: 50%;
}
.c-link-btn::after {
  width: 15px;
  background-color: inherit;
  -webkit-mask-image: url("./../images/icon/icon-arrow.svg");
          mask-image: url("./../images/icon/icon-arrow.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-transform: translate(50%, -50%) rotate(90deg);
          transform: translate(50%, -50%) rotate(90deg);
}
.c-link-btn--white {
  color: #2d282a;
  border-color: #ffffff;
  background-color: #ffffff;
}
@media screen and (width > 768px) {
  .c-link-btn--white:hover {
    background-color: #2d282a;
    color: #ffffff;
  }
  .c-link-btn--white:hover::before {
    background-color: #ffffff;
  }
}
.c-link-btn--white::before {
  background-color: #2d282a;
}

.c-people {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 20px;
  text-decoration: none;
  color: #2d282a;
  border-radius: 18px;
  background-color: #ffffff;
  -webkit-box-shadow: rgba(115, 188, 230, 0.12) 0 0 20px;
          box-shadow: rgba(115, 188, 230, 0.12) 0 0 20px;
}
@media screen and (width > 768px) {
  .c-people {
    padding: 35px;
  }
}
.c-people:focus-visible:before {
  background-color: #0b7ace;
}
@media (any-hover: hover) {
  .c-people:hover:before {
    background-color: #0b7ace;
  }
}
.c-people::before {
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  width: 70px;
  height: 60px;
  content: "";
  border-radius: 18px 0 0 0;
  background-color: #73bce6;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.c-people::after {
  position: absolute;
  right: 35px;
  bottom: 30px;
  display: block;
  width: 20px;
  aspect-ratio: 1/1;
  content: "";
  -webkit-transform: translate(50%, 50%) rotate(90deg);
          transform: translate(50%, 50%) rotate(90deg);
  background-color: #ffffff;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-image: url("./../images/icon/icon-arrow.svg");
          mask-image: url("./../images/icon/icon-arrow.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}
.c-people__title {
  font-size: 1.25em;
  font-weight: 700;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.c-people:focus-visible .c-people__title {
  color: #0b7ace;
}
@media (any-hover: hover) {
  .c-people:hover .c-people__title {
    color: #0b7ace;
  }
}
.c-people__meta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.c-people__img {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.c-people__img img {
  display: block;
  width: 90px;
}

.c-contact-step {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 60px;
  margin: 0 0 50px;
}
@media screen and (width > 768px) {
  .c-contact-step {
    margin: 0 0 100px;
  }
}
.c-contact-step__item {
  display: block;
  position: relative;
}
.c-contact-step__item:not(:last-child)::before {
  content: "";
  display: block;
  position: absolute;
  border-top: 1px #0b7ace solid;
  top: 20px;
  right: -30px;
  -webkit-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
  width: 40px;
}
@media screen and (width > 768px) {
  .c-contact-step__item:not(:last-child)::before {
    top: 32px;
  }
}
.c-contact-step__num {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 50%;
  border: 1px #0b7ace solid;
  aspect-ratio: 1/1;
  width: 40px;
  font-size: 20px;
  color: #0b7ace;
}
@media screen and (width > 768px) {
  .c-contact-step__num {
    font-size: 28px;
    width: 64px;
  }
}
.c-contact-step__item--active .c-contact-step__num {
  background-color: #0b7ace;
  color: #ffffff;
}
.c-contact-step__name {
  display: block;
  text-align: center;
}

.l-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: var(--fix-header-height);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 15px;
  z-index: 1000;
  font-weight: 500;
}
@media screen and (width > 1280px) {
  .l-header {
    padding: 15px 50px;
  }
}
.l-header::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(transparent));
  background: -webkit-linear-gradient(top, #ffffff, transparent);
  background: linear-gradient(to bottom, #ffffff, transparent);
}
.l-header__logo {
  display: block;
}
.l-header-logo {
  display: block;
}
.l-header-logo__img {
  display: block;
  max-height: calc(var(--fix-header-height) - 30px);
}
.l-header__content {
  display: none;
}
@media screen and (width > 1280px) {
  .l-header__content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: clamp(24px, 19.1020408163px + 1.306122449vw, 40px);
  }
}
.l-header__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  list-style: none;
  gap: 10px;
  padding-left: 0;
}
@media screen and (width > 1280px) {
  .l-header__list {
    gap: 40px;
  }
}
.l-header__list a {
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.l-header__list a:hover {
  opacity: 0.7;
}
.l-header__btns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
}
.l-header__btn {
  display: block;
  padding: 10px;
  border-radius: 100vh;
  color: #ffffff;
  min-width: 130px;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  text-decoration: none;
}
.l-header__btn:hover {
  opacity: 0.7;
}
.l-header__btn--light {
  background-color: #4ed3e2;
}
.l-header__btn--dark {
  background-color: #0b7ace;
}
.l-header__toggle {
  display: block;
  position: absolute;
  top: 50%;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #2d282a;
  width: 44px;
  right: 44px;
  -webkit-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
  cursor: pointer;
}
@media screen and (width > 1280px) {
  .l-header__toggle {
    display: none;
  }
}
.l-header__toggle::before, .l-header__toggle::after {
  content: "";
  display: block;
  width: 50%;
  border-top: 1px #ffffff solid;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.l-header__toggle::before {
  -webkit-transform: translate(-50%, -50%) translateY(-3px);
          transform: translate(-50%, -50%) translateY(-3px);
}
.l-header__toggle::after {
  -webkit-transform: translate(-50%, -50%) translateY(3px);
          transform: translate(-50%, -50%) translateY(3px);
}
.l-header__toggle.js-open::before {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}
.l-header__toggle.js-open::after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}

.l-burger-input {
  display: none;
}
.l-burger-input:checked + .l-burger-bg {
  opacity: 0.7;
  visibility: visible;
}
.l-burger-input:checked ~ .l-burger-base {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translate(-100%, 0);
          transform: translate(-100%, 0);
}
.l-burger-bg {
  position: fixed;
  width: 100%;
  height: 100vh;
  background-color: #2d282a;
  top: 0;
  left: 0;
  z-index: 500;
  visibility: hidden;
  opacity: 0;
}
@media screen and (width > 1280px) {
  .l-burger-bg {
    display: none;
  }
}
.l-burger-base {
  position: fixed;
  width: 100%;
  height: 100vh;
  background-color: #ffffff;
  top: 0;
  left: 100%;
  z-index: 500;
  visibility: hidden;
  opacity: 0;
  max-width: 500px;
  overflow: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (width > 1280px) {
  .l-burger-base {
    display: none;
  }
}
.l-burger-base * {
  color: inherit;
}
.l-burger-base__content {
  padding: 100px 5% 150px;
}
.l-burger-base__lang {
  text-align: right;
}
.l-burger-menu {
  padding: 20px 0 0;
  list-style: none;
}
.l-burger-menu__item {
  padding: 10px 0 0;
}
.l-burger-menu__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 10px 0;
  text-decoration: none;
  color: #0b7ace;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5em;
  font-weight: 700;
}
.l-burger-menu__link::after {
  content: "";
  display: block;
  width: 1em;
  aspect-ratio: 1/1;
  background-color: #0b7ace;
  -webkit-mask-image: url("./../images/icon/icon-arrow.svg");
          mask-image: url("./../images/icon/icon-arrow.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.l-burger__btns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 2em 0 0;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 1em;
}
.l-burger__btn {
  display: block;
  padding: 10px;
  border-radius: 100vh;
  color: #ffffff;
  min-width: 130px;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  text-decoration: none;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.l-burger__btn:hover {
  opacity: 0.7;
}
.l-burger__btn--light {
  background-color: #4ed3e2;
}
.l-burger__btn--dark {
  background-color: #0b7ace;
}

.l-cta-contact {
  position: relative;
  overflow: clip;
  width: calc(100% - var(--gutter, 0px) * 0.5);
  -webkit-margin-start: calc(var(--gutter, 0px) * 0.5);
          margin-inline-start: calc(var(--gutter, 0px) * 0.5);
  padding-inline: calc(var(--gutter, 0px) * 0.5) var(--gutter, 0px);
  background-color: #1c2c43;
  border-radius: 100vmax 0 0 100vmax;
  -webkit-margin-before: var(--contents-spacer, 0px);
          margin-block-start: var(--contents-spacer, 0px);
}
@media screen and (width <= 576px) {
  .l-cta-contact {
    border-radius: 8em 0 0 8em;
  }
}
.l-cta-contact::before {
  position: absolute;
  content: "";
  display: block;
  aspect-ratio: 1;
  height: 100%;
  max-width: 50%;
  background: url("../images/logo_watermark_01.svg") center bottom/contain no-repeat;
  right: 0;
  bottom: 0;
  translate: 7.73% 7.73%;
}
.l-cta-contact__inner {
  overflow-x: clip;
  width: min(100%, 1360px);
  margin: 0 auto;
  padding-block: clamp(100px, 84.693877551px + 4.0816326531vw, 150px);
  display: grid;
  row-gap: clamp(28px, 19.4285714286px + 2.2857142857vw, 56px);
}
.l-cta-contact__head, .l-cta-contact__body {
  position: relative;
  z-index: 10;
}
.l-cta-contact__body {
  container-type: inline-size;
}
.l-cta-contact__heading {
  margin-inline: auto;
  color: #ffffff;
}
.l-cta-contact__buttons {
  width: min(100%, 855px);
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px clamp(28px, 2.1538461538px + 3.3653846154vw, 56px);
}
@container (width < 720px) {
  .l-cta-contact__buttons {
    width: min(90%, 400px);
    grid-template-columns: minmax(0, 1fr);
  }
}
.l-cta-contact__button {
  width: 100%;
  font-size: 1.75em;
}

.l-footer {
  background-color: #1c2c43;
  border-top-left-radius: 30px;
  padding: 30px 0 20px;
  color: #ffffff;
}
@media screen and (width > 768px) {
  .l-footer {
    border-top-left-radius: 60px;
    padding: 150px 0 50px;
  }
}
.l-footer__inner {
  display: grid;
  width: 90%;
  margin: 0 auto;
  max-width: 1200px;
  gap: 40px;
}
@media screen and (width > 768px) {
  .l-footer__inner {
    grid-template-columns: repeat(2, 1fr);
    gap: 100px 40px;
  }
}
.l-footer-logo {
  display: block;
}
.l-footer-logo__img {
  display: block;
}
.l-footer__list {
  padding-left: 0;
  list-style: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 20px 40px;
  font-weight: 500;
}
.l-footer__list a {
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (width > 768px) {
  .l-footer__list a:hover {
    opacity: 0.7;
  }
}
.l-footer__corporate {
  text-decoration: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5em;
  color: #ffffff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  font-size: 0.9em;
}
@media screen and (width > 768px) {
  .l-footer__corporate:hover {
    opacity: 0.7;
  }
  .l-footer__corporate:hover::after {
    opacity: 0.7;
  }
}
.l-footer__corporate::after {
  content: "";
  display: block;
  width: 1em;
  aspect-ratio: 1/1;
  background-color: #ffffff;
  -webkit-mask-image: url("./../images/icon/icon-tab.svg");
          mask-image: url("./../images/icon/icon-tab.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
}
.l-footer__copyright {
  text-align: center;
  font-size: 0.75em;
}
@media screen and (width > 768px) {
  .l-footer__copyright {
    text-align: right;
  }
}

.l-main {
  width: 100%;
  padding-block: 0px calc(var(--contents-spacer) * 1.3);
  overflow: hidden;
  position: relative;
}
.l-main::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  background-image: url("./../images/bg.png");
  background-repeat: repeat-y;
  background-size: 100% auto;
  background-position: center top;
  opacity: 0.5;
}

.l-page-head {
  position: relative;
  overflow: clip;
  -webkit-margin-after: var(--page-header-after, 0px);
          margin-block-end: var(--page-header-after, 0px);
  padding-inline: var(--gutter, 0px);
  --breadcrumb-color: #0b7ace;
  --breadcrumb-bullet-color: #0b7ace;
  --gradient-pattern-lite: radial-gradient(#3bebff, transparent 50%);
  --gradient-pattern-dark: radial-gradient(#088ec5, transparent 50%);
}
.l-page-head::after {
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 39.876%;
  content: "";
  pointer-events: none;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#f9f9f9));
  background: -webkit-linear-gradient(transparent 0%, #f9f9f9 100%);
  background: linear-gradient(transparent 0%, #f9f9f9 100%);
}
.l-page-head__inner {
  font-size: clamp(24px, 8.5333333333vw, clamp(2rem, 1.8086734694rem + 0.8163265306vw, 2.625rem));
  z-index: 2;
  display: grid;
  row-gap: 0.85em;
  padding-block: clamp(144px, 102.3673469388px + 11.1020408163vw, 280px) clamp(20px, 16.9387755102px + 0.8163265306vw, 30px);
}
.l-page-head__motif {
  position: absolute;
  z-index: 1;
  display: block;
  width: 100%;
  pointer-events: none;
}
.l-page-head__motif > img {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
.l-page-head__motif::before, .l-page-head__motif::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: "";
  opacity: 0.13;
  border-radius: 50%;
}
.l-page-head__motif::before {
  width: 45.9375vw;
  aspect-ratio: 735/530;
  background: var(--gradient-pattern-lite);
}
.l-page-head__motif::after {
  width: 58.125vw;
  aspect-ratio: 930/787;
  background: var(--gradient-pattern-dark);
}
.l-page-head__motif--left {
  top: 0;
  left: 0;
  width: 36.625vw;
  aspect-ratio: 586/825;
  translate: min(clamp(-10px, -43.6734693878px + 8.9795918367vw, 100px), 14.675%) -16%;
}
.l-page-head__motif--left::before {
  top: 0;
  right: 31.15%;
  translate: 0 -13.01%;
}
.l-page-head__motif--left::after {
  bottom: 0;
  left: 0;
  translate: 0 19.567%;
}
.l-page-head__motif--right {
  right: 0;
  bottom: 0;
  width: 39.6875vw;
  aspect-ratio: 635/766;
  translate: 6.7% -1.95%;
}
.l-page-head__motif--right::before {
  top: 12.532%;
  right: 38.11%;
}
.l-page-head__motif--right::after {
  top: 47.911%;
  right: 50%;
  translate: 50% 0;
}
.l-page-head__title {
  position: relative;
  z-index: 20;
  display: grid;
  row-gap: 0.38em;
}
.l-page-head__title > .en {
  font-family: "Poppins", sans-serif;
  font-size: max(14px, 0.428em);
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #e72c3c;
}
.l-page-head__title > .ja {
  font-size: 1em;
  font-weight: 600;
  line-height: 1.2;
  text-wrap: wrap;
}
.l-page-head__breadcrumb {
  position: relative;
  z-index: 20;
  display: grid;
  -webkit-box-pack: end;
  -webkit-justify-content: end;
      -ms-flex-pack: end;
          justify-content: end;
}

.l-section {
  width: 100%;
  padding-inline: 0;
}
.l-section--pi200 {
  padding-inline: var(--gutter, 0px);
}
.l-section__inner {
  width: min(100%, 1600px);
  margin: 0 auto;
}
.l-section--pi200 .l-section__inner {
  width: min(100%, 1200px);
}
.l-section__heading {
  font-size: clamp(1.5rem, 1.2895408163rem + 0.8979591837vw, 2.1875rem);
  font-weight: 500;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.l-form {
  display: grid;
  margin: 0 0 40px;
  gap: 0 2em;
}
@media screen and (width > 768px) {
  .l-form {
    margin: 0 0 20px;
    grid-template-columns: 1fr 2fr;
  }
}
.l-form.js-hidden {
  display: none;
}
.l-form--hidden {
  display: none;
}
.l-form__title {
  margin: 0 0 0.5em;
}
@media screen and (width > 768px) {
  .l-form__title {
    padding: 1em 0 0;
  }
}
.l-form__name {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5em;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.l-form__name::after {
  content: attr(data-span);
  color: #ffffff;
  display: block;
  padding: 0 0.5em;
  border-radius: 4px;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  border: 1px solid;
}
.l-form__name.required::after {
  color: #e72c3c;
  border-color: #e72c3c;
}
.l-form__name.optional::after {
  color: #0b7ace;
  border-color: #0b7ace;
}
.l-form__inputs input[type=text] {
  -webkit-appearance: none;
  width: 100%;
  outline: none;
  border: 1px #68808c solid;
  height: 50px;
  padding: 0 0.5em;
  border-radius: 0;
}
.l-form__inputs input[type=date] {
  width: 100%;
  outline: none;
  border: 1px #68808c solid;
  height: 50px;
  padding: 0 0.5em;
  border-radius: 0;
}
.l-form__inputs textarea {
  -webkit-appearance: none;
  width: 100%;
  outline: none;
  border: 1px #68808c solid;
  height: 300px;
  padding: 0.5em;
  border-radius: 0;
  resize: none;
}
.l-form__error {
  color: #e72c3c;
  margin: 0.2em 0 0;
}
.l-form__select {
  position: relative;
}
.l-form__select::before {
  content: "";
  display: block;
  width: 0.5em;
  aspect-ratio: 1/1;
  border-bottom: 2px #68808c solid;
  border-right: 2px #68808c solid;
  position: absolute;
  top: 50%;
  right: 1em;
  -webkit-transform: translate(50%, -50%) rotate(45deg);
          transform: translate(50%, -50%) rotate(45deg);
  pointer-events: none;
}
.l-form__select select {
  -webkit-appearance: none;
  width: 100%;
  outline: none;
  border: 1px #68808c solid;
  height: 50px;
  padding: 0 0.5em;
  border-radius: 0;
}
.l-form__checkbox {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 1em;
  min-height: 50px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
}
.l-form__checkbox input {
  display: none;
}
.l-form__checkbox input:checked + label::before {
  background-color: #0b7ace;
}
.l-form__checkbox label {
  display: inline-block;
  cursor: pointer;
  position: relative;
  padding: 0 0 0 1.2em;
}
.l-form__checkbox label::before, .l-form__checkbox label::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0.5em;
}
.l-form__checkbox label::before {
  width: 0.8em;
  aspect-ratio: 1/1;
  border: 1px #2d282a solid;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-color: #ffffff;
}
.l-form__checkbox label::after {
  width: 0.4em;
  height: 0.2em;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  border-left: 0.2em #ffffff solid;
  border-bottom: 0.2em #ffffff solid;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}
.l-form__radio {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 1em;
  min-height: 50px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
}
.l-form__radio input {
  display: none;
}
.l-form__radio input:checked + label::after {
  background-color: #0b7ace;
}
.l-form__radio label {
  display: inline-block;
  cursor: pointer;
  position: relative;
  padding: 0 0 0 1.2em;
}
.l-form__radio label::before, .l-form__radio label::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0.5em;
  border-radius: 50%;
  aspect-ratio: 1/1;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.l-form__radio label::before {
  width: 1em;
  border: 1px #2d282a solid;
  background-color: #ffffff;
}
.l-form__radio label::after {
  width: 0.5em;
}
.l-form__accept {
  margin: 90px auto 0;
}
.l-form__accept input {
  display: none;
}
.l-form__accept input:checked + label::before {
  background-color: #0b7ace;
}
.l-form__accept label {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  cursor: pointer;
  position: relative;
  padding: 0 0 0 1.2em;
}
.l-form__accept label::before, .l-form__accept label::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0.5em;
}
.l-form__accept label::before {
  width: 0.8em;
  aspect-ratio: 1/1;
  border: 1px #2d282a solid;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-color: #ffffff;
}
.l-form__accept label::after {
  width: 0.4em;
  height: 0.2em;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  border-left: 0.2em #ffffff solid;
  border-bottom: 0.2em #ffffff solid;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}
.l-form__accept label a {
  text-decoration: underline;
}
.l-form__accept label a[target=_blank] {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 0.5em;
}
.l-form__accept label a[target=_blank]::after {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background-color: #2d282a;
  -webkit-mask-image: url("./../images/icon/icon-tab.svg");
          mask-image: url("./../images/icon/icon-tab.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
}
.l-form__submit {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 50px auto 0;
}
@media screen and (width > 768px) {
  .l-form__submit {
    margin: 100px auto 0;
  }
}
.l-form__submit input {
  display: block;
  background-color: #2d282a;
  -webkit-appearance: none;
  border: none;
  outline: none;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 18px 65px;
  border-radius: 100vh;
  color: #ffffff;
  cursor: pointer;
  border: 1px #2d282a solid;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (width > 768px) {
  .l-form__submit input:hover {
    background-color: #ffffff;
    color: #2d282a;
  }
}
.l-form__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1em;
  margin: 150px auto 0;
}
.l-form__wrap a {
  display: block;
  background-color: #ffffff;
  color: #0b7ace;
  -webkit-appearance: none;
  border: none;
  outline: none;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 18px 0;
  border-radius: 100vh;
  cursor: pointer;
  border: 1px #0b7ace solid;
  text-decoration: none;
  min-width: 140px;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (width > 768px) {
  .l-form__wrap a {
    min-width: 190px;
  }
  .l-form__wrap a:hover {
    background-color: #0b7ace;
    color: #ffffff;
  }
}
.l-form__wrap button {
  display: block;
  background-color: #2d282a;
  -webkit-appearance: none;
  border: none;
  outline: none;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 18px 0;
  border-radius: 100vh;
  color: #ffffff;
  cursor: pointer;
  border: 1px #2d282a solid;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  min-width: 140px;
}
@media screen and (width > 768px) {
  .l-form__wrap button {
    min-width: 190px;
  }
  .l-form__wrap button:hover {
    background-color: #ffffff;
    color: #2d282a;
  }
}
@media screen and (width > 768px) {
  .l-form__confirm {
    padding: 1em 0 0;
  }
}
.l-form-thanks__head {
  font-size: 1.5em;
  color: #0b7ace;
  margin: 0 auto 3em;
  text-align: center;
}
.l-form-thanks__text {
  margin: 0 auto 2em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 90%;
}
.l-form-thanks__btn {
  display: block;
  background-color: #2d282a;
  color: #ffffff;
  -webkit-appearance: none;
  border: none;
  outline: none;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 18px 65px;
  border-radius: 100vh;
  cursor: pointer;
  border: 1px #2d282a solid;
  text-decoration: none;
  text-align: center;
  margin: 0 auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (width > 768px) {
  .l-form-thanks__btn:hover {
    background-color: #ffffff;
    color: #2d282a;
  }
}

.l-people-profile {
  gap: 10px;
}
@media screen and (width > 576px) {
  .l-people-profile {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media screen and (width > 768px) {
  .l-people-profile {
    gap: 50px;
  }
}
.l-people-profile__icon {
  width: 100px;
  aspect-ratio: 1/1;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin: 0 auto;
}
@media screen and (width > 576px) {
  .l-people-profile__icon {
    margin: 0;
  }
}
@media screen and (width > 768px) {
  .l-people-profile__icon {
    width: 180px;
  }
}
.l-people-profile__icon img {
  display: block;
  width: 100%;
}
.l-people-profile__title {
  font-size: 2em;
  font-weight: 700;
}
.l-people-profile__meta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 1em;
  margin: 1em 0 0;
  color: #0b7ace;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.l-people-schedule {
  display: grid;
  margin: 50px auto 0;
  max-width: 1100px;
  border-radius: 16px;
  background-color: rgba(115, 188, 230, 0.1);
  position: relative;
  padding: 30px 10px;
  gap: 50px 100px;
  overflow: hidden;
}
@media screen and (width > 768px) {
  .l-people-schedule {
    margin: 100px auto 0;
    padding: 80px 50px;
    grid-template-columns: 40% 1fr;
  }
}
.l-people-schedule::before {
  content: "";
  display: block;
  width: 30%;
  aspect-ratio: 1/1;
  background-color: #ffffff;
  -webkit-mask-image: url("./../images/icon/icon-time.svg");
          mask-image: url("./../images/icon/icon-time.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  position: absolute;
  left: 0;
  bottom: 0;
  -webkit-transform: translate(-10%, 10%);
          transform: translate(-10%, 10%);
}
.l-people-schedule__title {
  font-size: 1.75em;
  font-weight: 700;
  position: relative;
  z-index: 2;
}
.l-people-schedule__content {
  border-top: 1px #73bce6 solid;
  position: relative;
  z-index: 2;
}
.l-people-schedule__row {
  display: grid;
  border-bottom: 1px #73bce6 solid;
  grid-template-columns: 40px 1fr;
  gap: 40px;
  padding: 15px 0;
}
.l-people-schedule__time {
  color: #0b7ace;
}
.l-people-faq {
  padding: 30px 10px;
  background-color: #ffffff;
  border-radius: 30px;
  display: grid;
  gap: 30px;
  margin: 100px auto 0;
}
@media screen and (width > 768px) {
  .l-people-faq {
    padding: 80px 100px;
    gap: 80px;
  }
}
.l-people-faq-item__q {
  font-size: 1.25em;
  color: #0b7ace;
  position: relative;
  padding: 10px 0 10px 30px;
  border-bottom: 1px #73bce6 solid;
  margin: 0 0 20px;
}
@media screen and (width > 768px) {
  .l-people-faq-item__q {
    padding: 20px 0 20px 50px;
  }
}
.l-people-faq-item__q::before {
  content: "Q";
  width: 20px;
  aspect-ratio: 1/1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  background-color: #73bce6;
  color: #ffffff;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-family: "Poppins", sans-serif;
  position: absolute;
  top: 50%;
  left: 15px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  border-radius: 50%;
  line-height: 1;
}
@media screen and (width > 768px) {
  .l-people-faq-item__q::before {
    font-size: 20px;
    left: 25px;
    width: 30px;
  }
}
.l-people-slider {
  margin: 150px 0 0;
}
.l-people-slider__title {
  font-size: 1.5em;
  font-weight: 600;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 6px 0;
  border-bottom: 1px #0b7ace solid;
}
.l-people-slider__btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin: 50px 0 0;
}
.l-people-slider__content {
  margin: 50px 0 0;
}

.l-p-slider__slide {
  min-width: 300px;
  max-width: 300px;
}
@media screen and (width > 768px) {
  .l-p-slider__slide {
    min-width: 470px;
    max-width: 470px;
  }
}
@media screen and (width > 1600px) {
  .l-p-slider__slide {
    min-width: none;
    max-width: none;
  }
}

.p-top__first {
  position: relative;
}
.p-top__first::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-image: url("./../images/top/fv-bg.svg");
  background-repeat: repeat-y;
  background-size: 200% auto;
  background-position: center top;
  z-index: -5;
}
@media screen and (width > 768px) {
  .p-top__first::before {
    background-size: 100% auto;
  }
}
.p-top-fv {
  position: relative;
  padding-top: var(--fix-header-height);
}
.p-top-fv__inner {
  min-height: 400px;
  overflow: hidden;
}
@media screen and (width > 768px) {
  .p-top-fv__inner {
    min-height: 550px;
  }
}
.p-top-fv__img {
  border-radius: 30px;
  display: block;
  position: absolute;
  -webkit-transition: 1s ease-in-out;
  transition: 1s ease-in-out;
  opacity: 0;
  -webkit-transform: translate(-50%, -50%) translateY(100px);
          transform: translate(-50%, -50%) translateY(100px);
}
.p-top-fv__img.js-view {
  opacity: 1;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.p-top-fv__img--1 {
  left: 20%;
  top: 200px;
  width: 200px;
}
@media screen and (width > 576px) {
  .p-top-fv__img--1 {
    width: 45%;
  }
}
@media screen and (width > 963px) {
  .p-top-fv__img--1 {
    top: 250px;
    width: 450px;
    left: 10%;
  }
}
.p-top-fv__img--2 {
  left: 60%;
  top: 350px;
  width: 160px;
}
@media screen and (width > 576px) {
  .p-top-fv__img--2 {
    width: 25%;
    left: 50%;
  }
}
@media screen and (width > 963px) {
  .p-top-fv__img--2 {
    top: 400px;
    width: 330px;
    left: 40%;
  }
}
.p-top-fv__img--3 {
  left: 80%;
  top: 150px;
  width: 170px;
}
@media screen and (width > 576px) {
  .p-top-fv__img--3 {
    width: 35%;
  }
}
@media screen and (width > 963px) {
  .p-top-fv__img--3 {
    top: 300px;
    width: 500px;
    left: 75%;
  }
}
.p-top-catch {
  width: 90%;
  margin: 0 auto;
}
@media screen and (width > 768px) {
  .p-top-catch__main {
    text-align: right;
  }
}
.p-top-catch__main span {
  display: inline-block;
  font-weight: 700;
  font-size: 2em;
}
@media screen and (width > 768px) {
  .p-top-catch__main span {
    font-size: 2.5em;
  }
}
.p-top-catch__corporate {
  text-align: right;
  color: #0b7ace;
  font-family: "Poppins", sans-serif;
  margin: 1em 0 0;
  font-size: 0.75em;
}
@media screen and (width > 768px) {
  .p-top-catch__corporate {
    font-size: 1em;
  }
}
.p-top-catch__recruit {
  text-align: right;
  color: #e72c3c;
  font-family: "Poppins", sans-serif;
  margin: 0.5em 0 0;
  font-size: 0.75em;
}
@media screen and (width > 768px) {
  .p-top-catch__recruit {
    font-size: 1em;
  }
}
.p-top-about__inner {
  padding: 150px 0 80px;
}
.p-top-about__ttl {
  margin: 0 0 80px;
  font-size: 2em;
  font-weight: 700;
}
@media screen and (width > 768px) {
  .p-top-about__ttl {
    font-size: 3em;
  }
}
@media screen and (width > 768px) {
  .p-top-about__content {
    width: 67%;
    margin: 0 0 0 auto;
  }
}
.p-top-about__btn {
  margin: 60px 0 0;
}
.p-top-slider {
  position: relative;
}
.p-top-slider::before {
  content: "";
  display: block;
  width: 100%;
  height: 50%;
  background-color: #ffffff;
  position: absolute;
  top: 50%;
  left: 0;
  z-index: -3;
}
.p-top-slider::after {
  content: "";
  display: block;
  width: 100%;
  height: 50%;
  background-color: #92d7ff;
  position: absolute;
  top: 50%;
  left: 0;
  opacity: 0.24;
  z-index: -2;
}
.p-top-slider__inner {
  -webkit-mask-image: url("./../images/top/slider-mask.svg");
          mask-image: url("./../images/top/slider-mask.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: 150% 100%;
          mask-size: 150% 100%;
}
@media screen and (width > 768px) {
  .p-top-slider__inner {
    -webkit-mask-size: 100% auto;
            mask-size: 100% auto;
  }
}
.p-top-slider__slide img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-top-match {
  position: relative;
  padding: 80px 0;
}
@media screen and (width > 768px) {
  .p-top-match {
    padding: 150px 0;
  }
}
.p-top-match::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -2;
  background-color: #92d7ff;
  opacity: 0.24;
  top: 0;
  left: 0;
  border-radius: 0 0 30px 30px;
}
@media screen and (width > 768px) {
  .p-top-match::before {
    border-radius: 0 0 70px 70px;
  }
}
.p-top-match::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  background-image: url("./../images/top/match-bg-sp.svg");
  background-repeat: repeat-y;
  background-position: center top;
  background-size: 100% auto;
}
@media screen and (width > 768px) {
  .p-top-match::after {
    background-image: url("./../images/top/match-bg.svg");
    background-repeat: no-repeat;
  }
}
.p-top-match__title {
  margin: 0 auto;
}
.p-top-match__content {
  display: grid;
  gap: 30px 15px;
  margin: 50px auto 0;
  max-width: 1100px;
  width: 90%;
}
@media screen and (width > 576px) {
  .p-top-match__content {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (width > 963px) {
  .p-top-match__content {
    grid-template-columns: repeat(11, 1fr);
  }
}
@media screen and (width > 963px) {
  .p-top-match-item {
    grid-column-end: span 4;
  }
  .p-top-match-item:nth-of-type(4n + 1) {
    grid-column-start: 2;
  }
  .p-top-match-item:nth-of-type(4n - 1) {
    grid-column-start: 4;
  }
}
.p-top-match-item__inner {
  position: relative;
  padding: 60px 5%;
  border-radius: 100vh;
  background-color: #ffffff;
  max-width: 310px;
  margin: 0 auto;
  width: 75%;
}
@media screen and (width > 768px) {
  .p-top-match-item__inner {
    padding: 80px 5%;
  }
}
@media screen and (width > 963px) {
  .p-top-match-item__inner {
    margin: 0;
  }
}
.p-top-match-item__inner::before {
  content: attr(data-num);
  position: absolute;
  top: 0;
  left: 0;
  font-family: "Poppins", sans-serif;
  color: #a6d6f2;
  font-size: 50px;
  font-weight: 600;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
}
@media screen and (width > 374px) {
  .p-top-match-item__inner::before {
    font-size: 70px;
  }
}
@media screen and (width > 768px) {
  .p-top-match-item__inner::before {
    font-size: 100px;
  }
}
.p-top-match-item__img {
  display: block;
  width: 60%;
  height: 150px;
  max-width: 120px;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center bottom;
     object-position: center bottom;
  margin: 0 auto;
}
.p-top-match-item__text {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 20px auto 0;
}
.p-top-work {
  padding: 80px 0;
  position: relative;
  display: grid;
  gap: 50px 140px;
}
@media screen and (width > 768px) {
  .p-top-work {
    padding: 170px 0;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: -webkit-max-content 1fr;
    grid-template-rows: max-content 1fr;
  }
}
.p-top-work::before {
  content: "";
  display: block;
  width: 50%;
  height: 100%;
  position: absolute;
  z-index: -2;
  top: 0;
  right: 0;
  background-image: url("./../images/top/work-bg.svg");
  background-repeat: no-repeat;
  background-position: right top;
  background-size: contain;
}
.p-top-work::after {
  content: "WORKS";
  display: block;
  position: absolute;
  font-size: 80px;
  font-weight: 600;
  font-family: "Poppins", sans-serif;
  color: #dbdbdb;
  opacity: 0.2;
  z-index: -1;
  right: -5%;
  bottom: 100px;
}
@media screen and (width > 768px) {
  .p-top-work::after {
    font-size: 180px;
  }
}
.p-top-work__img {
  display: block;
  border-radius: 0 30px 30px 0;
  width: 90%;
}
@media screen and (width > 768px) {
  .p-top-work__img {
    grid-row-end: span 2;
    grid-row-start: 1;
    width: 100%;
  }
}
.p-top-work__title {
  width: 90%;
  margin: 0 auto;
}
@media screen and (width > 768px) {
  .p-top-work__title {
    grid-column-start: 2;
    width: 100%;
  }
}
.p-top-work__content {
  width: 90%;
  margin: 0 auto;
}
@media screen and (width > 768px) {
  .p-top-work__content {
    width: 100%;
  }
}
.p-top-work__btn {
  margin: 60px 0 0;
}
.p-top-people {
  position: relative;
}
.p-top-people::before, .p-top-people::after {
  content: "";
  display: block;
  position: absolute;
  width: 200%;
  -webkit-mask-image: url("./../images/top/slider-mask.svg");
          mask-image: url("./../images/top/slider-mask.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  -webkit-mask-size: 100% auto;
          mask-size: 100% auto;
  opacity: 0.46;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  aspect-ratio: 1750/670;
}
@media screen and (width > 768px) {
  .p-top-people::before, .p-top-people::after {
    width: 100%;
  }
}
.p-top-people::before {
  background-image: url("./../images/top/people-bg.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  -webkit-filter: blur(10px);
          filter: blur(10px);
  z-index: -2;
}
.p-top-people::after {
  background-color: #d2edf8;
  z-index: -1;
}
.p-top-people__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-top-people__slider {
  margin: 50px 0 50px;
}
@media screen and (width > 768px) {
  .p-top-people__slider {
    margin: 130px 0 50px;
  }
}
.p-top-people__btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-top-environment {
  padding: 80px 0;
  position: relative;
  display: grid;
  gap: 50px 140px;
}
@media screen and (width > 768px) {
  .p-top-environment {
    padding: 170px 0;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: -webkit-max-content 1fr;
    grid-template-rows: max-content 1fr;
  }
}
.p-top-environment::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -2;
  bottom: 0;
  left: 0;
  background-image: url("./../images/top/environment-bg.svg");
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: contain;
}
.p-top-environment::after {
  content: "ENVIRONMENT";
  display: block;
  position: absolute;
  font-size: 80px;
  font-weight: 600;
  font-family: "Poppins", sans-serif;
  color: #dbdbdb;
  opacity: 0.2;
  z-index: -1;
  left: 2.5%;
  top: 100px;
}
@media screen and (width > 768px) {
  .p-top-environment::after {
    font-size: 180px;
  }
}
.p-top-environment__img {
  display: block;
  border-radius: 30px 0 0 30px;
  width: 90%;
  margin: 0 0 0 auto;
}
@media screen and (width > 768px) {
  .p-top-environment__img {
    grid-column-start: 2;
    grid-row-end: span 2;
    grid-row-start: 1;
    width: 100%;
  }
}
.p-top-environment__title {
  width: 90%;
  margin: 0 auto;
}
@media screen and (width > 768px) {
  .p-top-environment__title {
    width: 80%;
    margin: 0 0 0 auto;
  }
}
.p-top-environment__content {
  width: 90%;
  margin: 0 auto;
}
@media screen and (width > 768px) {
  .p-top-environment__content {
    width: 80%;
    margin: 0 0 0 auto;
  }
}
.p-top-environment__btn {
  margin: 60px 0 0;
}
.p-top-facility {
  padding: 50px 5%;
  position: relative;
  border-radius: 40px;
}
@media screen and (width > 768px) {
  .p-top-facility {
    padding: 100px 5%;
  }
}
.p-top-facility::before, .p-top-facility::after {
  content: "";
  position: absolute;
  border-radius: inherit;
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.p-top-facility::before {
  background-image: url("./../images/top/facility-bg.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  z-index: -2;
}
.p-top-facility::after {
  background: #1c2c43;
  opacity: 0.9;
  z-index: -1;
}
@media screen and (width > 768px) {
  .p-top-facility::after {
    background: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(50%, #1c2c43), to(#1c2c43));
    background: -webkit-linear-gradient(left, transparent, #1c2c43 50%, #1c2c43);
    background: linear-gradient(to right, transparent, #1c2c43 50%, #1c2c43);
    opacity: 1;
  }
}
.p-top-facility__inner {
  color: #ffffff;
}
@media screen and (width > 768px) {
  .p-top-facility__inner {
    width: 50%;
    margin: 0 0 0 auto;
  }
}
.p-top-facility__sub {
  font-size: 1.1em;
}
.p-top-facility__title {
  font-size: 1.75em;
  margin: 0.5em 0 1em;
}
@media screen and (width > 768px) {
  .p-top-facility__title {
    font-size: 2em;
  }
}
.p-top-facility__btn {
  margin: 60px 0 0;
}
.p-top-main {
  padding: 80px 0;
  position: relative;
  background-image: url("./../images/top/main-bg.svg");
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 100% auto;
}
@media screen and (width > 768px) {
  .p-top-main {
    padding: 210px 0 150px;
  }
}
.p-top-number__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-top-number__content {
  display: grid;
  gap: 30px 24px;
  margin: 50px auto 0;
}
@media screen and (width > 576px) {
  .p-top-number__content {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (width > 963px) {
  .p-top-number__content {
    grid-template-columns: repeat(3, 1fr);
  }
}
.p-top-number-item {
  background-color: #ffffff;
  border-radius: 18px;
  -webkit-box-shadow: rgba(2, 131, 255, 0.12) 0 0 20px;
          box-shadow: rgba(2, 131, 255, 0.12) 0 0 20px;
  padding: 20px 15px 0;
  position: relative;
}
@media screen and (width > 768px) {
  .p-top-number-item {
    padding: 35px 15px 0;
  }
}
.p-top-number-item::before {
  content: "";
  background-color: #e4e4e4;
  display: block;
  width: 100px;
  aspect-ratio: 1/1;
  position: absolute;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  top: 40px;
  left: 15px;
}
.p-top-number-item.--year::before {
  -webkit-mask-image: url("./../images/icon/icon-year.svg");
          mask-image: url("./../images/icon/icon-year.svg");
}
.p-top-number-item.--location::before {
  -webkit-mask-image: url("./../images/icon/icon-location.svg");
          mask-image: url("./../images/icon/icon-location.svg");
}
.p-top-number-item.--gender::before {
  -webkit-mask-image: url("./../images/icon/icon-gender.svg");
          mask-image: url("./../images/icon/icon-gender.svg");
}
.p-top-number-item.--qualified::before {
  -webkit-mask-image: url("./../images/icon/icon-qualified.svg");
          mask-image: url("./../images/icon/icon-qualified.svg");
}
.p-top-number-item.--holiday::before {
  -webkit-mask-image: url("./../images/icon/icon-holiday.svg");
          mask-image: url("./../images/icon/icon-holiday.svg");
}
.p-top-number-item.--overtime::before {
  -webkit-mask-image: url("./../images/icon/icon-overtime.svg");
          mask-image: url("./../images/icon/icon-overtime.svg");
}
.p-top-number-item.--rest::before {
  -webkit-mask-image: url("./../images/icon/icon-rest.svg");
          mask-image: url("./../images/icon/icon-rest.svg");
}
.p-top-number-item.--old::before {
  -webkit-mask-image: url("./../images/icon/icon-old.svg");
          mask-image: url("./../images/icon/icon-old.svg");
}
.p-top-number-item.--length::before {
  -webkit-mask-image: url("./../images/icon/icon-length.svg");
          mask-image: url("./../images/icon/icon-length.svg");
}
.p-top-number-item.--career::before {
  -webkit-mask-image: url("./../images/icon/icon-career.svg");
          mask-image: url("./../images/icon/icon-career.svg");
}
.p-top-number-item.--ratio::before {
  -webkit-mask-image: url("./../images/icon/icon-ratio.svg");
          mask-image: url("./../images/icon/icon-ratio.svg");
}
.p-top-number-item.--grow::before {
  -webkit-mask-image: url("./../images/icon/icon-grow.svg");
          mask-image: url("./../images/icon/icon-grow.svg");
}
.p-top-number-item__title {
  text-align: center;
  font-size: 25px;
  font-weight: 700;
  position: relative;
}
.p-top-number-item__content {
  font-weight: 600;
  font-size: 2em;
  text-align: center;
  position: relative;
  line-height: 1.5;
}
.p-top-number-item__content span {
  color: #73bce6;
  font-size: 2.5em;
  font-family: "Poppins", sans-serif;
  letter-spacing: -0.05em;
  padding: 0 5px;
}
.p-top-faq {
  background-color: rgba(209, 226, 235, 0.14);
  padding-block: var(--contents-spacer, 0px);
}
.p-top-faq__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-top-faq__content {
  margin: 50px 0 0;
  display: grid;
  gap: 10px;
}
.p-top-faq-item {
  display: none;
}
.p-top-faq-item:checked + .p-top-faq-item__label::after {
  opacity: 0;
}
.p-top-faq-item__label {
  display: block;
  padding: 10px 30px;
  cursor: pointer;
  position: relative;
}
@media screen and (width > 768px) {
  .p-top-faq-item__label {
    padding: 30px 70px;
  }
}
.p-top-faq-item__label::before, .p-top-faq-item__label::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 15px;
  width: 10px;
  border-top: 1px #73bce6 solid;
}
@media screen and (width > 768px) {
  .p-top-faq-item__label::before, .p-top-faq-item__label::after {
    right: 35px;
    width: 20px;
  }
}
.p-top-faq-item__label::before {
  -webkit-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
}
.p-top-faq-item__label::after {
  -webkit-transform: translate(50%, -50%) rotate(90deg);
          transform: translate(50%, -50%) rotate(90deg);
}
.p-top-faq-item__inner::before {
  content: "Q";
  width: 20px;
  aspect-ratio: 1/1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  background-color: #73bce6;
  color: #ffffff;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-family: "Poppins", sans-serif;
  position: absolute;
  top: 50%;
  left: 15px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  border-radius: 50%;
  line-height: 1;
}
@media screen and (width > 768px) {
  .p-top-faq-item__inner::before {
    font-size: 20px;
    left: 35px;
    width: 30px;
  }
}
.p-top-faq-item__wrap {
  background-color: #ffffff;
  border-radius: 12px;
}
.p-top-faq-item__content {
  height: 0;
  overflow: hidden;
  -webkit-transition: 0.1s;
  transition: 0.1s;
}
.p-top-faq-item__content-inner {
  padding: 10px 30px;
  position: relative;
}
@media screen and (width > 768px) {
  .p-top-faq-item__content-inner {
    padding: 30px 70px;
  }
}
.p-top-faq-item__content-inner::before {
  content: "A";
  width: 20px;
  aspect-ratio: 1/1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  background-color: #ffffff;
  border: 1px #73bce6 solid;
  color: #73bce6;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-family: "Poppins", sans-serif;
  position: absolute;
  top: 50%;
  left: 15px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  border-radius: 50%;
  line-height: 1;
}
@media screen and (width > 768px) {
  .p-top-faq-item__content-inner::before {
    font-size: 20px;
    left: 35px;
    width: 30px;
  }
}
.p-top-faq-item__content-inner::after {
  content: "";
  display: block;
  width: calc(100% - 20px);
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  border-top: 1px #ebebeb solid;
}
@media screen and (width > 768px) {
  .p-top-faq-item__content-inner::after {
    width: calc(100% - 40px);
  }
}
.p-top-cta {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(209, 226, 235, 0.14)), color-stop(50%, rgba(209, 226, 235, 0.14)), color-stop(50%, transparent));
  background: -webkit-linear-gradient(top, rgba(209, 226, 235, 0.14), rgba(209, 226, 235, 0.14) 50%, transparent 50%);
  background: linear-gradient(to bottom, rgba(209, 226, 235, 0.14), rgba(209, 226, 235, 0.14) 50%, transparent 50%);
}
.p-top-sns {
  padding: 80px 0 0;
  position: relative;
  background-image: url("./../images/top/sns-bg.svg");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% auto;
}
@media screen and (width > 768px) {
  .p-top-sns {
    padding: 150px 0 0;
  }
}
.p-top-sns__inner {
  display: grid;
  gap: 80px;
}
@media screen and (width > 768px) {
  .p-top-sns__inner {
    gap: 150px;
  }
}
.p-top-sns__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 0 50px;
}
@media screen and (width > 576px) {
  .p-top-sns__x-inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 60px;
  }
}
.p-top-sns__x-item {
  width: 100%;
  max-width: 355px;
}
.p-top-sns__x-item a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  border-radius: 100vh;
  border: 1px #73bce6 solid;
  background-color: #ffffff;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1em;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  max-width: 355px;
  font-weight: 700;
  font-size: 1.1em;
  padding: 20px;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (width > 768px) {
  .p-top-sns__x-item a:hover {
    background-color: #73bce6;
    color: #ffffff;
  }
}
.p-top-sns__x-item a::before {
  content: "";
  width: 40px;
  height: 30px;
  display: block;
  background-image: url("./../images/icon/icon-x.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.p-top-sns__x-text {
  text-align: center;
  color: #0b7ace;
  margin: 15px 0 0;
}
.p-top-sns__youtube a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  border-radius: 100vh;
  border: 1px #73bce6 solid;
  background-color: #ffffff;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1em;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  max-width: 355px;
  font-weight: 700;
  font-size: 1.1em;
  padding: 20px;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  margin: 0 auto;
}
@media screen and (width > 768px) {
  .p-top-sns__youtube a:hover {
    background-color: #73bce6;
    color: #ffffff;
  }
}
.p-top-sns__youtube a::before {
  content: "";
  width: 40px;
  height: 30px;
  display: block;
  background-image: url("./../images/icon/icon-youtube.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.p-about-lab__content::after, .p-about-lab__content::before, .p-about-message__content-inn::after, .p-about-message__content-inn::before, .p-about-industry__inner::after, .p-about-industry__inner::before, .p-about-industry::after, .p-about-industry::before, .p-about-concept__motif::after, .p-about-concept__motif::before {
  position: absolute;
  z-index: -1;
  display: block;
  content: "";
  pointer-events: none;
  opacity: 0.1;
  border-radius: 50%;
}

.p-about-lab__content::after, .p-about-message__content-inn::after, .p-about-industry__inner::after, .p-about-industry::after, .p-about-concept__motif::before {
  width: 45.9375vw;
  aspect-ratio: 735/530;
  background: -webkit-radial-gradient(#3bebff, transparent 50%);
  background: radial-gradient(#3bebff, transparent 50%);
}

.p-about-lab__content::before, .p-about-message__content-inn::before, .p-about-industry__inner::before, .p-about-industry::before, .p-about-concept__motif::after {
  width: 58.125vw;
  aspect-ratio: 930/787;
  background: -webkit-radial-gradient(#088ec5, transparent 50%);
  background: radial-gradient(#088ec5, transparent 50%);
}

.p-about-concept {
  -webkit-margin-before: calc(var(--page-header-after, 0px) * -1);
          margin-block-start: calc(var(--page-header-after, 0px) * -1);
  padding-block: var(--contents-spacer, 0px);
  position: relative;
  overflow: clip;
}
.p-about-concept__motif {
  position: absolute;
  z-index: -1;
  display: block;
  width: 100%;
  pointer-events: none;
}
.p-about-concept__motif > img {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
.p-about-concept__motif--left {
  top: 5.6635%;
  left: 0;
  width: 53.375vw;
  aspect-ratio: 854/969.72;
  translate: -24.59% 0;
}
.p-about-concept__motif--left::before {
  bottom: 0;
  left: 26.4637%;
  translate: 0 16.415%;
}
.p-about-concept__motif--left::after {
  top: 0;
  left: 0;
  translate: -22.131% -15.159%;
}
.p-about-concept__motif--right {
  right: 0;
  bottom: 0;
  width: 53.0625vw;
  aspect-ratio: 849/981;
  translate: 8.0094% 10.805%;
}
.p-about-concept__motif--right::before {
  top: 0;
  right: 17.314%;
  aspect-ratio: 735/700;
  translate: 0 -50%;
}
.p-about-concept__motif--right::after {
  right: 15.312%;
  bottom: 0;
  translate: 0 20.319%;
}
.p-about-concept__content {
  display: grid;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  justify-items: center;
  row-gap: 50px;
  width: min(700px, 95%);
  margin-inline: auto;
  padding: clamp(120px, 95.5102040816px + 6.5306122449vw, 200px) 1em;
  border-radius: 100vmax;
  background-color: rgba(255, 255, 255, 0.5);
}
.p-about-concept__heading {
  margin-bottom: 10px;
  margin-inline: auto;
}
.p-about-concept__title {
  font-size: 1.75em;
  font-weight: 500;
  display: block;
  overflow-wrap: anywhere;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  word-break: keep-all;
  color: #0b7ace;
}
.p-about-concept__text {
  overflow-wrap: anywhere;
  text-align: center;
  word-break: keep-all;
}

.p-about-industry {
  position: relative;
  padding-block: var(--contents-spacer, 0px);
  background-color: rgba(146, 215, 255, 0.14);
}
.p-about-industry::before {
  top: 23.244%;
  left: 50%;
  translate: -50% 0;
}
.p-about-industry::after {
  bottom: 0;
  right: 15.625%;
  translate: 0 33.7735%;
}
.p-about-industry__inner {
  position: relative;
}
.p-about-industry__inner::before {
  bottom: calc(var(--contents-spacer, 0px) * -1);
  left: calc(var(--gutter, 0px) * -1);
  translate: -39.139% 0;
}
.p-about-industry__inner::after {
  top: 0;
  right: calc(var(--gutter, 0px) * -1);
  translate: 41.4965% 0;
}
.p-about-industry__heading {
  position: relative;
  z-index: 10;
  margin-inline: auto;
}
.p-about-industry__content {
  position: relative;
  z-index: 10;
  display: grid;
  row-gap: clamp(40px, 21.6326530612px + 4.8979591837vw, 100px);
  -webkit-margin-before: calc(var(--contents-spacer, 0px) * 0.5);
          margin-block-start: calc(var(--contents-spacer, 0px) * 0.5);
}

.p-industry-block {
  display: grid;
  grid-template: "title" auto "text" auto "figure" auto/minmax(0, 1fr);
  -webkit-column-gap: clamp(40px, -80.9419152276px + 12.5588697017vw, 120px);
     -moz-column-gap: clamp(40px, -80.9419152276px + 12.5588697017vw, 120px);
          column-gap: clamp(40px, -80.9419152276px + 12.5588697017vw, 120px);
}
@media screen and (width > 768px) {
  .p-industry-block {
    grid-template: "figure title" auto "figure text" auto "figure ." 1fr/clamp(280px, 31.25vw, 500px) minmax(0, 1fr);
  }
  .p-industry-block:nth-of-type(even) {
    grid-template: "title figure" auto "text figure" auto ". figure" 1fr/minmax(0, 1fr) clamp(280px, 31.25vw, 500px);
  }
}
.p-industry-block__figure {
  overflow: clip;
  grid-area: figure;
  width: 100%;
  aspect-ratio: 500/330;
  border-radius: 0.625em;
}
@media screen and (width <= 768px) {
  .p-industry-block__figure {
    -webkit-margin-before: 1em;
            margin-block-start: 1em;
  }
}
.p-industry-block__figure > img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
.p-industry-block__title {
  font-size: min(2em, clamp(20px, 8.9230769231px + 1.4423076923vw, 32px));
  font-weight: 500;
  position: relative;
  grid-area: title;
  overflow-wrap: anywhere;
  word-break: keep-all;
}
.p-industry-block__text {
  grid-area: text;
  -webkit-margin-before: clamp(10px, -10.3076923077px + 2.6442307692vw, 32px);
          margin-block-start: clamp(10px, -10.3076923077px + 2.6442307692vw, 32px);
}

.p-about-message {
  -webkit-margin-before: var(--contents-spacer, 0px);
          margin-block-start: var(--contents-spacer, 0px);
}
.p-about-message__heading {
  margin-inline: auto;
}
.p-about-message__content {
  position: relative;
  -webkit-margin-before: calc(var(--contents-spacer, 0px) * 0.5);
          margin-block-start: calc(var(--contents-spacer, 0px) * 0.5);
}
.p-about-message__content::before, .p-about-message__content::after {
  position: absolute;
  z-index: 20;
  display: block;
  width: clamp(24px, 3.823125vw, 62px);
  aspect-ratio: 61.172/46.406;
  content: "";
  pointer-events: none;
  background: center/contain no-repeat;
}
.p-about-message__content::before {
  top: 0;
  left: 4.16%;
  translate: 0 -50%;
  background-image: url("../images/mrk_double-quotation-start_01.svg");
}
.p-about-message__content::after {
  right: 4.16%;
  bottom: 0;
  translate: 0 50%;
  background-image: url("../images/mrk_double-quotation-end_01.svg");
}
.p-about-message__content-inn {
  position: relative;
  z-index: 10;
  display: grid;
  overflow: clip;
  overflow: clip;
  -webkit-box-align: start;
  -webkit-align-items: start;
      -ms-flex-align: start;
          align-items: start;
  grid-template: "figure title" auto "figure text" auto "figure ." 1fr/minmax(250px, min(20.625vw, 303px)) 1fr;
  gap: 0 clamp(40px, -35.5886970173px + 7.8492935636vw, 90px);
  padding: clamp(40px, -20.4709576138px + 6.2794348509vw, 80px) clamp(24px, -90.8948194662px + 11.9309262166vw, 100px);
  border-radius: 1.875em;
  background-color: #ffffff;
}
@media screen and (width <= 1024px) {
  .p-about-message__content-inn {
    grid-template: "title" auto "text" auto "figure" auto/minmax(0, 1fr);
    gap: 0;
  }
}
@media screen and (width <= 576px) {
  .p-about-message__content-inn {
    border-radius: 0.8em;
  }
}
.p-about-message__content-inn::before {
  bottom: 0;
  left: 0;
  translate: -35.4838% 38.1194%;
}
.p-about-message__content-inn::after {
  top: 0;
  right: 0;
  translate: 47.21% -32.452%;
}
.p-about-message__title {
  font-size: 1.5em;
  font-weight: 500;
  grid-area: title;
  color: #0b7ace;
}
.p-about-message__text {
  display: grid;
  grid-area: text;
  row-gap: 1.875em;
  -webkit-margin-before: clamp(20px, 13.8775510204px + 1.6326530612vw, 40px);
          margin-block-start: clamp(20px, 13.8775510204px + 1.6326530612vw, 40px);
}
@media screen and (width <= 1024px) {
  .p-about-message__text {
    row-gap: 0.9375em;
  }
}
.p-about-message__text-author {
  font-family: "Yuji Syuku", serif;
  font-size: 1.5em;
  font-weight: 400;
  line-height: 1;
  justify-self: end;
  white-space: nowrap;
}
.p-about-message__figure {
  display: block;
  overflow: clip;
  grid-area: figure;
  width: 100%;
  border-radius: 1em;
}
@media screen and (width <= 1024px) {
  .p-about-message__figure {
    justify-self: center;
    width: min(100%, 330px);
    -webkit-margin-before: clamp(20px, 13.8775510204px + 1.6326530612vw, 40px);
            margin-block-start: clamp(20px, 13.8775510204px + 1.6326530612vw, 40px);
  }
}
.p-about-message__figure > img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}

.p-about-lab {
  -webkit-margin-before: var(--contents-spacer, 0px);
          margin-block-start: var(--contents-spacer, 0px);
}
.p-about-lab__heading {
  margin-inline: auto;
}
.p-about-lab__content {
  position: relative;
  display: grid;
  -webkit-box-align: start;
  -webkit-align-items: start;
      -ms-flex-align: start;
          align-items: start;
  grid-template: "title figure" auto "text figure" auto ". figure" 1fr/1fr 1fr;
  gap: 0 40px;
  -webkit-margin-before: calc(var(--contents-spacer, 0px) * 0.5);
          margin-block-start: calc(var(--contents-spacer, 0px) * 0.5);
}
@media screen and (width <= 1024px) {
  .p-about-lab__content {
    grid-template: "title" auto "text" auto "figure" auto/minmax(0, 1fr);
    gap: 0;
  }
}
.p-about-lab__content::before {
  top: 0;
  left: calc(var(--gutter, 0px) * -1);
  translate: -39.139% -41.931%;
}
.p-about-lab__content::after {
  bottom: 0;
  left: 50%;
  translate: -50% 55.28%;
}
.p-about-lab__title {
  font-size: 2em;
  font-weight: 500;
  grid-area: title;
}
.p-about-lab__text {
  grid-area: text;
  -webkit-margin-before: 40px;
          margin-block-start: 40px;
}
@media screen and (width <= 1024px) {
  .p-about-lab__text {
    -webkit-margin-before: 20px;
            margin-block-start: 20px;
  }
}
.p-about-lab__figure {
  display: block;
  overflow: clip;
  justify-self: end;
  grid-area: figure;
  width: min(100%, 500px, 31.25vw);
  aspect-ratio: 500/330;
  border-radius: 1em;
}
@media screen and (width <= 1024px) {
  .p-about-lab__figure {
    width: min(100%, 500px);
    -webkit-margin-before: 20px;
            margin-block-start: 20px;
  }
}
.p-about-lab__figure > img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}

.p-about-research {
  -webkit-margin-before: var(--contents-spacer, 0px);
          margin-block-start: var(--contents-spacer, 0px);
}
.p-about-research__intro {
  display: grid;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
  -webkit-align-items: start;
      -ms-flex-align: start;
          align-items: start;
  grid-template-columns: auto 1fr;
  gap: 20px 40px;
}
@media screen and (width <= 963px) {
  .p-about-research__intro {
    grid-template-columns: minmax(0, 1fr);
  }
}
.p-about-research__title {
  font-size: 2em;
  font-weight: 500;
  color: #0b7ace;
}
.p-about-research__description {
  display: block;
  justify-self: end;
  width: min(100%, 850px, 53.125vw);
}
@media screen and (width <= 963px) {
  .p-about-research__description {
    width: 100%;
  }
}
.p-about-research__items {
  -webkit-margin-before: clamp(50px, 34.693877551px + 4.0816326531vw, 100px);
          margin-block-start: clamp(50px, 34.693877551px + 4.0816326531vw, 100px);
}
.p-about-research__list {
  display: grid;
  row-gap: 40px;
  margin: 0;
  padding: 0;
  -webkit-padding-before: 40px;
          padding-block-start: 40px;
  list-style: none;
  counter-reset: research-index 0;
  border-top: 1px solid #b8d5eb;
}

.p-research-item {
  display: grid;
  grid-template: "figure ." 2.5em "figure title" auto "figure text" auto "figure ." 1fr/clamp(250px, 21.875vw, 350px) minmax(0, 1fr);
  -webkit-padding-after: 40px;
          padding-block-end: 40px;
  counter-increment: research-index 1;
  -webkit-column-gap: clamp(40px, -50.7064364207px + 9.4191522763vw, 100px);
     -moz-column-gap: clamp(40px, -50.7064364207px + 9.4191522763vw, 100px);
          column-gap: clamp(40px, -50.7064364207px + 9.4191522763vw, 100px);
  border-bottom: 1px solid #b8d5eb;
}
@media screen and (width <= 768px) {
  .p-research-item {
    grid-template: "title" auto "text" auto "figure" auto/minmax(0, 1fr);
  }
}
.p-research-item__figure {
  overflow: clip;
  grid-area: figure;
  width: 100%;
  aspect-ratio: 350/262.5;
  border-radius: 0.625em;
}
@media screen and (width <= 768px) {
  .p-research-item__figure {
    -webkit-margin-before: 1em;
            margin-block-start: 1em;
  }
}
.p-research-item__figure > img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
.p-research-item__title {
  font-size: 1.375em;
  font-weight: 500;
  position: relative;
  grid-area: title;
}
.p-research-item__title::before {
  font-family: "Poppins", sans-serif;
  font-size: 3.636em;
  font-weight: 300;
  line-height: 1;
  position: absolute;
  z-index: -1;
  top: 0.48125em;
  left: 0;
  content: counter(research-index, decimal-leading-zero);
  translate: 0 -100%;
  color: #e9f0f3;
}
.p-research-item__text {
  grid-area: text;
  -webkit-margin-before: 1.875em;
          margin-block-start: 1.875em;
}
@media screen and (width <= 768px) {
  .p-research-item__text {
    -webkit-margin-before: 1em;
            margin-block-start: 1em;
  }
}

.p-about-facility {
  display: grid;
  -webkit-box-align: start;
  -webkit-align-items: start;
      -ms-flex-align: start;
          align-items: start;
  grid-template: "title figure" auto "text figure" auto ". figure" 1fr/1fr 1fr;
  -webkit-margin-before: var(--contents-spacer, 0px);
          margin-block-start: var(--contents-spacer, 0px);
  padding: clamp(48px, -30.612244898px + 8.1632653061vw, 100px) clamp(24px, -15.306122449px + 4.0816326531vw, 50px);
  -webkit-column-gap: 1em;
     -moz-column-gap: 1em;
          column-gap: 1em;
  border-radius: 1.5em;
  background-color: rgba(146, 215, 255, 0.14);
}
@media screen and (width <= 963px) {
  .p-about-facility {
    grid-template: "title" auto "text" auto "figure" auto/minmax(0, 1fr);
  }
}
.p-about-facility__title {
  font-size: 1.5em;
  display: block;
  grid-area: title;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-padding-after: 0.25em;
          padding-block-end: 0.25em;
  color: #0b7ace;
  border-bottom: 2px solid #ffffff;
}
.p-about-facility__text {
  grid-area: text;
  -webkit-margin-before: 40px;
          margin-block-start: 40px;
}
@media screen and (width <= 963px) {
  .p-about-facility__text {
    -webkit-margin-before: 20px;
            margin-block-start: 20px;
  }
}
.p-about-facility__figure {
  overflow: clip;
  justify-self: center;
  grid-area: figure;
  width: max(300px, min(81%, 28.125vw, 450px));
  aspect-ratio: 450/338;
  border-radius: 1.25em;
}
@media screen and (width <= 963px) {
  .p-about-facility__figure {
    width: min(100%, 350px);
    -webkit-margin-before: 20px;
            margin-block-start: 20px;
  }
}
.p-about-facility__figure > img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}

.p-about-tic-link {
  display: grid;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  justify-items: center;
  row-gap: 20px;
  -webkit-margin-before: calc(var(--contents-spacer, 0px) * 0.5);
          margin-block-start: calc(var(--contents-spacer, 0px) * 0.5);
}
.p-about-tic-link__label {
  font-size: 1.125em;
  font-weight: 700;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.p-about-tic-link__button {
  font-size: min(clamp(14px, -9.2727272727px + 7.2727272727vw, 18px), clamp(16px, 15.387755102px + 0.1632653061vw, 18px));
  line-height: 1.15;
  width: min(100%, 430px);
  padding-inline: clamp(24px, 22.1632653061px + 0.4897959184vw, 30px);
  text-align: left;
  --btn-main-color: #1c2c43;
}
.p-about-tic-link__button-text {
  display: grid;
  row-gap: 0.33em;
}
.p-about-tic-link__button-text > .-sm {
  font-size: clamp(10px, 8.7755102041px + 0.3265306122vw, 14px);
}
@media screen and (width <= 374px) {
  .p-about-tic-link__button-text > .-sm {
    font-size: 8px;
  }
}
.p-about-tic-link__button-icon {
  max-height: 1em;
}

.p-about-history {
  -webkit-margin-before: var(--contents-spacer, 0px);
          margin-block-start: var(--contents-spacer, 0px);
}
.p-about-history__heading {
  margin-inline: auto;
}
.p-about-history__content {
  -webkit-margin-before: clamp(40px, 33.8775510204px + 1.6326530612vw, 60px);
          margin-block-start: clamp(40px, 33.8775510204px + 1.6326530612vw, 60px);
}
.p-about-history__rows {
  display: grid;
  grid-template-columns: auto clamp(0px, -30.612244898px + 8.1632653061vw, 100px) 1fr;
  gap: 1.5em 0.5em;
}
@media screen and (width <= 576px) {
  .p-about-history__rows {
    grid-template-columns: minmax(0, 1fr);
  }
}
.p-about-history__row {
  display: grid;
  -webkit-box-align: start;
  -webkit-align-items: start;
      -ms-flex-align: start;
          align-items: start;
  grid-column: span 3;
  grid-template-areas: "date . title";
  grid-template-columns: subgrid;
  -webkit-padding-after: 1.5em;
          padding-block-end: 1.5em;
  padding-inline: clamp(10px, 6.9387755102px + 0.8163265306vw, 20px);
  border-bottom: 1px solid #b8d5eb;
}
@media screen and (width <= 576px) {
  .p-about-history__row {
    grid-column: auto;
    grid-template-areas: "date" "title";
    grid-template-columns: minmax(0, 1fr);
    row-gap: 0.5em;
  }
}
.p-about-history__date {
  font-size: 1.625em;
  line-height: 1;
  grid-area: date;
  color: #0b7ace;
}
.p-about-history__title {
  align-self: center;
  grid-area: title;
}

.p-environment-benefits__inner {
  container-type: inline-size;
}
.p-environment-benefits__heading {
  margin-inline: auto;
}
.p-environment-benefits__cards {
  --spacer: clamp(24px, 16.0408163265px + 2.1224489796vw, 50px);
  display: grid;
  grid-auto-rows: 1fr;
  grid-template-columns: repeat(auto-fill, minmax(clamp(250px, 81.5189873418px + 17.4050632911vw, 360px), 1fr));
  margin-block: calc(clamp(36px, 32.3265306122px + 0.9795918367vw, 48px) + var(--spacer) * -0.5) calc(var(--spacer) * -0.5);
  -webkit-column-gap: var(--spacer);
     -moz-column-gap: var(--spacer);
          column-gap: var(--spacer);
}
@media screen and (width <= 576px) {
  .p-environment-benefits__cards {
    grid-template-columns: minmax(0, 1fr);
  }
}
.p-environment-benefits__card {
  display: grid;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  place-items: center;
  grid-row: span 3;
  grid-template-rows: subgrid;
  row-gap: 1.875em;
  margin-block: calc(var(--spacer) * 0.5);
  padding: min(2.5em, clamp(24px, 22.1632653061px + 0.4897959184vw, 30px));
  border-radius: 1em;
  background-color: rgba(209, 226, 235, 0.24);
}
.p-environment-benefits__card-title {
  font-size: 1.25em;
  font-weight: 500;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #0b7ace;
}
.p-environment-benefits__card-description {
  overflow-wrap: anywhere;
  text-align: center;
  word-break: keep-all;
}
.p-environment-benefits__list {
  display: grid;
  grid-template-columns: auto 1fr auto 0.5fr;
  gap: 40px 10px;
  -webkit-margin-before: calc(var(--contents-spacer, 0px) * 0.769);
          margin-block-start: calc(var(--contents-spacer, 0px) * 0.769);
}
@container (width < 600px) {
  .p-environment-benefits__list {
    grid-template-columns: minmax(0, 1fr);
  }
}
.p-environment-benefits__list-item {
  display: grid;
  -webkit-box-align: start;
  -webkit-align-items: start;
      -ms-flex-align: start;
          align-items: start;
  grid-column: span 4;
  grid-template-areas: "title . desc .";
  grid-template-columns: subgrid;
  -webkit-padding-after: 40px;
          padding-block-end: 40px;
  border-bottom: 1px solid #b8d5eb;
}
@container (width < 600px) {
  .p-environment-benefits__list-item {
    grid-column: auto;
    grid-template-areas: "title" "desc";
    grid-template-columns: minmax(0, 1fr);
    row-gap: 1em;
  }
}
.p-environment-benefits__list-item-title {
  font-size: 1.5625em;
  font-weight: 500;
  line-height: 1.2;
  display: grid;
  -webkit-box-pack: start;
  -webkit-justify-content: start;
      -ms-flex-pack: start;
          justify-content: start;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  grid-area: title;
  grid-template-columns: auto auto;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  color: #0b7ace;
}
.p-environment-benefits__list-item-icon {
  display: block;
  height: 0.8lh;
  aspect-ratio: 1;
  translate: 0 5%;
}
.p-environment-benefits__list-item-icon > svg {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
.p-environment-benefits__list-item-desc {
  display: block;
  align-self: center;
  grid-area: desc;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.p-environment-benefits__list-item-desc a {
  color: #0b7ace;
}
.p-environment-benefits__numbers {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(clamp(250px, 81.5189873418px + 17.4050632911vw, 360px), 1fr));
  gap: 24px;
  -webkit-margin-before: calc(var(--contents-spacer, 0px) * 0.769);
          margin-block-start: calc(var(--contents-spacer, 0px) * 0.769);
}
.p-environment-benefits__number {
  display: grid;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  justify-items: center;
  row-gap: 8px;
  padding: 2.1875em clamp(18px, 16.1632653061px + 0.4897959184vw, 24px);
  border-radius: 1.125em;
  background-color: #ffffff;
  -webkit-box-shadow: 0 0 1.25em rgba(11, 122, 206, 0.12);
          box-shadow: 0 0 1.25em rgba(11, 122, 206, 0.12);
}
.p-environment-benefits__number-title {
  font-size: 1.5625em;
  font-weight: 700;
  position: relative;
  z-index: 10;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.p-environment-benefits__number-data {
  position: relative;
  z-index: 1;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.p-environment-benefits__number-icon {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  max-width: clamp(40px, 5.9375vw, 95px);
  max-height: 100%;
  translate: -65% -15%;
}
.p-environment-benefits__number-icon > img {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center top;
     object-position: center top;
  width: 100%;
  height: 100%;
}
.p-environment-benefits__number-value {
  font-size: clamp(51.6315px, 6.8125vw, 109px);
  font-weight: 600;
  line-height: 1;
  position: relative;
  z-index: 10;
  letter-spacing: -0.05em;
  color: #73bce6;
}
.p-environment-benefits__number-value > .unit {
  font-size: clamp(18px, 2.375vw, 38px);
  font-weight: 700;
  color: #2d282a;
}

.p-environment-educational {
  -webkit-margin-before: var(--contents-spacer, 0px);
          margin-block-start: var(--contents-spacer, 0px);
  padding-block: var(--contents-spacer, 0px);
  background-color: rgba(146, 215, 255, 0.14);
}
.p-environment-educational__inner {
  display: grid;
  row-gap: clamp(36px, 32.3265306122px + 0.9795918367vw, 48px);
}
.p-environment-educational__heading {
  margin-inline: auto;
}
.p-environment-educational__content {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  row-gap: 16px;
}
@media screen and (width <= 963px) {
  .p-environment-educational__content {
    grid-template-columns: minmax(0, 1fr);
  }
}
.p-environment-educational__text {
  display: block;
  -webkit-padding-before: 1em;
          padding-block-start: 1em;
  -webkit-padding-end: clamp(0px, -27.5510204082px + 7.3469387755vw, 90px);
          padding-inline-end: clamp(0px, -27.5510204082px + 7.3469387755vw, 90px);
}
@media screen and (width <= 963px) {
  .p-environment-educational__text {
    padding: 0;
  }
}
.p-environment-educational__image {
  width: 100%;
  aspect-ratio: 6/4;
  border-radius: 1em;
  overflow: clip;
}
@media screen and (width <= 963px) {
  .p-environment-educational__image {
    width: min(340px, 100%);
    justify-self: end;
  }
}
.p-environment-educational__image > img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
.p-environment-educational__systems {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px clamp(40px, -21.2658227848px + 6.3291139241vw, 80px);
  -webkit-margin-before: clamp(36px, 32.3265306122px + 0.9795918367vw, 48px);
          margin-block-start: clamp(36px, 32.3265306122px + 0.9795918367vw, 48px);
}
@media screen and (width <= 963px) {
  .p-environment-educational__systems {
    grid-template-columns: minmax(0, 1fr);
  }
}
.p-environment-educational__system {
  position: relative;
  background-color: #ffffff;
  border-radius: 1em;
  padding: 2.5em min(3.125em, clamp(24px, 16.0408163265px + 2.1224489796vw, 50px));
  overflow: clip;
}
.p-environment-educational__system::before {
  position: absolute;
  z-index: 0;
  content: "";
  display: block;
  right: 0;
}
.p-environment-educational__system--curve-s::before {
  width: clamp(300px, 31.25vw, 501px);
  background: url("../images/path_s-curve_01.svg") center/contain no-repeat;
  aspect-ratio: 501.747/585.387;
  translate: 0 -50%;
  top: 50%;
}
.p-environment-educational__system--curve-cross::before {
  width: clamp(300px, 30.4375vw, 488px);
  background: url("../images/path_cross-curve_01.svg") center/contain no-repeat;
  aspect-ratio: 487.169/513.807;
  top: -7.14%;
  translate: 26.694% -30%;
}
.p-environment-educational__system-name {
  font-size: 1.25em;
  font-weight: 500;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-padding-after: calc(0.275em - (1lh - 1em) * 0.5);
          padding-block-end: calc(0.275em - (1lh - 1em) * 0.5);
  border-bottom: 1px solid #0b7ace;
  position: relative;
  z-index: 10;
}
.p-environment-educational__system-list {
  position: relative;
  z-index: 10;
  margin: 0;
  -webkit-margin-before: 24px;
          margin-block-start: 24px;
  padding: 0;
  list-style: none;
}
.p-environment-educational__system-list > li {
  -webkit-padding-start: 1em;
          padding-inline-start: 1em;
  position: relative;
}
.p-environment-educational__system-list > li::before {
  position: absolute;
  content: "・";
  font-weight: 700;
  color: #0b7ace;
  left: 0;
}

.p-environment-office {
  -webkit-margin-before: var(--contents-spacer, 0px);
          margin-block-start: var(--contents-spacer, 0px);
}
.p-environment-office__inner {
  display: grid;
  row-gap: clamp(36px, 32.3265306122px + 0.9795918367vw, 48px);
}
.p-environment-office__heading {
  margin-inline: auto;
}
.p-environment-office__gallery {
  display: grid;
  grid-auto-rows: 1fr;
  grid-template-columns: repeat(auto-fill, minmax(clamp(180px, 106.1538461538px + 9.6153846154vw, 260px), 1fr));
  gap: 2.5em 1.5em;
}
@media screen and (width <= 576px) {
  .p-environment-office__gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.p-environment-office__gallery-item {
  display: grid;
  row-gap: 0.3125em;
}
.p-environment-office__gallery-item-image {
  position: relative;
  overflow: clip;
  width: 100%;
  aspect-ratio: 4/3;
  border-radius: 0.625em;
}
.p-environment-office__gallery-item-image > img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
.p-environment-office__gallery-item-image::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  content: "";
  -webkit-animation: shimmer 1.5s infinite;
          animation: shimmer 1.5s infinite;
  background: -webkit-gradient(linear, left top, right top, from(#f0f0f0), color-stop(50%, #e0e0e0), to(#f0f0f0));
  background: -webkit-linear-gradient(left, #f0f0f0 0%, #e0e0e0 50%, #f0f0f0 100%);
  background: linear-gradient(90deg, #f0f0f0 0%, #e0e0e0 50%, #f0f0f0 100%);
  background-size: 200% 100%;
}
@-webkit-keyframes shimmer {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}
@keyframes shimmer {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}
.p-environment-office__gallery-item-caption {
  font-size: clamp(12px, 11.5px + 0.15625vw, 14px);
}

.p-work-page {
  container-type: inline-size;
}
.p-work-page__inner {
  width: 100%;
}
.p-work-page__container {
  width: 100%;
}
.p-work-page__triggers {
  display: grid;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  -webkit-column-gap: clamp(10px, 0.8163265306px + 2.4489795918vw, 40px);
     -moz-column-gap: clamp(10px, 0.8163265306px + 2.4489795918vw, 40px);
          column-gap: clamp(10px, 0.8163265306px + 2.4489795918vw, 40px);
}
.p-work-page__trigger {
  font-weight: 700;
  line-height: 1;
  display: grid;
  place-items: center;
  width: 100%;
  padding: 1.25em;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  color: #0b7ace;
  border-bottom: none;
  border-radius: 1.875em 1.875em 0 0;
  background-color: #e2f1f8;
}
.p-work-page__trigger.is-active {
  color: #ffffff;
  background-color: #0b7ace;
}
.p-work-page__panels {
  border-top: 2px solid #0b7ace;
}
.p-work-page__panel {
  width: 100%;
}
.p-work-page__panel:focus-visible {
  outline: none;
}
.p-work-page__content {
  -webkit-padding-before: clamp(50px, 34.693877551px + 4.0816326531vw, 100px);
          padding-block-start: clamp(50px, 34.693877551px + 4.0816326531vw, 100px);
}
.p-work-page__nav {
  width: 100%;
}
.p-work-page__nav-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1em clamp(16px, 13.5510204082px + 0.6530612245vw, 24px);
  margin: 0;
  padding: 0;
  list-style: none;
}
@media screen and (width <= 576px) {
  .p-work-page__nav-list {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: min(350px, 100%);
    margin-inline: auto;
  }
}
.p-work-page__nav-item-anchor {
  line-height: 1.15;
  padding-inline: clamp(24px, 22.1632653061px + 0.4897959184vw, 30px);
  text-align: left;
  -webkit-column-gap: clamp(36px, 25.5918367347px + 2.7755102041vw, 70px);
     -moz-column-gap: clamp(36px, 25.5918367347px + 2.7755102041vw, 70px);
          column-gap: clamp(36px, 25.5918367347px + 2.7755102041vw, 70px);
}
.p-work-page__cards {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  row-gap: calc(var(--contents-spacer, 0px) * 0.615);
  width: 100%;
  container-type: inline-size;
  -webkit-margin-before: clamp(50px, 34.693877551px + 4.0816326531vw, 100px);
          margin-block-start: clamp(50px, 34.693877551px + 4.0816326531vw, 100px);
}

.p-work-card {
  --row-spacer: 40px;
  display: grid;
  grid-template: "title figure" auto "desc figure" auto ". figure" 1fr "info info" auto/1fr clamp(250px, 26.25vw, 420px);
  gap: 0 clamp(40px, 24.693877551px + 4.0816326531vw, 90px);
  padding: clamp(24px, 16.0408163265px + 2.1224489796vw, 50px);
  border-radius: 1.25em;
  background-color: #ffffff;
}
@container (width < 900px) {
  .p-work-card {
    grid-template: "title" auto "desc" auto "figure" auto "info" auto/minmax(0, 1fr);
  }
}
.p-work-card__title {
  font-size: 1.375em;
  font-weight: 500;
  position: relative;
  display: block;
  overflow: clip;
  grid-area: title;
  padding: 0.409em 0.681em;
  border-radius: 0.272em;
  background-color: #e9f6fc;
}
.p-work-card__title::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0.227em;
  height: 100%;
  content: "";
  background-color: #0b7ace;
}
.p-work-card__description {
  grid-area: desc;
  -webkit-margin-before: calc(var(--row-spacer) * 0.5);
          margin-block-start: calc(var(--row-spacer) * 0.5);
}
.p-work-card__figure {
  display: block;
  overflow: clip;
  grid-area: figure;
  width: 100%;
  aspect-ratio: 420/325;
  border-radius: 0.75em;
}
@container (width < 900px) {
  .p-work-card__figure {
    -webkit-margin-before: calc(var(--row-spacer) * 0.5);
            margin-block-start: calc(var(--row-spacer) * 0.5);
  }
}
.p-work-card__figure > img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  width: 100%;
  height: 100%;
}
.p-work-card__info {
  display: grid;
  grid-area: info;
  grid-template-columns: repeat(auto-fill, minmax(clamp(280px, 157.4683544304px + 12.6582278481vw, 360px), 1fr));
  gap: calc(var(--row-spacer) * 0.5);
  -webkit-margin-before: var(--row-spacer);
          margin-block-start: var(--row-spacer);
  -webkit-padding-before: var(--row-spacer);
          padding-block-start: var(--row-spacer);
  border-top: 1px solid #eaeaea;
}
@media screen and (width <= 576px) {
  .p-work-card__info {
    grid-template-columns: minmax(0, 1fr);
  }
}

.p-work-info {
  display: grid;
  -webkit-align-content: start;
      -ms-flex-line-pack: start;
          align-content: start;
  -webkit-box-align: start;
  -webkit-align-items: start;
      -ms-flex-align: start;
          align-items: start;
  width: 100%;
  -webkit-padding-after: calc(var(--row-spacer) * 0.5);
          padding-block-end: calc(var(--row-spacer) * 0.5);
  border-bottom: 1px solid #b8d5eb;
}
.p-work-info__label {
  font-weight: 500;
  line-height: 1.2;
  -webkit-margin-after: 1em;
          margin-block-end: 1em;
  color: #0b7ace;
}
.p-work-info__list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.p-work-info__list > li {
  position: relative;
  -webkit-padding-start: 1em;
          padding-inline-start: 1em;
}
.p-work-info__list > li::before {
  font-weight: 700;
  position: absolute;
  left: 0;
  content: "・";
  color: #0b7ace;
}
.p-work-info__text {
  overflow-wrap: anywhere;
  word-break: keep-all;
}

.p-information-page__nav {
  width: 100%;
}
.p-information-page__nav-list {
  display: grid;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1em clamp(16px, 13.5510204082px + 0.6530612245vw, 24px);
  width: min(520px, 100%);
  margin: 0;
  margin-inline: auto;
  padding: 0;
  list-style: none;
}
@media screen and (width <= 576px) {
  .p-information-page__nav-list {
    grid-template-columns: minmax(0, 1fr);
  }
}
.p-information-page__nav-item-anchor {
  line-height: 1.15;
  padding-inline: clamp(24px, 22.1632653061px + 0.4897959184vw, 30px);
  text-align: left;
}
.p-information-page__content {
  display: grid;
  row-gap: var(--contents-spacer, 0px);
  -webkit-padding-before: clamp(50px, 34.693877551px + 4.0816326531vw, 100px);
          padding-block-start: clamp(50px, 34.693877551px + 4.0816326531vw, 100px);
}
.p-information-page__content-block {
  display: grid;
  row-gap: clamp(24px, 16.0408163265px + 2.1224489796vw, 50px);
  padding: clamp(40px, 33.8775510204px + 1.6326530612vw, 60px) clamp(24px, 16.0408163265px + 2.1224489796vw, 50px);
  border-radius: 1.875em;
  background-color: #ffffff;
}
.p-information-page__heading {
  margin-inline: auto;
}
.p-information-page__requirements {
  display: grid;
  row-gap: 40px;
}
.p-information-page__requirements-dl {
  display: grid;
  grid-template-columns: auto 1fr minmax(min(43.75vw, 700px), 1fr);
  gap: 1.875em 8px;
  width: 100%;
}
@media screen and (width <= 768px) {
  .p-information-page__requirements-dl {
    grid-template-columns: minmax(0, 1fr);
  }
}
.p-information-page__requirements-dl-row {
  display: grid;
  -webkit-box-align: start;
  -webkit-align-items: start;
      -ms-flex-align: start;
          align-items: start;
  grid-column: span 3;
  grid-template-areas: "title . data";
  grid-template-columns: subgrid;
  -webkit-padding-after: 1.875em;
          padding-block-end: 1.875em;
  border-bottom: 1px solid #b8d5eb;
}
@media screen and (width <= 768px) {
  .p-information-page__requirements-dl-row {
    grid-column: auto;
    grid-template-areas: "title" "data";
    grid-template-columns: minmax(0, 1fr);
  }
}
.p-information-page__requirements-dl-row > dt {
  font-weight: 500;
  grid-area: title;
  color: #0b7ace;
}
.p-information-page__requirements-dl-row > dd {
  align-self: center;
  grid-area: data;
}
.p-information-page__selection-steps {
  display: grid;
  row-gap: clamp(24px, 22.1632653061px + 0.4897959184vw, 30px);
  counter-reset: step-index 0;
}
.p-information-page__selection-steps-row {
  counter-increment: step-index 1;
}
.p-information-page__selection-steps-row > dt {
  font-weight: 500;
  display: grid;
  -webkit-box-pack: start;
  -webkit-justify-content: start;
      -ms-flex-pack: start;
          justify-content: start;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  grid-template-columns: repeat(2, auto);
  -webkit-column-gap: 5px;
     -moz-column-gap: 5px;
          column-gap: 5px;
  color: #0b7ace;
}
.p-information-page__selection-steps-row > dt::before {
  font-family: "Poppins", sans-serif;
  font-size: 0.875em;
  line-height: 1;
  padding: 0.4785em 0.85em 0.3785em;
  content: "STEP" counter(step-index);
  color: #ffffff;
  border-radius: 100vmax;
  background-color: #4ed3e2;
}
.p-information-page__selection-steps-row > dd {
  -webkit-margin-before: 0.4375em;
          margin-block-start: 0.4375em;
}
.p-information-page__selection-steps-row > dd:empty {
  display: none;
}
.p-information-page__entry {
  display: grid;
  justify-items: center;
  row-gap: 1.25em;
  width: min(95%, 280px);
  margin-inline: auto;
}
.p-information-page__entry-title {
  font-size: 1.125em;
  font-weight: 700;
}
.p-information-page__entry-button-outer-icon {
  max-height: 1em;
}

.p-forbidden__title {
  font-weight: 700;
  font-size: 3em;
  text-align: center;
}
.p-forbidden__head {
  font-size: 1.5em;
  text-align: center;
  margin: 0 0 50px;
}
.p-forbidden__text {
  text-align: center;
  margin: 0 0 1em;
}
.p-forbidden__btn {
  display: block;
  margin: 50px auto 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 15px 40px;
  border: 1px #0b7ace solid;
  background-color: #0b7ace;
  color: #ffffff;
  text-decoration: none;
  border-radius: 100vh;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (width > 768px) {
  .p-forbidden__btn:hover {
    color: #0b7ace;
    background-color: #ffffff;
  }
}

.p-people {
  display: grid;
  gap: 30px;
}
@media screen and (width > 768px) {
  .p-people {
    grid-template-columns: repeat(2, 1fr);
    gap: 100px;
  }
}

.p-contact__text {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.p-contact-msg {
  background-color: rgba(146, 215, 255, 0.14);
  padding: 40px 20px;
  border-radius: 24px;
  margin: 50px auto 0;
  max-width: 1000px;
}
.p-contact-msg__text {
  text-align: center;
}
.p-contact-msg__btn {
  margin: 25px auto 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-contact-msg__btn a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 250px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 30px;
  text-decoration: none;
  color: #ffffff;
  border-radius: 100vh;
  background-color: #4ed3e2;
  border: 1px #4ed3e2 solid;
  position: relative;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (width > 768px) {
  .p-contact-msg__btn a:hover {
    background-color: #ffffff;
    color: #4ed3e2;
  }
  .p-contact-msg__btn a:hover::after {
    background-color: #4ed3e2;
  }
}
.p-contact-msg__btn a::after {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  position: absolute;
  top: 50%;
  right: 30px;
  -webkit-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
  background-color: #ffffff;
  -webkit-mask-image: url("./../images/icon/icon-tab.svg");
          mask-image: url("./../images/icon/icon-tab.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
}
.p-contact-form {
  margin: 150px auto 0;
}

@media screen and (width > 768px) {
  .u-dn-md-min {
    display: none;
  }
}

@media screen and (width <= 768px) {
  .u-dn-md-max {
    display: none;
  }
}

.u-cf::after {
  display: block;
  clear: both;
  content: "";
}

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

.u-pb-0 {
  padding-bottom: 0;
}

.u-mt-0 {
  margin-top: 0;
}/*# sourceMappingURL=style.css.map */